Game Information

Earthbound is a game where the hero, Ness, is just an average 13 year old kid from the suburbs... until the night a meteor lands in his backyard. The local wildlife starts attacking him, he begins to realize psychic powers, and a mysterious messenger from the future tells him that he must save the world, but before he faces any of that Ness has to change out of his pajamas. With a baseball bat as his weapon, Ness begins a quest to stop an evil alien presence from destroying the world. He will later meet with Paula, a girl with strong psychic abilities, Jeff, a young genius with the ability to repair broken things, and Poo, a prince from far, far away who also happens to have strong psychic abilities.

About the run

  • Uses death to save time
  • Uses warps
  • Manipulates luck
  • Abuses programming errors in the game
  • Genre: RPG
Used emulator: Snes9x rerecording 1.51 v6
The following comments are written by mugg: I know many game series only because I played Super Smash Bros. Melee on the Nintendo Gamecube, a beat 'em up featuring many Nintendo characters and the prequel for SSBB. I got to know F-zero, Starfox, Kirby, and of course I got to know Earthbound. I always wanted to play through this game at some point and after I did so I felt the need to TAS this game. I simply loved the graphics, the comic-style and the music in this game. But a full run seemed to be very long and the glitched category was already well optimized. I wasn't very knowledgeable with the game either. Always with an eye for possible improvements for popular Nintendo games, I watched many Youtube videos until I saw the Tent glitch in Earthbound. It was said that when you check a certain place in the tent in Threed, the game would behave very strangely and sometimes it would even glitch up. People had written comments stating that it also triggered the debug menu #1 in this game so I thought this was my lucky day. I began researching the glitch, checking places in the out-of-bounds area and making a map for it, telling people like Nitrodon and Halamantariel about it and getting things started. However, I wasn't able to record this glitch in snes9x 1.43 (because playback behaved differently than recording mode), so this stopped progress for a while until I was said that it worked properly in snes9x 1.51. I tried it with the Japanese version, Mother 2, and it seemed to be more glitch-friendly and more likely to trigger the debug menu so this version was used. Pirohiko teamed up with me and I want to thank him for his work. When I TASed a section of this game, he would often improve it by a few frames and he is also much better at manipulating luck and did basicly all the battles. He wrote a very useful lua script regarding RNG behavior. When we reached the debug menu, things got a bit difficult since we couldn't directly go to the credits with it. More details on this below...
The debug menu glitch worked differently when using different versions of the game on different versions of snes9x. But pirohiko [dead link removed] recorded himself testing the tent glitch on the Japanese version on a real SNES and it behaves like snes9x 1.51 with the Japanese ROM.

Tricks

Optimizing positioning

This game has subpixel carry-over. This means that approaching a door a bit differently can be done in order to optimize the subpixels.

Luck-manipulation

The game uses a flow of 14592 sequent RNG values which it will run through during playing the game. Those values determine the appearance of enemies, item drops, SMAAAASH!! attacks, NPC behavior and other things. Having text being written onscreen will cause the flow of RNG to move with each character written. When the game loads new enemies onto the map, it will shift the flow of RNG too.

Overworld

In order to skip enemies or to have specific enemies appear or to have NPCs not move into one's path, one can pause the game by pressing "B" or "select". The RNG will be called each frame during pausing. The game uses barriers to determine if enemies should appear. Once you walk across such a barrier, enemies may appear and it will shift the RNG a bit. This is very useful in Giant Step since we can shift the RNG very efficiently here by walking across barriers repeatedly. This trick is even more useful when walking on an intersection of barriers. We needed to do this in Giant Step in order to get 6 speed and 24 offense from the Gigantic Ant boss battle so we could knock out every police officer with one SMAAAASH!! only. We needed to shift the RNG for an entire 700 steps which explains the random walking in Giant Steps...

Battle

Changing the selection during a battle will change the RNG. This can be used to manipulate SMAAAASH!! attacks. Since you can change the selection only every other frame it is better to manipulate the first SMAAAAASH!! before the battle, by pausing the game.

Skipping a trigger spot (Stutter walk)

It is possible to skip spots which trigger an event by moving through it every other frame. This was used in order to skip the Starman Jr. battle and the Soundstone from Buzz Buzz.

Walk through cliffs

You can walk through certain types of cliffs with proper subpixel positioning. See this section for more detail. It was used in order to skip Twoson.

