Vehicles and bipeds are both extensions of the Unit abstract tag class, which is not directly creatable itself. Generally, units are controllable objects which can "die" and appear on the motion sensor.

Feigning death

...

Structure and fields

This tag inherits fields from object which are not shown here. See the parent's page for more information. The following information is unique to the unit tag.

Field Type Comments
unit flags bitfield
Flag Mask Comments
circular aiming 0x1
destroyed after dying 0x2
half speed interpolation 0x4
fires from camera 0x8
entrance inside bounding sphere 0x10
unused 0x20
causes passenger dialogue 0x40
resists pings 0x80
melee attack is fatal 0x100
don't reface during pings 0x200
has no aiming 0x400
simple creature 0x800
impact melee attaches to unit 0x1000
impact melee dies on shields 0x2000
cannot open doors automatically 0x4000
melee attackers cannot attach 0x8000
not instantly killed by melee 0x10000

If enabled, prevents the unit from being instantly killed by a melee to their back. This is used for the Flood.

shield sapping 0x20000
runs around flaming 0x40000
inconsequential 0x80000
special cinematic unit 0x100000
ignored by autoaiming 0x200000
shields fry infection forms 0x400000
integrated light cntrls weapon 0x800000
integrated light lasts forever 0x1000000
default team enum
Option Value Comments
none 0x0
player 0x1
human 0x2
covenant 0x3
flood 0x4
sentinel 0x5
unused6 0x6
unused7 0x7
unused8 0x8
unused9 0x9
constant sound volume enum
Option Value Comments
silent 0x0
medium 0x1
loud 0x2
shout 0x3
quiet 0x4
rider damage fraction float
  • Min: 0
integrated light toggle TagDependency: effect
unit a in enum
Option Value Comments
none 0x0
driver seat power 0x1
gunner seat power 0x2
aiming change 0x3
mouth aperture 0x4
integrated light power 0x5
can blink 0x6
shield sapping 0x7
unit b in enum?
unit c in enum?
unit d in enum?
camera field of view float
  • Default: 1.22173
camera stiffness float
camera marker name TagString
Field Type Comments
buffer char[32]

Null-terminated string in 32-char buffer.

camera submerged marker name TagString?
pitch auto level float
pitch range Bounds
Field Type Comments
min float
max float
camera tracks Block
Field Type Comments
track TagDependency: camera_track
seat acceleration scale Point3D
Field Type Comments
x float
y float
z float
soft ping threshold float
  • Min: 0
  • Max: 1
soft ping interrupt time float
  • Unit: seconds
hard ping threshold float
  • Min: 0
  • Max: 1
hard ping interrupt time float
  • Unit: seconds
hard death threshold float
  • Min: 0
  • Max: 1
feign death threshold float
  • Min: 0
  • Max: 1
feign death time float
  • Unit: seconds
distance of evade anim float
  • Unit: world units
distance of dive anim float
  • Unit: world units
stunned movement threshold float
  • Min: 0
  • Max: 1
feign death chance float
  • Min: 0
  • Max: 1
feign repeat chance float
  • Min: 0
  • Max: 1
spawned actor TagDependency: actor_variant
spawned actor count Bounds
Field Type Comments
min uint16
max uint16
spawned velocity float
aiming velocity maximum float
  • Unit: degrees per second
aiming acceleration maximum float
  • Unit: degrees per second squared
casual aiming modifier float
  • Min: 0
  • Max: 1
looking velocity maximum float
  • Unit: degrees per second
looking acceleration maximum float
  • Unit: degrees per second squared
ai vehicle radius float
ai danger radius float
melee damage TagDependency: damage_effect
motion sensor blip size enum
Option Value Comments
medium 0x0
small 0x1
large 0x2
metagame type enum
  • H1A only

Only used for scoring in H1A (MCC only); overridden by actor_variant's metagame type if unit is an actor.

Option Value Comments
brute 0x0
grunt 0x1
jackal 0x2
skirmisher 0x3
marine 0x4
spartan 0x5
bugger 0x6

Also called "drone".

hunter 0x7
flood infection 0x8
flood carrier 0x9
flood combat 0xA
flood pure 0xB
sentinel 0xC
elite 0xD
engineer 0xE

Also called "huragok".

mule 0xF
turret 0x10
mongoose 0x11
warthog 0x12
scorpion 0x13
hornet 0x14
pelican 0x15
revenant 0x16
seraph 0x17
shade 0x18
watchtower 0x19
ghost 0x1A
chopper 0x1B
mauler 0x1C

Also called "prowler".

wraith 0x1D
banshee 0x1E
phantom 0x1F
scarab 0x20
guntower 0x21
tuning fork 0x22

Also called "spirit".

broadsword 0x23
mammoth 0x24
lich 0x25
mantis 0x26
wasp 0x27
phaeton 0x28
bishop 0x29

Also called "watcher".

knight 0x2A
pawn 0x2B

Also called "crawler".

metagame class enum
  • H1A only

Only used for scoring in H1A (MCC only); overridden by actor_variant's metagame class if unit is an actor.

Option Value Comments
infantry 0x0
leader 0x1
hero 0x2
specialist 0x3
light vehicle 0x4
heavy vehicle 0x5
giant vehicle 0x6
standard vehicle 0x7
new hud interfaces Block
  • HEK max count: 2
Field Type Comments
hud TagDependency: unit_hud_interface
dialogue variants Block
  • HEK max count: 16
Field Type Comments
variant number int16
dialogue TagDependency: dialogue
grenade velocity float
  • Unit: world units per second

The velocity of thrown grenades. This field is used for the player, but overidden by actor_variant grenade velocity for AI. The projectile initial velocity for grenades is not used.

grenade type enum
Option Value Comments
human fragmentation 0x0
covenant plasma 0x1
grenade count uint16
soft ping interrupt ticks int16
  • Cache only
hard ping interrupt ticks int16
  • Cache only
powered seats Block
  • HEK max count: 2
Field Type Comments
driver powerup time float
  • Unit: seconds
driver powerdown time float
  • Unit: seconds
weapons Block
  • HEK max count: 4
Field Type Comments
weapon TagDependency: weapon
seats Block
  • HEK max count: 16
Field Type Comments
flags bitfield
Flag Mask Comments
invisible 0x1
locked 0x2
driver 0x4
gunner 0x8
third person camera 0x10
allows weapons 0x20
third person on enter 0x40
first person camera slaved to gun 0x80
allow vehicle communication animations 0x100
not valid without driver 0x200
allow ai noncombatants 0x400
label TagString?
marker name TagString?
acceleration scale Vector3D
Field Type Comments
i float
j float
k float
yaw rate float
  • Unit: degrees per second
pitch rate float
  • Unit: degrees per second
camera marker name TagString?
camera submerged marker name TagString?
pitch auto level float
pitch range Bounds?
camera tracks Block?
  • HEK max count: 2
unit hud interface Block?
  • HEK max count: 2
hud text message index uint16
yaw minimum float
yaw maximum float
built in gunner TagDependency: actor_variant

Acknowledgements

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

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