A hallmark of all truly classic games is replayability.
There are games we return to over and over, whether it's to hone our skills and improve our score, to practice and gain mastery over for the sake of tournament play, or simply to curl up with because you have fond memories of it. But though one could say a beginner at Street Fighter isn't truly playing the same game as an EVO champion, this isn't strictly true — both players have access to the same characters with the same moves who populate the same stages. The game itself never changes.
But what if it could?
What if you could pick up an old favorite and play it again, not just going through the motions, but as if it was the first time? A pair of randomization programs, for The Legend of Zelda on NES and Super Metroid on SNES, can provide just that.
The original idea came from an offhand comment. Zelda Randomizer creator Fred Coughlin remembers, "One night while waiting for a plane, [speedrunner] LackAttack24 mentioned that he wished for a way to make the game fresh. Before the flight, I had started researching it, and things took off from there." Lioran Waters, creator of the Super Metroid Route Randomizer hadn't even intended to make his program himself. "I was looking into it to see if the engine allowed it and eventually offer it to other people that know more about Super Metroid romhacking. But by the time I was done checking it, I realized I could do it with my own knowledge."
Not that the process was easy: "The randomizer is doing two things," Waters explains. "First, it's changing the pointer for each door that points to their respective room to a new one, and second, it's switching the object value to stuff like collectible and locked doors. So you'll see an open door instead of a gray door if it's a possible way to go, by making it a blue door or weapon-controlled door, and obviously moving items around if the options allow. There was a lot of tedious work. The worst part was collecting all the data for each door and door object which took two to three days of waking up, starting work on it and only stopping to sleep and eat, all to get the value for 400-500 doors. I wouldn't do it again."
The dedication is clear even before generating a randomized ROM in both programs. Both the Zelda Randomizer and the Super Metroid Route Randomizer offer a ton of toggles and options for the player to customize just how crazy and foreign they want their run to be. Feel like playing Zelda swordless with any set of monsters capable of showing up on any screen, on top of shuffled sprites so you're not quite sure what they're capable of until a lowly Octorok starts sptting a Lionel’s swords? How about a version of Super Metroid which, rather than ever give you the insulated Varia suit, expects you to hustle through Norfair's heated rooms before your energy tanks run out? It's your funeral.
"The worst part was collecting all the data for each door and door object which took two to three days of waking up, starting work on it and only stopping to sleep and eat, all to get the value for 400-500 doors. I wouldn't do it again." - Lioran Waters
That's at the extreme end of things, but a certain amount of familiarity with both games is expected of anyone trying to randomize their experience. Waters has taken pains to try and ensure that the higher-level tricks that skilled speedrunners employ to break Super Metroid in half, such as the mockball and horizontal bomb jumps, aren't required to play the Route Randomizer, but you won’t get far without at least mastering wall jumps and infinite bomb jumps. A shuffled version of The Legend of Zelda, meanwhile, is best played either with complete knowledge of every bombable wall and flammable bush in Hyrule, or at least a map handy with all those locations marked. There are glitches the savvy can take advantage of in Zelda as well: "There's an interesting 'bug' where you normally exit and re-enter Level 1, unlocking the top door," says Coughlin. "It turns out that works for any direction that you can enter the dungeon from the overworld. So if I enter the Level 1 screen from the east and enter the dungeon, then the east door, if locked, would be unlocked. It's a bug that only happens once in the normal game, but has a lot more applications in Randomizer."
You have to take any advantage you can in a randomized game, it turns out. When I tried the Zelda Randomizer for myself, I discovered that the "Take Any One You Want" caves, which offer your choice between a heart container and a bottle of red medicine, now feature a third option of a blue candle. In a normal game, you'd almost never pass up the heart container in favor of something that could be bought at any store, but with the randomizer at work, the blue candle is powerfully tempting. "It's a very tough choice," agrees Coughlin. "It depends on how early I find the cave with them both, but I usually go with the candle. But always the wood sword instead of the candle! It's a risk, because it makes it much harder to get the magical sword. But if I'm playing in a race, being able to burn those bushes early makes it easier for me to find the dungeons I need."
Though of course, some people would rather be at a disadvantage. "I love to play on branching Hell level 3," says Waters, referring to the options that make the randomized game world more mazelike while also forcing the player through superheated rooms with no suit upgrades. "I'm the only SM speedrunner that dares to speedrun Super Metroid Impossible, so it's fair to say I love it when the difficulty is cranked up. It's also fun to watch other people attempt it and most likely die repeatedly."
Both randomizers have undergone extensive playtesting to ensure that they don’t generate unwinnable seeds, though not every feature of the original game can survive the randomization process. The auto-filling minimap, introduced to the Metroid series with Super Metroid, is disabled in Waters' Route Randomizer. "There was no attempt to get the minimap working," says Waters, due to the impossible geometry that randomized entrances and exits results in. "I figured rooms would overlap each other all the time and would just turn into a huge blob. There's also the fact that you change areas all the time, which confuses the game in regards to where you are. Like going directly from Norfair to Crateria, which normally doesn't happen." In a way, though, the removal brings the experience closer to something like the first two games, which rely on the players to feel out their own way through trial and error.
Each randomizer has also given rise to unique challenge runs. The Super Metroid Route Randomizer natively offers a "50 Rooms Challenge," asking the player to defeat Mother Brain and escape using only whatever items the randomizer spits out in a mere 50 rooms of the map. (By contrast, regular Linear Mode usually draws around 100 rooms from the total pool, and the "easy mode" of the randomizer is the "150 Rooms Challenge.") Players of the Zelda Randomizer have come up with their own game: Zelda Bingo, where the locations of all items, monsters, and dungeon entrances are shuffled, and two players run the same seed to reach bingo first. The cards contain things like "Kill a Dodongo," "Win the Money Making Game," or "Find the Whistle." Coughlin has kept a close eye on how the speedrunner and streamer community has used his randomizer, implementing some of their ideas into the program. “Swordless and a couple of others came from jkoper. A few of the others also came from players/spectators; most famously was "Fun %" in which all item sprites are replaced by the same sprite, forcing players to pick up items to learn what they are."
Both randomizers are finished, more or less. "It's not in development right now, but I was thinking of making a complete randomizer of Super Metroid that would create everything from scratch," muses Waters. "Though I don't know if I will get around to it, it is something I would like to tackle in terms of programming since I have better knowledge now."
For the time being, you can download the Route Randomizer from the link on Waters' Twitch channel. Coughlin's Zelda Randomizer is on the cusp of release, with some festivities planned for the big launch day. "It will be releasing on March 14, 2015, or Pi Day, as us math nerds refer to it. There will be a race on speedrunslive.com at 1:59 PM Eastern. So, yes, at 3/14 1:59. I am sure there will be other races that day, so people can head over to the SRL server to find people to race against and have fun."
Whether you decide to pick up the gauntlet and participate in a race or not, give a randomized game a try that day and see for yourself how invigorating it can be to play a game where everything you think you know is wrong.