There’s an allure to breaking something, a little reminder that the world is malleable and you have power over things. The rain of glass after a hurled stone rockets through an ancient window, the pleasant snap of a stick you break in your hands – all leave a hint of a smile on the face. Children are often endeared to destruction early – toddling around, knocking things over, pulling at the things they can change in the world. But they quickly learn the distinction between breaking things they do not care about, and those items or toys they love. It’s not an unusual sight to see a young child, tears in eyes, clutching the two parts of a beloved toy that used to be one.
Video game speedrunners, an unusual bunch, never learned this distinction. Speedrunning, a popular niche in the video game community, involves trying to get from the beginning of a game to the end as fast as possible. On the surface, this seems simple: don’t fail at various levels, know how the story of a game progresses, and be predictive of what it’s going to ask you as a player to do. In practice, that isn’t how it works.
The year was 1993, and id Software just released Doom. Doom was a gaming revelation; it was one of the first titles to feature internet-based multiplayer support, full 3D graphics, and the ability for players to modify the game through data archive code packages, called “WADs.” But there were two other features that Doom shipped with that made it monumental. The first was the level timer, a constant count of how long any period of the game took to complete. The second, and perhaps even more important, was the ability for players to record demos, videos of their personal gameplay. For the first time, friends could brag to friends that they beat the game in a certain time, and have a natively captured video to back those claims up.
Naturally, competitions blossomed. The internet was flooded with recorded demos, and sites sprung up awarding titles to various players that completed challenges (for example: beating the game using no guns, an impressive feat in a first-person shooter game). In November of 1994, Simon Widlake, spinning off of an earlier site called Doom Honorific Titles, launched COMPET-N, a Doom site dedicated solely to fast playthroughs of various points in the game. The site amassed hundreds of hours worth of recordings. Speedrunning was born.
The demo feature caught on in the PC gaming world. Quake, a first-person shooter released in 1996, had a demo feature with slightly more structure than Doom’s. Quake fanatics starting doing runs through the entire game, all at the game’s highest difficulty, “Nightmare” mode. In 1997, the first major speedrunning project was completed: Quake done Quick. The project was a composite demo of the fandom’s fastest runs, making up one lightning fast completion of Quake on the Nightmare setting, clocking in at a total 0:19:49, far faster than the hours and hours it took a normal person to complete the game.
At the beginning, runs were rather straightforward and easy to understand. Despite this, there’s little doubt that from the start, speedrunning represented an atypical video game experience. Speedrunners don’t care about any of the frills developers add to their games – things like atmosphere, video cutscenes, puzzles, plot. The Doom and Quake runners didn’t try to kill the enemies, gather the weapons, or really, even play the game. The goal was to spend as little time playing the game as possible.
To understand the allure of modern speedrunning, it’s important to remember what video games actually are. It’s easy to get lost in their worlds, but at the end of the day, they’re just lines and lines of code executed by a computer, whether an actual PC or a PC masquerading as a different box. And a speedrunner’s favorite thing about code? Code is written by humans and is riddled with errors.
Quake is built on a system called, unironically, the Quake Engine. Written in the programming languages C and Assembly, the Quake Engine was a way for game developers to hang their pieces on an established base of code so they wouldn’t have to spend days and money rewriting standard structural processes, like how the computer would render shapes, motion or light in various games. The Quake Engine and others have been used repeatedly for a wide variety of games.
Luckily for runners, the Quake Engine is riddled with code flaws. The more the gamers played, the more cracks they found in the system, allowing players to do things developers had not intended. Chief among them was strafe-jumping, a system of movement that essentially breaks the physics of the game world, and allows players to move at incredible speeds in all dimensions. This discovery shocked players and allowed for a much faster completion time. The discovery of strafe-jumping in the Quake Engine was a perfect precursor to the onslaught of speedruns to come. In 2000, they put together a new project, Quake done Quick with a Vengeance, a new composite run clocking in at only 0:12:23. Compare the movement speed in the proceeding video with the speed of this one:
The speedrunning community owes much of its existence to one Mr. Nolan Pflug, the director of the original Quake projects. In 1998, Pflug created (with Gunnar Andre Mo, another runner), the Speed Demos Archive, a one-stop website for speedrunning demo files, tricks, and discussion. It was on this site that discussion of speedrunning a wide variety of games blossomed into legitimate plans of execution. It was also here that the first real community of speedrunners developed, a group of people who cooperated endlessly to dig deeper and deeper into the games’ code to optimize their runs. Other websites before had been devoted to showcasing speedrunning ability, but this one was devoted to honing it.
Therein lies the ultimate contradiction of speedrunning. The people who try and play the game for the least amount of the time often know the most about it. The way games are coded leads to glitches, bugs and sequence breaks that can be exploited to lead to faster and faster times.To speedrun at world record speeds (yes, those are indeed recorded) requires an incredible depth of knowledge not only about the structure of the games on the surface, but also the coding beneath them and how they work on a concrete level.
As the community grew, so too did the number of games it focused on. The Metroid series was the first series outside of the Doom and Quake lines to grip the community. Pflug, again, helped to engender this interest, posting several of his own runs from Super Metroid and Metroid Prime. Focus on the Metroid series, with its nonlinear narratives, allowed the community to scope out different routes to completion that were faster than others. The games could be completed by accomplishing objectives in a variety of orders, and gamers worked to determine which objectives could be dropped to finish the games faster. Of course, the broken physics and mobility tricks came along for the ride. And running did not stop there. Today, runners focus on a massive number of games across decades of release and hundreds of styles and genres.
Speedruns are essentially journeys in optimization. It’s difficult to put into words just how masterful the command some of these runners have over their games is. Many breaks in a game’s engine require frame-perfect or even pixel-perfect timing, meaning a player often has to hit a button on the correct frame of the game or the correct pixel on the screen for the break to work. Take for example the world record for a game everyone knows, Super Mario Bros. on the original NES. The WR for this game is a 0:4:56.878, held by a famous player in the speedrun community known as darbian (stylized with the lowercase “d”).
Warning: The following paragraphs have a technical explanation of how a difficult glitch works. If you’re uninterested in that, please skip down to the paragraph beginning with “So that’s a lot of work…” and rejoin me there.
The run isn’t particularly flashy. To the outside observer, it’s not entirely evident what’s so special about it, other than the fact that he doesn’t die and finishes it fast. But take, for example, what happens at 3:30 in the video. darbian is in world 8-2 in the game, and says “That’s the shot.” Mario jumps up a step, and then, oddly, sits there for a second. One would assume that in a speedrun, sitting and waiting would be antithetical to fast times. Surely, if he had just kept going, his record would have been faster?
Well, no. Bear with me here, we’re getting technical. If you’ve played Super Mario Bros., you’re probably aware that the game fades to black when you beat a level before transitioning to a different level. However, due to the way this specific game is coded, those level transitions can only happen in multiples of 21 frames (or 0.35 seconds) from when the game is turned on. This is difficult to picture, but darbian explains it by comparing it to a bus stop. When Mario reaches the bus stop (the end of any given level), he must wait for the next bus (the transition to the next level) which only leave the station every .35 seconds. So no matter how one plays a level, they have to wait until a multiple of .35 seconds passes before the next level loads. This gives runners leeway on some levels and none on others. For some levels, perfect play might drop Mario off right before a “bus.” This means a runner cannot make mistakes. For others, perfect play drops Mario off right after a “bus.” This gives Mario 10-15 frames that a runner can afford to lose in the level. A player on those levels doesn’t have to be “perfect,” just perfect enough to get on the same “bus.”
But it’s deeper than that. Due to, again, how the game is programmed, several items that appear to be random in the game are actually tied how many sets of 21 frames have passed since the game was turned on until when the player reaches the item in question. In the community, these multiples of 21 frames are known as “frame rules”. By knowing what frame rule you’re on in the game, you know how everything in the game is going to behave, from how Koopas jump, to how Bullet Bill cannons shoot, to virtually anything else in the game.
There’s one more piece of technicality to know before you can understand what darbian is doing. Everyone knows how the end of levels goes in Super Mario Bros. He jumps onto a flagpole, slides down to the bottom, then the flag falls, Mario hops off the flagpole, walks into the castle, and then the timer counts down. When the countdown ends, it’s on to the next level. But there’s more to it than that (cause why wouldn’t there be?). Unbeknownst to players, there’s an invisible block just to the right of the black castle door.
Mario runs into this, which prevents him from running off past the castle into the end of forever. When Mario hits the flagpole, the game’s system starts checking to see if Mario is against that block. When the game sees he is against a block, it puts Mario in the background (so it looks like he did indeed enter the castle), and starts the countdown. (There are ways to hack the game to show that Mario, behind the castle, is indeed just walking repeatedly into a block he cannot pass).
So back to the video. darbian is executing a Bullet Bill Glitch. As he jumps over the cannon at 3:30, he’s arrived at the correct frame rule for an “optimal shot.” The Bullet Bill cannon only shoots to the right, instead of the non-optimal shot when it would have first shot to the left. This means that the execution of the glitch will save him two frame rules (.7 seconds) over a non-glitched jump, instead of one (.35 seconds). He sits on the second step to allow the Bullet Bill to pass beneath him and get halfway in and out of the next column. (As another point of note, this timing only applies to CRT TVs, since the timing would be earlier on LCD ones – yes, they measure this stuff). He then jumps over and hits the Bullet Bill at the same time the Bullet Bill hits the flag pole. This allows darbian to “clip,” or get Mario into the block the flagpole is sitting on, allowing Mario to grab the flagpole at its base inside that block. The game’s code doesn’t allow Mario to be inside blocks, so it ejects him immediately to the left of the flagpole. Well, Mario is in a block, and to the left of a flagpole is another block. This means that as Mario grabs the flagpole, the game starts the check to see if he’s touching a block (and thus in the castle), but then immediately puts him in a block (and in the background, which is why you see Mario go behind the bush). The check succeeds, and the level instantly ends, skipping the animation of the flag falling and Mario walking into the castle.
So that’s a lot of work, (welcome back!) timing, and perfection to save… .7 seconds in the run. darbian, the best Super Mario Bros. speedrunner in the world, says his success rate on the glitch is only about 1/3. The problem is, failing the glitch means the run is over. He won’t get a record time, since he lost .7 seconds, and due to the frame rule, can’t make that back up elsewhere. So 2/3 times darbian tries a run, he has to start from scratch, playing the section over and over until conditions and inputs are right and he gets it.
Thus we get to another contradiction of speedrunning. The goal is to play the game as little as possible, but in doing so, speedrunners play more than most everyone else. Take the WR run of one of my favorite games of all time: The Legend of Zelda: Ocarina of Time.
First, you’ll notice the game is in Japanese. Why, since the runner is obviously not Japanese? The Japanese version of the game renders slightly faster than English text, and thus time can be saved on cutscenes that are impossible to skip. Why does the player walk backward in game? Easy, Link walks faster in reverse than forward. I won’t bore our poor readers with more technical explanation of how the glitches in the run work (fun things like system memory markers!) but I will say that Torje took over a thousand tries to successfully break the WR.
Just to show you how broken speedruns can look, I’ll leave you with one more video: the WR completion of The Elder Scrolls III: Morrowind, another one of my favorite games. The game takes me hours to complete. The WR is a scant 0:03:14. By about two minutes into the run, the video looks so broken that it’s difficult to discern what in the world the runner is doing, but I insist that it is all exquisitely choreographed.
The speedrunning community is one founded in cooperation. It’s considered a bit of a faux pas to hoard a glitch or code discovery for yourself. In fact, there are people who are just “glitch runners,” people that play games over and over just looking for cracks in the world, so they can publish them online for speedrunners to feast on. Beyond that, the community often tackles different goals, putting runs into different categories. These include 100% (everything available in the game must be acquired or defeated), or any% (the gamer just has to trigger the game’s end sequence, however they choose), amongst many more. And sometimes, the community as a whole comes together to accomplish amazing things. Twice a year, the whole community gathers for the Games Done Quick charity events: live week-long speedrun marathons of multiple games benefitting charities like the Prevent Cancer Foundation or Doctors Without Borders. The marathons aren’t always just straight-through runs; people beat games blindfolded, there are races, as well as a wide variety of other challenges. Across 15 different events, the community has raised over $10 million.
To an outsider, speedrunning is weird. Why buy a game, just to break it? Why avoid everything the developers worked so hard to put in? Speedrunners don’t see it that way. To a runner, breaking the code, glitching the game, they’re all acts of love. Speedrunners know more about their games of choice than almost anyone else. To them, everything in the game world should be examined and used. They push the boundaries of what’s ok, but out of love, not spite. They’re the kids in their rooms, pulling apart their toys – not to pointlessly break them, but to figure out what makes them tick and to put them back together again.
(Cover Photograph by Tom Newby -https://www.flickr.com/photos/noodle93/ – Licensed under CC BY 2.0)