Far Cry CGA

From XentaxWiki
Jump to: navigation, search

CGF, CGA


Format Specifications

char {6}     - Header (CryTek)
uint16 {2}   - Unknown
uint16 {2}   - null
uint16 {2}   - Unknown
uint32 {4}   - Unknown
uint32 {4}   - Directory Offset (can be all 255's, not sure what to do in this case)

byte {X}     - File Data

// Directory

uint32 {4}   - Number Of Files


// for each file
uint16 {2}   - ID?
uint16 {2}   - Unknown (both 204)
byte {1}     - Group ID?
byte {1}     - File Type (0 = Archive Description, 9 = Root Directory?, 8 = Directory, 7 = File)
uint16 {2}   - null
uint32 {4}   - File Offset
uint32 {4}   - File Number (starting at 0)


// at each file offset

// if (type == 0){
byte {X}     - Description (keep reading until the next field = 14)
uint16 {2}   - ID? (14) (same as ID in dirEntry)
uint32 {4}   - Unknown
uint16 {2}   - Unknown
uint32 {4}   - File Offset (same as in dirEntry)
uint32 {4}   - File Number (same as in dirEntry)
// }


// if (type == 9){
uint16 {2}   - ID? (same as ID in dirEntry)
uint32 {4}   - Unknown
uint16 {2}   - Unknown
uint32 {4}   - File Offset (same as in dirEntry)
uint32 {4}   - File Number (same as in dirEntry)
// }


// if (type == 8){
uint16 {2}   - ID? (same as ID in dirEntry)
uint32 {4}   - Unknown
uint16 {2}   - Unknown
uint32 {4}   - File Offset (same as in dirEntry)
uint32 {4}   - File Number (same as in dirEntry)
uint32 {4}   - File Type / Extension?
uint32 {4}   - Unknown (160)
char {12}    - Description (GlobalRange + null)
uint32 {4}   - File Number (same as in dirEntry)
uint32 {4}   - Offset?
uint32 {4}   - Unknown
uint32 {4}   - Unknown
uint64 {8}   - null
uint64 {8}   - Size?
// }


// if (type == 7){
uint16 {2}   - ID? (same as ID in dirEntry)
uint32 {4}   - Unknown
uint16 {2}   - Unknown
uint32 {4}   - File Offset (same as in dirEntry)
uint32 {4}   - File Number (same as in dirEntry)
char {128}   - Description of item (null)
byte {X}     - File Data
// }


MultiEx BMS Script

  • Not written yet

Compatible Programs