Star Wars Battlefront LVL 1
LVL
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
char {4} - Header (ucfb)
uint32 {4} - Archive Size [+8]
uint32 {4} - File Extension (lvl_)
uint32 {4} - Archive Size [+16]
uint32 {4} - Unknown
uint32 {4} - Archive Size [+24]
// for each file
- char {4} - File Type Code/Extension ("coll","entc","gmod","modl","tex_","skel","wpnc","zaa_","zaf_" etc.)
- uint32 {4} - File Size (not including this and the previous field)
- char {4} - Filename Header (NAME)
- uint32 {4} - Filename Length (including 1 null)
- char {X} - Filename (not including extension)
- byte {1} - null Filename Terminator
- byte {0-3} - null Padding to a multiple of 4 bytes
- byte {X} - File Data {
- // for each group
- uint32 {4} - Group Name
- uint32 {4} - Group Length
- byte {X} - Group Data
- uint32 {4} - Group Name
- // for each group
- }
- }
MultiEx BMS
Not written yet
Notes and Comments
- It appears as though the Filename Header field and the Information Header field may not be read by the game because they are sometimes the Filename header says INFO and the Information Header says NAME. However, the fields following the Filename Header is the filename regardless of the actual value of Filename Header. (ie sometimes the Filename Header has the wrong value, but the filename still follows as in the spec)
- Also, the files all seem to have their own archive-like structure
==
! you can find and replace many values! ALL hex values (for lives,(ex.: 1b1f9719, etc.) ARE identical! ! loading structure some kind weird (loads not all (by logic) but many from 1 place)