No, I don't think I have any save games from near there. I would have to play it all again...
ok, I'll try to find something on the web as a reference.
The INI file doesn't always specify a palette (*.COL) but it usually specifies a level/data file to use (FOREST or TOWER for example) -- from that information, I knew which screenshot to load a palette from.
I see... but can be useful
I've a little update the 0.70exp version (the link is the same as above), now almost the SHP work again, with correct palette.
Still GUARD.SHP give a memory allocation error...
The problem is:
for each SHP frame, there is a palette index (I've called ActorPalette because first time I've found it is in Kyrandia3 sprites).
This "ActorPalette" is index to main palette, so to find out the real color you must check the byte value of the image with this table and not directly with the palette table.
For example:
Color 14 of ActorPalette is equal 56.
A pixel color of the image with value 14 is not the color 14 of the main palette, but is the color 56 of the main palette, because the color is referred to ActorPalette.
The problem is, if the pixel color is greater of the ActorPalette range (and for some SHP will be), which is the right color?
For ex. if the ActorPalette is max 16 values, a color 229, cannot exist into ActorPalette.
In this version, I've made this solution.
If the color is in the range of ActorPalette, then use it for conversion, if the color is out of range, use it directly with main palette.
So, some color, can be incorrect.
But, I've tried STARTUP.PAK -> GAMESHP.SHP and seems ok. (The ActorPal is 16 index, but a pixel color into frame 89, the last, is 229, so...).
Hope you can understand those technically informations...
