The purpose of this page is to document aspects of Mario Kart 64 that are important to Tool Assisted Speedrunning.
Please note that the following Game Resources page uses terms consistent with the game's original instruction booklet and operation card, where possible.

Increasing Speed

Rocket Start

As Lakitu counts down at the start of the race, pressing "A" revs your engine. The largest boost is obtained by pressing "A" for the entire pre-race sequence except for a single frame. Releasing "A" for additional frames (inclusive of this frame) may still receive a boost but it will be smaller. On some levels a smaller boost may be faster (e.g. to receive an optimal jump off another driver).
The frame where A must be released to receive the boost: [To Do: Enter picture of correct frame]

Shrooming

The start boost is actually the same effect as using a mushroom. When "shrooming", you gain additional speed by sliding (~+10%). While "shroom sliding" it is also slightly faster (~+5%) to oscillate the horizontal joystick position every frame. This oscillating slide or "Xenos slide" (named after the discoverer) typically requires you to take a slightly less direct route, so it is not always worth doing. Also of note is the fact that a Mini Turbo (MT) can be charged while shroom sliding, this is typically worth doing and thus further reduces the time frame for Xenos sliding.

Respawn Rev

When being placed back on the course after having gone out of bounds, the fastest way to accelerate is to hold "A" at the first possible frame that will not spin you out (i.e. any earlier and your driver spins out). This frame depends on whether you fell into ice water or not, because the ice shattering animation takes additional time.

Triple-Tap "A"

In many cases you may lose speed as consequence of a maneuver. The fastest way to regain speed (without the use of an item) is to triple-tap "A", which is optimally performed by alternating pressing and releasing "A" each frame (i.e. A_A_AAAA...). This technique is effective from a complete stop as well as from a partial loss of speed. It can be combined with Spin-Turning to turn quickly. Triple-Tapping is most effective with the light-weight characters and Bowser (the other characters benefit but to a much smaller degree).

Mini Turbo (MT)

An MT is a small boost awarded after a player performs a complicated drift process used to build the boost. The MT is a core advanced driving technique and is a primary differentiator between beginner and advanced players. It can be done around corners as well as on straightaways (a "Straight Stretch Mini Turbos" or SSMT). An MT has seven unique phases which can be performed "frame perfect". The longer a player spends on each step beyond what is necessary, the more speed they lose while building the MT boost and the greater overall distance they travel. Thus, for a TAS it is important to understand the absolute limits of this technique. The following table summarizes the MT phase requirements:
MT PhaseFramesΣFramesPhase Description
1. Inward jump66Jump and turn (on the same frame) in the direction you wish to MT. 6 frames assumes flat ground.
2. First outward slide915Once you land, immediately turn the opposite direction and hold the slide to charge.
3. First inward toggle116Toggle inward to change smoke from yellow to orange
4. Second outward slide420Immediately toggle back outward and hold the slide to charge.
5. Second inward toggle121Toggle inward to change smoke from orange to red. Release "R" immediately and, if done frame-perfect, the red smoke will not be visible
6. Glide turn8-1229-33Once you release the slide an MT boost is active for 14 frames (speed is still elevated for some time after the boost ends). During this boost you can turn without losing speed. This MT glide allows you to angle yourself correctly coming out of the MT
7. Untilt1-230-35Once angled correctly, you must toggle the opposite direction for at least one frame to align your kart to the track. If you do not do this the kart drives at an angle or is "tilted" to its direction of travel and loses speed.
Note that optimal MT spacing is situation dependent. However, assuming an infinitely long, flat surface, optimal spacing would be XX (To do: test exact value) frames after the MT boost starts.
Depending on the terrain and situation several different options... The following table details these limits as they are currently understood. Note that the internal game requirements are not fully understood and the inputs in these tables were developed through experimentation:
MT PhaseXYRAComment
1. Inward jump+65000RA}}
1. Inward jump+20000RA}}
1. Inward jump+20000RA}}
1. Inward jump+20000RA}}
1. Inward jump-35000RA}}For unknown reasons, values as low as -35 are permitted on this frame.
1. Inward jump+65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
3. First inward toggle+39000RA}}A toggle with a magnitude of at least 39 is almost always required to charge an MT.
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
5. Second inward toggle+39000RA}}
6. Glide turn-65000 A}}Beginning a glide turn with max turning allows the fastest possible adjustment back to straight
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
7. Untilt+63000 A}}+63 for one frame is all that is required to completely untilt with this MT
8. MT Spacing000000 A}}
MT PhaseXYRAComment
1. Inward jump+62000RA}}
1. Inward jump+20000RA}}
1. Inward jump+20000RA}}
1. Inward jump+20000RA}}
1. Inward jump-35000RA}}
1. Inward jump+64000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
3. First inward toggle+39000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
5. Second inward toggle+50000RA}}
6. Glide turn-56000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
7. Untilt+61000 A}}
8. MT Spacing000000 A}}
MT PhaseXYRAComment
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+20000RA}}
1. Inward jump+20000RA}}
1. Inward jump+65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
2. First outward slide-60000RA}}
3. First inward toggle+39000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
5. Second inward toggle+40000RA}}
6. Glide turn-55000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
7. Untilt+65000 A}}
8. MT Spacing000000 A}}
MT PhaseXYRAComment
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
1. Inward jump+65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
2. First outward slide-65000RA}}
3. First inward toggle+39000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
4. Second outward slide-50000RA}}
5. Second inward toggle+39000RA}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-65000 A}}
6. Glide turn-40000 A}}
7. Untilt+65000 A}}
8. MT Spacing000000 A}}
MT in mneumonic formats:
|..|   65,    0,.................r|
|..|   20,    0,.................r|
|..|   20,    0,.................r|
|..|   20,    0,.................r|
|..|  -35,    0,.................r|
|..|   65,    0,.................r|
|..|  -65,    0,.................r|
|..|  -65,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|  -60,    0,.................r|
|..|   39,    0,.................r|
|..|  -50,    0,.................r|
|..|  -50,    0,.................r|
|..|  -50,    0,.................r|
|..|  -50,    0,.................r|
|..|   39,    0,.................r|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|  -65,    0,..................|
|..|   63,    0,..................|
|..|    0,    0,..................|

