Speedrunning Super Mario Bros. INSIDE Mario World?!
Vložit
- čas přidán 19. 04. 2021
- Speedrunception! Speedrunning a game within a game, by the craziest means yet. In addition to getting a really good speedrun, we also made some really bizarre discoveries!
TASBot store: store.tas.bot
‣ Twitch: / kosmic
‣ Twitter: / kosmicd12
‣ Second Channel (unedited VODs, etc.): / @kosmicspeedruns
‣ Reddit: / kosmic
Intro music: • Video
Outro music: • Video
Thank you p4plus2, Ownasaurus, Masterjun, and more!
• TASbot plays a mystery...
• Super Mario World: Arb...
#Kosmic #SMB1 #Speedrun - Hry
Full technical explanation: czcams.com/video/t7yj_ypLUYk/video.htmlh25m56s
Hope you enjoy :) and many thanks to people who made this possible, such as p4plus2, ownasaurus, masterjun, etc.
Link to the full TAS?
@@briban65 In the description I linked to the GDQ showcase where it premiered
soup
I was just about to comment "wish you explained the tech and setup more". Thanks
Your smile makes me happy.
Yoshi: "Mario help me save my friends!"
Mario: "Actually I just need you so I can travel back in time to save the Mushroom Kingdom."
So Yoshi was a time machine and not just some random friendly dinosaur...
"Mario, you gotta help me rescue my friends!"
"Yeah, hang on, I'm gonna go back in time and prevent that from happening in the first place."
Yoshi : ....wut?
We’re going back in time to the first Super Mario game to get the princess out of the castle.
@@darthadipose1920That’s right. We’re going back in time to the first Super Mario game to get the princess out of the castle.
I cant wait for "speedrunning super Mario 64 in smb1"
czcams.com/video/HGmpdMJTShM/video.html
@@Kosmicd12 oh
@@Kosmicd12 ye i know i made it as meme that someone Will make smb 64 Romhack in smb1
@@Kosmicd12 the other way around, fixel meant. The link is SMB1 in SM64, and fixel asked for SM64 in SMB1.
@@Kosmicd12 wrong way around
so let me get this straight:
the tasbot here first makes specific inputs to be able to alter the code so that the next set of inputs will write stuff into memory and once it reached that point it uses the controller ports to make specific inputs to write the entire code of SMB1 into the memory. Like it's not using the port to copy the game into SMW. It's as if someone had perfectly memorized Hamlet by Shakespear and instead of just giving you a retail copy of the book he just pulls out some empty paper and a pen and writes it all down on that paper. The paper here being SMW prepared in such a way that you can use the controllers as a pen to write on it.
Does that make sense?
epic
magical
Writing a memorized book in another book
quoth the raven "it was the best of times, it was the worst of times"
So in other words:
Tasbot actually writes all the code for Super Mario Bros into Super Mario World from the controller port, which it can do because it can write things on the game’s memory by inputting specific button combinations.
Hope that makes sense
The beginning was a tas? Dang, for a sec I really thought kosmic was secretly an smw kaizo master with those midairs
My mind was melting watching him do the intro. I was like “how in the actual f does anyone at all casually become this good?”
Especially because I could tell he was setting up for code execution, and doing that by hand for a whole game is … incomprehensible.
If my memory serves correctly Sethbling actually did this and managed ace to warp to the end credits
when people ask Kosmic "whats your favorite emulator, Project64? ZSNES? Dolphin?"
...Kosmic answers "Super Mario World"
this is literally such a technical marvel and we use it to play older games on slightly newer hardware. I love it.
I mean what else is it good for besides modifying SMW anyways. It's an SNES not like you're gonna run Windows on it lmao.
@@tripletsborn4628 Don't worry, I'm working on that.
@@theblackwidower have fun lol. You porting the NES bootleg Windows 95 or smth?
@@theblackwidowerhow’s it going with it
@@theblackwidowerYeah bro, how's it going?
I liked when one person said "OH NO I KNOW WHAT ABOUT TO HAPPEN" right before the game loaded smb1
I adore that ACE basically consists of crazy specific gameplay inputs which reminds me of the good old schoolground hoaxes. "Yeah man you got to go exactly 45 steps over the nugget bridge then 3 to the left and then you fight 1 trainer, catch 10 female pikachu and then you go to Bill and he will give you the mewthree, but only if you have 6 level 100 pokemon in your party!"
They were actually right all along, haha!
Even the real working Mew glitch sounds like it. “Just press start as a trainer sees you and teleport away, then fight this specific other trainer then when you get back to nugget bridge, Mew will spawn.”
I’d assume because ACE is injecting data into the game, it can probably get more information in if the list of potentially actions is longer
ACE setups in 1st gen pokemon are crazy. 8f can do literally anything with the correct execution.
Sethbling is a wizard when it comes to ace RTA. I never imagined anyone would actually seriously attempt that when it was discovered. And seeing how quickly he got it was nuts.
This is hilarious. As someone with a lot of programming experience, this is the kind of thing I always imagined was possible, but never expected to see happen.
Started watching Sethbling for his Minecraft videos, but the code injection stuff he's done just blows my mind, remember when he did that Flappy Bird injection RTA?
@@Sharpman76 haha that's exactly how I found him too. Stuff like his absurdly long timers and such. And yeah the flappy bird video is great. It still blows my mind that people have actually used controller inputs and in-game actions to inject code into completely closed systems, and literally build a game inside another.
5:55 bro says "a reset, uh, like button combination" and the like button starts glowing, lmao
WAIT THEY FINALLY DID IT?? I remember they said they wanted to make this but they ran out of time so they made pong and snake instead.
they made it in 2015 lol
@@Kosmicd12 I have been living under a rock you know that
@Michael M I feel that
@@ju2tunknown I feel that
@@psychotheunsane7285 I feel that
I love that the details about how the SMW sound engine was removed and replaced with SMAS' engine. This is super cool!
Thanks for demoing this and allowing me on stream to talk about the ACE. Had a lot of fun, looking forward to when i give you the secret project :)!
Thank you for all you've done throughout the years! I legitimately admire your capabilities and these things have entertained me so much!
That’s an epic glitch in the recreation of SMB where each Bowser seems to turn into a living enemy rather than a dead enemy after being hit with 5 fireballs.
how did you get the TAS?
@@channel-uz9fz its in the video
I’m honestly glad that the game does run slower. No chance that anyone could argue that playing SMB in SMW is the new Any%. No.
Kosmic's "Hey, friends" ("Alright, friends" in this one) is one of the most wholesome intros I've seen on this site.
I agree
"It's literally the same except for the parts that are different."
Ah yes, that clears everything up. Thanks!
I didn't know that bowser's final form was as a blooper, truly his strongest form he's gotten in the mario franchise yet!
By the way, the Minus Worlds vary on what Super Mario World ROM you use. Therefore, there are infinitely many possibilities of the Minus World. However, world D-D, or world 36-57 is the furthest you could go as that world is 00/80/Underwater Coin Bonus. Your's is: -1=26/A6/5-3, -2=44/C4/Underground 4-4, p4plus2's is -1=1A-9A/Underwater 4-2, -2=38/B8=Overworld Coin Bonus, -3=55/D5, -4/6A/EA, -5=14/94/Underwater 5-2. Game crashes in this world.
Bowser having a second boss form to fight was quite a fun surprise!
in 15 years: playing sm64 inside OoT
Would be cool, but unlikely. SM64 and OoT are both N64 games, and the N64 doesn't have enough RAM to hold all of SM64.
Also, SM64 is 1728 times the size of SMB1 (54 MiB vs 32 KiB), but the data transmission speed of controller ports didn't change much from one console to the next. So instead of taking just a few seconds to load a game, it would likely sit at a blank screen for over an hour while it sent data.
But maybe someone could do SM64 inside Skyward Sword. And maybe the Wii could speed up the transfer by using a network adapter, or run SMB1 for an hour while transmitting data for SM64.
@@ToyKeeper it was a joke
@@Bagel_Le_Stinky Yes, the OP was obviously meant to be humorous. And I'm an embedded systems developer who enjoys pushing the limits of old hardware. And you're an aspiring game reviewer. Glad we got that sorted out. Good luck with that, BTW!
Sm64 already got a strat by playing oot (i know he said that as a joke)
Worst thing someone can do in yt comments section is reply "it was a joke" unnecessarily. It's so damn annoying.
Next:Typing "Mario Teaches Typing" code inside of SMW
I keep thinking there's only so many ways to play smb1 and every time I'm pleasantly surprised
5:55 Kosmic said "like button" by accident and the like button lit up, I was so confused until I went back and noticed he actually did say it unintentionally lol
with the arbitrary code execution glitch found in zelda OOT we could play (in theory) SMB1 on the N64
A game is just a "program" (code) and SNES is a "computer". The catch to understanding Arbitrary Code Execution is that the SNES can execute code not just from the cartridge which contains the ROM chips (by the way, modern computers can't do that, since there aren't any devices equivalent to the role of a cartridge), but also from the RAM chips (located on the motherboard instead, modern computers execute code only from RAM). There might not be any official use for executing code from RAM in a game console that can execute directly from ROM, but since it was based on an architecture of a regular general-purpose computer and a general-purpose CPU, it can do that.
By moving objects around in a certain way in SMW you're just copying some code into the RAM and finally executing it (running that code).
Self-modifying code might be useful for a game console with cartridges, too. Devs like to play crazy tricks.
4:39 even when you're going to die, your skills and the game itself won't let you do that xD
Wow, it's easy to forget that Arbitrary Code Execution really does mean arbitrary...
Can't wait for someone to ACE in real life
@@irok1 It’s been done to beat the game and to play flappy bird
@@irok1 it’s called quantum mechanics and shared consciousness. Those could be exploited for the fastest suicide percentage to score a time of -6 months, for a 14 year timespan for the get laid speed run, or maybe even the past life gravestone% playtrghough.
HECK YES!!!
Your reaction at 21:54 is absolutely priceless
Imagine owning one of those devices back in the day, and bringing it to a friend’s place.
I know this was 2 years ago, but I am requesting a speedrun category for SMW:
Name: Minus%
How to play:
Step 1: Boot up Mario World and go to Yoshi's Island 2.
Step 2: Pull off the exact inputs Kosmic does from 0:48 to 1:30
Step 3: Speedrun worlds 1-1 and 1-2 in SMB.
Step 4: Pull off the Minus World glitch.
Step 5: Speedrun worlds -1 and -2.
Step 6: Stop the clock.
Mario entered a straight up pocket dimension just to save Peach
4:42 I imagine you were almost going to say "Saved by the Bill".
Imagine if Super Mario Bros was actually coded into Super Mario World and you had to glitch the yoshi to access it.
Imagine
yeah but this is far more impressive
Ngl I thought that at first
if they did it probably would've been all stars smb1
@@HarrisonDotNET what if mario allstars had those exact nes versions of those games bundled in,with whether snes audio or digitized nes audio, i bet it would,ve sold waaay less.
But can you insert Super Mario World into something like Ocarina of Time? And if so, how deep could the games-in-games rabbit hole run?
yes
this needs to happen
sorry for the late response, but _in theory_ it is, though it would be a lot harder than SMB in SMW. although i didn't personally work on the project, i suspect that one of the reasons why this was possible was because the snes and the nes are in the same processor family. both make use of 6502 derivatives, and the snes cpu is fully compatible with the nes 2a03, so the hardest part is gonna be audio and graphics, but not the game logic.
the n64 and snes on the other hand are completely different. they are completely different cpus; different architecture, manufacturer, and even different programming language. the nes and snes are programmed in assembly, but the n64 is programmed in C.
for something similar to happen, they'd probably need to write an entire emulator so smw could run, which is gonna be a lot more than the 40-ish kibibytes of SMB.
@@SoulcatcherLucario tbf, c compiles down to machine code, and assembly is basically just human readable machine code. The problem isn't the different programming languages used. Just the fact the different processors use different machine code.
@@GhostGlitch. that's what i meant to say
I’ve heard how it’s been done but I don’t understand it at all, how was this possible? How’d it generate all the code and assets down to the glitches? Did it use the SMB1 source code?
Questions aside, this is REALLY cool. Amazing video!!!
basically just injecting smb1 code into mario world whit an accesory or something idk
@@ultranitro2361 it isnt an accesory, it's what's possible in the unedited smw cart
@@olds86307 This is even cooler then
@@ultranitro2361 An accessory is used to match the exact pixel-perfect positioning required to achieve this without wasting hours of your life. No accessory is needed for the actual code execution, though.
@@GarryDumblowski Oh ok, make sense
That was super cool to watch Kosmic! I loved the guests and their input on the technical issues of how they created this game within a game. Thanks for the awesome vod.
A very short summary of why this is possible is: Super Mario World stores game data in the same memory space it stores its own code. Certain glitches can make the program attempt to execute game data as if it were code. And game data can be manipulated precisely using TAS, meaning you can make it have the same values as certain commands in the game's engine.
With a very, very creative use of the flaws in the game's engine, its possible to rewrite the game from the inside.
that doesnt explain making a entire game with sound in 4 minutes with just some movement
@@RilGames. After the game crashes the TAS robot starts inputing commands every frame to rewrite the memory using button presses, so there's a lot more going on than just Mario's visible movements.
(4:39) Wow, that miracle Bullet Bill save.
(12:38-12:44) Heh, the second death theme kicked in early, cutting off the castle clear music earlier than I expected.
(21:57) LOL, the Blooper's alive, having risen from the fake Bowser's corpse!
(22:38) "GRAVATOS: This is why you stay till the end of the stream. You get some nice Bloopers!"
(23:17) Bowser must be wearing fireproof armor now.
(25:46) Congratulations on your 5:02 in SMB in SMW!
5:55 You accidentally said "Like" as a filler word.
In one of CZcams's recent updates, it starts detecting words in the audio such as "Like" or "Subscribe" and highlights the respective button when the word is said.
It's ironic that it picked up you're usage of the word as a call-to-action, when actually you said it accidentally as, like, a filler word.
That was really cool. Also bowser being a blooper was unexpected. Amazing job making this!
They had us in the first half not gonna lie
I know u keep on commentingsaa a. A a a a
@@fixel5578 yep I'm basically a guy who comments for fun
YOOOO I GOT A HEART
@@catfrombowsersfury1654 coollll
@@catfrombowsersfury1654 smart to not edit it, you wouldve lost the heart
6:38 Shout-out to SethBling for executing the SMW credits warp glitch! I'll never forget seeing him show/discover that was humanly possible for the first time, it was insane
I’m waiting for the day Kosmic uploads a video titled “speedrunning super Mario bro’s inside super Mario bro’s”
I really enjoyed watching this live and I’m glad I can rewatch it here! :D
I was debating whether I should bother watching past the beginning since I figured it'd just be a normal SMB1 playthrough from that point, but you succeeded in making it VERY entertaining VERY quickly and worth watching
This is so impressive it just blows my mind. To the team that pulled this off, nice job!
ACE in Legend of Zelda: Ocarina of Time -> ACE in Super Mario World -> ACE in Pokémon Red or Blue -> Some obscure game nobody's ever heard of.
I would love to have this happen in the NSO service. Feel like that would require an entirely different method of injecting inputs though, but I'd still wanna see this done on Switch
This is actually the most amazing thing I've ever seen done with video games
5:06 Those underground bloops are cool!
Next I’d love to see Kosmic collab with suckerpinch to play Super Mario World on an NES
super mario bros in super mario world on nes
i love how kosmic goes full question mark at 21:55
The subscription ratio you showed really surprises me because your content is always so high-quality, entertaining, and well-edited. I definitely think more people should subscribe!
I love these lonely little comments
@@Sadeness99 I have nothing to gain from Kosmic. The statement is genuine.
@@RaycrowX yea I know, its a lonely little polite comment
@@Sadeness99 kk haha
Man, seeing Kosmic speedrunning SMB makes me feel nostalgic. Even if it's a Frankenstein's version of it.
Arbitrary code execution is basically glitching the game so hard you can make it do whatever you want
This in fact proves that SNES CPU is binary compatible with NES code, and thus backwards compatibility is actually possible at the time.
There's a story that apparently Nintendo was contemplating on adding backwards compatibility with NES, hence the use of a slower CPU compared to its peers. The compatibility feature is axed, but the CPU was kept.
I don't know if it's true or it's just an urban legend though, so don't quote me on it.
21:54 here goes the blooper reel :)
12:06 I loved the water music so much!
Hey Kosmic, this is a lil' off topic but, have you ever played the arcade version of SMB1? It's really not much of a difference, except for some subtle changes between the two (ie. world 1-1's power-up block after the first enter-able pipe is in the first block of the top row, instead of in the middle of the bricks on the bottom row.)
There ARE, however, a few levels that are really different from one another...and, I bring it up, because I'm curious about what a speedrun would look like using this version.
Would you be up to the "challenge?"
I havent ran it but I've dabbled in high score. I'm not really interested in speedrunning it but some day I'll get a cabinet and do high score runs. Most of the levels that are different are from SMB2-J/Lost Levels. VS. SMB is like an interesting middle game between the two, where it's half smb1 and half lost levels. Here's the speedrunning leaderboard: www.speedrun.com/vssmb
Whoa, this is so cool! Props my dude. Just dropped a sub for you. Have a great one.
Mario goes back in time to save peach.
Hey Kosmic, if you're interested, I am working on a NES emulator for SNES. It runs SMB and many other games with original audio. Compatible with almost every flash cart. Still in development but available for download. It would be great if you showcased it on your stream someday!
If you could dm me details on Twitter that'd be great
I wouldn't need one for myself but I'd be interested to see it in action!
5:56 lmao youtube registers it as "like button" instead of "like, button" and the like button lights up
You have to remember that it's like a bus. If you miss the bus, you have to wait for the next one.
Cyberpunk 2077 runs better in Super Mario World than it does on base PS4.
okay for a second i thought you were actually that cracked at mario world
I wonder if Nintendo has the legal authority to shut this down. For example, Nintendo is very much against emulation. However, you can argue that this isn’t emulation per say, it’s just a series of button presses that when executed correctly, creates an entirely different game. Now, Nintendo will argue that these burton presses are not achievable by any human player, but all it takes is one expert player (looking at you @Kosmic) to show that this is theoretically attainable. Now imagine if because of this, the full NES library is made available to all, for free (minus the cost of the TAS device), and Nintendo can’t do shit about it.
A human can play eg the Super Mario music on a piano. That doesn't mean Nintendo loses any rights they had to that music.
Why should that be different for any of the other intellectual property they own?
26:01 I'm not sure if putting the payload in manually in that way is possible for a human but what you could technically do is putting the code in via the SMW Hex editor that Sevbling made
What a masterpiece this arbitrary code execution is!
38% of people are subscribed! WOW! I swear it was 2% last year. That’s pretty cool Kosmic
I love how it retains all the original bugs. And more!
That's because they basically replayed the SMB1 cartridge's binary data into SMW here.
@ how is all that done in 1 minute of inputs?
@@homeyworkeyVia 4 (virtual) controllers and computers doing the input.
@ i know that, but still a minute of inputs to write who how many millions of 0's and 1's? thats where i get confused and no one rly explains it.
Great vid as always brother!
So this means Mario could Time Travel in Super Mario World before Link did Legend of Zelda: Ocarina of Time.
3:24 Aah, why didn't you get all the coins? D:
Very very cool, thanks for making the video!
That is kind of cool. I assume any game should be possible as long as it fits right.
Now this is some next level speedrunning
I wonder if you could do this on Switch SMW… some kind of USB controller TASbot
hmmm i wonder
it may be possible, but there's a crash screen on the emulator i've seen whilst trying SMB3 wrong warp a few times
I can't believe how many world records he got in this video!
Bowser still lives in 8-4 under the lava on Kosmic's snes
God it was such a weird experience hearing the all stars sound effects on original smb1 gameplay.
Ok, i was nervous you were better than the majority of speedrunners on smw
“Princess Peach help I have time traveled back to the past after doing some shit with Yoshi and now I’m here
It's honestly amazing how some words go in one ear and then just out the other
Nice ACE- Video. I love it.
This is phenomenal
i'm honestly curious on what other games you can insert into a SMW cartrige.
Imagine glitching Super Mario World into Super Mario World. Not just by running code to reset the game - I mean like making the international version run the Japanese version or vice versa, or making it run the NES bootleg SMW. Or even glitching the GBA version into the SNES version if that's possible somehow?
I'm starting to think TAS ingenuity has gone too far
...Just kidding, let's keep going!
ACE stuff might be my absolute favorite subgenre of TAS, and SMW is at the top.
I'd love to get the save state file for this, playing with snes sounds is so weird but cool
Since I first saw the tas I wanted someone to play it
mario seriously jusy time travelled back to the NES days just to save peach again and all he did was move randomly
Know what would be even more impressive??? Do ACE in Mario Oddyssey to play Mario Sunshine, then ACE in Sunshine to play Mario 64, then ACE in 64 to play SMW, then ACE in SMW to play SMB, then ACE in SMB to play Donkey Kong.
Ace is possible in only 1 of those games lol
Nooooo
kid: i want super mario bros
mom: no i already baught you super mario world
kid:
Yes I was waiting for this video to come out let’s go
YESSSSSS KOSMIC DOING ACE
TWO OF MY FAVORITE THINGS
I need to turn on notifications because I don't know if he's done ace before
shout-outs to the guy who said the SNES ram was smaller than smb1. like imagine being so confident and so wrong
This will always blow my mind