|Back to the project page||Powered by|
Some part of those tools are working quite well, some still need a lot of work.
One of the main reason of this is that some datas are hidden somewhere and index files have to be written manually.
For example, how are managed the sprites animations ?
You have a basic sprite name, let say "goblin", used to identify the different sprites (frames) for this animation.
The base name is not always the same (goblin, Goblin, GOBLIN, gob,...), and the different frames are not always on the same package.
This could have been too simple, so... there is duplicated frames (corresponding to different versions of the game).
After the base name, you add a prefix, corresponding to the animation's type (walking : no prefix, attack : prefix "A", dying : prefix "C").
Sometimes the prefix is different : the "BigWorm" dying will be "bigwormc" in spite of "BigWormC"...
Still too simple ? Ok... Now add to this the fact that the number of frame per animation is not always the same, that some animations are missing...
So, as you can see, you have to create manually index files specifying for each animation the number of frames, the base name, etc. Those files are probably hidden somewhere in the game datas, but I didn't find them.
This is just an example, but the problem is similar with sprite's offsets, map's sprites ID, etc.
I have created most of the files indexes (sprites animations, sprites offsets, map translations..) but some of them are incomplete.
|Sprites pack extraction||Finished||Every sprite is associated to several offsets. Some of them are incorrect... so there's a "modification file" loaded at startup to update the incorrect sprites. This file is incomplete.|
|Music and sound extraction||Finished||Nothing.|
|Maps extraction||Incomplete||A map is composed of sprites pick up in the sprites packages. The map is defined as a matrix of sprites ID. Unfortunately, I didn't found the link between the "sprite's ID" and the "sprite's name" (this is probably something like hash("sprite_name") = sprite_id...) So I've written an index file (yes, one again..) with those associations. This index is very incomplete !|
|Finished||Check the code for memory leak (should be ok).|
(displays an NPC/Monster somewhere with a specific animation)
|Finished||Add something to manage NPC movements (moving from point A to point B at a specific speed)|
(displays the map at a specific location)
|Incomplete||Two problems here :|
- sprites missing (see the "Maps extraction" problem)
- Transition between different types of ground incomplete (there is a mask system used to deal with transitions from grass to sand for example)