Glitch City Laboratories Archives

Glitch City Laboratories closed on 1 September 2020 (announcement). This is an archived copy of a thread from Glitch City Laboratories Forums.

You can join Glitch City Research Institute to ask questions or discuss current developments.

You may also download the archive of this forum in .tar.gz, .sql.gz, or .sqlite.gz formats.

Generation I Glitch Discussion

Pikachu's Beach and glitches - Page 1

Pikachu's Beach and glitches

Posted by: bwill11
Date: 2019-05-03 15:21:52
I have two separate ideas that never got off the ground related to glitches and the Pikachu's beach minigame that never got off the ground, and am looking for ways to make them work.

First of all, while messing with Super Glitch, I tried to play the Pikachu's beach minigame while the game is corrupted. The issue is that once Super Glitch is active, Pikachu is no longer Pikachu, so I can't play the minigame. I have no clue how I would get past this, but I think it might be possible by textbox ID matching in some way, or another method I don't know about.

The other idea was a speedrunning category I made up, which I called surfrad%, where the run is over after finishing the beach minigame. I have two theories on how to do it-
1. Use textbox ID matching to bring up the text box with the dude asking whether you want to surf. The issue is that I only have a vague understanding of how ID matching works(there doesn't seem to be a guide for this, at least not on this website) and have no idea of how I would set this up.
2. If that is impossible or impractical, Get the surfing Pikachu by making a hybrid of Pikachu and any water type using Q (hex FF glitch Pokemon). This has its own problems, as to get Q you need the Trainer Escape glitch (or use an ACE setup, but that doesn't seem practical) to get 44HY and evolve. Getting a high enough special doesn't seem practical for a speedrun, but I do know that the Pokemon encountered from Trainer Escape can be altered using textboxes (I learned this from using the girl who trades you a Nidoran to alter the Pokemon encountered to a Missingno early in the game), and could theoretically use this to encounter 44HY or Q, or maybe preferably a stable Missingno to do item underflow to get Q and wrong warp to the minigame house, but I am unsure how that would be actually done.

Any ideas?

Re: Pikachu's Beach and glitches

Posted by: Parzival
Date: 2019-05-03 16:25:53
$FF8F ACE to execute the minigame, then a simple completion of the game.

Happy TASing!

Re: Pikachu's Beach and glitches

Posted by: Torchickens
Date: 2019-05-03 21:03:15

I have two separate ideas that never got off the ground related to glitches and the Pikachu's beach minigame that never got off the ground, and am looking for ways to make them work.

First of all, while messing with Super Glitch, I tried to play the Pikachu's beach minigame while the game is corrupted. The issue is that once Super Glitch is active, Pikachu is no longer Pikachu, so I can't play the minigame. I have no clue how I would get past this, but I think it might be possible by textbox ID matching in some way, or another method I don't know about.

The other idea was a speedrunning category I made up, which I called surfrad%, where the run is over after finishing the beach minigame. I have two theories on how to do it-
1. Use textbox ID matching to bring up the text box with the dude asking whether you want to surf. The issue is that I only have a vague understanding of how ID matching works(there doesn't seem to be a guide for this, at least not on this website) and have no idea of how I would set this up.
2. If that is impossible or impractical, Get the surfing Pikachu by making a hybrid of Pikachu and any water type using Q (hex FF glitch Pokemon). This has its own problems, as to get Q you need the Trainer Escape glitch (or use an ACE setup, but that doesn't seem practical) to get 44HY and evolve. Getting a high enough special doesn't seem practical for a speedrun, but I do know that the Pokemon encountered from Trainer Escape can be altered using textboxes (I learned this from using the girl who trades you a Nidoran to alter the Pokemon encountered to a Missingno early in the game), and could theoretically use this to encounter 44HY or Q, or maybe preferably a stable Missingno to do item underflow to get Q and wrong warp to the minigame house, but I am unsure how that would be actually done.

Any ideas?



$FF8F ACE to execute the minigame, then a simple completion of the game.

Happy TASing!



Regular item ACE works too (if you want to do ACE). ^^

Wack0 has a specific method for ws m or any non-continuous (ws m/4F/etc. counts) item 3 executing method:
https://forums.glitchcity.info/index.php?topic=6638.msg192586#msg192586

In relation to your suggestions:

RE: text box ID:

I'm not sure if text box ID matching would work unfortunately, as as far as I know the Pikachu's Beach house has no meta-map script or script that brings up the equivalent text box based on the last (usually only the Trainer-escape glitch compatible maps have these and because both it doesn't have a script/there are no natural Trainers there a method like that may not be an option without ACE). If you don't want to use ACE

RE: hybridisation:

If I remember rightly it either reads Pikachu's second species byte [called the recipient] (or both bytes), and unfortunately basic Q glitch only changes the first byte [called the donor, which is based on the Pokémon above where Pikachu would be in the box], so even if you got an e.g. Horsea/Pikachu hybrid and taught it Surf, the surf guy still wouldn't recognise it. Furthermore although taking this Pokémon in the Day Care and out would revert it back to a normal Pikachu, you can't put Pokémon in the Day Care knowing HM moves so unfortunately it would be stuck as a hybrid for this method. However, there may be a possible workaround involving Stadium 2 reverting the Pokémon back into the original (if you're willing to use that), although have never done this method before so unexperienced, but theoretically like here https://www.youtube.com/watch?v=codkIvjMUt4 glitchhunter09 had a Pidgey/Mewtwo hybrid (originally a Mewtwo), taught it Fly and used Stadium 2 to make it a normal Mewtwo with Fly you could do the same thing with Pikachu and this would work. :) An important detail may be that the Pikachu has your Trainer ID and OT (thus starter Pokémon) or is not recognised by surf guy? (but unsure)

If you can't use Stadium 2, theoretically you can catch a Pokémon that knows Surf naturally (which must have your Trainer ID/OT) and use one of the remaining HP glitches instead with remaining HP as 84 (see  https://glitchcity.info/wiki/Remaining_HP_glitch_(disambiguation) ; if box 1 was never filled you can do storage box remaining HP glitch, otherwise you may be stuck with party remaining HP glitch)

Also if you're using Yellow Virtual Console, they changed the requirements so Pikachu doesn't need Surf at all. The only detail is that Pikachu must have your Trainer ID/OT (becoming a new partner Pikachu), and that should work. You can catch Pikachu with the Trainer escape glitch (Ditto variation) with 25 Special or theoretically one of the Trainer's Pokémon that always has 25 Special (Trainer's Pokémon stats are set).

;with the Pokémon controlling ID as .

From this tool based on Pokémon Red disassembly data:

PIKACHU:



SWIMMER's level 37 STARMIE in Sea Route 21

CUE_BALL's level 31 TENTACRUEL in Sea Route 21

PSYCHIC_TR's level 31 KADABRA in Saffron City Gym

PSYCHIC_TR's level 31 KADABRA in Saffron City Gym

JUGGLER's level 31 KADABRA in Fuchsia City Gym

COOLTRAINER_M's level 43 CLOYSTER in victoryroad3

COOLTRAINER_M's level 43 BLASTOISE in victoryroad3

COOLTRAINER_F's level 43 WEEPINBELL in victoryroad3

undefined's level 45 IVYSAUR in undefined

KOGA's level 43 WEEZING in Fuchsia City Gym



; Yet Trainer details in Yellow can be different so certain ones may not work (or none of them would, hopefully not). Possibly certain wild Pokémon would also have a chance of having 25 Special if you don't want to go to Pokémon Mansion or do a double Trainer-Fly for Ditto.

Other options are arbitrary code execution for wild Pikachu, any other glitch that lets you catch a wild Pikachu with your ID/OT.

For documentation, re a couple obscure options; unfortunately Rival LOL glitch wouldn't work as Pikachu's index number (84) corresponds with a control character, but normal LOL glitch may let you catch one if you can find a proper map or Glitch City/or force one yourself with RAM Glitch City (see here, note I don't know if anyone has made guides for this or remember specifics to secure one just right yet; but the idea is to put D35E/D35F in RAM, and at the right place later on in addresses past your RAM pointer; have values which secure as follows:

[img]https://i.imgur.com/6U7IU7z.png[/img]

^ If you want to do this specific method I can happily help with specifics :)

Hope this helps! ^^

Re: Pikachu's Beach and glitches

Posted by: Parzival
Date: 2019-05-03 21:48:43
I suggested $FF8F ACE as it can be done stupidly early and he was talking about a speedrun category, so it'd be a perfect fit for a TAS. I guess save corruptionexpanded itemsACE method would be even faster for a TAS, though…
Realtime runners might wanna do offscreen Pikachu shenanigans or, yes, traditional ACE.

Re: Pikachu's Beach and glitches

Posted by: Torchickens
Date: 2019-05-03 23:29:21

I suggested $FF8F ACE as it can be done stupidly early and he was talking about a speedrun category, so it'd be a perfect fit for a TAS. I guess save corruptionexpanded itemsACE method would be even faster for a TAS, though…
Realtime runners might wanna do offscreen Pikachu shenanigans or, yes, traditional ACE.


Oh OK (@both of you: sorry I didn't realise the speedrun part). I see, I thought this was a reference to an OAM DMA trick at first and it slipped my mind and didn't know you meant the Viridian Forest exploit, unfortunately I believe that method works for Red/Blue only, and either you can't do it in Yellow or the steps have to be different (though not certain??). But yeah, it is great for speedruns.

The fastest method I'm aware of no save corruption for Yellow is a glitch mart one (but haven't kept up with speedrunning since). I never tried it myself and wonder if it requires RNG manipulation. It seemed (from a cursory look anyway) to involve text box matching with a Town Map in Viridian City, and specific (sprite state?) data with a house with a bird that if I remember changes as it moves (at the least you have to leave in a specific way). This data is needed to be at $FE to bring up a Poké Mart (as the text pointer that is forced at Viridian Forest reads a starting control character byte first and $FE is Poké Mart*), which you can use to buy glitch items like 4F. https://www.youtube.com/watch?v=gkwTCYtwt4I (this one was TAS and not sure if you can do it real  time modified for Pikachu's Beach ACE too) also for real time, you can buy an unterminated name glitch item (possibly a specific one/and one you can afford/note too a different glitch item was acquired, maybe because unterminated name items can change the selected item ID if the 0x50 sub-tile is late enough), use that for Yami Shop glitch back at Viridian Mart, from there on force x0 of that item somehow, and then abuse dry underflow glitch by tossing x1 to get x255. From there you have the expanded inventory so could farm any glitch items needed from different places or do Celadon looping map glitch if essential.

*For reference, these are the others I know:

FF=Pokémon Center
FE=Glitch mart/Poké Mart
FD=PC for Pokémon storage only (unused! "Switch on!" text)
FC=PC for items only
F9=Normal PC
F7=Game Corner Pokémon prize menu (depending on text ID if I remember?) (I think I may have abused this with Coin Case for glitch Pokémon some time, and lucky posted about it too)
F6=Cable Club
F5=Vending machine

More general stuff including:

08=Execute assembly code after this (arbitrary code execution)
00=Print normal text after this

On similar note, you can do the stable unstable MissingNo. method; unstable Yellow MissingNo. while causing glitches will not freeze the game if you erased your save with Up+Select+B, so you can use it for duplication of item 6 of a battle item (ideally Potion; don't use Poké Ball for this), use it until you have x127, then use your Poké Ball; which will always work. Afterwards duplication will occur again and the stack is x255, allowing for dry underflow glitch and the same steps to get the items you need to run Pikachu's Beach as above.

Actually @parzival on hindsight I think you can do something like that re: save corruption in a fast time in real time without TAS. For instance, you can modify this method https://www.youtube.com/watch?v=RrfAzewhLW4 (for the RAM writes to self-modify the expanded PC to create a call Pikachu's Beach code) even though the method is not ideal for general use because of its restrictiveness); you can also farm non 0x00 items but it could take more time.

Yep you can do Pikachu offscreen glitch for glitch sign ACE that runs Pikachu's Beach too.

Re: Pikachu's Beach and glitches

Posted by: bwill11
Date: 2019-05-04 09:06:11
As for the Q glitch, it is possible to play the minigame using the Q glitch as found by FrightRat, and while I don't know the first mention of how to do it, I learned about how to do it from one of MissingnoXpert's videos:
https://m.youtube.com/watch?v=2euobysSvVE
Thanks for the ideas!

Re: Pikachu's Beach and glitches

Posted by: bwill11
Date: 2019-05-06 16:37:44
The stable unstable Missingno doesn't seem to work. Does it not work on VC or are there exceptions?

Re: Pikachu's Beach and glitches

Posted by: Parzival
Date: 2019-05-06 18:05:11

Does it not work on VC
if you have to ask this question, it probably doesn't work on VC, no.

Re: Pikachu's Beach and glitches

Posted by: Sherkel
Date: 2019-05-06 18:17:11

The stable unstable Missingno doesn't seem to work. Does it not work on VC or are there exceptions?
What about it in particular doesn't work?

From experience, what I remember is that on VC its cry upon being encountered is around 30 minutes. I thought the game had frozen at first, but eventually it stopped and it still cloned item 6. Luckily you only need to do this once to get a stack of 255 if it's an item usable in battle like a Potion.

Re: Pikachu's Beach and glitches

Posted by: Torchickens
Date: 2019-05-07 04:20:56
Yeah, it seems Sherkel is correct. I had it work on VC after clearing with up select b and not saving but had to wait a longer time before MissingNo. would let me battle. Either this or there is something overlooked. The fossil/ghost MissingNo. though generally harder to find however will duplicate item 6 more reliiably with no front sprite freezes.

Additionally, different platforms manage what happens differently; for instance this works on BGB emulator but not VBA which fails with some hardware specific details.

Re: Pikachu's Beach and glitches

Posted by: bwill11
Date: 2019-05-10 15:20:05
Update- on some emulators the stable unstable Missingno works, and on some when you encounter it it says "Missingno is trying to learn" and the game makes a high pitched screeching noise. Is this what you are referring to by 30 minute cry?

Re: Pikachu's Beach and glitches

Posted by: Sherkel
Date: 2019-05-10 15:30:49
That's just because some emulators are more accurate than others. If you're trying to test a glitch on an emulator that isn't going to behave like the actual game, you're just wasting time.

As for when I tried finding it on 3DSVC, the cry played when it finished sliding to the right of the screen, as with all wild encounters. Most of it was a high-pitched beep (I wouldn't remember the whole thing as I turned my volume off), but it stopped after about 30 minutes and I was able to proceed with the rest of the battle normally. I never saw a message including "MISSINGNO. is trying to learn". I'm not exactly in a hurry to test it again.

Re: Pikachu's Beach and glitches

Posted by: Parzival
Date: 2019-05-10 18:29:54
if your 3DS is hacked, i can help you through extracting the ROM from the official copyand making a VC lookalike with Gambatte, an actually good emulator, @bwill11.