Oot is a decompilation project that recreates the source code for The Legend of Zelda: Ocarina of Time from the original game binary through static and dynamic analysis.
The project addresses the challenge of understanding and preserving the source code of a proprietary commercial game by systematically reverse-engineering the compiled binary back into human-readable C code. The approach involves analyzing the game executable, extracting assets from an original ROM, and reconstructing the logic and structure that produced the original binary. The decompilation targets multiple versions of the game across different platforms, including original Nintendo 64 releases and GameCube ports, with the ability to build matching binaries that produce identical outputs to the originals.
This project is suited for researchers, game historians, and enthusiasts interested in understanding how a landmark game was constructed and preserved. It requires possession of an original game ROM to extract necessary assets, and it explicitly does not produce a PC port or standalone executable. The work is particularly valuable for those studying game architecture, reverse engineering techniques, or the technical foundations of influential titles. The project maintains a Discord community for collaboration and discussion.
The project shows sustained activity across multiple platforms with build support for Windows via WSL, native Linux, macOS, and Docker environments. Documentation exists for various installation paths, though some platform-specific instructions may lag behind the primary development targets of WSL, Linux, and macOS. The codebase is written primarily in C and represents an ongoing effort to achieve complete decompilation across numerous game versions and regional variants.