Jump to content

[Gen3 Guide] Reconstructing a Pokémon from a Trainer's Secret Base


Recommended Posts

Hello ProjectPokemon community,

Today I want to share with you what I found about reconstructing a long lost Pokémon using ONLY the information the game has stored on a Secret Base.

It is important to know since the beginning that the game does not store IVs for Secret Base teams, but it does store their pokemon's PID, which can be used to find some possibilities for the IVs. This has been tested on Pokémon Emerald ENG.

So, without further ado, lets begin.

 

Tools needed:

 

First of all, we need the savefile loaded into VBA. Get in front of the trainer that has the Pokémon you want to reconstruct, and create a savestate if you want.

image.png.c7df1fecd09dff7326e193e5a89526d0.png

Initiate the battle with the trainer, and let him throw his first pokémon into battle.

image.png.6e30013f298f5d6f6284d4f52b8507d3.png

Then, go into Tools -> Memory Viewer. Click Save...

Fill both fields with the following: Address 02024744, Size 300

image.thumb.png.5c4b294a803c68ec109eb01bf4b155c1.png

This will create a memory dump with the information of the trainer's pokémon team.

The next step is to use the tool PKX Extraction. Select Main Line Games, Gen3, and open the file you just dumped from VBA. Click Extract, and you will be able to Save each Pokémon as a pk3 file.

image.png.25ea0be66b1da155fc26ed5772663b74.png

Now lets open TriggersPC to find what is the TID and SID of the OT. In the top bar select Games -> Manage Saves and add your game savefile to the list. Click Close. On the top right select your savefile, and click on the Secret Bases tab. Select the trainer you want to get the TID/SID from and you will find both values in the bottom left area.

image.png.5257907e5ac57cc7baa861b719a650ed.png

Take note of both TID and SID values.

Now into PKHex. Open your savefile into PKHex and drag your pokemon into a box. Right click it and select View. In the left side of PKHex, you'll be able to input any value you want into any field provided. Before that, lets grab this pokémon's PID right at the top.

image.png.f4fecd5a9eb10cb14d32491b51bec256.png

From here, we 100% know the pokemon's PID and Nature. This crobat has a PID A4B7983E and its Hasty (Nature is tied to the PID).

Lets go ahead and click OT/Misc on the left side, and input the OT Name, ID and SID (we got them from Triggers PC).

image.png.1981adb5eb032585c33bcccfd2f2a8da.png

It is now time to start with assumptions, unfortunately. Do you remember Met Location? Do you remember in which game the pokémon was caught? That might be important... I know this Crobat was caught in Ruby ENG, with a live battery (not dead battery). I know this because my friend David was the first from our group to own a gen 3 cartridge back in the day, and I know this is his first savefile. So it is very likely that this savefile was created while the battery was still alive. I don't know where this Zubat/Golbat was caught, tho. All this information would help you narrow down the possibilities for finding the real IVs combination for this Pokémon.

Lets go ahead and open PokeFinder. Click on Gen 3 Tools and then PID to IVs. Input your pokemons PID and click Generate.

image.png.e685535d370115c761ae52eaa7b73601.png

Your results may be different, but in my case I found 3 possible IVs combination for this Crobat. Now, Method 2 for wild Pokémon, is typically an Emerald thing. Method 4 COULD happen, but its less likely. So, we are left with Method 1. I would say that I am 90% certain that this pokémon was generated via Method 1, but there's still a chance it was Method 4. I am not sure, so I'm playing with statistics. Feel free to check the cheat sheet at the end of the guide for a more comprehensive list of methods per encounter for each gen3 game.

Lets go into PKHex and input the IVs into our pokemon. Since we are here and the EVs are not real (they were created by the extraction tool) lets clear them all.

image.thumb.png.d74c9dd9415627c3f9bf7ca89784ae9c.png

We are just left with one question. Where was this Zubat/Golbat caught? Well, it can be caught in the following locations.

