Mario Kart Wii LAN Mode Guide (Wiimms Mario Kart Fun ready!)

      Mario Kart Wii LAN Mode Guide (Wiimms Mario Kart Fun ready!)

      Hi,

      Here it is: A guide to play Custom Track Mario Kart Wii Distributions in a LAN setup. Grab a few screens, wiis and play against 11 of your friends in a ultra chaotic match!!!

      I've worked quite a long time to be able to host awesome Mario Kart Wii Lan Parties.
      After some issue with a custom WFC server, I've finally managed to play Custom Tracks in a LAN setup through the LAN Brainslug mod from Chadderz and MrBean35000vr.
      This removes the need for a custom server, makes it much more stable and gives that true LAN experience!

      I've made a github repo (LINK) that explains my process and has an intallation guide:
      Have a look and see what you think! It supports Wiimms Mario Kart Fun 2022-11

      Due to some issues with BrainSlug, I cannot take a patched main.dol from a Custom Track distro.
      Therefore i need to load the cheats that are normally patched into the main.dol through a BrainSlug Module.
      However, Wiimms Fun pack uses a .gch file, and the module only takes .gct files.
      Wiimm could you please provide me with a list of cheats that are inside this .gch of Wiimms Fun Pack and provide me with their .gct variants?
      This is the final piece of the puzzel!

      I would like to thank everyone that has helped me come this far. The Nintendo Wii (and MKWII in particular) modding scene is so awesome!
      I've read through the readme and that all sounds a bit complicated, but for the most part I understand what the parts are needed for.

      But why do you need the KamekLoader? Kamek loads the VarietyPack binary which then loads the LE-CODE? Why?

      If you're already adding your own cheat codes anyways, wouldn't it be easier just to add the LE-CODE loader in cheat code form? Then you just need to make sure the lecode-P.bin exists and you're done ...

      As for the GCH file in MKW-Fun, I don't think that contains lots of useful stuff anymore. I took a quick look and it seems to only contain Wiimmfi-related stuff, so, irrelevant for a LAN mode; but I can take a closer look later.

      Also, I doubt that LAN mode "makes it much more stable", since the actual gaming data also stays inside your LAN with Wiimmfi, too, Wiimmfi just helps players find eachother. Even if Wiimmfi were to go away mid-match you could still continue to play.

      DevkitPro Archiv (alte Versionen / old versions): wii.leseratte10.de/devkitPro/
      Want to donate for Wiimmfi and Wii-Homebrew.com? Patreon / PayPal

      Dieser Beitrag wurde bereits 0 mal editiert, zuletzt von Leseratte ()

      Hey Leseratte,

      Thx for your quick response.

      I've tried that loader cheat, it gave me green screens. Ill give it another try after the weekend.
      If you could have a closer look at the .gch file, that'd be great. It has a .gch extension, but a .wch header which is really weird. The information at szs.wiimm.de/info/add-section.html#wch is a bit lacking.

      With much more stable, I meant compared to a custom DWC server (like this github.com/kyle95wm/CoWFC), NOT compared to Wiimmfi.
      I know Wiimmfi works really well and that it uses almost no bandwith, but I just like to be totally independent from services which are out of my control.

      Finally, what do you mean with complicated? are some steps not clear or do you mean it is all a bit extreme for something that Wiimmfi provides by default?
      I checked the WCH file, the only relevant patch I can find would be Beans "Change driver+vehicle between online races" cheat code. Other than that, we've moved all game patches from cheat code form into the lecode binary. I don't remember why we've left that code in cheat code form in MKW Fun instead of adding it to the LE-CODE. Maybe I didn't have time for it back then and just forgot to add it later, or maybe there was a technical reason. And because that cheat code only works in worldwide and regional races, not in friend rooms (which I believe is the only mode supported by the LAN mod), you can probably just ignore it.

      With complicated I just mean the amount of modules. The LAN mod module and the Emvolution module make sense, but in particular the inclusion of the whole Kamek engine and a binary from Variety Pack just to load the LE-CODE sounded odd to me.

      A green screen, I believe, can happen when the cheat code can't find the LE-CODE binary on the disk (/rel/lecode-PAL.bin). Why that would be the case, given that it works with Variety Pack's loader, is a good question. Not sure what their loader would be doing different.

      Yeah, compared to AltWFC and its clones I'm not too surprised the LAN mode is more stable. As far as I know, the AltWFC servers never really were stable and working with more than like 10 users, probably because it's written in Python with a single-threaded SQLite database (with a less-than-ideal database scheme, too) that's not intended for concurrent access.

      DevkitPro Archiv (alte Versionen / old versions): wii.leseratte10.de/devkitPro/
      Want to donate for Wiimmfi and Wii-Homebrew.com? Patreon / PayPal

      Dieser Beitrag wurde bereits 0 mal editiert, zuletzt von Leseratte ()

      CalvinKlein wrote:

      Due to some issues with BrainSlug, I cannot take a patched main.dol from a Custom Track distro.
      Therefore i need to load the cheats that are normally patched into the main.dol through a BrainSlug Module.
      However, Wiimms Fun pack uses a .gch file, and the module only takes .gct files.
      the problem is not the modified main.dol, but the start address of the fst brainslug apparently has problems loading already modified games and therefore sets the fst address incorrectly.


      Insert the following code into the _start_patches of main.c from the src of the rmc-local-net module and compile it:

      C Source Code

      1. // fix for le-code distributions
      2. // check whether the first instruction of _start is the instruction mflr r21,
      3. // and if so, correct the Arena High the Start of FST and the maximum FST size.
      4. // very helpful reference for this topic https://wiibrew.org/wiki/Memory_map
      5. if(*(uint32_t *)_start == 0x7ea802a6){
      6. *(uint32_t *)0x80000034 = *(uint32_t *)0x80000034 + 8; /* Arena High */
      7. *(uint32_t *)0x80000038 = *(uint32_t *)0x80000038 + 8; /* Start of FST */
      8. *(uint32_t *)0x8000003c = 0x81800000 - *(uint32_t *)0x80000038; /* Maximum FST Size */
      9. }
      this fixes the problem.

      The post was edited 3 times, last by TheC0ne ().