"Mario Party 4" decompilation project reaches completion

1747067828641.png

Decompilation projects continue to go on the rise day by day, and this week, a decompilation project for a Gamecube game has reached completion, becoming the very first fully completed decompilation for a Gamecube title, with the game in question being none other than Mario Party 4.

Each day, several titles from the Nintendo 64 continue to get decompilation projects finalized, as subsequently, PC ports become available shortly after, usually by another team that does the PC porting process based on the decompilation, or, in case of Recompilation being used, the PC port comes alongside the recompiled code as well. With Nintendo 64, Gameboy Advance and Xbox 360 titles (like Sonic Unleashed recently) getting more and more games decompiled, it was a matter of time before we started seeing other consoles from the 2000s getting decompiled as well, and now Gamecube is joining the frame.

While several games from the Gamecube era already have on-going decompilation projects, like The Legend of Zelda: The Wind Waker and The Legend of Zelda: Twilight Princess (amongst many others), Mario Party 4 is the very first Gamecube title to reach a full decompilation, and while the full code and REL completion percentages are short of the full 100% (sitting at 99.88% and 99.37% respectively), it's safe to assume that the entire game has been decompiled.

With Mario Party 4 decompiled now, it's only a matter of time before talented people start looking around at the game's code and work on developing a PC port of the game, albeit not by the same team that did the original decompilation project.

:arrow: Source
 
I'd like some more details on exactly what this means.

I understood that the Mario 64 decompilation resulted in C code because there was pretty much only one way to produce N64 code and the relevant development tools were well-known. But the Gamecube was just running off a PowerPC, and there's no shortage of ways to generate binary code for that.

So, is this all C code again? Are any unusual development tools required?

With Nintendo 64, Gameboy Advance and Xbox 360 titles (like Sonic Unleashed recently) getting more and more games decompiled
I mean, Sonic Unleashed wasn't decompiled; that was statically recompiled for PC, if I'm not mistaken.
 
I'd like some more details on exactly what this means.

I understood that the Mario 64 decompilation resulted in C code because there was pretty much only one way to produce N64 code and the relevant development tools were well-known. But the Gamecube was just running off a PowerPC, and there's no shortage of ways to generate binary code for that.

So, is this all C code again? Are any unusual development tools required?
Most of these games were developed using C or C++, so it is only logical to decompile the code back in the same language.
The CPU architecture is irrelevant as far as decompiling goes, unless you want to work with straight raw assembly code, which is the initial state of decompiled code anyway.
 
Most of these games were developed using C or C++, so it is only logical to decompile the code back in the same language.
Is there an easy way to know which one was used, though?

The CPU architecture is irrelevant as far as decompiling goes
My understanding is the goal is to produce code that, once compiled with the appropriate tool, will produce code that is 100% identical to the original binary.
 
I'd like some more details on exactly what this means.

I understood that the Mario 64 decompilation resulted in C code because there was pretty much only one way to produce N64 code and the relevant development tools were well-known. But the Gamecube was just running off a PowerPC, and there's no shortage of ways to generate binary code for that.
Compilers tend to have specific things and characteristics they like to do.

Additionally for Mario party 4, it had no optimizations. As in, the optimization flag wasn't turned on. Which made the decomp easier. Then there was another game that used the same engine that had debug symbols. Making it even easier to figure out what went into it.
 
Pretty cool but doesn't Simpsons hit & run qualify as a gamecube game or has that not been decomp'd?

I was sure it was!
 
  • Like
Reactions: Exnor
Pretty cool but doesn't Simpsons hit & run qualify as a gamecube game or has that not been decomp'd?

I was sure it was!
Was it decompiled? I thought the source code leaked.
 
Great news for Mario Party fans. I didn't realize that no other GameCube games have been decompiled, even though Wind Waker and Twilight Princess (as OP mentioned) have been ongoing for years.

I know decompilations were started on Super Mario Sunshine, Paper Mario: TTYD, and Super Smash Bros. Melee, but I don't know what the status is with any of those projects.
 
  • Like
Reactions: Blythe93
whoa, the future is now.
hackers doing what nintendo don't.
i dunno, it seems like it would be a waste of their time to decompile games when they already have the source code lol
 
I meant putting games on pc. lol
This still technically isn't "putting games on PC". Like, yeah, the decompilation will allow Mario Party 4 to run on PC, but at the end of the day, it's still a GameCube game. Especially since while a PC version of a game will run on its own, a decompilation requires the user to provide a legal copy (ex: a ROM/ISO) of the original game - the decompilation can not, legally, contain any part of the game, since the game being decomplied wasn't given a legal PC port/release.

It's basically like how emulation works, except it more directly connects the game to PC hardware calls, rather than attempt to emulate the original hardware. So compatibility is much more reliable to predict in comparison (whereas with emulation, your mileage may vary from game to game). The catch is that compilation has to be done on a game-to-game basis, because the way the games can be connected to PC calls can differ.
 
It's gonna take years for aurora to be complete enough to allow running decompiled gamecube games to run on PC.
Maybe parts of dolphin could be repurposed for the more complex parts (graphics and audio) but IIRC, they are pretty tightly coupled with the gamecube/wii architectures, like the memory and interrupts.
 

Site & Scene News

Popular threads in this forum