Tool-assisted speedrun
Encyclopedia
A tool-assisted speedrun (abbreviated TAS) is a speedrun movie
Speedrun
A speedrun is a play-through, or recording thereof, of a whole video game or a selected part of it performed with the intent of completing it as fast as possible, optionally under certain prerequisites, mainly for the purposes of entertainment and competition...

 or performance of a video game produced by means of emulation
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

 and using features unavailable to regular players, such as slow motion
Slow motion
Slow motion is an effect in film-making whereby time appears to be slowed down. It was invented by the Austrian priest August Musger....

 or frame-by-frame advance of the gameplay, and re-recording of previous portions of a performance. The idea is that such "tools" compensate for human limitations in skill and reflex, facilitating gameplay techniques that are otherwise impossible or prohibitively difficult. Producers of tool-assisted speedruns do not compete with so-called "unassisted" speedrunners of video games; on the other hand, collaborative efforts take place.

1999–2001

The term was originally coined during the early days of Doom speedrunning, during which the first of these runs were made (although they were sometimes also referred to as "built demos"). When Andy "Aurican" Kempling released a modified version of the Doom source code that made it possible to record demos in slow motion and in several sessions, it was possible for the first players to start recording tool-assisted demos. A couple of months afterwards, in June 1999, Esko Koskimaa, Peo Sjoblom and Joonatan Donner opened the first site to share these demos, which they aptly called "Tools-Assisted Speedruns".

Like many other tool-assisted speedrun communities, the maintainers of the site stressed the fact that their demos were for entertainment purposes rather than skill competitions, although the attempt to attain the fastest time possible with tools itself became a competition as well. The site became a success, updating usually several times a week with demos recorded by its maintainers and submitted by its readers. After a short while, when version 2.03 of Lee Killough's Marine's Best Friend Doom source port was released (based on the Boom source port), it became even easier for people to record these demos, adding the functionality of re-recording without having to replay the demo until it reached the point where you wanted to continue.

The site was active until August 10, 2001, at which point Yonathan Donner posted a news message stating that their site would be an archive from now on, and pointing towards The Doomed Speed Demos Archive, a site mainly for non-assisted speedruns, of which the author agreed to take over the posting of tool-assisted speedruns. Although popularity had dwindled since then, built demos have still been submitted until as late as November 2005, and are currently usually being made with PrBoom.

2003–present

In 2003, a video of a Japanese player called Morimoto beating the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

 game Super Mario Bros. 3
Super Mario Bros. 3
, also referred to as Super Mario 3 and SMB3, is a platform video game developed and published by Nintendo for the Nintendo Entertainment System , and is the third game in the Super Mario series. The game was released in Japan in 1988, in the United States in 1990, and in Europe in 1991...

 in 11 minutes and performing some other incredible stunts as well started floating around the Internet. It was a very controversial video because not many people knew about tool-assisted speedruns at the time, especially for the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

. Many people felt like they had been cheated when they found out it was done using an emulator
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

. The video, however, gave the inspiration to Joel "Bisqwit" Yliluoma to start a website called NESvideos, which was dedicated to tool-assisted speedruns for the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

. At first it hosted videos only for the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

, but as the community grew, members of the community managed to add the features required for tool-assisted speedrunning into emulators for other systems. Later the name of the site was changed to TASVideos http://tasvideos.org/. As of November 2010, TASVideos is the largest English-language webcommunity that produces and hosts tool-assisted speedruns; the site holds 1646 complete speedruns, of which 790 are the fastest of their kind.

Tool-assisted speedruns have been made for some notable ROM hacks
ROM hacking
ROM hacking is the process of modifying a video game ROM image to alter the game's graphics, dialogue, levels, gameplay, or other elements. This is usually done by technically inclined video game fans to breathe new life into a cherished old game, as a creative outlet, or to make essentially new...

 as well as for published games.

A joke personification of tool-assisted speedruns, called TAS-san (Mr. TAS), has become popular among Japanese Internet users. Tool-assisted speedruns uploaded to video sites like Nico Nico Douga
Nico Nico Douga
is a popular video sharing website in Japan managed by Niwango, a subsidiary of Dwango. Its nickname is "Niconico" or "Nico-dō", where "nikoniko" is the Japanese ideophone for smiling. Nico Nico Douga is the thirteenth most visited website in Japan...

