• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Gen II - Crystal 16-bit move/Pokémon indexes (PokéDex Expansion)

Pia Carrot

So, the holy grail of crystal disassembly. Claimed to be possible by many, completed by none. Here's a discussion/research thread regarding it.

Reasons why it's important: To allow more than 253 Pokémon to be added to a ROM Hack, as well as more than 255 moves.


FroggestSpirit's Data Structure Spreadsheet: https://docs.google.com/spreadsheet...rYnHEJ6vkJa9jwEenzphYJxNS8/edit#gid=266470096

This is a proposed restructure of pokemon data to allow dex expansion

Huderlem's Pokedex expansion for gen 1: https://github.com/huderlem/pokered/tree/expand-dex

It's been done on gen 1. So why can't we do it so easily for gen 2?

Anyway, that's all I got. I'd love to hear other opinions and insight on this topic.
Despite there only being room for 253, I honestly think that's already a good number and you can just remove this or that pokemon to add this or that pokemon as you please. The only real reason I'd want additional slots for GSC would only to be add pre-evo's and final stage evolutions from Gen 3 onwards that were not thought of until after GSC. So namely Wynaut, Electivire, Sylveon, and etc. by the time you add those in with your already 253. That'd put it around 300-310 Which I'd honestly think is enough for GSC if you're going canon wise. But if you really wanted to add other pokemon that never existed before like Gardevoir and Lopunny, then it's already easy to do that because you can just substitute anything that isn't iconic or canon to characters or story line.

For example, Take Koffing or Zubat. Zubat is too iconic of a pokemon because it's on similar level with Magikarp, and you'd expect those to be everywhere. And Koffing, well, in most Pokemon games, they are used by the villians and in this case, Team Rocket uses them constantly about as much as Zubat, because Team Rocket were originally Gen 1 villians and still are considered that in Gen 2 by Kurt and others.

BUT, if we was to take a look at something like maybe Krabby and Kingler, they hold no grounds on the story, with a character, and are not even among the iconic level that would be Magikarp. Their only cliche is being used by most Sailors and perhaps a random trainer that you won't even remember the name of due to just being grind material.

So in this sense, its easy to replace something like Krabby and Kingler, with perhaps Sandyghast and Pallossand. One of my favorite due to Acerola

Another fun thing about this is that you can do exactly what I just mentioned and not hurt the Sailor class whatsoever and you can even add to other trainers like Hex Manic's or perhaps if you wanted a special character to use it.

So in the end, its really easy to add and remove pokemon to make it look right by GameFreak standards without hurting the major aspect of the game itself and 253 could really be enough for just about any Pokemon game/hack. But the only reason I'd add more than 253 if I wanted to, would be to complete the evolution lines. And even great Pokemon hacks like Polished Crystal suffered with it, but was still a great game nonetheless.


Well-known member
My opinion on this matter is quite simple: It's possible in Generation 1, it's possible in Generation 3 and it's also possible in Generation Freaking 4, so I don't see a reason why it shouldn't be a thing in Generation 2.

No matter if you just want to add pre-evolutions and evolutions added in later generations or if you want to have 65k pokémon in your ROM, it should be possible to add entirely new pokémon to a ROM and let the ROM Hackers do the rest.