I spent a couple hours looking into this since I've had several requests for it and I'm going to have to say no for now. I expected some complications involved, but it turned out to be far more difficult than I had hoped.
Here's the issue:
The Pokédex data is stored in its own table and the Pokémon's national dex number serves as an index into this table. The table in the games only has room for 386 entries and the ?? Pokémon have national dex numbers higher than 386. In order to add more entries, the table needs to be relocated and all of the pointers in the game that refer to this table need to be updated.
I tried the relocation and pointer update, and that was pretty simple. It could even be done in an automated fashion via some sort of "Pokédex expansion" option in YAPE. Then I discovered the more difficult problems...
In addition to adding more data entries (which is possible after moving the table to make more room), the game also has a fair bit of code that accesses the dex data at various times. Most of this code has checks built in to it so that it will not work properly if the national dex number is higher than 386.
Some of the code that needs to be updated:
- "Seen" code (adds partial data to dex when you encounter a Pokémon)
- "Catch" code (adds full data when you catch a pokémon. This may or may not be combined with the code for when you hatch a new Pokémon or get one in a trade...)
- "Dex rating" code (it would need to know that there are now more than 386 entries.)
- Anything else that makes use of the dex data (I'm bound to be missing something...)
I don't know where most of the code is that needs to be updated. Even if I took the time to track it down for say, FR and LG, I would need to essentially start from scratch on R/S/E as there's no telling how different the code would be until I look into it.
I'm not saying this can't be done, it certainly could; I'm just saying that based on what I know now, I don't believe adding those extra 25 entries for all the advanced gen games is worth the effort required.
--Silver314