Difference between revisions of "User:Vabold"

From Custom Mario Kart
Jump to navigation Jump to search
(General update)
m (Add correct formatting for legend)
Line 16: Line 16:
 
:[-] game/item (responsible for updating players' items - only certain classes in this folder apply!)
 
:[-] game/item (responsible for updating players' items - only certain classes in this folder apply!)
  
"x" - Finished
+
;Legend
"/" - In Progress
+
:"x" - Finished
"-" - Haven't Started
+
:"/" - In Progress
 +
:"-" - Haven't Started
  
 
===Client/Server Netcode===
 
===Client/Server Netcode===

Revision as of 12:42, 20 November 2022

Hi, I'm vabold. I'm a Mario Kart Wii reverse engineer and an intermediate code contributor to MKW-SP. You can find current information on my two focused projects here.

Project Kinoko

Project Kinoko is the decompilation and subsequent rewriting of Mario Kart Wii's physics engine. Kinoko will receive a frame's inputs, run the physics engine on that frame with those inputs, and send the physics state back. Its intended use is to serve as a black box for machine learning algorithms, with an emphasis on speed. The goal is to recompile the engine into a DLL.

The current classes that have been decompiled for Kinoko are as follows:

Decompiled Classes
[x] ResourceManager (responsible for managing SZS files in memory)
[x] RaceConfig (responsible for initializing values for racers, e.g. vehicle/character)
[/] CourseMap (responsible for holding the course's KMP)
[-] RaceManager (responsible for updating the race state, e.g. players' countdowns and placements)
[-] CourseModel (responsible for holding the course's KCL)
[-] game/kart (responsible for updating players' position/rotation - this is an entire folder of classes!)
[-] game/item (responsible for updating players' items - only certain classes in this folder apply!)
Legend
"x" - Finished
"/" - In Progress
"-" - Haven't Started

Client/Server Netcode

One of MKW-SP's in-progress features is to move away from Wiimmfi and peer-to-peer races. Instead, clients will send information to a server responsible for overseeing the race, and the server will send relevant information about other players back. The current progress is that the clients successfully load into a race with a voted course and correctly configured players. The next step is to load the server into the race as a spectator.

You can view the current progress of this feature here!