This page is incomplete! You can contribute information using GitHub issues or pull requests.

...

Related HaloScript

Function/global

Type

(debug_unit_all_animations [boolean])

Logs lines to the console output as unit animations occur. For example: cyborg_mp: animation stand pistol move-right.

Global
(debug_unit_animations [boolean])

Shows red console log output whenever a unit animation is missing. For example: MISSING: cyborg 'G-driver unarned aim-still'.

Global

Structure and fields

FieldTypeComments
objectsBlock
  • HEK max count: 4
FieldTypeComments
animationuint16
functionenum
OptionValueComments
a out0x0
b out0x1
c out0x2
d out0x3
function controlsenum
OptionValueComments
frame0x0
scale0x1
unitsBlock
  • HEK max count: 33

Max limit raised to 512 in a 2023 H1A update, matching OpenSauce.

FieldTypeComments
labelTagString
right yaw per framefloat
left yaw per framefloat
right frame countuint16
left frame countuint16
down pitch per framefloat
up pitch per framefloat
down pitch frame countuint16
up pitch frame countuint16
animationsBlock
  • HEK max count: 33
FieldTypeComments
animationuint16
ik pointsBlock
  • HEK max count: 4
FieldTypeComments
markerTagString
attach to markerTagString
weaponsBlock
  • HEK max count: 16
FieldTypeComments
nameTagString
grip markerTagString
hand markerTagString
right yaw per framefloat
left yaw per framefloat
right frame countuint16
left frame countuint16
down pitch per framefloat
up pitch per framefloat
down pitch frame countuint16
up pitch frame countuint16
animationsBlock?
  • HEK max count: 55
ik pointBlock?
  • HEK max count: 4
weapon typesBlock
  • HEK max count: 10
FieldTypeComments
labelTagString
animationsBlock
  • HEK max count: 16
FieldTypeComments
animationuint16
weaponsBlock
  • HEK max count: 16
FieldTypeComments
animationsBlock
  • HEK max count: 11
FieldTypeComments
animationuint16
vehiclesBlock
  • HEK max count: 1
FieldTypeComments
right yaw per framefloat
left yaw per framefloat
right frame countuint16
left frame countuint16
down pitch per framefloat
up pitch per framefloat
down pitch frame countuint16
up pitch frame countuint16
animationsBlock
  • HEK max count: 8
FieldTypeComments
animationuint16
suspension animationsBlock
  • HEK max count: 8
FieldTypeComments
mass point indexuint16
animationuint16
full extension ground depthfloat
full compression ground depthfloat
devicesBlock
  • HEK max count: 2
FieldTypeComments
animationsBlock
  • HEK max count: 2
FieldTypeComments
animationuint16
unit damageBlock
  • HEK max count: 176
FieldTypeComments
animationuint16
first person weaponsBlock
  • HEK max count: 28
FieldTypeComments
animationsBlock
  • HEK max count: 28
FieldTypeComments
animationuint16
  • HEK max count: 176
sound referencesBlock
  • HEK max count: 514
FieldTypeComments
soundTagDependency: sound
limp body node radiusfloat
flagsbitfield
FlagMaskComments
compress all animations0x1
force idle compression0x2
nodesBlock
  • HEK max count: 64
FieldTypeComments
nameTagString
next sibling node indexuint16
  • Read-only
first child node indexuint16
  • Read-only
parent node indexuint16
  • Read-only
node joint flagsbitfield
FlagMaskComments
ball socket0x1
hinge0x2
no movement0x4
base vectorVector3D
  • Read-only
FieldTypeComments
ifloat
jfloat
kfloat
vector rangefloat
  • Read-only
animationsBlock
  • HEK max count: 2048
  • Processed during compile
FieldTypeComments
nameTagString
  • Read-only
typeenum
  • Read-only
OptionValueComments
base0x0
overlay0x1
replacement0x2
frame countuint16
  • Read-only
frame sizeuint16
  • Read-only
frame info typeenum
  • Read-only
OptionValueComments
none0x0
dx dy0x1
dx dy dyaw0x2
dx dy dz dyaw0x3
node list checksumuint32
  • Read-only
node countuint16
  • Read-only
loop frame indexuint16
weightfloat
key frame indexuint16
second key frame indexuint16
next animationuint16
  • Read-only
flagsbitfield
FlagMaskComments
compressed data0x1
world relative0x2
25hz pal0x4
sounduint16
sound frame indexuint16
left foot frame indexint8
right foot frame indexint8
main animation indexuint16
  • Cache only
relative weightfloat
  • Cache only
frame infoTagDataOffset
FieldTypeComments
sizeuint32
externaluint32
file offsetuint32
pointerptr64
node transform flag datauint32[2]
  • Hidden

These are two bitfields. Each bits refer to a node to which the transformation applies. The first field refers to the first 32 nodes and the second field is the second 32 nodes.

node rotation flag datauint32[2]
  • Hidden

These are two bitfields. Each bits refer to a node to which the transformation applies. The first field refers to the first 32 nodes and the second field is the second 32 nodes.

node scale flag datauint32[2]
  • Hidden

These are two bitfields. Each bits refer to a node to which the transformation applies. The first field refers to the first 32 nodes and the second field is the second 32 nodes.

offset to compressed datauint32
  • Read-only
default dataTagDataOffset?
frame dataTagDataOffset?

Acknowledgements

Thanks to the following individuals for their research or contributions to this topic:

  • Kavawuvi (Invader tag definitions)
  • MosesOfEgypt (Tag structure research)