Pokedex Conversion Explained - haven1433/HexManiacAdvance GitHub Wiki

Pokedex Order Tables

The generation 3 pokemon games have 2 separate pokedex lists: one for each pokemon's 'regional dex' order, and the other for each pokemon's 'national dex' order. These terms are quoted because that's how they work for Ruby, Sapphire, and Emerald, but not for FireRed and LeafGreen. See below for more details on FireRed / LeafGreen.

Since each pokemon has 2 different dex locations, GameFreak decided to include a 'conversion' table, that lets them jump straight from a pokemon's regional number to their national number. Here are some examples:

@regionaldex/treecko 1
@nationaldex/treecko 252
@hoennToNational/0 252
@regionaldex/bulbasaur 203
@nationaldex/bulbasaur 1
@hoennToNational/202 1

Note that the third table (hoennToNational) can be determined using the values in the other two tables. Specifically, the third table's result at the index given by regionaldex is the value given by nationaldex. Note that the index's are off by one, because the pokedex starts indexing at 1 while HexManiacAdvance starts indexing at 0.

Automatic Update

Because the third table can be determined automatically, HexManiacAdvance can calculate the appropriate values for the conversion tables. It will give you the option to do this any time that:

  • The conversion tables values are currently incorrect. This is usually because you changed one or both pokedex orders.
  • Each pokemon in each dex has consistent numbering. That is, if two pokemon have the same regional number, then they also have the same national number.

To make HexManiacAdvance calculate the values of the third table for you, select Utilities -> Update Dex Conversion Table.

FireRed and LeafGreen

In FireRed and LeafGreen, you'll notice that the regionaldex table still looks exactly like the Hoenn regional dex, not like the Kanto regional dex. That's because GameFreak decided to cheat a little: in these two games, the regionaldex and nationaldex use the same table (nationaldex), and the other two tables mentioned here are ignored. They simply place a limiter in the regionaldex function to limit it to 151 pokemon, which isn't too difficult, since a similar limiter already was in use for the hoenn dex. (Note that in Ruby/Sapphire/Emerald, every pokemon gets a regionaldex number, even if it's not in the regional dex.)

Anyway, that means that keeping the hoennToNational table in sync doesn't really matter for FireRed / LeafGreen. However, the functionality is still available, in case you choose to modify FireRed / LeafGreen to take advantage of these extra tables.