Drafting

If you follow closely behind another character for several seconds, you receive a draft boost. This boost is not very significant, however, and an MT would be more effective in all known cases.

Back Up

Pressing "B" and down while stopped allows you to back up. One unique aspect of backing up is that acceleration is nearly instantaneous. A velocity of -12 (from 0) is achieved within [To Do: Calculate number] frames.

Methods of Turning

Degree of TurnMethod
SlightSlight adjustments in direction can be made without losing much speed by nudging the control stick in the desired direction for a few frames and then nudging back in the opposite direction for one or two frames to untilt the kart and realign to the new path. This should only be done in a TAS if necessary but is common in realtime speedrunning to make small adjustments.
Small
Normal
Tight
Spin

Driver Attributes

Classes

Capabilities

Acceleration curves [To do: Add tables for each of the following, with a column for each character and a row for each frame (including a graph would also be helpful)]:
Off road
Turning
Weight

Driver States

Note: States are not (necessarily) mutually exclusive. Many can be active concurrently.
Bit 0x0F6A4C0x0F6A4D0x0F6A4E0x0F6A4F0x0F6A5B
1000 0000 (128)Boo activeFace southDazed (e.g. penguin hit)Spin-out (hit object)Frozen
0100 0000 (64)Struck by lightning"REVERSE"unknownSpin-out "WHIRRR!"unknown
0010 0000 (32)Outward slidingDraft boostShroomingAB SpinningDefrosting
0001 0000 (16)unknownAcceleration(type unknown)CPU controlled (After losing GP race)"BOING!" speed (can slide)Frosty (blue tint after ice breaks)
0000 1000 (8)Un-flatteningFace southSpin-out (banana)Off GroundStuck (out of bounds)
0000 0100 (4)FlattenedunknownTumble rotation (momentum)Zipper boostLow opacity (Lakitu fade-out)
0000 0010 (2)Directional tumble (i.e. green shell)Slightly off groundStar powerJumped (pressed "R")Lakitu holding
0000 0001 (1)Vertical tumble (i.e. fake item box)Wall tumbleMT boost activeBrakingWater (out of bounds)

Other States

Driving while underwater is indicated by 0x0E9F74 = 1.

Shrooming

MT Boost

AB Spinning

Off ground

It is important to know when you are off the ground as this generally means that you are losing speed. Being on the ground allows you to maintain your speed while driving on flat ground, charge a MT more quickly and accelerate while going down hill. The acceleration possible while going downhill is significant but can be tricky to initiate as your kart will tend to want to go airborne on steeper slopes. The right combination of pre-jumping and/or tapping "A" can help stick your kart to the down-slope.

Kart Location / Speed

Shortcuts

Wall Jumps

Seam Jumps / Breaks

Tenko Jumps

Collision Jumps

Lakitu Warps

Lakitu Effect

Finish line glitches

