A Link to the Past

Movement

Movement is the community's catch-all term for the mechanics used to optimize both Link's speed and player decisions regarding small-scale routing.

This page will talk about these mechanics at a high level and is more focused on the practical impact on runners. For a deeper analysis on how the game updates Link's coordinates while he's moving, see the page on subpixels.

The Basics

Walking

You may think that Link walks at a constant speed, but generally Link's movement follows a pattern or sequence of alternating speeds according to where and how you move.

When moving in cardinal directions, Link moves at an average of 1.5 pixels per frame where he alternates every frame between a two pixel speed and a one pixel speed. Link's pattern of cardinal walking always begin with the two pixel speed when he's walking north or west, and it starts on the one pixel speed when he's facing south or east. This is important for understanding some of the techniques used to optimize Link's walking speed. Additionally, this quirk of Link's movement patterns being reversed N/W vs. S/E is consistent across other contexts, as you'll see below.

When Link is charging his sword, carrying an object, or walking through tall grass or in shallow water, his cardinal walking speed is slowed to an average of 1.25 pixels per frame, with a frame-by-frame pattern of: 2px, 1px, 1px 1px, 2px, 1px 1px 1px, etc. when facing north or west (and 1, 1, 1, 2 for S/E).

When moving diagonally, Link moves one pixel per frame along both X and Y axes. For example if he's moving northwest, he will move one pixel upward and one pixel leftward on each frame. Diagonal movement is slowed to 0.8 pixels per frame when Link is charging his sword, carrying an object, or walking through tall grass/shallow water (1-1-1-1-1-0 N/W pattern and reversed for E/S).

When carrying an object, Link's normal walking speed (for both cardinal and diagonal directions) can be regained by touching the edge of a pit, by touching stairs (manual or automatic), by touching a sprite that doesn't damage Link (ie. a crystal switch or an NPC), or by jumping a ledge.

Dashing

When dashing cardinally, Link moves at a constant rate of 4 pixels per frame. This is slowed to 3 pixels per frame if dashing through tall grass or in shallow water. If dashing diagonally along a slanted slope or wall, Link's movement can be quite "random" (at least for real time play), but it will average around 2.5 pixel per frame along both axes.

It takes Link 30 frames to fully charge a dash, and this makes dashing slower than walking within a distance of around four and a half tiles cardinally. This rule is frequently complicated some by other factors. Do you only need to move along one axis or do you also need to move along the other? Is there an enemy or bush or some other obstacle in your path? When routing movement in a room, it's important to consider a variety of factors and not just blindly adhere to the 4.5 tile rule (or any other rule).

Dash turn

During the dash charge animation, Link can change the direction he's facing. If the charge fully builds up, Link will start dashing in whatever direction he's facing when the charge has finished. When a player begins a dash charge with Link facing one direction and changes to a different direction before fully charging the dash, they've used a technique we call "dash turning."

This technique has a couple of important applications:

  1. Using this, Link doesn't need to walk at all in the direction you're wanting to dash. You can have him moving in a different direction, begin the dash charge, and then turn him in the direction you want to go. This is frequently useful for executing certain dash lines or staying on the "grid" (such as for keydashing). This may also be used to set up a bonk off of a wall that Link is directly next to without having to deal with A grabbing the wall if Link were facing it.
  2. Using this technique, you can get Link to face a different direction while keeping his position static. For an example, a player might be doing a glitch setup that requires them to maintain their current exact standing position, but they're facing to the right and they need to be facing to the left for the next step in the trick. To accomplish this, the player could start holding A to begin a dash charge, tap to turn Link to the left, and then release A before the dash has fully charged. If executed properly, they will have moved Link's facing direction to the left without any change to his position. This is a very commonly used technique in Major Glitch speedruns.

Dash canceling

Dashes can be canceled with any dpad input other than the cardinal direction that Link is facing in for the dash. For example, if Link is dashing north, or will cancel but alone will not. An exception to this is made if Link dashes so that he brushes past the edge of a pit in the ground. In these cases, even pressing the direction of the dash will cancel.

Lockout frames

Ordinarily, Link is able to use his sword and other items one frame after canceling a dash. This window is extended to four frames if Link has dashed through an enemy. These are called "lockout frames".

Corner nudging

If Link dashes or walks into the corner of a wall or the very beginning of a slope, he will get what we call "nudging". The game sees that Link is "close enough" to move on further but will want to adjust Link's position to be completely clear of the corner first. This is done by moving Link one pixel per frame until he's past the corner. This is slower than his normal walking speed (average 1.5 pixels per frame) and much slower than his dashing speed (4 pixels per frame), so learning to minimize this is an essential part of improving your movement in the game.

Stair Mechanics

