Gotcha:
What changes on Elesa model:
The vertex data is is identical, except by bone weights. Originally they were just an integer to be divided by 65535, for Elesa's model it's a float. Because of this, model vertex data is 40 bytes long instead of the original 32 bytes for characters' models.
In addition, vertex data size for scenery models varies between 36,40,44 and 48 bytes, with the main structural difference being 4 bytes of vertex color data present before the UV. Turk had already figured this out and used the data size to distinguish between types of models - the problem is that Elesa using 40 bytes per vertex makes the plugin think it's a terrain model with color data, so it reads the rest incorrectly.
I made a workaround, unfortunately you have to manually select version "1.2" for Elesa and "1.0" for everything else, because I couldn't find out how to distinguish them automatically. It's on my fork: https://github.com/jugolm/PokemonMasters
What changes on Elesa model:
The vertex data is is identical, except by bone weights. Originally they were just an integer to be divided by 65535, for Elesa's model it's a float. Because of this, model vertex data is 40 bytes long instead of the original 32 bytes for characters' models.
In addition, vertex data size for scenery models varies between 36,40,44 and 48 bytes, with the main structural difference being 4 bytes of vertex color data present before the UV. Turk had already figured this out and used the data size to distinguish between types of models - the problem is that Elesa using 40 bytes per vertex makes the plugin think it's a terrain model with color data, so it reads the rest incorrectly.
I made a workaround, unfortunately you have to manually select version "1.2" for Elesa and "1.0" for everything else, because I couldn't find out how to distinguish them automatically. It's on my fork: https://github.com/jugolm/PokemonMasters