, YouTube
YouTube
YouTube is a video-sharing website, created by three former PayPal employees in February 2005, on which users can upload, view and share videos....

, or TASvideos may be described as a new world record by TAS-san, who is said to have the superhuman memory and reflexes needed to execute such a speedrun in real time.

Method

Creating a tool-assisted speedrun is the process of finding the optimal set of inputs to fulfill a given criterion — usually completing a game as fast as possible. No limits are imposed on the tools used for this search, but the result has to be a set of timed key-presses that, when played back on the actual console, achieves the target criterion. The basic method used to construct such a set of inputs is to record one's input while playing the game on an emulator, all the while saving and loading the emulator's state repeatedly to test out various possibilities and only keep the best result. To make this more precise, the game is slowed down. Initially, it was common to slow down to some low fraction (e.g. 5%) of normal speed. However, due to advances in the field, it is now expected that frame-advance, manually stepping through emulation one frame at a time, is used. A tool-assisted speedrun done without this technique will most likely be criticised for sloppy play.

The use of savestates also facilitates another common technique, luck manipulation, which is the practice of exploiting the game's use of player input in its pseudo-random number generation to make favorable outcomes happen. Using a savestate from before some event, it is possible to experiment with small input variations until the event has the desired outcome. Depending on the game and event, this can be a very time consuming process, at times requiring much backtracking, and can as such take up a large portion of the total time spent making a tool-assisted speedrun. Making the ideal piece drop next in Tetris
Tetris
Tetris is a puzzle video game originally designed and programmed by Alexey Pajitnov in the Soviet Union. It was released on June 6, 1984, while he was working for the Dorodnicyn Computing Centre of the Academy of Science of the USSR in Moscow, Russian Soviet Federative Socialist Republic...

, or getting a rare drop the first time one kills an enemy, are examples of luck manipulation.

A rarely used tool is brute-force searching for ideal inputs by making a computer play the game, trying all possible inputs. In theory, this process could find the ideal set of inputs for any game, but since the space of all possible inputs grows exponentially with the length of the sequence, this is only viable for optimizing very small portions of the speed run. Instead, a heuristic algorithm can be used. Although such approach doesn't warrant a perfect solution, it can prove very effective for solving simple puzzle games.

Another rarely used technique is disassembling
Disassembler
A disassembler is a computer program that translates machine language into assembly language—the inverse operation to that of an assembler. A disassembler differs from a decompiler, which targets a high-level language rather than an assembly language...

 the game executable. By exposing the game logic, this enables the player to manipulate luck without trial and error, or reveal obscure bugs in the game engine. A more common, related technique, is to monitor the memory
Ram
-Animals:*Ram, an uncastrated male sheep*Ram cichlid, a species of freshwater fish endemic to Colombia and Venezuela-Military:*Battering ram*Ramming, a military tactic in which one vehicle runs into another...

 addresses responsible for certain effects to learn why and when they change. Memory watching is supported on most emulators used on TASVideos.org.

All these techniques involve direct interaction with the game state in ways not possible without emulation, but the final result, the set of inputs that makes up the speedrun, does not depend on such manipulation of the state of the emulated machine. The tool use in tool-assisted speedrunning is therefore different from the sort of state manipulation tools like Gameshark
GameShark
GameShark is the brand name of a line of video game cheat cartridges and other products for a variety of console video game systems and Windows based computers. Currently, the brand name is owned by Mad Catz, who actively markets GameShark products for the PlayStation, Xbox, Nintendo, and Sega game...

 provide, since such manipulation would not be expressible as a sequence of timed inputs.

Re-recording emulators

Tool-assisted speedrunning relies on the same series of inputs being played back at different times always giving the same results. In a manner of speaking, the emulation must be deterministic with regard to the saved inputs (e.g. random seed
Random seed
A random seed is a number used to initialize a pseudorandom number generator.The choice of a good random seed is crucial in the field of computer security...

s must not change from run to run). Otherwise, a movie that was optimal on one playback might not even complete it on a second playback. This loss of synchronization, or "desync", occurs when the state of the emulated machine at a particular time index no longer corresponds with that which existed at the same point in the movie's production. Desyncs can also be caused by incomplete savestates, which cause the emulated machine to be restored in a state different from that which existed when it was saved.
Problems with emulation, such as nondeterminism and incomplete savestates, are often only discovered under the precise frame-by-frame conditions of tool-assisted speedrunning. Emulator developers often do not give speedrunning issues high priority because they have little effect on regular gameplay; consequentially the community has forked
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...

 several emulators to make them suitable for the task. These include Snes9X improvement, Gens rerecording, VBA rerecording and Mupen rerecording. If a forked emulator is used to produce a TAS, playback on the normal, unmodified version of the emulator will usually result in a desync.

Emulators that currently feature the tools necessary to create tool-assisted speedruns include the Arcade emulator MAME
MAME
MAME is an emulator application designed to recreate the hardware of arcade game systems in software on modern personal computers and other platforms. The intention is to preserve gaming history by preventing vintage games from being lost or forgotten...

 (MAMEUI's option to record an uncompressed AVI slows down a game), the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

 emulators FCEUX, the Super Nintendo
Super Nintendo Entertainment System
The Super Nintendo Entertainment System is a 16-bit video game console that was released by Nintendo in North America, Europe, Australasia , and South America between 1990 and 1993. In Japan and Southeast Asia, the system is called the , or SFC for short...

 emulator Snes9x
Snes9x
Snes9x is an SNES emulator written in C++ with official ports for Linux, Microsoft Windows, Mac OS X, the PSP and Android.-Background:Development of Snes9x began in July 1997 when Snes96's Gary Henderson and Snes97's Jerremy Koot merged their respective emulators to create Snes9x. Since then,...

, the Genesis emulator Gens
Gens (Emulator)
Gens is a free Sega Genesis emulator. It runs on Windows systems , on Linux and on Microsoft's Xbox. A port to the Sega Dreamcast, known as Gens4All, is currently in development. Development of Gens began in 1999...

, the Game Boy Advance
Game Boy Advance
The is a 32-bit handheld video game console developed, manufactured, and marketed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001; and in the People's Republic of China...

 emulator VisualBoyAdvance
VisualBoyAdvance
VisualBoyAdvance is a free emulator of the Game Boy, Game Boy Color, and Game Boy Advance handheld game consoles....

, the Nintendo 64
Nintendo 64
The , often referred to as N64, was Nintendo′s third home video game console for the international market. Named for its 64-bit CPU, it was released in June 1996 in Japan, September 1996 in North America, March 1997 in Europe and Australia, September 1997 in France and December 1997 in Brazil...

 emulator Mupen64, the Nintendo DS
Nintendo DS
The is a portable game console produced by Nintendo, first released on November 21, 2004. A distinctive feature of the system is the presence of two separate LCD screens, the lower of which is a touchscreen, encompassed within a clamshell design, similar to the Game Boy Advance SP...

 emulator DeSmuME
DeSmuME
DeSmuME is an open source Nintendo DS emulator for Linux, Mac OS and Windows. Its name is derived from emu which is short for emulator, DS and ME.-The original DeSmuME:...

, the Sega Saturn
Sega Saturn
The is a 32-bit fifth-generation video game console that was first released by Sega on November 22, 1994 in Japan, May 11, 1995 in North America, and July 8, 1995 in Europe...

 emulator Yabause, the PSX
PlayStation
The is a 32-bit fifth-generation video game console first released by Sony Computer Entertainment in Japan on December 3, .The PlayStation was the first of the PlayStation series of consoles and handheld game devices. The PlayStation 2 was the console's successor in 2000...

 emulator PCSX
PCSX
PCSX is a free console emulator which allows software and peripherals designed to be used with the PlayStation to be used with personal computers. It is currently available for a number of different operating systems including Microsoft Windows, Mac OS X, Xbox, the Dreamcast and various Linux...

, and several others for these and other platforms.

Rationale

Tool-assisted speedruns are created for many reasons, the major ones being noted below:
  • To find a game's theoretical limit — runners are interested in discovering the fastest possible completion time for a game with perfect play.

  • To compete with other TASers — the race to perfect a movie can become quite intense, sometimes devolving into "frame wars" in which two runners or groups produce a quick succession of movies, each beating the last by as little as a single frame.

  • To provide entertainment — tool-assisted speedruns (and speedruns in general) are fun to watch for many casual gamers.

Relation to unassisted runs

Tool-assisted speedruns are timed in a distinct category from unassisted runs, for reasons of fairness. In unassisted runs, a difficult path is often avoided in favour of a safer, but slower one, in order to avoid the risk of dying and having to start over. Depending on the game, the time differences between possible routes, along with other advantages from frame-by-frame precision, tool-assisted speedruns surpass their unassisted counterparts by a few seconds to entire hours. For example, the fastest Super Mario Bros.
Super Mario Bros.
is a 1985 platform video game developed by Nintendo, published for the Nintendo Entertainment System as a sequel to the 1983 game Mario Bros. In Super Mario Bros., the player controls Mario as he travels through the Mushroom Kingdom in order to rescue Princess Toadstool from the antagonist...

 TAS currently stands at 04:57.31 (4'56" using Speed Demos Archive
Speed Demos Archive
Speed Demos Archive is a site dedicated to speedruns done on many computer and video games.-History:The site originally began as a demo archive of Quake play throughs. SDA was formed initially by Nolan "Radix" Pflug of Pittsburgh, Pennsylvania by merging with a site created by Gunnar and Jesse in...

 timing), while the fastest unassisted run stands at 4'59" . A trick in A Link to the Past allowing for walking through walls has allowed for an extremely short 3'44" TAS, but because the trick is impossible to reproduce in real time using a standard controller, the fastest unassisted run is over an hour long.

Unassisted runs faster than their assisted counterparts

Because unassisted speedruns usually can be made in much less time compared to tool-assisted speedruns, discovery of a time-saving trick may lead to a situation of the fastest unassisted speedrun being faster than its tool-assisted counterpart.

From August 13 to 21, 2007, the fastest unassisted speedrun of Pokémon Blue was 4 minutes faster than the best TAS, due to a new trick that allowed walking through walls. On August 21, however, a TAS was submitted that was 20 minutes faster than the unassisted run.

Some games may produce beneficial glitches if the inserted cartridge is manipulated, which may not be reproduced on an emulator for a TAS. One of the most famous examples is The Legend of Zelda: Ocarina of Time
The Legend of Zelda: Ocarina of Time
is an action-adventure video game developed by Nintendo's Entertainment Analysis and Development division for the Nintendo 64 video game console. It was released in Japan on November 21, 1998; in North America on November 23, 1998; and in Europe on December 11, 1998...

, where lifting the side of the cartridge may allow the player to walk through solid walls.

However, due to potential benefits for either kind of speedrunning, it is not uncommon for speedrunners of both types to collaborate. Unassisted speedrunners can provide their expertise on the subject and receive new points of reference in return. A number of unassisted speedrunners have also made complete TASes, and vice versa.

Timing conventions

Tool-assisted runs are timed by input, i.e. from game power-on to the last input necessary to reach the ending scene and/or the game credits. Any introductory cutscenes, game-loading screens, and trailing dialogues after the last boss battle (if input is necessary to scroll through the text) are included in the final times. The times are exact (to the nearest frame), a level of precision that is not possible with unassisted runs because it cannot be determined from a recording when exactly the input ended. Speed Demos Archive and Twin Galaxies measure only the length of the gameplay proper, and begin timing when the player gains control of the character and ends timing when the player loses it. These differences in timing conventions can result in seemingly discrepant times between unassisted and tool-assisted runs. For example, the most recent Super Mario Bros. speedrun by Andrew Gardikis, an even five minutes by SDA timing, seems to be only 2.69 seconds slower than the current tool-assisted world record of 4 minutes and 57.31 seconds, but his run actually contains 5 minutes and 3 seconds of input starting from power-on.

Degree of glitch abuse

One of the most important differences between a tool-assisted and unassisted run is the use of glitches in the game. Though glitch use is not uncommon in unassisted runs, many are negative towards them, some considering glitch use cheating. In tool-assisted speedrunning, glitches are held in much higher regard, to the degree that the term "glitch abuse" has positive connotations, and tool-assisted speedruns often make heavy use of them. This may in part be because the majority of glitches are very difficult to exploit without frame-precision and re-recording.

Entertainment factor

These differences also lead to different expectations from tool-assisted and unassisted speedruns. Taking damage when doing so does not save time and/or is not required may look sloppy in a tool-assisted run, while being hit by the occasional hard-to-avoid enemy in a relatively long unassisted speedrun would not prevent the runner from holding his world record title. After the advent of frame-advance, frame-precise movement has also come to be expected, the lack of which may be characterized as sloppy play. Another difference is in the standards of use of waiting time in the speedrun: in situations where it is not possible to make the game move faster, and the player has to wait, such as in autoscrolling or any other areas of a game in which the runner does not have control over the speed, the runner is advised in TASVideos guidelines to do something entertaining for the viewers. An example of this is the gathering of 99 extra lives in the autoscrolling sections of the famous Super Mario Bros. 3 speedrun. In unassisted runs, however, players usually would not risk dying and having to start over to entertain the viewer, although there are exceptions.

Runs that prove unentertaining may get rejected for publication, even if the run itself is technically optimized. A bad game choice may contribute to a lack of entertainment. In this context, a "bad game" may represent a goal choice that does not demonstrate the merits of tool-assistance, so choosing a different goal may alleviate this issue. In other cases, such as the Excitebike TAS by Thomas Seufert, a previously unpopular game had achieved notable entertainment boost due to massive improvements brought into play by increased tool-assisted precision.

Glossary

In the context of tool-assisted speedrunning, many common terms, usually neologisms, have been created. These terms are necessary to understand most general discussions about the phenomenon. This list covers the most ubiquitous terminology. Note that some words may have a different typical meaning outside of the lexicon of tool-assisted speedrunning; for example, frame
Film frame
In filmmaking, video production, animation, and related fields, a film frame or video frame is one of the many still images which compose the complete moving picture...

 applies to movies as well as to video games, but only the latter has relevance in this case.
  • Category
    Categorization
    Categorization is the process in which ideas and objects are recognized, differentiated and understood. Categorization implies that objects are grouped into categories, usually for some specific purpose. Ideally, a category illuminates a relationship between the subjects and objects of knowledge...

A particular intention or set of rules with which to record a speedrun, such as playing with different characters, collecting all items or achieving the best ending. Sometimes, when a glitch is found that allows extremely fast completion of a game, it will be considered a separate "category" as people may find the old way of doing it to be more enjoyable or otherwise interesting.

The most common categories include any% (fastest completion), 100% (full completion — may differ on per-game basis), and low% (completion using the minimum amount of items or powerups; sometimes synonymous with any%).
  • Emulator
    Video game console emulator
    A video game console emulator is a program that allows a computer or modern console to emulate a different video game console's behavior. Emulators are most often used to play older video games on personal computers and modern video game consoles, but they are also used to play games translated...

Software which allows console game
Console game
A console game is a form of interactive multimedia used for entertainment. The game consists of manipulable images generated by a video game console, and displayed on a television or similar audio-video system. The game itself is usually controlled and manipulated using a handheld device connected...

s to run on modern platforms (computer architecture
Computer architecture
In computer science and engineering, computer architecture is the practical art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals and the formal modelling of those systems....

 and/or operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

) and provides the runner with the common toolset, such as savestates. Emulators that currently feature the tools necessary to create tool-assisted speedruns include the NES
Nintendo Entertainment System
The Nintendo Entertainment System is an 8-bit video game console that was released by Nintendo in North America during 1985, in Europe during 1986 and Australia in 1987...

 emulators FCE Ultra
FCE Ultra
FCEUX is an open source Nintendo Entertainment System and Family Computer Disk System emulator. It is a merger of various forks of FCE Ultra.-Multiplayer support:...

, FCEUX, Famtasia, Nintendulator and VirtuaNES, the Super Nintendo
Super Nintendo Entertainment System
The Super Nintendo Entertainment System is a 16-bit video game console that was released by Nintendo in North America, Europe, Australasia , and South America between 1990 and 1993. In Japan and Southeast Asia, the system is called the , or SFC for short...

 emulators Snes9x
Snes9x
Snes9x is an SNES emulator written in C++ with official ports for Linux, Microsoft Windows, Mac OS X, the PSP and Android.-Background:Development of Snes9x began in July 1997 when Snes96's Gary Henderson and Snes97's Jerremy Koot merged their respective emulators to create Snes9x. Since then,...

 and ZSNES
ZSNES
ZSNES is a free software SNES emulator written mostly in x86 assembly with official ports for Linux, MS-DOS, Mac OS X, Windows and an unofficial port for Xbox.-Background:...

, the Master System
Sega Master System
The is a third-generation video game console that was manufactured and released by Sega in 1985 in Japan , 1986 in North America and 1987 in Europe....

 emulators vbsms+ and Dega, the Genesis emulator Gens
Gens (Emulator)
Gens is a free Sega Genesis emulator. It runs on Windows systems , on Linux and on Microsoft's Xbox. A port to the Sega Dreamcast, known as Gens4All, is currently in development. Development of Gens began in 1999...

, the Game Boy Advance
Game Boy Advance
The is a 32-bit handheld video game console developed, manufactured, and marketed by Nintendo. It is the successor to the Game Boy Color. It was released in Japan on March 21, 2001; in North America on June 11, 2001; in Australia and Europe on June 22, 2001; and in the People's Republic of China...

 emulator VisualBoyAdvance
VisualBoyAdvance
VisualBoyAdvance is a free emulator of the Game Boy, Game Boy Color, and Game Boy Advance handheld game consoles....

, the Nintendo 64
Nintendo 64
The , often referred to as N64, was Nintendo′s third home video game console for the international market. Named for its 64-bit CPU, it was released in June 1996 in Japan, September 1996 in North America, March 1997 in Europe and Australia, September 1997 in France and December 1997 in Brazil...

 emulator Mupen64, the Arcade emulator FinalBurn Alpha, and the Nintendo DS
Nintendo DS
The is a portable game console produced by Nintendo, first released on November 21, 2004. A distinctive feature of the system is the presence of two separate LCD screens, the lower of which is a touchscreen, encompassed within a clamshell design, similar to the Game Boy Advance SP...

 emulator DeSmuME
DeSmuME
DeSmuME is an open source Nintendo DS emulator for Linux, Mac OS and Windows. Its name is derived from emu which is short for emulator, DS and ME.-The original DeSmuME:...

.
  • Input
The data that is inserted into the game, either by the actions of a player (both during normal play and during speedrunning) or by an input file. The data can, for example, represent button presses/releases and joystick positions (e.g. with the Nintendo 64
Nintendo 64
The , often referred to as N64, was Nintendo′s third home video game console for the international market. Named for its 64-bit CPU, it was released in June 1996 in Japan, September 1996 in North America, March 1997 in Europe and Australia, September 1997 in France and December 1997 in Brazil...

) on the controller, and even the reset button of the console if the emulator's input file format records these events.
  • Input file
A computer file
Computer file
A computer file is a block of arbitrary information, or resource for storing information, which is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished...

 that, among various other data, contains the analog or digital states of all buttons during every frame of a tool-assisted speedrun movie. This data is needed to reconstruct actions in a game, using an emulator. It may also contain a save state that is loaded at the beginning of the movie unless the movie starts from console power-on or reset (as is the case with most movies on the TASVideos website).
  • Frame
    Film frame
    In filmmaking, video production, animation, and related fields, a film frame or video frame is one of the many still images which compose the complete moving picture...

One of the still images composing the animation of a video game. Most gaming systems (and thus, emulators) update the screen approximately 50 (PAL
PAL
PAL, short for Phase Alternating Line, is an analogue television colour encoding system used in broadcast television systems in many countries. Other common analogue television systems are NTSC and SECAM. This page primarily discusses the PAL colour encoding system...

) or 60 (NTSC
NTSC
NTSC, named for the National Television System Committee, is the analog television system that is used in most of North America, most of South America , Burma, South Korea, Taiwan, Japan, the Philippines, and some Pacific island nations and territories .Most countries using the NTSC standard, as...

) times per second (although sometimes only every second or third frame is rendered on some systems, lag
Lag
Lag is a common word meaning to fail to keep up or to fall behind. In real-time applications, the term is used when the application fails to respond in a timely fashion to inputs...

 notwithstanding). Every update is called a frame. Almost all console systems check the input (which buttons are pressed on the controller) once per frame, which is therefore the highest possible resolution of input in tool-assisted speedrunning.
  • Frame advance
An emulation feature which allows for the manual progression of frames by pressing a button. It is similar to slow motion
Slow motion
Slow motion is an effect in film-making whereby time appears to be slowed down. It was invented by the Austrian priest August Musger....

; however, the game is effectively paused until the player decides to resume the emulation for one frame. This is used in order to create input at exactly a specific time, seen as how one can find a particular moment simply by checking every frame at one's leisure.
  • Glitch
    Glitch
    A glitch is a short-lived fault in a system. It is often used to describe a transient fault that corrects itself, and is therefore difficult to troubleshoot...

An unintentional feature in a game — usually considered an error. Many games contain glitches, some very small and hardly notable but others very significant. Glitches are usually result of accidental or intentional sloppy programming. Because many console games are run on rather slow CPU power, perfect programming (such as pixel-perfect collision checks) would often be too slow. As a result, programming “shortcuts” have to be taken. See Speedrun#Glitch usage for further information.
  • Hex editing
    Hex editor
    A hex editor is a type of computer program that allows a user to manipulate the fundamental binary data that makes up computer files. Note that computer files can be very small to very large...

    , Binary editing
The act of editing the raw data that composes a binary file (usually done with a tool that displays the file data in hexadecimal
Hexadecimal
In mathematics and computer science, hexadecimal is a positional numeral system with a radix, or base, of 16. It uses sixteen distinct symbols, most often the symbols 0–9 to represent values zero to nine, and A, B, C, D, E, F to represent values ten to fifteen...

 numbers, hence the name hex editing). This is usually done in order to modify input files, such as to change small errors or to copy and paste parts of a movie. Due to its difficulty, it is fairly scarcely done.
  • Lag
    Lag
    Lag is a common word meaning to fail to keep up or to fall behind. In real-time applications, the term is used when the application fails to respond in a timely fashion to inputs...

The effect experienced when the game runs slower than its normal speed due to an excess of instructions for the CPU to calculate in the time of one frame. Thus, the CPU will spread the calculations over multiple frames. Because it cannot show the results of the calculations when expected, there will be identically rendered frames while it is working. Often, during lag, the game will ignore the player's input until the calculations are finished. There might also appear graphical anomalies, such as Head-Up Display
Head-Up Display
A head-up display or heads-up display is any transparent display that presents data without requiring users to look away from their usual viewpoints...

s appearing in the wrong place. Note that lag often refers to delays experienced in computing communications, such as during online gaming
Multiplayer game
A multiplayer video game is one which more than one person can play in the same game environment at the same time. Unlike most other games, computer and video games are often single-player activities that put the player against preprogrammed challenges and/or AI-controlled opponents, which often...

.
  • Luck manipulation
The act of recording a beneficial pseudo-randomly
Pseudorandom number generator
A pseudorandom number generator , also known as a deterministic random bit generator , is an algorithm for generating a sequence of numbers that approximates the properties of random numbers...

 generated result. Console gaming systems are actually computers; computers are actually calculators; calculators perform calculations; calculations are always predictable and repeatable with identical results. When a player “manipulates” his luck, he abuses the fact that with savestates, he can try different methods of input to see how a game will react. Pseudo-randomly generated results in the context of video games (such as some instances of artificial intelligence
Artificial intelligence
Artificial intelligence is the intelligence of machines and the branch of computer science that aims to create it. AI textbooks define the field as "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions that maximize its...

 or the obtaining of random power up
Power up
Power up may refer to:* Power-up, a video gaming term* Power Up, an American non-profit organization* Power-Up: How Japanese Video Games Gave the World an Extra Life, a 2005 book by Chris Kohler...

s) may be examined and retried until the most opportune one is found.
  • Re-record, Re-recording
    Re-recording (video gaming)
    Re-recording is the act of using a save state while recording a tool-assisted speedrun ; by loading a saved version of a prior machine state during the emulation, the movie that is being recorded will be trimmed to the point in time at which this prior state was current, allowing one to continue...

An instance of the usage of a savestate while recording a tool-assisted speedrun or the act of doing so. This is an essential and very typical part of tool-assisted speedrunning. See Re-recording (video gaming)
Re-recording (video gaming)
Re-recording is the act of using a save state while recording a tool-assisted speedrun ; by loading a saved version of a prior machine state during the emulation, the movie that is being recorded will be trimmed to the point in time at which this prior state was current, allowing one to continue...

for further information.
  • ROM
    ROM image
    A ROM image, or ROM file, is a computer file which contains a copy of the data from a read-only memory chip, often from a video game cartridge, a computer's firmware, or from an arcade game's main board...

The read-only memory
Read-only memory
Read-only memory is a class of storage medium used in computers and other electronic devices. Data stored in ROM cannot be modified, or can be modified only slowly or with difficulty, so it is mainly used to distribute firmware .In its strictest sense, ROM refers only...

 of a game cartridge dumped as a binary file on a separate file storage medium. It contains all data of a game cartridge, such as the programming as well as the graphics and music. Loading a ROM image of a game in an emulator is the usual method to play such games.
  • Savestate
A snapshot of the emulated system's state at that current moment. Restoring a saved savestate will revert the console and the game to that exact state, including the game's future outcomes of pseudo-random generators. This is known as a re-record
Re-recording (video gaming)
Re-recording is the act of using a save state while recording a tool-assisted speedrun ; by loading a saved version of a prior machine state during the emulation, the movie that is being recorded will be trimmed to the point in time at which this prior state was current, allowing one to continue...

 when performed during the recording of a movie (input file).
  • Slow motion
    Slow motion
    Slow motion is an effect in film-making whereby time appears to be slowed down. It was invented by the Austrian priest August Musger....

The slowing down of an emulated system to make it easier to create input (thus increasing the potential precision). The usage of slow motion is crucial to tool-assisted speedrunning, as many of the esoteric techniques are impossible to perform without it due to mechanical and human limitations. Frame advance is the most accurate kind of slow motion.
Common abbreviation of tool-assisted speedrun. The word TAS is used in the tool-assisted speedrun community exactly like the word “run” is used in the unassisted speedrun community.
  • Timeattack
Tool-assisted speedruns are sometimes called "timeattack". This most likely stems from the Japanese term “タイムアタック” (“taimuatakku”). In the English community, this term has mostly fallen out of favor; this term can also be seen in numerous games that have a lowest completion time mode (e.g. as opposed to "score-attack" mode, where the goal is highest score).

See also

  • Speedrun
    Speedrun
    A speedrun is a play-through, or recording thereof, of a whole video game or a selected part of it performed with the intent of completing it as fast as possible, optionally under certain prerequisites, mainly for the purposes of entertainment and competition...

     — play-through of a computer or video game, in which the whole game or a selected part of it, such as a single level
    Level (computer and video games)
    A level, map, area, or world in a video game is the total space available to the player during the course of completing a discrete objective...

    , is played with the intent of completing it as quickly as possible, optionally with certain prerequisites.
  • Re-recording — the act of using a savestate while recording a tool-assisted speedrun.
  • Time attack
    Time attack
    A time attack is another term for time trial. The term is commonly used in Japan for individual time trial events for motor vehicles that involves a vehicle running around the circuit in lieu of a qualifying lap and the term is widely adopted outside the country for tuner event and...

     — a mode which allows the player to finish a game (or a part of it) as fast as possible, saving record times.
  • Score attack — the attempt to reach a record logged point value in a game.
  • Game demo
    Game demo
    A game demo is a freely distributed demonstration or preview of an upcoming or recently released video game. Demos are typically released by the game's publisher to help consumers get a feel of the game before deciding whether to buy the full version....

     — a freely distributed demonstration or preview of an upcoming or recently released computer or video game.
  • Electronic sports
    Electronic sports
    Electronic sports comprises the competitive play of video games. Other terms include competitive gaming, professional gaming and cybersports...

     — a general term used to describe computer and video games which are played as competitive sports.

Journal, newspaper and magazine articles

Very extensive article about speedrunning, both tool-assisted and unassisted, in general.

Very well-informed article on the differences between unassisted and tool-assisted speedrunners and the reason why this causes controversy between the two camps.

Posting of a tool-assisted speedrun on Slashdot
Slashdot
Slashdot is a technology-related news website owned by Geeknet, Inc. The site, which bills itself as "News for Nerds. Stuff that Matters", features user-submitted and ‑evaluated current affairs news stories about science- and technology-related topics. Each story has a comments section...

, a news website and Internet forum.

Interview of a tool-assisted speedrunner about speedrunning in general.

Interview of Joel Yliluoma, creator of TASVideos, currently the largest tool-assisted speedrunning website.

Another interview of Joel Yliluoma, conducted in 2005, about speedrunning in general.

General informative sources

Documentation on commonly used tricks in tool-assisted speedruns.
An extensive glossary documenting all of the common terminology in the context of tool-assisted speedrunning.

External links

  • TASVideos – A site hosting tool-assisted speedruns and TAS-related resources
  • Common tricks page on TASVideos, actively documenting techniques that may be used in tool-assisted speedruns.
  • GamesTech – Finalfighter's Rockman series tool-assisted speedrun planning site.
  • Top NES Speed Runs
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK