Engineers Maxwell Posted October 31, 2023 Engineers Posted October 31, 2023 (edited) I've stumbled upon archive from racing game (Street Racing Syndicate that runs on Eutechnyx engine) for GameCube. Basically the entire archive contents are compressed as a single chunk of data. I wasn't able to detect algo, but it looks like some form of LZ. Maybe someone seen something similar or same? Thanks. Fields: 0x78 Compressed size 0x7C Uncompressed size 0x80 Data start To admins: If you have problems with samples, please let me know what is ok. archive.zip Edited October 31, 2023 by Maxwell
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
Engineers Maxwell Posted October 31, 2023 Author Engineers Posted October 31, 2023 I've edited my initial post. I don't expect it's an engine, but rather platform thing, compression algo used from GC SDK perhaps? All other platforms (PS2 and Win) are using regular zlib.
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
Engineers Maxwell Posted October 31, 2023 Author Engineers Posted October 31, 2023 I am sending header structure struct Header { u32 id; u32 numEntries; u16 numTextures; u16 numModels; u16 numAttachments; u16 numAttachedModels; u16 numSkeletons; u16 numCameras; u16 unk1; u16 numRigNodes; u16 numMaterials; u16 numMeshes; u16 unk2; u16 numReferencedTextures; u16 unk22[4]; u16 numIndexBuffers; u16 numVertexBuffers; u16 unk20[2]; u16 numSkinnedMeshes; u16 numDeformedMeshes; u16 numAnimations; u16 unk3; u16 numAnimatedNodes; u16 unk4; u16 numUnkNodes; padding[58]; u32 compressedSize; u32 uncompressedSize; }; Hopefully this will clear things up. 1 hour ago, wssdude said: Apparently, PC version has one giant archive.ar (it has over a gigabyte and probably contains all the data so obviously won't upload it I suppose... could share some chunk of it if someone wants it). Oh, yeah, I forgot about that, I was looking at it like a year ago. All platforms are using those big ar archives. Those acts like regular generic game archive. I had fully researched those. Arc acts like a package, holding various data structures. And after looking on my old research, it looks like only GC version is using compression, so there is a possibility the compression is not GC related. I guess I assumed it's platform compression, due to being the only one using it.
Guest Posted October 31, 2023 Posted October 31, 2023 (edited) Trash Edited December 27, 2025 by wssdude
DKDave Posted October 31, 2023 Posted October 31, 2023 (edited) The compressed data does indeed start at offset 0x80. It uses lzo1x compression, and you get a decompressed file of 25991 (0x6587) bytes. Taking into account the compressed size, there are also an extra 0x1e bytes at the end of the file for some reason. I'm not sure if other files have multiple compressed blocks, but this just has 1. Edited October 31, 2023 by DKDave 1
Engineers Maxwell Posted November 1, 2023 Author Engineers Posted November 1, 2023 9 hours ago, DKDave said: It uses lzo1x compression Thank you, this is exactly what I was looking for 9 hours ago, DKDave said: there are also an extra 0x1e bytes at the end of the file for some reason. Yes, those can have variable length, data seem same across arcs. Possibly dictionary for lzo? 10 hours ago, wssdude said: Is the file using mix of big endian and little endian? It uses big endian as a whole, but for some reason only those two u32 (and possibly footer) are in little. My guess is that they use little endian decompressor abi.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now