Tent glitch (Debug menu)

In the circus tent in Threed, position yourself into the wall on the right, below the door. If you are in the correct spot, try to check the area and the dialoge should be delayed. You might end up warping to some place, freezing your game, causing graphical glitches, seeing garbage dialogue or triggering the debug menu. The latter is interesting from a speedrunning point of view since you can use the debug menu in order to complete the game very quickly with it. The debug menu occurs more likely on the Japanese version of the game (Mother 2). I wasn't able to trigger it even once on the US version, however, people made comments stating in English language that they triggered the debug menu so I'm assuming that it may work on the US version.
When you check the glitch area in the tent, there are two primary glitch messages that are very likely to appear eventually. One message would prevent you from proceeding and eventually freezes your game, with the graphics glitched up and the Arcade BGM. The other will change the music to the game-over BGM often and it will produce many invisible text boxes. Depending on the timing and on how long and how often you press "L", "A" or "R" the 'next' invisible text box may or may not appear. If it doesn't appear you basicly failed the glitch. During the first two invisible text boxes, there is a tiny chance of glitching up the game (in that it gives you a bicycle and plays the bicycle BGM or warping you somewhere while freezing the game and similar things). Once you reach the third invisible text box, the debug menu will eventually come after ~10.000 frames of auto-firing "L" and "A" alternatedly. I tested this glitch thoroughly and it would either get me to the debug menu on frame ~77000, ~72000 or ~68000. I was able to change a 77000 outcome to 68000 by random input, but I wasn't able to get an even better outcome. The assumption was that the text would be read from some point of memory until it reaches the debug menu, but the text pointer (0x7e9979) didn't seem to affect anything. We went on as we couldn't reduce more time. The next problem was to get to the staff credits fast! We could go to different events throughout the games so we chose to go to event 70 (69 goes to Ness' house after the Staff credits, but playing the Staff credits instead of skipping them was prefered). It sends us to Saturn Valley with the game beaten, with Paula in the party, and all left to do was to talk to Ness' mother. But the game still seems to be glitched after using the debug menu. It may randomly crash, freeze but most likely it would warp us to Fourside's café with a lot of invisible dialogue to click away before we could proceed. After a lot of trying different strategies we used this strategy:
  1. Add Paula as a character
  2. Make Ness' HP run out
  3. Give him the 'diamondized' status ailment
    This makes the game behave like Ness has no HP but is still alive.
    This is needed to make a game-over sequence work later on.
  4. Make Paula's HP run out
  5. Give Paula the 'diamondized' status ailment
    The same for Paula...
  6. Give each party member as much Skip Sandwich DX as they can carry
    This is a special feature of the debug menu. After going to event 70, Ness loses his inventory items but we can still use a Skip Sandwich DX from Paula's inventory.
  7. Go to event '70'
  8. Game-Over (very rare and we tried to reduce lag as much as we could, but it always forced us to go back to the center of Saturn Valley...)
    We used death as a shortcut here, otherwise we would have had to walk home from Saturn Valley or Fourside.
  9. Walk home and finish the game
This page explains the features of the debug menu.

Possible improvements?

We wouldn't know of a confident way to improve this movie. However, it may be possible to set up a better randomness in the long run for Giant Step so we wouldn't need to spend much time towards manipulating the RNG there. But it is very hard since you can't predict how things are going to turn out. Seeing how random the tent glitch can act, it may be possible to abuse it further. Maybe someday we will be able to access the Staff credits a whole lot faster without the need of the debug menu at all? Maybe the waiting time for the debug menu can be shortened, but we tried our best to reduce it as much as we could already.

Closing words

Thanks to Nitrodon, Halamantariel, Scepheo, and others! Maybe more information will be added later.
Please feel free to ask questions since my complicated explanations may not be clear sometimes.

Flygon: Added YouTube module.

FractalFusion: Judging.
FractalFusion: This run uses a glitch which passes through a debug menu which cannot otherwise (as to our knowledge) be accessed by means apart from external codes. If the debug menu was easily accessed by an internal code, that would be a different story. As it stands, it can only be assumed as part of the glitch process, and it will be allowed.
In the apparently non-existent event that such an internal code is found later, the published run will be placed in the impure category and any further runs going through the debug menu will likely be rejected.
This run will be accepted for publication alongside the existing publication.

1 2
5 6
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14873
Location: 127.0.0.1
This topic is for the purpose of discussing #2823: pirohiko & MUGG's SNES EarthBound in 30:42.12
Player (142)
Joined: 7/16/2009
Posts: 686
I already greatly enjoyed the glitched runs of this game, and this one just breaks the game so much more. Almost the whole of the game is skipped, something I had never expected of this game. Although this run does not so much have the "super-human precision" that some other runs have, it is still a great display of how games can get dissected by TASers (and normal runners, for that matter). As this run clearly shows, there is a significant difference between the USA and Japanese ROM versions. I feel that (especially due to the Japanese ROM having a glitch that allows much, much faster completion of the game) this definitely warrants publication alongside the USA version, if not even obsoletion of it, due to this ROM being considered the better of the two. An easy yes vote as far as I'm concerned.
Joined: 5/8/2010
Posts: 177
Location: Entropy
This just isn't a game anymore, it's to broken up to be a game anymore! I played it the normal way and this just made me say WTF just happend! We don't even see the final boss, who need to kill things to win LOL!
sgrunt
He/Him
Emulator Coder, Former player
Joined: 10/28/2007
Posts: 1360
Location: The dark horror in the back of your mind
I hate to say this, but enough of the game's been broken at this point that it's beginning to lose its entertainment factor. Though I find it interesting that the debug menu can be activated from within normal game conditions, the actual use of it takes out a lot of the fun of, say, the out-of-bounds glitch seen in the previous version of the run, where it's considerably more obvious that you're doing something broken. I need to think some more on how to vote on this and, in the event that it goes on to be published, whether it should be alongside the current run or obsolete it (I think a parallel can be drawn with the Earthbound Zero runs).
Joined: 2/1/2008
Posts: 347
Wow, that was quite fascinating. It would be interesting to figure out how this glitch happens, as you mentioned that the text pointer appears to not be the thing to manipulate in order to get to the debug menu. I found this fairly entertaining, but I suppose that's because my mind is a bit more technical than most people. I voted yes, but I think this should be published as a separate category. I think we still need a version of the game that defeats Giygas, which is exactly what the current run does, since seeing the game being beaten (more or less) normally is still entertaining. However, using the debug menu to get to Giygas would kill the entertainment the current run uses, since you could easily use the debug menu to add party members, level up all of them to a good level, and trigger the proper events to get the fight against Giygas to work. So perhaps there should a category that denies the use of the debug menu and a category that allows the debug menu. Personally, I think both runs are entertaining in different ways, which is why I think they should co-exist.
<ccfreak2k> There is no 'ctrl' button on DeHackEd's computer. DeHackEd is always in control.
Player (208)
Joined: 7/7/2006
Posts: 798
Location: US
I personally think blatant memory corruption or SRAM corruption should have its own category in most or all cases. It is my opinion that the Earthbound categories should be something similar to the following: (1:) Run with memory corruption (2:) Run without memory corruption, but still major glitches (3:) Run satisfying some completionist conditions or perhaps just banning certain glitches in run (2:)
Joined: 2/1/2008
Posts: 347
This isn't exactly memory corruption (though the tent glitch has the potential to corrupt memory, which could contribute to how the game over is reached after triggering event 70, right?), but I suppose using the debug menu could be considered practically the same thing, as it is probably just poking memory values anyway (just in a more deterministic manner than random memory corruption). So yeah, perhaps a run that allows the tent glitch/debug menu would be one category and a heavily glitched without memory poking run (i.e. what is published now) should be the other category. A possible third category at this time would be unfulfilled, as there is no run that uses glitches that do not skip major events in the game (other than the very long first Earthbound TAS, which does not use many glitches, if any at all, IIRC).
<ccfreak2k> There is no 'ctrl' button on DeHackEd's computer. DeHackEd is always in control.
Editor, Skilled player (1404)
Joined: 3/31/2010
Posts: 2086
Finally! Given how this run uses the Mother 2 ROM, I'd say we publish it alongside the original run, because, the discussion wasn't bad enough the last time.
Joined: 8/23/2008
Posts: 417
Kirkq wrote:
It is my opinion that the Earthbound categories should be something similar to the following: (1:) Run with memory corruption (2:) Run without memory corruption, but still major glitches (3:) Run satisfying some completionist conditions or perhaps just banning certain glitches in run (2:)
While I'm not sure I'd call this "memory corruption", I agree with the overall statement. This game provides both the ability to directly force changes in code (debug mode access) AND glitches that allow for major skips, but in a way that isn't specifically using developer-only tools (current published run's staircase sickness abuse). Both are entertaining, in different ways, but the more interesting one is also slower. Given that the slower one is currently published, it would be very strange to turn a faster run down; however, it should not obsolete the previous run, because the older one is (debatably) more impressive to watch. In this case, I would think we just need a proper categorization. Perhaps the current run is the "fastest w/defeat of final boss" and the new one would simply be "fastest", or something along those lines. (Sometimes coming up with the appropriate designation is the hardest thing...)
I will not use self-reference in my signature.
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
This is awesome. Consider there be a HD encode coming up!
Joined: 6/20/2008
Posts: 150
The Pokemon Yellow run got published at the beginning of this month, and it left far less of the game intact than this. In my mind, there's really no question whether this run should be published.
Player (208)
Joined: 7/7/2006
Posts: 798
Location: US
blahmoomoo wrote:
This isn't exactly memory corruption
Ah, right. So this category is something like, "Glitches the game to run through massive amounts of code to hit the debug menu code." It's quite similar to memory corruption, but values aren't actually changed, they are just read in a very glitched manner.
Joined: 2/1/2008
Posts: 347
That's close to what this is like. Parts of the ROM are being read as text where non-text data exists due to the corruption of a pointer (which is caused by checking a tile outside of the game's map bounds), or something like that, until the debug menu is reached. It's a bit more complex than that, since text can include control codes which, if badly written, can cause strange things to happen (by changing values in the RAM in unintended ways, such as poking the values that give Ness his bike when he shouldn't have one, which is a possible dead end with the tent glitch), which is why buttons were being pressed in many ways to manipulate bad things to not happen. However, once the debug menu is reached, it is used to intentionally change the game's state to get to almost the end of the game, which is similar to memory corruption, but it's closer to memory manipulation. But I would still put this under the same category as memory corruption, since a TAS that uses memory corruption does manipulate the game to corrupt the memory in a desirable manner, such as setting up the inventory correctly for the Pokemon Yellow save corruption TAS. EDIT: good point brought up below, added that above.
<ccfreak2k> There is no 'ctrl' button on DeHackEd's computer. DeHackEd is always in control.
Editor
Joined: 3/10/2010
Posts: 899
Location: Sweden
There is some memory that is corrupted here, the read pointer. It is glitched to an unintended value and no longer points to legit data.
Skilled player (1637)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
Something has been bothering me about this movie. A couple scenarios to consider: - what if a code was used to enter the debug menu? - what if a code existed to enter the debug menu, but a glitch was used instead? - how do those compare to a debug menu that is only enterable via a glitch? That said, aside from the ~10,000 frames of waiting for the debug menu to open, this was enjoyable.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Joined: 6/6/2010
Posts: 84
Location: Laurentides, Quebec
This is really interesting.
Joined: 2/1/2008
Posts: 347
A Game Genie code does exist to enter this debug menu. See the beginning of this page for how to use the code to get to this debug menu. Essentially, it requires the code to be activated before reading certain signs in the game, which causes some other text from the game to display until the debug menu is reached. (then the code needs to be deactivated, since it causes weird/bad things to happen elsewhere) There are actually two debug menus in this game, but at this time the second one can only be accessed via a code because it is special and probably coded separately (to compare: debug menu 1, debug menu 2. The second debug menu is not very useful, really My bad, I didn't realize "view map" enabled changing flags and stuff too, along with accessing the first debug menu and rolling the staff credits). The debug menu used in this TAS uses the same menu system as every other in-game prompt (which uses the text window display). This makes it accessible through the tent glitch, since the pointer to text to display ends up pointing to a junk value and, through manipulation, can eventually be advanced to where the debug menu is. So this TAS gains access to this debug menu through a glitch rather than using a code. But it almost seems like the code does something similar to the tent glitch, since it does not grant instant access to the debug menu but, rather, makes other text appear first. Of course, you cannot use Game Genie codes in a TAS. They are not saved when recording a movie anyway.
<ccfreak2k> There is no 'ctrl' button on DeHackEd's computer. DeHackEd is always in control.
Editor, Expert player (2313)
Joined: 5/15/2007
Posts: 3855
Location: Germany
I once tried to use a cheat code to trigger the debug menu and I think it always brought up valid text data. The tent glitch, however, behaves differently in this context since it brings up nothing. Only a lot of what seems to be text that the game runs through in the background but I already stated that the text pointer doesn't affect anything in this case. I don't have a good understanding of this glitch yet and I can only abuse it in certain ways, as the glitch follows a certain pattern. The debug menu 2 would be very useful since you can activate the Staff roll directly with it so it would save a lot of time. But it isn't known to be accessible at this point of time.
GabCM
He/Him
Joined: 5/5/2009
Posts: 901
Location: QC, Canada
Claiming SD encode.
mklip2001
He/Him
Editor
Joined: 6/23/2009
Posts: 2224
Location: Georgia, USA
I didn't think I'd end up liking this too much because it used the Japanese version (so I couldn't understand the humor), but this turned out quite cool. Waiting 10000 frames for the debug menu is annoying, though fast-forwarding isn't too bad (there could be a subtitle in a published encode explaining that people should fast forward, maybe...). This is technically proficient enough and still entertaining that I think it ought to be published. However, since this tent glitch seems to prominently work in the J version alone, I would suggest treating this like the two runs of Mother 1 and publishing this separately alongside pirohiko's U version run.
Used to be a frequent submissions commenter. My new computer has had some issues running emulators, so I've been here more sporadically. Still haven't gotten around to actually TASing yet... I was going to improve Kid Dracula for GB. It seems I was beaten to it, though, with a recent awesome run by Hetfield90 and StarvinStruthers. (http://tasvideos.org/2928M.html.) Thanks to goofydylan8 for running Gargoyle's Quest 2 because I mentioned the game! (http://tasvideos.org/2001M.html) Thanks to feos and MESHUGGAH for taking up runs of Duck Tales 2 because of my old signature! Thanks also to Samsara for finishing a Treasure Master run. From the submission comments:
Shoutouts and thanks to mklip2001 for arguably being the nicest and most supportive person on the forums.
GabCM
He/Him
Joined: 5/5/2009
Posts: 901
Location: QC, Canada
SD encode here. Archive page Video file (MKV, 37.7 MB) Uploaded a new and working encode.
Patashu
He/Him
Joined: 10/2/2005
Posts: 4016
Consider me amused! EDIT: Going back and watching the 'glitched' run, I have to say I prefer that one. It feels like it's working within the mechanics and limitations of the game, as opposed to stumbling upon a cheat menu and instantly winning. Seeing this is way way faster, though, both should be included.
My Chiptune music, made in Famitracker: http://soundcloud.com/patashu My twitch. I stream mostly shmups & rhythm games http://twitch.tv/patashu My youtube, again shmups and rhythm games and misc stuff: http://youtube.com/user/patashu
Joined: 11/4/2007
Posts: 1772
Location: Australia, Victoria
Link to video Uploaded to YouTube, may wanna watch here if you want an embedded playlist.
Joined: 7/29/2004
Posts: 136
Location: Temple City, CA
Big yes vote from me. That was an awesome abuse of the game's coding. That said, I agree with what many others are saying. This run showcases a great glitch, but it basically breaks the entire game to the point where it doesn't really appear to be the game anymore. I think it should be published alongside the current run and not obsolete it.
"How can you prove you exist? Maybe we don't exist..." -Vivi Ornitier (Final Fantasy IX)
Joined: 8/23/2008
Posts: 417
A note on the Game Genie cheat code mentioned earlier: IIRC, that code causes the game to ignore scripts within the text... specifically, it ignores the "stop text now" scripts. All of Earthbound's text is a giant clusterfuck of lines, pretty normal for an RPG. The code just tells the game to keep reading, ignoring any commands otherwise. This is why you have to start from one of a few places; the Scaraba sign, Brick Road's sign, and Pokey's speech are all sequential in the order of the text as it's stored within the ROM, and Pokey's dialogue is followed by a line of text which includes script to trigger the debug menu. That's also why you have to turn off the code when getting the "NNW SMSK?" message; if you leave it on, the text reader still ignores code telling it to stop pulling lines. My memory of Earthbound is a little foggy (I haven't looked at its inner workings in a couple years) so please correct me if I'm off base here. I still don't fully understand how the broken pointer pulled from bad memory within the tent is manipulable, so if someone would like to elaborate, that would be nice.
I will not use self-reference in my signature.
1 2
5 6