PDA

View Full Version : [Tutorial] Hex-Editing Evolution Data


Glitchfinder
February 19th, 2007, 11:54 AM
Hi! Once again, I decided to post a tutorial that I had translated from the tutorials at the German site Rom Hackers World. This one is on hex-editing Pokémon Evolutions.

In US version of Sapphire, evolution data begins at 203B20
In the US version of Ruby, the evolution data begins at 203B90 (Thanks Blaziken626!)

1. Level Evolution

Example: Bulbasaur

[ 0400 ] [ 1000 ] [ 0200 ]

Meant: [ Level evolution = 0400 ] [ level = &H10 = DEC 16 ] [ Evolves into Ivysaur = 0200 ]

2. Item Evolution

Example: Gloom

[ 0700 ] [ 6200 ] [ 2D00 ]

Meant: [ Item Evolution = 0700 ] [ Item = 6200 = Leaf Stone ] [ Evolves into Vileplume = 2D00 ]

3. Trading Evolution

A) Example: Kadabra

[ 0500 ] [ 0000 ] [ 4100 ]

[ 0500 ]=Trading Evolution
[ 0000 ]=It always works.
[ 4100 ]=Evolves into Alakazam


B) Item-based Trading Evolution
Example: Porygon

[ 0600 ] [ DA00 ] [ E900 ]

[ 0600]=Item-based Trading Evolution
[ DA00]=Item, which is Upgrade
[ E900]=Evolves into Porygon2

4. Friendly Evolution

Example: Cleffa to Clefairy

[ 0100 ] [ 0000 ] [ 2300 ]

Meant: [ Friendly Evolution = 0100 ] [ 0000 Evolves at maximum friendliness when it levels up ] [ evolution to Clefairy = 2300 ]

5. Stat-based Evolution

5a)
Example: Tyrogue to Hitmonlee
[ 0800 ] [ 1400 ] [ 6A00 ]

[ 0800 = Attack is higher than Defense ]
[ 1400 = Evolves at level 20 ]
[ 6A00 = Evolves into Hitmonlee ]

5b)
Example: Tyrogue to Hitmontop

[ 0900 ] [ 1400 ] [ ED00 ]

[ 0900 = Attack equals Defense ]
[ 1400 = Evolves at level 20 ]
[ ED00 = Evolves into Hitmontop ]

5c)
Example: Tyrogue to Hitmonchan

[ 0A00 ] [ 1400 ] [ 6B00 ]

[ 0A00 = Attack is lower than Defense ]
[ 1400 = Evolves at level 20 ]
[ 6B00 = Evolves into Hitmonchan ]


6. Time-based Friendliness Evolution


6a) Daytime Friendliness Evolution
Example: Eevee to Espeon

[ 0200 ] [ 0000 ] [ C400 ]

[ 0200 =Evolves during the daytime at maximum friendliness (when it levels up) ]
[ 0000 =?? ]
[ C400 = Evolves into Espeon ]

6b) Nighttime Friendliness Evolution
Example: Eevee to Umbreon

[ 0300 ] [ 0000 ] [ C500 ]

[ 0300 = during the nighttime at maximum friendliness (when it levels up) ]
[ 0000 = ?? ]
[ C500 = Evolves into Umbreon]

After the evolution data there are 40 bytes that all say “00”.

Every Pokémon has up to five spaces for evolutions.

kaibachaoschampion
March 2nd, 2007, 08:05 AM
Do you or anyone else know where the Emerald evolution data begins?

Thanks :)

foofatron
March 5th, 2007, 05:02 PM
I'm cunfused.Can you make a chart for what hex equels ways of evo with levels and items?
If you can't make one explain how you get the hex and how to insert it.I'm not relly good with hex.What hex editor does this work best with where can I get it?

Glitchfinder
March 6th, 2007, 07:44 PM
I'm cunfused.

Can you make a chart for what hex equels ways of evo with levels and items?

