As always, I(We) have provided a release package on my googlecode project. It includes the movie file, Savestates for each world, submission text, screenshots, a spreadsheet of frame counts, and Ram Addresses.
This is a 1450 frame (24.2 second) improvement over the published "Warpless" movie. 3 major improvements account for about 60% of the time saved: skipping a World 3 overworld hammer brother encounter (~8 seconds), getting ahead of the screen on autoscrollers as seen in the last two "Warps" movies (~6 seconds), and a sick new Bowser strat discovered by Tompa (~1 second). Most of the work, however, went into grinding away at the other 40%, which consists of numerous small frame improvements - many visually obvious - in geometry and strategy.
This movie also demonstrates a new SMB3 trick - Corner boosting. It works much like NSMB style corner boosts except mario must duck jump in order to achieve it. Details are explained on the SMB3 resource page.
Everyone knows Super Mario Bros. 3. Morimoto's historic TAS was the reason that a lot of us found the site. This was one of my favorite games when I was younger, so one day, a short time after the warped run was published, I decided to start an updated full game run, with some of the new tricks that had been discovered. After the first few days I was told that Adelikat and Lord Tom were planning a warpless TAS, so I asked if I could join them to do this. Needless to say, here we are, a year later with the finished product. I present to you Super Mario Bros. 3 in 47:04.70.
Firstly I'd like to thank Adelikat, Lord Tom and Tompa, for obvious reasons. I would like to especially thank Adelikat, since he had to put up with my incessant whining and procrastination for an entire year. If he wasn't telling me to "just get on with it you F***" I probably wouldn't have finished this TAS until sometime in the next century. He also had to put up with my constant misquotations as well.
I'd like to thank Tompa as well. If it weren't for him I probably would have missed half of the potential improvements. Also Thanks to Lord Tom go here, since he is an absolute dude.
As far as my SMB3 TASing experiences go, only one thing really stands out: luck manipulation. There are two things that need to be manipulated, Hammer Bros. and the end of level cards, which are based on two different frame based timers. The art here is finding the combination of manipulation that will give the least delay, while providing the right cards and the right hammer bros. movement. This generally cannot be done the first time around, so usually hex editing is required. To make it more complicated, if you need to insert frames inside a level that was previously done, which is sometimes a requirement, you have to manipulate mario's vertical and horizontal subpixel positions at the end to match those in the next level, otherwise the next level will desync, and you will have to start again. Therefore, if there was ever luck manipulation to be done, I promtly handed it over to one of the other team members; delegation, a quality of true leadership.
Before you start reading the comments, I would like to say first that for all the levels I've done, most have had time saved due to "greater precision". "greater precison" is an umbrella term used by TASers which means any frames saved due to circumstances unexplained. I try to keep the usage of the term "greater precision" to a minimum in my comments.
So yeah, enjoy.
I didn't really mean to join the project at all, as I thought I would suck too hard at TASing this game. I have always wanted to TAS SMB3 however. I start to match the WIPs that were submitted. Most of the time I ended up being slower, as I thought I would so it was nothing unexpected.
But then I managed to save a frame in 3-8 when going down the pipe at the end, which later on, thanks to an idea from Adelikat, saved 8 frames because of a frame rule in the water. This made me gain some confidence and I was asked to join the project, which I did.
One thing that has made Adelikat (mainly) hate me a couple of times, is the way I keep improving (whoring) a level that was already completed long ago, causing the progress of the run to halt for awhile. I simply can't ignore a potential improvement when I see it, the frame whore will continue.
I have had many fun hours TASing this game. Thanks for the opportunity, dear team members.
Lord Tom's comments
The seed for this project was planted during one of my rare IRC appearances with adelikat sometime in 2008. We agreed it'd be cool to work on the warpless, but kind of dared each other to really get started for close to a year. Once andymac came on board, we made halting progress through the first 3 worlds before everybody got motivated and roared through the rest of the run.
Alas, excessive life busyness made me a less-than-ideal team member, and I often had to settle for discovering improvements and posting them, rather than actually TASing entire levels, especially after World 3 was done. For me, this was good and bad - good because I despise TASing auto-scrollers where pure entertainment is the goal, and bad because the rest of the gang had to pick up some slack (also, see Tompa's comment about whoring earlier levels).
Did they ever, though. I didn't know much about Tompa and andymac's skills when they came aboard (adelikat's a known quantity at this point!), but they're solid players who came up with some very surprising strats.
As Lord Tom has mentioned this whole project started with Lord Tom and I discussing the idea of an improvement (shortly after his warps movie was published). I had a fun time making the published warpless movie and the idea of working with an impressive player such as Lord Tom was intruiging. Also, last time I the floor glitching in auto-scrollers early in world 8 last time so it wasn't represented in any of the airships. That always bugged me and I wanted a chance to correct those levels. This project took forever and grinded to a halt to many times but I really enjoyed working with my teammates even when they annoying picked at spots many levels behind our current progress. The result was a tightly optimized movie that I am proud of so it was all good in the end. Also, everyone of my teammates are good and finding small improvements in seemingly anything. That kept me on my toes and forced the highest quality work in all of us. Having said all that, I'm glad we are done! Whew!
(flowplayer module removed)
1-1 and 1-2
These levels were both copied from various WIPs and speedruns of SMB3. It turns out that no frames are saved in these levels compared to the previous run, however, no amount of foresight could have told us that. It just so happens that the particular sequence of randomness means that it's not worth using the "Faster" 1-1 from the warped run, since that would have an extra frame of lag, and we would lose a frame.
The start of the fortress was changed to remove the stutter running. In reality, this is not a faster or slower strategy, however frames were saved due to greater precision. Lord Tom discovered that jumping on the ? block saved time compared to jumping around it. This also meant that P speed could be kept all the way to the secret door, because we could reach the door before the P meter ran out.
The previous movie made no effort to manipulate the behaviour of the hammer bros. enemy. This was rectified in V3. The behaviour was manipulated so that the hammer would not throw a hammer before it was killed. This meant that the hammer bros. fell off the screen earlier, and the chest appeared faster.
A large amount of effort was made to reduce the lag at the start, while trying to maintain the optimal path. A small optimisation is made near the start, while jumping out of the hole, which saved a few frames.
This level went through a number of iterations concerning various methods to get P speed as early as possible. The method in the movie was one frame away from not happening. If the gap between the blocks took one more frame to traverse, then the method would be slower than that shown in the current movie.
The usual cannon hopping 1up chains here. But we also managed to show off a neat glitch with the fire flower.
Better stutter running was used at the start to get P speed earlier. Block clipping is also used to gain some frames. It turns out that it is possible to save 2 frames at the start of this level by pressing left for one frame, which would mean mario's initial position would be 10 pixels to the left of the ordinary starting position. However, this was not included in the final run as it did not include favourable randomness.
3 frames were saved near the start of the level by ensuring that mario did not land on the slope, which meant that mario's P meter would start increasing 3 frames earlier. Lag was also reduced to zero.
Nothing particularly interesting regarding this level, the only frames that were saved were due to better luck, meaning that the overly complicated hammer bros. movement could occur.
The only reason we could fight the hammer bros. so early was because of an extremely complicated map movement. Courtesy of the original team for this method.
The pyramid was one of the most complcated levels in the entire game, as such, many frames were saved due to optimisation of the many complicated elements involved. There were a few extra frames of lag near the start but that was pretty much unavoidable.
Lord Tom held things up for a good month pondering novel strats, notably using the card game to get 2 flowers, thereby saving time on bosses later in the game. It turns out this is slower by about 1 second, but proving that was very difficult as the change in item usage would reverberate through many levels as far ahead as World 7! After that disappointment, however, Lord Tom was pleased to discover a way to get across the bridge between 3-6 and 3-8 without first fighting both hammer brothers. By manipulating the hammer brother carrying the very-necessary hammer-item to cross the bridge ahead of Mario, we're able to kill the hammer after completing 3-8, leaving the other hammer brother, carrying a nearly worthless star, unfought, and banking almost 8 seconds.
Accelerating in water has a frame rule, so you can only increment your speed value on certain frames. This is abused to save a reasonable amount of frames. Accelerating on the floor underneath the water is faster than just accelerating in water, however the top speed of walking underwater is much less than that of swimming. This is also abused to save frames.
The start is the most difficult part of this level, with all the complicated stutter running. It was at this time we discovered that duck jumping past corners gives a one pixel boost.
The start of this level is improved, with running speed gained significantly earlier, this strategy was for some reason not used in the previous run.
The flower grab was much more optimal in this movie compared to the last one, with about a third of a second saved. Lag was also reduced.
The fastest strategy for this level is to hit one of the spinning platforms to gain a speed of 64. afterwards, the challenge is to maintain that speed while keeping the P meter full. This level went through several iterations.
This is a largely uninteresting level as far as time is concerned.
Allthough it looks cool, jumping into the block to get the flower is indeed the fastest method. Due to hammer bros. route changes, we were one star short, and a choice was made whether this level, or the fortress in world 6 would get the use of the star. It turned out about half a second faster to use it here.
This level is largely boring, due to the need to spend a long time whithin a wall. A very long time it seems.
The aim of this level is to get mario to the right as fast as possible.
The first room of the fortress went through a number of iterations regarding the fastest way to get past the spikes. The startegy shown was only a few pixels away from not being possible. The next room was equally as difficult to get through, and this also went through a number of iterations. Overall, even without the use of the star, this level was faster than the previous movie.
A few frames of delay at the start meant that we could keep a higher speed throughout the level. However, one more frame of lag was a result.
It was faster to jump on the white platform instead of jumping straight to the pipe. A few frames were spent on the white platform to get a greater height when jumping, as more speed = more height.
A new way of jumping into the wall was found here, which does not require ducking. This is pretty cool.
A few frames were saved compared to the previous movie by doing a large jump before block clipping, because this meant that mario could fall through the block quicker and start moving through the wall earlier.
A large number of frames were saved here by, well, slowing down. Acceleration is based on a timer, and every 8 frames, mario can't accelerate. This is abused by losing frames so that mario did not need to lose two P triangles every time he jumped through a wall. This saved a number of frames each time it was used.
(adelikat) What a pain, though only a fraction of the pain that a warps 8-T woudl be. No raccoon mario means no difficult 1up chains to optimize and more freedom to try to good around and have fun. I managed to remove a number of lag frames that I didn't even know were there last time (no lag counter bad in those days).
(adelikat ) We actually have a speed/entertainment tradeoff here. Instead of floor glitching in the same spots as the warps movie I delayed it in preference to do what I consider to be the most instersting 1up chain in smb3 tases since it is a long 1up chain without racoon mario. Delaying the floor gltich means not having time to get all the way to the edge of the screen. The cost is about 22 frames, but hey, this is a warpless movie anyway, the point is to show more of the game right?
(adelikat) Not much to say here. The jumping on the edge of the screen strat from the warps movie was used here saving some frames.
Matches the warps movie (Well, technically it is 1 frame faster but that is due to not having to manipulate the card at the end) despite several pixels of improvements and a corner boosting opportunity. Every small improvement got wiped by various things such as frame rules and other ill-timed events.
Matches the warps movie but sooo close to saving a frame here!
(adelikat) The goal is Fun & crazy antics here, lag isn't as much of an issue as the other auto-scrollers so there was nothing to improve. On the map after T2 we saved a frame compared to the warps movie. The warps movie made the mistake of using the start then moving to the castle. The optimal strat was to move once then use the start then move to the castle (to take advantage of mario being able to insta-move on the first map movement by holding a direction ahead of time.
1 frame saved up to the door by dumb luck of the 8 frame rule going in our favor. 8 frames saved by andymac on from the door to bowser. Bowser improved by 50 frames compared to all previous movies (warps/warpless) with a new trick. By killing him on the frame he is touching the ground, he pops into the air a lot less, thus falls of the screen a lot sooner.
Nach: No 99 lives? For shame! Seriously though, nice improvement guys, accepting.
adelikat: File has been replaced! The only change in this file is the completed subtitles, no input was affected.
fsvgm777: Processing... for real this time.