Difference between revisions of "PAS Database"
From Retro Modding Wiki
| Line 100: | Line 100: | ||
|} | |} | ||
| − | === | + | ==== Parm Type ==== |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | = | + | |
{| class="wikitable" | {| class="wikitable" | ||
| Line 141: | Line 122: | ||
|} | |} | ||
| − | === Weight Function === | + | ==== Weight Function ==== |
{| class="wikitable" | {| class="wikitable" | ||
| Line 158: | Line 139: | ||
| 3 | | 3 | ||
| No Weight | | No Weight | ||
| + | |} | ||
| + | |||
| + | === Anim Info === | ||
| + | |||
| + | {| class="wikitable" | ||
| + | ! Type | ||
| + | ! Count | ||
| + | ! Name | ||
| + | ! Notes | ||
| + | |- | ||
| + | | u32 | ||
| + | | 1 | ||
| + | | '''Anim ID''' | ||
| + | | This is a character-relative anim index. In Prime 1/2, 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. | ||
|} | |} | ||
Revision as of 15:56, 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 | Minimum Value | Minimum value this parameter can represent. The exact meaning depends on the context within the class implementation that uses it. |
| Parm Type | 1 | Maximum Value | Maximum value this parameter can represent. The exact meaning depends on the context within the class implementation that uses it. |
Parm Type
| ID | Type |
|---|---|
| 0 | Int32 |
| 1 | Uint32 |
| 2 | Real |
| 3 | Bool |
| 4 | Enum |
Weight Function
| ID | Type |
|---|---|
| 0 | Exact Match |
| 1 | Percent Error |
| 2 | Angular Percent |
| 3 | No Weight |
Anim Info
| Type | Count | Name | Notes |
|---|---|---|---|
| u32 | 1 | Anim ID | This is a character-relative anim index. In Prime 1/2, 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. |