Spirit of Half-Life
Entity Guide
Version 1.5 (4th August 2004)
General Information:
For any "target" type value, you can use a
"+" or "-" prefix to specify that the target
should be turned on or off, respectively. (e.g. suppose you have
an entity which targets "mylight". If you tell it to
target "+mylight" instead, then it will only turn the
light on, never off.)
Similarly, for any Master, you can invert the master relationship
(that is, you can disable the entity whenever the master is
on) by adding a tilde (~) at the start of the master's name.
When testing your level, it's sometimes helpful to be able to
trigger entities manually. To trigger an entity named
"mydoor", you can simply type "fire mydoor"
at the console. Similarly, if you just type "fire", you
will trigger whatever entity the player is aiming at.
NB: this command will only work if sv_cheats is set to 1.
Contents:
worldspawn
aiscripted_sequence
ambient_ entities
ammo_ entities
button_target
calc_ entities
cycler_ entities
env_ entities
func_ entities
game_ entities
gibshooter
hud_sprite
infodecal
info_ entities
item_ entities
light_ entities
momentary_ entities
locus_ entities
monster_ entities
monstermaker
motion_manager
multisource
multi_ entities
path_ entities
player_ entities
scripted_ entities
speaker
target_cdaudio
trigger_ entities
watcher_ entities
weapon_ entities
world_items
xen_ entities
worldspawn:
World entity
Edit Worldspawn's properties from the map menu ["Map \ Map
Properties..."]
aiscripted_sequence:
AI Scripted Sequence
Obsolete. Use scripted_sequence. (The only difference between
them is that aiscripted_sequence effectively has its
"Override AI" flag ticked all the time.
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- movewith:
Moves with
- target:
Target (fire when done)
- delay:
Delay before firing target
- killtarget:
KillTarget when done
- m_iszFireOnBegin:
Fire after moving
- m_iszEntity:
Target Monster [LE]
- m_flRadius:
Search Radius
- m_iPriority:
Priority
- m_iFinishSchedule: AI
Schedule when done
- m_iRepeats: Repeat action X
more times
- m_fRepeatFrame: Repeat from
frame
- m_iszMoveTarget: Move target
(blank = this) [LE]
- m_fMoveTo: Move
to Position
- m_iszAttack: Turn target
(blank = this) [LE]
- If you specify
a classname (e.g. monster_barney) here, the
script will choose a random entity of that type.
- m_fTurnType: Turn
mode
- m_iszPlay: Action Animation
- Animation to
play after moving. Note that a monster_generic won't add any sounds
or special effects to its animations. If you need
those to appear, you'll have to use the specific
monster_<whatever> entities, instead.
- m_iszIdle: Idle Animation
- If you specify
an idle animation, then when the level begins the
monster will be frozen and made to play that
animation (this is the main use for the idle
animation in Valve's levels). After that the
monster will play the action animation when you
trigger the sequence, and will then revert to its
normal AI.
If there are any other scripted_sequences with
the same name as this one, then the monster will
also play the "idle" animation while
it's waiting for the other sequences to be ready
to start.
And finally, if the action animation is the same
as the idle animation, then any time the monster
would be playing the idle animation, instead it
will be frozen.
Obvious, eh? ;)
- spawnflags:
ambient_generic:
Universal Ambient
ambient_fmodstream:
ammo_357:
357 Ammo
ammo_9mmAR:
9mm Assault Rifle Ammo
ammo_9mmbox:
box of 200 9mm shells
ammo_9mmclip:
9mm Pistol Ammo
ammo_ARgrenades:
Assault Grenades
ammo_buckshot:
Shotgun Ammo
ammo_crossbow:
Crossbow Ammo
ammo_gaussclip:
Gauss Gun Ammo
ammo_rpgclip:
RPG Ammo
button_target:
Target Button
This entity is probably obsolete, now that func_button has a "Can't Use" flag.
- target: Target
- master: Master
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- movewith: Moves with
- spawnflags:
- Use Activates
- Start On
- Non Solid
- Can't shoot
calc_position:
Calculate position
To use this, simply refer to it in any field that's designated
[LP].
calc_ratio:
Ratio adjustment
To use this, simply refer to it in any field that's designated
[LR].
calc_subvelocity:
Calculate velocity based on
entity properties
To use this, simply refer to it in any field that's designated
[LV].
calc_velocity_path:
Calculate velocity for
travelling
To use this, simply refer to it in any field that's designated
[LV].
This calculates the velocity that would be needed to travel from
one point to another. By default, things will take 0.1 seconds to
travel this distance. (Use the "length factor" setting
to change this.)
This can also be used to calculate (for example) where a beam's
endpoint should be, in order for it to point towards a given
location.
calc_velocity_polar:
Calculate velocity
To use this, simply refer to it in any field that's designated
[LV].
cycler: Monster Cycler
cycler_sprite:
Sprite Cycler
cycler_weapon:
Weapon Cycler
env_beam:
Energy Beam Effect
- targetname: Name
- LightningStart: Start
Entity
- LightningEnd: Ending
Entity
- renderfx: Render
FX
- renderamt: Brightness (1 -
255)
- rendercolor: Beam Color (R G
B)
- Radius: Radius
- If you only
give the beam one endpoint, then radius will
specify how far away the other endpoint should be
(randomly) placed.
- life: Life (seconds 0 =
infinite)
- BoltWidth: Width of beam
(pixels*0.1 0-255)
- NoiseAmplitude: Distortion
(0-255)
- texture: Sprite Name
- TextureScroll: Texture
Scroll Rate (0-100)
- framerate: Frames per 10
seconds
- framestart: Starting Frame
- StrikeTime: Strike again
time (-1 = never)
- damage: Damage / second
- If you use a
negative number for the damage, it'll now heal
the target.
- frags: Damage type
- Energy Beam
- Fracture
- Bullet ('blood loss')
- Lacerations
- Burning
- Freezing
- Crowbar
- Electric shock
- Sonic ('internal bleeding')
- Drowning
- Biohazard
- Poison (duration)
- Radiation
- Hazardous chemical
- target: Fire on trip
- netname: Tripped only by
entity
- spawnflags:
- Start On
- This is
the default unless you specify a name.
- Toggle
- Random Strike
- Ring
- Makes
the beam form a circle, with a diameter
that stretches between the two endpoints.
For some unknown reason, both endpoints
must have a model.
NB: because the beam will stretch between
the origins of the two entities, you'll
need to give each endpoint an origin
brush.
- StartSparks
- EndSparks
- Decal End
- Fade Start
- The
beam fades in from nothing, like a tracer
bullet.
- Fade End
- Draw Solid
- For
making a rope, etc. NB: this flag will be
ignored unless the beam's Life is 0. This
also won't work on a Ring beam.
- Draw Sine
env_beamtrail:
Beam trail effect
If you specify an "entity to trail", a trail will be
attached or removed from the entity you specify. The trail will
turn off automatically if the entity remains stationary for a few
seconds, or alternatively you can turn it on and off by
triggering the env_beamtrail.
If you don't specify an "entity to trail", the
env_beamtrail itself will have a trail; in that case you probably
want to tell it what entity it should MoveWith.
Neither version will do anything if the trailed entity isn't
moving when you activate the trail.
The trail effect doesn't correspond exactly to with the movement
of the entity, so don't expect too much from it. We're not
mapping for UT2003 here.
env_beverage:
Beverage Dispenser
env_blood:
Blood Effects
env_bubbles:
Bubble Volume
Bubbles cannot drift sideways with this entity; use an env_model and
"models/pipe_bubbles.mdl" instead.
- targetname: Name
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- movewith: Moves with
- density: Bubble density
- frequency: Bubble frequency
- current: Speed of Current
- spawnflags:
env_customize:
Change entity properties
Works like an env_render : you trigger it to change the
properties of the target.
- targetname: Name
- Leave this
blank to have it take effect as soon as the level
starts.
- target: Target to affect
[LE]
- You can also
specify a classname here, e.g. monster_barney.
- m_flRadius: Search Radius
- If the target
is a classname, the game picks a random monster
of that type from within this search radius. This
has no effect if the target is anything except a
classname.
- body: Set body
- Player:
0 = gordon's head, 1 = helmeted.
Gina, Gordon, Helmet and Scientist
player models: 0 = original design, 1
= updated (better looking) version.
Barneys: 0 = holstered gun,
1 = holding gun, 2 = missing gun.
Scientists: 0-3 = no
syringe, 4-7 = syringe in hand. 4 different heads
in each set. (0 = Glasses, 1 = Einstein, 2 =
Luther, 3 = Slick)
Human Grunts: 0-3 = Mp5, 4-7
= Shotgun, 8-11 = No gun. 4 different heads in
each set. (0 = Gasmask, 1 = Beret, 2 = Skimask, 3
= Cigar)
Note that this entity can only change their
appearance- for example, grunts who had shotguns
will still fire shotgun rounds.
- skin: Set skin
- Scientists
and Human Grunts: 1 = black skin.
Bullsquids, Houndeyes, Slaves:
1 = eyes shut.
Ichthyosaur: 0-4 = different
eye positions.
- No change
- Toggle 0/1
- Skin 0 (normal)
- Skin 1
- Skin 2
- Skin 3
- frame: Set brush texture
- If the target
is a brush entity with a switchable texture (one
with both a +0 version and a +A version), then
this switches between the two versions.
If the entity has switchable texlights on it,
this will also turn those lights on and off.
- No change
- Toggle 0/1
- Texture 0 (normal)
- Texture 1 (alternate)
- On/Off based on usetype
- With
this set, triggering the env_customize On
makes the target use its normal texture,
and Off makes it use the alternate one.
- Off/On based on usetype
- The
opposite of the previous setting; On sets
the alternate texture, Off sets the
normal one.
- m_iszModel: Set model (e.g.
models/can.mdl)
- Use this
setting with caution - a lot of a monster's
behaviour is determined by its model. (You should
be safe if the new model is just a set of
different textures.)
- m_bloodColor: Blood Color
- No change
- Don't Bleed
- Red (Human)
- Yellow (Alien)
- m_voicePitch: Voice Pitch
(100 = normal)
- Change the
pitch of the monster's voice (100 = normal pitch,
higher numbers = higher pitch)
- m_fFramerate: Frame rate (-1
= no change)
- >1 = fast
1 = normal speed
0..1 = slow
0 = stop
-1 = no change
- m_fController0: Bone
controller 0
- Sets:
agrunt.mdl: head position
(45..-45)
hgrunt.mdl: head position
(70..-70)
barney.mdl, gman.mdl, islave.mdl,
scientist.mdl: head position (60..-60)
apache.mdl: gun yaw
(90..-90)
barnacle.mdl: tongue length
(0..-1024)
garg.mdl: body yaw (60..-60)
osprey.mdl: rotor angle
(0..-90)
icky.mdl: tail position
(45..-45)
miniturret.mdl, sentry.mdl, turret.mdl:
gun yaw (0..360)
- m_fController1: Bone
controller 1
- Sets:
apache.mdl: gun pitch
(45..-10)
(mini)turret.mdl: gun pitch
(15..-90)
sentry.mdl: gun pitch
(60..-60)
garg.mdl: body pitch
(35..-35)
- m_fController2: Bone
controller 2
- In the standard
models, this does nothing. Supplied for the
benefit of user-produced models.
- m_fController3: Bone
controller 3
- In the standard
models, this does nothing. Supplied for the
benefit of user-produced models.
- m_iClass: Set behaviour
- No change
- Scientist
- Likes
players and barneys; hates Human Military
and most aliens; scared of Alien Military
and Bullsquids.
- Barney
- Likes
players and scientists; dislikes
Machines, Human Military, and all aliens.
- Human Military
- Dislikes
scientists and most aliens. Hates
players, barneys and Alien Military.
- Machine (Human Military)
- Machines
go clang when hit, and never gib.
Bioweapons (Snarks and Hornets) ignore
them. Otherwise, they're pretty much like
Human Military.
- Alien Military
- Hates
players and Human Military. Dislikes
Machines, scientists and barneys.
- Other Alien
- Dislikes
Machines and all humans.
- Headcrab
- Dislikes
all humans. Scared of Bullsquids.
- Bullsquid
- Hates
Headcrabs. Dislikes humans and other
Bullsquids.
- Faction A
- Dislikes
everyone, except other Faction A members.
- Faction B
- Dislikes
everyone, except other Faction B members.
- Faction C
- Dislikes
everyone, except other Faction C members.
- m_iPlayerReact: Reaction to
player
- Replaces the
old "Player Ally" flag.
- No Change
- Normal
- That
is, normal for the monster's current
behaviour.
- Ignore
- Friendly until hurt
- Scientists
usually use this behaviour. The monster
will stop being friendly when hurt by the
player, regardless of how. (e.g. even if
they stupidly ran into the middle of a
firefight.)
- Friendly unless provoked
- Barneys
usually use this behaviour. The monster
will stop being friendly when shot
deliberately by the player, but not when
(for instance) caught in grenade
explosions, or in the middle of combat.
- Enemy
- m_iVisible: Visibility
- If you want the
entity to be partly transparent, use env_render instead.
- No change
- Visible
- Invisible
- Toggle
- On/Off based on usetype
- Trigger
the env_customize On for visible, and Off
for invisible.
- Off/On based on usetype
- Trigger
the env_customize Off for visible, and On
for invisible.
- m_iSolid: Solidity
- Currently, this
will cause problems if used to solidify a
non-monster, non-brush entity.
Note that a func_ladder will still act as a
ladder if you make it non-solid.
- No change
- Solid
- Not Solid
- Toggle
- On/Off based on usetype
- Trigger
the env_customize On for solid, and Off
for non-solid.
- Off/On based on usetype
- Trigger
the env_customize Off for solid, and On
for non-solid.
- m_iPrisoner: Prisoner
- No change
- Yes
- No
- Toggle
- On/Off based on usetype
- Trigger
the env_customize On for a prisoner, and
Off for a non-prisoner.
- Off/On based on usetype
- Trigger
the env_customize Off for a prisoner, and
On for a non-prisoner.
- m_iMonsterClip: MonsterClip
flag
- No change
- On
- Off
- Toggle
- On/Off based on usetype
- Trigger
the env_customize On to use Monsterclip,
and Off to not use it.
- Off/On based on usetype
- Trigger
the env_customize Off to use Monsterclip,
and On to not use it.
- m_iProvoked: Angry At Player
- Applies to
barneys, scientists, "Friendly until
hurt" and "Friendly until
provoked" monsters, and overrides these
monsters' usual liking for the player- e.g. as if
the player had shot them.
- No change
- Yes
- No
- Toggle
- On/Off based on usetype
- Trigger
the env_customize On to be angry, and Off
to calm down.
- Off/On based on usetype
- Trigger
the env_customize Off to be angry, and On
to calm down.
- spawnflags:
- Affect corpses
- Once Only
- Debug
env_decal:
Decal sprayer
env_dlight:
Dynamic light effect
Creates a temporary ball of light when triggered.
Note that this primarily lights the world (i.e. brushes); studio
models will pick up the lighting if they're standing in it, but
they'll just be a solid colour.
To just light studio models, see env_elight .
- targetname: Name
- movewith: Moves with
- message: Position (blank =
here) [LP]
- rendercolor: Light Color (R
G B)
- renderamt: Radius
- health: Duration (0 = until
triggered)
- frags: Decay (units/sec)
- spawnflags:
env_elight:
Entity light effect
Creates a temporary ball of light when triggered. Only lights
studio models (e.g. monsters), but does light them properly.
Quite pretty.
See env_dlight if you want to light the walls, etc.
- targetname: Name
- movewith: Moves with
- netname: At position (blank
= here) [LP]
- target: Entity to follow
(blank = this) [LE]
- impulse: Attachment point on
that entity
- renderamt: Radius
- rendercolor: Color (R G B)
- health: Duration (0 = until
triggered)
- frags: Decay (units/sec)
- spawnflags:
env_rain:
Rain Effect
Essentially, this produces a shifting group of parallel beams.
I've called it env_rain because that's the most-requested use for
it.
For a sunbeam effect, try Drip Speed = 0, Drip Width = 30, Drip
Brightness = 25, Drip Color = 255 255 255, Time between updates =
0, Drip Sprite = sprites/laserbeam.spr.
For snow, try Drip Speed = 20, Drip Width = 20, Drip Color = 255
255 255, Drip Sprite = sprites/rain.spr.
env_mirror:
Mirror
env_explosion:
Explosion
env_fade:
Screen Fade
env_fog: Fog effect, DMC stylee
env_footsteps:
Change Movement Sounds
To set the player's footstep sounds, trigger this entity 'on'. To
revert to normal, trigger it 'off' in the same way.
Alternatively, you can just toggle it, to alternately set and
unset the sounds.
If one of the sound fields is left blank, it will have no
effect... so if you actually want it to become silent, choose
common/null.wav.
This entity is probably most useful as the "fire
on/off" target of a trigger_inout, to specify the area over
which the footsteps are to be changed.
env_funnel:
Large Portal Funnel
env_global:
Global State
See also env_state
- targetname: Name
- globalstate: Global State to
Set
- triggermode: Trigger to send
- initialstate: Initial State
- spawnflags:
env_glow:
Light Glow/Haze
env_laser:
Laser Beam Effect
- targetname: Name
- renderfx: Render
FX
- angles: Pitch Yaw Roll (Y Z
X)
- movewith: Moves with
- LaserStart: Start At (blank
= here) [LP]
- LaserTarget: Fire Towards
- m_iTowardsMode: Meaning of
Fire Towards
- renderamt: Brightness (1 -
255)
- rendercolor: Beam Color (R G
B)
- width: Width of beam
(pixels*0.1 0-255)
- NoiseAmplitude: Amount of
noise (0-255)
- texture: Sprite Name
- StartSprite: Start Sprite
- If you want,
you can name an env_sprite here, and the laser
will use that as its start sprite.
- EndSprite: End Sprite
- If you want,
you can name an env_sprite here, and the laser
will use that as its end sprite.
- TextureScroll: Texture
Scroll Rate (0-100)
- framestart: Starting Frame
- damage: Damage / second
- If you specify
a negative number here, the target will be healed
instead.
- frags: Damage type
- Energy Beam
- Fracture
- Bullet ('blood loss')
- Lacerations
- Burning
- Freezing
- Sonic ('internal bleeding')
- Drowning
- Biohazard
- Poison (continuous)
- Radiation
- Hazardous chemical
- target: Fire when tripped
- netname: Tripped only by
entity
- m_iProjection: Projection
mode
- Normal
- Extend past endpoint
- With
this enabled, the laser's Target position
only specifies the direction. The beam
can actually extend beyond it.
- m_iStoppedBy: Stopped by
- Glass & Monsters
- Monsters only
- Glass & Monster hulls
- Monster
hulls are a little bigger than monster
hitboxes, so with this option the beam
will be more likely to hit them.
- Monster hulls only
- Glass only
- Neither
- spawnflags:
- Start On
- StartSparks
- EndSparks
- Decal End
- Fade Start
- The
beam fades in from nothing, like a tracer
bullet.
- Fade End
- Draw Solid
- Interpolate
env_message:
HUD Text Message
env_model:
New alternative to cyclers
- targetname: Name
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- model: Model name
- skin: Skin
- body: Body
- scale: Scale (1.0 = normal
size)
- m_iszSequence_On: Sequence
when on
- m_iAction_On: Behaviour when
on
- Freeze when sequence ends
- Loop
- Change state when sequence
ends
- m_iszSequence_Off: Sequence
when off
- m_iAction_Off: Behaviour
when off
- Freeze when sequence ends
- Loop
- Change state when sequence
ends
- spawnflags:
- Initially Off
- Drop to Floor
- Solid
env_quakefx:
Quake 1 particle effects
Creates various particle effects when triggered.
env_particle:
Particle Effect
env_render:
Render Controls
- targetname: Name
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- message: FX Amount factor
[LR]
- The Renderamt
number will be multiplied by this factor.
- m_fScale: Scale (0 = no
change) [LR]
- Set the scale
of the affected model or sprite. (If Fade Time is
set, the scale will change slowly over time.)
- target: Target to affect
[LE]
- frags: Fade Time (secs)
- If you set
this, the affected entity (or entities) will fade
progressively to the new settings you specify.
Only Renderamt and rendercolor will fade; the
other values will change instantly, as usual.
- armorvalue: Fade Coarseness
(secs)
- The frequency
at which the fade gets updated. If left blank (or
set to 0), it updates as fast as possible.
You probably won't need to set this unless you
actually want it to look coarse.
If a lot of entities are
fading at the same time, and you find the game is
slowing down, you may want to try setting this to
0.2 or so.
- netname: Trigger after
fading
- spawnflags:
- No Renderfx
- No Renderamt
- No Rendermode
- No Rendercolor
- Remove target
- Useful
if you want something to fade out and
then be removed.
- Remove self
- The
env_render will killtarget itself after
use.
env_shake:
Screen Shake
env_shockwave:
Shockwave Effect
Creates a shockwave effect (like monster_houndeye ) when triggered.
- targetname: Name
- movewith: Moves with
- m_iszPosition: Position
(blank = here) [LP]
- netname: Spritename
- rendercolor: Color
- renderamt: Opacity (0-255)
- m_iTime: Duration
- m_iRadius: Final radius
- m_iHeight: Wave height
- m_iScrollRate: Scroll rate
- m_iNoise: Distortion
('noise')
- m_iFrameRate: Frame Rate
- m_iStartFrame: Starting
Frame
- spawnflags:
- Centered
- Normally,
the env_shockwave entity marks the bottom
of the shockwave. Tick here to mark its
centre instead.
- Repeatable
env_shooter:
Model Shooter
env_sky: Unreal-Tournament style sky view
env_sound:
DSP Sound
env_spark:
Spark
env_sprite:
Sprite Effect
env_state:
Local State
Simply keeps track of a state. Useful as a master or a
conditional "branch".
env_warpball:
Teleport-in effect
func_breakable:
Breakable Object
func_button:
Button
- targetname: Name
- target: Target
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- master: Master
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- style: Texlight
style
- globalname: Global Entity
Name
- locked_sound: Locked
Sound
- unlocked_sound: Unlocked
Sound
- locked_sentence: Locked
Sentence
- unlocked_sentence: Unlocked
Sentence
- speed: Speed
- health: Health (shootable if
> 0)
- lip: Lip
- sounds: Sounds
- The number
against each sound (except Lightswitch)
corresponds to the wav file played. e.g. Buzz
(10) plays "buttons/button10.wav".
- None
- Big zap & Warmup (1)
- Access Denied (2)
- Access Granted (3)
- Quick Combolock (4)
- Power Deadbolt 1 (5)
- Power Deadbolt 2 (6)
- Plunger (7)
- Small zap (8)
- Keycard Sound (9)
- Buzz (10)
- Buzz Off (11)
- Lightswitch
- wait: Delay before Reset
- delay: Delay before trigger
- _minlight: Minimum light
level
- spawnflags:
- Don't move
- Direct use only
- Normally,
the player can use buttons through walls
etc. Tick here to prevent that.
(With this set, it's also impossible to
use the button unless it's in the centre
of the player's crosshairs. So at last,
control panels can have their buttons
close together!)
Don't combine this with Not Solid - the
button will become unusable.
- Toggle
- Sparks
- Not Solid
- Touch Activates
- Can't Use
- Normally,
a button can be activated with the Use
key. Tick here to disable that behaviour.
If "Touch activates" is also
selected, this flag will instead enable
the use key.
func_conveyor:
Conveyor Belt
func_door:
Basic door
- targetname: Name
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- master: Master
- skill: Skill
setting
- target: Target (Always)
- message: Target on Open
- netname: Target on Close
- killtarget: KillTarget
- immediatemode: Fire
before moving
- onoffmode: On/Off
Aware
- speed: Speed
- movesnd: Move
Sound
- stopsnd: Stop
Sound
- wait: Delay before close
- Setting wait to
-1 also prevents the door from reversing when it
comes into contact with the player, as seen on
the bunker door in Crossfire. This setting isn't
recommended if the door is using MoveWith.
- lip: Lip
- dmg: Damage inflicted when
blocked
- delay: Delay before fire
- This delay only
applies to the Target, not the Fire on Open/Close
fields.
- health: Health (shoot open)
- _minlight: Minimum light
level
- locked_sound: Locked
Sound
- unlocked_sound: Unlocked
Sound
- locked_sentence: Locked
Sentence
- unlocked_sentence: Unlocked
Sentence
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- directuse: Direct use only
- Normally, the
player can open doors when he can't actually see
them (e.g. from the other side of a wall). Select
"yes" here to prevent that.
Don't combine this with Passable - the door will
become unusable.
- acceleration: Acceleration
'0' for infinite
- deceleration: Deceleration
'0' for infinite
- spawnflags:
func_door_rotating:
Rotating door
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- movewith:
Moves with
- master:
Master
- skill:
Skill
setting
- target: Target (Always)
- message: Target on Open
- netname: Target on Close
- killtarget: KillTarget
- immediatemode: Fire
before moving
- onoffmode: On/Off
Aware
- speed: Speed
- movesnd: Move
Sound
- stopsnd: Stop
Sound
- wait: Delay before close
- Setting wait to
-1 also prevents the door from reversing when it
comes into contact with the player, as seen on
the bunker door in Crossfire. This setting isn't
recommended if the door is using MoveWith.
- lip: Lip
- dmg: Damage inflicted when
blocked
- delay: Delay before fire
- This delay only
applies to the Target, not the Fire on Open/Close
fields.
- health: Health (shoot open)
- _minlight: Minimum light
level
- locked_sound: Locked
Sound
- unlocked_sound: Unlocked
Sound
- locked_sentence: Locked
Sentence
- unlocked_sentence: Unlocked
Sentence
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- directuse: Direct use only
- Normally, the
player can open doors when he can't actually see
them (e.g. from the other side of a wall). Select
"yes" here to prevent that.
Don't combine this with Passable - the door will
become unusable.
- distance: Distance (deg)
- axes: Axis Multipliers (Y Z
X)
- spawnflags:
func_friction:
Surface with a change in
friction
func_guntarget:
Moving platform
func_healthcharger:
func_illusionary:
Fake Wall/Light
func_ladder:
Ladder
Creates an invisible, climbable field. To show the actual ladder
image, either add a func_illusionary covered with a {ladder texture, or
tick the Visible flag.
- targetname: Name
- movewith: Moves with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- spawnflags:
func_monsterclip:
Monster clip brush
Also prevents hlcsg.exe from making a path between two info_node entities on opposite sides of the
brush.
- targetname: Name
- movewith: Moves with
func_mortar_field:
Mortar Field
func_pendulum:
Swings back and forth
Only partially implemented, some keys don't work properly.
func_plat:
Elevator
With any luck, I've fixed the bug which caused players to
sometimes be frozen.
func_platrot:
Moving Rotating platform
func_pushable:
Pushable object
func_recharge:
func_rot_button:
RotatingButton
Like func_button , except it rotates.
- targetname: Name
- target: Target
- angles: Pitch Yaw Roll (Y Z
X)
- movewith: Moves with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- master: Master
- locked_sound: Locked
Sound
- unlocked_sound: Unlocked
Sound
- locked_sentence: Locked
Sentence
- unlocked_sentence: Unlocked
Sentence
- changetarget: ChangeTarget
Name
- if set, then
when the button is pressed, the
"target" field of the entity targetted
by the button will be set to this value.
- speed: Speed
- axes: Axis Multipliers (Y Z
X)
- health: Health (shootable if
> 0)
- sounds: Sounds
- The number
against each sound corresponds to the wav file
played. e.g. Squeaky (1) plays
"buttons/lever1.wav".
- None
- Squeaky (1)
- Squeaky Pneumatic (2)
- Ratchet Groan (3)
- Clean Ratchet (4)
- Gas Clunk (5)
- wait: Delay before reset
- delay: Delay before trigger
- distance: Distance (deg)
- _minlight: _minlight
- spawnflags:
- Not solid
- Reverse Dir
- Direct use only
- Toggle
- X Axis
- Y Axis
- Touch Activates
- Invert '+Use'able
func_rotating:
Rotating Object
- targetname:
Name
- movewith: Moves
with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- angles: Pitch Yaw Roll (Y Z
X)
- This sets the
initial orientation of the entity, but that could
be achieved by simply rotating the brushes, in
Worldcraft.
More importantly, it will change the position of
the axes the entity pivots around.
- speed: Rotation Speed
- axes: Axis Multipliers (Y Z
X)
- This field
overrides the "X Axis" and "Y
Axis" flags. It's mostly useful to make a
complex orbit for an object. (If you just want to
have a tilted axis for an otherwise normal
rotating object, you'll want to change the
"angle" field instead.)
For example, set this field to "0 12 1"
and the Z axis will rotate 12 times in the time
it takes the X axis to complete one turn. (the
entity will also turn 12 times faster than the
Rotation Speed you specify.)
NB: The way the quake engine handles rotation is
not exactly intuitive. The Z axis is the primary
axis, so rotation around the Y and X axes will be
affected by the current Z position. Similarly,
the Y axis is the secondary axis, so rotation
around the X axis will be affected by the current
Y position.
To get a feel for how this works, try making a
func_rotating cube whose origin is at one corner,
set its "axes" value to "1 1
0", and watch how it moves. One edge will
simply go around in a horizontal circle, while
the rest of the cube rotates around that edge.
- volume: Volume (10 =
loudest)
- fanfriction: Friction (0 -
100%)
- sounds: Fan Sounds
- The number
against each sound corresponds to the wav file
played. e.g. Slow Rush (2) plays
"fans/fan2.wav".
- No Sound
- Fast Whine (1)
- Slow Rush (2)
- Medium Rickety (3)
- Fast Beating (4)
- Slow Smooth (5)
- message: WAV Name
- The sound to
play while active. This will only be used if
"Fan Sounds" is set to "No
Sound".
- _minlight: _minlight
- spawnorigin: X Y Z - Move
here after lighting
- dmg: Damage inflicted when
blocked
- spawnflags:
- Start ON
- Reverse Direction
- X Axis
- Y Axis
- Acc/Dcc
- Fan Pain
- Not Solid
- Small Radius
- This,
and the other "radius"
settings, only affect the way the Fan
Sounds are played; if you set a small
radius, the sounds will only be audible
near to the fan.
- Medium Radius
- Large Radius
func_shine:
Shiny Surface
func_tank:
Brush Gun Turret
- targetname: Name
- target: Target
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- master: (Team) Master
- Mainly for use
with 1009 team settings (game_team_master)
- firemaster: Fire Master
- While this
master is locked, the gun cannot fire, but the
player can still control it. (Intended to enable
reloading effects.)
- m_iszLocusFire: Trigger on
firing (locus = barrel)
- Whenever the
tank fires, this entity is triggered. (the locus
for this is the coordinates and direction at the
end of the gun.)
- yawrate: Yaw rate
- yawrange: Yaw range
- yawtolerance: Yaw tolerance
- pitchrate: Pitch rate
- pitchrange: Pitch range
- pitchtolerance: Pitch
tolerance
- barrel: Barrel Length
- barrely: Barrel Horizontal
- barrelz: Barrel Vertical
- spritesmoke: Smoke Sprite
- spriteflash: Flash Sprite
- spritescale: Sprite scale
- rotatesound: Rotate Sound
- Bug fixed:
rotate sound now stops when a player releases
control of the gun.
- firerate: Rate of Fire
- bullet_damage: Damage Per
Bullet
- persistence: Firing
persistence
- firespread: Bullet
accuracy
- minRange: Minmum target
range
- maxRange: Maximum target
range
- m_iClass: Behaviour
- _minlight: Minimum light
level
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- bullet: Bullets
- spawnflags:
func_tankcontrols:
Tank controls
func_tanklaser:
Brush Laser Turret
- targetname:
Name
- target: Target
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- master: (Team) Master
- Mainly for use
with 1009 team settings (game_team_master)
- firemaster: Fire Master
- While this
master is locked, the gun cannot fire, but the
player can still control it. (Intended to enable
reloading effects.)
- m_iszLocusFire: Trigger on
firing (locus = barrel)
- Whenever the
tank fires, this entity is triggered. (the locus
for this is the coordinates and direction at the
end of the gun.)
- yawrate: Yaw rate
- yawrange: Yaw range
- yawtolerance: Yaw tolerance
- pitchrate: Pitch rate
- pitchrange: Pitch range
- pitchtolerance: Pitch
tolerance
- barrel: Barrel Length
- barrely: Barrel Horizontal
- barrelz: Barrel Vertical
- spritesmoke: Smoke Sprite
- spriteflash: Flash Sprite
- spritescale: Sprite scale
- rotatesound: Rotate Sound
- Bug fixed:
rotate sound now stops when a player releases
control of the gun.
- firerate: Rate of Fire
- bullet_damage: Damage Per
Bullet
- persistence: Firing
persistence
- firespread: Bullet
accuracy
- minRange: Minmum target
range
- maxRange: Maximum target
range
- m_iClass: Behaviour
- _minlight: Minimum light
level
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- laserentity: env_laser
Entity
- spawnflags:
func_tankmortar:
Brush Mortar Turret
- targetname:
Name
- target: Target
- angles: Pitch
Yaw Roll (Y Z X)
- movewith:
Moves with
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- master: (Team) Master
- Mainly for use
with 1009 team settings (game_team_master)
- firemaster: Fire Master
- While this
master is locked, the gun cannot fire, but the
player can still control it. (Intended to enable
reloading effects.)
- m_iszLocusFire: Trigger on
firing (locus = barrel)
- Whenever the
tank fires, this entity is triggered. (the locus
for this is the coordinates and direction at the
end of the gun.)
- yawrate: Yaw rate
- yawrange: Yaw range
- yawtolerance: Yaw tolerance
- pitchrate: Pitch rate
- pitchrange: Pitch range
- pitchtolerance: Pitch
tolerance
- barrel: Barrel Length
- barrely: Barrel Horizontal
- barrelz: Barrel Vertical
- spritesmoke: Smoke Sprite
- spriteflash: Flash Sprite
- spritescale: Sprite scale
- rotatesound: Rotate Sound
- Bug fixed:
rotate sound now stops when a player releases
control of the gun.
- firerate: Rate of Fire
- bullet_damage: Damage Per
Bullet
- persistence: Firing
persistence
- firespread: Bullet
accuracy
- minRange: Minmum target
range
- maxRange: Maximum target
range
- m_iClass: Behaviour
- _minlight: Minimum light
level
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- iMagnitude: Explosion
Magnitude
- spawnflags:
func_tankrocket:
Brush Rocket Turret
- targetname:
Name
- target: Target
- angles: Pitch
Yaw Roll (Y Z X)
- movewith:
Moves with
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- master: (Team) Master
- Mainly for use
with 1009 team settings (game_team_master)
- firemaster: Fire Master
- While this
master is locked, the gun cannot fire, but the
player can still control it. (Intended to enable
reloading effects.)
- m_iszLocusFire: Trigger on
firing (locus = barrel)
- Whenever the
tank fires, this entity is triggered. (the locus
for this is the coordinates and direction at the
end of the gun.)
- yawrate: Yaw rate
- yawrange: Yaw range
- yawtolerance: Yaw tolerance
- pitchrate: Pitch rate
- pitchrange: Pitch range
- pitchtolerance: Pitch
tolerance
- barrel: Barrel Length
- barrely: Barrel Horizontal
- barrelz: Barrel Vertical
- spritesmoke: Smoke Sprite
- spriteflash: Flash Sprite
- spritescale: Sprite scale
- rotatesound: Rotate Sound
- Bug fixed:
rotate sound now stops when a player releases
control of the gun.
- firerate: Rate of Fire
- bullet_damage: Damage Per
Bullet
- persistence: Firing
persistence
- firespread: Bullet
accuracy
- minRange: Minmum target
range
- maxRange: Maximum target
range
- m_iClass: Behaviour
- _minlight: Minimum light
level
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- spawnflags:
func_trackautochange:
Automatic track changing
platform
- targetname:
Name
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- movesnd: Move
Sound
- custommovesnd: Custom Move
Sound
- stopsnd: Stop
Sound
- customstopsnd: Custom Stop
Sound
- volume: Sound Volume 0.0 -
1.0
- height: Travel altitude
- rotation: Spin amount
- train: Train to switch
- toptrack: Top track
- bottomtrack: Bottom track
- speed: Move/Rotate speed
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- _minlight: Minimum light
level
- spawnflags:
func_trackchange:
Train track changing platform
- targetname:
Name
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- globalname: Global Entity
Name
- movesnd: Move
Sound
- custommovesnd: Custom Move
Sound
- stopsnd: Stop
Sound
- customstopsnd: Custom Stop
Sound
- volume: Sound Volume 0.0 -
1.0
- height: Travel altitude
- rotation: Spin amount
- train: Train to switch
- toptrack: Top track
- bottomtrack: Bottom track
- speed: Move/Rotate speed
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- _minlight: Minimum light
level
- spawnflags:
func_tracktrain:
Track Train
- targetname:
Name
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- target: First stop target
- sounds: Move Sound
- The number
against each sound corresponds to the wav file
played. e.g. Rail 1 plays
"plats/ttrain1.wav".
- None (or custom)
- Rail 1
- Rail 2
- Rail 3
- Rail 4
- Rail 6
- Rail 7
- custommovesound: Custom Move
Sound
- customstartsound: Start
Sound
- Default is
"plats/ttrain_start1.wav". For silence,
use "common/null.wav".
- custombrakesound: Stop Sound
- Default is
"plats/ttrain_brake1.wav". For silence,
use "common/null.wav".
- wheels: Distance between the
wheels
- This setting
controls how smoothly the train turns corners -
if the wheels are close together, it will turn
sharply, and if far apart, it will turn more
gradually.
- height: Height above track
- startspeed: Initial speed
- speed: Speed (units per
second)
- dmg: Damage on crush
- volume: Volume (10 =
loudest)
- bank: Bank angle on turns
- _minlight: Minimum light
level
- avelocity: Initial avelocity
(Y Z X)
- spawnflags:
- No Pitch (X-rot)
- No User Control
- No Reverse
- Passable
- No Yaw (Z-rot)
func_train:
Moving platform
- targetname: Name
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- movesnd: Move
Sound
- custommovesnd: Custom Move
Sound
- stopsnd: Stop
Sound
- customstopsnd: Custom Stop
Sound
- volume: Sound Volume 0.0 -
1.0
- target: First stop target
- speed: Speed (units per
second)
- avelocity: Initial avelocity
(Y Z X)
- dmg: Damage on crush
- skin: Contents
- volume: Sound Volume 0.0 -
1.0
- _minlight: Minimum light
level
- spawnflags:
- Origin on paths
- Usually,
the center of the train (in fact, the
center of its bounding box) will be the
point used when positioning the train at
a path_corner. Tick here to use its
origin for this instead.
- Initially On
- This is
the default if you don't specify a name.
- Not solid
func_traincontrols:
Train Controls
Note that unlike func_tankcontrols, this defines what area the
player must be standing in in order to use the tank.
func_wall:
Wall
func_wall_toggle:
Toggleable geometry
func_water:
Liquid
game_counter:
Fires when it hits limit
game_counter_set:
Sets a game_counter
game_end:
End this multiplayer game
game_player_equip:
Initial player equipment
game_player_hurt:
Hurts player who fires
game_player_team:
Allows player to change teams
game_score:
Award/Deduct Points
game_team_master:
Team based master/relay
game_team_set:
Sets team of team_master
game_text:
HUD Text Message
game_zone_player:
Player Zone brush
gibshooter:
Gib Shooter
hud_sprite:
Hud Sprite Display
At the moment, this can only display sprites that are defined in
sprites/hud.txt, and will always display them in the status icon
area on the left of the screen.
Bear in mind, the hud isn't displayed unless you have an HEV
suit.
infodecal:
Decal
If you give a decal a targetname, then it won't appear until
fired.
info_alias:
Alias
An alias makes itself an "alternative name" for an
entity. To refer to an entity through the alternative name, use
the alias name preceeded by a *.
For example, suppose you set up an info_alias entity called
'myalias'. 'Myalias' targets a light called 'redlight'. suppose a
you set up a trigger_once field targetting
"*myalias", so that when you walk through the trigger
field, redlight gets turned on and off. So far, info_alias seems
to be like a trigger_relay . However, you can also set up a
switch which targets "myalias", to turn it off...
- targetname: Name
- target: Reference while On
- netname: Reference while Off
- mode: Use Mode, 0= On/Off 1=
list mode
- spawnflags:
info_bigmomma:
Big Mamma Node
info_compile_parameters: Compile Options
Which compile options to use.
info_landmark:
Transition Landmark
An info_group acts similarly to an info_alias , except that it has several
"members" which are are accessed by writing
'mygroup.membername'.
These members are set up just like the targets of a multi_manager - except that they'll contain an
entity reference instead of a delay time.
If you set up its "target" field to refer to an
info_alias entity, then when an info_group is triggered, it will
change that info_alias entity to target the group. If you refer
to a group member which hasn't been defined explicitly, but you
do define a default prefix here, then the member name will be
added to the prefix to generate an appropriate reference.
e.g: Suppose an info_group named "bob" defines a
default prefix "bobs_". Now; if you refer to, for
example, "bob.house" or "bob.gun", you'll
actually affect entities named "bobs_house" and
"bobs_gun", respectively.
- targetname: Name
- movewith: Moves with
info_movewith:
Movewith relay
info_node:
ai node
info_node_air:
ai air node
info_null:
info_null (spotlight target)
info_player_coop:
Player cooperative start
info_player_deathmatch: Player deathmatch start
info_player_start:
Player 1 start
info_target:
Beam Target
info_teleport_destination: Teleport destination
info_texlights:
Texture Light Config
item_airtank:
Oxygen tank
item_antidote:
Poison antidote
item_battery:
HEV battery
item_flashlight:
FlashLight
item_healthkit:
Small Health Kit
item_longjump:
Longjump Module
item_security:
Security card
item_suit:
HEV Suit
item_flare:
Inventory Flare
item_camera:
Inventory Camera
item_medicalkit:
Inventory Medkit
light: Invisible lightsource
light_glow:
Dynamic Glow
See also env_dlight .
- targetname: Name
- movewith: Moves with
- frags: Glow Type
- Brightest
- Flashlight
- None
- spawnflags:
light_environment:
Environment
light_spot:
Spotlight
momentary_door:
Momentary/Continuous door
- targetname:
Name
- angles: Pitch
Yaw Roll (Y Z X)
- movewith: Moves
with
- master: Master
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- zhlt_lightflags: HLRAD
Opacity (ZHLT 2.5.1+)
- light_origin: Light Origin
(ZHLT 2.5.1+)
- globalname: Global Entity
Name
- speed: Speed
- Maximum speed
the door is allowed to move at.
- movesnd: Move Sound
- The number
against each sound corresponds to the wav file
played. e.g. Vacuum (4) plays
"doors/doormove4.wav".
- No Sound
- Servo (Sliding) (1)
- Pneumatic (Sliding) (2)
- Pneumatic (Rolling) (3)
- Vacuum (4)
- Power Hydraulic (5)
- Large Rollers (6)
- Track Door (7)
- Snappy Metal Door (8)
- Squeaky 1 (9)
- Squeaky 2 (10)
- stopsnd: Stop sound
- No Sound
- Clang with brake
- Clang Reverb
- Ratchet stop
- Chunk
- Light Airbrake
- Metal Slide Stop
- Metal Lock Stop
- Snappy Metal Stop
- lip: Lip
- _minlight: Minimum light
level
- spawnflags:
momentary_rot_button:
Direct wheel control
locus_alias:
Locus System - Entity variable
Stores a reference to an entity. Whenever the alias is triggered,
it changes to record what triggered it.
Thereafter, you can refer to that entity by *aliasname (where
aliasname is the name of the locus_alias).
Note that this records a specific entity - unlike info_alias which records the name of an entity.
So info_alias always refers to all entities with a particular
name, whereas locus_alias always refers to one specific entity.
- targetname: Name
- netname: Initial value
locus_beam:
Locus System - Beam effect
locus_variable:
Locus System - Variable for
storing data
As the name suggests, this acts like a variable in a programming
language. It stores three values - a position, a velocity, and a
ratio. (if you want a variable that records entities, see locus_alias ). To set values, trigger the
entity; and to access them, just refer to it like the appropriate
calc_x entity.
locus_variable can also be used another way; if you give a
"Child's Name" value, triggering it will create a
reference point with that name. So for example, suppose you want
to create streams of water wherever an object gets shot. You
trigger a locus_variable to record where the shot hits, and then
have its "fire on spawn" value triggering the water
stream. But if you don't have it make seperate reference points,
then all the water will come out of the last shot position.
- targetname: Name
- m_iszPosition: Position to
record [LP]
- m_iszVelocity: Velocity to
record [LV]
- m_iszRatio: Ratio to record
[LR]
- m_iszTargetname: Child's
name (blank = no child)
- m_iszFireOnSpawn: Fire on
spawn (locus = child)
- m_fDuration: Removed after
time (secs)
monster_alien_controller: Controller
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- Squad Name
- Squad Leader
- Only
needed if you use the Squad Name value.
If you define a Squad using the Squad
Name value, but none of them are flagged
as a Squad Leader, then the squad won't
get linked together properly.
- Drop gun
- spawnflags:
monster_alien_slave:
Vortigaunt
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- netname: Squad Name
- spawnflags:
- Monster Flags
- Squad Leader
- Only
needed if you use the Squad Name value.
If you define a Squad using the Squad
Name value, but none of them are flagged
as a Squad Leader, then the squad won't
get linked together properly.
- Start Peaceful
- This
monster won't attack unless provoked.
monster_apache:
Apache
monster_babycrab:
Baby Headcrab
monster_barnacle:
Barnacle Monster
monster_barney:
Barney
- targetname:
Name
- angles: Pitch
Yaw Roll (Y Z X)
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- UseSentence: Use Sentence
- The sentence
(see sound/sentences.txt) to speak when the
player tells us to follow.
- UnUseSentence: Un-Use
Sentence
- The sentence to
speak when the player tells us to stop following.
- RefusalSentence: Refusal
Sentence
- The sentence to
speak when refusing to follow the player.
- master: Master (prevents
following)
- While locked by
the master, this monster will refuse to follow
the player.
- SpeakAs: Speech Group
- Mostly provided
for mod-makers. In the standard sentences.txt,
valid settings for this are BA (speak as a
Barney) and SC (speak as a Scientist). To define
a speech group "XX", you need to define
sentences XX_ANSWER, XX_QUESTION, XX_IDLE,
XX_STARE, XX_OK, XX_WAIT, XX_STOP, XX_NOSHOOT,
XX_HELLO, XX_SMELL, XX_WOUND and XX_MORTAL. (as
well as some others, if the monsters are going to
be Pre-Disaster.)
- frags: Weapon
- Glock (normal)
- Python 357
- sequence: Animation Sequence
(editor)
- Idle1
- Idle2
- Idle3
- Idle4
- walk
- run
- shootgun
- shootgun2
- draw
- disarm
- reload
- turnleft
- turnright
- laflinch
- raflinch
- llflinch
- rlflinch
- smlflinch
- cower stand
- locked door
- fall loop
- barn wave
- beat grunt
- beat grunt idle
- flashlight
- diesimple
- dieviolent
- diegutshot
- die forward
- die back
- die crump
- barnaclehit
- barnaclepull
- barnaclecrunch
- barnaclechew
- lie back
- lie side
- lie stomach
- stuffed in vent
- standing idle
- cpr barney
- cpr revive
- barney drag vent
- dying
- dying idle
- dying friend
- dying friend idle
- c1a3idle
- c1a3ventb
- c1a3 emergeidle
- c1a3emerge
- haul barney
- push buttons
- fence die
- sit1
- almostidle
- almost
- laseridle
- laser top
- laser bottom
- fallidle
- fall
- c3a2 draw
- corner2
- unlatch
- retina
- relax stand
- assasinated
- plunger
- pepsiswing
- pepsi push
- push button
- spawnflags:
- Monster Flags
- Pre-Disaster
- Unless
given a Master, a pre-disaster monster
will refuse to follow the player.
- Don't Drop Gun
- Ensure
the player can't take this monster's ammo
or weapons.
monster_barney_dead:
Dead Barney
monster_bigmomma:
Big Mamma
monster_bloater:
Bloater
Not fully implemented: rudimentary AI. Will run away if attacked,
otherwise will stand still.
monster_bullchicken:
BullSquid
monster_cockroach:
Cockroach
monster_flyer:
Single Flyer
monster_flyer_flock:
Flock of Flyers
monster_furniture:
Monster Furniture
monster_gargantua:
Gargantua
monster_generic:
Generic Script Monster
- targetname:
Name
- angles: Pitch
Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- model: model
- size: Size (X Y Z)
- Headcrab:
24 24 24
Houndeye: 32 32 36
Human: 32 32 72
Most Aliens: 64 64 64
- body: Body
- Player:
0 = gordon's head, 1 = hooded.
Gina, Gordon, Helmet and Scientist
player models: 0 = original design, 1
= updated (better looking) version.
Barneys: 0 = holstered gun,
1 = holding gun, 2 = missing gun.
Scientists: 0-3 = no
syringe, 4-7 = syringe in hand. 4 different heads
in each set. (0 = Glasses, 1 = Einstein, 2 =
Luther, 3 = Slick)
Human Grunts: 0-3 = Mp5, 4-7
= Shotgun, 8-11 = No gun. 4 different heads in
each set. (0 = Gasmask, 1 = Beret, 2 = Skimask, 3
= Cigar)
- health: Initial Health
- m_bloodColor: Blood Color
- Experiment with
other values (1-255) for different blood colors.
- Don't Bleed
- Red (Human)
- Yellow (Alien)
- m_iszGibModel: Gib Model
- If you don't
specify a gib model, one will be chosen based on
the Blood Colour you set.
- spawnflags:
- Monster Flags
- Not solid
- Head Controller
- Tick
here if you're using a model from the
models/player/ directories.
This option sets it up so that the
model's bounding box is centered on its
origin (the X in the middle of the
entity, in WorldCraft), instead of being
the middle of its bottom face.
- Player model
- Invulnerable
monster_generic_dead:
Generic Dead Body
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- skill:
Skill
setting
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- netname: Sequence name
- The corpse's
pose will be the last frame of this sequence.
This overrides the 'death type' value.
- frags: Death Type
- If you don't
specify a 'Sequence name', the monster will
select a random death animation of the type you
specify here. Not all models have all these death
types.
- Just dead
- Fell backwards
- Fell forwards
- Died violently
- Head shot
- Chest shot
- Gut shot
- Shot in the back
- body: Body
- Player:
0 = gordon's head, 1 = hooded.
Gina, Gordon, Helmet and Scientist
player models: 0 = original design, 1
= updated (better looking) version.
Barneys: 0 = holstered gun,
1 = holding gun, 2 = missing gun.
Scientists: 0-3 = no
syringe, 4-7 = syringe in hand. 4 different heads
in each set. (0 = Glasses, 1 = Einstein, 2 =
Luther, 3 = Slick)
Human Grunts: 0-3 = Mp5, 4-7
= Shotgun, 8-11 = No gun. 4 different heads in
each set. (0 = Gasmask, 1 = Beret, 2 = Skimask, 3
= Cigar)
- m_bloodColor: Blood Color
- Experiment with
other values (1-255) for different blood colors.
- Don't Bleed
- Red (Human)
- Yellow (Alien)
- m_iszGibModel: Gib Model
- If you don't
specify a gib model, one will be chosen based on
the Blood Colour you set.
- spawnflags:
- Not in Deathmatch
- Player model
monster_gman:
G-Man
monster_grunt_repel:
Human Grunt (Repel)
monster_handgrenade:
Live Handgrenade
monster_headcrab:
Head Crab
monster_hevsuit_dead:
Dead HEV Suit
monster_hgrunt_dead:
Dead Human Grunt
- targetname:
Name
- skill:
Skill
setting
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- pose: Pose
- On stomach
- On side
- Seated
- weapons: Weapon
- body: Head
- The "no
gun" settings are only included here for
backwards compatibility.
- Gasmask
- Gasmask (black skin)
- Beret
- Skimask
- Skimask (black skin)
- Cigar (black skin)
- (Gasmask, no gun)
- (Beret, no gun)
- spawnflags:
monster_houndeye:
Houndeye
- targetname:
Name
- angles: Pitch
Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- netname: Squad Name
- spawnflags:
- Monster Flags
- SquadLeader
- Only
needed if you use the Squad Name value.
If you define a Squad using the Squad
Name value, but none of them are flagged
as a Squad Leader, then the squad won't
get linked together properly.
monster_human_assassin: Human Assassin
monster_human_grunt:
Human Grunt (camo)
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- netname: Squad Name
- weapons: Weapons
- 9mmAR
- 9mmAR + HG
- 9mmAR + GL
- Shotgun
- Shotgun + HG
- sequence: Animation Sequence
(editor)
- walk1
- run
- victorydance
- cower
- smflinch
- leftlegsmflinch
- rightlegsmflinch
- rightarmflinch
- leftarmflinch
- launchgrenade
- throwgrenade
- idle1
- idle2
- combatidle
- frontkick
- crouching_idle
- crouching_wait
- crouching_mp5
- standing_mp5
- reload_mp5
- crouching_shotgun
- standing_shotgun
- reload_shotgun
- advance_signal
- flank_signal
- retreat_signal
- drop_grenade
- limpingwalk
- limpingrun
- 180L
- 180R
- strafeleft
- straferight
- dieback1
- dieforward
- diesimple
- diebackwards
- dieheadshot
- diegutshot
- barnacled1
- barnacled2
- barnacled3
- barnacled4
- dead_on_stomach
- deadstomach
- deadside
- deadsitting
- repel_jump
- repel_repel
- repel_shoot
- repel_land
- repel_die
- dragholeidle
- draghole
- bustwall
- hoprail
- converse1
- converse2
- startleleft
- startleright
- divecover
- defuse
- corner1
- corner2
- stonetoss
- cliffdie
- diveaside_idle
- diveaside
- kneeldive_idle
- kneeldive
- WM_button
- WM_moatjump
- bustwindow
- dragleft
- dragright
- trackwave
- trackdive
- flyback
- impaled
- jumptracks
- pipetoss
- plunger
- spawnflags:
- Monster Flags
- SquadLeader
- Only
needed if you use the Squad Name value.
If you define a Squad using the Squad
Name value, but none of them are flagged
as a Squad Leader, then the squad won't
get linked together properly.
- Don't Drop Gun
- Ensure
the player can't take this monster's ammo
or weapons.
monster_ichthyosaur:
Ichthyosaur
monster_leech:
Leech
monster_miniturret:
Mini Auto Turret
monster_nihilanth:
Nihilanth
monster_osprey:
Osprey
The helicopter which flies around and drops grunts. Basically,
whenever a grunt dies, a replacement will be dropped so that the
level contains the same number as before.
With Spirit, it's no longer necessary to place grunts in your
level: in that situation the Osprey pretends, arbitrarily, that 4
have already died.
NB: An osprey must have a patrol path; if you don't give one, it
will fail to work. Spirit also fixes the Half-Life bug which
meant a path_corner had to give a Speed value... though the Speed
values will still function if you choose to use them.
FYI: an Osprey will only drop grunts at path_corners whose Speed
is set to 0. After dropping grunts, it will head for the nearest
path_corner whose Speed is greater than 400, if one exists.
Spirit also fixes the Half-Life bug which crashed the game if no
such corner was available.
monster_rat:
Rat
Like monster_bloater : no AI, no death animation.
- targetname: Name
- angles: Pitch Yaw Roll (Y Z
X)
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- spawnflags:
monster_satchelcharge:
Live Satchel Charge
monster_scientist:
Scared Scientist
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- UseSentence: Use Sentence
- The sentence
(see sound/sentences.txt) to speak when the
player tells us to follow.
- UnUseSentence: Un-Use
Sentence
- The sentence to
speak when the player tells us to stop following.
- RefusalSentence: Refusal
Sentence
- The sentence to
speak when refusing to follow the player.
- master: Master (prevents
following)
- While locked by
the master, this monster will refuse to follow
the player.
- SpeakAs: Speech Group
- Mostly provided
for mod-makers. In the standard sentences.txt,
valid settings for this are BA (speak as a
Barney) and SC (speak as a Scientist). To define
a speech group "XX", you need to define
sentences XX_ANSWER, XX_QUESTION, XX_IDLE,
XX_STARE, XX_OK, XX_WAIT, XX_STOP, XX_NOSHOOT,
XX_HELLO, XX_SMELL, XX_WOUND and XX_MORTAL. (as
well as some others, if the monsters are going to
be Pre-Disaster.)
- body: Body
- Random
- Glasses
- Einstein
- Luther (black skin)
- Slick
- sequence: Animation Sequence
(editor)
- walk
- walk_scared
- run
- run1
- run2
- 180_Left
- 180_Right
- flinch
- flinch1
- laflinch
- raflinch
- llflinch
- rlflinch
- idle1
- idle3
- idle4
- idle5
- idle6
- idle7
- crouchstand
- crouch_idle
- crouch_idle2
- crouch_idle3
- crouch_idle3
- panic
- fear1
- fear2
- eye_wipe
- pull_needle
- return_needle
- give_shot
- diesimple
- dieforward
- dieforward1
- diebackward
- headshot
- gutshot
- lying_on_back
- lying_on_stomach
- dead_sitting
- dead_table1
- dead_table2
- dead_table3
- barnacled1
- barnacled2
- barnacled3
- barnacled4
- console
- checktie
- dryhands
- tieshoe
- whiteboard
- studycart
- lean
- pondering
- pondering2
- pondering3
- buysoda
- pause
- yes
- no
- push_button
- converse1
- converse2
- retina
- talkleft
- talkright
- deskidle
- coffee
- franticbutton
- startle
- sitlookleft
- sitlookright
- sitscared
- sitting2
- sitting3
- cprscientist
- cprscientistrevive
- cowering_in_corner
- sstruggleidle
- sstruggle
- headcrabbed
- c1a0_catwalkidle
- c1a0_catwalk
- ceiling_dangle
- ventpull1
- ventpull2
- ventpullidle1
- ventpullidle2
- sitidle
- sitstand
- keypad
- panic1
- lookwindow
- wave
- pulldoor
- beatdoor
- fallingloop
- crawlwindow
- divewindow
- locked_door
- push_button2
- unlock_door
- quicklook
- handrailidle
- handrail
- hanging_idle
- fall
- scientist_get_pulled
- hanging_idle2
- fall_elevator
- scientist_idlewall
- ickyjump_sci
- haulscientist
- c1a4_wounded_idle
- c1a4_dying_speech
- tentacle_grab
- helicack
- windive
- scicrashidle
- scicrash
- onguard
- seeya
- rocketcrawl
- portal
- gluonshow
- crouch
- kneel
- spawnflags:
- Monster Flags
- Pre-Disaster
- Unless
given a Master, a pre-disaster monster
will refuse to follow the player.
monster_scientist_dead: Dead Scientist
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- skill:
Skill
setting
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- body: Body
- Random
- Glasses
- Einstein
- Luther (black skin)
- Slick
- pose: Pose
- On back
- On Stomach
- Sitting
- Hanging
- Table1
- Table2
- Table3
- sequence: Animation Sequence
(editor)
- lying_on_back
- lying_on_stomach
- dead_sitting
- dead_table1
- dead_table2
- dead_table3
- spawnflags:
monster_sentry:
Sentry Turret Gun
monster_sitting_scientist: Sitting Scientist
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- renderfx:
Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- body: Body
- Random
- Glasses
- Einstein
- Luther (black skin)
- Slick
- sequence: Animation Sequence
(editor)
- sitlookleft
- sitlookright
- sitscared
- sitting2
- sitting3
- spawnflags:
- Monster Flags
- Post-Disaster
- Sitting
scientists are pre-disaster by default.
monster_snark:
Armed Snark
monster_target:
Target for monsters to attack
While a monster_target is active, monsters will attack it as
though it were another monster.
An easy way to make monsters shoot out lights, attack func_tanks,
etc.
monster_tentacle:
Tentacle Arm
monster_tripmine:
Active Tripmine
monster_turret:
Auto Turret
monster_zombie:
Scientist Zombie
- targetname:
Name
- angles: Pitch
Yaw Roll (Y Z X)
- renderfx: Render
FX
- rendermode: Render
Mode
- renderamt: FX Amount (1 -
255)
- rendercolor: FX Color (R G
B)
- skill: Skill
setting
- health: Initial health (0 =
normal)
- model: Model (e.g.
models/can.mdl)
- Be careful when
changing this - a monster's actions are tied
closely to its model.
- skin: Skin
- scale: Scale (1.0 = normal
size)
- target: Patrol Path
- m_iClass: Behave
as
- m_iPlayerReact: Reaction
to player
- TriggerTarget: TriggerTarget
- TriggerCondition: Trigger
Condition
- sequence: Animation Sequence
(editor)
- idle1
- turn left
- turn right
- flinch small
- flinch
- big flinch
- getup
- falling
- attack1
- attack2
- walk
- laflinch
- raflinch
- llflinch
- rlflinch
- dieheadshot
- dieheadshot2
- diesimple
- dieback
- dieforward
- pause
- bust through wall
- kick punnch wall
- bust window
- soda
- slide idle
- slide wall
- ventclimbidle
- vent climb
- deadidle
- dead wall
- freaksitdie
- freaksit
- eatbodytable
- eatbody
- eatbodystand
- ripdoor
- pull Scientist
- eating
- eat to stand
- vent z idle
- vent c1a3
- haul zombie
- c2a3 snack getup
- spawnflags:
monstermaker:
Monster Maker
- targetname: Name
- movewith: Moves
with
- noise: Position
to place monster at [LP]
- noise1: Offset
from position of monster [LV]
- noise2: Angles
of monster [LV]
- noise3: Velocity
of monster [LV]
- TriggerTarget:
TriggerTarget
- TriggerCondition:
Trigger Condition
- target: Target
On Release
- monstertype:
Monster Type
- netname: Name
of Spawned Monsters
- monstercount:
Number of Monsters
- delay: Time
between spawns
- spawndelay: Delay
before release
- Mainly for use with env_warpball . This makes a delay
between the monstermaker triggering its
"target on release" entity and the
monster appearing. For best results, set the
"target on release" value to the
env_warpball, and set the "delay before
release" to about 0.5.
- m_imaxlivechildren: Max live
children
- The maximum
number of live children allowed at one time; if
this is set, new children will not be made until
one dies. (-1 = no limit)
- m_iClass: Monsters behave as
- If you just
want a monster to be ignored, use the
"Prisoner" flag instead.
- Normal
- Scientist
- Likes
players and barneys; hates Human Military
and most aliens; scared of Alien Military
and Bullsquids.
- Barney
- Likes
players and scientists; dislikes
Machines, Human Military, and all aliens.
- Human Military
- Dislikes
scientists and most aliens. Hates
players, barneys and Alien Military.
- Machine (Human Military)
- Machines
go clang when hit, and never gib.
Bioweapons (Snarks and Hornets) ignore
them. Otherwise, they're pretty much like
Human Military.
- Alien Military
- Hates
players and Human Military. Dislikes
Machines, scientists and barneys.
- Other Alien
- Dislikes
Machines and all humans.
- Headcrab
- Dislikes
all humans. Scared of Bullsquids.
- Bullsquid
- Hates
Headcrabs. Dislikes humans and other
Bullsquids.
- Faction A
- Dislikes
everyone, except other Faction A members.
- Faction B
- Dislikes
everyone, except other Faction B members.
- Faction C
- Dislikes
everyone, except other Faction C members.
- m_iPlayerReact: Monsters
reaction to player
- Replaces the
old "Player Ally" flag.
- Normal
- Ignore
- Friendly until hurt
- Scientists
usually use this behaviour.
- Friendly unless provoked
- Barneys
usually use this behaviour.
- Enemy
- spawnflags:
- Start ON
- If you
don't give the monstermaker a Name, this
is the default.
- Cyclic
- In
Cyclic mode, the maker will spawn a
monster each time it's triggered.
(Otherwise, triggering the maker will
turn it on, and it will then make
monsters as often as its 'delay'
permits.)
- MonsterClip
- Leave corpses
- By
default, unless "number of
monsters" is 1, the corpses of the
monsters will fade out. Tick here to
override this. In order to prevent
infinite numbers of corpses from
appearing, this flag is ignored if Number
of Monsters is set to unlimited,
- Force Spawn
- Tick to
force monsters to spawn regardless of
other monsters being present.
- Don't Drop Gun
- If this
is ticked, the created monsters won't
drop their weapons when they die.
motion_manager:
Control the movement and
direction of an entity
For controlling the movement of other entities. There are two
main ways to use this entity:
a) Don't give it a targetname, just tell it what entity to
affect. In this case, the motion of the affected entity will be
managed however you want. This is mostly useful to make things
MoveWith a func_pushable or a monster. (Just name the
func_pushable in the manager's "Position" field.)
b) Give it a targetname, but leave the "target to
affect" set to *locus. Then, type the motion_manager's name
into the "trigger on spawn" field of, for example, an
env_shooter. In this case, every shot the shooter makes will be
managed throughout its lifetime.
If you just want to change an entity's position or velocity
instantly, once, then see trigger_motion .
- targetname: Name
- target: Target to affect
[LE]
- m_iszPosition: Position
(blank = no change)
- m_iPosMode: Meaning of
Position
multisource:
Multisource
multi_alias:
Multi-target alias
A multi_alias is an info_alias with more than one target. It's
mainly useful to group entities together, while still allowing
them to have individual names.
For example, suppose you have a set of lights in your level. Each
one has its own lightswitch, which allows it to be switched on
and off on its own. But later in the level, you want the power
(i.e. all the lights) to go off. One way to do that would be to
make a multi_alias which targets all the lights, and simply
trigger what that alias refers to.
- targetname: Name
- m_iMode: Mode
- Normal
- Choose one (weighted)
- Each
time the alias is used, one of the
targets will be chosen at random. Targets
with higher values are proportionally
more likely to be chosen.
- % chance for each
- Each
time the alias is used, zero or more of
the targets will be valid. The 'value'
for each target gives the percentage
chance that it will be valid each time.
multi_manager:
MultiTarget Manager
Triggers a sequence of up to 16 entities, at various time
offsets.
To specify the list of entities for it to trigger, turn off
Worldcraft's "smart edit" mode and add fields manually.
The name of the field is the targetname of the entity to trigger,
and the contents of the field are the time (in seconds) to wait
before triggering it.
If a master is given, then while the master is locked, the
manager will ignore all signals. This won't prevent it from
continuing a sequence that started while the master was unlocked,
but it will prevent new sequences from starting.
multi_watcher:
State Watcher
A multi_watcher is like a normal watcher , except that it watches up to 16
entities at once.
The entity is probably most useful when used as a master for
another entity- a versatile replacement for the multisource , in a way. Note that if you need to
handle a complex logical operation, you can make a multi_watcher
which watches other multi_watchers.
The list of watched entities is specified in the same way as the
targets of a multi_manager , except that the 'value' should be
set to 0. (Future versions of Spirit may make use of the value,
but for now it's ignored.)
This is a very powerful entity, but is probably only useful for
experienced mappers.
- targetname: Name
- m_fLogic: Logical test
- All (AND)
- Not all (NAND)
- At least one (OR)
- None (NOR)
- Exactly one (XOR)
- Any number but one (XNOR)
- target: Entity to notify
- This entity
will be sent USE_ON or USE_OFF, as appropriate,
whenever the watcher's state changes.
- spawnflags:
- The bottom 5
flags are used to specify what states are being
watched for. Default is to just watch for 'On'.
- Send 'Toggle'
- If this
is enabled, the watcher will always
notify its target with USE_TOGGLE,
instead of sending ON or OFF.
- NOT 'On'
- 'Off'
- 'Turn On'
- 'Turn Off'
- 'In Use'
path_corner:
Path Corner
path_track:
Train Track Path
player_freeze:
Stop player from moving
player_loadsaved:
Load Auto-Saved game
player_weaponstrip:
Strip player's weapons
scripted_action:
Scripted Action
Note that a monster_generic won't usually do these actions
correctly.
If you're using this to make a monster_barney shoot, it'll look odd (as if he's
shooting bullets from his knuckles) unless you first use a
scripted_sequence (playing the "draw" animation) or
env_customize (setting body = 1) to put his pistol into his hand;
as seen in the SpiritDemo level.
- targetname: Name
- angles: Pitch Yaw Roll (Y Z
X)
- movewith: Moves with
- target: Target (fire when
done)
- delay: Delay before firing
target
- killtarget: KillTarget when
done
- m_iszFireOnBegin: Fire after
moving
- When the
animation starts, this target will be triggered.
(The standard 'target' value is triggered only
when the sequence ends.)
This is useful to let you have special effects
etc triggered during the animation.
- m_iszEntity: Target Monster
[LE]
- Specify either
a classname (e.g. monster_barney) or a targetname
to look for.
- m_flRadius: Search Radius
- If "Target
Monster" is a classname, the game picks a
random monster of that type from within this
search radius.
- m_iPriority: Priority
- m_iFinishSchedule: AI
Schedule when done
- m_iRepeats: Repeat action X
more times
- m_fRepeatFrame: Repeat from
frame
- m_iszMoveTarget: Move target
(blank = this) [LE]
- m_fMoveTo: Move to Position
- No (don't turn)
- Don't
move at all. (Turn Type will be ignored.)
- Walk
- Walk to
the move target, then turn.
- Run
- Run to
the move target, then turn.
- No - Only turn
- Don't
move - just turn to face to whatever the
turn mode.
- Instant move + turn
- Teleport
to the move target. Also, the monster's
angle will instantly change to whatever
is specified in the turn target's
"turn type".
Spirit fixes a bug which used to freeze a
monster when playing scripts with this
setting.
- No - Instant turn
- Don't
move - just change angle to whatever the
turn type specifies, instantly.
- m_iszAttack: Entity to
attack (blank = this) [LE]
- If you specify
a classname (e.g. monster_barney) here, the
script will choose a random entity of that type.
- m_fTurnType: Turn mode
- Match Angle
- Turn to
the same angle as the attack entity is
facing.
- Turn to face
- Turn to
look (and aim) at the entity to attack.
- Don't Turn
- m_fAction: Action to perform
- Ranged Attack
- Headcrabs:
leap. Houndeye: sonic attack. Barney:
fire pistol... and so on. Most monsters
have a ranged attack of some kind.
- Ranged Attack 2
- Grunts
and assassins: throw or launch a grenade
at the "attack" entity. Alien
Controller: big homing fireball.
- Melee Attack
- Scientist:
Heal. Everyone else: Kick, punch, bite,
slash with claws, etc.
- Melee Attack 2
- Assassins:
kick. Bullsquids:bite. Headcrab: rear up
on hind legs. Big Momma: lay a baby
headcrab. Gargantua: Flame Thrower.
- Special Attack
- Grunts:
place a grenade on the ground.
- Special Attack 2
- Don't
know of any monsters which use this, but
feel free to try...
- Reload
- Grunts
and barneys: Reload. The same thing can
be done with a scripted_sequence , but it's
available here for convenience.
- Jump
- Assassins:
jump to the "attack" entity.
Houndeyes, Bullsquids and Big Momma: just
jump.
- No action
- spawnflags:
- Script Flags
- Override AI
- If this
isn't ticked, the script will be ignored
while the monster is in combat.
scripted_sentence:
Scripted Sentence
If no targetname is given, a scripted_sentence will play
sentences as often as its "refire" rate permits.
scripted_sequence:
Scripted Sequence
If a scripted_sequence has no targetname, it will start playing
as soon as the level begins.
If two or more scripted_sequences have the same targetname, they
will be synchronised so that no matter how long it takes the
monsters to walk to the sequence entities, their action
animations will start at the same time. Also, if one of the
monsters cancels its sequence (e.g. if it gets hurt), the other
one will too.
- targetname:
Name
- angles:
Pitch Yaw Roll (Y Z X)
- movewith:
Moves with
- target:
Target (fire when done)
- delay: Delay
before firing target
- killtarget:
KillTarget when done
- m_iszFireOnBegin:
Fire after moving
- m_iszEntity:
Target Monster [LE]
- m_flRadius:
Search Radius
- m_iPriority:
Priority
- m_iFinishSchedule: AI
Schedule when done
- m_iRepeats: Repeat action X
more times
- m_fRepeatFrame: Repeat from
frame
- m_iszMoveTarget: Move target
(blank = this) [LE]
- m_fMoveTo: Move
to Position
- m_iszAttack: Turn target
(blank = this) [LE]
- If you specify
a classname (e.g. monster_barney) here, the
script will choose a random entity of that type.
- m_fTurnType: Turn
mode
- m_iszPlay: Action Animation
- Animation to
play after moving. Note that a monster_generic won't add any sounds
or special effects to its animations. If you need
those to appear, you'll have to use the specific
monster_<whatever> entities, instead.
- m_iszIdle: Idle Animation
- If you specify
an idle animation, then when the level begins the
monster will be frozen and made to play that
animation (this is the main use for the idle
animation in Valve's levels). After that the
monster will play the action animation when you
trigger the sequence, and will then revert to its
normal AI.
If there are any other scripted_sequences with
the same name as this one, then the monster will
also play the "idle" animation while
it's waiting for the other sequences to be ready
to start.
And finally, if the action animation is the same
as the idle animation, then any time the monster
would be playing the idle animation, instead it
will be frozen.
Obvious, eh? ;)
- spawnflags:
- ScriptSequence Flags
- Override AI
- Unless
you tick this, the monster won't play the
script when it's in combat.
scripted_tanksequence:
Scripted Tank Sequence
scripted_trainsequence: Scripted Train Sequence
This entity is by no means complete, but is still somewhat
usable.
speaker: Announcement Speaker
target_cdaudio:
CD Audio Target
trigger_auto:
AutoTrigger
Be careful when using this entity; it will trigger not only when
the level starts, but also when a saved game is loaded.
trigger_autosave:
AutoSave Trigger
trigger_bounce:
Bouncey area
An entity that things bounce off. Set its Angle to specify the
angle to reflect them in; objects already moving in this
direction will be unaffected. (E.g. to make a trampoline, you
would specify "up". Objects which are already moving
upwards will be unaffected.)
Try Factor = 2 and Minimum Speed = 150 to make a corridor which
players can't run through, only walk slowly. (Something like the
force-fields in Dune.)
trigger_camera:
Trigger Camera
trigger_cdaudio:
Trigger CD Audio
trigger_changealias:
Trigger Change Alias
trigger_changecvar:
Change Console Variable
trigger_changelevel:
Trigger: Change level
trigger_changetarget:
Trigger Change Target
trigger_changevalue:
Change any entity's values
A really bad idea, IMHO, but created by popular demand.
Use at your own risk, and/or the risk of everyone else in the
room.
trigger_command:
Console Command
trigger_counter:
Trigger counter
While locked by its master, the trigger_counter _will_ keep
counting when fired, but it won't fire anything itself.
trigger_endsection:
EndSection Trigger
trigger_gravity:
Trigger Gravity
trigger_hevcharge:
Trigger charge hev
trigger_hurt:
Trigger player hurt
trigger_inout:
Trigger: Activate on entering or
leaving
trigger_monsterjump:
Trigger monster jump
trigger_motion:
Set the position and movement of
an entity
This replaces the trigger_setposition and trigger_setvelocity
entities, which have been removed. Apologies for any
inconvenience.
If you want to control motion for a period of time, see motion_manager .
- targetname: Name
- target: Target to affect
[LE]
- m_iszPosition: Position
(blank = no change)
- m_iPosMode: Meaning of
Position
- m_iszAngles: Angles (blank =
no change)
- m_iAngMode: Meaning of
Angles
- m_iszVelocity: Velocity
(blank = no change)
- m_iVelMode: Meaning of
Velocity
trigger_once:
Trigger: Activate once
trigger_multiple:
Trigger: Activate multiple
trigger_onsight:
Trigger when A sees B
In fact, this should probably be called watcher_onsight.
trigger_push:
Trigger player push
trigger_lightstyle:
Trigger Change Lightstyle
Only affects dynamic (i.e. named) lights.
trigger_relay:
Trigger Relay
trigger_rottest:
Trigger RotTest
don't use. This is just a test entity.
trigger_sound:
Brush-based DSP Sound
trigger_startpatrol:
Trigger Start Patrol
Suggest to the specified monster that it should follow the given
path. This is a low priority activity, superceded when it spots a
player (for instance).
(The same thing happens if you give the monster a
"target".)
trigger_teleport:
Trigger teleport
trigger_transition:
Trigger: Select Transition Area
watcher: State Watcher
A watcher watches an entity, waiting for it to be in a given
state. The default behaviour is for the watcher to be 'On' if the
watched entity is 'On', and to be 'Off' at all other times.
The main use for a watcher is to fire another entity (the
"entity to notify"), each time the watcher's state
changes.
watcher_alias:
Watcher
watcher_ratio:
Watcher, compare ratios
weapon_crowbar:
Crowbar
weapon_egon:
Egon Gun
weapon_gauss:
Gauss Gun
weapon_glock:
9mm Handgun
weapon_handgrenade:
Handgrenade Ammo
weapon_hornetgun:
Hornet Gun
weapon_mp5:
9mm Assault Rifle
weapon_rpg:
RPG
weapon_satchel:
Satchel Charge Ammo
weapon_shotgun:
Shotgun
weapon_snark:
Squeak Grenade
weapon_tripmine:
Tripmine Ammo
world_items:
World Items
xen_hair:
Xen Hair
xen_plantlight:
Xen Plant Light
xen_spore_large:
Xen Spore (large)
xen_spore_medium:
Xen Spore (medium)
xen_spore_small:
Xen Spore (small)
xen_tree:
Xen Tree
Appendix:
HLRAD Opacity (ZHLT 2.5.1+):
Falloff (ZHLT 2.5.1+):
Texlight
style:
Texlight
style:
Skill
setting:
Render
FX:
Render
Mode:
Locked
Sound:
Unlocked
Sound:
Locked
Sentence:
Unlocked
Sentence:
Behave
as:
Reaction
to player:
Trigger
Condition:
Monster
Flags:
gibshooterbase
Flags:
Appearance
(static):
Appearance
(on):
Appearance
(off):
Appearance
(turn on):
Appearance
(turn off):
Material
type:
Gibs
Direction:
Spawn
On Break:
Respawn
time (secs):
Breakable
Flags:
Fire
before moving:
On/Off
Aware:
Move Sound:
Stop Sound:
Door Flags:
Bullet
accuracy:
Behaviour:
BaseTank
Flags:
- Active
- Not Solid
- Line of Sight
- Controllable
- Laser Spot
- Makes the gun
project a laser spot, similar to the player's
rocket launcher. This is helpful for players who
are trying to aim with it.
- Match Target
- For
player-controlled guns. Makes the gun point at
whatever is at the centre of the player's view,
instead of simply facing the same way as the
player.
Move
Sound:
Stop
Sound:
Trackchange
Flags:
TriggerCond
Flags:
Priority:
AI
Schedule when done:
Script Flags:
Move to Position:
Turn
mode:
ScriptSequence
Flags:
- Script
Flags
- Leave Corpse
- If the
animation includes the monster dying, don't fade
the corpse afterwards.
- No Script Movement
- Even if the
animation makes the monster look like it's
walking around, DON'T shift the monster to its
apparent new location when the animation ends.
- Monster Dies
- Some death
sequences kill the monster automatically (e.g.
"herodie" in loader.mdl) but for most
you'll have to tick this box. This is affected by
Leave Corpse in the obvious way.