Case study
OpenGOAL: recovering GOAL code and rebuilding the Jak games
Reconstructs readable GOAL code from the original Jak binaries and compiles it with a new GOAL compiler for modern PCs. Its workflow combines a specialized decompiler, manually supplied type information, asset extraction and an interactive development runtime.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- Prerequisites: Requires the user’s original PS2 game copy and extracted assets. The README covers retail PAL, NTSC and NTSC-J editions, including Greatest Hits, and excludes later PS3/PS4/PS5 releases.
- Prerequisites: The supported runtime is x86-64 on Windows, Linux and macOS. The macOS guide requires Rosetta 2 on Apple Silicon and lists macOS Sequoia; native ARM64 builds are experimental and unsupported. No mobile release is planned.
- Prerequisites: Development uses C++20, CMake, NASM and platform libraries, then the project’s asset-extraction and GOAL compilation steps. The documented task commands need the corresponding task runner; runtime code editing is a development feature.
- Scope: The pinned README reports Jak 1 as complete, Jak 2 as beta with remaining issues, and substantial work still needed for Jak 3.
- License: ISC license for project work; original game assets and third-party components retain their own rights.
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · open-goal/jak-project · Revision 32c3cf7
- CMakeLists.txt GitHub · open-goal/jak-project · Revision 32c3cf7
- LICENSE GitHub · open-goal/jak-project · Revision 32c3cf7
- docs/setup/system/linux.md GitHub · open-goal/jak-project · Revision 32c3cf7
- docs/setup/system/macos.md GitHub · open-goal/jak-project · Revision 32c3cf7
More in Games
- Paleblood: a functional decompilation of Bloodborne with its own runtime · Case study
- R.E.L.I.V.E.: an Oddworld Abe’s Oddysee and Abe’s Exoddus engine reimplementation · Case study
- re-plants-vs-zombies: decompiling and modernizing Plants vs. Zombies GOTY · Case study
- REDRIVER2: reconstructing Driver 2 through a PlayStation compatibility layer · Case study
- RSDKv3 Decompilation: Sonic CD (2011) on a reconstructed Retro Engine v3 · Case study
- RSDKv4 Decompilation: Retro Engine v4 and the Sonic 1 & 2 (2013) menus · Case study