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

From Ōkami Speedrun Wiki
Jump to navigation Jump to search
(map event req)
(→‎Object Entry: more examples)
 
(7 intermediate revisions by the same user not shown)
Line 3: Line 3:
Object placement format.
Object placement format.


TSC has objects from category 0x09 (gt), contains various general objects.
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.
TRE has objects from category 0x0B (vt), contains mainly vegetation like grass and trees.
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
|}
|}


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<uint16_t></code> || Location (x, y, z)
| 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
|-
|-
| 20 || 1 || <code>uint8_t</code> || [[Save_File_(OKAMI)_File_Format#World_State_Data|Map event]] bitfield index to determine visibility, i.e. rejuvenation.
| 20 || 1 || <code>uint8_t</code> || Unknown
|-
|-
| 21 || 11 || <code>uint8_t[11]</code> || Unknown
| 21 || 4 || <code>uint8_t[4]</code> || Unknown
|-
|-
| 32 || 8 || <code>uint8_t[8]</code> || Unkown/padding
| 25 || 1 || <code>uint8_t</code> || Unknown. Usually 0xFF.
|-
| 26 || 1 || <code>uint8_t</code> || Unknown
|-
| 27 || 1 || <code>uint8_t</code> || Object specific parameter.
* For bloomable trees this will be [[Save_File_(OKAMI)_File_Format#Map_Data|Tree bloom index]].
* For rejuvenable water this is the index into the [[Save_File_(OKAMI)_File_Format#World_State_Data|rejuvenation bitfield]].
|-
| 28 || 12 || <code>uint8_t[12]</code> || Unkown/padding
|}
|}

Latest revision as of 08:34, 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.
28 12 uint8_t[12] Unkown/padding