This article's documentation is for anything that uses the Source engine. Click here for more information.

trigger_hurt

From Valve Developer Community
Jump to navigation Jump to search
English (en)Translate (Translate)
Class hierarchy
CTriggerHurt
CBaseTrigger
CBaseToggle
CBaseEntity
triggers.cpp

trigger_hurt is a brush entity available in all Source Source games. It is a trigger volume that damages entities that touch it.

See damage types for a list on how different damage types will affect the player.

Note.pngNote:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games.
Warning.pngWarning:In its enabled state the entity marks all navigation mesh areas in its AABB or atmost 72 units below or atmost 16 units to the sides as damaging even if the damage is negative.
Damaging areas are marked with a dark blue rectangle and bots will try to avoid them. In Left 4 Dead series Left 4 Dead series Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.
Tip.pngTip:For killing ghosts in Left 4 Dead series see trigger_hurt_ghost

Keyvalues

Name (targetname) <string>
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Master (Obsolete) (master) <string> Obsolete
Deprecated.
Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate.
Damage (damage) <integer>
The amount of damage done to entities that touch this trigger. The damage is done every half-second. See also Damage Model for extra details on how damage can be dealt. Use negative value to heal.
Warning.pngWarning:Do not use excessively large values like 99999999‍999999999. This can cause entities that inherit velocity on death (like ragdolls) to gain such high velocity that it causes VPhysics to explode.
Confirm:How high is "too high"?
Note.pngNote:Since it deals damage every half-second, a value of 1 will deal no damage (if no doubling).
Damage Cap (damagecap) <integer>
Maximum damage dealt per second. This field is only used if you select the Doubling w/Forgiveness damage model, via the spawnflag.
Damage Type (damagetype) <choices>
Literal values can be added together to stack effects
  • 0: GENERIC
  • 1: CRUSH
  • 2: BULLET
  • 4: SLASH
  • 8: BURN
  • 16: VEHICLE / (TRAIN Team Fortress 2)
  • 32: FALL
  • 64: BLAST
  • 128: CLUB
  • 256: SHOCK (Spawns particle with missing texture in Left 4 Dead 2)
  • 512: SONIC
  • 1024: ENERGYBEAM
  • 16384: DROWN
  • 32768: PARALYSE
  • 65536: NERVEGAS / (SAWBLADE Team Fortress 2)
  • 131072: POISON
  • 262144: RADIATION
  • 524288: DROWNRECOVER
  • 1048576: ACID / (CRITICAL Team Fortress 2)
  • 2097152: SLOWBURN
  • 4194304: REMOVENORAGDOLL
  • 16777216: FULLGIB (in Left 4 Dead series)
Note.pngNote:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
  • VEHICLE is named FREEZE
  • ACID is named CHEMICAL
  • REMOVENORAGDOLL is named SLOWFREEZE
Tip.pngTip:Team Fortress 2 Team Fortress 2: Fancy damage effects such as decapitation, disintegration or ice/gold statues on death can be applied via VScript. See TakeDamageCustom function or the trigger example.
Damage Model (damagemodel) <choices>
How damage is dealt. Normal always does the specified amount of damage each half second. Doubling starts with the specified amount and doubles it each time it hurts the toucher. Forgiveness means that if the toucher gets out of the trigger the damage will reset to the specified value. Good for making triggers that are deadly over time without having to cause massive damage on each touch.
  • 0 : Normal
  • 1 : Doubling w/forgiveness
Icon-Bug.pngBug:In Counter-Strike: Source the damage does not reset.  (tested in: Counter-Strike: Source)
Zero Damage Force (nodmgforce) <boolean>
Should the damaged entity receive no physics force from this trigger[Clarify].
Damage Force Override (damageforce) <vector> (only in Left 4 Dead series)
Always think every frame (thinkalways) <choices> (only in Left 4 Dead series)
Normally triggers think every half second, in some cases you may need to request it to damage every frame. This is expensive!
Filter Name (filtername) <filter>
Name of filter entity to test against activators.
Start Disabled (StartDisabled) <boolean>
Stay dormant until activated (with theEnableinput).

Flags

BaseTrigger

Everything (not including physics debris) : [64]

Clients (Survivors, Special Infected, Tanks Left 4 Dead series) : [1]

Only clients in vehicles : [32]
Only clients *not* in vehicles : [512]
Disallow Bots (removed since Left 4 Dead) : [4096]
NPCs (Common Infected, Witches Left 4 Dead series) : [2]
Only player ally NPCs : [16]
Only NPCs in vehicles (respects player ally flag) : [2048]
Physics Objects (not including physics debris) : [8]
Physics debris (include also physics debris) : [1024]
Pushables (Passes entities with classname func_pushable) : [4] Obsolete
Deprecated.
Equivalent to using Everything + filter_activator_class that filters func_pushable.


Inputs

SetDamage <float>
Set a new amount of damage for this trigger.
Toggle:
Toggle
Toggle the enabled/disabled status of this entity.

EnableDisable:

Enable / Disable
Enable/disable this entity from performing its task. It might also disappear from view.

Outputs

OnHurt
Fired whenever this trigger hurts something other than a player.
OnHurtPlayer
Fired whenever this trigger hurts a player.