Guest User

Untitled

a guest
Jul 19th, 2019
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.14 KB | None | 0 0
  1. In this video, I'll be walking you through how we were able to enter the Secret Aquarium in Super Mario 64 without pressing the A button.
  2.  
  3. Now, before you check the date on this video, I should point out that yes, this was done three years ago. However, that strat relied on using parallel universes, or PUs, inside the castle. This causes an unavoidable crash on the Nintendo 64, since the game crashes when the camera enters a parallel universe, and it's impossible to lock the camera while inside the castle. This means that this strat could only be performed on the Virtual Console version of the game, where parallel universes don't crash at all.
  4.  
  5. Despite this strat existing on Virtual Console, it wasn't really used. This is because there is a glitch called spawning displacement, only available on the original Japanese version of the game, that saved 2 A presses. Thus while VC saved 1 A press over N64, N64 saved 2 over VC, making N64 the optimal console.
  6.  
  7. However, due to a recent discovery of a Wii VC-exclusive glitch that allows us to get past the pole in Bowser in the Fire Sea in zero A presses, the A press counts on Wii VC and N64 were tied.
  8.  
  9. The ability to enter the Secret Aquarium in zero A presses on N64 therefore not only saves an A press, but also once again restores the N64 as the unquestionably superior console for 120 star in terms of A press count.
  10.  
  11. Speed Conservation
  12.  
  13. As with the original VC-exclusive strat, the core idea that allows us to enter Secret Aquarium is speed conservation out of pause-exit.
  14.  
  15. When pause-exiting a level, the game developers were careful to reset Mario's internal variables, such as speed, to zero.
  16.  
  17. Except they weren't that careful, because they missed a few variables, such as sliding speed. Sliding speed is sort of a hidden version of Mario's regular speed that is used during sliding actions, such as butt slide, stomach slide, and crouch slide. In normal circumstances, Mario's regular speed is copied to his sliding speed. However, when Mario is in a sliding action, his sliding speed is copied to his regular speed.
  18.  
  19. While the developers reset Mario's regular speed to zero when exiting a level, they forgot to set his sliding speed to zero. This means that if we press Z in order to start crouch sliding on the first frame after pause exiting a level, our regular speed will actually be copied from the sliding speed that we had inside the level that we just left.
  20.  
  21. So for example, if I generate a bunch of sliding speed in Bob-omb Battlefield, which remember, is normally just copied from regular speed, and then I pause exit and press Z, I'll conserve that speed into the castle lobby.
  22.  
  23. On VC, where we can freely use PUs without worrying about fixing the camera, we can bring PU speed from Hazy Maze Cave into the lobby and enter the Secret Aquarium that way.
  24.  
  25. On N64, we can still bring in a lot of speed, but there's a number of difficulties preventing the Secret Aquarium entry. For one, we need to be able to bring this speed up to the top level of the lobby. Then we need to somehow angle ourselves perfectly toward the Secret Aquarium entrance. But even then, we are still just too low to ledge grab onto it.
  26.  
  27. Glitchy Ledge Grab
  28.  
  29. This brings us to the discovery that led to this new strat. When Mario moves, the game checks for wall collisions on the upper and the lower part of his body. If he touches a wall with the lower part of his body and not the upper part, the game will attempt to make Mario ledge grab. This involves looking for a floor in front of and above Mario. If there is a floor, then Mario will ledge grab onto it.
  30.  
  31. When attempting to ledge grab the Secret Aquarium entrance from the height that we have in the room leading to the Princess's Secret Slide, we are simply too low, meaning that both the upper half and the lower half of his body are touching the wall.
  32.  
  33. However, it turns out that because of imprecise normal calculations, this wall is tilted slightly upward. This means that if we graze against the wall, we can get Mario's lower body to touch the wall, without his upper body touching. This tricks the game into thinking that Mario is touching a ledge, when in fact he is pretty far beneath it.
  34.  
  35. The game then looks for a floor to grab onto, and finds the Secret Aquarium entrance. Because we are grabbing a ledge that would normally be too high to grab, we call this a glitchy ledge grab.
  36.  
  37. Text Redirection
  38.  
  39. That solves the problem of being too low to ledge grab, but there are still other problems. For one, it's unclear whether we can bring enough speed up to the area by the Princess's Secret Slide in the first place, since navigating the lobby with high speed is difficult.
  40.  
  41. Even if we could get enough speed to that area, there seems to be no way to angle ourselves to point toward the Secret Aquarium entrance. Even using tricks like the C^ wall-hug which allows you to orient Mario to face directly toward a wall, the achievable angles are just slightly off.
  42.  
  43. However, there is a way to change your angle arbitrarily, even when moving at fast speeds. When you activate a textbox, the game places you in the idle, or standing, action, as though you were standing completely still. However, it doesn't reset your speed to zero. This means that if you read a sign or activate the text from a star door, for example, while moving with very high negative speed, you can arbitrarily choose which angle you move in after scrolling through the text. This is called text redirection.
  44.  
  45. Conveniently, there is a star door leading into the Princess's Secret Slide. By using text redirection with this door, we can choose the perfect angle in order to get the glitchy ledge grab that allows us to enter the Secret Aquarium.
  46.  
  47. But there's a problem. This textbox only appears before you've collected a single star. Once you've collected 1 star, the star animation plays instead, which doesn't work for text redirection. That means that if we use this strat, we have to commit to doing it at the very beginning of a new save file, and we're not allowed to collect any stars in the process.
  48.  
  49. At this point, we began to question the viability of this. In the VC-exclusive strat, we were able to bring speed from Hazy Maze Cave into the lobby. However, we have no way of accessing HMC with 0 stars, first because it's in the basement, and second because we need MIPS to enter it without pressing A. Indeed, all of the levels that we knew we could get that speed in were simply inaccessible when restricted to 0 stars and 0 A presses.
  50.  
  51. Why SSL?
  52.  
  53. So let's look at the levels that we do have access to. Really, the only two levels we can enter at the beginning of the game are Bob-omb Battlefield of course, and Vanish Cap Under the Moat. The latter is possible because we can use hyperspeed walking to enter the level without draining the moat.
  54.  
  55. At the very least, we need more than about 2000 speed to make this strat work. One idea for obtaining this is to use the koopa shell in Bob-omb Battlefield to perform shell hyperspeed, which is an exploit that lets you build a large amount of speed while moving backward on a koopa shell. While this might get us the necessary speed, the koopa shell only appears after collecting the star from racing Koopa the Quick, meaning it's not available to us.
  56.  
  57. Vanish Cap Under the Moat contains a Pedro spot which allows us to get enough speed, but there's not really a way to pause exit with this speed. In order to pause exit, you need to be in a specific class of actions. For example, you can pause exit from standing, hanging on a pole, or landing from a dive rollout, but you cannot pause exit in the air or while running.
  58.  
  59. We realized that the accessible levels simply weren't cutting it. We would need to figure out how to beat the first bowser level, giving us access to the basement. But clipping past the star door leading to Bowser in the Dark World without pressing A had never been done before.
  60.  
  61. Given our lack of level accessibility, we had to come up with some slick movement to do this. We ended up using a trick known as the C^ slide, which prevents Mario from sliding on slippery slopes, allowing him to continue building up speed. We can use this in Bob-omb Battlefield on this white slope in order to gain about 230 speed.
  62.  
  63. Now, part of what makes speed conservation difficult is that sliding speed is angled. This means that when conserving speed into the lobby, we don't just care about how much speed we have, but also what angle it's facing. So here, notice how we have to turn Mario while in the air in order to get the angle we want.
  64.  
  65. After grabbing the tree, we can pause exit to conserve sliding speed, and use the key door text to redirect our speed toward the star door, and clip through.
  66.  
  67. After this, Bowser in the Dark World can be completed in 0 A presses. Note that even though this is part of a 120 star run, we aren't allowed to collect the red coin star yet - we'll have to come back later.
  68.  
  69. Now that we have collected the first key, we have access to the basement. While your first instinct may be to head to Hazy Maze Cave and build up speed using the hyperspeed walking spot, we actually can't do that, since the normal zero A press strat to enter HMC requires MIPS, who only appears after we've collected 15 stars.
  70.  
  71. This leaves us with Shifting Sand Land and Lethal Lava Land. With a shell, strange slope geometry, and several interesting enemies, Shifting Sand Land is easily the more promising of the two.
  72.  
  73. Enter HSP
  74.  
  75. The most useful aspect of Shifting Sand Land is actually the fly guy. When you land on a fly guy, you keep your speed and begin spinning. Spinning has the nice property that it gives us a ton of control over our sliding speed angle, doesn't kill speed when hitting walls or out-of-bounds. And, we can pause exit when landing. This makes it perfect for Secret Aquarium entry.
  76.  
  77. One idea for building speed in SSL is using shell hyperspeed. Of course, this requires accessing the shell, located in this item box. It's not immediately clear that we can even get to it, but even if we could, it just isn't really feasible to build up that much speed. As you move faster, you have less and less control over Mario's movement, and it becomes hard to avoid hitting walls and out-of-bounds while still gaining speed.
  78.  
  79. There are several places where C^ sliding could be used to build some speed, but it just isn't enough.
  80.  
  81. However, there is one last hope: hyperspeed punching. Hyperspeed punching, or HSP, is a newly discovered hyperspeed method. When Mario punches while moving, he has abnormally low friction. This means that on certain surfaces, downhill acceleration can overpower this friction, allowing him to have net positive acceleration. If we find such a surface, and we have some way of holding Mario in place, then we can gain unlimited amounts of speed.
  82.  
  83. So are there any HSP spots in SSL? Well it turns out that this little corner happens to satisfy the requirements. While visually, there appears to be a regular floor in front of Mario, actually everything in front of him right now is out of bounds, meaning that it'll hold Mario in place while he repeatedly punches and builds speed.
  84.  
  85. Exit HSP
  86.  
  87. And build speed we can. While it takes quite a while, Mario will continue to build speed, and eventually even reach PU speed. But there's one tiny little issue. We can't stop.
  88.  
  89. Indeed if Mario stops punching for even one frame, his speed will immediately be capped down to 32. We could continue building speed until we get PU speed, but then we would have to face the complex challenge of getting back, which is much more difficult with forward speed than with backward speed.
  90.  
  91. If we want to avoid using PUs, we only have one option. If you press Z the frame you stop punching, Mario will start crouch sliding. This will cause him to turn a little bit, potentially bringing his intended position in-bounds, allowing him to escape the HSP spot. If we do this after building speed for 40 minutes, then we can turn mario to face in-bounds by the entrance to the level.
  92.  
  93. However, this brings its own set of challenges. When Mario slides, whether it be butt slide, stomach slide, or crouch slide, his speed is intended to be capped to 100. However, due to a bug in the sliding code, this cap is delayed by 1 frame. This means that we get one frame of crouch slide, and if we don't get out by the next frame, we will lose all of our speed.
  94.  
  95. Thankfully for us, the HSP spot is actually located at a higher elevation than the floor at the beginning of the level. This means that with proper speed and angle, Mario's next position after turning will be located 100 units above the ground, and so Mario will exit crouch slide and enter freefall.
  96.  
  97. 10k Saves the Day
  98.  
  99. Great, so we've avoided the 100 speed cap that happens as a result of sliding. But now we have a ton of speed, are way above the ground, and we're headed directly toward out of bounds. This is a recipe for disaster. Indeed, we're moving so fast that we can't even move a quarter step from our current position without bonking on out of bounds and losing all of our hard earned speed.
  100.  
  101. Now here I want to point out something subtle. If we did nothing at this point and just let Mario bonk, he wouldn't actually lose his speed until the next frame. This means that if we somehow cancelled the bonk, we could actually keep our speed after bonking. Remember that our ultimate goal here is to land on the fly guy. So the question is, could we cancel the bonk by landing on the fly guy?
  102.  
  103. Well the answer in general is yes, and in fact we will use that later. However, if we did it here, we would have way too much speed. If we did this right now and pause exited with as little speed as possible, we would unavoidably bonk as soon as we entered the castle, and would lose our speed.
  104.  
  105. So clearly, we need to slow the heck down, and we need to do so extremely quickly. Enter the 10k glitch.
  106.  
  107. The 10k glitch is a strange property of sliding that allows us to instantly change Mario's speed, given that he already has a lot of speed to begin with. The game uses a multiplier to scale Mario's speed when he's sliding. When pulling back on the controller, this multiplier depends on Mario's current speed. This means that with large amounts of speed, you can increase or decrease your speed by huge amounts. This is called the 10k glitch since for each additional 10,000 units of speed you have to begin with, the maximum speed multiplier goes up by 1.
  108.  
  109. What made the 10k glitch exciting originally was its ability to rapidly increase Mario's speed. However, here we're going to be using it in the opposite direction; to instantly decrease Mario's speed by a huge percentage.
  110.  
  111. Using the 10k glitch, we could instantly drop Mario's speed from 45 thousand to 2300, which is slow enough to avoid bonking on out-of-bounds, while still being fast enough to perform the lobby movement. However, in order to activate the 10k glitch, we need to once again enter a sliding state. Now, we couldn't have done this with the crouch sliding state that we just exited from, since we needed enough speed to get Mario over to this area and off the ground.
  112.  
  113. Ethan White Saves an A Press
  114.  
  115. But right now we're stuck in the air, which is gonna make it difficult to enter a sliding state. However, we have one obscure trick up our sleeves. While riding on a koopa shell, you can press Z to stop riding the shell and start crouch sliding. But you can only do this while on the ground, not while in the air. However, when you first touch the shell, the game doesn't immediately check whether you're in the air or on the ground. This means that if you press Z the frame you touch the shell, you'll start crouch sliding, regardless of whether you are on the ground or not.
  116.  
  117. Using shell cloning, it is possible to place a shell in mid-air, and by touching it and pressing Z, we can begin sliding, allowing us to activate the 10k glitch to bring our speed down to something reasonable.
  118.  
  119. :FireEmoji:
  120.  
  121. Great, right? Well, that would be too easy. There are several issues with this. The main one is that you actually need to be falling downward to land on a koopa shell. While we are in the air, we've been in the air for less than a frame, and so haven't started falling down yet.
  122.  
  123. This means that in order to activate 10k glitch using the shell, we first need to spend at least one more frame in the air. But now we're back to the original problem, which is that we have way too much speed to avoid bonking.
  124.  
  125. In other words, we need to stay in the air, avoid bonking, and keep our speed. We can actually accomplish this using fire. When Mario is burning and in the air, he'll continue to fall downward without bonking or losing speed. So all we need to do is line up a flame clone above our shell clone. Touching the flame will let us stay in the air long enough to be moving downward, which allows us to begin riding on the koopa shell. And don't worry, landing on the shell puts out the fire. So, now we can activate 10k glitch.
  126.  
  127. Fly guy
  128.  
  129. So now we have a manageable amount of speed, enough that we can afford to take another quarter step without bonking. This is important, because we need to enter the air. Remember, we're crouch sliding right now. If we bonked directly from sliding, we would downwarp to the ground and end up losing our speed. So we take a step, and now we're above the ground and so we enter freefall.
  130.  
  131. But gee, now we're in the same situation we started in, right? We're headed toward out of bounds, and if we take another step, we will bonk. However, this time we have only 2300 speed instead of 45 thousand. This means that if we bonk, and then land on the fly guy to cancel the bonk, we'll be able to spend the rest of our time fine-tuning our speed and angle for the perfect pause exit.
  132.  
  133. Setting the HOLP
  134.  
  135. So that's how we're going to get our speed and pause exit. However, we just used like every object that we could think of. The shell, a flame, the fly guy, all of which will require work to get into place. So next we should figure out how we're actually going to do that.
  136.  
  137. The first thing we need to do is figure out how to get access to the shell in SSL. Normally, we could do this pretty easily by using this tornado to twirl into the box. However, the tornado doesn't appear until after we've collected Inside the Ancient Pyramid, and remember, we aren't allowed to collect any stars.
  138.  
  139. The easiest way to get access to the shell is by remotely throwing a bob-omb to destroy the box, and then cloning the shell. However, to do this, we need a pre-set HOLP at the right position.
  140.  
  141. As a quick review, the HOLP, or Held Object's Last Position is a point in 3D space that the game uses to track the position of a held object. Normally when holding an object, the game updates the HOLP to a position in front of Mario. However, in certain circumstances, we can pick up and release objects without updating the HOLP, allowing us to remotely throw objects. In this case, we need a HOLP near the shell item box so that we can throw a bob-omb at it from below.
  142.  
  143. In order to place the HOLP in the correct location, we begin the TAS by entering Bob-omb Battlefield. Remember that we have to start from a new save file, and we're not allowed to collect any stars before entering the Secret Aquarium.
  144.  
  145. The HOLP that we require is located on the floating island, which means that we have to carry an object onto the island. The island is a bit far from the mountain though, so we need to place a goomba clone to give us a bit of extra distance.
  146.  
  147. To start off, we grab a bob-omb and set the HOLP to this location. This is where we want to place our goomba clone. We now need to clone a goomba and release it at the HOLP. One way to do this is to use the hat-in-hand glitch to avoid updating the HOLP while holding an object. But we can't do that in this case, since we haven't unlocked the wing cap.
  148.  
  149. Instead, we use a glitch called pause-buffered hitstun. When Mario gets hit by an enemy, he begins to blink. Each frame, he alternates between visible and invisible. The HOLP is tied to rendering, and so it turns out that the HOLP will only update on those frames where Mario is visible. This means that if we pause and unpause the game repeatedly, making sure that we only unpause for frames that Mario is invisible, we can hold an object without updating the HOLP.
  150.  
  151. In this case, we take damage from a water balloon. While invisible, we grab a bob-omb just as it explodes, which lets us hold a vacant object slot, which is just a region of memory that an object is stored in. While holding a vacant object slot, there's a chance that another object will load into that same slot, letting us hold that object, even if it isn't otherwise a holdable object. This is called cloning, which is a bit of a misnomer, since it really just lets us hold an object we aren't supposed to. In this case, we line things up so that a goomba loads into the slot that we're holding. We throw the goomba to release it at the HOLP, all before Mario stops flashing.
  152.  
  153. Now we see that a cloned goomba is positioned at the HOLP we set earlier. It won't move, because clones, which again are just objects that we held but weren't supposed to, don't update like regular objects. This goomba is going to let us reach the floating island.
  154.  
  155. In order to move a bit faster, we grab this bob-omb shortly before it explodes. This allows us to hold the bob-omb while it is in its bloated state, which pushes Mario backward since its hitbox is constantly intersecting with Mario's. We have to repeatedly pick it back up, or else it will explode. We use that bit of extra displacement, combined with bouncing on the goomba clone, to reach the island while carrying the bob-omb.
  156.  
  157. Now that we've successfully carried an object to our target HOLP location, we are done with the bob-omb and can drop back down.
  158.  
  159. Setup
  160.  
  161. Now using the slick movement we found earlier, we can conserve just enough speed into the lobby in order to enter Bowser in the Dark World and collect the first key.
  162.  
  163. Now we enter Shifting Sand Land and begin the setup. As a reminder, we need a shell clone, a flame clone, and a fly guy, all positioned in specific locations by the red coin over here. We begin by once again using pause-buffered hitstun in order to throw the bob-omb at the item box containing the shell. We're now done with the HOLP that we set earlier, and we can actually take a breather since that bob-omb has turned invisible and intangible since Mario is too far away from it. That bob-omb isn't going to activate and break the item box until we get closer to it and reactivate it.
  164.  
  165. We now grab another bob-omb as it explodes in order to hold a vacant object slot. We then activate the bob-omb that we previously threw at the HOLP. We need to walk closer to the item box here, since it becomes intangible when Mario is too far away. The bob-omb explodes the item box, thereby loading the koopa shell. We manipulate the object slots in such a way that the koopa shell loads into the vacant slot that we're holding, allowing us to hold the koopa shell.
  166.  
  167. When you clone a koopa shell, you can place it down somewhere, and then after you've placed it, you can ride it on it as many times as you want without it unloading. Even if you crash into a wall and break the shell, you can go back to the shell clone and ride it again. We use this repeatedly here just to make the setup process go by quicker.
  168.  
  169. Note that because we carried the koopa shell over to the corner of the level, our HOLP is now positioned at the koopa shell.
  170.  
  171. The next thing we have to do is position a flame clone above the koopa shell. We do this once again by using pause-buffered hitstun while holding a flame that was shot by the fly guy. In this case, we stay inside the pokey's hitbox, which ensures that Mario continues to flash from taking damage. We navigate up to a nearby hill and press Z to release the clone. Pressing Z, as opposed to pressing B to release an object, places the object at the HOLP laterally, but at Mario's height. Because our HOLP is located at the koopa shell, this allows us to line up the flame clone with the koopa shell, while being able to control its height.
  172.  
  173. Now all that is left is to manipulate the fly guy until he flies over to where we want him. When manipulating a fly guy, there are three height ranges that we need to pay attention to: low, medium, and high. Depending on which height range Mario is in, the fly guy will behave differently.
  174.  
  175. Thankfully, because of the quicksand and hills by the entrance to SSL, it is straightforward to move Mario back and forth between these height ranges. However, these height ranges are relative to the fly guy's current height, meaning that we have to be careful not to let the fly guy move up or down too much. We also of course need to be able to get the fly guy to the right height to pull off the bonk cancel later.
  176.  
  177. The resulting height range is pretty tight, and getting the fly guy into it is pretty tricky itself, since we have to leave its activation radius mid-lunge. Thankfully, the numbers work out, and we are able to manipulate the fly guy into the spot we need him.
  178.  
  179. Lobby Movement
  180.  
  181. Now that all of our objects are in place, we perform HSP, touch the flame clone, fall down to the shell, cancel into sliding, use 10k glitch to reduce our speed, enter the air, bonk, cancel the bonk on the fly guy, adjust our angle and speed, and then pause exit when we land.
  182.  
  183. We're not quite done yet however, since we still need to get this speed up to the star door by Princess Peach's Slide.
  184.  
  185. This involves a bunch of tricky and clever movement through the lobby in order to reach the Jolly Roger Bay room, and getting the right angle to dive onto the pillar by the stairs. This, by the way, is extremely precise, since you need to land in a very specific location to simultaneously avoid climbing down the ledge and at the same time, allow you to then move to the stairs for a frame in order to get the right angle to reach the star door at the correct location.
  186.  
  187. This involves a ton of tricky and clever movement through the lobby. First we have to get to the Jolly Roger Bay room, then we have to perform an extremely precise dive onto the pillar by the stairs. Then we have to get onto the stairs for one frame and get a short wall push, before getting up to the Bowser in the Dark World star door in the correct location.
  188.  
  189. From here, we can get over near the slide star door. To actually reach the door however, we need to clip into the room and perform a C^ wall hug to redirect our angle.
  190.  
  191. Now we can use text redirection to get over to the Princess's Secret Slide. However, in order to reach the star door text, we need to perform a C^ wall hug from inside the room. Otherwise there's no way to get the right angle to touch the door.
  192.  
  193. Honestly, the lobby movement here is so complicated and precise that it would take a full video to explain it properly.
  194.  
  195. Now, because we managed to avoid collecting any stars, the star door text will appear, and we can redirect our speed at the perfect angle to trigger the glitchy ledge grab.
  196.  
  197. Looking back, this strat is somewhat of a miracle. There were so many points of failure, from fly guy manipulation, to the existence of a hyperspeed spot, to unit precise movement in the lobby, that I think we were all pretty surprised that it ended up working. But at the culmination of perhaps the most complex strat in SM64 history, we were finally able to enter the Secret Aquarium in zero A presses.
Add Comment
Please, Sign In to add comment