A matching decompilation of Ratchet & Clank: Going Commando (2003) for PlayStation 2.
The boot executable and 27 levels, rebuilt as C that matches retail byte for byte.
Warning
This repository has no game data, executables, disc images or proprietary toolchains. You need your own copy of the game. Read LEGAL.md before contributing.
Progress is tracked on ByteMatch, one badge per version below. Each function counts once, however many of the 27 levels share it.
All releases share one C source. Expected SHA-256 of the primary disc image:
9db2e33e276133cc283647fa3279b37911955e123d6199d10065547eaa9b1ce5
The other hashes and how the releases fit together: docs/build/versions.md.
You need x86-64 Linux with 32-bit support (gcc -m32), Wine and Python 3.12, or the build container.
SN ProDG's assembler and linker go in toolchain/ first: docs/build/building.md.
git clone https://github.com/OpenRAC/rac2-decomp.git && cd rac2-decomp
python3 -m pip install -r requirements.txt
cp /path/to/your-disc.iso baserom/SCUS_972.68.iso
tools/compiler/build.sh
python3 tools/compiler/sdk/build.py
python3 tools/levels.py dump
python3 tools/build.py all # one "OK" per programmacOS, Windows, the container and the other releases: docs/build/building.md.
Start with CONTRIBUTING.md and AGENTS.md. Reserve your functions in issue #152 first. All docs are listed in docs/README.md:
- docs/build/ - building, versions, levels and the compiler
- docs/contributing/ - matching blockers and the permuter
- docs/game/ - how the game works: symbols, moby dispatch, VU microprograms
- docs/research/ - prototype builds and what carries over from the first game
- docs/port/ - where this repository meets the native port
- docs/agents/ - instructions for AI agents
Keep the build matching retail. Never commit game images, extracted game data or proprietary tool binaries.
Every outside project and person this repository uses is listed in CREDITS.md. The main ones:
- rac1-decomp - layout of
src/, units and report categories. - rac3-decomp, rac3-uya-decomp and rac5-sm-decomp - the other OpenRAC decompilations.
- OpenRAC - the native port, and the reference for the shared engine.
- Lombyte - compiler patch stack and the SDK compiler recipe.
- Promises/RC2-Going-Decompiled - symbol maps and names, as leads.
- splat, spimdisasm, rabbitizer, objdiff and ByteMatch.
Code written for this project is under the GNU General Public License v3.0. Code reconstructed from third-party binaries belongs to its copyright holders; see THIRD_PARTY_NOTICES.md.