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

Effects are a multi-purpose tag used for responses to various events like material impacts, sound effects, projectile detonations, and more. They are made up of parts which can can spawn sounds, particles, lights, decals, and even new objects.

Structure and fields

FieldTypeComments
flagsbitfield
FlagMaskComments
deleted when attachment deactivates0x1
required for gameplay cannot optimize out0x2
must be deterministic0x4
  • Cache only
  • H1A only

Prevents culling of effects that are important for synchronous networking determinism.

disabled in remastered by blood setting0x8
  • H1A only
loop start eventuint16
loop stop eventuint16
maximum damage radiusfloat
  • Cache only
locationsBlock
  • HEK max count: 32
FieldTypeComments
marker nameTagString
eventsBlock
  • HEK max count: 32
FieldTypeComments
skip fractionfloat
delay boundsBounds
  • Unit: seconds
FieldTypeComments
minfloat
maxfloat
duration boundsBounds?
  • Unit: seconds
partsBlock
  • HEK max count: 32
FieldTypeComments
create inenum
OptionValueComments
any environment0x0
air only0x1
water only0x2
space only0x3
violence modeenum
OptionValueComments
either mode0x0
violent mode only0x1
nonviolent mode only0x2
locationuint16
flagsbitfield
FlagMaskComments
face down regardless of location decals0x1
unused0x2
  • Cache only
make effect work0x4
  • Cache only
type classuint32
  • Cache only
type
TagDependency (6)
velocity boundsBounds?
  • Unit: world units per second
velocity cone anglefloat
angular velocity boundsBounds
  • Unit: degrees per second
FieldTypeComments
minfloat
maxfloat
radius modifier boundsBounds?
a scales valuesbitfield
FlagMaskComments
velocity0x1
velocity delta0x2
velocity cone angle0x4
angular velocity0x8
angular velocity delta0x10
type specific scale0x20
b scales valuesbitfield?
particlesBlock
  • HEK max count: 32
  • Processed during compile
FieldTypeComments
create inenum?
violence modeenum?
createenum
OptionValueComments
independent of camera mode0x0
only in first person0x1
only in third person0x2
in first person if possible0x3
locationuint16
relative directionEuler2D
FieldTypeComments
yawfloat

Rotation to the left or right around the Z (vertical) axis.

pitchfloat

Rotation up or down.

relative offsetPoint3D
FieldTypeComments
xfloat
yfloat
zfloat
relative direction vectorVector3D
  • Cache only
FieldTypeComments
ifloat
jfloat
kfloat
particle typeTagDependency: particle
flagsbitfield
FlagMaskComments
stay attached to marker0x1
random initial angle0x2
tint from object color0x4
interpolate tint as hsv0x8
across the long hue path0x10
distribution functionenum
OptionValueComments
start0x0
end0x1
constant0x2
buildup0x3
falloff0x4
buildup and falloff0x5
countBounds
FieldTypeComments
minuint16
maxuint16
distribution radiusBounds?
  • Unit: world units
velocityBounds?
  • Unit: world units per second
velocity cone anglefloat
angular velocityBounds?
  • Unit: degrees per second
radiusBounds?
  • Unit: world units
tint lower boundColorARGB
FieldTypeComments
alphafloat
redfloat
greenfloat
bluefloat
tint upper boundColorARGB?
a scales valuesbitfield
FlagMaskComments
velocity0x1
velocity delta0x2
velocity cone angle0x4
angular velocity0x8
angular velocity delta0x10
count0x20
count delta0x40
distribution radius0x80
distribution radius delta0x100
particle radius0x200
particle radius delta0x400
tint0x800
b scales valuesbitfield?

Acknowledgements

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

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