Contribute
You do not need previous decompilation experience, just patience and a willingness to read PowerPC assembly. Most people start with one small function and pick up the rest as they go.
How the work goes
1. Say what you are taking
Post in #decomp on Discord before you start, so two people do not spend a weekend on the same function.
2. Open it in objdiff
Your compiled output on one side, the original on the other. The job is to make them identical.
3. Write the original-language source
C or C++ that the 2003 CodeWarrior compiler turns into those exact instructions, not code that merely behaves the same.
4. Open a pull request
Once it matches, open a pull request. CI rebuilds the whole game and checks every hash.
Build it yourself
You supply the game; the toolchain and configuration are in the repository. Python and ninja must be on your PATH.
# 1. clone git clone https://github.com/Jovinull/sonicheroes.git cd sonicheroes # 2. turn on the safety hook (refuses commits that stage game data) git config core.hooksPath .githooks # 3. put YOUR copy of the game in orig/G9SE8P/, then python configure.py ninja
Full guide: docs/getting_started.md · rules: CONTRIBUTING.md and LEGAL.md · newcomer questions: #decomp-help on Discord.