Need help decompressing Arcade game files

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Need help decompressing Arcade game files

Post by proaudiosoft »

Hey guys. I am new to the community, but very happy to be here. I have been trying to get into some game resource files on an arcade bowling game I own so I can do some customizing. (mainly, music, menu's, operator adjustables and such). I have tried using the comtype2 tool, I get several hundred files, but I dont see anything that is useful, or has any pertinent info in the files it created. I have looked at them with winhex, and other tools. I have also tried many game scripts, nothing seems to work too good. The only thing that even resembles being close is running the dance_evolution_arcade.bms script. With it I can get a some of the directory structure of the file, and several correct or close to correct file names and directories. But mostly files with zero bytes, and none with good data that I can tell. I have tried about everything I know to try, including using other tools. I just want to see if someone can help, or point me in the right direction even. I am uploaded a small file from the game called opadjust.ita. (most of the asset files are .ita)The only reason I chose it is because it is small. I would really appreciate any insight anyone can give me... Thanks so much :)
Last edited by proaudiosoft on Thu May 04, 2017 1:42 pm, edited 1 time in total.
StreamThread
Posts: 54
Joined: Fri May 27, 2016 2:28 pm

Re: Need help decompressing Silver Strike Arcade game files

Post by StreamThread »

Modified script:

Code: Select all

# Silver Strike Arcade

comtype lzss0
get DUMMY long
get VER long
get UNK1 long
get DUMMY long

get DUMMY long
get UNK2 long
get FILES long
get UNK3 long

goto 40 0 SEEK_CUR

for i = 0 < FILES
        get NAME_OFF long
   math NAME_OFF + 12
   get DUMMY longlong
   get UNK4 long
        get OFFSET long
   get DUMMY long
        get SIZE long
   get DUMMY long
        get ZSIZE long
   get DUMMY long

        savepos TMP
        goto NAME_OFF
        get NAME string
        goto TMP

    if SIZE == ZSIZE
        log NAME OFFSET SIZE
    else
        clog NAME OFFSET ZSIZE SIZE
    endif
next i


But compression may be not lzss0, because exported DDS looks like incorrect.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Silver Strike Arcade game files

Post by aluigi »

Unknown compression, I tried even with OFFSET+1 but still wrong results.
The format of the archive is very simple:

Code: Select all

comtype ???
get DUMMY long  # 7
get DUMMY long
get INFO_SIZE long
savepos BASE_OFF
get DUMMY long  # 7
get DUMMY long  # 1
get DUMMY long  # 0x34
get FILES long
get OFFSET long  # 0x3c
math OFFSET + BASE_OFF
goto OFFSET
for i = 0 < FILES
    get NAME_OFF long
    get ZERO long
    get ZERO long
    get FLAGS long
    get OFFSET longlong
    get SIZE longlong
    get ZSIZE longlong

    savepos TMP
    math NAME_OFF + BASE_OFF
    goto NAME_OFF
    get NAME string
    goto TMP

    if FLAGS & 3    # 1 or 2?
        clog NAME OFFSET ZSIZE SIZE
    else
        log NAME OFFSET SIZE
    endif
next i
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Silver Strike Arcade game files

Post by proaudiosoft »

Thank you both for your quick replies. Since the Compression is unknow, does that mean its just a no go? is there any way else to figure out compression? I can extract dds files with dragon unpacker (with ripper plugin), I can also get them with multiextractor. They are useless to me though as I cant re-inject, plus I need more files. (like music especially, or movies). Is there any Hope? Thanks!


-p.s. btw, Great Site and program Aluigi, Thanks for sharing it with us!
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

Its Working, Thanks alot!
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

How "it's working"?
You can extract only the non-compressed files, isn't that a big limitation for you?
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:How "it's working"?
You can extract only the non-compressed files, isn't that a big limitation for you?


Yes it is. I really need to edit the .GOB Files, even though some is readable, much is still compressed. I also need the audio and other files that are not right it seems. Looking through the main game file I see alot decompression refferences all mention lzrw1 decompression(see attached pic). I believe this is the compression used. But I get errors when I try to run it with that in your script:

offset filesize filename
--------------------------------------
000090d4 8320 STATIC/BOWLING/ALLEY/TEXTURES/BCBK.DDS

-------------------
*EXCEPTION HANDLER*
-------------------
An error or crash occurred:

*EH* ExceptionCode 80000001 guard page violation
*EH* ExceptionFlags 00000000
*EH* ExceptionAddress 0149c482
013D0000 + 000cc482 quickbms.exe
*EH* NumberParameters 00000002
*EH* 00000000
*EH* 0d5d1900

Last script line before the error or that produced the error:
29 clog NAME OFFSET ZSIZE SIZE

Anything we can do to make this work? thx
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:How "it's working"?
You can extract only the non-compressed files, isn't that a big limitation for you?

Any hope for this Aluigi?
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

Excellent job! :D
http://aluigi.org/bms/silver_strike_arcade.bms

The reason of the crash is that the compressed data doesn't have the initial 4 zero bytes set by the compressor, so the script adds them and everything works perfectly.
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:Excellent job! :D
http://aluigi.org/bms/silver_strike_arcade.bms

The reason of the crash is that the compressed data doesn't have the initial 4 zero bytes set by the compressor, so the script adds them and everything works perfectly.


Fantastic Aluigi! what great news. One question, are the .GOB files still compressed when the come out? there seemsto be alot of nonsense in them? thx
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

GOB are not compressed.
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:GOB are not compressed.

Are they encrypted at all? Just wondering why there is so much nonesense in them... thx
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:GOB are not compressed.

One last question. Some of the files on drive are .ITM(not ita) files. some contain movies and other media. If I try to extract a movie with the tool MultiExtractor I get a ton of dds files that seem to correspond to movie frames. Other Types of .itm files I cant get anything from. Some ITM files are inside the ITA files also. I need to be able to extract these as well. Can you take a look at one? Will upload a very small ITM file... Thx Aluigi!
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

GOB are not encrypted too, they are just data with strings. Probably a model or something else. Not my field.
The ITM you uploaded contains one DDS at offset 0x12c indeed.
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:GOB are not encrypted too, they are just data with strings. Probably a model or something else. Not my field.
The ITM you uploaded contains one DDS at offset 0x12c indeed.


Thanks, yes it does. And if I get rid of the garbage before that offset I have a good dds image file. But some ITM files have a few hundred dds files (or other types). is there an automated way to extract and reinject via a script? Thanks, you have been such a big help
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

Upload some of these ITM files and I will check them.
I need at least 2 of them, one with many DDS images in it and one with non-DDS in it (if available).
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:Upload some of these ITM files and I will check them.
I need at least 2 of them, one with many DDS images in it and one with non-DDS in it (if available).

I am not positive after just searching a bit that there are itm files that dont contain dds files. but many contain many dds files, that are like movie frames. Anyway, here are two examples:

bartop-arcade.com/itm/PERFECTGAME_SC_.ITM
bartop-arcade.com/itm/RED01_.ITM

Also, another issue. The wav files extracted from the ita files do not play, not in windows anyway.
Here is a ita file with many wav files inside:

bartop-arcade.com/itm/bowling.ita

I did notice in the game code it mentions something about a codec, so I am wondering if this just amounts to them having a special codec in order to play the wav files. I dont know, but I really wanted to be able to change the music.... Talk to you soon I hope... Thx
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

Script 0.3

Supports ITM and improves ITA (100% now with folders)
proaudiosoft
Posts: 19
Joined: Wed May 03, 2017 7:31 pm

Re: Need help decompressing Arcade game files

Post by proaudiosoft »

aluigi wrote:Script 0.3

Supports ITM and improves ITA (100% now with folders)



Excellent work! All in one script too! Just curious, why dont the wav files play in windows? I am assuming if I insert my own wavs they wont work because of some special format or something? Thanks, Great Job!
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Need help decompressing Arcade game files

Post by aluigi »

Because they are not RIFF wav.
I guess that they are encoded in some way but they keep the original name of the wav file from which they derive.
Maybe you can open a topic in the Audio section for them.