Items

Probabilities

ItemCode1st2nd3rd4th5th6th7th8th
Banana130%
Banana Bunch25%5%
Green Shell330%5%
Triple Green Shell45%10%10%
Red Shell55%15%20%15%10%
Triple Red Shell6 20%20%20%20%20%20%20%
Spiny Shell7 5%5%10%10%15%
Thunder Bolt8 5%5%10%10%15%20%20%
Fake Item Box910%5%
Super StarA 5%10%15%15%20%30%30%
BooB5%5%
MushroomC10%5%5%5%5%
Triple MushroomsE 15%20%20%25%25%10%5%
Super MushroomF 5%10%10%10%10%10%10%
Total 100%100%100%100%100%100%100%100%
This table is a summary of the entries that start at memory address 0x1A7A90.
ItemCode1st2nd3rd4th5th6th7th8th
Banana160%50%40%35%30%30%30%25%
Banana Bunch2
Green Shell325%25%25%25%20%20%20%20%
Triple Green Shell4 5%10%15%20%20%20%20%
Red Shell5
Triple Red Shell6
Spiny Shell7
Thunder Bolt8 1%
Fake Item Box910%10%10%10%5%5%
Super StarA 5%5%10%10%
BooB5%5%5%5%
MushroomC 5%10%10%20%20%20%24%
Triple MushroomsE
Super MushroomF
Total 100%100%100%100%100%100%100%100%
This table is a summary of the entries that start at memory address 0x1A7DBO.
ItemCode1st2nd
Banana125%
Banana Bunch210%5%
Green Shell330%
Triple Green Shell45%5%
Red Shell55%5%
Triple Red Shell6 15%
Spiny Shell7 5%
Thunder Bolt8 15%
Fake Item Box910%
Super StarA 15%
BooB5%
MushroomC10%
Triple MushroomsE 15%
Super MushroomF 20%
Total 100%100%
This table is a summary of the entries that start at memory address 0x1A80D0.
ItemCode1st2nd3rd
Banana135%5%
Banana Bunch25%5%
Green Shell330%
Triple Green Shell4 10%
Red Shell55%15%10%
Triple Red Shell6 15%20%
Spiny Shell7 10%
Thunder Bolt8 5%15%
Fake Item Box910%5%
Super StarA 5%15%
BooB5%5%
MushroomC10%5%
Triple MushroomsE 20%20%
Super MushroomF 5%10%
Total 100%100%100%
This table is a summary of the entries that start at memory address 0x1A8198.
ItemCode1st2nd3rd4th
Banana135%5%
Banana Bunch25%5%5%
Green Shell330%5%
Triple Green Shell4 10%5%
Red Shell55%15%10%
Triple Red Shell6 15%15%20%
Spiny Shell7 5%10%
Thunder Bolt8 10%15%
Fake Item Box910%5%5%
Super StarA 5%10%20%
BooB5%5%
MushroomC10%5%5%
Triple MushroomsE 25%25%25%
Super MushroomF 5%10%
Total 100%100%100%100%
This table is a summary of the entries that start at memory address 0x1A82C4.
ItemCodeActive Players
Banana110%
Banana Bunch25%
Green Shell35%
Triple Green Shell420%
Red Shell520%
Triple Red Shell6
Spiny Shell7
Thunder Bolt8
Fake Item Box915%
Super StarA20%
BooB5%
MushroomC
Triple MushroomsE
Super MushroomF
Total 100%
This table is a summary of the entries that start at memory address 0x1A8454.

Manipulation

Lap Progress Trick

Miscellaneous Tricks

Shells

Item cancel jump.

Fake Item Box

Vertical speed multiplier

Bananas

Although probably not useful in a TAS, it's worth documenting that spinning out from a banana results in a set speed. Normally this speed is slower than you could otherwise travel. However, if you have been shrunken by lightning spinning out on a banana peel, the spin out speed is faster than you could otherwise travel.

Lag Reduction

Wide-Angle Camera helps...

Helpful Game Shark Codes

When testing new strategies, particularly shortcuts, it can be helpful to change some memory addresses to test concepts. The following codes are particularly helpful for this purpose: "Turn in Mid Air"
800F6A4F 0000
D00F6915 0020
810F69C8 4000
800F699D 0000
"Drive Through Walls"
8002E000 0010
8002E058 0010
Expand/Collapse collapse-content-_1b3ea625150e4fdbb1d560305e7d054d

GameResources/N64/MarioKart64 last edited by Weatherton on 6/15/2015 12:15 AM
Page History Latest diff List referrers View Source