Difference between revisions of "Generic techniques"
From SDA Knowledge Base
Manocheese (Talk | contribs) (→Performing difficult tricks) |
Manocheese (Talk | contribs) (Added another example.) |
||
Line 122: | Line 122: | ||
* Use sounds effects to help you time things. Like using the surroundings to position yourself, this is heavily dependent on the individual game and trick. One example is in Super Mario Sunshine, where you can reach a certain ledge early by using a triple jump and then hovering at the peak of your jump. The camera doesn't always let you see Mario when he's at the peak of his jump, but the "whish whish whish" sound can be heard no matter how bad the camera is and can be used to reliably time your hover. | * Use sounds effects to help you time things. Like using the surroundings to position yourself, this is heavily dependent on the individual game and trick. One example is in Super Mario Sunshine, where you can reach a certain ledge early by using a triple jump and then hovering at the peak of your jump. The camera doesn't always let you see Mario when he's at the peak of his jump, but the "whish whish whish" sound can be heard no matter how bad the camera is and can be used to reliably time your hover. | ||
* Use the surroundings or the character's movement to help you time things. Again, this depends on the game and trick. An example of using the character is in The Legend of Zelda: Ocarina of Time, where you can time bomb hovers by looking at Link's breathing. An example of using the surroundings could be something as simple as "put a bomb down when you pass a certain point." | * Use the surroundings or the character's movement to help you time things. Again, this depends on the game and trick. An example of using the character is in The Legend of Zelda: Ocarina of Time, where you can time bomb hovers by looking at Link's breathing. An example of using the surroundings could be something as simple as "put a bomb down when you pass a certain point." | ||
+ | * Hold the controller a different way. This might sound silly, but it can work wonders. For example, if you need to press two buttons in very quick succession and you'd normally press both with the same finger, try holding the controller such that you press the buttons with two different fingers. | ||
* Look for a different way to do something. Just because the first posted video of a trick shows it being done a certain way doesn't mean that is the only way to do it. Maybe you can tweak the positioning and timing to make the trick faster and/or easier, or perhaps there is a completely different way to accomplish the same thing. Experiment. | * Look for a different way to do something. Just because the first posted video of a trick shows it being done a certain way doesn't mean that is the only way to do it. Maybe you can tweak the positioning and timing to make the trick faster and/or easier, or perhaps there is a completely different way to accomplish the same thing. Experiment. | ||
Revision as of 20:10, 6 September 2009
Although many types of games exist, there are still lot of optimization and planning techniques that apply to any game.
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 pay attention to these techniques!
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 slows the player down. In this case, minimize jumps, and if the game allows it, their height as well.
If a game has ladders, see if it's possible to jump up or down from them.
Damage knockback
When a player character takes damage in a game, they are usually knocked back. In some cases the player is also paralyzed for a short period of time. If avoiding damage doesn't seem to be feasible, you can try minimizing the delay by taking damage in different conditions: while airborne, while turned around, and so on.
Lag reduction
Computation-intensive 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's time isn't measured using in-game timer, lag 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 what produces it. Testing on an emulator with lag counter may help a lot, although beware, emulators do not always emulate lag accurately.
Common factors that create or increase lag are: large amounts of objects (polygons for 3D games) on screen, explosions.
Methods of reducing lag in 2d-platformers include killing enemies and minimizing the number of shots on screen. 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 games with 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). A good example of jumping before a fall is Mega Man 1, 2, and 9, jumping before a fall is frequently seen in speedruns to save time, especially in the Mega Man 9 time attacks.
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 not as common as the basic techniques. 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). In other words, you run sideways. 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 with a method that is faster than normal movement, even if it means moving in a non-straight line. Carefully examine all movement (especially jumps and other aerial attacks) before deciding on an optimal way of movement.
Examples: Ocarina of Time, Metroid Prime.
Bunny hopping
Bunny hopping is repeated jumping in order to preserve horizontal momentum. Bunny hopping is 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 bunny hopping allows jumping without horizontal speed penalty.
Examples: Quake, Half-Life.
Abusing hitpoints/life
In a speedrun, the character's health can and should be used to speed up the gameplay if the game allows. There are several common ways to do so.
Damage Boosting
Taking damage from an enemy is often faster than dodging it. Sometimes taking damage can create a major sequence breaking opportunity, because a successful damage boost can propel the character past an normally impassable checkpoint, or to an otherwise unreachable distance (Castlevania: Symphony of the Night). Some games also have a dodging move that can be abused this way (Super Metroid).
A special case of damage boosting is using the player's own weaponry. Notable examples include rocket and grenade jumping in the Quake series.
Invincibility period abuse
Abusing an invincibility period resulting from a hit or a death often allows the player to bypass instant-kill obstacles such as spikes. In some games, the invincibility period also lets the player use enemies as platforms (see also: damage boosting).
Example: Mega Man series.
Respawn abuse
If dying respawns the player in the same screen he or she died, then dying can sometimes climb heights faster, cross pits, etc..
Checkpoint abuse
In games that have several checkpoints per stage, dying just as you reach one of them can benefit you by skipping a mandatory cutscene or refilling your HP and ammo.
Abusing uninterruptible moves
Certain games have moves that are frequently left uninterrupted by in-game cutscenes, like slides, jump attacks, tackles, 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.
Examples: Castlevania: Circle of the Moon, Castle Crashers.
Bypassing unwanted triggers
Many games have cutscenes or in-game events that can lead to an unwanted slowdown. Sometimes there are ways to bypass these triggers.
Moving too fast
Certain triggers can be bypassed if you don't give them enough time to start. This usually means hitting another trigger (commonly room transition) before the invisible timer expires.
Examples: Castlevania: Symphony of the Night (skipping the Richter fight), Super Metroid (skipping Torizo).
Moving around a trigger
In both 2D and 3D platform games, triggers are commonly placed as small areas of ground activated by stepping upon them. However, more often than not you can move around these triggers by jumping over/around them or using an event that instantly moves you behind the trigger.
Example: Half-Life series.
Clipping through objects
As elaborated on the Bughunting page, collision detection in games isn't always perfect. There are sometimes ways to clip inside/through an object or terrain element by pressing into it at a certain angle, moving in a certain way, utilizing a collision-altering effect (such as invincibility period), 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 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 with similar engines.
Luck manipulation
If a game has random events, it is possible to retry a segment (or a full run if length allows) until the odds are in the player's favor. These retries can save a lot of time in games that have critical hits or instant-kill attacks, like RPGs.
It should also be noted that in some games, the random events aren't really random: they depend solely on the player's input. In these cases it means there might be a pattern of input that produces the same or similar results if repeated. This manipulation is very important for boss fights, where you want the boss to behave a certain way.
Performing difficult tricks
Speedrunning frequently involves the use of high-precision tricks. Mastering these tricks is often the key to a successful speed run. Every trick is different, but there are a few things to keep in mind that can improve your success rate:
- Use the surroundings to help position yourself properly. For example, maybe there is a certain part of the floor where it's easiest to do a trick; in this case, you might look for some markings on the floor to know where to stand. Another example is that you may want to aim in a certain direction before performing a trick. To help you do this, you might line up a certain part of the surroundings with a health bar or other on-screen display.
- Adjust the camera. Many tricks can be made much easier by just having a different camera angle. You can combine this with the above tip.
- Use sounds effects to help you time things. Like using the surroundings to position yourself, this is heavily dependent on the individual game and trick. One example is in Super Mario Sunshine, where you can reach a certain ledge early by using a triple jump and then hovering at the peak of your jump. The camera doesn't always let you see Mario when he's at the peak of his jump, but the "whish whish whish" sound can be heard no matter how bad the camera is and can be used to reliably time your hover.
- Use the surroundings or the character's movement to help you time things. Again, this depends on the game and trick. An example of using the character is in The Legend of Zelda: Ocarina of Time, where you can time bomb hovers by looking at Link's breathing. An example of using the surroundings could be something as simple as "put a bomb down when you pass a certain point."
- Hold the controller a different way. This might sound silly, but it can work wonders. For example, if you need to press two buttons in very quick succession and you'd normally press both with the same finger, try holding the controller such that you press the buttons with two different fingers.
- Look for a different way to do something. Just because the first posted video of a trick shows it being done a certain way doesn't mean that is the only way to do it. Maybe you can tweak the positioning and timing to make the trick faster and/or easier, or perhaps there is a completely different way to accomplish the same thing. Experiment.
Planning
Planning is a core element of pretty much every speedrun. Whether it is hitpoints, ammo, weapons or routes, everything must be thought through before actual speedrun attempts begin: you don't have time to think about what you should and shouldn't do during a speedrun, you should know it. Planning is 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 hard to avoid getting a powerup at first, but eventually you should get used to it. Likewise, if you've been granted surplus powerups, be sure to use them effectively (if you can).
If a game gives an additional time-consuming bonus for leftover ammo or HP (like in early Castlevania games), it is advantageous to discard them if it doesn't cost time.
Item collection
Some games, like the Zelda or Metroid series, require items to access formerly inaccessible locations of the game world or increase the player's health or ammunition.
Determining the necessary item set
Not all items are required to finish most games. 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 guide to discovering and taking advantage of programming errors in games.