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 II Glitch Discussion

Nickname outsider Pokémon and Eggs - Page 1

Nickname outsider Pokémon and Eggs

Posted by: Torchickens
Date: 2017-11-02 16:26:07
Wrong pocket HM01 (hex:F3) in many versions of Pokémon Gold allows you to nickname a party Pokémon.

Sadly this freezes the game on English, Spanish and Italian versions but works on French, German (although I'm unsure if my ROM is a bad dump, "Gold" with both uppercase "G" and lowercase other characters is a default name) and Korean Gold. In Japanese Gold the wrong pocket HM01 appears to have a different effect and seemingly 'nothing happens'.

I noticed I was able to use this to nickname an Egg. When the Egg was in the last slot of the party, I was able to nickname it. If I didn't view the summary of the Egg, its species (Togepi) would be revealed on the nickname screen, while if I viewed its summary beforehand it would be named Oeuf (Egg).

[img]https://i.imgur.com/yjv8GZs.png[/img] [img]https://i.imgur.com/StnMVyS.png[/img][img]https://i.imgur.com/R8UmAes.png[/img][img]https://i.imgur.com/uH0Lexp.png[/img]

[img]https://i.imgur.com/tazuaC9.png[/img] [img]https://i.imgur.com/StnMVyS.png[/img][img]https://i.imgur.com/FTlW0Np.png[/img]

I wonder how this would work in an expanded party? Would you be able to change the nickname of Pokémon beyond slot 6, hence modifying an unrelated memory address? Also this seems to work for nicknaming outsider Pokémon which is really useful alone.

Re: Nickname outsider Pokémon and Eggs

Posted by: Couldntthinkofaname
Date: 2017-11-02 17:00:28
Neat find!

You mentioned something about an expanded party, which I think is a neat concept, but I wrote a box name code that sets $DA22 to $FF, and the game softlocked upon viewing the party. Do you know of any way an expanded party might be possible?

Re: Nickname outsider Pokémon and Eggs

Posted by: Torchickens
Date: 2017-11-02 18:52:31

Neat find!

You mentioned something about an expanded party, which I think is a neat concept, but I wrote a box name code that sets $DA22 to $FF, and the game softlocked upon viewing the party. Do you know of any way an expanded party might be possible?


Thanks!  :)

That's right.

In Generation I opening the expanded party would work provided the Pokémon above FF have greater than 0 maximum HP (if greater than 0 current HP) due to the game not being able to draw the HP box, and swapping Pokémon in the expanded party is easy.

However in Pokémon Gold and Silver not only must Pokémon 1-6 not have 0 maximum HP, but it seems specific memory addresses (described in this thread) have to be greater than 3 (I don't know why though) to avoid a freeze upon opening the Pokémon menu.

Additionally glitches will occur that make navigating the menu a pain unless you view a Pokémon's summary and continually scroll down, including possible freezes. These can be seen in this video about map distortion; a side effect of opening the party menu with 22-29 Pokémon.

Obtaining over 6 Pokémon without arbitrary code execution is possible by moving a ????? 00 or FF to the top of the party and using move PkMn w/o Mail to withdraw a seventh, where from there on you can continue to withdraw more and more Pokémon. However when you withdraw a 30th Pokémon (Gold/Silver) or 21 in Crystal the game will freeze.

Maybe you could work around this though, and with arbitrary code execution you can set the number of Pokémon to above 30 or 21.

I found out that memory editing using out of bounds Pokémon is indeed possible with HM01, but I don't know if you can access many useful addresses other than DC57 and DC90 (Day Care species 1 and 2).

If you use arbitrary code execution to get more Pokémon however, you can corrupt addresses up to Echo RAM E426 (C426). I found something cool with this when you set the number of Pokémon to 142 (0x8E).

[img]https://i.imgur.com/t2GHeQ5.png[/img]

Though you can't notice it with this image, some of these characters are constantly changing and we can corrupt the music by entering random characters like in TheZZAZZGlitch's debug Yellow corruption 'fuzz' feature.

Re: Nickname outsider Pokémon and Eggs

Posted by: Couldntthinkofaname
Date: 2017-11-02 19:14:09
Regarding the addresses that are required to be greater than $03, maybe something like this could work:


ld hl,$DA4F
ld bc,$0030
ld e,$1D
ld a,$04
.loop
ld (hl),a
add hl,bc
dec e
jr nz,.loop
*Rest Of Code*    ; probably change $da22 here


The obvious issue being a box name code that does something similar/same to this may be difficult to make, another being the fact that the menu can still crash if the user is unlucky (The latter issue probably cannot be helped). It is however, an interesting concept, being able to directly edit memory addresses by nicknaming an egg :)

Re: Nickname outsider Pokémon and Eggs

Posted by: Parzival
Date: 2017-11-05 11:20:59
If you were to call the naming script for a nicknamable Mon and can somehow switch the Egg into that mon's slot it'll name the egg because of how the script works.

Re: Nickname outsider Pokémon and Eggs

Posted by: Krys3000
Date: 2017-11-05 14:35:59
Wow, that's nice! I remember now Haxel saying that to me when we were working on the best TM for G/S Wrong Pocket TM ACE. Thanks for working on it!

Re: Nickname outsider Pokémon and Eggs

Posted by: Torchickens
Date: 2017-11-05 16:50:49

Wow, that's nice! I remember now Haxel saying that to me when we were working on the best TM for G/S Wrong Pocket TM ACE. Thanks for working on it!


You're very welcome! ^^*