Difference between revisions of "Animal Group (.ANS) File Format"

From Ōkami Speedrun Wiki
Jump to navigation Jump to search
m (→‎Overall: Typo)
m (Formatting.)
 
Line 31: Line 31:
| 3 || 1 || uint8 || unknown3 || Unknown. Always 00. Padding?
| 3 || 1 || uint8 || unknown3 || Unknown. Always 00. Padding?
|-
|-
| 4 || 3 || PackedTuple\<uint8\> || size || Animal size (width, height, depth)
| 4 || 3 || PackedTuple<uint8> || size || Animal size (width, height, depth)
|-
|-
| 7 || 3 || PackedTuple\<uint8\> || rotation || Rotation around axis (x, y, z)
| 7 || 3 || PackedTuple<uint8> || rotation || Rotation around axis (x, y, z)
|-
|-
| 10 || 6 || PackedTuple\<uint16\> || coordinates || Location (x, y, z)
| 10 || 6 || PackedTuple<uint16> || coordinates || Location (x, y, z)
|-
|-
| 16 || 1 || uint8 || texture || Which animal texture to use.
| 16 || 1 || uint8 || texture || Which animal texture to use.

Latest revision as of 03:48, 22 November 2022

Note: This page pertains to Reverse Engineering of Okami.

Explanation

This file defines each group of animals on a single map.

File Format

Overall

Start (Byte) Width (Bytes) Type Field Name Note
0 4 uint32 Number of Entries Count of animal definitions
4 40 ANSEntry array groups Animal group definition
padding 00 Pad zeroes for 4 byte alignment

ANSEntry

Describes a single animal group.

Start (Byte) Width (Bytes) Type Field Name Note
0 1 uint8 an_id See Animal ID Table
1 1 uint8 cat_id Category ID: 05 is animals
2 1 uint8 unknown2 Unknown. Always 03.
3 1 uint8 unknown3 Unknown. Always 00. Padding?
4 3 PackedTuple<uint8> size Animal size (width, height, depth)
7 3 PackedTuple<uint8> rotation Rotation around axis (x, y, z)
10 6 PackedTuple<uint16> coordinates Location (x, y, z)
16 1 uint8 texture Which animal texture to use.
17 1 uint8 unknown5 Unknown.
18 1 uint8 group_id Offset for the bit that marks the animal group as fed.
19 1 uint8 tod Time of day the animal group appears: 0 = Always, 1 = Day Only, 2 = Night Only
20 2 uint16 unknown6 Unknown. Always 00. Padding?
22 1 uint8 an_id2 Always matches an_id.
23 1 uint8 unknown8 Unknown. Always 00. Padding?
24 1 uint8 unknown9 Unknown.
25 1 uint8 unknowna Unknown.
26 1 uint8 unknownb Unknown.
27 1 uint8 unknownc Unknown.
28 12 uint8 array padding All 00