The Legend of Zelda: Ocarina of Time is a massive game. It is also an incredibly popular speedrunning title. The community has managed to bring their fastest run down to 17 minutes and 24 seconds. Here’s how they do it.
One of the most well known speedruns for Ocarina of Time took place on July 20th 2014 when Narcissa Wright managed a highly impressive 18 minutes and 10 seconds. In the time since then, various developments have shaved off nearly a full minute from that record.
skater82297 is the current world record holder in the Any% category. Any% seeks to beat the game as fast as possible using whatever techniques or glitches available. What was the major breakthrough that made this possible? I asked skater myself to understand how the run has managed to get so fast.
It came down to a single item: the bottle. Runners used it to perform a “wrong warp” from the Deku Tree directly into Ganon’s Castle. But getting the bottle was time consuming. You had to leave the forest, venture to a neighboring town, and complete a chicken collecting mini game to get it.
“I found a glitch that allowed us to get a bottle inside the Deku Tree. It blew the route open,” skater explained. He said the original set up did not always work. But he and other runners worked hard to find another method.
“After a year and a half of runs and months of testing, we recently discovered a faster and consistent way to perform it.”
The glitch is called “Get Item Manipulation” and is incredibly complex. It consists of two parts. One where you delay the picking up of an item and another where you trick the game into giving you what you want. To do it, the runner performs an out of bounds clip so that Link can enter water and grab some vines at the same time.
Link has multiple states in memory including a value that tracks whether or not he can receive an item. The trick prevents Link from picking up a nearby Deku Nut but keeps him in a state where the game thinks he is about the receive an item.
“Link has a byte variable that is used to give [him] an item,” user mzxrules told me when I visited the OoT speedrunning community’s Discord. He helped discover and analyze the glitch.
“When you delay collecting an item and pass in front of a chest, the game writes a value to that variable and negates it in order to obtain the correct item.”
If it sounds confusing, that’s because it is. The community explained the trick to me in great detail and still worried that it might be too difficult to explain. The important thing to know is that getting near a specific chest in the Deku Tree luckily writes the correct value in memory to give Link a bottle. Splashing back down into the water lets him collect it. It takes a huge chunk of time out of the run.
The ramifications of this trick are wide reaching. Originally, the fastest platform to run the game on was the obscure Chinese iQue Player. This glitch won’t work on that console or the N64. It actually crashes the game. Runners went back to the Wii Virtual Console.
It also altered the shape of the run. Older runs would skip getting the Kokiri Sword entirely. This left Link with only a few fragile Deku Sticks to fight the two bosses in the run: Gohma and Ganon. It also made runners pull off a tricky skip to reach the Deku Tree. While the run still uses a damage glitch involving Deku Sticks for boss fights, runners have returned to collecting the sword to reach the dungeon as the game originally intended.
With so much time coming off the run, I asked skater if he thought a run under 17 minutes and 20 seconds was possible. He seemed optimistic.
I think under 17:20 is realistic right now,” he told me. “With current strats we could even see Any% getting under 17:15 with a well executed run.”
There’s a lot of hard work to be done. Hours and hours go into optimizations and glitch hunting. I asked skater if the work ever gets dull. After all, he sometimes streams for ten hours straight to test glitches and perform runs.
“I keep coming back because of how much I love the game. It’s so fun to keep improving,” he said. “I just can’t get enough of it.”