Surprise!
Emulator: Bizhawk 2.3.0 (core: Gambatte SVN 344)
This is a game I have a little bit of speedrun history with, I actually put up a RTA time a couple of years ago that was faster than the TAS at the time (by laughing_gas, which I'll be referencing a lot along the way here). I certainly learned more things about the game as I went along, though! Definitely the best bad idea I've ever had.
Comparison table with laughing_gas's old run:
Area | mike89 | laughing_gas | Difference (frames) |
---|
Start^ | 551 | 334 | -207 |
1-1 | 1891 | 1819 | -72 |
1-2 | 3827 | 7170 | 3343 |
1-3 | 4934 | 8280 | 3346 |
1-4 | 6256 | 9695 | 3439 |
1-5 | 7124 | 10543 | 3419 |
1-6 | 8985 | 12629 | 3644 |
1-B | 11675 | 15443 | 3768 |
2-1 | 16024 | 20226 | 4202 |
2-2 | 19549 | 24596 | 5047 |
2-3 | 22508 | 27863 | 5355 |
2-4 | 25412 | 30730 | 5318 |
2-5 | 28652 | 34216 | 5564 |
2-6 | 32135 | 38659 | 6524 |
2-B | 35276 | 41799 | 6523 |
3-1 | 39135 | 45772 | 6637 |
3-2 | 41820 | 48847 | 7027 |
3-3 | 44783 | 52144 | 7361 |
3-4 | 47645 | 55280 | 7635 |
3-5 | 50534 | 58468 | 7934 |
3-6 | 52698 | 61021 | 8323 |
3-B | 56145 | 65404 | 9259 |
4-1 | 59369 | 68905 | 9536 |
4-2 | 64433 | 74346 | 9913 |
4-3 | 70642 | 81278 | 10636 |
4-4 | 73340 | 84203 | 10863 |
4-5 | 76218 | 87524 | 11306 |
4-6 | 79642 | 91314 | 11672 |
4-B | 83457 | 95140 | 11683 |
5-1 | 86381 | 98327 | 11946 |
5-2 | 89653 | 102053 | 12400 |
5-3 | 95483 | 108282 | 12799 |
5-4 | 99817 | 113257 | 13440 |
5-5 | 102797 | 116744 | 13947 |
5-6 | 107139 | 121552 | 14413 |
END | 111770 | 126949 | 15179^^ |
^ - The "start" refers to everything up to entering 1-1. For every other row in the table, the frame given is on complete fadeout of the relevant stage. Aside from...
^^ - I ended input much earlier than laughing_gas did - had I ended at the same time (upon collecting the bonus coin), my saving in this particular stage would be much less.
Now, there's a few different things going on here, and I should address them now to make clear why these comparisons aren't entirely accurate:
- Firstly, this run is on the Game Boy Color version, which was released only in Japan in 2000. This handles entry/exit to stages slightly differently, where the original version fades in and out, the GBC version cuts in and out instantly. Between that and the differences in how Bizhawk and VBA handle stage transitions, I actually lost about 20 frames on every single transition. So the savings are even greater than they appear! This also explains why 1-5 and 2-Boss appear slower in this movie by the table - they're not, I promise!
- The GBC version is chosen, however, for visual clarity: the GB version's limited palette makes it quite difficult to see what's actually happening in a lot of areas.
- I also ended input a lot earlier to save more time on the final boss fight - without that it is unlikely I would have saved much time at all here.
- Despite the fact that the frame count of time saved is 15179 (or roughly 4 minutes and 13 seconds), the times of the movies differ by over five minutes, and the times on the input files differ by 4:05 - the latter due to the difference in framerate in the respective emulators, and the former due to how VBA handles screen transitions (by pausing the frame count for a period of time in transition).
So how did I save all that time? Mostly, knowing better how to maintain speed! Here are some useful speed cap values, sorted by situation:
- General movement
- Running - 35 units, Jumping - 40, Spinning - 35 if no enemy, 45 if through one enemy, 55 if through two or more, Bouncing off an enemy - 30, Gliding (as Dixie) - 35
- Underwater
- Regular swimming - 20, Swimming upwards - 26, Enguarde regular movement - 30, Enguarde stabbing - 35
- On horizontal ropes
- Trends towards 30, but jumping goes to its usual values. Also, the conveyor ropes in the rainforest levels can get you as high as 70!
- Vertical speeds
- Downward caps at 70, and is stored so running off a ledge always hits the ground as fast or faster than timing a jump. When spinning off a ledge, Dixie has five frames where she basically hovers before returning to 70, but this can be skipped by landing very close to the edge. Jumping starts you at -77 (upward is negative), and starts scaling back down depending when you let go of jump (maximum jump length is achieved at 9 frames holding A). When you bounce off an enemy, you get -97 speed off its head, or -107 if you hold A as well.
- Underwater / with Squawks
- Vertical speed caps at -19 with straight mashing, or -29 if you hold Up as well (something the previous TAS was unaware of).
- On vertical ropes
- As per jumping. I just try and stay as close to the rope as possible and move back onto it when I start slowing down. Holding A during the whole sequence allows you to jump back off the rope first frame if you switch directions on the right frame.
Miscellaneous stuff:
- RAM addresses I used to find those values: Horizontal velocity at 0x1F10, vertical at 0x1F11.
- Spinning has a massive cooldown that actually stops you completely, but this can be avoided simply by jumping at the end of the spin, which is either 29 frames after starting the spin or going through the last enemy in the sequence, whichever came last. If you're falling through the air, this time does not count against the 29 frames.
- You can actually start spinning just before you hit the ground from a jump, which can be particularly useful if you have those bouncing Kremlings around and spinning gets to the enemy slightly too early or late. This also causes you not to lose speed for the one frame where B is not pressed - this normally results in dropping from 35 to 33, but if timed in this window you'll stay at 35. This is also why you see me do spins for quite a while before enemies sometimes.
Cape Codswallop
- 1-1: Lots of jumping and spinning through enemies, get used to this. Every stage in the first world has a hidden warp barrel in it that takes you straight to the end, so these stages are very short in comparison to the rest of the game.
- 1-2: Yes, even this one! The previous TAS didn't know about the warp here, so I immediately saved 50 seconds. Being that far ahead so early was a really nice motivation for the rest of the run. Also, in water levels, I spend a lot of time swimming against the ceiling to maximise time spent at the higher 26 speed for swimming upwards. Enguarde should stab every 34 frames to maintain speed as well as possible.
- 1-3: Surprisingly tricky stage with all the big gaps. Found out later in the run that running (maintaining 35 speed) and doing a short jump which is broken with a glide (where you go up to 40 in the jump, but down to 30 as you leave the glide) are basically exactly the same speed but this looks cooler so I'm leaving it in.
- 1-4: So, what I did with the barrel there, is did a spin while out of range of the barrel and then let go of B. This doesn't lose any speed but means you don't interact with the barrel itself, so you can't pick it up. You can also jump first frame to avoid a barrel pickup but in this case that would have put me straight into the bird.
- 1-5: Nothing to say here really.
- 1-6: Just need to make sure you don't jump into the ceilings, which knock your speed back to 35 much sooner than if you don't.
- 1-Boss: This was actually one of the more difficult parts to optimise of the entire game! I didn't even realise you could lead the small urchins around, thanks to Emptysys, the RTA record holder, for pointing that one out to me! So the moving around is just to manipulate the urchin to get as close as possible, and then I time a stab so that I knock it towards the boss as soon as it opens up. It might have been faster not to take the hit on the third one if I had done the manipulation properly, but it ensured first frame damage.
Primate Plains
- 2-1: Getting under the big fish at the top of the first ascent was harder than it looked! Otherwise it's just trying to maintain 26 speed as much as possible. Unfortunately, Enguarde doesn't have the charge stab from DKL2, so he has to move with regular stabs like this.
- 2-2: Possibly my favourite level in the whole game. Lots of climbing shenanigans! Squawks is unfortunately necessary this and every other time I use him, which is a shame because he's rather slow.
- 2-3: No matter what I tried, I just couldn't spin through that last enemy... I think Kiddy can get him but switching to him isn't worth it. This continues to be a theme throughout the game.
- 2-4: This stage is a complete autoscroller but, somehow, maintaining speed still matters. Depending on where/how you land off jumps you'll sometimes drop from the toboggan's normal maximum of 50 to 48 or 49. None of my jumps caused this, the only time I dropped below 50 was to bounce off the enemies towards the end, which are unavoidable and drop you to 43.
- 2-5: It always works out faster to jump into and out of the water rather than try and glide across it.
- 2-6: If you have to shoot with Squawks, timing the shot right after an A press means you won't lose speed on the frame you let go of B to shoot (similar to spinning before you hit the ground). At the end, as long as you don't jump, the platforms can be lined up just well enough to avoid waiting for them entirely!
- 2-Boss: Only thing I'm trying to do here is be moving left as the barrel appears, so the momentum takes me down the slope and the barrel lands a little bit earlier.
Blackforest Plateau
- 3-1: Very straightforward stage thanks to all the rocket barrels.
- 3-2: This is another stage with really cool movement tech. Spinning through enemies without even touching the ground they're on, jumping first frame to avoid a barrel pickup, mid-air jumps like in the DKC games...
- 3-3: In the ice stages slopes actually affect your speed. So on a down slope you can get as high as 39 with regular running, or 49 in a spin. Additionally, the cooldown coming out of a spin is a LOT slower, so you can delay your jump a lot longer if you need to.
- 3-4: It looks like I should be able to spin into those crocs, but they take longer to turn around than you think and delaying costs too much time. There is one thing I'm not terribly happy with here, which is the dodge on the very last bee: I had to actually duck to get underneath, and that actually reduces speed for quite a few frames. It still worked out better than any pattern of jumps I could put together though.
- 3-5: Had to slow down in this stage too - this time to dodge one of the kamikaze penguins on the slope.
- 3-6: Vertical stages are fun.
- 3-Boss: Surprisingly, at the very peak of your jump, Arich is actually within reach of a full jump. Similar to things like Mario 1, as long as you're moving downwards and you intersect the boss's hitbox, it'll be counted as damage! It gets progressively harder to avoid all the obstacles while also doing this, but it is possible to get all four without taking a hit, as seen here.
Great Ape Lakes
- 4-1: Conveyor ropes are amazing! This is also why Dixie shines: being able to arrest a jump's momentum with the glide allows me to maximise frames on the conveyor at absurd speed.
- 4-2: You'd think I would be able to land on this barrel a bit faster to save more time, but unfortunately it doesn't have a hitbox until it lands on the ground. So I have to bounce from here, which still lets me reach the T barrel so long as I'm high enough when I get the bounce. Towards the end of the stage I also had to make a decision on whether to switch to Kiddy to get a bounce off an enemy to save a little more time - I timed it out, and within about five seconds Dixie had made the time back up because of her ability to move vertically way quicker than Kiddy can.
- 4-3: Unfortunately only so much you can do to make a water level interesting! Kiddy makes his first appearance... for a single frame, to take damage.
- 4-4: I really like the bounce off the bouncing Kremling to skip the cannon here! It's all the sweeter because there were several ways in which I just missed avoiding damage before I finally got away with it.
- 4-5: When moving down the narrow paths with the vertical ropes in the middle, you actually have to go down the left hand side, because there's not enough room on the right. Have I also mentioned these stages look really cool?
- 4-6: Like, really really cool?
- 4-Boss: Imagine playing as Kiddy. This TAS brought to you by the Dixie Gang.
Tin Can Valley
- 5-1: More conveyor ropes! There's one that actually isn't worth using though because it's so short.
- 5-2: In this and 3-2 there's actually a possibility of picking up one of the running barrels and carrying it through some ropes that you otherwise have to drop down through manually. Sadly, it is not faster in either case.
- 5-3: So, you see how early in the stage I glide across to the rocket barrel? Later in the stage I should be able to do this too... but the barrel is despawned if you try it! There is also one thing I failed to do from the previous TAS which saved time, but after copying the inputs exactly and still not being able to get it, I'm assuming that the weaker GB version actually just straight up forgot to do collision detection for a lag frame or something.
- 5-4: Another nice climbing sequence to avoid waiting - couldn't do anything about the second set though. Also, skipping a barrel cannon with an enemy bounce!
- 5-5: A really short, easy level that feels really out of place this late in the game...
- 5-6: The only instance of luck manipulation in this TAS: there are two instances where you need a cannon to appear facing upwards. The first one I was able to reach without incident, the second one I had to slow down a little on the approach to have it facing up... but this doesn't lose any time because I couldn't reach it on the earlier cycle anyway.
- 5-Boss: Kiddy reigns supreme!!!
Possible improvements:
- In general it's better to jump onto a platform above you with the minimum height jump necessary to clear the ledge, because otherwise the game drops you to 35 quite early in your descent. Plenty of places, particularly early on, I would be a chance of saving frames here.
- At the end of each stage, you can hit the flagpole slightly earlier if you spin into it. I do this a few times by accident (1-3 and 1-5, for example) until I figured out what was going on in world 5. You can tell just by looking at where Dixie is that it saves time. Only two frames per stage though, and fadeouts only happen every four frames, so it's only a 50/50 chance of saving any time at all.
Thanks to the following people:
laughing_gas for the prior run, which helped as a point of comparison,
Emptysys for caring enough about the game to beat my RTA time,
and Amber for keeping my secret.
Enjoy the run!
GoddessMaria: This was unexpected and, overall, this was a very well crafted improvement, mike89! The overall quality of this makes for a solid improvement over the previous movie. The audience response was also quite positive and everything checks out fine. Good job!
Accepting into Moons as an improvement over the previous movie.