[TAS] NES Super Mario Bros. 3 "arbitrary code execution" by Lord_Tom in
HTML-код
- Опубликовано: 12 янв 2016
- This is a tool-assisted speedrun. For more information, see tasvideos.org/3050M
TAS originally published on 2016-01-13
Super Mario Bros. 3 is a very famous and popular game for the NES. There are normally two main ways to beat it: the quick way using warp whistles to skip worlds ( tasvideos.org/3922M ), and the longer way which goes through all the worlds ( tasvideos.org/3028M ).
Lord_Tom ( tasvideos.org/Users/Profile/L... ) goes the same route as the this game end glitch run ( tasvideos.org/2588M ). However, he achieves total control ( en.wikipedia.org/wiki/Arbitra... ) of the game, pushing the run to a whole new level. He gives himself new powers, like the speed booster and the suit-swap, to name a few. Read the author's comments for more details ( tasvideos.org/4961S ).
This run was shown at Awesome Games Done Quick 2016 ( tasvideos.org/GamesDoneQuick/... ) during the TAS block. You can see it here ( • TAS Block at AGDQ 2016... )
--------
Note: The official encodes for this run include commentary from the author. The second RUclips stream also features input display. - Игры
Old TAS: Clearing the game in 5 minutes
This TAS: Making the game badass and flipping gravity and spawning things at will with a console...
@CyanCreeper we colouring, grab the crayons!
Hahaaa
"I think I broke Mario."
"What button did you push?"
"All of them. Very fast."
when you glitch your character by just playing the game
"I reject your reality and substitute it with my own."
Dude, Nice!
Dungeon Master!
Literally.
sharpfang Those eyes... Whose are they?
my religion teacher told me that quote. nice reference!
@@master_matthew What? No, Mythbusters! What the Hell is Dungeon Master?
This is not a TAS.
This is art.
It's a work of TArt!
Seriously, it is.
Hri7566 mm tart
Why can't it be both?
Oh, TARter Sauce...
I died when it said "Sudo draw-a-dinasaur".
"sudo" didn't exist in 1990.
Khoi Sousa its still funny AF. . .
Dion Walton I
*WE COLORIN’, BUST OUT THE CRAYONS!*
@@n_3719 actually, it did. :) su and sudo were first made in the 80s.
It's really amazing that they're able to not just take over the game program, but actually patch their own subroutine in and then resume the game as normal while retaining control.
Rena Kunisaki What is your steam?
If you watch the controller input visuals at the bottom, thats probably how they're managing to do all that.
that profile picture 💀💀💀
I just witnessed a magical thing. I thought Mario 3 couldn't be more broken, and yet...here it is.
Ikr and i thought super mario world was the most broken of the 2d sidescrollers
It's just a hack to glich the game
XanthinZarda
then they beat the game before the game even started
@Binary Code salty
@@luisangelcastillo289 how are they being salty?
3:09 the moment everything happens... those two controllers be giving a 16-bit stream of straight-up 6502 assembly
Yes drugs yes alcohol yes victims
Check out my new IDE guys
Imagine a kid playing like this in "Nintendo World Championship" back in the '90! Would watch 11/10.
They would burn him for witchery for sure.
The Wizard would have been a much better movie, that's for sure.
it's TAS only, you need two controlers mashing in super speed
@@miwunni thank you for explaining the joke
@@miwunni r/whoooosh or whatever idc anymore
I wish Shigeru actually put the backdoor in.
Aleph Null what do you mean?
@@MaskedChaos he mean the secret console. that teleports you to codes.
manlego031 ?
If that console could exist, how could be possible to input something into it? NES does not have proper keyboard accessory, which would allow that to happen.
@@Titanic4 Plenty of classic games similar to Mario had on-screen keyboards.
Most of you probably didn't even realize how much more amazing this video is with the subtitles turned on.
Oh shit thank you
very helpful thanks
That moment when Mario becomes The One.
If you watch carefully you realize that at 0:17 he finds something that is not an common item... Probably was the red pill.
Normally this would be very hard to do with an NES game because the NES has 2kB of RAM, and most games make use of all of it or close to all of it. SMB3 however has an extra 8kB of RAM inside the cartridge which is used to store the level maps because they have breakable blocks, so the maps can't stay in ROM, which is static.
VuurniacSquarewave Neat! What will happen if you overload the storage with coding?
AidenMaiden 2004 you can't write anything more to it.
The ROM chips in the cartridge have the data encoded as physical wires, so its impossible to write to them without actually changing the chips themselves.
You can stream data into RAM though, in this case from the controller which is what this TAS does.
Every disk based console does this too, though from an optical disk instead of from the controller port.
The level data is also heavily compressed in ROM because it's a lot of data. The data gets decompressed into RAM.
ROM files are 40K, so technically the NES has 40k, the VIC-20 has 5K, 2K used by the system, and that doesn't support sprites and is very limited unlike the NES.
"WE COLORING, GRAB THE CRAYONS" Can't even watch the rest of the video, I'm dying over here rofl!
xd
This aged well
dwayne the cum johnson yes 2020 is very different then 2016
@@keithivey627 Man, you should see 1916!
"What OS do you have?"
My family: Windows 10
My friends: Linux
Me: sUpEr MarIo BrOS 3
I'd love to have been the kid in like 1990 who somehow did juuuuuust the right insane button presses somehow fast enough at the right place to make this kinda thing happen. Next-level cheat codes; just make the game behave however you want with jazz hands and an imagination!
Only takes about 28000 frame-perfect inputs in a row, on two controllers, sometimes pressing opposite/all 4 directions. Still easier than Battletoads.
on the bottom it shows the exact combinations
hip indeed Ugh, you can't even imput codes while mashing in GTA, i'd think it would be pretty impossible with all the imputs shown right here.
this is how you do it if you want to do it yourself:
ruclips.net/video/hB6eY73sLV0/видео.html
@@fractalgem Was definitely expecting a rick roll lol
I love how the controller inputs go nuts at one point. ACE at its finest
at many points
There's something surreal about seeing 3:39-4:04 and knowing that all of that is still taking place in the Super Mario Bros. 3 cartridge.
I watched this several times, and I never noticed that the "Color a Dinosaur" part was actually running a paint-like program (I thought it was like a hard-coded cutscene, or something).
The Game Give Up!
Hi
This TAS is just literally ridiculous in so many ways.
The "color-a-dinosaur" is literally a work of art for NES programming. Also, changing the pattern banks is so LOL.
I didn't even know NES Mario 3 even had Speed Booster mechanics from Super Metroid for executing this arbitrary code. It may have also predated said game as well.
There's also this "ShellShield" which may just be an early mockup of the actual Shell Shield from Paper Mario: The Thousand-Year Door for that matter, but these debug features can also allow you to shift between forms.
Those messed up auto-scrolls really do put things out of place. And of course, you can also disable them too!
Last but not least, Bowser taking over 30 fireball hits? He would be toast instead with one Koopa shell! This apparently did predate a very similar feature included in the limited-time battle royale game Super Mario Bros. 35, or did it?
And also, I noticed that the life counter jumped straight to 99 at the end of the TAS.
Just look at the small amout of data sent when mario shoots that final hammer towards the shell. Like "Oh yeah, I forgot, 99 lives!"
"What's he doing?" "He's beginning to believe"
Breaking news: World 7 closed for various cases of breaking reality
if im not mistaken then SMB3 is canonically a show like you may whitness in a theatre so this whole TAS was mario changing the script and having fun doing so.
I love how the button input symbols flicker like disco lights whenever arbitrary code is programmed!
Lol, look at the input when it's inserting the actual code :P
It flips out in JUST the correct way.
by Lord To[...], because by Lord Tom would've been too long to fit.
This is the best TAS I've ever seen and I follow regularly. Thanks!
So Lord Tom can write a paint program, level select, and a new Mario powerup in an NES game. Pretty cool.
5:37
Turn on your subtitles!
"Hey! That's not what the leaf does!"
Wow.This is mind blowing and incredible. I think that I've watched this at least 10 times, and I never get tired of it.
same
SaMe
I really like the implementation of the VVVVVV movement system
This is legit? WTF? How must that have gone down?
"I'm bored.... Let's play Super Mario Bros. 3 and heavily reprogram it from INSIDE THE GAME! With a console and everything. Let's add elements from Super Metroid and stuff! YEAH!!"
+TheSuckerOfTheWorld That's pretty much how it happened. :D
+Lord Tom I applaud you, this was really great to watch :)
+TheSuckerOfTheWorld Thanks, glad you liked it!
+Lord Tom In the Author's comments in the video you state that the shinespark works in 5 directions.
Why didn't you go the full 8 directions? To save coding time?
+TheSuckerOfTheWorld I thought that was how the Super Metroid one worked; can you do one downward in SM? All 8 wouldn't have been more work particularly.
>Does some random things
>Breaks everything
>Becomes God
>Beats the game
>Doesn't elaborate further
>🗿
5:24
Mario had ascended into a higher state of being that our puny human minds could never understand.
This was like watching inter-dimensional cable.
The true power of Speedrunner Mario.
3:20
Eeeeeeeeeeh you're only off by about 12 years Shiggy.
Honestly I wish games still had this type of stuff in them. Too bad the internet would ruin it now.
I never knew about this untill today. And thats how it should be. But now everything is found like in a week or few days of release
Wait, 12 or 22 years? Or was it found 10 years before this upload?
Well the Shigeru Miyamoto stuff was a joke; that screen was entirely programmed by the TAS creator. There's no "real" debug screen, just whatever the TAS creator can program into the game using the game's inputs.
@@retroedit_ Was Color a Dinosaur real though?
@@randomguyontheinternet7940 I mean, sort of? It wasn't in the original game, but the way the TAS works, it basically recreated Color a Dinosaur within the game.
I like how you see the controllers going nuts when righting code for the RAM.
4:22 The last Metroid is in captivity, the galaxy is at peace
Who gave mario the speed boots?
I never thought a mario game could be so messed up without game genie codes or rom hacks
So, AGDQ run, but ending it instead of handing it off to a human?
+Romaji Correct, the Mitch hand-off was just for AGDQ
+khanglegos You could end playback of the input file in either of the levels (shine spark or shell shield) and mess around with it.
Basically, if you can reroute execution to something easy to manipulate, such as controller input, you can pretty much do anything you want.
2:12 this is when the madness starts
He’s not cheating
He just has a good gaming chair
Deep down, I really hoped Miyamoto purposely inserted the backdoor.
Oldest form of homebrewing
7:35 Wait a minute...
**Positive Force starts playing**
2:40 This normally named "Wrong Warp into Princess`s Room"
Very convenient IRL.
But it wrong warped... Somwhere
When you adds Metroid's speed booster and Megaman's leaf shield as power ups to Mario.
8:26 well that was certain, i was watching this on april fool's day
i love how the captions describe everything, like how it works, and even talks about the cool stuff with the arbitrary code execution :)
"WE COLORING, GRAB THE CRAYONS!" Did Miyamoto wrote that?
Shinespark confirmed 4:26
4:16 Mario over here using the speed booster and shine spark
is nobody gonna mention the sheer amount of inputs during most sections where mario isnt moving? thats NUTS.
4:47
Hello, Sonic the Hedgehog called, he wants his Super Sonic form back.
Nothing too crazy. This happens to me all the time.
Same. *uses a Shell Shield*
Congratulations, my second favorite TAS video
What's the first? Watch for Rolling Rocks or something?
CoasterKing love the pp
CoasterKing what’s your first favorite then
When I first watched this, I couldn't believe it was actually being emulated. I thought someone had just animated it! Clearly, I didn't see the rapid button inputs in the bottom left as I didn't realise the 6502 code execution pointer had jumped to the memory address of the controllers. This was clearly before I had discovered 'Retro Game Mechanics Explained', and before subtitles were added to this video.
Also, I never knew the NES ran on Unix. (joking)
(7:53) Hmm yes Mario just casually sliding through a wall.
Me: Nice, some Super Mario 3 gameplay!
Me: *Seeing the drawing of a dinosaur*
Me: Wel that was an attempt!
I didn't know we were playing Geometry Dash...7:37
i didn't know Mario was a better sorceror than Gandalf and Dumbledore combined.
*hits controller with hammer multiple times*
lord tom : *perfect.*
I've watched multiple videos about this kind of stuff, and I still don't know how they do it.
They take advantage of very precise frame and pixel perfect automated gameplay that allows them to write the console's random access memory exactly the way they want to through gameplay. Then, their final glitch before the console goes completely nuts allows them to run what they've written by playing the game as if it were actual processor (computer) binary language. This bit of code starts listening for controller inputs and treating them as new applications to run. Those random controller presses you see displayed in the lower left corner are not random. They are telling the console what to run next. They still have the cartridge on, so they can also call real game functions and elements through their glitch as well. It's insane.
This is possible because RAM memory is just a reeeeaaalllly large string full of data, and old games have no error-handling. This can be exploited to force the console to read pieces of data in the wrong format. Imagine... A computer trying to play a picture as if it were audio (I'm sure you can't, it's not really easy lol). In this case, it reads sprite/gameplay data as if it were code. But unlike the previous picture example, where it'd just actually play a lot of cybernetic computery noise and blow your eardrums, the gameplay data here has been cleverly manipulated to be actually fucking meaningful. This makes it mesmerizing to see in action.
tl;dr They reprogram the game while it is running by playing through it with juuuusst the perfectly right set of controller keypresses.
@@3lH4ck3rC0mf0r7 yeah its insane to think for someone like me who dosnt know coding but I kind of get it because with the cartridge its not like the levels are already made on the cartridge right, its just the string of data and then when played it gets told what to show n how to play. They take this way too far though wow
wow this is awesome :D great job tom!
Awesome work!!!
bro its literally what inspired peppino's moveset in pizza tower (talking about 4:22)
The Back Door thing is awesome!
holy frick the inputs on those two controllers during the code execution.
4:20 moment mario become the one
This is the craziest thing I've ever seen in a Mario Bros game
Thanks, This is helps me a lot
This is the best of all TAS
The sorcery begins (visibly at least) around 2:30 or so.
This TAS scares me and fascinates me
ah yes, my favorite tasser
*Lord To[...]*
5:21 the prophecy has been fulfilled, glitched llama Mario has come to save us all 😭
So this is what inspired the creators of Pizza Tower
This video makes way more sense with the captions lol
The truth.... when I saw it in the Awesome Games Done Quick 2016 it was a masterpiece
“reality can be whatever i want it to be”
You can see how heavily the controller buttons are pressed to input the data
I hope we see more of these arbitrary code executions down the road.
6:42 bro did the blj before it was cool
"The interdimensional toilet!"
I have no idea what happened in this video but it was amazing
Mario on steroids! Did he play some Megaman X before this adventure!?!
As a Metroid fan that speed boost was holy crap
I think is Samus proud of Mario
At this point were gonna make doom in smb3 using arbitrary code execution
It's one of my favorite tas video
The buttons have a mind of their own
you've seen the moonwalk
but now get ready for
the backwards jump
Nice run!
This tas guy is really good
Ending was perfect.
Guys, turn captions on.
This TAS reminds me of the episode of Ed, Edd, n Eddy when the Ed’s break reality 😂😂
i love mario's hand when his running