Difference between revisions of "User:Aruki/Sandbox"

From Retro Modding Wiki
Jump to: navigation, search
m
Line 4: Line 4:
  
 
== Script Objects ==
 
== Script Objects ==
 +
 +
Like how structs are preceded by a property count, entire objects' property sets are each considered to be their own struct, and so are also preceded by a property count. Also, every object except Area Attributes (0x4E) begins with a string instance name. Excluding because variable-length data is yucky for the offset column.
 +
 +
=== Actor (0x0) ===
 +
 +
{| class="wikitable"
 +
! Offset
 +
! Type
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| vec3
 +
| 0xC
 +
| '''Position'''
 +
|-
 +
| 0xC
 +
| vec3
 +
| 0xC
 +
| '''Rotation'''
 +
|-
 +
| 0x18
 +
| vec3
 +
| 0xC
 +
| '''Scale'''
 +
|-
 +
| 0x24
 +
| vec3
 +
| 0xC
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x30
 +
| vec3
 +
| 0xC
 +
| '''Scan Offset'''
 +
|-
 +
| 0x3C
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x40
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x44
 +
| struct
 +
| 0xC
 +
| [[#Health|Health]]
 +
|-
 +
| 0x50
 +
| struct
 +
| 0x74
 +
| [[#Vulnerabilities|Vulnerabilities]]
 +
|-
 +
| 0xC4
 +
| [[CMDL (Metroid Prime)|CMDL]]
 +
| 4
 +
| '''Model'''
 +
|-
 +
| 0xC8
 +
| [[ANCS (File Format)|ANCS]]
 +
| 0xC
 +
| '''Char Set'''
 +
|-
 +
| 0xD4
 +
| struct
 +
| 0x7D
 +
| [[#Common|'''Common''']]
 +
|-
 +
| 0x151
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x152
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x153
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x154
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x155
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x156
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15A
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15B
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15C
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15D
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15E
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x15F
 +
| colspan=3 {{unknown|End}}
 +
|}
  
 
== Structs ==
 
== Structs ==
Line 452: Line 581:
  
 
=== Common ===
 
=== Common ===
 +
 +
0x79 bytes
 +
 +
{| class="wikitable"
 +
! Offset
 +
! Type
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| struct
 +
| 0x47
 +
| [[#Inside Common|Inside Common]]
 +
|-
 +
| 0x47
 +
| struct
 +
| 8
 +
| [[#Scan|Scan]]
 +
|-
 +
| 0x4F
 +
| [[CMDL (Metroid Prime)||CMDL]]
 +
| 4
 +
| '''X-Ray Model'''
 +
|-
 +
| 0x53
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x57
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x5B
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x5F
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x60
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x64
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x68
 +
| struct
 +
| 0xA
 +
| [[#Maybe Thermal-Related|Maybe Thermal-Related]]
 +
|-
 +
| 0x72
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x73
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x74
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x75
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x79
 +
| colspan=3 {{unknown|End}}
 +
|}
  
 
==== Inside Common ====
 
==== Inside Common ====
 +
 +
0x43 bytes
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 462: Line 675:
 
|-
 
|-
 
| 0x0
 
| 0x0
| o
+
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x1
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x5
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x9
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0xD
 +
| float
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x11
 +
| vec4
 +
| 0x10
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x21
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x22
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x26
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x2A
 +
| vec3
 +
| 0xC
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x36
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x3A
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x3E
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x3F
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x43
 +
| colspan=3 {{unknown|End}}
 +
|}
 +
 
 +
=== Scan ====
 +
 
 +
0x4 bytes
 +
 
 +
{| class="wikitable"
 +
! Offset
 +
! Type
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| [[SCAN (Metroid Prime)|SCAN]]
 +
| 4
 +
| '''SCAN file'''
 +
|-
 +
| 0x4
 +
| colspan=3 {{unknown|End}}
 +
|}
 +
 
 +
=== Maybe Thermal-Related ===
 +
 
 +
0x6 bytes
 +
 
 +
{| class="wikitable"
 +
! Offset
 +
! Type
 +
! Size
 +
! Description
 +
|-
 +
| 0x0
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x1
 +
| bool
 +
| 1
 +
| {{unknown|'''Unknown'''}}
 +
|-
 +
| 0x2
 +
| u32
 +
| 4
 +
| {{unknown|'''Unknown''' (possibly bit flags)}}
 +
|-
 +
| 0x6
 +
| colspan=3 {{unknown|End}}
 +
|}

Revision as of 11:27, 27 January 2015

Dumping script object structures here for now. Miles is the one who figured out most of this stuff.

Note: Whenever a struct is used, it's preceded by a value indicating the number of properties contained in that struct. Therefore, you need to add 4 to the size of its members to get an accurate size.

Script Objects

Like how structs are preceded by a property count, entire objects' property sets are each considered to be their own struct, and so are also preceded by a property count. Also, every object except Area Attributes (0x4E) begins with a string instance name. Excluding because variable-length data is yucky for the offset column.

Actor (0x0)

Offset Type Size Description
0x0 vec3 0xC Position
0xC vec3 0xC Rotation
0x18 vec3 0xC Scale
0x24 vec3 0xC Unknown
0x30 vec3 0xC Scan Offset
0x3C float 4 Unknown
0x40 float 4 Unknown
0x44 struct 0xC Health
0x50 struct 0x74 Vulnerabilities
0xC4 CMDL 4 Model
0xC8 ANCS 0xC Char Set
0xD4 struct 0x7D Common
0x151 bool 1 Unknown
0x152 bool 1 Unknown
0x153 bool 1 Unknown
0x154 bool 1 Unknown
0x155 bool 1 Unknown
0x156 u32 4 Unknown
0x15A float 4 Unknown
0x15B bool 1 Unknown
0x15C bool 1 Unknown
0x15D bool 1 Unknown
0x15E bool 1 Unknown
0x15F End

Structs

Patterned

0x12D bytes

Offset Type Size Description
0x0 float 4 Mass
0x4 float 4 Speed
0x8 float 4 Turn Speed
0xC float 4 Detection Range
0x10 float 4 Detection Height Range
0x14 float 4 Detection Angle
0x18 float 4 Min Attack Range
0x1C float 4 Max Attack Range
0x20 float 4 Average Attack Time
0x24 float 4 Attack Time Variation
0x28 float 4 Leash Radius
0x2C float 4 Player Leash Radius
0x30 float 4 Player Leash Time
0x34 struct 0x14 Contact Damage
0x48 float 4 Damage Wait Time
0x4C struct 0xC Health
0x50 struct 0x74 Vulnerabilities
0xC4 float 4 Unknown
0xC8 float 4 Unknown
0xCC vec3 0xC Unknown
0xD8 float 4 Unknown
0xDC float 4 Unknown
0xE0 float 4 Unknown
0xE4 float 4 Unknown
0xE8 u32 4 Sound?
0xEC ANCS 0xC Char Set
0xF0 bool 1 Active
0xF1 AFSM 4 FSM
0xF5 float 4 Unknown
0xF9 float 4 Unknown
0xFD float 4 Unknown
0x101 u32 4 Unknown
0x105 vec3 0xC Unknown
0x111 PART 4 Particle
0x115 u32 4 Unknown
0x119 vec3 0xC Unknown
0x125 PART 4 Particle
0x129 u32 4 Sound?
0x12D End

Contact Damage

0x10 bytes

Offset Type Size Description
0x0 u32 4 Weapon Type
0x4 float 4 Damage
0x8 float 4 Radius
0xC float 4 Knockback Power
0x10 End

Health

0x8 bytes

Offset Type Size Description
0x0 float 4 Health
0x4 float 4 Knockback Resistance
0x8 End

Vulnerabilities

0x70 bytes

Offset Type Size Description
0x0 u32 4 Power Beam
0x4 u32 4 Ice Beam
0x8 u32 4 Wave Beam
0xC u32 4 Plasma Beam
0x10 u32 4 Morph Ball Bomb
0x14 u32 4 Power Bomb
0x18 u32 4 Missile
0x1C u32 4 Boost Ball
0x20 u32 4 Phazon Beam
0x24 u32 4 Enemy Weapon 1
0x28 u32 4 Enemy Weapon 2 (Poison)
0x2C u32 4 Enemy Weapon 3 (Lava)
0x30 u32 4 Enemy Weapon 4
0x34 u32 4 Unknown Weapon 1
0x38 u32 4 Unknown Weapon 2
0x3C u32 4 Unknown Weapon 3
0x40 struct 0x18 Charged Beams
0x54 struct 0x18 Beam Combos
0x70 End

Charged Beams

0x14 bytes

Offset Type Size Description
0x0 u32 4 Charged Power Beam
0x4 u32 4 Charged Ice Beam
0x8 u32 4 Charged Wave Beam
0xC u32 4 Charged Plasma Beam
0x10 u32 4 Charged Phazon Beam
0x14 End

Beam Combos

0x14 bytes

Offset Type Size Description
0x0 u32 4 Super Missile
0x4 u32 4 Ice Spreader
0x8 u32 4 Wavebuster
0xC u32 4 Flamethrower
0x10 u32 4 Phazon Combo
0x14 End

Common

0x79 bytes

Offset Type Size Description
0x0 struct 0x47 Inside Common
0x47 struct 8 Scan
0x4F [[CMDL (Metroid Prime) CMDL]] 4 X-Ray Model
0x53 u32 4 Unknown
0x57 u32 4 Unknown
0x5B u32 4 Unknown
0x5F bool 1 Unknown
0x60 float 4 Unknown
0x64 float 4 Unknown
0x68 struct 0xA Maybe Thermal-Related
0x72 bool 1 Unknown
0x73 bool 1 Unknown
0x74 bool 1 Unknown
0x75 float 4 Unknown
0x79 End

Inside Common

0x43 bytes

Offset Type Size Description
0x0 bool 1 Unknown
0x1 float 4 Unknown
0x5 float 4 Unknown
0x9 float 4 Unknown
0xD float 4 Unknown
0x11 vec4 0x10 Unknown
0x21 bool 1 Unknown
0x22 u32 4 Unknown
0x26 u32 4 Unknown
0x2A vec3 0xC Unknown
0x36 u32 4 Unknown
0x3A u32 4 Unknown
0x3E bool 1 Unknown
0x3F u32 4 Unknown
0x43 End

Scan =

0x4 bytes

Offset Type Size Description
0x0 SCAN 4 SCAN file
0x4 End

Maybe Thermal-Related

0x6 bytes

Offset Type Size Description
0x0 bool 1 Unknown
0x1 bool 1 Unknown
0x2 u32 4 Unknown (possibly bit flags)
0x6 End