Hacking ROM Hack GCN GeckoPatcher - A multiplatform tool to patch romhacks for Wii and GameCube games

  • Thread starter Thread starter kipcode66
  • Start date Start date
  • Views Views 3,681
  • Replies Replies 6
  • Likes Likes 6

kipcode66

New Member
Newbie
Joined
Nov 2, 2024
Messages
4
Reaction score
6
Trophies
0
Age
31
Location
Québec, Canada
XP
45
Country
Canada
Hi! I'm kipcode. I'm a speedrunner of Zelda Twilight Princess, and I'm part of the team that made and maintains the practice rom for the game. We based our project on an old proof of concept from a retired runner from a few years back. Until recently, we were still using the tools they made at the time to patch the game. However, we started to get some troubles maintining it. It was an ISO Patcher made in rust which was meant to work as a web application. It was made at the early days of WebAssembly when there were still a lot of non-standardized specification yet to pass. As originally it only supported GameCube dumps, I added support for encrypted Wii games. The project accumulated some difficult to maintain architectural problems, and a year ago I decided to rebuild it from the ground up.

And thus, I now have GeckoPatcher, a tool that can be used to easily distribute romhacks for Wii/GameCube games. I tested it with some Wii and GameCube games, and it's now used by two other different projects, the Wind Waker practice rom, as well as the Twilight Princess randomizer. The application can be found at geckopatcher.net and the link to the source code is available on github with the same name. I am open to support other games if they have problems working with the patcher.
 
Very interesting thing. Do you know if it's possible to patch a wii iso with a gameconfig.txt file ? Thanks.
 
I'm not sure of what gameconfig.txt file you are referring to, but if my search is right, you mean to load the patched ISO using a loader on a console? If so, GameCube games do load through Nintendont or neogamma, but I only got WiiFlow to load patched Wii games on console.
 
How do you make the .patch files necessary? Is it able to make mods like P+EX work?
Post automatically merged:

Hi! I'm kipcode. I'm a speedrunner of Zelda Twilight Princess, and I'm part of the team that made and maintains the practice rom for the game. We based our project on an old proof of concept from a retired runner from a few years back. Until recently, we were still using the tools they made at the time to patch the game. However, we started to get some troubles maintining it. It was an ISO Patcher made in rust which was meant to work as a web application. It was made at the early days of WebAssembly when there were still a lot of non-standardized specification yet to pass. As originally it only supported GameCube dumps, I added support for encrypted Wii games. The project accumulated some difficult to maintain architectural problems, and a year ago I decided to rebuild it from the ground up.

And thus, I now have GeckoPatcher, a tool that can be used to easily distribute romhacks for Wii/GameCube games. I tested it with some Wii and GameCube games, and it's now used by two other different projects, the Wind Waker practice rom, as well as the Twilight Princess randomizer. The application can be found at geckopatcher.net and the link to the source code is available on github with the same name. I am open to support other games if they have problems working with the patcher.
So, after looking through, example being Project Horizon (a Brawl mod) it has 136 .asm files, but no .toml files, is it on me to make such, and my other curiousity is how do i set it up? I'm a bit confused at the wording on your github readme
 
Last edited by Drossy,
I'm still working on the README to make it complete, but the toml file is a file you would have to make as it is the file showing the patcher how to patch the game. It usually would be the mod maker that would be making the file in order to distribute their mod.
 
I'm still working on the README to make it complete, but the toml file is a file you would have to make as it is the file showing the patcher how to patch the game. It usually would be the mod maker that would be making the file in order to distribute their mod.
Makes complete sense, this just being a new tool and all i haven't found any for smash/mkwii, but this tool is hella revolutionary it seems, is this able to patch savegame related features of mods as well?
 
Makes complete sense, this just being a new tool and all i haven't found any for smash/mkwii, but this tool is hella revolutionary it seems, is this able to patch savegame related features of mods as well?
This tool modifies the ROM (dumped data of the disc) of a game. If the savegame features are handled somewhere on the disc, this tool should be able to modify it. It allows for assembly patches of the main code of the game, as well as file replacement/addition to the disc. So dynamically loaded relocatable modules (REL files) can also be replaced.

This was something that could easily be done on Gamecube by distributing a diff between the modded and unmodded game, but it wasn't possible for encrypted Wii games. That's why the patch file for geckopatcher can't just be a simple diff.
 

Site & Scene News