XPlor/definitions/asura/chunks/tsxt_chunk.xscript
njohnson 381b28c11f Add Asura engine XScript definitions
Add XScript definitions for Rebellion's Asura engine formats:
- Archive chunks (fcsr, acsr, rcsr)
- Texture chunks (tsxt, xbtx2d_chunk)
- Resource chunks and headers

Used by games like Sniper Elite V2 on Xbox 360.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 16:36:02 -05:00

38 lines
1.2 KiB
Plaintext

// TSXT - Texture Set Chunk (reversed "TXST")
// Contains texture set information and references
// Found in .tsBE files
type tsxt_chunk [display="TSXT Texture Set"] 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, readonly, display="Chunk ID"];
chunk_size = chunk_size [ui, readonly, display="Chunk Size"];
version = version [ui, readonly, display="Version"];
flags = flags [ui, readonly, display="Flags"];
// Texture count
u32 texture_count;
texture_count = texture_count [ui, readonly, display="Texture Count"];
// Reference to external texture archive
if (texture_count > 0) {
texture_archive_path = cstring();
texture_archive_path = texture_archive_path [ui, readonly, display="Texture Archive"];
}
// Texture entries follow - each contains hash and metadata
// Structure per entry (approx 28 bytes):
// - 4 bytes: texture hash/ID
// - 4 bytes: offset in archive
// - 4 bytes: width info
// - 4 bytes: height info
// - 4 bytes: format flags
// - 4 bytes: mip levels
// - 4 bytes: unknown
}