Difference between revisions of "Object Placement (.TAT/.TRE/.TSC) File Format"
Jump to navigation
Jump to search
Heinermann (talk | contribs) (more note) |
Heinermann (talk | contribs) (→Object Entry: location is signed) |
||
Line 35: | Line 35: | ||
| 7 || 3 || <code>PackedTuple<uint8_t></code> || Rotation around axis (x, y, z). | | 7 || 3 || <code>PackedTuple<uint8_t></code> || Rotation around axis (x, y, z). | ||
|- | |- | ||
| 10 || 6 || <code>PackedTuple< | | 10 || 6 || <code>PackedTuple<int16_t></code> || Location (x, y, z) | ||
|- | |- | ||
| 16 || 4 || <code>uint8_t[4]</code> || Unknown | | 16 || 4 || <code>uint8_t[4]</code> || Unknown |
Revision as of 20:12, 1 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 16 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 |
Tree bloom index. |
28 | 12 | uint8_t[12] |
Unkown/padding |