[TAS] Bowser In The Fire Sea In 17"50 (No Reds) By Superdavo0001 & dar gos
Previous best: 17"53 by Plush https://youtu.be/MaRoWuoVLNU
Dargos' channel: https://www.youtube.com/channel/UCEgf...
In this video, Bowser In The Fire Sea is completed in 17"50, saving 1 frame from the previous record by Plush. This is achieved by taking a slightly different approach to optimising quarter-frame movement, as explained below, along with a couple of general unit-scale improvements.
Additionally, by using different camera angles to reduce lag we were able to improve the console run-time by a significant margin.
This was done in collaboration with the legendary Dar gos, and this run contains inputs done by each of us. Both of us contributed towards different elements of this run, and we both found essential details without which the run would have been impossible.
This improvement means 1-key is now 1 frame faster (plus lag-frames on console), bringing the total emulator-time down to 4'21"13, and the console time down to 4'21"04.
So how did we save a frame? The answer lies in how the game handles movement. Basically, in order to reduce the likelihood of Mario clipping through hitboxes, the developers made Mario move in 4 substeps per frame, checking for collision at each. These are known as quarter-frames (abbreviated to qframes, qfs).
Ordinarily, you wouldn't expect this difference to have much effect, but when Mario transitions from being on the ground to being in the air (or vice-versa, jumps & related movements from ground-to-air are unaffected) on one of these qframes, he will not move for the rest of the frame afterwards. So for example, if Mario lands (air-to-ground) on the first quarter-frame, he will not move for any of the other three, so his net movement is only a quarter of what it could have been.
Because of this, it is optimal to always go from ground-to-air or vice-versa on the last possible quarter-frame. This is used throughout the grinding at the start, as well as various other places where Mario's quarter-frames can be controlled.
There is one place where it's a little more difficult though, and that's the last grind before the jumpdive. You see, Mario must strain during the time he's on the ground in order to get a good angle for the jumpdive. This will in turn cause Mario to strain more rapidly back towards the edge, which means he must be further away from it initially in order to make the 4/4 qframe transition work. It turns out that if you strain in too far from the edge, it becomes impossible to strain back out in 1 frame. It turns out that this means it's not possible to get the required angle while still getting a 4/4 exit (or anything better than a 1/4).
So how should this situation be handled in order to travel the greatest possible distance? Plush's answer was to take the loss from 1/4 qframe, but still maintain optimal speed & the ability to control the qframe he landed on the next platform at (by changing his speed).
However, it turns out that this is not quite the optimal strategy. I looked at this problem, and realised it would actually be faster to abandon the requirement of leaving the platform in 1 frame entirely, and take a second frame to strain to the correct angle, while still being able to leave the platform on the last quarter-frame. This would cost some speed, and would mean losing a quarter-frame on the next platform (the loss of horizontal speed makes Mario land a quarter-frame too early), but overall, it adds up to around 12 or so units saved.
On its own, this is not enough to save a frame anywhere in the run (the minimum required is 21), but there were other units to be saved too. Doing the jumpdive a frame earlier meant Mario had 1 more frame of acceleration in the air at the start, giving him 0.15 more speed each frame, and therefore causing Mario to get further ahead by 0.15 units per frame, at least until he slows down again & loses them while the old run would still be in the air. This "stretching" of distance-saves, combined with a few more units Dargos managed to save along the way, added up to just enough additional distance to allow Mario to land on the platform below the pole/tilting platforms a frame earlier, and therefore allowed us to save a full frame. Pretty complicated, but pretty neat!
At the end of the video, I show a slow-motion comparison between the new run & Plush's old run. The differences are subtle, but noticeable. The background music is Rashay Phase 2, made by DotStarMoney & used in SM64: Last Impact - a hack made by Kaze Emanuar. More info about both can be found here: https://youtu.be/pUwAXDd45wc
Thanks to Rcombs for console-verifying this run. He is Twitch channel can be found here: https://www.twitch.tv/rcombs
Total re-records used: 5,323