This is NES Super Mario Bros. 3, completed in 10:26.42 (37647 frames), an improvement of 1.6 seconds (96 frames) over the previous run, and 3.1 seconds (186 frames) faster than the alternate run which, like this run, acquired 99 extra lives magnificently™.

Goals

  • As fast as possible
  • Obtains 99 lives
  • Emulator Used: FCEUX 2.0.4-interim, default settings
  • Rom Used: Super Mario Bros. 3 (U) (PRG0) [!].nes

Mitjitsu's comments

I first noticed the site three and a half years ago when I watched Genisto's run on archive.org. There was a link to the site where I read through the Why and How section and lurked on the forums occasionally as well. I've always wanted to do a run on this game, but for a long time didn't know or suspect improvements. I had occasionally tried to TAS various parts of the game to no avail. Over the years as I got steadily better, I was able to question things more from a frame by frame point of view. Rather than just an ignorant viewers point of view. After the previous run had been published. I found a way to save a frame at the beginning of 8-1, and a 15 frame improvement in the first autoscroller by taking damage.
I knew based off one of Nitsuja's WIPS that 1-1 was improvable by 4 frames, but it wasn't enough to avoid increased hammer bros movement in the over world. I realised that Nitsuja hadn't taken advantage of the fall through block glitch at the beginning which is enough to save a frame. Unfortunately I had to sacrifice too many pixels in order to make it a bankable saving until...
Randil posted one of his WIPS on the forum. With his improved start it meant no pixels needed to be sacrificed to make the fall through glitch work and I was able to incorporate the improvement into the rest of the level. From earlier testing via Game Genie, I knew that it would add up to increased savings in later levels because less delays would be required to in order to get good hammer bros movement.
In the first autoscroller I stumbled on a way to fall through blocks at very low speeds. Unfortunately, I had great problems trying to replicate it and it caused the project to stall for a long time. Until Lord Tom mentioned on the forums that he had found a noticeable improvement in Bowser's Castle. He mentioned a clear desire to do a new run, he probably wasn't aware of the improvements I knew at the time so I decided to PM him and show him my current WIP. He was also able to fully unlock the logic behind the slow speed block glitch, because of this, not only could the first autoscroller be done quicker, it could also be done with more lives allowing us to hopefully of course, manage to get 99 lives magnificently™
Apart from a couple of other things. Everything else is mostly 1-2 frame improvements via greater precision. Detailed improvements are listed below. One thing I would like to note is that any future improvements will be problematic, mainly because you would need to be about 10+ frames faster in the first world in order to get the correct boomerang bros routine at the end of the first autoscroller.
Hope everyone likes the run :-)
P.S. In relation to the rom issue, I personally couldn't care less about whether PRG0 or PRG1 is used. I used PRG0 for consistency sake, as I prefer to use the orginally released rom across all games.

Lord Tom's Comments

