|
Post by strikestar on Jan 3, 2016 22:03:07 GMT 1
Hello! How to extract resourses from files ZELRES1.SAR, ZELRES2.SAR, ZELRES3.SAR? I need image sprites and other game resousres, please help me!
|
|
|
Post by hugh on Jul 27, 2017 23:39:44 GMT 1
I have opened the files in hex editors in the distant, distant past and observed vague Almas-like shapes in the data, so I'm sure it's possible, although I'm unaware of any tools for it. The files are assuredly not compressed. I tried to decode them maybe 15 or 20 years ago.
Zelres1.sar contains some filenames at 35e3 but I can't find any references to that position in the file. There's clearly text before then, amongst other things. Zelres2.sar contains filenames at 3cd4, so we can't assume that filenames will start in the same place.
At 1c978 we find "KENJYA.GRP" followed by Sage text - I popped "Kenjya" into Google Translate, it offered me some Kanji that would presumably be the phonetic equivalent. The translation is "Wise man", so we can expect that file data *SOMETIMES* follows an instance of the filename. The filename appears to be a null-terminated string. The next two bytes give us a value of 44,237 which seems too big. And, indeed, the file seems to end long before that number of bytes.
We have "KING.GRP" at 17228, data starts at 17230 with an unknown length. "ARMOUR.GRP" is the next filename at 184b8. So KING.GRP would need to be approx. 4,744 bytes (1288 in hex) and I can't find that anywhere near the filenames. The text only takes 895 or so bytes (037f hex) but I can't find that or any similar values nearby either.
Funnily, DRUG.GRP is the filename with an internal description of "Witchcraft Implement shop"
There are more filenames without data at 466b0 which is near the end of the file, and there's nothing later than that.
Zelres3.sar has two .grp filenames. You can find an example of something that looks graphics-y at 28c2, it's 16 bytes wide. It's unclear by just glancing at it whether it's represented in 16-bit (probably 5-6-5) colour codes, or some 8-bit representation. We know Zeliard MCGA is only 64 colours, but the numbers go as low as 19 and right up to 245. 0 seems to represent transparency. Flicking through the data, it doesn't look like there's any unused bits - but even if you managed to extract that data, you've still got to decode it. Bear in mind there are two 16-colour modes, one 4-colour mode, one monochrome mode and one 64-colour mode. So 64 colours could be stored in 6 of the 8 bits and 4 colours in the remaining two bits, with 5 bits used elsewhere for 16-colour and monochrome. OTOH, it's probably easier to blit the raw data to the screen so you could be looking at a sprite for each mode. You might want to simply draw the entire file to screen and see if you can identify sprites visually. It is a VERY long time since I had the opportunity to play with video RAM directly, so I'm afraid I have no idea any more.
There's another potential sprite at 3c95 or 3c96.
|
|