Star on GitHubStar1.1k stars

Case study

2 Ship 2 Harkinian: a native Majora’s Mask port built on the decompilation

Builds native Windows, Linux and macOS versions of The Legend of Zelda: Majora’s Mask from an adapted copy of the zeldaret/mm decompilation, with libultraship reimplementing N64 SDK functions. Game data comes from a user-supplied ROM and is packed into an archive that custom asset packs can override. It targets a playable PC port with enhancements, not a byte-identical ROM.

Targets
Game
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed

Requirements & limits

  • Prerequisites: No copyrighted assets are included: supply a supported copy of Majora’s Mask. The docs list SHA-1 hashes for NTSC-U 1.0 and NTSC-U GC versions. Built-in extraction turns the supplied game into an mm.o2r archive; custom .o2r or .otr packs go in a mods folder, and the README notes that fast64 does not fully support MM.
  • Prerequisites: Source builds need the libultraship, OTRExporter and ZAPDTR submodules plus CMake. Windows uses Visual Studio 2022 with the v143 toolset, Python 3 and at least 8 GB of RAM; the Linux lists include GCC or Clang, Ninja, SDL2, libzip, spdlog, tinyxml2 and Opus/Vorbis libraries; macOS needs Xcode tools with SDL2, libpng, GLEW, Ninja, CMake, nlohmann-json and libzip.
  • Scope: The reviewed develop commit follows release 5.0.1 (2026-08-25), published as Windows, Linux and macOS archives; nightly CI builds are for playtesting and may have bugs and crashes. The repository’s decomp_diff.py describes its game sources as changed decompilation code compared with the official zeldaret/mm repository. Rendering uses DirectX 11, OpenGL or Metal.
  • Testing evidence: The README and build guide report no matching, checksum or fidelity checks for the port; the release notes list tweaks and bug fixes. Enhancement and randomizer code changes behavior relative to the original game.
  • License: The repository is CC0 1.0, and the libultraship submodule is MIT; game content from the user’s copy keeps its own rights, and the README says the project does not condone piracy.

About this entry

The description was reviewed against primary sources.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  2. docs/BUILDING.md GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  3. docs/supportedHashes.json GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  4. decomp_diff.py GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  5. .gitmodules GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  6. LICENSE GitHub · 2ship2harkinian/2ship2harkinian · Revision f1dda4c
  7. https://github.com/2ship2harkinian/2ship2harkinian/releases/tag/5.0.1
  8. README.md GitHub · Kenix3/libultraship · Revision 7f9b86a
  9. LICENSE GitHub · Kenix3/libultraship · Revision 7f9b86a

More in Games

All 318 entries in GamesGames case studies (239)

↑↓ move↵ open⌘↵ new tab