Difference between revisions of "PAS Database"
From Retro Modding Wiki
m (→Format) |
|||
Line 81: | Line 81: | ||
| u32 | | u32 | ||
| 1 | | 1 | ||
− | | | + | | [[#Weight Function|'''Weight Function''']] |
− | | | + | | Specifies the weighting algorithm used for this parameter during selection. |
|- | |- | ||
| float | | float | ||
| 1 | | 1 | ||
− | | | + | | Weight |
− | | | + | | Specifies how much influence this parameter has during selection. |
|- | |- | ||
| ''Parm Type'' | | ''Parm Type'' | ||
| 1 | | 1 | ||
− | | | + | | Min Value |
− | | | + | | Minimum value this parameter can represent, the exact meaning depends on the context within the class implementation that uses it. |
|- | |- | ||
| ''Parm Type'' | | ''Parm Type'' | ||
| 1 | | 1 | ||
− | | | + | | Max Value |
− | | | + | | Maximum value this parameter can represent, the exact meaning depends on the context within the class implementation that uses it. |
|} | |} | ||
Line 139: | Line 139: | ||
| 4 | | 4 | ||
| Enum | | Enum | ||
+ | |} | ||
+ | |||
+ | === Weight Function === | ||
+ | |||
+ | {| class="wikitable" | ||
+ | ! ID | ||
+ | ! Type | ||
+ | |- | ||
+ | | 0 | ||
+ | | ExactMatch | ||
+ | |- | ||
+ | | 1 | ||
+ | | PercentError | ||
+ | |- | ||
+ | | 2 | ||
+ | | AngularPercent | ||
+ | |- | ||
+ | | 3 | ||
+ | | NoWeight | ||
|} | |} | ||
Revision as of 15:51, 3 March 2017
The Parameterized Animation State Database is an animation-related thing that appears in every Retro game. It can be found in the ANCS format in Metroid Prime 1 and 2, and the CHAR format in Metroid Prime 3, Donkey Kong Country Returns, and Donkey Kong Country: Tropical Freeze.
Format
Type | Count | Name | Notes |
---|---|---|---|
FourCC | 1 | Magic | Always PAS4
|
u32 | 1 | Anim State Count | Number of anim states |
u32 | 1 | Default Anim State | Anim state used by the character by default. If there are no anim states, this will be set to -1. |
Anim State | Anim State Count | Anim State Array | Array of anim states. |
Anim State
Type | Count | Name | Notes |
---|---|---|---|
u32 | 1 | Unknown | |
u32 | 1 | Parm Info Count | Number of parameters |
u32 | 1 | Anim Info Count | Number of animations |
Parm Info | Parm Info Count | Parm Info Array | Describes parameters in this anim state |
Anim Info | Anim Info Count | Anim Info Array | Describes animations in this anim state |
Parm Info
Type | Count | Name | Notes |
---|---|---|---|
u32 | 1 | Parm Type | Parameter type. This value controls the type of other values in the Parm Info and Anim Info structures. |
u32 | 1 | Weight Function | Specifies the weighting algorithm used for this parameter during selection. |
float | 1 | Weight | Specifies how much influence this parameter has during selection. |
Parm Type | 1 | Min Value | Minimum value this parameter can represent, the exact meaning depends on the context within the class implementation that uses it. |
Parm Type | 1 | Max Value | Maximum value this parameter can represent, the exact meaning depends on the context within the class implementation that uses it. |
Anim Info
Type | Count | Name | Notes |
---|---|---|---|
u32 | 1 | Anim ID | This is a character-relative anim index. This should be indexed into the character's anim list to get the animset-relative index. |
Parm Type | Parm Info Count | Parm Values Array | This array contains one value per Parm Info. The type of each value is determined by the corresponding Parm Info's Parm Type value. |
Parm Type
ID | Type |
---|---|
0 | Int32 |
1 | Uint32 |
2 | Real |
3 | Bool |
4 | Enum |
Weight Function
ID | Type |
---|---|
0 | ExactMatch |
1 | PercentError |
2 | AngularPercent |
3 | NoWeight |