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

From Ōkami Speedrun Wiki
Jump to navigation Jump to search
(Created page with "{{File Format}} Object placement format. TSC has objects from category 0x09 (gt), TRE has objects from category 0x0B (vt). == File Format == === Header === {| class="wikita...")
 
(→‎Object Entry: more examples)
 
(8 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), TRE has objects from category 0x0B (vt).
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 ==
== File Format ==
Line 14: 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 33: 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
|-
| 20 || 1 || <code>uint8_t</code> || Unknown
|-
| 21 || 4 || <code>uint8_t[4]</code> || Unknown
|-
| 25 || 1 || <code>uint8_t</code> || Unknown. Usually 0xFF.
|-
| 26 || 1 || <code>uint8_t</code> || Unknown
|-
|-
| 16 || 16 || <code>uint8_t[16]</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]].
|-
|-
| 26 || 8 || <code>uint8_t[8]</code> || Unkown/padding
| 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