Skip to content
/ OoTMM Public

Ocarina of Time + Majora's Mask combo randomizer

License

Notifications You must be signed in to change notification settings

OoTMM/OoTMM

Repository files navigation

OoTMM Logo

The Ocarina of Time/Majora's Mask Combo Randomizer

badge-version badge-license badge-build badge-stars badge-discord

Overview

OoTMM is a randomizer for the N64 games Ocarina of Time and Majora's Mask. It combines both games into a single rom and randomizes the placement of most items in the games. A large number of settings are available to customize the experience.

What's new?

We maintain a comprehensive changelog that details all the changes in each release.

Usage

We strongly recommend that you use the Web-based generator.

Support

If you need help, you can ask for help on our Discord server.

Manual Setup

You need the following roms:

  • Ocarina of Time (U or J, 1.0)
  • Majora's Mask (U only)

The roms need to be in their native byte-order (big endian). You can use programs such as Tool 64 to convert the roms to the correct format. The roms need to be named oot.z64 and mm.z64 respectively and placed in the roms folder.

Build

You can build OoTMM with either docker or your native environment.

Docker (recommended)

Install docker, then run:

docker compose up --build

The first build can be a bit slow. Subsequent builds will be much faster. On older versions of docker, you may need to run docker-compose up --build instead (note the dash).

The output will be out/OoTMM.z64.

Native (for developers)

You need:

  • A C/C++ toolchain for your system
  • Make
  • n64-ultra
  • Node 18 or newer
  • Git

On windows, we recommend using WSL to build OoTMM.

Install the required dependencies:

corepack enable pnpm
pnpm i

Then you can build the project:

pnpm start

The output will be out/OoTMM.z64.

License

This project is licensed under the MIT license.

Author

This project was created by Maxime Bacoux "Nax".