Manual stairs and ladders

These are stairs where the player retains full control of Link while he's on them. These give Link an altered movement pattern compared to normal ground (an average 0.6875 pixels per frame). On stairs where you're not sandwiched by walls and free to move diagonally, it's important to know that unlike normal ground movement, moving diagonally does not alter cardinal movement patterns (ie. moving upright will still get you 0.6875px/frame movement along the Y-axis, the same as if you were just moving straight up). This makes diagonal movement on these stairs extremely efficient.

Dashing gives a slightly slower movement pattern, however if a dash is started on stairs, the first frame of movement will be a 4px frame, followed by the usual pattern. Dashing is almost always slower going north because of having to wait for the dash charge timer for a similar movement speed and also because the player is unable to leverage pumps (see below). Sometimes it can be faster going south though, especially if the dash also travels some normal ground and/or if the dash can be conveniently started on the stairs for the 4px frame.

Unlike on normal ground, holding a sword charge or carrying an object above Link's head will not slow his movement speed down from the default speed.

Manual stair drag

At the ends of these manual stairs, Link's movement pattern changes and his movement speed stutters and slows down slightly for 15 frames (Link moves 8-9 pixels during those 15 frames, ie. 0.6px/frame) before Link regains his normal speed. This is called stair drag. When in this state, you can restore Link's normal walking speed (1.5px/frame) at any point by holding straight left for at least 1 frame, holding the A-button (assuming you have the Pegasus Boots) for at least 1 frame, or by holding straight right for at least 2 frames. Optimally, this should be done just as Link is exiting the staircase and can save up to 10 frames per manual staircase exit. For visual cues, see the main article.

Stair drag is important in the use of the Superspeed glitch. Arming the superspeed state and exiting the stairs without canceling stair drag is what allows Link to enter superspeed.

Automatic stairs

These are stairs commonly found indoors. When Link enters them, the player has no control over his movement while he climbs or descends them. When entering them, it's important to snap in cardinally. If you nudge against the rails on either side of them with a diagonal dpad input, Link will be slowed down.

Although stair drag is set while Link walks on these stairs, it usually isn't a factor because the player has no control over Link while he's on them. And when Link exits the stairs, the drag will be completely cleared and Link will walk normally. A big exception to this is if the player dashes into a set of automatic stairs where the dash has brushed by the edge of a pit. When this happens, the player will have stair drag after gaining control and coming off the stairs. It can be cleared through normal means (left for at least 1 frame, dash charge for at least 1 frame, or right for at least 2 frames) or the player can elect to cancel their dash just before entering the stairs to avoid the situation entirely. The primary example of this in the Any% NMG run is in the Catwalk room of Castle Tower.

Pumping

Wallpumping

This is a technique that optimizes Link's walking pattern. When walking cardinally to the west or north, Link's movement begins on the 2 pixel speed, and any change to the directional input will reset his movement speed back to the start of the sequence. Therefore, if walking north or west along a wall, players can mash diagonals into the wall to repeatedly reset Link's movement to the 2 pixel speed. Perfectly optimal wallpumping can get Link to move at a constant rate of 2px per frame, which would be a 33% improvement over his usual average speed of 1.5px per frame. However, humans cannot wallpump that fast consistently and reliably, so for real time play, wallpumping usually saves a small amount of frames in any room that features it.

Airpumping

This is another technique used to optimize Link's walking pattern. When walking diagonally to the north or west and at an angle that's less than 45 degrees, you can mash diagonals into the "air" to boost pixels. Like wallpumping, this is a frame-saving technique in most instances due to human limitations on mashing.

If you need to move at a perfect 45 degree diagonal angle, just holding diagonal is going to be faster and more direct than airpumping. Remember to only use if it the angle between Link and your desired location is less than 45 degrees.

Stairpumping

While walking north on a manual staircase or ladder, you can pump diagonals. The normal animation for climbing stairs/ladders contains a 0 pixel movement frame every 3rd or 4th frame. Because the slow speed occurs on this longer interval relative to normal ground, pumping jumps in efficiency for humans and lots of meaningful time can be gained. At the long ladder on Death Mountain, good pumping can easily save a full second and perfect pumping saves nearly two seconds compared to not doing it at all.

When on narrow stairs/ladders where Link is sandwiched by walls on either side of him, the player is free to mash and/or as they climb.

When on wide stairs where Link is able to move horizontally, pumping is still extremely powerful. Keep in mind that diagonal movement loses no efficiency on the Y-axis when on manual stairs.

Antipumping

When walking east or south, Link's movement pattern begins on a slow speed (1px on normal ground, 0px on stairs). This means you do not want to reset his walking speed by wallpumping, airpumping, or stairpumping as they will actually slow Link down.