0100: Friendly Evolution
0200: Daytime Friendly Evolution (Doesn't work with FR/LG)
0300: Nighttime Friendly Evolution (Doesn't work with FR/LG)
0400: Level Evolution
0500: Trading Evolution
0600: Item-Based Trading Evolution
0700: Item Evolution
0800: Stat-Based Evolution (Atk>Def)
0900: Stat-Based Evolution (Atk=Def)
0A00: Stat-Based Evolution (Atk<Def)

Levels:


01=1
02=2
03=3
04=4
05=5
06=6
07=7
08=8
09=9
0A=10
0B=11
0C=12
0D=13
0E=14
0F=15
10=16
...
63=99
...
FF=255 (Note: Pokemon won't evolve due to inability to reach this level)


Also, go to the tools section, in the temporary tools resource. They should have a link to "Whack a Hack". That site, if you look around the menues in the top section of menues in the sidebar, there should be one with hex numbers for Pokemon and items.

If you can't make one explain how you get the hex and how to insert it.

Just open the calculator in the Accessories mpart of the start manu. (Under "Programs") Change it to scientific mode, put in the number that you want converted to hex, and click on the round circle next to "HEX" (far left, right under the "text box" showing the number you have)

I'm not relly good with hex.What hex editor does this work best with where can I get it?

This should work with any hex editor that can save your work. Just use any of the recommended ones, those are what I use.

foofatron
March 7th, 2007, 04:04 AM
So I let the hex editor find the string and then I edit that pokemon's string to what I want right?

Glitchfinder
March 7th, 2007, 03:09 PM
Pretty much. The Pokemon should be in their hex order. (With Chimecho last, fyi)

Blaziken626
March 7th, 2007, 03:46 PM
Just thought I'd tell you that in Ruby, the evolutions start at 203B90.

Phaile
March 26th, 2007, 05:43 PM
This is pretty cool, so instead of having to hack it in you can just set some guys such as Machoke and Kadabra to evolve at a certain level instead of having to trade.

tImE
April 1st, 2007, 04:46 AM
I have a problem i tried to put roserade in my game but roselia dont have any evolution hexnumbers.WHAT TO DO???????

Deshay
May 17th, 2007, 04:29 AM
Do you have the offset for Leaf Green? :o

mackmich93
July 5th, 2007, 02:08 PM
Do this mean I can't add more eeveelutions? Since you can only have up to five? =/

thethethethe
July 8th, 2007, 08:16 PM
What are the codes for wurmples evolution

and also feebas to milotic

exedissolve
July 17th, 2007, 01:39 AM
IS THERE A WAY TO MAKE A POKEMON EVOLVE DEPENDING ON THEIR GENDER??

thethethethe
July 24th, 2007, 12:01 AM
If anyone wants the hex codes for wurmple and feebas' evolutions.

Wurmple to cascoon
[0C00] [0700] [2501]

Wurmple to silcoon
[0B00] [0700] [2301]

Feebas to milotic
[0F00] [AA00] [4901]

I'd hope that [0B00] and [0C00] are random

Glitchfinder
July 30th, 2007, 12:40 PM
IS THERE A WAY TO MAKE A POKEMON EVOLVE DEPENDING ON THEIR GENDER??

No, there isn't, at least not in the Advanced Generation.

If anyone wants the hex codes for wurmple and feebas' evolutions.

Wurmple to cascoon
[0C00] [0700] [2501]

Wurmple to silcoon
[0B00] [0700] [2301]

Feebas to milotic
[0F00] [AA00] [4901]

I'd hope that [0B00] and [0C00] are random

Thank you! That's a great help. Oh, and for Wurmple and Cascoon, Nintendo says there is some kind of method to it, but they won't say what it is. Oh, and do you think you could give the locations where the data begins?

bobbob
August 1st, 2007, 12:50 AM
thanks for the excellent tutorial

Juan
October 6th, 2007, 05:12 PM
In the US version of Fire Red, the evolution data begins at 25977C:pirate:
xD

theging
November 22nd, 2007, 09:19 AM
(Emerald) BULBASAUR Evolution Data: 00325344

It seems that just searching for 040010000200 using a hex editor will get you the data. (Worked for me with emerald and ruby.)

Btw, I noticed some free space before the BULBASAUR->VENOSAUR data, and I remembered, isn't there a dud pokemon before BULBASAUR? So [B]technically I think the evolution data starts a bit before the BULBASAUR data.

Forest Grovyle
November 22nd, 2007, 12:11 PM
theging, do not bump threads that are over a month old. I notice this should have actually been locked before when Juan posted it, so Juan, do not do this in future either.

Read the rules before posting again.

*locks*

--FG