Good afternoon. I have a question regarding these two scripts, first of all probably to Aluigi. The fact is that these 2 scripts open the game archives of one engine Alawar Engine (ex. Stargaze Framework), namely the data.pack file. Script sfgp opens outdated games, and butterfly_isoft opens newer ones, but the contents of the archives of both old and new games are absolutely identical. But there is 1 problem! Let's look at this problem using the example of the Snark Busters game series, where parts 1 and 2 are older and unpacked by the sfgp script, and part 3 is newer and unpacked by the butterfly_isoft script. The fact is that I decided to unpack the game archives into the root folders of these games. I unpacked the data.pak archive in parts 1 and 2 perfectly with the sfgp script, and then deleted the archive itself. The game started perfectly without crashes and bugs, as if nothing had changed. With part 3, everything is much more interesting. I performed the same procedure, but with the butterfly_isoft script. The game started, but most of the textures, including the cursor, were no longer displayed in the main menu. So I thought there might be an error in the butterfly_isoft script itself.bms? Any game based on the Alawar Engine that is unpacked by this script has any errors, but nevertheless it starts and does not crash. After all, in fact, the engine is still the same, the folders and files in the archive are still the same, only the principle of unpacking has changed. It seems that the butterfly_isoft script does not unpack all files, unlike sfgp. This conclusion can be drawn from the fact that the data.pack unpacked by the sfgp script in old games and extracted to the root folder allows you to play the game as if nothing has changed, which means that all the files were extracted exactly, and as for the games unpacked by butterfly_isoft, the games run with any errors (sound or graphic), so there are not enough files. Am I right, is there a bug in the butterfly_isoft script and can it be fixed?
I will attach the game unpacked by the sfgp.bms script and the game unpacked by butterfly_isoft.bms for familiarization with this problem.
Snark Busters 2 (data.pack unpacked sfgp.bms and deleted) https://disk.yandex.ru/d/en7wG-MqH__FKA
Snark Busters 3 (data.pack not unpacked) https://disk.yandex.ru/d/9alE5gXSdihxDA
Snark Busters 3 (data.pack unpacked butterfly_isoft.bms and deleted) https://disk.yandex.ru/d/lt3DALCokkMJUA
Please help me to understand this problem.
Scripts sfgp.bms & butterfly_isoft.bms
-
- Site Admin
- Posts: 12984
- Joined: Wed Jul 30, 2014 9:32 pm
Re: Scripts sfgp.bms & butterfly_isoft.bms
The butterfly_isoft.bms script is perfect.
All the files are perfectly decompressed with lzo, all correct.
In my opinion the problem is that the game expects the files kept compressed with the additional lzo extension.
In short the game wants images/effects/alpha_rect.pvrlzo and not images/effects/alpha_rect.pvr.
The job of the script is dumping and decompressing all together but if you want to keep the original files, remove the decompression part or directly use this script:
I'm quite sure that now the game loads without any error.
All the files are perfectly decompressed with lzo, all correct.
In my opinion the problem is that the game expects the files kept compressed with the additional lzo extension.
In short the game wants images/effects/alpha_rect.pvrlzo and not images/effects/alpha_rect.pvr.
The job of the script is dumping and decompressing all together but if you want to keep the original files, remove the decompression part or directly use this script:
Code: Select all
idstring "SFP"
get DUMMY byte
get FILES long
get PACK_SIZE long
for i = 0 < FILES
get FLAGS long
get DUMMY long
math OFFSET *= 0x10
getdstring NAME 0x70
get SIZE long
get OFFSET long
log NAME OFFSET SIZE
next i
I'm quite sure that now the game loads without any error.