A work-in-progress practice tool for Pikmin 2 speedrunning, based on the Pikmin 2 decompilation project.
NB: you will need to supply your own copy of a Pikmin 2 USA .iso (GPVE01)
To open or close the GZ menu, double-press Dpad Left while in game.
Pre-requisites:
On Windows, it's highly recommended to use native tooling. WSL or msys2 are not required.
- Install Python and add it to
%PATH%.- Also available from the Windows Store.
- Download ninja and add it to
%PATH%.- Quick install via pip:
pip install ninja
- Quick install via pip:
-
Install ninja:
brew install ninja
-
Install wine-crossover:
brew install --cask --no-quarantine gcenx/wine/wine-crossover
After OS upgrades, if macOS complains about Wine Crossover.app being unverified, you can unquarantine it using:
sudo xattr -rd com.apple.quarantine '/Applications/Wine Crossover.app'- Install ninja.
- For non-x86(_64) platforms: Install wine from your package manager.
- For x86(_64), wibo, a minimal 32-bit Windows binary wrapper, will be automatically downloaded and used.
-
Clone the repository:
git clone https://github.com/p2gz/p2gz.git
-
Place your USA Pikmin 2 (GPVE01) .iso in the main directory.
-
Run:
python3 build.py
-
Open
root/sys/main.dolvia Dolphin to see your changes.- Alternatively, add a shortcut to your Dolphin executable in the main directory as
Dolphin.exe.lnkand run:python3 build.py --restart-dolphin
- Alternatively, add a shortcut to your Dolphin executable in the main directory as
To add new source code files to the DOL:
- Uncomment the final
"lib": "moddingU"bracket inconfigure.py- change the name to whatever you like, and feel free to add more than one new lib using this as a template. - Add any new files along with their paths as
Object(Matching, folder/file.cpp)where indicated. - Within the
link_order_callbackfunction below the object configuration, uncomment and add each new file with its path withinsrc, as indicated.
To add or replace compressed asset files (anything with a .szs extension):
- uncompresses your szs asset (preferabbly with cube)
- Save all of the uncompressed elements inside the directory
assets/path/to/asset/.asset/is another directory that is the name of your asset, i.e.sheargrub.szswill becomeassets/path/to/sheargrub/
- Add
assets/path/to/assetto theP2GZ_CUSTOM_ASSETS_COMPRESSEDarray inbuild.py.
To add or replace uncompressed asset files:
- Save the new file(s) in
assets/path/to/asset. - Add
assets/path/to/assetto theP2GZ_CUSTOM_ASSETS_UNCOMPRESSEDarray inbuild.py.
Once built, the new DOL will exist at root/sys/main.dol, along with a Dolphin-readable directory of all game files.