Super Mario World Glitches and Tricks
Stéphane has sent us in a rather strange Yoshi Glitch from Super Mario World. "Hi, I wanted to submit a very odd glitch that happened when I completed 'forest of illusion 3'. My yoshi kind of transformed into a football guy!" Says Stéphane and here are the screen shots:
Super Mario World fan has submitted this glitch via e-mail too:
"This is most easily done in level 5-3. Take yoshi and eat the springboard about halfway through the level. Walk up to the pipe next to it and spit it out. It will be stuck in the pipe. Stick out your tongue and it will be removed. This is also possible with keys, P Switches, and other items that can be held. (Other than shells.)"
The purpose of this page is to document all of the known tricks of the SNES Super Mario World game.
Because of the nature of this site, we concentrate here on tricks that are nearly difficult to play in real play, but are useful in the making of tool-assisted speedruns. For most of the tricks, a frame advance feature in an emulator is a definite must-have.
The tricks included on this page also work on SMW-derivatives such as Super Demo World.
Mario's oscillating running speedThe algorithm for Mario's top running speed does not actually give him a constant speed. Instead, his speed varies between five different values, some faster and some slower. Releasing "forward" will stop this oscillation on whatever speed Mario is traveling that frame. By releasing "forward" on the right frame while in mid-air, this oscillation will stop on a speed faster than Mario runs on average. This trick is fully utilized with continuous jumping, as detailed below.
Mario's medium running speed also oscillates. So even in situations where there isn't enough space to run to full speed, this technique can still be used to gain a bit of ground.
Continuously jumping to keep a constant speedWhen traveling forward in mid-air after either (1) releasing "forward" in mid-air as detailed above, or (2) releasing "Y" or "X" when flying, Mario will travel forward at his running or flying speed until he touches the ground (if "forward" is not pressed again), at which point he begins to slow down. However, by jumping on the first frame allowed after touching the ground, Mario does not lose any speed. In this way, jumping over and over through a level can be faster than running, or can allow traveling at flight speeds through terrain that may not be able to be flown through without stopping or slowing down.
Other ways to quickly get up to speed in order to take advantage of this glitch include sliding, hitting an enemy that changes Mario's velocity, and entering a pipe cannon.
Variant: 6/5A way to gain some of the advantage of oscillating speeds without losing a full running meter is the heart of the 6/5 trick. Since running speed oscillates every five frames, the trick is to jump, and while in the air, release "forward" on the maximum speed for the maximum number of frames allowed so that pressing "forward" together with "X" or "Y" for five frames will oscillate the speed back to the fastest value, refill the running meter to full, and consider the overall speed.
The process to fully optimize forward speed in mid-air is to release "forward" for six frames, then press "forward" together with "X" or "Y" for five frames, and repeat. It was previously (erroneously) thought that eight frames of releasing was the most optimal way to improve forward speed (and thus, the trick was called "8/5"), but the speed of the frames when recharging the P-meter was not considered in this analysis. Looking at average speeds, the 6/5 wins out.
Average speed using 6/5 : (49 * 6 + (49 + 48 + 47 + 48 + 47) ) / 11 = 48.45454...
Average speed using 8/5 : (49 * 8 + (49 + 48 + 47 + 46 + 47) ) / 13 = 48.38462...
Thus, when in the air, releasing "forward" on the fastest speed for six frames, then holding "forward" together with "X" or "Y" for five frames allows for the most optimal (though very slight) boost compared to running normally. If the jump is high enough, the pattern can be done multiple times before touching the ground.
Fast flyingWhen you are flying and you press "forward", you accelerate. However, once you reach top speed your speed oscillates, repeating every 5 frames. So you want to stop pressing "forward" when you are at the fastest of this oscillation. To find which is the fastest, just try all 5 and see how quickly Mario reaches a landmark. In SNES9x 1.43 improvement-9, you can also watch the memory location 7E007B, as detailed below in "Useful memory locations". A value of 51 is the fastest flight.
Fast air-catchingWhen flying, pressing "backward" for one frame, releasing it for one frame, and pressing it again on the third frame will catch air faster than the normal 11 frames required when holding "backward" continuously.
Get into swoop animation quicklyWhen flying, putting Mario into diving animation (normally by holding forward) will increase the amount of air he can catch. A way to take advantage of the added height without having to waste time diving is to press "forward" every other frame. After five presses of forward, Mario will be in swoop animation in less than half of the time and can lift off very high. Also, you will still have fast flying because "forward" was pressed for 0 frames (mod 5).
Variant: Diving without slowdownThis trick only works when Mario is flying and facing left. Normally when diving, each frame that forward is pressed will affect Mario's horizontal speed. However, when flying to the left, pressing "left"+"right" will behave just like pressing "left" only, except that horizontal speed is not affected. When traveling to the left, this means Mario can get into a dive animation without losing speed. When traveling to the right (but facing left), Mario can enter a left-facing dive animation while still traveling to the right, which is very strange looking.
Turn around while flying"X" and "Y" are basically the same button in this game. One must be held to remain flying, so pressing the other will cause Mario to spin. Sometimes the spin will not turn Mario around, but by varying the frame Mario spins on, this can be manipulated. Also, while spinning, you can control Mario's speed with "forward" and "back". Keep in mind that you can only catch air if Mario is moving forwards, in regards to the direction Mario is facing.
Spin jump flyingInstead of pressing B to take off with flight, press A. You will spin-jump very high, following the physics of initial flight while holding an item or riding Yoshi. An advantage of this is that Mario is still running full speed after landing. A disadvantage is that this technique is not horizontally faster than running.
Mario can get boosts in mid-air several times if A is released and pressed again after he begins to drop.
Fly stuck to the ceilingIf Mario can catch air very close to the ceiling, continue holding "backward" and Mario will stick to the ceiling, flying along it as long as the environment allows. This can only happen by either bouncing off an enemy to the ceiling, or by a lower ceiling appearing that Mario can approach from above.
Flying invincibilityWhenever you get hit while flying, Mario loses his flying state and is invincible for a short time (shorter than normal hit-invincibility). At this point, flying speed can be kept by immediately starting the hopping glitch. If flying again is required, Mario will have to run back up to speed.
Fly with an itemWhile flying, guide Mario into an item and he will automatically grab it. Although he'll no longer have the flying animation, flying physics are still maintained.
You can extend this technique to spin while in mid-air, hit a Koopa with the cape, and grab the resulting shell in mid-air, all in one motion.
Variant: Catch less airBy pressing "Y" (or "X") two frames after catching air while flying, the height of the arc will be substantially less. When using fast air-catching, the button sequence per frame should be, while holding "Y":
- Backwards, nothing, backwards, nothing, X
This can be useful in very specific circumstances, for example, when flying through a very small area. The exact frame of pressing X can vary depending upon unknown factors.
Release an item and remain flyingReleasing "Y" (or "X") while carrying an item will drop it or kick it, depending on the object. Releasing "Y" (or "X") during flight will normally cause Mario to stop flying, but there are certain points of flight that are safe to drop an item by releasing "Y" (or "X") for one frame and also remain flying afterwards. Examples include the first frame after catching air, and the very top height of an air-catch, as the animation frame changes. Experiment to see what works.
Keeping flight after exiting a pipe / entering a doorWhen Mario makes a jump while sprinting, the game sets a "takeoff meter" value to 80, and decrements it by 1 each frame until it reaches zero. When this value is positive, a few things react differently. First off, the screen will scroll up to follow Mario. Secondly, if Mario is caped, he will be able to ascend until this value reaches zero, at which point he will catch air and start flying.
Since this value decrements at this fixed speed, it's possible to land immediately after taking off, jumping again without running to speed, and still catch air, because this value is still positive.
A useful application of this is possible due to the fact that this value does not decrement between rooms that are connected by pipes or doors. In this way, Mario can begin flying at the end of one room, enter a pipe or door, and simply jump in the next room to enter flight mode, as long as Mario reaches the peak of his jump before the takeoff meter hits zero.
Variant: Gain extra height during takeoffAnother opportunity to take advantage of the way the takeoff meter works is to gain extra height during liftoff. Normally, liftoff should be kept as short as possible, because the sooner the liftoff phase ends, the sooner Mario can reach his top flying speed (51). However, sometimes even higher heights are desired near takeoff. A way to accomplish this is to release "Y" (or "X") immediately after reaching top speed at the beginning of flight, and start holding "Y" (or "X") again a few frames later. Because the takeoff meter is still above zero, Mario will keep his flight, and this technique causes Mario to gain quite a bit of height without any horizontal slowdown. This can also be used to avoid obstacles in Mario's flight path just after liftoff.
Keeping flight after climbingWhen flying by a vine, chain, or fence, press "up" to grab it. Hold "Y" when jumping off the object to continue flying. The direction you face after jumping off the vine is random (and thus, manipulatable by jumping off at different frames).
Jump or fly through stairs
The stairs are a one way platform at an angle. The game decides if you should hit the stairs based solely by your vertical speed instead of both that and horizontal. So, if you run into the stairs while moving upwards it will think you are passing through them in the safe direction. This can be done without a cape by running and spin jumping at the right spot. With a cape, it can be done by flying through at a more shallow angle than the stairs.
Variant: Floating through upward slopesSimilar to jumping or flying through stairs. By holding an item and floating up at an angle shallower than the angle of the slope, it can be passed through.
Platform BoostHorizontal boosts can be achieved from rotating platforms, such as the ones found in Donut Plains 3, Star World 4, and other levels. Hopping near the edge of the platform will boost Mario to the right a bit to place him fully on the platform. The amount of distance boosted depends on the exact positioning of the platform and how it is jumped off of. This has only been confirmed to work on platforms rotating clockwise when moving to the right. Platforms rotating counterclockwise can even "boost" Mario backwards in the same way.
Rope BoostWhen going past a rope, such as those found in Cheese Bridge Area or Way Cool, pressing "up" for one frame gives Mario a horizontal boost without actually grabbing onto the rope. The amount of boost given depends on when Mario grabs the rope, but generally it's best to grab the rope as early as possible. Mario can also jump off of these ropes, but be aware that jumping too early can negate much of the boosting effect.
Corner BoostWhen swimming in water, Mario's speed is pretty slow. When swimming underneath a square corner, swimming upward against it can push Mario forward, reaching a destination 2 frames sooner (per boost). This trick does not apply when carrying an item underwater.
Yoshi flightNormally, flying while riding yoshi is the same as flying while holding an item - just a long jump, and the same oscillating speeds as running. However, it is possible to trick the game into applying regular flight physics while riding Yoshi.
One problem is that although pressing "backward" will catch air, it will also turn Yoshi and Mario around. In order to take advantage of the flight like normal, fast air-catching must be used, followed by turning back around, and readjusting flight speed. You can even do the swoop animation to catch a large amount of air, but it is significantly slower than normal flight due to this turnaround effect.
Ways to initiate Yoshi flight:
- Fly onto Yoshi and an enemy or shell at the same time
- Fly onto Yoshi while he is placed on the very edge of a platform
- Fly onto Yoshi while he is placed on a purple triangle (the kind that let you run up the wall)
- While flying under a ceiling on Yoshi, dismount in mid-air
Fast climbingPressing "Up" and "B" together every other frame will climb vines and chains at the same speed as the initial ascent of flight. The drawback is that the screen does not begin following you. This can be circumvented by landing on solid ground for more than one frame while above the screen - then the game will scroll upward until it catches up to Mario, and you can continuously climb above it quickly.
Jump off a P-Switch
If you jump at the exact frame you land on a P-Switch, it can be used as a platform to jump off. Note that you have to let go of run (Y or X) for this frame, otherwise, Mario will just pick up the P-Switch again. Because of that, either you must rebuild up your run after landing, or begin the hopping glitch.
Land on a midair PswitchWhen you drop a Pswitch, it will travel with the same horizontal speed that you do. To land on it you must slow down a bit before you release it, and then regain the speed and pass it. The best way to do this is by dropping the P-switch at a low point of Mario's oscillating running speed, and then using the high point of the oscillation to catch up to it in mid-air.
Note: When dropping the P-Switch, it must be dropped, not kicked . This is done by not holding "forward" when dropping it.
WalljumpingWalljumping is when Mario jumps towards a wall, and somehow Mario's foot catches the wall and allows him to jump again in seemingly mid-air. In order to pull off a walljump, Mario needs at least a speed of 35 going toward a wall, and must run into the wall at exactly a block boundary (every 16 pixels). If Mario "catches" the wall, then conditions are good for a walljump - simply press jump a couple frames before he snags the wall.
The smallest variations in speed and position during the jump onto the wall can affect whether or not it works correctly.
Entering pipes without groundBy "catching" the wall at the right spot, the same way the wall is caught when performing a walljump, the game treats that state as Mario standing on solid ground (this is why a walljump works). If this is done near a pipe that is enterable, but doesn't have ground below it (the higher pipe in Gnarly, for example), the pipe can be entered in mid-air.
The key is a unique object ? it can be stood on, and it cannot be destroyed. In this way, it can be jumped off of, and also carried with in the same jump. When near a wall, this process can be repeated:
- Jump with the key.
- Drop the key near the peak of the jump (but not at the very peak).
- Land on the key in mid-air (without holding "Y" or "X").
- Jump off of the key, and start holding "Y" or "X" on the same frame.
- You will now have jumped in mid-air and be holding the key. Repeat.
By this process, walls can be scaled and jumping can pretty much go anywhere, as long as a key is handy. Note that if the key has too much downward momentum, it can be jumped off of, but not carried at the same time.
Variant: Using a key to enter mid-air pipesThe key can be used as a temporary platform to fool the game into thinking that there is ground near the pipe, and enter it in mid-air. It's also possible to bring the key with you through the pipe by holding "X" or "Y" a frame before heading in the direction of the pipe.
Variant: Using a key to pass through invisible coin blocksBy standing on the key as it bounces, the height can lift Mario up far enough to jump above invisible coin blocks that would otherwise appear when jumped from the ground. See Super Demo World's Pipe Star World for an example of this.
There are other tactics that can get around these invisible coin blocks, such as a well-placed message box.
Springboard clipping abuseWhen Mario jumps on a springboard to compress it, the game ignores most kill triggers, including walls. In addition to this, Mario will remain "stuck" to the spring while it is compressing. With these properties, Mario can go through solid objects by throwing a springboard in the air, and jumping on it as it falls past a corner.
Springboard jumping abuse with Yoshi [ 1 ]If Yoshi eats a springboard on the same frame he steps on it, he will soar upwards very fast, ignoring most boundaries. The speed and duration of of takeoff can be tweaked with the up and jump buttons.
This is a strange glitch that lets Mario move very rapidly downwards though the solid yellow blocks that spin. When your cape hits the blocks at his side, they begin to spin. However, the game only allows 4 spinning blocks at once in memory, so when a fifth block is caused to start spinning, it immediately stops the first. By placing Mario over the block that stops, the game will start to push him downwards at a very fast rate. The interesting (and useful) application of this is the glitch continues itself in an almost recursive way. As Mario moves downwards, he's still spinning, which causes new blocks to start spinning, which stops others, and the glitch continues.
While doing this glitch, Mario is considered overlapping with the blocks, so in addition to moving down quickly, he will move to the left slowly as well. Also, if Mario goes too far below the screen, he can die.
Floating speedPressing left+right while Mario has a P-Balloon or is riding a Lakitu cloud will send him to the right oscillating at speeds much faster than mid-speed running. However, it is slower than sprinting or flying overall.
Survive stompersIn castles, it's possible to squeeze in a hole that is becoming too small and survive. Duck in the hole, then duckjump and alternate between pressing A and B every frame (effectively jumping at every frame).
Variant: Pass through floorsIn very specific instances, ducking in a space that is too small for full-size Mario and spin-jumping can push Mario through the floor. See Bowser's Valley 2 for a time-saving example of this.
Survive boss fight without a floorAfter winning a boss fight, the game waits for Mario to touch the ground before it goes into full victory animation. To satisfy this condition, just snag the wall like a walljump, and the game will think Mario is on the ground.
Hit a question block while moving downwardsIf Mario passes though the corner of a question block enough, the game will think Mario is enough inside of it that it gets hit and releases its contents.
Duplicating question blocksBy throwing an enemy at a question block very close to it, a question block can be duplicated near it, unveiling the item, leaving the original block untouched. This can be done to either side of the block, above it, or above-diagonally to either side.
Variant: New items from old blocksThe game differentiates certain items by the block's horizontal position in the level. For example, blue p-switches and gray p-switches are actually the same item in the game, but determined by an odd/even horizontal position of the question block which contains it. Thus, by duplicating a block to the side with a p-switch inside, you'll get the other color p-switch.
Vertical scrollingWhen Mario is in flying mode (not takeoff mode), the screen will not follow him upwards if he continues to catch air. This normally is not too much of a problem, but there also is a limit to how high Mario can go above the screen. There are three ways to get the screen to begin scrolling upwards:
- Touch the ground for more than 1 frame
- Snag the wall (but do not walljump)
- Grab onto a rope/vine/fence
The last technique has the advantage of keeping flight after jumping off.
"Random" fadeout lagAlthough still not completely understood, some things are now known about this strange property.
There are three different kinds of fadeout. The first is after completing a normal level, when the black circle closes around Mario. The amount of lag here is based on Mario's score. The general pattern seems to be: "The more digits below 4, the less lag". By poking zero into the 2-byte RAM address 7E0F34, the score will be zero, and the lag given is the best that the particular exit can get.
The second is after completing a boss level. This is still score dependent, but a pattern hasn't been found, although it is definitely similar to that of normal exits.
The third is a secret exit. This depends on two things: Mario's score, and the sprites on-screen (especially the ones around the edge of the keyhole at its largest position).
Useful memory addresses
|7E007B (1-byte signed)||Horizontal velocity [ 2 ]|
|7E0094 (2-byte)||Horizontal position|
|7E0096 (2-byte)||Vertical position|
|7E01F2 (1-byte)||Lag indicator [ 3 ]|
|7E13E4 (1-byte)||"P-meter" [ 4 ]|
|7E149F (1-byte)||Takeoff Meter|
Footnotes[ 1 ]: This trick can also be referred to as "Dinosoar" (Dino-soar, hyphen optional). It's a play on words. - JXQ
[ 2 ]: Notice that this value oscillates - this is the basis for the hopping glitch and fast flying.
[ 3 ]: This value changes from its default value (usually 69) when the game lags.
[ 4 ]: When this value hits 112, Mario begins running at super-speed, and can fly if caped.
Back to glitches and tricks