Difference between revisions of "PAS Database"

From Retro Modding Wiki
Jump to: navigation, search
Line 100: Line 100:
 
|}
 
|}
  
=== Anim Info ===
+
==== Parm Type ====
 
+
{| 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.
+
|}
+
 
+
=== 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.