A new modification to The Legend of Zelda: A Link to the Past brings a difficult multiplayer challenge to the game. With help from an emulator and some special code, two players can coordinate their progress through the game and change each other’s inventory.
Andi McClure is an independent game maker who leveraged knowledge of randomiser speedruns, which scramble and change the location of in-game items, to create an altered version of A Link to the Past. Races using a randomiser are sometimes run in two-person teams who communicate item locations through a chat program such as Skype. McClure’s script, written in Lua, allows the players’ games to synchronise so that picking up an item in one game will add it to the inventory of the other player.
“I thought [randomiser teams] somehow rigged an emulator to share items,” McClure told Kotaku. “So I decided I wanted to make the thing I misunderstood 2v2 races to be real.”
Above: The run as viewed from McClures’ perspective.
McClure tested her script in a speedrun alongside game designer Alex Zandra Van Chestein. The cooperative run finished with a time of 2:04:31 but was not free of difficulties. At one point, Van Chestein lost her sword when McClure had an NPC upgrade her own.
“The way the randomiser works is that when a memory value changes, it only updates it if the new value is higher,” McClure said. “At some point during that minute the memory value for your sword level gets set to 255. There is no level 255 sword.”
While McClure has since fixed this issue, the duo needed to use their emulator’s built-in Game Genie to write a new sword into Van Chestein’s inventory. The run’s various sequence breaks also caused trouble for Van Chestein, including a section where an invisible NPC followed her around and prevented other companions from joining her.
Above: The run as viewed from Van Chestein’s perspective.
There are still issues to fix with the script and how it affects the game, but McClure hopes the script can be used in other games as well, creating exciting cooperative races.
“The three games I want to support by the time I ‘release’ this are Super Metroid, Link to the Past and the Link to the Past randomiser,” McClure said. “I think a Super Metroid co-op speedrun would be really interesting.”
The script behind this feat has not been made into an executable file, but the code is available for use in emulators that support additional scripts.