Jump to content

FAQ: Unused Pichu Event in Gen 3 (?)


Recommended Posts

To preface this: I think the video below is a great video, and it is pretty informative. However, people who do not know how to achieve ACE on Emerald may lose out.
Anyhow, people would likely wonder/worry about how the event has not been known, or ask other questions about it. The point of this thread is to cover what is known regarding this Pichu event. (it's not about ACE)

Video in question:


Before I explain what this Pichu is, I need to do a brief explanation of WC3.


Brief explanation of WC3 (for FRLG and E):
Split WC3 sections: Wonder card data (wonder card text and checksum and other settings) and the wonder card script.
[more detailed technical breakdown here]
image.png

The wonder card script literally controls what the delivery person says, what flags get set, and what the delivery person gives.

When the debugging versions of the games leaked, it was discovered that certain debugging wonder cards (such as Old Sea Map, Aurora Ticket, Altering Cave, a Pichu egg etc) were stored in the debugging game. It was also discovered that in the games, the wonder card script is stored separately from the wonder card header.

(It was later discovered that the debugging games have a local distribution mode. The wonder cards can be found here)


So what is this Pichu?

1) First angle of attack at the problem.
Using the dialogue that the hipster-delivery person hybrid spoke, I was able to find the egg Pichu script.
(just in case you wanna try it for yourself, be aware that Gen 3 text uses the character encoding)

Spoiler

For example, I used "Please raise" from the hipster-delivery person dialogue
image.png

Which the character encoding for Please raise is CA E0 D9 D5 E7 D9 00 E6 D5 DD E7 D9

I then found it in the game data.
image.png

 

I then searched backwards for B8, as Wonder card scripts start off with a offset pointer.
image.png

And from there, I grabbed data that was 0x3E4 in size.


I compared the Pichu Egg script found in the final game, against the Pichu Egg script for debug wonder card (for Emerald). The image below is the comparison.

unknown.png?width=943&height=405

Left data is script from the debugging wonder card, right data is the Pichu egg script taken from ENG Emerald game.

Note: offset is 0x674D3D of Final game (ENG), 0x3E4 in size.

Besides the offset pointers being different, the rest of the script are almost mostly the same.

(If you're curious on how to identify offset pointers, it's B8 XX XX XX 08. For example, in the data of the right, it's B8 3D 4D 64 08. When you account for endianness, it points to 0x674D3D, as mentioned above)


2) Second angle of attack at the problem.
The video linked to a pastebin with the relevant codes (useful if you wanna try it out).
Comparing to the pastebin (https://pastebin.com/dFLaf2TB), if we ignore the 8 in that highlighted value below (could just be RAM address or something; I imagine ROM data is stored in RAM starting from 0x8000000)
unknown.png

You can see that the highlighted value is the same value as the offset I found in (1)
[this means the data I found is indeed the correct data]

 

Conclusion/TL;DR:
The Pichu Egg is merely a leftover script of a wonder card that was in the debugging versions of the game.
There are other scripts that were leftover, such as changing the species in Altering Cave, getting Old Sea Map, getting Aurora Ticket, getting Mystic Ticket etc.

 

  • Like 2
  • Thanks 1
  • V-Wheeeeeel!!! 1
  • Speechless 1
Link to post
Share on other sites
  • theSLAYER changed the title to FAQ: Unused Pichu Event in Gen 3 (?)

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...