Ever since I was a kid I’ve been obsessed with video games. My earliest system was an NES where I used to play super mario bros all day long. I can only ever remembering beating that game once, and it took hours. Flash forward to today, where a community of people race to beat that same game in under 5 minutes. These people are called SpeedRunners, and their aim is to blast through video games as quickly as possible. I stumbled upon SpeedRun videos a couple of years ago, and have since been fascinated by the skills and glitches used to achieve such crazy clear times. From a programming point of view, It’s a very interesting analysis on erroneous code and how it can be used by people in unintended ways.
A SpeedRun can be defined as simply trying to defeat a game as quickly as possible. The community itself however has defined variant rules and categories that a SpeedRun can fall into. The default category associated with most speed runs is “Any%”. This term originates from the original Metroid SpeedRunning community. Metroid was a game that gauged progression with a percentage on the screen, therefore Any% meant that you could essentially end the game with any completion percentage. Most games nowadays do not have a percent gauge for completion but the term still applies to them with the translation of “anything goes”. Other categories include 100% (Complete every objective), Low % (Complete game with lowest amount of objectives completed), Glitch-less (no glitches), and many more. One of the most sought after records for SpeedRunning comes in the form of Super Mario Bros 2 for the NES. The record for this game was recently broken in October 2017 by a fraction of a second. Because this game has been around for so long, and the community has SpeedRun (SpeedRan?) it so much, the run has been optimized to a point where competitors can only aim to shave off fractions of a second.
The above SpeedRun is an example of an Any% run, but it could also fall in the category of Glitch-less as well. A Glitch is a unintentional mistake in the games programming, that is exploited by the user of the game. Glitches in my opinion, are what make the SpeedRun community so interesting. SpeedRunners use a slew of tools to find errors in the games’ code, and then manipulate those errors to sometimes skip entire sections of a game. Glitches vary wildly by type and use-case. Sometimes a glitch can be used to get past a door that normally required certain objectives to be met. Other times, a glitch can warp your character directly to the last boss. A great example of glitch exploitation and explanation can be seen in the video below, which is a SpeedRun of the Legend of Zelda (Note: the game is in Japanese because in the SpeedRun community every second counts, and certain localizations of games actually run faster than others).
I’m not going to explain how the glitch works as I feel the video does a way better job than I can, but the reason I like the example above so much, is that in this glitch the user actually writes code directly into the game, allowing for a staircase that leads directly to the final room of the game. To be able to do something like this, one would need to know the game code front a back, and know exactly how every line of code affects the game and what it’s purpose is. Beyond just understanding the code, the SpeedRunner would also need to know how the programming language, compiler and the run-time operating system would handle the injected code and where it would end up. The discovery and delivery of this kind of a glitch is almost as impressive if not more than the original game programming. Glitches like these are constantly being discovered, used and optimized in all sorts of great games. One of the more interesting SpeedRunning communities I’ve found revolves around an Any% run of the Legend of Zelda: Ocarina of Time for Nintendo 64. Even though the game is over 20 years old, SpeedRunners are still finding brand new glitches that are knocking hours off of the world record time.
As I end this post, I’d just like to add that SpeedRunning is not exclusive only to video games. You can pretty much SpeedRun anything. Here’s a video showing a SpeedRun of getting banned from the Club Penguin website the quickest. R.I.P. Club Penguin.