Submission #9322: PoltArtGeist's DS Pokémon: SoulSilver Version "glitchless" in 3:19:46.62

Nintendo DS
(Submitted: Pokémon: SoulSilver Version)
glitchless
(Submitted: glitchless)
(Submitted: Pokemon - SoulSilver Version (USA).nds USA)
BizHawk 2.9.1
717113
59.82609828808082
28943
PowerOn
Verified without NDS Firmware
			
Submitted by PoltArtGeist on 9/27/2024 11:48 PM
Submission Comments
  • Emulator used: BizHawk 2.9.1 (melonDS)
  • Initial Time: 1/1/2096 10:08:07
  • Use Real Time: False
  • DSi Mode: False
  • Use Real BIOS: False
  • Firmware Start-Up: Auto Boot
  • Forgoes major skip glitch
  • Uses a game restart sequence
  • Forgoes memory corruption
  • Forgoes all glitches
  • Genre: RPG

Goal Choice

This movie beats Pokémon: SoulSilver Version without using any glitches. There was no complete TAS of this game due to how difficult it is to do so, and I wanted to be the first one to achieve that.

Time Comparison

This movie beats the current RTA WR of the same category by 9 minutes and 34.4 seconds (TAS vs RTA timing), or 9 minutes and 10.9 seconds with RTA timing (ends when screen fades to black after Red disappears from the overworld).

Version Choice

I don't catch Lugia for this run, the reason I pick SoulSilver is different.
After clearing Dragon's Den and coming back to New Bark Town, I must go to the Ecruteak Dance Theater (AKA the Kimono House) to fight the Kimono Girls so I can prove myself. After defeating them, I go to look for the box art legendary of game version I am playing. In HeartGold, you go through Bell Tower to find Ho-Oh, which is really close to the Kimono House, but the problem is that you can only walk while inside Bell Tower, and it has lots of floors, and you also need more repels to be able to advance, which takes time. In SoulSilver, I Fly to Cianwood City and Surf to get to Whirl Islands, but I can actually use the bike while inside of the Whirl Island caves to get to Lugia much faster, and I don't use extra repels. This is ~20 seconds faster.

The Team

  • Cyndaquil and Quilava will let me go through the early game until I catch Raikou. It's really useful for Sprout Tower and Azalea Gym, and I also use it to teach it Cut. This Cyndaquil has a Rash Nature (+SpA, -SpD) and the following IVs: 4 HP, 23 Atk, 21 Def, 28 SpA, 5 SpD and 31 Spe.
  • Dratini is obtained at Goldenrod Game Corner, and I use it to teach it the water-related HMs in the game, as well a forced Double Battle against some Beauty-class trainers right before getting to Ecruteak City for the first time.
  • Abra is also obtained at Goldenrod Game Corner, and I only use it to teleport back to Violet City after defeating Whitney, otherwise I'd have to go through Route 35.
  • Spearow (named Kenya) is used to teach it Fly after we get the Storm Badge at Cianwood Gym. It also serves as a sacrifice during the Rival 3 battle at Burned Tower.
  • Raikou is the only Pokémon I use after I catch it. as it steamrolls every trainer we fight after that point. Doing RNG manipulation for this Raikou was difficult, because after we get the bike at Goldenrod, I must do careful movement in order to manipulate the RNG where I want it to be, and I do this by crossing many different loadlines in specific ways, checking NPC movement, and waiting a bit after the Beauty trainers in Route 37. Before I free the Legendary Beasts, I must do something called Radio Manip to manipulate Raikou's stats, and by exiting and re-entering Ecruteak City I manipulate Raikou's location until it is at Route 37 where I catch it. This Raikou has a Mild Nature (+SpA, -Def) and the following IVs: 27 HP, 30 Atk, 21 Def, 28 SpA, 26 SpD and 24 Spe. The Speed is enough to outspeed everything in the game, including Red's Pikachu, and it also gives me a safer Red fight.

About Luck

  • All of the random events in the game are determined with your game seed. This seed is determined by the date and time of the system's clock, and it uses the next formula:
RNG Seed = XXYYZZZZ = 100A0D2A
XX = Day * Month * Minutes + Seconds
e.g Jan 1st 2096, game booted at 10:08:07, started at 10:09:06 after Oak intro.
1 * 1 + 9 + 6 = 16
Convert to Hex = 10
YY = Hour
10 in Hex = 0A
ZZZZ = Frame Count + Last 2 Digits of the year
3274 frames + 96 = 3370
3370 in Hex = 0D2A
This seed helps me getting the Cyndaquil and Raikou I use for this run, as well as getting Pokérus, winning the lottery at Goldenrod so I can get a Master Ball for Raikou, and avoiding wild encounters until I get to Goldenrod.
  • In Pokémon HGSS, the outcome of the battles will always be determined when the screen fades to black. It also uses the same RNG formula as before, but because there are lag frames every other frame, I can only look for different battles every 2 frames to manipulate for high damage rolls or critical hits. Even though you can't manipulate the battles like you can do in other games such as Pokémon Emerald, you can pick different kinds of moves in order to manipulate the RNG mid-battle, this can be a non-100 accurate move, a move that can deal a status condition, a non-damaging move, a move with priority, etc. I do this to manipulate some of the fights in my favor. For example, I use Leer on Rival 1 to manipulate a critical hit so I can end the fight in 3 turns. This also means that I can only hit odd or even seeds.

Micro-optimizations

  • You can bump into characters or objects while you're standing still to save 4 frames everytime you do this on the overworld. During the early game, I sometimes don't do this because I need the RNG to be the same until I catch Raikou. An example of this is at Slowpoke Well, I intentionally avoid bumping at the third Team Rocket Grunt so I can check the NPC movement at Azalea.
  • You can also press the D-Pad on the next direction you want to go after talking to someone. It saves an additional 2 frames over the bumping method.

Potential Improvements

  • Getting a better Blue fight. The ideal scenario would be that his Exeggutor never picked Trick Room and always missed either Hypnosis or Leaf Storm, but after manually testing many different seeds I couldn't get it to happen. This is really difficult because even though you can theoretically get this ideal fight, it's not worth it if you have to wait for so long before starting the battle, and healing with lots of HP missing is really slow, and I really have to do it for the Red fight.

Special Thanks

  • MKDasher and GoddessMaria for being great Gen 3 TASers and for serving as inspiration.
  • im a blisy for their Gen 4 manip videos
  • PulseEffects for his HGSS videos
  • Werster for being a legendary Pokémon speedrunner and also serving as an inspiration. This entire route is the same as his.
  • And thanks to you for reading this submission.

Suggested Screenshot

286884
516600
616680

Darkman425: Claiming for judging.
Darkman425: Input file replaced by a 2005 frame improvement by the author.
Hello, PoltArtGeist, and welcome to TASVideos!
There's clearly a lot of careful planning and RNG manipulation done throughout to keep things moving along swiftly. The submission notes definitely confirmed that for some of the minor parts I didn't get from just watching the input file. Definitely an good watch for those with some knowledge of Pokémon under the hood and the absurd odds that would be needed to pull all of this off. Nice work!
Also I found it funny that the dramatic Lugia cutscene plays is immediately followed by turning 360 degrees and walking away from the encounter.
Accepting to Standard.

Spikestuff: Processing...
Last Edited by Spikestuff on 11/10/2024 11:09 PM
Page History Latest diff List referrers