SkyTemple / skytemple-files

Python library to edit the ROM of Pokémon Mystery Dungeon Explorers of Sky (EU/US)
GNU General Public License v3.0
20 stars 23 forks source link

Add sprite tile buffer setting and unknown second value to monster editing #17

Closed theCapypara closed 4 years ago

theCapypara commented 4 years ago

@Parakoopa I found out why Magikarp didn't evolve There is another check I forgot about: There is a table inside arm9.bin, with an entry for each pokémon species (the primary gender is always used to access it, so there are 600 total entries). Each entry has 2 bytes: The "unknown evolution value" and some other thing that I don't know what it is. Most species have an unknown evolution value of 6, but I have also seen 9, 10, 11, 12, 14, 16, 17 and 18. Values <= 6 are turned into 6 by the ASM. If a pokémon and its evolution have a different value, the pokémon cannot evolve inside a dungeon. Magikarp has 6, but Gyarados has 17, so that's why Magikarp can't evolve. I tested it again using Chinchou and Lanturn and it worked, since both have a value of 6.


Beep, boop, I'm a bot! This issue was created by @End in #reverse-engineering.

theCapypara commented 4 years ago

It seems the value is not directly related to evolution, but to the sprite size.