Trigger hurt: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
 Note:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games.
Note:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games.
 Warning: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
Warning: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 
Damaging areas are marked with a dark blue rectangle and bots will try to avoid them. In
 Left 4 Dead series Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.
 Left 4 Dead series Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.
 Tip:For killing ghosts in
Tip:For killing ghosts in 
 see trigger_hurt_ghost
 see trigger_hurt_ghost
 Note:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
Note:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
 Tip:
Tip: 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.
 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.
		
	
| m (description) | SirYodaJedi (talk | contribs)  | ||
| (67 intermediate revisions by 34 users not shown) | |||
| Line 1: | Line 1: | ||
| {{ | {{LanguageBar}} | ||
| == | {{tabsBar|main=gs2|base=trigger_hurt}} | ||
| {{CD|CTriggerHurt|file1=triggers.cpp}} | |||
| {{This is a|brush entity|name=trigger_hurt}} It is a [[triggers|trigger]] volume that damages [[entity|entities]] that touch it. | |||
| See [[damage types]] for a list on how different damage types will affect the {{ent|player}}. | |||
| :  | {{note|Some damage types like '''Generic''' only deal 50% damage, others like '''Fall''' deal 100% damage. This might differ in various games.}} | ||
| {{warning|In its enabled state the entity marks all [[Navigation Meshes|navigation mesh areas]] in its [[AABB]] or atmost 72 units below or atmost 16 units to the sides as damaging even if the <code>damage</code> is negative.<br> | |||
| :  | Damaging areas are marked with a dark blue rectangle and [[bot]]s will try to avoid them. In {{L4ds|4}} Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.}} | ||
| {{tip|For killing ghosts in {{l4ds}} see {{ent|trigger_hurt_ghost}}}} | |||
| {{toc-right}} | |||
| == Keyvalues == | |||
| | | {{KV Targetname}} | ||
| |  | {{KV|[[Master]] (Obsolete)|string|intn=master|deprecated=1|Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate.}} | ||
| {{KV|Damage|integer|intn=damage|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|Do not use excessively large values like 99999999‍999999999<!--what is the zwj for?-->. 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|Since it deals damage every half-second, a value of 1 will deal no damage (if no doubling).}} | ||
| {{KV|Damage Cap|integer|intn=damagecap|Maximum damage dealt per second. This field is only used if you select the Doubling w/Forgiveness damage model, via the spawnflag.}} | |||
| {{KV|[[Damage types|Damage Type]]|choices|intn=damagetype|Literal values can be added together to stack effects}} | |||
| {{damage type}} | |||
| {{KV|Damage Model|choices|intn=damagemodel|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 | |||
| :{{bug|In {{css}} the damage does not reset.|tested={{css}}}} | |||
| {{KV|Zero Damage Force|boolean|intn=nodmgforce|Should the damaged entity receive no physics force from this trigger{{clarify}}.}} | |||
| {{KV|Damage Force Override|vector|intn=damageforce|only=l4ds}} | |||
| {{KV|Always think every frame|choices|intn=thinkalways|Normally triggers think every half second, in some cases you may need to request it to damage every frame.  This is expensive!|only=l4ds}} | |||
| {{KV|Filter Name|intn=filtername|filter|Name of filter entity to test against activators.}} | |||
| {{KV StartDisabled}} | |||
| == Flags == | |||
| {{Fl Trigger}} | |||
| == Inputs == | |||
| {{I|SetDamage|Set a new amount of damage for this trigger.|param=float}} | |||
| {{I Toggle}} | |||
| {{I EnableDisable}} | |||
| == Outputs == | |||
| {{O|OnHurt|activator=entity that was hurt|Fired whenever this trigger hurts something other than a player.}} | |||
| {{O|OnHurtPlayer|activator=the player that was hurt|Fired whenever this trigger hurts a player.}} | |||
| |  | |||
| {{sensor brush}} | |||
| ==Flags== | |||
| ==Inputs== | |||
| ==Outputs== | |||
Latest revision as of 06:49, 4 June 2025
|  Class hierarchy | 
|---|
| CTriggerHurt | 
|  triggers.cpp | 
trigger_hurt  is a   brush entity  available in all  Source games. It is a trigger volume that damages entities that touch it.
 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:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games.
Note:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games. Warning: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
Warning: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 Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.
 Left 4 Dead series Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it. Tip:For killing ghosts in
Tip:For killing ghosts in 
 see trigger_hurt_ghost
 see trigger_hurt_ghostKeyvalues
- Name (targetname) <string>[ Edit ]
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentnameortarget).
 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> 
- 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:Do not use excessively large values like 99999999999999999. This can cause entities that inherit velocity on death (like ragdolls) to gain such high velocity that it causes VPhysics to explode. Warning:Do not use excessively large values like 99999999999999999. 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"? Confirm:How high is "too high"?
 Note:Since it deals damage every half-second, a value of 1 will deal no damage (if no doubling). Note: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  ) )
- 32: FALL
- 64: BLAST
- 128: CLUB
- 256: SHOCK (Spawns particle with missing texture in  ) )
- 512: SONIC
- 1024: ENERGYBEAM
- 16384: DROWN
- 32768: PARALYSE
- 65536: NERVEGAS / (SAWBLADE  ) )
- 131072: POISON
- 262144: RADIATION
- 524288: DROWNRECOVER
- 1048576: ACID / (CRITICAL  ) )
- 2097152: SLOWBURN
- 4194304: REMOVENORAGDOLL
- 16777216: FULLGIB (in   ) )
 Note:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
Note:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
- VEHICLEis named- FREEZE
- ACIDis named- CHEMICAL
- REMOVENORAGDOLLis named- SLOWFREEZE
 Tip:
Tip: 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.
 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
 
- Zero Damage Force (nodmgforce) <boolean>
- Should the damaged entity receive no physics force from this trigger[Clarify].
- Damage Force Override (damageforce)  <vector> (only in   ) )
- Always think every frame (thinkalways)  <choices> (only in   ) )
- 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
| 
 
 
 
 
 
 
 
 | 
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
- !activator = entity that was hurt
 !caller = this entity
 Fired whenever this trigger hurts something other than a player.
- OnHurtPlayer
- !activator = the player that was hurt
 !caller = this entity
 Fired whenever this trigger hurts a player.




























