Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
The Super Mario World TAS glitch was found by a Japanese player. The TASVideos people reverse engineered the run the Japanese player made, and figured it out.

There's a "game state" in RAM somewhere, which tracks what part of the game is happening right now. Here are all the values. Through a series of glitches, they set it to '26' -- which is the "The End!" screen. They could hop to other things if they really wanted to.

It's actually a really interesting technical hack involving fun things with Yoshi (null sprite glitch, game writes to various fun RAM addresses when you spit out emptiness), brown platforms (did you know that you are not actually Mario when on a moving platform?), RNG manipulation (that's what the fish bouncing are for), and actually changing the game's code at runtime (that's what all the screen scrolling is for).

If someone wants me to post an in-depth explanation, I could probably post one.

Adbot
ADBOT LOVES YOU

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Farbtoner posted:

Different strokes and all, but this is exactly why I don't enjoy these kinds of speedruns.

I'm curious how you'd feel about OoT RBA, then. I think it splits the line between skill and technical hacking evenly. If you think that's too much, people always play MST, which is pretty much all skill.

Even in the new Gohma Wrong Warp junk, there's a bit of skill. Before that, we had Ganonless.

RandomFerret posted:

Yeah, you should totally post that, it sounds really interesting.

univbee posted:

I'd be interested, even if just by PM.

Sorry, I don't have plat, so no PMs. So I guess I'll just drop the explanation here.

I'm just going to drop the RAM Map here. These are all the values that SMW manipulates at runtime. If something talks about "Lunar Magic", ignore it.

So, the end result of the glitch is to set 26 to Game Mode, $7E:0100.

So, first up is the Null Sprite glitch. There's a good post about it here, and how to trigger it. Basically, get hit on the same frame that Yoshi sticks his tongue out. The one interesting part is that we're writing to:

