Generic techniques
From SDA Knowledge Base
Although there is a multitude of different games in different genres, there are also a lot of optimization and planning techniques applicable to many of them.
TODO: add more examples and link them to game pages.
Contents
Basic techniques
These tricks are common to most games, especially platformers, yet they often tend to be overlooked by beginning speedrunners. Make sure to avoid making these mistakes!
Avoiding common slowdowns
Jumping
In many platform games, movement on slopes or curves is slower than movement on flat ground. This is commonly bypassed by jumping or other kinds of aerial movement.
In many cases jumping also incurs a penalty on horizontal speed. In this case minimize the amount of your jumps and, if game allows that, their height as well.
If a platformer game has ladders, see if it's possible to jump up or down from them.
Damage knockback
If a player character can take damage in a game, it usually means it will knock it back, in some cases also paralyzing it for a short period of time. If avoiding damage doesn't seem to be feasible, you can try minimizing the negative effect by taking damage in different conditions: while airborne, while turned around, and so on.
Lag reduction
Computation-demanding games coupled with game consoles' hardware constraints or simply bad coding are prone to creating artificial slowdown, also known as lag. On a lag frame the console is busy calculating the information required to draw next frame. If a game time isn't measured using in-game timer, this puts runner at a severe disadvantage as they are losing precious time even nothing is done wrong. However, it might be possible to reduce lag by carefully determining which in-game actions produce it and minimizing their amount. Testing on an emulator with lag counter may help a lot.
Common factors that create or increase lag are: large amounts of objects (polygons for 3D games) on screen, explosions. One of the techniques used to reduce lag in early 3D console games was looking at the floor or walls to reduce the amount of processing required to draw frames.
Building up momentum
In nearly all platformers or platform-based games that employ horizontal or vertical acceleration (you can tell it if the player character's moving speed increases as it moves in a direction), it should be possible to save time by building up momentum before you are allowed to move in a desirable direction. In practice, this usually boils down to two major examples.
Jumping before a fall
If the character's horizontal speed isn't significantly reduced during a jump, it is usually a good idea to jump just before you fall off a platform to have a higher vertical momentum by the time you clear the ledge. This is further emphasized if you need to change horizontal movement direction after you clear the ledge (but the gain can be negated if a game doesn't allow changing directions while airborne, like Ghosts 'n Goblins or Castlevania).
Running towards opening doors
If a game has doors or other temporary blockades you have to wait for (like in Metroid series), it might be possible to go slightly back and use the distance and waiting time to accelerate. This way, by the time the blockade is cleared, the character will be moving at a high speed, saving the time needed to accelerate.
Advanced techniques
These techniques are more rarely found. They usually require better character handling and might be difficult to perfect, but the result is usually worth it.
Optimizing movement speed
In vast majority of games, simply moving forward (in straight lines for 3D games) is faster. In 3D games this also means you need to sharply cut corners, moving in a shortest possible path from A to B. However, there are exceptions.
Diagonal movement
Certain games, usually overhead 2D games or first-person action games, sum up forward and sideward movement vectors, increasing your diagonal speed above that of a regular forward movement. This can be abused if you turn the character at an angle (usually 45° to the target direction). This technique is commonly known as straferunning.
Examples: Contra 3 overhead stages, Doom.
Utilizing faster-than-running moves
Many action games (both 2D and 3D) have moves that allow you to dodge or attack in a way whose speed exceeds that of normal running, even if it means moving in a non-straight line. Carefully examine all ways of movement (especially jumps and other aerial attacks, since they are less prone to friction) before deciding on an optimal way of movement.
Examples: Ocarina of Time, Metroid Prime.
Bunny hopping
Bunny hopping is a generic technique that consists of repeated jumping in order to preserve horizontal momentum. This is commonly used in two ways. The first is avoiding downtime after a certain in-game physics event, like falling from a large height in platformer games (Super Castlevania IV) or beginning horizontal movement (Darkwing Duck). Another is minimizing friction after building up a high movement speed (Rocket Knight Adventures, Quake series and many other FPS games). More often than not it also means that the game allows jumping without horizontal speed penalty.
Abusing hitpoint/life reserves
In a speedrun, the character's health can and should be used to speed up the gameplay if the game allows that. There are several common ways to do so.
Damage boosting
Taking damage from an enemy is often faster than dodging it. In certain cases, most notably platform games, it allows major sequence breaking as a successful damage boost propels the player character to an otherwise unreachable distance or allows it to skip an otherwise mandatory checkpoint (example: Castlevania: Symphony of the Night). Some games also have a dedicated dodging move that can be abused this way (example: Super Metroid).
A special case of this is using the player's own weaponry for damage boosing. Notable examples include rocket and grenade jumping in Quake series.
Invincibility period abuse
Abusing invincibility period resulting from a hit or a death often allows the player character to bypass instant-kill obstacles such as spikes. In some games it also allows using enemies as platforms (see also: damage boosting).
Example: Mega Man series.
Respawn abuse
If dying in a game allows you to respawn in the same stage without resetting it (or reverting to a checkpoint), it can be taken advantage of in several ways, like climbing heights faster, crossing pits, etc..
Checkpoint abuse
In games that use several checkpoints per stage, dying just as you reach one of them can benefit you by skipping a mandatory cutscene or refilling your HP/ammo reserves.
Abusing uninterruptible moves
Certain platformers and action games have moves that are commonly left uninterrupted by in-game cutscenes, like slides, jumps or aerial attacks, tackles or other charge attacks, and so on. If a game has a cutscene that forces the player character to freeze in place or slowly move towards a certain point on the screen, it might be a good idea to initiate an uninterruptible action just before the cutscene starts to let the character move [faster] during the downtime.
Example: Castlevania: Circle of the Moon.
Bypassing unwanted triggers
Many games have cutscenes or in-game events that can lead to an unwanted slowdown. In some cases there are ways to bypass them.
Moving too fast
Certain triggers can be bypassed if you don't give them enough time to initialize. This usually means hitting another trigger (commonly room transition) before the invisible timer expires by means of high movement speed.
Examples: Castlevania: Symphony of the Night (skipping Death), Super Metroid (skipping Torizo).
Moving around a trigger
In platform games, be it 2D or 3D, triggers are commonly placed as small areas of ground activated by stepping upon them. However, it more often than not means you can move around them, commonly by jumping over/around or using an event that instantly moves you behind the trigger.
Example: Half-Life series.
Clipping through objects
As elaborated on Bughunting, collision detection in games isn't always perfect. In certain cases it means there are ways to clip inside/through an object or terrain element by pressing into it with a certain force or under a certain angle, while under a certain movement- or collision-altering effect (such as invincibility period), by using another object, or a transportation device (often as simple as a ladder, like in NES Donkey Kong). It's often possible to clip inside an object if it solidifies already after the player character enters it.
Zipping
Some 2D games employ a protective mechanism that ejects the player character from a solid object, known as zipping. Since zipping commonly occurs at a very high speed (either horizontal or vertical), in some cases it's possible to abuse it by entering solid objects purposefully.
Examples: NES Mega Man games and other games on similar engines.
Luck manipulation
If a game has random events, it should be possible to retry a segment (or a full run if its length allows) until the odds are strictly favorable throughout. This can lead to a lot of time saved in games which rely on critical hits or instant-kill attacks, like RPGs.
It should also be noted that in pretty much all cases, all random events in a videogame aren't really random: they depend solely on player's input. In most cases it means there might be a pattern of input that produces the same or similar results if repeated more-or-less precisely. This is very important for boss fights, where you want the boss to behave as you want it to.
Planning
Planning is a core element of pretty much every speedrun. Be it hitpoints, ammo, weapons or routes, everything must be thought through way before actual speedrun attempts begin: you don't have time to think about what you should and shouldn't do, you should know it. It's often a difficult and tedious process, but there are several common rules that can make it easier.
Hoarding powerups
Be sure to collect only as much HP and ammo powerups as needed for maximum speed. It might be initially hard to avoid getting a powerup at first, but eventually you get used to it. Likewise, if you've been granted surplus expendables, make sure to put them to work towards your speed goals.
If a game assigns additional bonus for leftover ammo or HP (like in early Castlevania games), it should be profitable to discard them where it doesn't cost you time to minimize the time the game spends counting them at the end of a stage.
Item collection
Some games, like Zelda or Metroid series, have items required to access formerly inaccessible locations of the game world or increase the amount of player's expendables.
Determining the necessary item set
Not all items are required to finish the game. It's usually easier to go from the bare minimum and see if you can find a place you can't proceed to under any feasible circumstances. At that point, add one item that helps you bypass the obstacle and repeat the process. If several separate items can be used to bypass a given obstacle, see which of them saves more time in other places, and continue planning from there. After you've come up with a bare minimum, you can think of getting additional items to speed the process up.
Additional items
After you've determined the minimum of items required to go through the game, you can see if there are items along your way that can speed the run up further. In this context, pay attention to everything you can pick up without deviating from the general route. Items like these usually have higher ratio of time saved per time spent getting. Do note that an early game item might be skipped in favor of a later one that gives more substantial benefits.
If the game has an item that speeds the rest of the game substantially but requires a large detour to get, make sure to run tests (again, emulators may be helpful in this context).
100% item collection
While 100% item collection alleviates the need to plan which items you have to take and partially covers the problem of power shortage, it brings another problem: what sequence to get the items in.
More often than not the best strategy for 100% item route planning is coming up with a route that eliminates as much backtracking as possible. In other words, every area should ideally be visited 1-2 times (where the second time is usually called cleanup). Even if a game has a powerup that massively speeds up the player, it often takes more time to return to a previous area than to pick up all its items the first time around, even if the process by itself is slower.
See also
Bughunting — a similar guide to discovering and taking advantage of programming errors in games.