- Migrate from bracket attributes to ui() function calls - Enhance chunk parsing with improved structure definitions - Add additional metadata fields to chunk handlers - Update Xbox 360 texture and archive definitions Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
47 lines
936 B
Plaintext
47 lines
936 B
Plaintext
// GSMS - Game Settings/Mesh Chunk
|
|
// Contains mesh and game object settings
|
|
// Found in .ent files
|
|
|
|
type gsms_chunk [display="GSMS Game Settings"] byteorder BE
|
|
{
|
|
// Standard 16-byte Asura chunk header
|
|
chunk_id = ascii(read(4));
|
|
u32 chunk_size;
|
|
u32 version;
|
|
u32 flags;
|
|
|
|
chunk_id = chunk_id;
|
|
|
|
|
|
ui("chunk_id", "Chunk ID");
|
|
chunk_size = chunk_size;
|
|
|
|
ui("chunk_size", "Chunk Size");
|
|
version = version;
|
|
|
|
ui("version", "Version");
|
|
flags = flags;
|
|
|
|
ui("flags", "Flags");
|
|
|
|
// Entry count
|
|
u32 entry_count;
|
|
entry_count = entry_count;
|
|
|
|
ui("entry_count", "Entry Count");
|
|
|
|
// Unknown field
|
|
u32 unknown1;
|
|
unknown1 = unknown1;
|
|
|
|
ui("unknown1", "Unknown1");
|
|
|
|
// Each entry appears to be 24 bytes:
|
|
// - 4 bytes: flags/type
|
|
// - 4 bytes: object ID
|
|
// - 4 bytes: unknown
|
|
// - 4 bytes: scale (float)
|
|
// - 4 bytes: unknown
|
|
// - 4 bytes: unknown
|
|
}
|