General instructions on how to perform some important tasks.
Obtaining a game's files
You can obtain the files inside the games by following these instructions. This guide only explains how to obtain the files from inside a copy of the game. It won't explain how to obtain a copy.
- Get a copy of the game's disk image (.ISO). We do not support any illegal pirating here, so to do this legally, search up how to rip GameCube games using Nintendo Wii homebrew software.
- Ensure the file is not corrupted by running it using the Dolphin emulator.
- Open GC-Tool and go to File > Open > Pikmin 2 GCN.iso, then go to ISO > Extract whole ISO, check the box that says "Also extract header, apploader, DOL and TOC", choose the directory you want to save it to and then click extract. Give it some time.
To rebuild a new ISO from your root:
- Open GC-Rebuilder and go to Root > Open, select the root folder created by GC-Tool and click open.
- Go back to Root and now select Save. Name the ISO what you want and choose where you want it, then click save. This does not save the ISO file.
- Go back again to Root and finally click Rebuild. It will now rebuild the ISO, this may take some time.
You will need:
.3dsfile of the game's data.
Simply use a command line, run
ToolkitConsole.exe with the parameters it expects, and you'll extract the contents of the
.3ds file onto a folder. Detailed instructions can be found in the DotNet3dsToolkit page.
Once you have a game's files, you can read them all you want. If you want to make changes to the files, you can do so. Some files are as simple as plain text, and can be edited with any text editor (although Notepad++ is recommended over the standard Notepad). Other files can only be edited with the appropriate tools. Some files need to be extracted, and once you're done making changes, they need to be packed again, just like zip files – SZS files are one such type.
That takes care of editing the game's insides, but then you'll need to transform these files into a runnable game, if you want to actually play the changes. What you need to do is elaborated in the next sections.
What you have to do depends on how you want to run the game. If you want to run it with Dolphin, through a folder and
boot.dol, you won't need to do anything else after saving the files (except maybe restarting the game or area).
If you use an ISO, you'll have to apply the changes onto the ISO, since you've only made changes on the extracted folder so far.
Just like when you extracted the
.3ds file to get the contents, you will have to do the opposite and turn the contents into a
.3ds file. Again, you'll need DotNet3dsToolkit. Detailed instructions can once again be found in the DotNet3dsToolkit page.
Running a modified game
After having made the changes, you will want to play your modified game. You can either play it on a real console, or using an emulator. A note regarding savestates and emulators: If the game loads data from a file and saves it in RAM, and you make a savestate after this information is loaded, it will always have that information when you reload the savestate, even if you changed the files in the meantime. To get the changes to take effect, make the game reload the file. This depends on the game and file (e.g. quit and re-enter the area you're on, restart the game, etc.). To be safe, you can always avoid loading savestates altogether.
To run a modified
.3ds file with Citra, simply open the emulator and choose the
.3ds file with your changes.
Some articles in the wiki may provide helpful scripts. These can either be Windows bash scripts, or Linux shell scripts. Normally, when you want to, for instance, convert a GTX file to a DDS file, you'd have to go to the command line and run the tools necessary for it. But with scripts, after you set everything up, you can just double-click a GTX file and get a DDS file right away!
First comes the actual script creation. Copy whatever is inside the code blocks provided in the page, but remember to replace any placeholder bits inside less than and greater than signs. For instance, in a code block like so:
python <path to abc.py> $1
You would replace
<path to abc.py> with the full path to where you've placed a Python script called
abc.py. Anyway, after you've made any necessary replacements, save the file on your disk somewhere, preferably on a "scripts" folder in your documents so you can keep everything organized. The name of your script should end with the extension
.bat in Windows, and
.sh in Linux.
Then, you'll have to set up your system to run the script when you double click a file of the given type. Or at least when you right-click and choose "Open with".
The instructions depend on your system, so you should search online on how to associate a program (or script) with a file extension. But in general, you can right-click a file of the type you want to operate on, choose "Open with", and use the dialog box to add a new program (or in our case, script) to the file type.