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

A particle system describes the creation and evolution of particles, most commonly for explosions.

This tag was given support for a "jet" particle creation physics type when Gearbox ported the game to PC, in order to support the flamethrower's fire.

Related HaloScript

Function/global

Type

(render_psystems [boolean])

Toggles the rendering of particle_systems and weather_particle_system.

Global

Structure and fields

FieldTypeComments
point physicsTagDependency: point_physics
system update physicsenum
OptionValueComments
default0x0
explosion0x1
physics flagsbitfield
FlagMaskComments
unused0x1
physics constantsBlock
  • HEK max count: 8
FieldTypeComments
kfloat
particle typesBlock
  • HEK max count: 4
FieldTypeComments
nameTagString
flagsbitfield
FlagMaskComments
type states loop0x1
forward backward0x2
particle states loop0x4
forward backward 10x8
particles die in water0x10
particles die in air0x20
particles die on ground0x40
rotational sprites animate sideways0x80
disabled0x100
tint by effect color0x200
initial count scales with effect0x400
minimum count scales with effect0x800
creation rate scales with effect0x1000
scale scales with effect0x2000
animation rate scales with effect0x4000
rotation rate scales with effect0x8000
don't draw in first person0x10000
don't draw in third person0x20000
initial particle countuint16
complex sprite render modesenum
OptionValueComments
simple0x0
rotational0x1
radiusfloat
  • Unit: world units
particle creation physicsenum
OptionValueComments
default0x0
explosion0x1
jet0x2
physics flagsbitfield?
physics constantsBlock?
  • HEK max count: 16
statesBlock
  • HEK max count: 8
FieldTypeComments
nameTagString
duration boundsBounds
  • Unit: second
FieldTypeComments
minfloat
maxfloat
transition time boundsBounds?
  • Unit: second
scale multiplierfloat
animation rate multiplierfloat
rotation rate multiplierfloat
color multiplierColorARGB
FieldTypeComments
alphafloat
redfloat
greenfloat
bluefloat
radius multiplierfloat
minimum particle countfloat
particle creation ratefloat
  • Unit: particles per second
particle creation physicsenum?
particle update physicsenum
OptionValueComments
default0x0
physics constantsBlock?
  • HEK max count: 16
particle statesBlock
  • HEK max count: 8
  • Processed during compile
FieldTypeComments
nameTagString
duration boundsBounds?
  • Unit: seconds
transition time boundsBounds?
  • Unit: seconds
bitmapsTagDependency: bitmap
sequence indexuint16
scaleBounds?
  • Unit: world units per pixel
animation rateBounds?
  • Unit: frames per second
rotation rateBounds
  • Unit: degrees per second
FieldTypeComments
minfloat
maxfloat
color 1ColorARGB?
color 2ColorARGB?
radius multiplierfloat
point physicsTagDependency: point_physics
unknown intuint32
  • Cache only
shader flagsbitfield
FlagMaskComments
sort bias0x1
nonlinear tint0x2
don't overdraw fp weapon0x4
framebuffer blend functionenum
OptionValueComments
alpha blend0x0
multiply0x1
double multiply0x2
add0x3
subtract0x4
component min0x5
component max0x6
alpha multiply add0x7
framebuffer fade modeenum
OptionValueComments
none0x0
fade when perpendicular0x1
fade when parallel0x2
map flagsbitfield
FlagMaskComments
unfiltered0x1
secondary map bitmapTagDependency: bitmap
anchorenum
OptionValueComments
with primary0x0
with screen space0x1
zsprite0x2
flagsbitfield?
u animation sourceenum
OptionValueComments
none0x0
a out0x1
b out0x2
c out0x3
d out0x4
u animation functionenum
OptionValueComments
one0x0
zero0x1
cosine0x2
cosine variable period0x3
diagonal wave0x4
diagonal wave variable period0x5
slide0x6
slide variable period0x7
noise0x8
jitter0x9
wander0xA
spark0xB
u animation periodfloat
  • Unit: seconds
u animation phasefloat
u animation scalefloat
  • Unit: repeats
v animation sourceenum?
v animation functionenum?
v animation periodfloat
  • Unit: seconds
v animation phasefloat
v animation scalefloat
  • Unit: repeats
rotation animation sourceenum?
rotation animation functionenum?
rotation animation periodfloat
  • Unit: seconds
rotation animation phasefloat
rotation animation scalefloat
  • Unit: degrees
rotation animation centerPoint2D
FieldTypeComments
xfloat
yfloat
zsprite radius scalefloat
physics constantsBlock?
  • HEK max count: 16

Acknowledgements

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

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