This also has deeper implications: you always want to avoid altering your input while moving south or east, as any alteration can slow Link down by resetting the movement sequence.

Door Mechanics

Nudging door frames

Just like you can nudge corners elsewhere, the corners that frame a doorway can also be nudged. This is something specifically worth paying attention to. There are a lot of doors in virtually any run of the game, and because doorways form Link-width gaps, being any amount off of perfect alignment will have Link nudge when you go to enter the door.

Doorpumping

While in a doorway, you can wallpump against the walls inside. This works the exact same as wallpumping, and you should only do it in doors that you walk through while facing north or west. Also note that you can pump on both sides of the doorway unless the door shuts behind you, in which case you can only pump on the side where you enter.

There are two exception with doorpumping to be aware of:

  1. Bastard Doors
  2. Auto Doors

Diagonals and doors

When moving alongside the walls just outside of a doorway, using diagonals against the door's frame will slow Link down from his usual 1.5px/frame speed to a constant 1px/frame speed. This should always be avoided by using perpendicular inputs when approaching and entering doorways.

An exception to this exists for spiral stair doors, which you can read about below.

Bastard doors

Bastard doors are east/west facing locked doors on a subtile room boundary. Pressing diagonal directions in these doorways will slow Link down to 1px/frame where he should be moving 1.5px/frame. For this reason, you should avoid trying to doorpump in them (even when moving west), and if you want to walk in a diagonal direction out of the door, care should be taken to completely exit the door with a cardinal d-pad input before pivoting to the diagonal direction you want to walk in. For more information, see their main article.

Auto doors

Also sometimes called suction or vacuum doors. These are doors that were closed either by:

  1. A "shutter", requiring some condition such as defeating all the room's enemies or pressing a switch to open them
  2. A cracked wall, requiring a bomb or a dash bonk to break open and form the doorway.

Unlike normal doorways, the player cannot control Link's movement while inside of them. They just drag him into the next room automatically. Because of this, even if the doorway is taking you north or west, doorpumping will have no effect on your movement speed.

Spiral stair doors

Unlike other doors, spiral stair doors can be approached and entered while holding diagonal without Link suffering any speed reduction.

When coming into a room out of a spiral staircase, Link will have stair drag. To clear it, you have three options:

  1. Move Link left for at least one frame. You can begin holding left during the transition. After Link has moved left for at least 1 frame, you can move to whichever direction you're wanting to walk in.
  2. Move Link right for at least two frames. You can begin holding right during the transition. After Link has moved two frames right, you can move to whichever direction you want.
  3. After you've gained control of Link, tap the A button for at least one frame. After tapping A, you can move to whichever direction you want with stair drag cleared.

Note that this does not apply to straight staircase doors, such as the one going from the main hall to the throne room in Hyrule Castle.

Statue Mechanics

The first thing to know with statues is that pushing them (cardinal px/frame pattern of 1,1,1,0) is much faster than pulling (pattern of 1,0,0,0), so obviously avoid that whenever you can. Also, you can (and should) push a statue while moving Link diagonally to completely eliminate 0 pixel frames. A lot of players assume this is like pumping, but it works differently. Spamming the input isn't necessary to get the speed increase. All you have to do is hold diagonals while pushing and you'll get a constant 1px/frame speed along both axes.

Pushing a statue is even faster if you have a sword charge held, however, this has limited use since it doesn't gain enough frames to be worth slashing your sword and releasing a spin.

Ledge Mechanics

Normal hops

If Link approaches a ledge normally, it will take 20 frames of holding a direction against the ledge before Link will jump. It's important to know that changing the direction you're holding during this 20 frame countdown will completely reset the countdown. So be sure to stick with whatever direction you're holding until Link has jumped. This mechanic makes it risky to attempt any form of pumping as Link approaches a ledge.

Quickhops

After receiving the Pegasus Boots, players can bypass the aforementioned 20 frame countdown and jump ledges instantly. Link will automatically quickhop if he's dashing or if he has superspeed armed (whether or not he actually has superspeed).

To do a quickhop while walking, you can tap A when Link is walking against the ledge, and he'll jump immediately. There are a couple of caveats to this:

  1. On a north facing ledge, Link cannot do a walking quickhop while he's facing north. To get around this, you'll want to turn Link either east or west and then use (if you turned him west) or (if you turned him east) to approach the ledge. After this, tapping A will allow you to quickhop.
  2. There are some other ledges in the game that have the same properties as north ledges but are not north-facing ledges. The first area in Thieves' Town has some south ledges that cannot be quickhopped while Link is facing south and instead must be approached from a perpendicular facing diagonal.

Last updated September 15, 2026 by joshRTA