I adore classic games, and I really love playing classic games in new ways. From VR re-imaginings to randomizer modes and everything else in-between. Finding new ways to enjoy old comfort games is one of my favorite things.
If you have nostalgia for the old N64-era classics, like Super Mario 64 or Ocarina of Time, you should be following the work of the Harbour Masters. This open-source collective works to build fully-functional PC ports out of de-compiled classic games. Every single one of their ports is fully-functional, filled with optional enhancements and bonus modes, and utterly trivial to set up and play. Every single release they are associated with is top-tier quality, and open-source as well.
One of my all-time favorite ways to replay old games is with a randomizer. Randomizer mods/modes swap the places of in-game items (as many categories at you want, typically), but use logic to ensure the “seed” is complete-able. So you’re still playing in the same levels, but the path you take through the game is entirely different. You may be required to complete a late-stage dungeon to get an item for the tutorial dungeon. If you like the puzzle-box aspect of completing games (especially Zelda games), I’d urge you to try out a randomizer.
So, how do you get started? First, you’ll need to download the PC port for your game from GitHub. Here’s a pile of links to some Harbour Masters’ projects:
- The Legend of Zelda: Ocarina of Time - Ship of Harkinian
- The Legend of Zelda: Majora’s Mask - 2Ship2Harkinian
- Super Mario 64 - Ghostship
- Star Fox 64 - Starship
Just download the release from there and follow the setup guide on that page. You’ll need to download a rom for the game you’re trying to run, as the assets can’t legally be included with the de-compiled game code. These ports use the assets from the rom to make the game functional. Where to find roms is out-of-scope for this blog. Go use a search engine.
Harbour Masters do incredible work, but they aren’t the only group out there reviving and preserving classic games. I can also recommend:
- MatheoVignaud’s tmc - A PC port of The Legend of Zelda: The Minish Cap
- TwilitRealm’s Dusklight - A PC port of The Legend of Zelda: Twilight Princess
- Zelda64Recomp project - Another PC port of The Legend of Zelda: Majora’s Mask (with intention to add Ocarina of Time later)
(I know TMC and TP aren’t N64 games, but the ports are really nice, so I had to mention them)
Its very important to note that these PC ports only exist because of various decompilation projects underway by volunteer preservationists, including the incredible Zelda Reverse Engineering Team. These PC ports simply wouldn’t exist without the dedicated hard work of people picking apart the compiled binaries and re-implementing functions in the open. Its a ton of work and they are truly the core of these ports.
One thing that’s out-of-scope for this post, but I wanted to mention anyway is Archipelago. This project allows you to bind multiple randomizers together, for multiple different games, into one shared “multi-world randomzier”. This may be easier to explain with an example. Let’s say you’re randomizing The Legend of Zelda: Ocarina of Time and Super Mario 64. Archipelago may put your Hookshot in Mario 64’s Dire Dire Docks stage, so your friend needs to get that item for you. Then you use that Hookshot to unlock the Ground Pound move for your friend in Mario 64. Archipelago uses a web service to tie game unlocks together. And you aren’t limited to two different games, you could have many games contributing to a single multi-world (up to 30 on the website, but you can increase this if you host it yourself).
So get out there, play classic games on your PC.