Difference between revisions of "Object Placement (.TAT/.TRE/.TSC) File Format"

From Ōkami Speedrun Wiki
Jump to navigation Jump to search
(→‎Header: align to 32 bytes)
Line 16: Line 16:
| 4 || 40 * numEntries || <code>[[#Object Entry|TObjEntry]][numEntries]</code> || Entries
| 4 || 40 * numEntries || <code>[[#Object Entry|TObjEntry]][numEntries]</code> || Entries
|-
|-
|  ||  || padding || Pad zeroes for 16 byte alignment
|  ||  || padding || Pad zeroes for 32 byte alignment
|}
|}



Revision as of 08:16, 2 August 2025

Note: This page pertains to Reverse Engineering of Okami File Formats.

Object placement format.

TSC has objects from category 0x09 (gt), contains various general and interactable objects. Contains bloomable trees from category 0x0B.

TRE has objects from category 0x0B (vt), contains mainly vegetation like grass and trees.

File Format

Header

Start (Byte) Width (Bytes) Type Description
0 4 uint32_t Number of Entries
4 40 * numEntries TObjEntry[numEntries] Entries
padding Pad zeroes for 32 byte alignment

Object Entry

Start (Byte) Width (Bytes) Type Description
0 1 uint8_t Object Table Index
1 1 uint8_t Object category. 0x09 = gt/, 0x0B = vt/
2 1 uint8_t Unknown
3 1 uint8_t Unknown
4 3 PackedTuple<uint8_t> Size (width, height, depth).
7 3 PackedTuple<uint8_t> Rotation around axis (x, y, z).
10 6 PackedTuple<int16_t> Location (x, y, z)
16 4 uint8_t[4] Unknown
20 1 uint8_t Unknown
21 4 uint8_t[4] Unknown
25 1 uint8_t Unknown. Usually 0xFF.
26 1 uint8_t Unknown
27 1 uint8_t Object specific parameter. For bloomable trees this will be Tree bloom index.
28 12 uint8_t[12] Unkown/padding