Zubat: Cave of Origin Entrance & Floors 1 & Basements 1, 2 & 3, Granite Cave Floors 1 & Basement 1 & 2, Meteor Falls Entrance, Seafloor Cavern, Shoal Cave, Victory Road Floor 1

Golbat: Cave of Origin Floors 1 & Basements 1, 2 & 3, Meteor Falls, Seafloor Cavern, Shoal Cave, Sky Pillar Floors 1, 3 & 5, Victory Road Floor 1 & Basements 1 & 2

 

You can use PokeFinder to search for it. I was lucky while writting this guide, and I got a possible Zubat at the first attempt. Lets see how I did it.

 

Go ahead into PokeFinder and on the startup little window, click on Gen 3 tab and then Wild option. Then, on the profile section at the top, click Manager and create a New profile with the correct information. Check the following screenshot to see how I did mine. I didn't check Dead Battery because, as I said before, I believe this Zubat/Golbat was caught on a live battery.

image.png.c5938963fb77dd10e0cf67251e51185d.png

Now, back into the main window, select the profile we just created. Don't miss this step.

Click on the Search tab, and input the information you want to search for. In my cause, I searched for a wild Zubat using Method Wild 1, in Cave of Origin 1F, with the IVs I found previously (min and max), I set the gender to Female, and I set the Nature to Hasty (I knew this information was 100% correct from PKHex - again, PID and Nature are tied). Then, click Search on the left. If you get no results, change the Pokémon filter if applicable (in my case Zubat or Golbat would be possible), and if not, change the Method. If you still get no results, change the location. Mess around with all those filters to try to find your pokémon.

image.thumb.png.678148082e25c2b0a9a94d10462bd65a.png

The PID of this result matches the one I extracted from my savefile's secret base. Now, back into PKHex, input the Origin Game, input the met location you are happy with, and input the Met Level that was returned by PokeFinder. Click the red triangle at the top left of the pokemon, and it should be legal now.

image.png.544f26294cc5e2e3677d5f888175e6f1.png

 

And there you go. Now click on the illegal pokémon thats left into the box, and select Set. It will be replaced by the legal version that we just reconstructed.

image.png.8ca5855dc57f381ed2225157840d3f09.png

DONE!

 

Cheat Sheet for Methods (provided by Papa Jefé)

 

All Gen 3 Eggs
More-or-less untraceable. PID and inherited IVs have their own RNG.

 

Ruby/Sapphire

Gifts/Legends/Static Encounters
METHOD 1 (Common)
METHOD 2 (Never)
METHOD 4 (Playing in Pokemon BOX RS only)

Wild Pokemon
METHOD 1 (Common)
METHOD 2/4 (Rare)

 

Fire Red/Leaf Green

Gifts/Legends/Static Encounters
METHOD 1 (Always)

Wild Pokemon
METHOD 1 (Common)
METHOD 2 (Rare)
METHOD 4 (Uncommon)

 

Emerald

Gifts/Legends/Static Encounters
METHOD 1 (Always)

Wild Pokemon
METHOD 2 (Common)
METHOD 1 (Uncommon)
METHOD 4 (Rare)

 

If you have any suggestion on how to improve this guide, or to correct the phrasing or whatever, please be free to tell me.

Big thanks to Papa Jefé for directly helping me out on this quest. He trully knows A LOT about RNG. Check out his channel on twitch: https://www.twitch.tv/Papa_Jefe and youtube: https://www.youtube.com/channel/UCaI-6Hv4x8bWVFvmjKIGmMQ

Big thanks to the creators of the tools used on this guide (PKHex: Kaphotics; TriggersPC: trigger_segfault; PKX Extraction: Poke J; PokeFinder: AdmiralFish) and to all those who have been working on the Pokémon RNG field for all those years.

Edited by Dragaza
added cheat/sheet for methods
  • Like 1
  • Amazed 2
Link to comment
Share on other sites

  • Dragaza changed the title to [Gen3 Guide] Reconstructing a Pokémon from a Trainer's Secret Base

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...