The Movies PAK
From XentaxWiki
Choose archive extension:
Contents
PAK
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
uint32 {4} - Version (5)
uint32 {4} - First File Offset
uint32 {4} - null
uint32 {4} - Number Of Files
uint32 {4} - Number Of Offset Pairs (256)
uint32 {4} - Number Of Folder Names (43)
uint32 {4} - Unknown (752)
byte {12} - null
uint32 {4} - File Directory Offset (52)
uint32 {4} - Folder Directory Offset
uint32 {4} - Folder Names Directory Offset
// FILE DIRECTORY
- // for each file
- uint32 {4} - Unknown
- uint32 {4} - Hash?
- uint32 {4} - File Offset
- uint32 {4} - Compressed File Length (including file data header fields and null padding)
- uint32 {4} - Decompressed File Length
- uint32 {4} - Hash?
- byte {32} - Filename (null terminated)
- uint32 {4} - Unknown
// OFFSET PAIR DIRECTORY
- // for each offset pair
- uint32 {4} - Relative Offset to Start of XXX (relative to what?)
- uint32 {4} - Relative Offset to End of XXX (relative to what?)
- uint32 {4} - Relative Offset to Start of XXX (relative to what?)
// FOLDER NAMES DIRECTORY
- byte {1} - null
- // for each folder name
- char {X} - Folder Name
- byte {1} - null Folder name Terminator
- char {X} - Folder Name
// FILE DATA
- // for each file
- uint32 {4} - Compressed File Length (including file data header fields and null padding)
- uint32 {4} - Decompressed File Length
- uint32 {4} - Compressed File Length
- uint32 {4} - null
- uint32 {4} - Compressed File Length (including file data header fields and null padding)
- if (next 4 bytes == "zcmp"){
- // a second compression header
- uint32 {4} - Compressed File Length (including file data header fields and null padding)
- uint32 {4} - Decompressed File Length
- uint32 {4} - Compressed File Length
- uint32 {4} - null
- }
- // a second compression header
- if (next 4 bytes == "zcmp"){
- byte {X} - File Data
- byte {0-3} - null Padding to a multiple of 4 bytes
- byte {X} - File Data
MultiEx BMS
Not written yet
Notes and Comments
Uses ZLib Compression