Animal Group (.ANS) File Format
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 |