traeighsea / pokeemerald-expansion-regions

Feature branches for the pokeemerald decompilation. See the wiki for more info.
0 stars 0 forks source link

Add ability to read both E and FR metatiles to C code #13

Open traeighsea opened 6 months ago

traeighsea commented 6 months ago

Description

Motivation

FRLG, RS, and E all have different ways they store and serialize metatiles and metatile attributes. By using the new json data format, we should be able to serialize to their respective formats, and read from those formats. This would allow us to use the FR metatile format as well as E at the same time provided we add the data we need to the Tileset struct for how to read the binary data.

It would also be useful to update emerald metatiles to 32-bit attributes to be able to pack more data, and in the future use the more robust FR system for attributes.

Design

The tileset struct should be extended to have new variables; numTiles, numMetatiles, numPals, and lastly a mapping to how the data is packed. Since FR tiles are larger, we should update the emerald tiles to 32-bit from 16 bit to have the same data size, though read differently.

ShinyDragonHunter has some work on his repo towards this effort. Ideally we can help him out, and pull some of his code to get off the ground here.

Discord contact info

No response