I first discovered this site in '07 when a forum on speeddemosarchive referenced something "the guys at nesvideos" had done. I'd only been following speed-running for a few months at the time, and being a technical person with modest console skills, I jumped right in.
Super Metroid, Zelda and (Genisto's) SMB3 run were among the 1st TAS' I watched. Being able to nudge SMB3 a step further towards perfection is a treat.
I first got interested in SMB3 after re-watching the published run one day and reading the author comments. Realizing that I had no idea what all the passing through walls was accomplishing, I looked at a map of Bowser's palace online. Being a lover of route-planning, I scanned for alternatives, and the route using the 1st door seemed promising. I was crushed for all of 2 minutes to discover there was a thwomp in the way which couldn't be killed by fireballs. Then I remembered the star... There were some other difficulties in figuring out the wall jump (described below), but I ended up confirming the new route was faster and being contacted by Mitjitsu (who more fully optimized the new route). Five months later, and here we are with a new submission!
It was definitely fun working on my first team-TAS. Mitjitsu has style and a sharp eye for stray frames, while I enjoy high level planning and teasing out the technical details behind glitches, so we complemented each other pretty well.
Thanks to the authors of the previously published runs for efforts that had me bursting out laughing at times, to Nitsuja and Randil for early work on an improvement, and to Carrie and Geoffy for being a supportive and indulgent audience.

World 1

As Mitjitsu alluded, obtaining "bankable" time savings can be very complicated in SMB3. This is because world 1 is a virtual minefield of de-facto mini-frame rules, due to the need to optimize overworld hammer brother movement, which is done by adjusting the frame on which levels are finished either by adding delays (easy) or finding improvements (hard). Carrying over world 1 savings into world 8 is further complicated by the need to manipulate the fastest movement pattern for the hammer brother at the end of the 1st tank autoscroller -- the fastest pattern is faster by about 15 frames, and only occurs every 10th frame or so.
Initially, we had saved 9 frames based on Mitjitsu's efforts, but found all those juicy frames wiped out by the need to wait 10 frames for the world 8 hammer. Some debugger work revealed that saving just *1* further frame in world 1 would yield the fastest pattern without waiting. Thankfully, we found a way to save 5 frames in the world 1 fortress, giving us a bankable world 1 savings (after all the math) of about 12 frames.
The improvement occurs toward the end of the fortress, when Mario runs and ducks underneath a spinning ball. We start sliding earlier, at higher speed, to get past the ball more quickly. Then, we jump at the last possible moment to get up the stairs. This is important, because the timer for P-speed running out doesn't start until you jump. Jumping later means that we keep P-speed right up until the door to the whistle, whereas the published run loses P-speed several frames before the door.

Getting 99 Lives

Being able to get 99 lives without losing time was made possible by 3 things: being able to glitch into blocks at less than p-speed, careful planning to avoid lag while maximizing lives gained, and discovering that it was possible to bounce on some cannonballs off the left side of the screen.
The falling into blocks at low speed only works in the auto-scrollers and makes use of their odd physics. Mario has different horizontal velocities while in the air depending on whether he jumped from the ground or from a moving platform/tank -- jumping from the ground makes Mario faster going right, and slower going left. This state is unchanged by bouncing on enemies. Hence, by jumping from the ground and bouncing off a cannon-ball. we're able to get into the platform at the end of the 1st autoscroller without p-speed, giving us more time earlier on to be magnificent™. We've performed this at speeds as low as 32 (max walking speed is 24, max running speed is 40, max p-speed is 56).
The published run breaks a sequence of 1-ups toward the end of the 1st autoscroller to float right and tail-flip a bomber that is off-screen to the right. Although we're not sure, it seems this must have been done to avoid lag, since it clearly reduces the number of 1-ups achieved without other obvious benefit. We found that changing up the stomping just beforehand, in particular killing one of the manhole dudes before he throws his wrench, avoided lag and allowed us to greatly extend the sequence of 1-ups.
Finally, we discovered that with very careful timing, it is possible to stomp cannon-balls that are fired just as the cannon goes off the left side of the screen. This increased the number of 1-ups both by adding additional targets and increasing flexibility in the stomping pattern.
Our target was to finish the 1st autoscroller with 92 lives, which would let us reach 99 just by getting the 7 lives obtained in the published run on subsequent levels, so we were very happy when we ended up with 94.

8-2

Mitjitsu chopped off a few more frames here with 2 discoveries. First, running down slopes does not increase Mario's speed as reported by memory addresses, but it *does* increase the speed Mario actually moves at; by 1/8 pixels/frame on a shallow slope, and 1/4 pixels/frame on steep slopes. Second was a new route past the bouncy music boxes which allows full speed to be maintained all the way through them.

Bowser's Fortress

Most of the time savings came from the new route, but we also saved 2 frames on Bowser.
Apart from using the star, the new route is made possible by using a low-speed wall-jump. A wall jump requires speed of no less than 33 (with perfect sub-pixel positioning, this is the lowest speed which enables Mario to embed himself far enough into the wall to jump off it before he is ejected). Unfortunately, after entering the 1st door in the palace, Mario falls down a narrow chute with only enough room to accelerate to speed 32. BUT, Lord Tom discovered (by accident) that about every 15th frame, some strange collision-detection thing happens which allows Mario to accelerate for 1 extra frame, thereby permitting a wall-jump without losing time walking left to make extra running room. So, when Mario falls, we push left to hit the wall with optimized subpixel placement, then wait for the correct frame to start accelerating right.
The Bowser fight is faster because, for reasons which are unclear, killing Bowser on certain frames causes the exit door to open faster or slower. So, delaying the final fire-ball a few frames actually ended up finishing the run 2 frames faster.

adelikat: The authors have provided a new submission file that includes commentary via subtitles. Enjoy!
Also, accepting for publication as an improvement to the published movie.

ShinyDoofy: Processing...

adelikat: Replacing the submission file (again). The authors used 4 score input which left null input for controller 3 & 4 for the entire movie. The new submsision file removes that extra data. The movie playback is unaffected by this, but the filesize is cut approximately in half.


Experienced player (623)
Joined: 11/30/2008
Posts: 650
Location: a little city in the middle of nowhere
Here is a non-conformist encode. The quality is probably well below anyone's standards. http://www.youtube.com/watch?v=U1bsf05wtbQ
Measure once. Cut twice.
SXL
Joined: 2/7/2005
Posts: 571
It fits mine, thanks andymac. Nice moments but still a no. Autoscrollers bored me, had to skip them after a while. Maybe if it was possible to never break combo, but for the moment, they killed the interest for me.
I never sleep, 'cause sleep is the cousin of death - NAS
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
After watching this run, I can say it's a marginal improvement both in speed and style. Autoscrollers bored me to death as well, but they always do anyway. I guess this is as good as an SMB3 run gets.
SXL wrote:
Nice moments but still a no.
Are you sure you didn't forget that the question got changed? :)
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
Holy crap! When did the question get changed?!
It's hard to look this good. My TAS projects
Skilled player (1416)
Joined: 10/27/2004
Posts: 1978
Location: Making an escape
You know, hearing about the 99 lives bit is what got me to watch Morimoto's run back in the day. It's nice having that old friend back. And holy snap, new route at the end!
A hundred years from now, they will gaze upon my work and marvel at my skills but never know my name. And that will be good enough for me.
Active player (348)
Joined: 3/21/2006
Posts: 940
Location: Toronto, Canada
Awesome playing + new route + return of the epic 99-life autoscroller = WIN! Voting yes without a doubt. Congrats to both of you.
My current project: Something mysterious (oooooh!) My username is all lower-case letters. Please get it right :(
Tompa
Any
Editor, Expert player (2215)
Joined: 8/15/2005
Posts: 1941
Location: Mullsjö, Sweden
Very good run guys. It's always nice to see this run being improved over and over again. You better work on an improvement to the non-warp run as well, and please try to use the pipe glitch :D.
Experienced player (504)
Joined: 1/12/2007
Posts: 682
Any vote which isn't "Yes" is wrong.
Player (210)
Joined: 7/7/2006
Posts: 798
Location: US
Yes vote, nice find on the final glitch and nice optimizations. Also I found it humorous that SMB3 and SMW are within ~0.23 seconds of each other in completion time now - http://tasvideos.org/1115M.html
Lord_Tom
He/Him
Expert player (3144)
Joined: 5/25/2007
Posts: 399
Location: New England
Kirkq wrote:
Also I found it humorous that SMB3 and SMW are within ~0.23 seconds of each other in completion time now - http://tasvideos.org/1115M.html
Ah, in that case I suggest that this run also obsolete SMW! :D Tompa & Cardboard: I'm open to doing the non-warp run, though it is not currently in progress. Tompa, any details on this pipe glitch you speak of?
Former player
Joined: 12/5/2007
Posts: 716
Although the submitted .fm2 file is somewhat odd (fourscore, yet there's only input on the first player port), I discovered a bug in FCEUX: the SDL build doesn't support fourscore playback :/ So... thanks for that cranky file :D
SXL
Joined: 2/7/2005
Posts: 571
moozooh wrote:
After watching this run, I can say it's a marginal improvement both in speed and style. Autoscrollers bored me to death as well, but they always do anyway. I guess this is as good as an SMB3 run gets.
SXL wrote:
Nice moments but still a no.
Are you sure you didn't forget that the question got changed? :)
Yes, I'm sure. Like you say, I felt no improvement. 6 years ago I would have said "How do they do ? This Morimoto is incredible !" But now I know, and the movie looks the same. Actually, I would enjoy a warpless movie a lot more, with the same quality for the non autoscrolling parts. They show the speed, but here they're not significant enough.
I never sleep, 'cause sleep is the cousin of death - NAS
Senior Moderator
Joined: 8/4/2005
Posts: 5777
Location: Away
Kirkq wrote:
Also I found it humorous that SMB3 and SMW are within ~0.23 seconds of each other in completion time now - http://tasvideos.org/1115M.html
This is actually a good point you are bringing up. It should be possible to create a bigame run that ends both games simultaneously.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Editor, Active player (297)
Joined: 3/8/2004
Posts: 7469
Location: Arzareth
I liked the new art in this movie.
Active player (437)
Joined: 4/21/2004
Posts: 3517
Location: Stockholm, Sweden
Very very nice run guys. It was beautifully done. Excellent executed, immaculate run. Superclear yes vote!
moozooh wrote:
It should be possible to create a bigame run that ends both games simultaneously.
^_^
Nitrogenesis wrote:
Guys I come from the DidyKnogRacist communite, and you are all wrong, tihs is the run of the mileniun and everyone who says otherwise dosnt know any bater! I found this run vary ease to masturbate too!!!! Don't fuck with me, I know this game so that mean I'm always right!StupedfackincommunityTASVideoz!!!!!!
Arc wrote:
I enjoyed this movie in which hands firmly gripping a shaft lead to balls deep in multiple holes.
natt wrote:
I don't want to get involved in this discussion, but as a point of fact C# is literally the first goddamn thing on that fucking page you linked did you even fucking read it
Cooljay wrote:
Mayor Haggar and Cody are such nice people for the community. Metro City's hospitals reached an all time new record of incoming patients due to their great efforts :P
Joined: 7/2/2007
Posts: 3960
moozooh wrote:
Kirkq wrote:
Also I found it humorous that SMB3 and SMW are within ~0.23 seconds of each other in completion time now - http://tasvideos.org/1115M.html
This is actually a good point you are bringing up. It should be possible to create a bigame run that ends both games simultaneously.
I was going to ask what you'd do about the extra buttons, but I guess there really aren't that many -- mainly just you have two jump buttons in SMW and only one in SMB3. I suppose for purposes of getting a better sync you should say that any press of the jump button in SMB3 should coincide with a press of at least one of the jump buttons in SMW.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Tompa
Any
Editor, Expert player (2215)
Joined: 8/15/2005
Posts: 1941
Location: Mullsjö, Sweden
Lord Tom: You can go through pipes from the right side of them, haven't succeded from the left but it would be awesome if it worked. Basically just press diagonal downleft. fcm Not good to use everywhere as you can get stuck because of it. 3-9 And sometimes it is just evil. lava As you can only go through the pipe from the right side, this limits the use of it. But there are several levels where it should be possible in.
Joined: 1/3/2006
Posts: 334
I think Super Mario Bros. is a pretty cool guy. eh shoots cannonballs out of his dick and doesn't afraid of anything. voting yes
Joined: 11/22/2004
Posts: 1468
Location: Rotterdam, The Netherlands
Thanks for encoding it ahead of time, andymac. As for the run, it's a small improvement, but an improvement nonetheless. I liked the autoscrollers more than in the previous version. So, a yes vote. :)
Joined: 4/3/2005
Posts: 575
Location: Spain
Yes, the autoscrollers were a lot funnier, but I enjoyed more how Mario killed Bowser in the previous movie. :( You can't have everything, but if I had to choose between funnier bowser kill and 99 lives, I'd choose 99 lives, period.
No.
Banned User
Joined: 8/2/2008
Posts: 420
Location: italy
andymac, thank you so much for your Youtube, its quality was good as well :) After watching this, there's not much else I can say other than "yes". Basically everything else has already been said, from the 99 lives to the new route. Autoscrollers usually turn me down but I like what you could do there :)
Gone.
Active player (315)
Joined: 2/28/2006
Posts: 2275
Location: Milky Way -> Earth -> Brazil
mmbossman wrote:
Captain Forehead wrote:
Holy cow, another one. I'm not gonna bother watching this and I'm just gonna go ahead and vote yes. :)
What a worthless comment. Watch it and give your feedback, good or bad. Just blindly voting yes serves absolutely no purpose.
Obviously... I hate this game so I'm voting NO.
"Genuine self-esteem, however, consists not of causeless feelings, but of certain knowledge about yourself. It rests on the conviction that you — by your choices, effort and actions — have made yourself into the kind of person able to deal with reality. It is the conviction — based on the evidence of your own volitional functioning — that you are fundamentally able to succeed in life and, therefore, are deserving of that success." - Onkar Ghate
Bisqwit wrote:
Drama, too long, didn't read, lol.
Joined: 3/1/2009
Posts: 64
Wow new record (10:29.5 by adelikat) and 99 lives to... You're nice. We must publish it.
Player (121)
Joined: 2/11/2007
Posts: 1522
Beautiful improvement, and a big cheer to Lord Tom and Mitjitsu. Also, I'm excited to update this.
I make a comic with no image files and you should read it. While there is a lower class, I am in it, and while there is a criminal element I am of it, and while there is a soul in prison, I am not free. -Eugene Debs
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
As youtube and andymacs upload would put it. 5 stars outa 5.