Ocarina of Time: Randomizer Development
Ocarina of Time Randomizer is a rom hack of regular Ocarina of Time, which involves utilizing a combination of C and Python to place items randomly throughout the world. The main repository being used for development is managed by TestRunner.
The project is split into two unique parts: the C code and the Python code.
Compiling Assembly and C on macOS
Getting the N64 development tools is required, see Building N64 Development Tools for macOS for more details on obtaining the tools.
An assembly program for MIPS is also required for the assembly code. The build instructions work completely fine on macOS, just make sure CMake is installed (brew).
A base uncompressed rom is required to compile the assembly and C
code. A decompressor program is included in the repository at
bin/Decompress. After decompressing the rom, put it at
Once all of this is configured, run
python3 ASM/build.py --compile-c.
Running Python on macOS
Everything works as described in the README, minus the GUI.
As of writing, the GUI requires electron version 7.3.3. This
version does not have a proper release for Apple Silicon, meaing
during the setup process it cannot find an electron version for
7.3.3 built for
darwin-arm64. It is still possible to get the
GUI working in macOS on Apple Silicon under Rosetta 2 by specifying
--arch=x64. For version 7.3.3, the command would be
npm i --arch=x64 firstname.lastname@example.org. Outside of this, everything else
installs correctly by simply using
This does mean the standard GUI application will run under Rosetta 2,
but running the server by running
still work. Note that the GUI will need to be launched at least once before
running the server.