code:
0x7E01E3     stack                               xpos low byte                        near Yoshi Xpos Low byte 
(If you're curious, 0x7E01E3 is the same as $7E:01E3, just a different notation)

Looking in the RAM map, yes, that is used for the stack.

What is the stack? It's where temporary and local storage for a subroutine is. What's a subroutine? A common piece of code that a program can use at any time. Think of it like:

code:
Main Game Subroutine
Draw Sprites Subroutine
Draw Mario Subroutine
So there's a subroutine that gets run every frame. It calculates some physics (not important right now), updates sprites positions (not important right now), and then draws all the sprites on screen. Imagine that while drawing Mario, there's some temporary calculation that needs to be done. If the position of Mario is in absolute coordinates, then it has to do some math to find the position on the actual screen, because there's a camera.

So the subroutine would reserve a bit of space in the stack, and when the subroutine is done, it would be cleaned up again. The interesting thing to note is that the stack position doesn't always have to be the same. We'll see this in a bit.

So, moving platforms. Because Super Mario World, like most games, was released, there are some fairly awful dumb things that the programmers did to get it out the door. If Mario is on a moving platform, the real Mario position isn't actually used to draw Mario, as it doesn't look good. Mario needs gravity to actually affect his position, but they want Mario to look like it's nailed to the platform.

So they fake it. The actual thing that draws Mario looks like this:

code:
Main Game Subroutine
Draw Sprites Subroutine
Draw Brown Moving Platform Subroutine
Draw Mario Subroutine
and thus the temporary calculations that the Draw Mario Subroutine does have changed position in the stack. It just so happens that $7E:01E3 lines up with one of those variables. What variable is it? Well, you need to understand one more thing about Subroutines -- when the machine jumps to a subroutine, it stores where it was in the code on the stack. This is called the "return address". By overwriting this value, you can make the code jump to wherever you want.

In real programs, this is a huge security vulnerability called a "stack smash". Wikipedia, as usual, has a fairly complete article about it.

This lets them jump to a piece of code controlled entirely by Yoshi's position on the screen.

This is already getting a bit too long, so I'll post the second half involving the RNG (fish) and code manipulation (scrolling) later.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Zombie Hovering in Wind Waker always manages to get laughs. Basically, when you die, you get a couple frames to perform an action. If you get off the ground, you can keep on mashing B to do a jump-slash.

It may not seem like it's very useful, since you die right after entering an area, but if you use it to trigger a cutscene, you save that cutscene's flag and it's deathwarp. Win/win.

If you can get the Tingle Tuner to heal you, or land on a heart/fairy, you won't actually die.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
One of my all-time favorites.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

red plastic cup posted:

I don't think anyone's posted this yet, but here's a video of someone playing San Francisco Rush where the models implode on themselves. Worth a watch if only for the commentary. "Reality is tearing itself asunder.. and I must race."

https://www.youtube.com/watch?v=OJyCppPNEeM

This happens when you use the wrong emulator settings on the wrong game. Don't ask me how I found this out.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Tried to catch up on Psychonauts today.



It's somehow fitting.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Yeah, this Mew strategy was found by a guy creating a Tool Assisted Speedrun, meaning he used the emulator's save states, rewind, and debugger features to try and trick the game into giving him Mew.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

miscellaneous14 posted:

Since it's a Source engine game, you can climb onto some small objects by walking at one of their corners. It was actually pretty easy to get out of bounds in the monitor room by doing that, it's just a shame there isn't like an easter egg by breaking the game like that.

It's intentional. There's a speedrun achievement that you can only get by stepping up on the railways and going on the bridges before you're intended to.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Dabir posted:

I didn't even know about that one! The one I was thinking of is the exit from the corridor between the meeting room and the stairs, back up fast enough and you can get trapped in that corridor. Doesn't seem to do anything except leave you stuck with the broom closet ending.

The game spawns you in one of six or seven different office layouts every time you pick restart. If you quit and boot up the game, there's one office layout that's always first. That's the only office layout that's possible to get to the "secret ending", all the others close the door on you before you get there.

There's good reason to believe it's just cut content though, and accidentally left in the game.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Arkham Asylum must be violating those patents, then.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Cleretic posted:

Oh my god, that is amazing. That's my new favorite speedrun. I think my favorite part is the appearance of the Ocarina Items glitch, because thinking back that was one of my old 'party trick' glitches when I was in school.

The fun thing is that OI is only used to pause the blue warp animation. OI has a ton of other uses (warping inside dungeons, skipping ocarina entirely, prolong switches), but here it just gives you a "Cancel" button to get out of the cutscene.

Cleretic posted:

Does anyone know of any other speedruns like that? Just using a bunch of different, completely unrelated bugs discovered throughout the years to completely break the game juuuuuust right?

Twilight Princess has a long chain of dumb events. You skip the intro by glitching through the gate, which means that you have to do Sword & Shield skip, which is the most loving annoying skip in the game since it requires enemy manipulation and precise movements, and you have to restart if you fail it once. And then you get the master sword early, which should be awesome, but for some reason the game won't now let you wrestle with the Gorons, so you have to skip that dungeon. So you have to do another gate clip to get into Lanayru. But since you don't have the water bombs, you can't get into Lakebed Temple. Don't worry, though, you can simply abuse the fact that there's some platforms in the dark world to do a Rupee dive off of, and then get into Lakebed temple that way. But then there's pillars that are supposed to require bomb arrows. But oh no, you don't have the Zora armor, so you drown in the tunnel. Oh, if you save and quit, the game puts you past that corridor, OK. But now the game has some pillars that require bombs / bomb arrows, oh no! Don't worry, just do some incredibly precise crazy jump that requires enemy manip that must have taken me around 800 attempts to do correctly, no worry. Oh no, but now the game requires bombs for real! So, grab Ooccoo, and use him to steal the Lent Bomb Bag. Now you can use a combination of the boomerang and bombs to emulate bomb arrows. But that only works as survives if you don't save and quit, so use the temporary bomb bag you just got to steal a real bomb bag in Zora's Cavern. Phew. But now you don't have Zora Armor, and you have to beat Morpheel without it using a combination of reflexes, tricks to refill your air, and dumb luck, as Morpheel is 100% RNG. My failed attempts are here.

So it's just like OOT, but the other way around: every time you skip something, the game invents a new way of dicking you over and you have to trick it again.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
https://www.youtube.com/watch?v=tDKDbUEeYWE

Best underrated TAS.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

5

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Knocking him out by slightly grazing the dude's arm?

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
here's the webm

http://gfycat.com/MistySelfassuredCrossbill

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Lotish posted:

anyone who's played DA2

Who?

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

StrangersInTheNight posted:

I mean, even if you assume that someone had done something so hideously irresponsible with managing the creation of the game that it was all slapped together from disparate teams who were working independently with little to no communication, do you honestly think no one ever checked in before the completion of the game to see what the teams were designing? That no one would be like 'hey don't make that type of level for that area' or 'hmm, these are the levels we are making, maybe we should put the sea of lava at another transition?' I mean, if it was really so slapdash, then why wouldn't they just move the lava world somewhere else? Just switch a portal with another level that makes more sense to put up there. And do you really think they'd make it all the way through testing without anyone commenting on the strangeness of the inconsistency?

It happens more than you'd probably believe.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
watch all of http://lparchive.org/Ride-to-Hell-Retribution/ please

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

bucketmouse posted:

Pick spy and go cloak-and-dagger on upward offensive. When the cart's in the mine tunnel before the second point, get on top of it and stand as far to the back as possible and crouch. When you see the front of the bomb leave the tunnel, uncrouch and activate the C&D.

When you uncrouch your head is inside the ceiling, which is bad. The game tries to correct you by ejecting you so you're outside the ceiling, which is good. Unfortunately you're now inside the bomb, which is bad. And then you activate the C&D, which for some reason causes the bomb to flip the hell out and go ricocheting through the caves like some sort of strange atomic pinball, which is good.

link to a video fo this because im too lazy to try it myself

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Slime posted:

From what I remember it wasn't that different models of N64 behaved differently, it was any N64 that had an expansion pak installed that made it not work. While it increased the memory the console had, it also made the RAM reset much quicker than the default N64. Without the expansion pak the user would have had a good while to switch carts, while with it they had to do it real fast or it'd fail. Not really something you could build a feature around.

Both of them are true. Newer N64s used much higher quality RDRAM, which reset much quicker.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Cleretic posted:

Something to keep in mind with this, too, is that while this particular exhibition of the glitch might only be useful for 100% runs at best, if the conditions of the glitch are such that it can be pulled off in other places then it could be massively useful. Any% runs still have to do the Bowser stages, which are pretty heavily vertical. Being able to replicate this warp in those stages could do wonders for shaving off what's currently the bottleneck.

It's designed for the A Button Challenge, where pannenkoek wants to beat the entirety of Super Mario 64 by pressing the A button zero times. He currently has the count down to 27 A button presses, of which 17 of those are unique.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
in a hat in time you can one-shot bosses by setting the game to 12fps because the game has an animation to bounce you out of the hitbox and it doesnt run fast enough at 12fps

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
the best dark souls glitch is how in the pc version now if you summon someone with more than 8 characters your game crashes

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
There are lots of reasons the engine would go fractal like that. Portal doesn't use an FBO for the contents inside the portal (because FBOs are expensive on your lovely Intel integrated GPU), it renders scene contents from the eye of the portal, and uses a stencil buffer to mask it in the scene.

Source also doesn't render scene contents if it thinks you're out of bounds, to save on overdraw. So I would very much expect effects like that, given the bizarre render conditions you've forced the engine into.

Adbot
ADBOT LOVES YOU

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe

Montalvo posted:

watchu know about scuttlebugs?

https://www.youtube.com/watch?v=DPfMATdVN-w

Seriously though, what it is about Mario games and spergy glitch videos?

wish i was in a parallel universe where u didnt post!!!

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply