Project Gotham Racing - various sample files

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Project Gotham Racing - various sample files

Post by AnonBaiter »

Forgive me if I've gone a little too far with uploading samples, but what can I do?

Here are all the files. There's one file left to upload, though. And it's bigger than all the others, as it also includes files that aren't archives at all.

Besides, it's to be noted that all the files that aren't sound files used in the game contain a "GOTHPOK" header at the start.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Project Gotham Racing - various sample files

Post by aluigi »

It's only a container where the RES files are just stored "as-is" while the others are often compressed but I don't know what's the algorithm.
I get something interesting with comprlib_rle3 but not the exact data.
The game has been developed by Bizarre Creations so I tried their algorithm available in quickbms, but nothing good.
Tried also the scanner.

This is the work-in-progress script in case someone is able to figure the exact algorithm:

Code: Select all

comtype ??? # comprlib_rle3, bizarre, bizarre_skip?
idstring "GOTHPOK\x1a"
get SIZE long
get ZIP byte
get ZERO byte
padding 0x10
savepos OFFSET
get ZSIZE asize
math ZSIZE - OFFSET
get NAME basename
get EXT extension
string NAME + "_new."
string NAME + EXT
if ZIP == 0
    log NAME OFFSET SIZE
else
    clog NAME OFFSET ZSIZE SIZE
endif
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Project Gotham Racing - various sample files

Post by AnonBaiter »

Honestly, why "comtype ???"? It just triggers an error whenever I test your script on any of these files...
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Project Gotham Racing - various sample files

Post by aluigi »

This is the work-in-progress script in case someone is able to figure the exact algorithm:
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Project Gotham Racing - various sample files

Post by AnonBaiter »

Oh, that...
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Project Gotham Racing - various sample files

Post by AnonBaiter »

aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Project Gotham Racing - various sample files

Post by aluigi »

Finally a simple and quick archive file format:
http://aluigi.org/bms/project_gotham_sxwad.bms
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Project Gotham Racing - various sample files

Post by AnonBaiter »

Wait a minute, these files actually came from Forza Motorsport! Project Gotham Racing didn't use these .SXWad files as far as I can remember.
Sorry for my incompetence, I didn't realize I was posting this on a wrong thread until now.
aluigi
Site Admin
Posts: 12984
Joined: Wed Jul 30, 2014 9:32 pm

Re: Project Gotham Racing - various sample files

Post by aluigi »

Uhmmm ok.
AnonBaiter
Posts: 1125
Joined: Tue Feb 02, 2016 2:35 am

Re: Project Gotham Racing - various sample files

Post by AnonBaiter »

Okay, so all of GOTHPOK compressed files use this header:

Code: Select all

00000000  47 4F 54 48 50 4F 4B 1A F1 53 00 00 01 00 CC CC  GOTHPOK.ñS....ÌÌ
00000010  EC DD 15 00 00 00 00 00                          ìÝ......
Actual data starts at offset 0x18(or 0x14, I don't know), in which control characters start to take over. They might mean something else, but since I'm uneducated on that subject...