(Link to video)
Submission Text Full Submission Page
In this TAS, I use save corruption and direct memory manipulations to skip all the game and go directly to the end. There is some graphical glitch because the memory is heavily corrupted and modified by this glitch.

Game objectives

  • Emulator used: BizHawk 2.8 (x64)
  • Trying to finish the game the fastest way possible with the most efficient glitches know.

Comments

If you want to know more about save corruption, you can check https://glitchcity.wiki/SRAM_glitch for more information and for direct memory manipulation, you can check https://bulbapedia.bulbagarden.net/wiki/Arbitrary_code_execution

Other comments

If you want to see what's possible with memory manipulations, you can check this run https://tasvideos.org/3358M by MrWint where he “play” with the hardware limits to make a really beautiful video.

CasualPokePlayer: Hello and welcome to TASVideos!
I'm cancelling this run with reasons outlined here: Forum/Posts/512622. Better luck next time!

TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 14884
Location: 127.0.0.1
Emulator Coder, Judge, Experienced player (608)
Joined: 2/26/2020
Posts: 698
Location: California
https://tasvideos.org/4329M Red/Blue obsolete Yellow for the Any% branch due to them just using the same glitch with slightly different setups. Even then this movie exists: https://tasvideos.org/1860M (note this doesn't have BIOS, so add around 6 seconds for with BIOS timing) Noting that trimming blank frames makes this movie roughly 1:46 (not bothering getting cycle count). Also this movie doesn't have the BIOS enabled so add around 6 seconds to get with BIOS timing.
Player (50)
Joined: 4/1/2016
Posts: 285
Location: Cornelia Castle
I'm giving this a no vote. This TAS technically doesn't beat the game, and even if it did, it's slower than any other Gen 1 publication.
DJ Incendration Believe in Michael Girard and every speedrunner and TASer!
Emulator Coder, Judge, Experienced player (608)
Joined: 2/26/2020
Posts: 698
Location: California
So I took a deep look into this TAS. There's a lot to unpack here. I'll first state how TASVideos operates. When you "submit" a TAS to the site, you are putting your TAS up as a candidate for publication on our site. The most obvious form of publication seen is the video posted on TASVideosChannel on YouTube, but there is also a movie page with the movie file + video link and a brief description. Publications on TASVideos are expected to be the best there is for that category, the "World Record" of the category, with previous "World Records" deemed "obsolete." It's not like speedrun.com where you submit a time and regardless of how good it is it gets put on a leaderboard with several other runners. Submitting to the site under an already published category means you are attempting to claim the "World Record" of the current category. If you don't beat the current publication under the category, the submission is rejected. This may not be your intent, which case the userfiles (https://tasvideos.org/Userfiles) would be a better place for this kind of thing. However, as a submission, this is how it will be looked at. Anyways, going through the TAS itself... RNG manipulation is not done at all. While this isn't necessarily suboptimal, for this category it is a very easy quick way to obtain needed values for item swapping. The overall route for this run seems to stem from a pre-RNG manip era for this category (see [1702] GBC Pokémon: Yellow Version "save glitch" by p4wn3r in 01:27.23), where wLastMap is changed to the Hall of Fame map (getting the needed values by throwing away items) so exiting Red's house just goes to the Hall of Fame. So discounting how the routing itself is suboptimal, this movie's execution is just suboptimal:
  • The very first input could arrive a frame earlier.
  • Options are set. This itself has several problems.
    • The down press to options could be a frame sooner.
    • The fast options trick as used in glitchless TASes ([4379] GBC Pokémon: Yellow Version by TiKevin83 in 1:36:26.54) is not used.
    • The left press for setting Fast Text could arrive 3 frames sooner.
    • You press Down to go to the Battle Animation Speed, then never change that, making that Down press entirely pointless.
    • And due to the above, the Start press for leaving the options menu could arrive 3 frames sooner.
    • Also since Fast Text is the only option set and you can get Fast Text by simply holding down A/B while text is printing, setting the options is entirely pointless, losing around 1.5 seconds overall.
  • Half of the textboxes in the intro are not cleared on the first possible frame, half of them could be cleared a frame sooner (or even sooner for one of them).
  • The player name selection is similarly suboptimal, with inputs sent frames later than needed.
  • The first Start press on entering the overworld could arrive 2 frames sooner.
  • Item scrolling is suboptimal. Simply holding Down is not the most optimal way to scroll down, pressing Left and Right at key moments can be done to make the game think a new Down input arrived and scroll items faster (as done since [2687] GB Pokémon: Red Version "save glitch" by MrWint in 01:09.95). Each item scroll (which there are 47 of them) loses 1 frame due to this not being used.
  • Down also wants to be held the same time as the A press to open the items menu to reduce windup time.
  • You spam Up in order to throw 138 items, taking 137 Up presses. Pressing Down 119 times gets the same result and saves 36 frames.
  • You can also start spamming Up/Down a few frames earlier than you do, and switch to A after the Up/Down A spam a few frames sooner too.
  • I'm not even sure what to say to the overworld movement, it seems as if you just decided to do it RTA but did so sloppily so there's a moment you're just standing there doing nothing.
  • You go all the way next to the wall when heading to the house exit and so exit the house on a turn frame, losing 2 frames.
Just cleaning up execution ends up saving around 5 seconds. And then the worst part here is that this movie doesn't actually complete the game, with the a textbox still waiting to be closed at the end. And closing that textbox ends up with the game spamming sounds and crashing after around 150K frames. This is avoidable anyways by just doing some other party swap to get a different amount of Pokemon registered in the dex, although that's a routing difference, which can be a whole rant on its own. ---- All of this isn't meant to discourage you from TASing, it's to point out how much you are losing by simply not tightening up execution and not using the most up to date tricks. Many of the tricks I describe are used in previous TASes and some even in RTA runs. Research is important, the submission text of Pokemon submissions have many tricks documented. The Pokemon Gen 1-3 Discord also has a TAS channel for Pokemon Gen 1-3 TASers, where people would be able to help you with TASing Pokemon. The TASVideos Discord also has people able to help with the ropes of TASing. I suggest too to avoid TASing categories like these (and probably Pokemon in general), unless you have the knowledge needed for re-routing this category and keeping execution tight. There isn't any known room for execution improvements. Heck, the last improvement to this branch was 4 frames from simply abusing checksum collision, as to save+quit just a bit faster. RNG manipulation is another wild beast that has to be contended with with Pokemon TASing, and that requires bots at the current level of optimization for this category. If you are willing to learn, great! Knowledge is out there and the community is there to help. However, other games don't have nearly as high of a floor as Pokemon does, and might be better choices for first timers like yourself.
TASVideosGrue
They/Them
Joined: 10/1/2008
Posts: 2738
Location: The dark corners of the TASVideos server
om, nom, nom... crunchy!