UncommentatedPannen
BoB Setting the HOLP for BitS
updated
This TAS was possible thanks to the following people:
➤ Marbler, for fleshing out the plan and TASing the speed building iterations on the long slope. (youtube.com/@supermarble94/videos)
➤ Tyler Kehne, for coming up with the speed building technique on the long slope. (youtube.com/@TylerKehne/videos)
➤ Crackhex, for TASing the speed building on the pillar and brute forcing optimizations to the speed building on the long slope. (youtube.com/@Crackhex/videos)
➤ Alexpalix1, for brute forcing optimizations to the speed building on the long slope and optimizing/TASing the ending movement. (youtube.com/@PaLiX/videos)
➤ myself, for TASing the segment from the beginning to the speed building on the pillar.
The main problem with this star is that it's 24 units too high to reach with a rollout. There's a rock somewhat near the star, but too far a distance to cover with a rollout. There are goombas in the level, but we can't clone them since there's no way to clone in JRB. And even if we got a goomba over to the star, it would unload if Mario went over there himself (since he'd be leaving the goomba spawner radius). And so, this star remained at 1 A press for years, as we needed an A press to jump into the star (youtube.com/watch?v=7YL8_oLVvpY).
At one point, I showed that having 500 speed would allow us to collect the star 0xA (youtu.be/nKeBVjHztag), but there was no known way to get more than 100 speed at the time. Superdavo0001 later reduced this speed requirement down to 280 (youtu.be/amg4kaW1jGg), followed by nim who brought it down to 262 (youtu.be/eJYOQSlNHDA). Separately, Tyler Kehne showed a way to achieve 150 speed when he found a hyper speed punching spot on the pillars (youtu.be/a4NmMl4naLc). So with the knowledge at the time, we could build up 150 speed but needed 262 speed to get the star. So it still wasn't possible.
However, another idea was to try to collect the star 0.5xA instead of 0xA, since that would allow us to jump kick. In particular, when reactivating speed, a jump kick can be used as a better alternative to the usual C^ braking, since jump kicks lose less speed. Also, jump kicks allow us to trigger landing frames on demand. On the long slope, this is used to build up speed faster than hyperspeed walking, and in the cave, this is used to negate the normal speed loss from regular walking. However, these details weren't very relevant, since the only known speed building methods required punching, and you can't punch with A held. But recently, Tyler Kehne revisited a couple of his ideas, one of which was to use hyper speed jump kicking. This was initially thought to not work, since doing a jump kick requires doing a low magnitude joystick input so as to not dive, and this would lose speed. But then Marbler had the idea to build up speed backwards instead of forwards, since you can't dive on the ground with negative speed. Given this, the only suitable location to execute this from was the long slope around the purple ! switch's platform. On this slope, there's only a very narrow range of heights that Mario can use, which is the 6.3 units between y=924 and y=930.3. Mario can't go any lower or he'll enter the water. And he can't go any higher due to being blocked by the wall hitbox. A jump kick ascends 20 units on the first frame, and so 5 units on the first quarter step of that frame. So the 6.3 unit available height range is just enough to have each jump kick land within it. On the last part of the slope though, the wall actually blocks landing access completely, but there's an open corner that allows us to land once, and we can hyper speed walk on the rest of the slope.
So anyway, after Tyler's revelation, many people tried to determine the updated speed bounds, specifically how much speed we could achieve and how much speed we needed. Alexpalix1 remembered that Jellopuff (youtube.com/@jellopuff1530) found out a way to do a jump kick off the rock, and so Alexpalix1 was able to bring the speed requirement down to 204, with a sliding vector that Tyler Kehne believed was possible using the ship to redirect the sliding angle. Marbler successfully did a few iterations of the hyper speed jump kicking, and theorized that possibly up to 220 speed could be achieved. And so finally, we TASed the strat and it worked out.
Console Verification: twitch.tv/videos/1739329757?t=0h16m2s
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
This idea was from PapaQBall (youtube.com/@papaqball/featured). I've executed it, and am now documenting it. Previously, clearing the first glass block during the carpet ride required a bob-omb clip or lakitu bounce. But now we have a new option, which is to use VSC. Specifically, we store vertical speed from a slide kick bounce on the other carpet as it's falling down, and that's enough to clear the first glass block. This may be useful for saving time on The Big House in the Sky 0xA, but that's yet to be determined.
Originally, this star was completed in 14 hours (youtu.be/rIYFGYXtNwA). Later, I showed a blueprint for a 9 hour strat (youtu.be/1M1V0lgdHhk). Shortly after, I optimized the blueprint to be a 4 hour strat (youtu.be/TKK9l5DZ6Sg). Later, I TASed that blueprint to confirm it, and it resulted in a 3 hour time (youtu.be/L82raqzqHFg). But recently, Thadortin found a way to reduce the time even further. You see, the final part of the scuttlebug manipulation involves dropping the scuttlebugs into a PU version of the mansion, where they then snap down into the real mansion. During this drop, Mario has to oscillate in and out of the scuttlebugs' home range in order to make the scuttlebugs walk northeast, away from both Mario and their home, and towards the spot where they do the snap. The scuttlebugs walk pretty slowly during this movement, and the longer they take to do this movement, the higher we have to raise them beforehand so that they have enough time to do the movement during the fall. So if we could get the scuttlebugs to move faster, they wouldn't take as long to do the movement, and so we wouldn't have to raise them as high beforehand, and so the scuttlebug raising would end much sooner. Well, that's exactly what Thadortin showed. If we make the scuttlebugs start a lunge, then we move out of their home range so that they target their home, then we re-enter their home range, the scuttlebugs will turn towards their home with lunging speed. So the first part of the scuttlebug movement now uses lunging speed to go faster (seen at 1:49), and then after that the scuttlebugs just go normal speed. This optimization meant that we now only have to raise the scuttlebugs 1 PU up instead of 2 PUs up, and so it saves a whole hour, reducing the total time from 3 hours to 2 hours.
Unabridged Version: youtu.be/n22rFiP-NOQ
Console Verification: twitch.tv/videos/1728213746?t=0h17m46s
Background: Top O’ the Town is the star at the top of Wet-Dry World. Interestingly, it’s exactly 1 unit too high to reach with a rollout, which is why it originally took 1 A press to collect (youtu.be/PFlKKuLAcpo). Later, we discovered the “light chuckya via edge” glitch, which allowed us to collect the star in 0 A presses by having chuckya throw Mario into the star (youtu.be/vc_xUKnw7Z8). Even later, we found that the “light chuckya via edge” glitch wasn’t necessary for getting chuckya over to the star, as we could do it with heavy chuckya (youtu.be/PMsWqiZ5Aa4). However, I believe it would be most consistent to label strats just by what provides the extra height to reach the star, not the setup to get to that point. So I’m retroactively merging the light chuckya and heavy chuckya strats to be just the chuckya strat. Later, we found that chuckya wasn’t necessary at all, as we could use vertical speed conservation (VSC) to reach the star (youtu.be/Z25qV3sGIn0). And after that, we found 2 more alternative strats, which were to use a skeeter (youtu.be/bGnZQXopDqU) and to use a fire (youtu.be/bGnZQXopDqU?t=296). In total, that made 4 unique strats.
But now, I present 2 more alternative strats: using a heave-ho and using a teleporter. I had known for a while that both of these were close to working. In fact, I knew the heave-ho strat would work if we could just achieve a particular HOLP that was super high up (youtu.be/baduCgaRR64). Recently, I re-examined how feasible that HOLP was, and found that it was just BARELY possible to achieve in BitS, by using BCA to construct a goomba staircase. Note that there are 3 heave-hos in WDW, and they’d all turn back towards their home after being thrown high up. That meant each heave-ho works with a different HOLP, since they’d heave Mario at different angles, and you need that angle to be towards the star. Only one of these HOLPs was reachable in BitS, which was the HOLP for the highest heave-ho. But that introduced another problem: we normally use that heave-ho to get up to chuckya’s platform. But if that heave-ho is at the high HOLP, it can’t help us with that. So I found a workaround, which was to rollout off a sign, use a star dance clip to get onto the slope, and then dive grind over to chuckya’s platform.
Once I got the heave-ho strat working, that meant we had 5 different strats. But I realized 6 strats would look so much cooler in terms of filling up the screen elegantly. So with that as my motivation, I worked hard to get the teleporter strat working. I had known already that a teleporter clone released on top of the star block would allow us to teleport directly onto the star block. And that HOLP was definitely achievable in WF. But the issue was that that HOLP placement was incompatible with the way I get chuckya into the tunnel. In contrast, let’s say we currently have the HOLP used for the skeeter clone and fire clone. That HOLP is near the very front edge of the star platform. Then if Mario’s on the bottom of the course, has the hat in hand glitch, and drops chuckya, chuckya appears at Mario due to a failsafe, since that drop would have placed chuckya out of bounds. Specifically, it would have placed him underneath the floor that the blue coin block is on. But if the HOLP is instead above the star block (which is not as near the front edge of the star platform), then dropping chuckya from the bottom of the course would place him inbounds, and so we don’t get the failsafe anymore. And without the failsafe, I couldn’t make chuckya appear at Mario to get chuckya into the tunnel. But that didn’t stop me. I wanted the 6 simultaneous screens so bad that through sheer force of will, I found a workaround. Specifically, I found that we can use the pushable block to clip chuckya through the wall, causing him to fall into the tunnel right at the loading zone. And with that final breakthrough, the 6 strats for collecting Top O’ the Town 0xA were achieved (youtu.be/d7iElkR8rIQ).
Unabridged Video: youtu.be/je0kXSQlAJ8
This video uses some new techniques. Specifically, it uses a chuckya wrong throw to get to the top of BitS faster, which was found by Marbler (youtu.be/qgnUnEwyKqc). And it uses the fire pop strat to clone faster using the fire spitter in BitS, which was found by FanOfNintendo (youtu.be/u51k-CFpBK4).
Background: Top O’ the Town is the star at the top of Wet-Dry World. Interestingly, it’s exactly 1 unit too high to reach with a rollout, which is why it originally took 1 A press to collect (youtu.be/PFlKKuLAcpo). Later, we discovered the “light chuckya via edge” glitch, which allowed us to collect the star in 0 A presses by having chuckya throw Mario into the star (youtu.be/vc_xUKnw7Z8). Even later, we found that the “light chuckya via edge” glitch wasn’t necessary for getting chuckya over to the star, as we could do it with heavy chuckya (youtu.be/PMsWqiZ5Aa4). However, I believe it would be most consistent to label strats just by what provides the extra height to reach the star, not the setup to get to that point. So I’m retroactively merging the light chuckya and heavy chuckya strats to be just the chuckya strat. Later, we found that chuckya wasn’t necessary at all, as we could use vertical speed conservation (VSC) to reach the star (youtu.be/Z25qV3sGIn0). And after that, we found 2 more alternative strats, which were to use a skeeter (youtu.be/bGnZQXopDqU) and to use a fire (youtu.be/bGnZQXopDqU?t=296). In total, that made 4 unique strats.
But now, I present 2 more alternative strats: using a heave-ho and using a teleporter. I had known for a while that both of these were close to working. In fact, I knew the heave-ho strat would work if we could just achieve a particular HOLP that was super high up (youtu.be/baduCgaRR64). Recently, I re-examined how feasible that HOLP was, and found that it was just BARELY possible to achieve in BitS, by using BCA to construct a goomba staircase. Note that there are 3 heave-hos in WDW, and they’d all turn back towards their home after being thrown high up. That meant each heave-ho works with a different HOLP, since they’d heave Mario at different angles, and you need that angle to be towards the star. Only one of these HOLPs was reachable in BitS, which was the HOLP for the highest heave-ho. But that introduced another problem: we normally use that heave-ho to get up to chuckya’s platform. But if that heave-ho is at the high HOLP, it can’t help us with that. So I found a workaround, which was to rollout off a sign, use a star dance clip to get onto the slope, and then dive grind over to chuckya’s platform.
Once I got the heave-ho strat working, that meant we had 5 different strats. But I realized 6 strats would look so much cooler in terms of filling up the screen elegantly. So with that as my motivation, I worked hard to get the teleporter strat working. I had known already that a teleporter clone released on top of the star block would allow us to teleport directly onto the star block. And that HOLP was definitely achievable in WF. But the issue was that that HOLP placement was incompatible with the way I get chuckya into the tunnel. In contrast, let’s say we currently have the HOLP used for the skeeter clone and fire clone. That HOLP is near the very front edge of the star platform. Then if Mario’s on the bottom of the course, has the hat in hand glitch, and drops chuckya, chuckya appears at Mario due to a failsafe, since that drop would have placed chuckya out of bounds. Specifically, it would have placed him underneath the floor that the blue coin block is on. But if the HOLP is instead above the star block (which is not as near the front edge of the star platform), then dropping chuckya from the bottom of the course would place him inbounds, and so we don’t get the failsafe anymore. And without the failsafe, I couldn’t make chuckya appear at Mario to get chuckya into the tunnel. But that didn’t stop me. I wanted the 6 simultaneous screens so bad that through sheer force of will, I found a workaround. Specifically, I found that we can use the pushable block to clip chuckya through the wall, causing him to fall into the tunnel right at the loading zone. And with that final breakthrough, the 6 strats for collecting Top O’ the Town 0xA were achieved (youtu.be/d7iElkR8rIQ).
Unabridged Video: youtu.be/fIieojSW6MA
But now, I present 2 more alternative strats: using a heave-ho (youtu.be/TYwNWQi7yHk) and using a teleporter (youtu.be/isnk6aPZO8w). I had known for a while that both of these were close to working. In fact, I knew the heave-ho strat would work if we could just achieve a particular HOLP that was super high up (youtu.be/baduCgaRR64). Recently, I re-examined how feasible that HOLP was, and found that it was just BARELY possible to achieve in BitS, by using BCA to construct a goomba staircase. Note that there are 3 heave-hos in WDW, and they’d all turn back towards their home after being thrown high up. That meant each heave-ho works with a different HOLP, since they’d heave Mario at different angles, and you need that angle to be towards the star. Only one of these HOLPs was reachable in BitS, which was the HOLP for the highest heave-ho. But that introduced another problem: we normally use that heave-ho to get up to chuckya’s platform. But if that heave-ho is at the high HOLP, it can’t help us with that. So I found a workaround, which was to rollout off a sign, use a star dance clip to get onto the slope, and then dive grind over to chuckya’s platform.
Once I got the heave-ho strat working, that meant we had 5 different strats. But I realized 6 strats would look so much cooler in terms of filling up the screen elegantly. So with that as my motivation, I worked hard to get the teleporter strat working. I had known already that a teleporter clone released on top of the star block would allow us to teleport directly onto the star block. And that HOLP was definitely achievable in WF. But the issue was that that HOLP placement was incompatible with the way I get chuckya into the tunnel. In contrast, let’s say we currently have the HOLP used for the skeeter clone and fire clone. That HOLP is near the very front edge of the star platform. Then if Mario’s on the bottom of the course, has the hat in hand glitch, and drops chuckya, chuckya appears at Mario due to a failsafe, since that drop would have placed chuckya out of bounds. Specifically, it would have placed him underneath the floor that the blue coin block is on. But if the HOLP is instead above the star block (which is not as near the front edge of the star platform), then dropping chuckya from the bottom of the course would place him inbounds, and so we don’t get the failsafe anymore. And without the failsafe, I couldn’t make chuckya appear at Mario to get chuckya into the tunnel. But that didn’t stop me. I wanted the 6 simultaneous screens so bad that through sheer force of will, I found a workaround. Specifically, I found that we can use the pushable block to clip chuckya through the wall, causing him to fall into the tunnel right at the loading zone. And with that final breakthrough, the 6 strats for collecting Top O’ the Town 0xA were achieved.
And so I present this video as a testament to how far we’ve come in terms of SM64 knowledge. Top O’ the Town is placed at the very top of the course, just 1 unit too high to reach, almost as if to taunt us. We originally needed a whole A press just to overcome that 1 unit gap. But now with years of accumulated knowledge (cloning, hat in hand, light chuckya via edge, chuckya wrong throw, behind camera anywhere, hyper speed walking, vertical speed conservation, star dance clip), we’ve not only reduced this star to 0 A presses, but did so in 6 different ways. And so without a doubt, this star has been conquered.
Thanks to clintd7 (fiverr.com/clintd7/make-super-mario-voice) for voicing Mario. And thanks to Kaze (youtube.com/channel/UCuvSqzfO_LV_QzHdmEj84SQ) and his wife Zeina (twitter.com/of_zeina) for making Mario’s bowing animation.
Originally, this star was done in 1 hour by raising the scuttlebug enough to have it drop onto Mario after he climbs up the pole (youtu.be/lT3SnMMLY0w). But just recently, @thadortin6976 brought up a new strat to the community, wherein they showed that a scuttlebug could remain inside the mesh wall (oscillating back and forth) and help Mario get off of the pole from there. Thus, I reTASed the star with this new strat.
Unabridged Version: youtu.be/FaNQzoqKgbU
This video is basically just meant to document how these two strats compare. It's not meant to be an interesting watch throughout, so feel free to skip around and not watch the whole thing.
Note that the old strat requires a very precise trajectory for the tiny piranha plant's coin, meaning very few RNG values work for this. Consequently, I had to spend some time running around in the grass to advance RNG until a workable RNG value was near.
This strat saves about 5 minutes over the previous strat of using a star dance clip (youtu.be/qHK3MKrcJd8). And this 5 minute time save applies to 5 different stars in THI (all main stars except Pluck the Piranha Flower), so this strat saves 25 minutes in a full game ABC run. I also believe that this new strat could be done even faster with better goomba movement. But for this video, I settled for reasonably fast, since I mainly just wanted to prove that it was possible.
Separately, this new strat doesn't use a 100 coin star like the old strat did, meaning this frees up the 100 coin star to be used elsewhere in the level. Unfortunately, there are currently no good uses for it, but at least we know we have it at our disposal in case it helps save an A press on Wiggler's Red Coins, which is currently 2xA.
Here's the history of this strat. Years ago, I had shown that we could get onto the item block using 2 goomba bounces and a misalignment (youtu.be/6tebqdCd1kE). However, an issue with that plan was that the misalignment corner of the item block is on the opposite side from the cliff, and so we can't really reach it from bouncing on enemies that fall straight down from the cliff. Later, I showed that we could get onto the item block without using the misalignment if we used 3 bounces (youtu.be/URie0k2JG5c). After that, Marbler (youtube.com/user/supermarble94) pointed out to me that item block walls are so vertically thin that the floor hitbox is available to access just under the upper wall hitbox. Thus, I demonstrated that 2 bounces were sufficient for getting onto the item block from the side nearer the cliff (youtu.be/4LFQd4uvtM0). Later, after much research and testing, I put together a blueprint for how we might achieve this in practice (youtu.be/-t9mbd9q9Wc). And now, I've finally executed that blueprint, proving once and for all that it's possible.
The strat works as follows. First, I lure the two goombas towards each other so that they can interact. I make the west-goomba get stuck, and then I have the east-goomba repeatedly move the west-goomba more to the right. Then I have the two goombas do a double goomba escort so that they walk south-east. Once they're near the edge, I have the koopa walk into the west-goomba to push him off. Meanwhile, the east-goomba jumps in place until he falls off as well. Finally, Mario bounces on both goombas, gets onto the item block, and then reaches the mainland.
Achieving this strat took a lot of brute forcing. And not just completely random brute forcing, but several rounds of strategically focused brute forcing. First, I manually got the goombas to walk towards each other. Then I brute forced dust frames until I got the west-goomba stuck. Next I brute forced dust frames until the east-goomba pushed the west-goomba significantly to the right. I repeated that several times until the west-goomba was in the right position. Then I brute forced dust frames until the goombas did a double goomba escort. That was all fine and dandy, but the real issue was that I ALSO needed the koopa to be in the right position at the right time. So I brute forced koopa pathing until it found one that could make the koopa push off the west-goomba. So then I brute forced dust frames again, this time to redo the exact goomba escort movement while simultaneously getting the koopa to do the movement that was found earlier. Finally, I manually TASed the last bit, where I make the east-goomba repeatedly jump, and then have Mario bounce on the goombas to get up. Overall, this took about a week of non-stop coding.
Originally, this star was completed in 14 hours (youtu.be/rIYFGYXtNwA). Later, I showed a blueprint for a 9 hour strat (youtu.be/1M1V0lgdHhk). Shortly after, I optimized the blueprint to be a 4 hour strat (youtu.be/TKK9l5DZ6Sg). And now, I’ve finally TASed that blueprint just to confirm that it works. In fact, I TASed it more optimally than originally planned, and so it resulted in a final time of 3 hours.
Here’s an overview of the route. First, I transport the scuttlebugs to the front of the mansion. Then I raise them by first letting them lunge at me so that they get vertical speed, and then reactivating them for just the upwards portion of their lunge trajectory. And I repeat this many times. Note that I can have them lunge at Mario (which is fast) or back towards their home (which is slower, but necessary later). If a scuttlebug touches a wall while in a VPU, it snaps to the main map in that relative spot. To avoid this happening prematurely, I move the scuttlebugs to outside of the mansion for when they’re at the height of the VPU mansions. Also, when the scuttlebugs cross over to a higher VPU, they no longer have a floor triangle below them and so are considered out of bounds, which prevents them from moving laterally. And since they keep running into out of bounds, they rotate back and forth continuously. When I first experienced this phenomenon, I called it their rogue state, since they no longer exhibit their normal behavior. Luckily though, we can still raise them while they’re in this state. Anyway, once the scuttlebugs are high enough, I let them drop and manipulate them to walk towards the desired spot. They then touch a wall that snaps them into the main map’s mansion. From there, I separate their heights, bounce on them to get up, and then collect the star.
Note that I show several screens so that you can follow along more easily:
➤ Top left screen: This is the normal view of the game.
➤ Top right screen: This is the game viewed from a hacked camera that watches the scuttlebugs. It also prints the scuttlebugs’ heights on the top left.
➤ Bottom left screen: This is a map of Mario, zoomed way in so that you can see the unit grid. The yellow area on the bottom represents two specific floor triangles that activate the outside area of the level. So when Mario is in the yellow area, the scuttlebugs activate and can move around. When Mario is outside of the yellow area, the scuttlebugs deactivate and can’t move around. The blue area on the right represents the home range of the scuttlebugs, which is a cylinder around their homes. This cylinder has a radius of 1000 and extends infinitely up and down. If Mario is in the blue area, the scuttlebugs will turn towards him and lunge. If Mario is outside of the blue area, the scuttlebugs will turn towards their home. For fun, I also added Mario’s path as a blue line, which will allow you to see how he moves over time. His movement was brute forced, so it makes a fairly systematic pattern. Also, since Mario drifts over time, you’ll be able to see when corrections are done to keep him roughly in place.
➤ Bottom right screen: This is a map of the scuttlebugs, which will occasionally pan around in order to show the most optimal view. This screen shows the same yellow triangles and blue cylinder as the previous screen. As for the scuttlebugs, I’ve added additional graphics to show their internal state. The yellow arrow represents the scuttlebug’s facing angle. The green arrow represents the scuttlebug’s target angle. The blue meter shows the remaining time on the scuttlebug’s lunge. We have to wait for this meter to run out each iteration before the scuttlebug can turn towards Mario and lunge at him again. And finally, I’ve made the scuttlebugs’ eyes turn pink in proportion to how much positive vertical speed they have. So when a scuttlebug starts its lunge, its eyes will turn pink to indicate that it now has positive vertical speed. This pink eye effect fades away as the scuttlebug activates and lunges, since its vertical speed decreases to 0 as it reaches the peak of its lunge trajectory. So you can think of the pink eyes as the scuttlebug being “charged” with positive vertical speed, which is then released to move upwards.
➤ Far right screen: This is a sideways map of the scuttlebugs, zoomed way out so that you can see the VPU grid. Specifically, you can see the mansion in the main map, the mansion 1 VPU up, and the mansion 2 VPUs up.
Unabridged Version: youtu.be/h8WfimawAOI
Console Verification: twitch.tv/videos/1676468966?t=0h20m56s
Originally, this star was completed in 14 hours (youtu.be/rIYFGYXtNwA). Later, I showed a blueprint for a 9 hour strat (youtu.be/1M1V0lgdHhk). Shortly after, I optimized the blueprint to be a 4 hour strat (youtu.be/TKK9l5DZ6Sg). And now, I’ve finally TASed that blueprint just to confirm that it works. In fact, I TASed it more optimally than originally planned, and so it resulted in a final time of 3 hours.
Here’s an overview of the route. First, I transport the scuttlebugs to the front of the mansion. Then I raise them by first letting them lunge at me so that they get vertical speed, and then reactivating them for just the upwards portion of their lunge trajectory. And I repeat this many times. Note that I can have them lunge at Mario (which is fast) or back towards their home (which is slower, but necessary later). If a scuttlebug touches a wall while in a VPU, it snaps to the main map in that relative spot. To avoid this happening prematurely, I move the scuttlebugs to outside of the mansion for when they’re at the height of the VPU mansions. Also, when the scuttlebugs cross over to a higher VPU, they no longer have a floor triangle below them and so are considered out of bounds, which prevents them from moving laterally. And since they keep running into out of bounds, they rotate back and forth continuously. When I first experienced this phenomenon, I called it their rogue state, since they no longer exhibit their normal behavior. Luckily though, we can still raise them while they’re in this state. Anyway, once the scuttlebugs are high enough, I let them drop and manipulate them to walk towards the desired spot. They then touch a wall that snaps them into the main map’s mansion. From there, I separate their heights, bounce on them to get up, and then collect the star.
Note that I show several screens so that you can follow along more easily:
➤ Top left screen: This is the normal view of the game.
➤ Top right screen: This is the game viewed from a hacked camera that watches the scuttlebugs. It also prints the scuttlebugs’ heights on the top left.
➤ Bottom left screen: This is a map of Mario, zoomed way in so that you can see the unit grid. The yellow area on the bottom represents two specific floor triangles that activate the outside area of the level. So when Mario is in the yellow area, the scuttlebugs activate and can move around. When Mario is outside of the yellow area, the scuttlebugs deactivate and can’t move around. The blue area on the right represents the home range of the scuttlebugs, which is a cylinder around their homes. This cylinder has a radius of 1000 and extends infinitely up and down. If Mario is in the blue area, the scuttlebugs will turn towards him and lunge. If Mario is outside of the blue area, the scuttlebugs will turn towards their home. For fun, I also added Mario’s path as a blue line, which will allow you to see how he moves over time. His movement was brute forced, so it makes a fairly systematic pattern. Also, since Mario drifts over time, you’ll be able to see when corrections are done to keep him roughly in place.
➤ Bottom right screen: This is a map of the scuttlebugs, which will occasionally pan around in order to show the most optimal view. This screen shows the same yellow triangles and blue cylinder as the previous screen. As for the scuttlebugs, I’ve added additional graphics to show their internal state. The yellow arrow represents the scuttlebug’s facing angle. The green arrow represents the scuttlebug’s target angle. The blue meter shows the remaining time on the scuttlebug’s lunge. We have to wait for this meter to run out each iteration before the scuttlebug can turn towards Mario and lunge at him again. And finally, I’ve made the scuttlebugs’ eyes turn pink in proportion to how much positive vertical speed they have. So when a scuttlebug starts its lunge, its eyes will turn pink to indicate that it now has positive vertical speed. This pink eye effect fades away as the scuttlebug activates and lunges, since its vertical speed decreases to 0 as it reaches the peak of its lunge trajectory. So you can think of the pink eyes as the scuttlebug being “charged” with positive vertical speed, which is then released to move upwards.
➤ Far right screen: This is a sideways map of the scuttlebugs, zoomed way out so that you can see the VPU grid. Specifically, you can see the mansion in the main map, the mansion 1 VPU up, and the mansion 2 VPUs up.
Abridged Version: youtu.be/L82raqzqHFg
Console Verification: twitch.tv/videos/1676468966?t=0h20m56s
Originally, this star was done in 13 hours by raising the scuttlebugs enough to snap them into the bookshelf room (youtu.be/OLmxy5cYfdk). Later, I did it in 3 hours by bouncing on the scuttlebugs and going into a misalignment with the crazy box (youtu.be/xd9OFhnyiP8). And now, I show an even faster strat, in which I bounce on the scuttlebugs with the crazy box and use a star dance clip to get onto the roof. This strat is similar to the previous strat, except the scuttlebug raising is significantly faster, since it's now done from a single location instead of traveling through doors each iteration.
This video is a follow-up to my previous video in which I showed this strat as a theoretical idea (youtu.be/bqH66rUT_LA). The critical issue at the time was that Mario faces towards the camera after the star dance clip, which normally means he'd be facing downhill. Facing downhill causes Mario to enter into a butt slide instead of a stomach slide. Butt slides unavoidably fall off the roof, whereas stomach slides allow Mario to dive as soon as he slides off, letting him get back onto the roof, start frame walking, and get all the way up. So the question became how could we position the camera so that Mario ended up facing uphill on the roof? Ultimately, @brianpso was the one to suggest the solution, which was to land on the roof's non-cardinal edge on the left while having the camera be south-west of it. And so that's what I ended up doing.
Side Note: This is the first time I've used the technique to ascend the mansion lobby's steps 0xA after the steps have already been raised. This was a discovery made by ds273 a year ago (youtu.be/CqlN_0S1ESY). So thanks to that, I was able to route the 100 coins more efficiently.
Unabridged Version: youtu.be/x3GZALcuRSg
Console Verification: twitch.tv/videos/1663474220?t=0h13m55s
If you would like to see a longer version of the final visual (the one with the 14 simultaneous screens), I've uploaded a 10 minute version here: youtu.be/AeJOi3rOVKY
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
It took many hours even to get to this point, since enemy manipulation is so fickle, as small changes in initial conditions lead to vastly different end results. Consequently, it's hard to make assumptions about what's possible and not possible to get the enemies to do. The goomba escort was found by my brute forcing, since I tried and failed to set one up manually. But that alone wasn't enough to make the strat work, since I couldn't find a way to get both goombas to fall off. Eventually, I realized that the koopa may come in use, and that ended up being the final piece of the puzzle. The exact maneuver that the koopa does is so precise that moving it just 1 unit in any direction leads to different target angles during the goomba interaction, causing the strat to fail. It's a miracle that I managed to find this maneuver myself manually just by testing so many positions and angles of the koopa.
Anyway, I just thought I'd post this video to keep everyone updated on my progress. The next step is to achieve this for real with no hacked setups. This will necessarily involve brute forcing, because no mere mortal could perform this strat on their own. I don't know how long this process will take or if it will end up successful at all, but let's hope!
This TAS was possible thanks to the following people:
➤ Marbler, for creating the plan and TASing the segments above the lower squish cancel ground pound chain. (youtube.com/user/supermarble94)
➤ myself, for TASing the segments below the lower squish cancel ground pound chain.
➤ Sjmhrp, for TASing the lower squish cancel ground pound chains. (youtube.com/channel/UCXaMUq0xqL6N-nLDzL6o0gQ)
➤ ds273, for figuring out how to get onto the thwomp without a star dance clip. (youtube.com/channel/UCKu5LetC-MVt03Gs2Ugx9Xg)
➤ fifdspence, for TASing the beginning of CCM. (youtube.com/channel/UCXubFNfZaMVLsTZzKcgnHOQ)
This video is an improvement from the previous strat that did this in 1 A press (youtu.be/_6bVGoGDchU). Since then, Marbler worked out a very complex plan to do the whole thing in 0 A presses. This plan is too intricate to explain every detail here, but the main theme is that we ascend the level, place the HOLP, drop back down, remotely throw clones to that HOLP, then repeat. We use explosion clones to induce and preserve hitstun, fire clones to enable Mario to do a midair fire bounce, and coin clones to heal HP. Additionally, we repeatedly drop bob-ombs out of bounds so that they snap back to Mario as soon as he goes close to them again. This allows us to ascend the level and then summon the bob-omb to where we are. If you want to see the steps of the entire plan, here's an image of it: imgur.com/ZlnIgvw
Note that I've taken some steps to aid in viewer understanding of what's going on. These include:
(1) Making certain walls temporarily see-through.
(2) Adding auxiliary screens when Mario goes off camera.
(3) On the auxiliary screen that shows Mario, making Mario have a vanish cap during the frames on which he's considered off-camera (when the HOLP doesn't update).
Unabridged Version: youtu.be/P6KKbAjCjpw
Console Verification: twitch.tv/videos/1651820179
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
Originally, I had showed that we could get onto the item block using 2 goomba bounces and a misalignment (youtu.be/6tebqdCd1kE). However, an issue with that plan was that the misalignment corner of the item block is on the opposite side from the cliff, and so we can't really reach it from bouncing on enemies that fall straight down from the cliff. Later, I showed that we could get onto the item block without using the misalignment if we used 3 bounces (youtu.be/URie0k2JG5c). After that, Marbler (youtube.com/user/supermarble94) pointed out to me that item block walls are so vertically thin that the floor hitbox is available to access just under the upper wall hitbox. Thus, I re-examined the situation, and as it turns out, 2 bounces are sufficient for getting onto the item block from the side nearer the cliff. In relative terms, setting up 2 bounces should be much easier than setting up 3 bounces, but in absolute terms, it's still questionable whether this is possible to set up, given that one of the goombas won't naturally walk this far away from its home. So the next question is whether we can use a goomba escort to make it possible.
This is a follow-up to my previous video that also looked into this idea (youtu.be/6tebqdCd1kE). In that video, I demonstrated that 2 goomba bounces would let us get onto the item block using a misalignment. However, an issue with that plan was that the misalignment corner of the item block is on the opposite side from the cliff, and so we can't really reach it from bouncing on enemies that fall straight down from the cliff. This newest video solves that problem by adding a third bounce from the koopa, that way we can get onto the item block from any side.
Note that getting all 3 enemies to fall off (and with good timings) was incredibly difficult. It took hours to get, and that's with just hacking them to be at ideal locations. Getting this level of precision without hacks AND factoring in that the enemies don't naturally walk to these positions means getting this in practice would be insanely difficult.
A while ago, Sidney (youtube.com/channel/UCla5Eru3DbPgxz6LwSBOyaw) figured out that touching a heart with too much speed would crash the game. That's is because of this line of code:
o.oAngleVelYaw = (s32)(200.0f * gMarioStates[0].forwardVel) + 1000;
If Mario's forward velocity is more than 10.7M, then it tries casting a super large float value to an integer, but this float value is greater than the biggest possible integer, and so the game crashes. Recently, endiment brought up this crash again, and so I decided to make it happen.
It would have been relatively simple to just build up PU speed, travel to PUs, and then return to the main map inside of the heart. That would crash the game, but the camera wouldn't be in the right place to see it, which I felt wouldn't have been satisfying. So I developed a more intricate route where I use a hands-free teleported bob-omb to move Mario around in the main map while he maintains PU speed. This way, the camera could comfortably watch Mario touch the heart.
And so, the route I developed was this. First, I set up a hands-free teleported bob-omb. Then I build up PU speed, travel to PUs, and return to the main map near the bob-omb. The bob-omb snaps to Mario and allows him to move around. Then I go as near the heart as I can, given that I can't increase my height. From there, I travel to PUs again, and return higher up, but still near enough to the bob-omb for it to snap to Mario. Then I wait until the camera realigns itself, snap down to the heart's floor using a jump, and then touch the heart.
Note that each jump that Mario does decreases his speed by 20%. And often I have to decrease his speed by even more to achieve the necessary speed for the next PU movement. So a big challenge of this TAS was figuring out a PU route that could conserve at least 10.7M speed to the heart, given that Mario's speed continuously decreases throughout the PU movement. Thus, I programmed a brute forcer to figure out the PU movement for me. After leaving it on overnight, it found a route that worked. If you're curious, you can see my code here: pastebin.com/A3UwqNkA
Console Verification: twitch.tv/videos/1598075940
The original strat for this was 13 hours (youtu.be/OLmxy5cYfdk), which involved moving the scuttlebugs into the bookshelf room. Later, I showed an improvement that did this in 3 hours (youtu.be/xd9OFhnyiP8), which involved bouncing on the scuttlebugs as they fell down in order to get onto the roof using a misalignment. The main suboptimal aspect of that strat is that raising the scuttlebugs involves travelling through some doors in the mansion, making it slow. If we could instead raise the scuttlebugs solely within the foyer, then it's much faster (about 1 hour). However, this means that the scuttlebugs must be nearer to the front door of the mansion, and so not close to the misalignment. Without the misalignment though, we can't land on the roof... unless we use a star dance clip.
By using a star dance clip, we can ascend a tiny bit higher, allowing Mario to get onto the roof of the mansion. However, part of doing a star dance is Mario facing directly towards the camera, causing Mario to face downhill and do a butt slide as soon as the star dance is done. However, butt sliding isn't good here, because it results in Mario sliding off with no ability to do anything else. On the other hand, if we were able to face uphill and do a stomach slide when the star dance ended, then we'd have access to diving once Mario slid off the roof, which usually lets us grind on the edge and ultimately frame walk up. I've looked into various ways to get around this, but none of them have worked:
(1) I tried turning the camera so that Mario faces uphill on the roof. However, the camera is blocked by the mansion's wall, and so I wasn't able to get the camera to be north of Mario when he faces it.
(2) I tried locking the camera in place. However, the camera doesn't remain locked during the star-appearing cutscene.
(3) I tried butt sliding into the platform that Big Boo is on. While Mario can bonk once on this and remain on the roof during the bonk, he then slides off right afterwards.
(4) I tried having Big Boo come over and knock into Mario to change his angle. However, there doesn't appear to be enough time for Big Boo to come all the way over.
This TAS was possible thanks to the following people:
➤ Marbler, for fleshing out the plan and TASing the fast bully battery. (youtube.com/user/supermarble94)
➤ myself, for doing the slow bully battery using a brute forcer and TASing the PU movement.
➤ MasterKush, for providing me tools to brute force SM64 in C#.
➤ fifdspence, for TASing the section from entering LLL to getting up the lava fall. (youtube.com/channel/UCXubFNfZaMVLsTZzKcgnHOQ)
➤ Iwer Sonsch, for optimizing the initial slide kick and grind. (youtube.com/channel/UCnJKlalNQWIco1DS0Uw_XXw)
➤ DeRockProject, for explaining bully movement to us. (youtube.com/channel/UC6dj_9jki7Zbuo29CT7i7gA)
➤ Tyler Kehne, for making a video of bully battery. (youtube.com/c/TylerKehne)
➤ bad_boot, for doing some preliminary investigation into this strat. (youtube.com/channel/UC280b7IZCFnzCR0RCwi6JYg)
This video is an improvement from the previous strat that did this in 1 A press (youtu.be/UohcfHOTyvs). Since then, the community discovered bully battery, squish cancels, and PU rotational displacement. With these glitches known, bad_boot and Tyler Kehne did some preliminary investigation and concluded that it may be possible to use these to get Elevator Tour in the Volcano 0xA. However, the specifics of it were yet to be fleshed out. It wasn't until much later that Marbler got interested in the problem, and figured out many details. However, a remaining problem was that the strat required ~20 hours of slow bully battery, which couldn't use repeated inputs. So I asked around, and MasterKush gave me some tools to brute force SM64 in C#. I used this to create a brute forcer that could automate bully battery. After about a week, the brute forcer finished it. From there, Marbler TASed the fast bully battery, and then I did the PU movement.
Here's what happens in the video. First, we enter the volcano and move the bully to the bottom level. We have the bully enter lava to start its death animation, which lowers it into out of bounds below the floor, and then we knock into it to interrupt its death animation. Consequently, the bully ends up oscillating back and forth between two out of bounds locations, since neither are valid places to be. Next, we move the bully to a specific position, and then perform slow bully battery. This involves repeatedly knocking into the bully to slowly increase its speed. Once it has sufficient speed, we perform fast bully battery. This involves Mario getting knockback from the bully to take on its speed, cancelling the knockback speed cap by doing a squish cancel on the elevator, and then transferring that speed back to the bully via another collision. This has the effect of massively increasing the bully's speed, since the bully's speed is tripled before transferring to Mario. After enough fast bully batteries, we have enough speed to do PU rotational displacement, in which we move from the elevator on the main map to the elevator in a PU. By doing this, we receive the rotational displacement from the elevator, whose pivot is still in the main map, and so the displacement is magnified by many PUs. The result is that Mario ends up very high up in a PU. From there, we do PU movement back to the main map onto the star platform, and then collect the star.
Console Verification: twitch.tv/videos/1581822267
Unabridged Video Parts:
Part 1/3: youtu.be/b8Y4KkK0Wzs
Part 2/3: youtu.be/XOvbjk8Sb_A
Part 3/3: youtu.be/wmVfn-YmRe4
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
To find this scenario, I simulated 2 goombas with code until one of them walked unnaturally far away from its home. This was the result.
Note that this doesn't help us collect the JRB chest star in 0 A presses. This is because even if one of the goombas was at the star, it would unload if Mario went over there himself, since the goombas are only loaded when Mario is near the goomba spawner.
Note that at the end of the video, one of the goombas deactivates because it moves too far away from Mario. This is different from the goomba unloading from Mario being too far away from the goomba spawner.
The dream is to drop off of the pole, bounce on both goombas, and land on the upper platform. This would allow for a speedy pole dismount that doesn't rely on a preset HOLP. Before now, there were 2 issues with this plan. Firstly, only one goomba would voluntarily walk to the pole, since the other goomba was too far away. Secondly, even bouncing on both goombas doesn't seem to go far enough to land on the upper platform (youtu.be/GJ1rcMMiyqw?t=372). With the demonstration in this video, issue #1 is now resolved since the far goomba can now reach the pole, meaning issue #2 is all that remains. Unfortunately, even when testing with ideal placement of the goombas, I haven't been able to move far enough for a double bounce to land up top. Nevertheless, there's another possibility. If we can get one of the goombas to move close enough to Mario to give him knockback, then maybe he'd be able to bounce on the other goomba and get up, since knockback gives Mario significant horizontal speed. However, so far I've been unable to find a way to make this happen.
I'm still not sure how the goomba escort works exactly. Normally, a goomba will turn around once it reaches the edge of its home range. However, by having the other goomba walk beside it and continuously bump into it, the goomba's target angle will oscillate, leading to it walking farther away from its home. I discovered this by just testing random orientations of the goombas until something interesting happened.
On the map:
- the blue circles are the goombas' home ranges
- the yellow arrows are the goombas' facing angles
- the green arrows are the goombas' target angles
The current strat for Snowman's Big Head 0xA involves using the shell to climb most of the way up the snowman, and then using the fly guy to get onto the head (youtu.be/0LgUMkw51_4). Marbler (youtube.com/user/supermarble94) was theorizing that maybe we could collect the star 0xA without the shell, which could save time. So I investigated whether we could climb the snowman without the shell, and it turns out we can. However, it's quite slow due to having to punch forward during the VSC section, so I'm doubtful it would save time in the end. Nevertheless, I'm still documenting it for posterity.
The original 0xA strat for this star took 14 hours (youtu.be/cdM-h1Ge9xk). Later, we realized we could collect this star using the overflow water level (youtu.be/-KLYv86Ntl4), which would take 2 hours (youtu.be/zjdkGWJcDVw). Even later, Iwer helped reduce it to 14 minutes (youtu.be/QHqgy6EwBCA) by (1) figuring out how to achieve 12+ swimming speed, (2) figuring out how to collect the red coin in the alcove without having to destroy the box, and (3) figuring out that we can use a skeeter to get onto the grey building from the top of the wall. But now, we've reached this star's final form - collecting it in less than 5 minutes! This is possible due to 2 new strats. Firstly, Iwer figured out that by placing a skeeter on top of the brown building, we can use it to collect the red coin, which saves a trip to the town. Secondly, Iwer suggested that conserving more speed after throwing the box clone would be super helpful for reducing the total time. Thus, I looked into it and managed to conserve 16 speed, which is maintained for the rest of the swimming. This not only saves another trip to the town, but made all the swimming faster overall.
Conserving 16 speed after throwing the box clone was no simple feat. To fully understand this, let's lay out some groundwork. Mario can swim using just the B button, but this is pretty slow, as it only has 7 speed. However, it has an interesting property in that it can maintain up to 16 speed if you *already have* that much speed. Chuckya throwing Mario when Mario is in the water gives us 40 speed, and so we can conserve 16 of it when B swimming. But then we need to throw a box clone, which involves grabbing chuckya, oscillating between the two sides of the loading zone to clone the box, and then throwing the box clone. If we delay the throw, our speed will decrease towards 0 at 2 per frame, but this gives us extra frames to work with during the oscillation. To put it another way, if we throw the clone on the first possible frame, then we maintain all 16 speed. If we delay it by 1 frame, then our speed will fall to 14. So we can delay the throw by up to 7 frames, meaning our final speed will be 2. Note that we can't delay it any further or we'd end up with 0 speed, and then we couldn't move forwards to oscillate anymore. So if we wanted to maintain all 16 speed, we'd only have 17 frames to work with during the oscillation. If we allow our speed to fall to 2, then we get access to 7 additional frames, meaning we have 24 frames to work with during the oscillation.
Previously, I had used all 24 frames during the oscillation, because that's all that my brute forcer had found. But because I wanted to reduce this star's time as much as possible, I searched for a way to do the oscillation in only 17 frames, which would allow us to conserve all 16 speed for the rest of the swimming. To do this, I reworked my brute forcer. Previously, my brute forcer tested randomly generated oscillation sequences, i.e. sequences of how long to spend on each side of the loading zone and how many bubbles would spawn on each side. So to be more thorough, I changed it to test ALL possible oscillation sequences. This was made easier because there are less possibilities for 17 frames than for 24 frames. Unfortunately, my brute forcer didn't find any solutions. Thus, I then considered unloading certain objects in the level, which would change the object slots, potentially allowing for a solution to be found. I picked 20 potential things in the level we could unload easily (e.g. skeeters, secrets, boxes, blue coins), and then retested my brute forcer for each combination of these. However, this would have been way too many possibilities to test, so I optimized it by capping the number of things to unload at 5. This resulted in several solutions being found, and so then I picked the one that was the fastest. Specifically, this was unloading the blue coins and the skeeter near them, which you can see me do in the video. And after finding that solution, performing it in practice was relatively simple.
The other new strat was manipulating the second skeeter onto the brown building. This wasn't too hard, given that we can move skeeters away from their home by deactivating them during a lunge. For viewer convenience, I show auxiliary screens during the skeeter manipulation. To clarify the items on the map:
- the cyan and red circles are the activation radii of the skeeters
- the yellow circles are the areas where the skeeters are considered close to their homes (when inside, they go a random direction, but when outside, they only go towards their home)
- the blue arrows are the skeeters' target angles
- the yellow arrows are the skeeters' facing angles
youtu.be/98EpPsaAF_k
We collect the star Stomp on the Thwomp in TTC using 1 A press. This is TAS.
This is one of three ABC improvements being released today, which are:
(1) TTC The Pit and the Pendulums & Re-Enter 0xA: youtu.be/88dOvcz_dQk
(2) TTC Timed Jumps on Moving Bars 0xA: youtu.be/MftULlmg7gE
(3) TTC Stomp on the Thwomp 1xA: youtu.be/_6bVGoGDchU
Together, these improvements save 3 A presses (1 from each strat), thereby reducing the total A press count for collecting 120 stars from 19 to 16.
Credit to the following people:
➤ ds273, for coming up with most of the plan: youtu.be/ePvULgrXAOw
➤ Sjmhrp, for figuring out the squish cancel ground pound chain part of the plan and TASing those parts: youtu.be/01obxXOkQ4g
➤ Marbler, for fine-tuning parts of the plan, organizing all of the steps, and helping with the TASing: youtu.be/C_7a-D014wE
➤ DeRockProject, for creating the trailer and helping with the TASing: youtu.be/bvwyR-tBC28
➤ fifdspence, for TASing the beginning of TTM: youtu.be/2ur4AkXtENM
This video is an improvement from the previous strat that did this in 2 A presses (youtu.be/3WLlQ2alTK8). Since then, ds273 came up with a complex plan that would save the A press needed to get past the pole. Over time, a lot of the pieces of the plan were confirmed to work and even improved upon. This includes the finding of Behind Camera Anywhere, which is a HOLP preservation technique that works by having Mario go behind the camera (youtu.be/C38He-OUAYk). But one piece of the plan remained seemingly impossible to pull off, which was performing a squish cancel ground pound chain using the pendulum to go from the lower walkway to behind the cage. Fortunately, Sjmhrp entered the scene, and began working on this task. Over an 8 month period, she put over 1000 working hours into various programs, which ran 24/7 during this period. After 10k+ computational hours, millions of pendulum angles searched, billions of permutations checked, and 1000+ lines of code across 3 languages (Java, Python, Lua), a solution was found (youtu.be/01obxXOkQ4g). And with that last piece in place, we created TASes of the 3 improvements. If you're interested, you can read more about Sjmhrp's work here: pastebin.com/3fHnBX3Q
The TAS itself is composed of many steps, which I can't even keep straight in my head all at once. Nevertheless, here's the blueprint that we used during the TAS creation, which shows each of the steps and how they overlap between the 3 strats: https://i.imgur.com/DMC9g3P.png
Note that I've taken some steps to aid in viewer understanding of what's going on. These include:
(1) Making certain walls temporarily see-through.
(2) Adding auxiliary screens when Mario goes off camera.
(3) On the auxiliary screen that shows Mario, making Mario have a vanish cap during the frames on which he's considered off-camera (when the HOLP doesn't update).
Note that when recording the footage for these new saves, I saved time and effort by reusing footage between stars when the inputs and visuals between the stars were the same. So in case you observe any slight irregularities in the saved coin count or stars shown collected on the pause menu, that's why.
Unabridged Version: youtu.be/p-L1-Txl2r0
Console Verification: twitch.tv/videos/1523203289?t=6h57m31s
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
This is one of three ABC improvements being released today, which are:
(1) TTC The Pit and the Pendulums & Re-Enter 0xA: youtu.be/88dOvcz_dQk
(2) TTC Timed Jumps on Moving Bars 0xA: youtu.be/MftULlmg7gE
(3) TTC Stomp on the Thwomp 1xA: youtu.be/_6bVGoGDchU
Together, these improvements save 3 A presses (1 from each strat), thereby reducing the total A press count for collecting 120 stars from 19 to 16.
Credit to the following people:
➤ ds273, for coming up with most of the plan: youtu.be/ePvULgrXAOw
➤ Sjmhrp, for figuring out the squish cancel ground pound chain part of the plan and TASing those parts: youtu.be/01obxXOkQ4g
➤ Marbler, for fine-tuning parts of the plan, organizing all of the steps, and helping with the TASing: youtu.be/C_7a-D014wE
➤ DeRockProject, for creating the trailer and helping with the TASing: youtu.be/bvwyR-tBC28
➤ fifdspence, for TASing the beginning of TTM: youtu.be/2ur4AkXtENM
This video is an improvement from the previous strat that did this in 1 A press (youtu.be/FMA-zEznvMo). Since then, ds273 came up with a complex plan that would save the A press needed to get past the pole. Over time, a lot of the pieces of the plan were confirmed to work and even improved upon. This includes the finding of Behind Camera Anywhere, which is a HOLP preservation technique that works by having Mario go behind the camera (youtu.be/C38He-OUAYk). But one piece of the plan remained seemingly impossible to pull off, which was performing a squish cancel ground pound chain using the pendulum to go from the lower walkway to behind the cage. Fortunately, Sjmhrp entered the scene, and began working on this task. Over an 8 month period, she put over 1000 working hours into various programs, which ran 24/7 during this period. After 10k+ computational hours, millions of pendulum angles searched, billions of permutations checked, and 1000+ lines of code across 3 languages (Java, Python, Lua), a solution was found (youtu.be/01obxXOkQ4g). And with that last piece in place, we created TASes of the 3 improvements. If you're interested, you can read more about Sjmhrp's work here: pastebin.com/3fHnBX3Q
The TAS itself is composed of many steps, which I can't even keep straight in my head all at once. Nevertheless, here's the blueprint that we used during the TAS creation, which shows each of the steps and how they overlap between the 3 strats: https://i.imgur.com/DMC9g3P.png
Note that I've taken some steps to aid in viewer understanding of what's going on. These include:
(1) Making certain walls temporarily see-through.
(2) Adding auxiliary screens when Mario goes off camera.
(3) On the auxiliary screen that shows Mario, making Mario have a vanish cap during the frames on which he's considered off-camera (when the HOLP doesn't update).
Note that when recording the footage for these new saves, I saved time and effort by reusing footage between stars when the inputs and visuals between the stars were the same. So in case you observe any slight irregularities in the saved coin count or stars shown collected on the pause menu, that's why.
Unabridged Version: youtu.be/CKNoJOcKG8A
Console Verification: twitch.tv/videos/1523203289?t=4h3m18s
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
This is one of three ABC improvements being released today, which are:
(1) TTC The Pit and the Pendulums & Re-Enter 0xA: youtu.be/88dOvcz_dQk
(2) TTC Timed Jumps on Moving Bars 0xA: youtu.be/MftULlmg7gE
(3) TTC Stomp on the Thwomp 1xA: youtu.be/_6bVGoGDchU
Together, these improvements save 3 A presses (1 from each strat), thereby reducing the total A press count for collecting 120 stars from 19 to 16.
Credit to the following people:
➤ ds273, for coming up with most of the plan: youtu.be/ePvULgrXAOw
➤ Sjmhrp, for figuring out the squish cancel ground pound chain part of the plan and TASing those parts: youtu.be/01obxXOkQ4g
➤ Marbler, for fine-tuning parts of the plan, organizing all of the steps, and helping with the TASing: youtu.be/C_7a-D014wE
➤ DeRockProject, for creating the trailer and helping with the TASing: youtu.be/bvwyR-tBC28
➤ fifdspence, for TASing the beginning of TTM: youtu.be/2ur4AkXtENM
This video is an improvement from the previous strat that did this in 1 A press (youtu.be/3UW5KSvtBcU). Since then, ds273 came up with a complex plan that would save the A press needed to get past the pole. Over time, a lot of the pieces of the plan were confirmed to work and even improved upon. This includes the finding of Behind Camera Anywhere, which is a HOLP preservation technique that works by having Mario go behind the camera (youtu.be/C38He-OUAYk). But one piece of the plan remained seemingly impossible to pull off, which was performing a squish cancel ground pound chain using the pendulum to go from the lower walkway to behind the cage. Fortunately, Sjmhrp entered the scene, and began working on this task. Over an 8 month period, she put over 1000 working hours into various programs, which ran 24/7 during this period. After 10k+ computational hours, millions of pendulum angles searched, billions of permutations checked, and 1000+ lines of code across 3 languages (Java, Python, Lua), a solution was found (youtu.be/01obxXOkQ4g). And with that last piece in place, we created TASes of the 3 improvements. If you're interested, you can read more about Sjmhrp's work here: pastebin.com/3fHnBX3Q
The TAS itself is composed of many steps, which I can't even keep straight in my head all at once. Nevertheless, here's the blueprint that we used during the TAS creation, which shows each of the steps and how they overlap between the 3 strats: https://i.imgur.com/DMC9g3P.png
Note that I've taken some steps to aid in viewer understanding of what's going on. These include:
(1) Making certain walls temporarily see-through.
(2) Adding auxiliary screens when Mario goes off camera.
(3) On the auxiliary screen that shows Mario, making Mario have a vanish cap during the frames on which he's considered off-camera (when the HOLP doesn't update).
Note that when recording the footage for these new saves, I saved time and effort by reusing footage between stars when the inputs and visuals between the stars were the same. So in case you observe any slight irregularities in the saved coin count or stars shown collected on the pause menu, that's why.
Unabridged Version: youtu.be/nYjqAbowsXs
Console Verification: twitch.tv/videos/1523203289?t=0h12m50s
ABC Playlist: youtube.com/playlist?list=PLmvvhlevqC2d6vis077yFHuLJHYtTtqe_
ABC Routes: docs.google.com/document/d/1ypRVVRyf4x-v8GqCSmKYnicrfKSIjao3Y1ZVl52RIyM/edit
(1) The baby penguin makes 2 crying sounds that are extra close together.
(2) The baby penguin's blinking cycle gets interrupted, so the eyes go straight from closed to open without the intermediate frames.
Both of these phenomena are due to logic that uses the global timer mod a number that 2^32 is not divisible by. Thus, when the global timer overflows, the cycles get interrupted.
I clip him out of bounds using the elevator platform's walls to push him all the way through the static walls of the course. This was partially inspired by a similar strategy used for HMC Metal-Head Mario Can Move! (youtu.be/QSxEhoimzX4). Also, note that simply trying to throw him or drop him while pressed against out of bounds doesn't work, because there's a failsafe that prevents him from being released out of bounds directly.
Update: It seems that Plush already did this one time using a different method: youtu.be/CrdAxSy43aA
Note that in practice, we'd use ground pound chaining above the pendulum to get back up to the cage between each iteration of bob-omb raising. A demonstration of this maneuver can be seen here (youtu.be/wR9YSmbq2Vs), which was done by Sjmhrp. However, the ground pound chaining in the real strat would have to start from the bottom walkway rather than from the hand, which makes it much trickier to figure out. Anyway, that part of the plan is still under development, and so is outside the scope of this video. That's why I simply faded to black between iterations.
The critical breakthrough came when ds273 (youtube.com/channel/UCKu5LetC-MVt03Gs2Ugx9Xg) suggested I look for solutions where Mario snaps down on a quarter step earlier than the 4th quarter step. This would allow Mario to move slightly further away from the pendulum arm, thereby accessing unit squares that were previously inaccessible. However, I had to add a new condition to check that Mario doesn't coincide with the wall hitbox of the side of the pendulum arm (if it even is a wall on that frame). That check was not needed previously, because before we snapped down on the 4th quarter step, which is after all wall collision is done.
After adding this logic to my brute forcer, it found 15 solutions. However, I was way too optimistic in estimating how far Mario could move away from the pendulum arm, and so most of the solutions turned out to be infeasible. Of the remaining solutions, only one successfully achieved the recoil. However, even this "feasible" solution required about 20 speed to work, which can't be achieved on that pendulum alone. Thus, I made use of the other nearby pendulum, which let me rollout into the exact spot with sufficient speed.
This is a follow-up to my previous failed attempt (youtu.be/eecZYGqHdFY). You see, the previous failed attempt used the side of the pendulum arm as a floor in order to snap down farther. This meant the pendulum had to swing a farther distance between the snap-down frame and the wall-push frame, and so the pendulum was moving at a higher speed. Consequently, the pendulum wouldn't have been in the way had the recoil happened. But unfortunately, it just so happened that there were no solutions that led to the recoil.
Anyway, since I exhausted all the possibilities where we use the side of the pendulum arm as a floor, I then did a thorough analysis of the cases where we don't do this. Note that I had already done a preliminary analysis of these cases and found them to fail due to landing on the pendulum, but I figured I'd give it another go and be maximally thorough. Thus, I reworked my brute forcer to find solutions for this new situation. In the end, it found 8 potential solutions, 2 of which succeeded at achieving the recoil, but both ended up landing back on the pendulum. And so, this video is meant to document this other kind of failure.
Currently, the optimal strat in a 120 star ABC run is to use one A press both to get this star and to re-enter the level (youtu.be/SEVrw0dxYxg). If we ever want to save this A press, then both of these goals must be done 0xA. This video shows my best attempt at doing the re-enter goal 0xA.
ds273 (youtube.com/channel/UCKu5LetC-MVt03Gs2Ugx9Xg) came up with this idea, which is to use a punch to get the recoil off of the wall rather than an AB kick, since it had been previously demonstrated that a punch could do this (youtu.be/XCf70YSqQF8). Specifically, we have to punch while on the pendulum arm, snap down onto the pendulum bob, then on the next frame Mario receives double wall displacement from being exactly on a wall seam, gets displaced to the far wall and is inside the star, then both collects the star and receives the recoil from punching the wall. I wrote a brute forcer to find all the situations where the aforementioned steps are possible, and it only found one viable solution. However, even that solution fails, because Mario ends up a little under 2 units away from the star on the frame that he's supposed to be inside of it. It's possible that I overlooked something either in my mental model of what's required or in coding my brute forcer, but I couldn't find any flaws upon reviewing them. So at the moment, this idea seems like a dead end.
This is a follow-up to my previous video (youtu.be/5gvMJs6Ts48), in which I did the same thing but using two bob-ombs. After that video, I talked with ds273 (youtube.com/channel/UCKu5LetC-MVt03Gs2Ugx9Xg), and he said that it would actually be more useful if we did it using only one bob-omb instead of two. And that's because part of the plan for one of the stars is to remotely throw one of the bob-ombs at a preset HOLP so that we can use it higher up in the level. And so that bob-omb would be inaccessible until later on in the strat, leaving us with only one bob-omb to work with in the meantime. Thus, this video shows how we can achieve a delayed snap using just one bob-omb.
In my previous video, I required the use of two bob-ombs because I needed to clone one of the bob-omb's spawners in order to preserve the HOLP (because invisible clones don't update the HOLP). However, that strat isn't possible with just one bob-omb. So as an alternative, I clone a yellow star particle spawner, which loads whenever Mario bonks. However, that in and of itself would still leave a period during which the HOLP would update, namely after I grabbed the fake bob-omb but before I cloned the yellow star particle spawner. So to solve this, I used pause-buffered hitstun inside an explosion clone so that I could remain invisible until I cloned the yellow star particle spawner. However, one explosion clone wasn't enough to make the strat work. Instead, I needed three explosion clones:
- one that hurt me instantly, but allowed me to release future explosion clones without using them up instantly
- one that hurt me right before the pause-buffered hitstun
- one that prolonged the hitstun timer due to its active hitbox
And so that's why I placed three explosion clones in strategic positions.
Note that at the beginning of the video, I use the behind camera anywhere technique to remotely throw one of the bob-ombs higher up in the level. This was done to mimic what would happen in the plan, which then restricts us to the one remaining bob-omb. I never reactivate the thrown bob-omb though, because that's outside the scope of this video.
You see, for a while, ds273 has been trying to save more A presses in TTC. He has a complicated plan to do so, but it's not all there yet. The plan involves having a bob-omb snap to Mario after Mario ascends part of the level by chaining together ground pounds above a pendulum. Thus, this video demonstrates that the bob-omb snap is possible. Also, note that the ground pound chaining piece of the plan has also had a recent breakthrough (youtu.be/wR9YSmbq2Vs). So piece by piece, we're making progress towards completing the plan.
Here's a breakdown of what I do in the video. First, I use a wall overlap to clip past the outer wall of the level, and set the HOLP out of bounds using a bob-omb. I need both bob-ombs for the next step, so I climb the spinners to respawn the bob-omb that just died. From there, I grab one of the bob-ombs as it explodes, but also as the other bob-omb explodes as well. The result of this is that I end up holding a clone of the other bob-omb's spawner. Since the spawner is invisible, it doesn't update the HOLP when I hold it. Then I climb the spinners again. Once I'm up top, I switch from holding the bob-omb spawner to a sound effect object, which allows me to load the 5 yellow coins without cloning them. I didn't want to load these coins, but it was unavoidable given my path. Note that my goal at this point is to move 4000+ units away from the HOLP so that I can remotely drop a bob-omb at the HOLP without the bob-omb snapping to Mario instantly, but with the added constraint that I have to remain inside the yet-to-respawn bob-omb's spawner radius. That's why I ride the hand over to the rotating blocks and then drop down, which achieves that goal. Finally, I use the behind camera anywhere technique to position Mario behind the camera, then clone the respawning bob-omb and release it. The result of this is that the bob-omb gets released at the HOLP laterally, but at Mario's current height. And since the HOLP was out of bounds, this means the failsafe will trigger as soon as Mario goes within 4000 units of the bob-omb, causing the bob-omb to instantly snap to Mario. And just to confirm that everything worked, I then show the snapping.
Lakitu cloud adoption is a glitch performed as follows:
(1) Unload a lakitu on the same frame that you deactivate him from moving 4000 units away from him.
(2) On the next frame, load an object into the lakitu's object slot.
The result of this is that the lakitu's cloud doesn't unload but instead considers that new object to be its parent. In the video, I do this using a 100 coin star. Unfortunately, this doesn't really lead to anything useful.
Lakitu cloud adoption was first discovered by bad_boot (youtube.com/channel/UC280b7IZCFnzCR0RCwi6JYg) years ago, but never done in practice. But Scarlas (youtube.com/channel/UC9YyafIpW5I_7Pu8sLRN8Lg/videos) recently brought it up again, which got me interested in it. Thus, I investigated a way to pull it off, and then did it.
Note that lakitu cloud adoption is yet another adoption-type glitch, like pupil adoption (youtu.be/MgOWfeNlCx0) and spiny adoption (youtu.be/i1oNxV3mKsk).
Note that I wrote a brute forcer to calculate the optimal PU movement. Here's my code: pastebin.com/hTXZ27Ny
Aside: I think it's interesting that pulling off lakitu cloud adoption involved exploiting several other glitches in the process, like cloning, hands-free holding, pause-buffered hitstun, interference clones, fly guy gradual rise, backwards long jumps, and PU movement with overflow jumps. It reminds me of how in mathematics, proving a new thing often involves using existing proofs from other people. So in the case of sm64, we're pulling off new glitches using the knowledge of all other glitches that has accumulated over the years from many different people.
Background: Since people are currently routing a 0 A press run of the game, it's become necessary to know how long each star takes so that only the fastest ones are included in the run. In my previous video of this star (youtu.be/atJcvr3VtQ4), I broke a box at the start in order to make the object slot transitions at the loading zone work, as that was the best solution my loading zone brute forcer found. However, I decided to take another look at my code and scrutinize every detail in the hopes that we could remove the box break at the start, since that would save precious seconds.
Firstly, my loading zone brute forcer didn't test all possible bubble configurations, since I didn't know all the possibilities for how many bubbles could be present at once. My brute forcer tested for 6-12 bubbles, which is what I found to be reasonably achievable in practice. But since then I've made a swimming brute forcer that can achieve any possible bubble amount, and so I used that to determine all the possible bubble amounts. Ultimately, I found that 5-15 bubbles could be present at once with good enough RNG, and so I tweaked my loading zone brute forcer to factor this in. Unfortunately, it still didn't find a solution, and so I scrutinized the code some more.
Secondly, my loading zone brute forcer didn't test all possible sequences of frames spent on both sides of the loading zone. Specifically, one of the design decisions I had made was limiting how many frames we'd spend per transition. You see, I had figured that the more loading zone transitions were performed, the better our chances of cloning the star would be, because more transitions means more possibilities for what gets cloned. However, upon rereading my code, I realized that this misses the case of spending a lot of time on one of the sides of the loading zone, because doing that would allow for more bubbles to be made at once during a transition, which is a case that my loading zone brute forcer wasn't considering. So I reworked the logic to effectively remove that limit. Then I let it run, and it eventually found some successes! These successes all involved one transition that lasted a lot of frames, which is why my loading zone brute forcer didn't find them the first time. In the video, you can see that during the loading zone transitions, I hold onto the cork box clone much longer than all the other clones, as I needed to stay on that side of the loading zone for longer than usual.
However, the endeavor didn't end there. I had only found a theoretical solution, but then I had to achieve it in practice. So I used my swimming brute forcer to find a way to have the correct amount of bubbles be present on the correct frame. Then I tested if that RNG allowed for the correct bubble sequences during the loading zone transitions, but it didn't. To optimize this step, I then hooked up my swimming brute forcer to my loading zone brute forcer, and so the swimming brute forcer would find a way to make the correct amount of bubbles be present on the correct frame, and then hand it over to the loading zone brute forcer to see if it was possible with that RNG. After leaving it on for a long time, it didn't find any successes. The issue was that during that one long transition, I needed 3 bubbles to spawn during a 10 frame window. However, bubbles take anywhere from 3-11 frames to spawn, and so getting 3 quick-enough bubbles in a row is pretty rare. To clarify, the bubble frame sequence would have to be one of (3,3,3), (3,3,4), (3,4,3), or (4,3,3). Any other sequence wouldn't work.
So I then wrote a separate script to search for what RNG values would even allow for one of these sequences, and it only found 31 good RNG values of the 65114 total RNG values. None of them were achievable in my current run, since my swimming pattern could only vary RNG within a range of about 2000, and none of the good RNG values were in that range. So I then changed things so that I entered the course with a different initial RNG value, one that kept everything the same but whose RNG window of 2000 contained one of the good RNG values. Then I ran my hooked-up brute forcers again, until they found a swimming pattern that achieved the exact good RNG value in the window. And so then I did that swimming pattern, did that loading zone sequence, and cloned the star.
As you may know, when Mario stands on a platform that rotates, he gets displaced rotationally about that platform's position. In the past, we've exploited this to achieve spawning displacement (youtu.be/XL8TCplAaWc) and platform release displacement (youtu.be/mILLuFunY98). However, now we have yet another glitch involving the same principle, which is particle platform displacement. This glitch is performed as follows:
(1) Mario is on an object.
(2) That object unloads.
(3) A separate platform object causes particles to appear, and one of these particles takes on the slot of the object Mario was standing on.
The result of this is that Mario receives rotational displacement from the particle, since the particle itself has rotational velocity.
Here's what happens in the video. First, I lure a fly guy away from his home. This causes him to perpetually make fire, which helps with the object slot manipulation later. Then I use pause buffered hitstun to throw a bob-omb remotely. Then I reactivate the bob-omb, which falls onto the shell block, causing the shell block to break. At the same time, I ground pound a cork box, causing the cork box to unload and have one of the shell block's particles load in its place. Consequently, particle platform displacement occurs.
The original 0xA strat for this star took 14 hours (youtu.be/cdM-h1Ge9xk). Later, we realized we could collect this star using the overflow water level (youtu.be/-KLYv86Ntl4), which would take 2 hours (youtu.be/zjdkGWJcDVw). Since then, Iwer Sonsch discovered some new strats that ultimately reduced this star to 14 minutes. This included:
(1) figuring out how to achieve 12+ swimming speed
(2) figuring out how to collect the red coin in the alcove without having to destroy the box
(3) figuring out that we can use a skeeter to get onto the grey building from the top of the wall
Here's a breakdown of what happens in the video. First I clone the cork box on the white building and release it. This lets me collect the red coin without the box being in the way. Then I lower the water level until I'm able to stand on the box above the brown building. This lets me stand on the box, fall off, ground pound, break the box, and collect the red coin inside. Then I raise the water level until it's just above the top platform in the town. This lets me swim with 12+ speed, which further lets me collect the red coin in the box in the alcove. I also collect the red coin on the castle. Then I raise the water level until it's high enough that I can swim onto the orange-roof building while the water is being lowered. But before I do that, I manipulate the skeeter into place. Only then do I lower the water level, get onto the orange-roof building, and collect the red coin up there. From there, I make my way onto the wall, collect a red coin there, bounce on the skeeter to get onto the grey building, collect the red coin there, and then collect the other red coin on the wall. Finally, I collect the star.
Cloning the box on the white building was tricky. I reused my code from last time when I used it to clone the quick race star (youtu.be/atJcvr3VtQ4). However, this time I added new functionality so that it could simulate Mario's swimming. I then used this to brute force the swimming pattern immediately after Mario gets thrown by chuckya (at 0:43), because only a very precise swimming maneuver would cause there to be exactly 6 bubbles present when I crossed the loading zone. To put this into perspective, it simulated 30,000 maneuvers until it found a success. Here's my code (both from last time and this time): pastebin.com/R7wWQ6Fd
You may wonder how I swim into the box at 2:14. First, note that water movement only has full steps, no quarter steps. Second, water movement experiences wall pushes as follows:
(1) before full step: wall hitbox of 50 radius at 60 down
(2) before full step: wall hitbox of 24 radius at 30 down
(3) after full step: wall hitbox of 110 radius at 10 down
It's wall push (3) that pushes Mario the farthest. However, we can avoid this wall push by swimming into the ground. Specifically, if our full step movement puts Mario more than 10 units underground, then he'll avoid getting displacement from that wall hitbox (because the wall hitbox only extends 10 down). Of course, Mario doesn't end up underground by the end of the frame, because after the wall checks, the floor check snaps Mario back up. So the result of this technique is that Mario can get closer to walls than he otherwise could (but still not pass completely through them due to wall checks (1) and (2)). Consequently, Mario can squeeze into the narrow space to the right of the box, at which point the static wall on the right pushes Mario into the box (because static wall pushes happen after dynamic wall pushes).
You may wonder why I wait around at 4:06. The answer is because the skeeter is inside the box, and if I moved closer to the box to break it, it would become tangible and push the skeeter off of the wall. So I had to wait until the skeeter was in a better position where I could make the box tangible without it pushing the skeeter off. Specifically, I waited until the skeeter was near the center of the box, because then the skeeter got displacement from all sides of the box, causing it to oscillate back and forth instead of being pushed out.
Note: For viewer convenience, I show the town's water level (WL) on the top left of the screen.
Unabridged Version: youtu.be/uPge3yXeVWU
Thanks to Zyon for bringing this to my attention. Though my guess is that this phenomenon has been observed before.
Previously, I did this with 5 goombas and no koopa (youtu.be/ksL_eFRM4CA). After that, I showed that it was theoretically possible to involve the koopa as well (youtu.be/ouaSXHpQHiE). But now, I've done it with the koopa for real. Thus, the challenge of creating the biggest transport clone chain is finally done (as far as we know).
What's interesting is that it's NOT possible to do this if we try to have our cloned goomba touch all 5 other enemies at the same time. This is because the code specifically forbids object A from detecting a hitbox overlap with object B if object B is already colliding with 4 other objects. Thanks to JoshDuMan (youtube.com/channel/UCKd0W028Csk7WhEPjeLN5pg) for confirming this. However, Tyler Kehne (youtube.com/channel/UClPjENu5gaTOaZ5_99AQL0g/videos) then suggested that this feat may still be possible if we have the last enemy still be touching the group, but touching an enemy who isn't the cloned goomba. In other words, it wouldn't be A touches B/C/D/E/F, but A touches B/C/D/E and E touches F. So one of the enemies would be TWO points of contact away from the cloned goomba instead of ONE point of contact away. To verify Tyler's hypothesis, I hacked the enemies so that they'd all walk into each other just right and then I released the clone. This is what's shown in the video, and it proves that this feat is theoretically possible.
I actually started this TAS back on July 12, 2014, with the intent of releasing a transport clone involving 5 goombas and the koopa. I couldn’t get it at the time, and so every couple years, I’d take another try at it. Today was one of those days. However, this time I made the decision to try it without the koopa, that way it would be easier and so maybe I could get it. After over an hour of attempts, I finally got it. So now the question is whether this can be done with the 5 goombas AND the koopa. I don't know if that's possible, but it would definitely be a lot harder than what I did here.
Transport cloning is a glitch where you release a clone that’s being pushed by another object. The result is that both the clone and the pusher object get transported to midway between their current position and the HOLP. Interestingly, this works with multiple pusher objects, and so they all get transported, although then they get transported less far. You can find out more about transport cloning by watching this video: youtu.be/YnMZZhaj5S0
Here’s a breakdown of what I do in the video. First, I get a handsfree bob-omb and teleport with it, giving me a teleported handsfree bob-omb. I use this bob-omb to push the two singleton goombas near the triplet of goombas. Then I put the bob-omb away. Next I use a cork box to reposition the HOLP to the far side of the course, so that the transport cloned goombas will be more spread out in the end. Then I do the hat-in-hand glitch so that I won’t update the HOLP anymore. Next I grab a fake bob-omb and clone one of the goombas of the triplet. Finally, I manipulate all the goombas to move into the perfect positions so that they all end up pushing the cloned goomba at the exact same time, and that’s the moment when I release the goomba clone. The result is that all 5 goombas get spread across the line from where they were to where I had placed the HOLP.
This is an updated version of my other video (youtu.be/Ex0MXY55s5Q), where I did the same thing. After I made that video, nim (youtube.com/channel/UCG_b-lywDked3HfbZQXU8Gw) told me that Mystery of the Monkey Cage was very close to having a 0 B press solution. To spark interest in this feat, I offered a $1000 bounty to anyone who could do it. Soon after, nim and I worked together to accomplish just that, with me TASing the fly guy manipulation and nim TASing everything after that. And of course, the whole strat was nim's idea. So in the end, Mystery of the Monkey Cage was reduced from 1 B press to 0 B presses, nim earned his $1000, and I have to remake this video so that it contains this new information. If you're only interested in watching what's new from last time, then just watch from 4:06 to 9:03. And finally, nim made a more detailed explanation video of the strat on his channel, which you can find here: youtu.be/JVE23NRLAyk
Total B Press Counts:
Any% (U): 4
Any% (J): 4
120 Star (U): 9
120 Star (J): 12
youtu.be/_IuC9Ci57Hs
I go over the B button challenge, including which presses are unavoidable and what workarounds exist for the presses that are avoidable.
This is an updated version of my other video (youtu.be/n9hRXtpgFV8), where I did the same thing. However, since then, WMotR red coins has been reduced to 0 B presses, thanks to fifdspence (youtube.com/channel/UCXubFNfZaMVLsTZzKcgnHOQ) and bad_boot (youtube.com/channel/UC280b7IZCFnzCR0RCwi6JYg). Thus, I decided to remake this video to include that information.
Total B Press Counts:
Any% (U): 4
Any% (J): 4
120 Star (U): 10
120 Star (J): 13
Notes:
(1) The workaround for getting onto the castle to talk to Yoshi is actually unnecessary, because there is no bob-omb buddy to talk to in order to open that cannon.
This is an updated version of my other video (youtu.be/dNvNdw1yCXo), where I did the same thing. However, since then, sm64expert (youtube.com/channel/UC6uLsNH0YepNCECAHLAz1VA) found that WMotR red coins can be done cannonless. So I decided to remake this video to include that information. Notable changes since the first video:
(1) Included the fact that WMotR red coins can be done cannonless.
(2) Made the Venn diagram be 3-way instead of 2-way.
(3) Included a couple more clips that I missed the first time.
(4) Changed the normal clip of "Blast to the Stone Pillar" to show going to the pillar, as was intended.
Abbreviations used:
(1) CCC = Coinless, Capless, & Cannonless
(2) CC = Capless & Cannonless
(3) PU = parallel universe
(4) VSC = vertical speed conservation
(5) HSWK = hyper speed wall kick
(6) BLJ = backwards long jump
Doing this with the cannon unlocked was done years ago (youtu.be/nwr3kjYHIc0). Later, we figured out how to open the cannon 0xA in a timely manner as well (youtu.be/k2bcf-tE1gk), which meant that the combined strat could be done in a few minutes (youtu.be/0AuYIygVxyg).
However, Tyler Kehne wasn't satisfied. He insisted that it was possible to do it with the cannon still locked, which would be much faster. I had argued with him that it wasn't possible, because chuckya just didn't seem to transform into the star with the cannon locked. I had also done some rudimentary analysis into which objects turned into which other objects at the loading zone, and just didn't see a quick way for chuckya to transform into the star.
Eventually, I decided to put an end to this debate once and for all by coding up a brute forcer that could simulate the transition through the loading zone. To do this, I studied how the objects unloaded, how they loaded, and how the underwater bubbles factored into it, since the presence of bubbles changes which objects turn into which other objects. You can see my code for this here: pastebin.com/ZtK15x5m. Upon running my code overnight, it didn't find any possible solutions. I discussed this with Tyler, and he said to try unloading different combinations of objects from the main area because maybe that would change the result. So I implemented that functionality, and it turned out that solutions actually existed! The fastest combination of objects to unload that produced a solution was destroying the cork box near the start, and so that's why I do that in the video.
My brute forcer would calculate 4 inputs and then run a simulation to see if those worked. Those 4 inputs were (1) how many initial bubbles there are, (2) whether the bubble spawner is present, (3) the sequence of frame counts that I'd spend on each side of the loading zone, and (4) the sequence of bubble spawner max timers. All solutions found required either (A) 6 initial bubbles and the bubble spawner present or (B) 7 initial bubbles and the bubble spawner not present. However, achieving either of these conditions was no easy feat, because usually there are way more bubbles present. So I manually tried different swimming patterns and just hoped there would be the right number of bubbles present on the correct frame. Getting this could take anywhere from 10 minutes to an hour. So once I got a good pattern, then conditions (1) and (2) were satisfied, and condition (3) was a given because it was under my control. However, condition (4) relied on RNG, and so even with a good pattern for conditions (1) and (2), this part could still fail, and did fail most of the time. At first I just manually tested different values for condition (3), and just hoped condition (4) would happen to work for one of them. However, this was too tedious. So I reworked my brute forcer to factor in RNG, which would automate this step. I still had to find a good swimming pattern on my own though. Eventually, I did find a good swimming pattern that happened to work for condition (4), and then I just TASed the sequence of loading zone transitions for condition (3). And so that's how this was achieved.
Thanks to:
(1) Tyler Kehne, for motivating me: youtube.com/c/TylerKehne/featured
(2) nim, for helping with the functionality to see what objects call RNG how much on which frames: youtube.com/channel/UCG_b-lywDked3HfbZQXU8Gw
(3) lemon, for telling me how the bubble spawners work: youtube.com/channel/UCoZ8JbiXlq_Zh0DGvaGRTDQ
This video doesn't contain any new strats, but rather is just documentation showing how the previous and current strats compare. I was thinking of making this video when we first figured out the quick way to open the cannon 0xA, but ultimately decided not to because it required reTASing cloning the star and hyper speed walking. However, recently I had some extra time, so I figured I might as well do it for the sake of completeness. Note that this is the first time both of these strats are shown in full, which is another reason I wanted to show this.
Predecessor videos:
youtu.be/oQX6OJpaOdM WDW Water Lowering with/without Chuckya Comparison
youtu.be/VOn7008b1DQ WDW Quick Race Star using HSWing
youtu.be/k2bcf-tE1gk WDW Opening the Cannon 0xA Faster Strat
youtu.be/nwr3kjYHIc0 WDW Quick Race Through Downtown! 0x Faster Strat (with Cannon Unlocked)