Left 4 Dead 2/Scripting/Game Events

From Valve Developer Community
Jump to navigation Jump to search
Left 4 Dead 2 Level Creation
Refer back to Game Events (Source) for more events.

player_death

a game event, name may be 32 charaters long; this extents the original player_death by a new fields

  • userid (short) - user ID who died
  • entityid (long) - entity ID who died, userid should be used first, to get the dead Player. Otherwise, it is not a player, so use this.
  • attacker (short) - user ID who killed
  • attackername (string) - What type of zombie, so we don't have zombie names
  • attackerentid (long) - if killer not a player, the entindex of who killed. Again, use attacker first
  • weapon (string) - weapon name killer used
  • headshot (bool) - signals a headshot
  • attackerisbot (bool) - is the attacker a bot
  • victimname (string) - What type of zombie, so we don't have zombie names
  • victimisbot (bool) - is the victim a bot
  • abort (bool) - did the victim abort
  • type (long) - damage type
  • victim_x (float) -
  • victim_y (float) -
  • victim_z (float) -


player_hurt

Registers all playable classes (Hunter, Smoker, Boomer, Tank, Survivors). See infected_hurt for Witch and Common Infected

  • local (1) - Not networked
  • userid (short) - user ID who was hurt
  • attacker (short) - user id who attacked
  • attackerentid (long) - entity id who attacked, if attacker not a player, and userid therefore invalid
  • health (short) - remaining health points
  • armor (byte) - remaining armor points
  • weapon (string) - weapon name attacker used, if not the world
  • dmg_health (short) - damage done to health
  • dmg_armor (byte) - damage done to armor
  • hitgroup (byte) - hitgroup that was damaged
  • type (long) - damage type

player_team

player change his team

  • userid (short) - user ID on server
  • team (byte) - team id
  • oldteam (byte) - old team id
  • disconnect (bool) - team change because player disconnects
  • name (string) -
  • isbot (bool) -

player_bot_replace

Bot replaced a player

  • player (short) - user ID of the player
  • bot (short) - user ID of the bot

bot_player_replace

Player replaced a bot

  • bot (short) - user ID of the bot
  • player (short) - user ID of the player

player_afk

  • player (short) - user ID of the player

weapon_fire

  • local (1) - don't network this, its way too spammy
  • userid (short) -
  • weapon (string) - used weapon name
  • weaponid (short) - used weapon ID
  • count (short) - number of bullets

weapon_fire_on_empty

  • local (1) - don't network this, its way too spammy
  • userid (short) -
  • weapon (string) - weapon name used
  • count (short) - number of bullets

weapon_reload

  • userid (short) -
  • manual (bool) - player manually started the reload

weapon_zoom

  • userid (short) -

ability_use

Called: When an infected uses their ability
Issues: Doesn't fire for jockey

  • userid (short) -
  • ability (string) - Classname of ability. Possible values: 'ability_tongue', 'ability_vomit', 'ability_lunge', 'ability_spit', 'ability_charge', 'ability_throw' for the Smoker, Boomer, Hunter, Spitter, Charger and Tank respectively.
  • context (short) - enum of the way it was used (different for each ability)

ammo_pickup

  • userid (short) - The player who got some ammo from a weapon_ammo_spawner

item_pickup

  • userid (short) -
  • item (string) - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'

golden_crowbar_pickup

  • userid (short) - The player who picked up the crowbar

grenade_bounce

  • userid (short) -

hegrenade_detonate

  • userid (short) -
  • x (float) -
  • y (float) -
  • z (float) -

bullet_impact

  • userid (short) -
  • x (float) -
  • y (float) -
  • z (float) -

player_footstep

  • userid (short) -

player_jump

  • userid (short) -

player_blind

  • userid (short) -

player_falldamage

  • userid (short) - Who got hurt
  • damage (float) - for how much
  • causer (short) - Who caused them to do so (if anyone)

player_ledge_grab

  • userid (short) - Who grabbed the ledge
  • causer (short) - Who caused them to do so (if anyone)

player_ledge_release

  • userid (short) - person who released from the ledge

door_moving

  • entindex (long) -
  • userid (short) -

door_open

  • userid (short) - Who opened the door
  • checkpoint (bool) - Is the door a checkpoint door
  • closed (bool) - Was the door closed when it started opening?

door_close

  • userid (short) - Who closed the door
  • checkpoint (bool) - Is the door a checkpoint door

door_unlocked

  • userid (short) - Who opened the door
  • checkpoint (bool) - Is the door a checkpoint door

rescue_door_open

  • userid (short) - Who opened the door
  • entindex (long) - door that opened

waiting_checkpoint_door_used

Someone tried to open a checkpoint door that is locked till everyone loads in

  • userid (short) - player who tried to open it
  • entindex (long) - door that was used

waiting_door_used_versus

Someone tried to open a checkpoint door that is locked till everyone loads in

  • userid (short) - player who tried to open it
  • entindex (long) - door that was used

waiting_checkpoint_button_used

Someone tried to push a button that's locked until everyone is gathered

  • userid (short) - player who tried to open it

success_checkpoint_button_used

Someone pushed a button that's locked until everyone is gathered

  • userid (short) - player who openned it

round_freeze_end

  • None (None) -

round_start

  • timelimit (long) - round time limit in seconds
  • fraglimit (long) - frag limit in seconds
  • objective (string) - round objective

round_start_pre_entity

  • None (None) -

round_start_post_nav

  • None (None) -

nav_blocked

  • area (long) -
  • blocked (bool) -

nav_generate

  • None (None) -

round_end_message

  • winner (byte) - winner team/user i
  • reason (byte) - reson why team won
  • message (string) - end round message

round_end

  • winner (byte) - winner team/user i
  • reason (byte) - reson why team won
  • message (string) - end round message
  • time (float) -

vote_ended

  • None (None) -

vote_started

  • issue (string) -
  • param1 (string) -
  • votedata (string) -
  • team (byte) -
  • initiator (long) - entity id of the player who initiated the vote
  • reliable (1) - this event is reliable


vote_changed

  • yesVotes (byte) -
  • noVotes (byte) -
  • potentialVotes (byte) -

vote_passed

  • details (string) -
  • param1 (string) -
  • team (byte) -
  • reliable (1) - this event is reliable


vote_failed

  • team (byte) -
  • reliable (1) - this event is reliable


vote_cast_yes

  • team (byte) -
  • entityid (long) - entity id of the voter

vote_cast_no

  • team (byte) -
  • entityid (long) - entity id of the voter

infected_hurt

Registers for non-playable classes (Common Infected, Witch). See player_hurt for other playable classes

  • local (1) - don't network this, its way too spammy
  • attacker (short) - player userid who attacked
  • entityid (long) - entity id of infected
  • hitgroup (byte) - hitgroup that was damaged
  • amount (short) - how much damage was done
  • type (long) - damage type

infected_death

  • attacker (short) - user ID who killed
  • infected_id (short) - ID of the infected that died
  • gender (short) - gender (type) of the infected
  • weapon_id (short) - ID of the weapon used
  • headshot (bool) - signals a headshot
  • minigun (bool) - signals a minigun kill
  • blast (bool) - signals a death from blast damage
  • submerged (bool) - indicates the infected was submerged

hostname_changed

  • hostname (string) -

difficulty_changed

It appears that strDifficulty is z_difficulty value

  • newDifficulty (short) -
  • oldDifficulty (short) -
  • strDifficulty (string) -


finale_start

  • rushes (short) -

finale_rush

  • None (None) -

finale_escape_start

  • None (None) -

finale_vehicle_incoming

  • campaign (string) -

finale_vehicle_ready

  • campaign (string) -

finale_vehicle_leaving

  • survivorcount (short) - number of survivors that made it out

finale_win

  • map_name (string) -
  • difficulty (short) -

mission_lost

As in, the survivor team failed. Opposite of finale_win, but not necessarily during the finale.

  • None (None) -

finale_radio_start

  • health (short) -

finale_radio_damaged

  • health (short) -

final_reportscreen

Right before the final report screen comes up, let awards possibly fire

  • None (None) -

map_transition

When campaign cinematics start

  • None (None) -


player_transitioned

When campaign cinematics end and player is transitioned to first person view

  • userid (short) - the person that just finished transitioning


heal_begin

  • userid (short) - person doing the healing
  • subject (short) - person being healed

heal_success

  • userid (short) - person doing the healing
  • subject (short) - person being healed
  • health_restored (short) - amount of health restored

heal_end

Issues: subject is broken for this event, it always appears to be the player doing the healing

  • userid (short) - person doing the healing
  • subject (short) - person being healed


heal_interrupted

  • userid (short) - person who was being healed, but moved.
  • subject (short) - person being healed

ammo_pack_used

  • userid (short) - person giving the ammo
  • subject (short) - person receiving ammo

give_weapon

  • userid (short) - The giver of the weapon
  • recipient (short) - The recipient of the weapon
  • weapon (short) - The ID of the weapon given

pills_used

  • userid (short) - person who had the pills
  • subject (short) - person swallowing the pills

pills_used_fail

  • userid (short) - person who tried to use the pills

ammo_pack_used_fail_no_weapon

  • userid (short) - person who tried to use the ammo pack
  • subject (short) - person it failed to help

ammo_pack_used_fail_full

  • userid (short) - person who tried to use the ammo pack
  • subject (short) - person it failed to help

ammo_pack_used_fail_doesnt_use_ammo

  • userid (short) - person who tried to use the ammo pack
  • subject (short) - person it failed to help

ammo_pile_weapon_cant_use_ammo

  • userid (short) - person who tried to use an ammo pile with a grenade launcher

defibrillator_begin

  • userid (short) - person who is defibrillating.
  • subject (short) - person being revived

defibrillator_used

  • userid (short) - person who used the defibrillator
  • subject (short) - person it helped

defibrillator_used_fail

  • userid (short) - person who tried to use the defibrillator
  • subject (short) - person it failed to help

defibrillator_interrupted

  • userid (short) - person who was defibrillating, but moved.
  • subject (short) - person being revived

upgrade_pack_begin

  • userid (short) - person who is deploying the pack

upgrade_pack_used

upgrade_item_already_used

  • userid (short) - person who tried to use an ammo upgrade twice
  • upgradeclass (string) - classname of the upgrade we tried to use

upgrade_failed_no_primary

  • userid (short) - person who tried to use an upgrade without having a primary weapon
  • upgrade (string) - name of the upgrade we tried to use, eg "INCENDIARY_AMMO"

dead_survivor_visible

  • userid (short) - The player who sees the entity
  • subject (long) - Entindex of the entity they see
  • deadplayer (short) - user id of the dead player represented

adrenaline_used

  • userid (short) - person who had and used the adrenaline

revive_begin

  • userid (short) - person doing the reviving
  • subject (short) - person being revived

revive_success

  • userid (short) - person doing the reviving
  • subject (short) - person who was revived
  • lastlife (bool) - person revived will die if they fall again
  • ledge_hang (bool) - 1 if person revived was ledge hanging

revive_end

  • userid (short) - person doing the reviving
  • subject (short) - person being revived
  • ledge_hang (bool) - person is ledge hanging

drag_begin

  • userid (short) - person doing the dragging
  • subject (short) - person being dragged

drag_end

  • userid (short) - person doing the dragging
  • subject (short) - person being dragged

player_incapacitated

when a player becomes incapacitated. This is also called when a tank is killed.

  • userid (short) - person who became incapacitated
  • attacker (short) - user ID who made us incapacitated
  • attackerentid (long) - if attacker not player, entindex of who made us incapacitated
  • weapon (string) - weapon name attacker used
  • type (long) - damage type

player_incapacitated_start

when a player is about to become incapacitated, so you can see his last living state

  • userid (short) - person who became incapacitated
  • attacker (short) - user ID who made us incapacitated
  • attackerentid (long) - if attacker not player, entindex of who made us incapacitated
  • weapon (string) - weapon name attacker used
  • type (long) - damage type

player_entered_start_area

when a player spawns into the player start area

  • userid (short) - person who entered

player_first_spawn

when a player spawns for the first time in a given mission

  • userid (short) - person who spawned
  • map_name (string) -
  • isbot (bool) -


player_left_start_area

when a player leaves the player start area

  • userid (short) - person who left

player_left_safe_area

when a player leaves the safe area

  • userid (short) - person who left
  • playercount (byte) -

player_entered_checkpoint

when a basecombatcharacter enters a checkpoint area

  • userid (short) - player who entered
  • entityid (long) - If not a player, the entity index of the one entering
  • door (long) - Entindex of the checkpoint door the player entered to get here.
  • area (long) -
  • doorname (string) - name of the entity they see

player_left_checkpoint

when a player leaves a checkpoint area

  • userid (short) - player who left
  • entityid (long) - If not a player, the entity index of the one exiting
  • area (long) -

player_shoved

Issues: Will not fire when shoving a survivor that is currently in combat.

  • userid (short) - player index who was shoved
  • attacker (short) - player index who attacked them

entity_shoved

  • entityid (short) - the entity index of the one who was shoved
  • attacker (short) - player index who attacked them

player_jump_apex

  • userid (short) - player who jumped

player_blocked

  • userid (short) - player index who was trying to move
  • blocker (short) - player index who kept them from moving

player_now_it

  • userid (short) - Player who is now it
  • attacker (short) - player that did the it-ing
  • exploded (bool) - whether it was vomit or explosion
  • infected (bool) - is the vomit infectious
  • by_boomer (bool) - came from a boomer

player_no_longer_it

  • userid (short) - Player who is now no longer it

witch_harasser_set

  • userid (short) - Player who woke up the witch
  • witchid (long) - Entindex of witch woken up
  • first (bool) - First time the witch set a harasser

witch_spawn

  • witchid (long) - Entindex of witch spawning right now.

witch_killed

  • userid (short) - Player who killed the witch
  • witchid (long) - Entindex of witch that was killed.
  • oneshot (bool) - TRUE if the Witch was killed with one shot
  • melee_only (bool) - TRUE if the witch was only killed by melee attacks (no blast, burn, or bullet damage)
  • bride (bool) - bride variant?

tank_spawn

  • userid (short) - User ID of the tank spawning now
  • tankid (long) - Entindex of tank spawning right now.

melee_kill

  • userid (short) - Player who bashed the infected
  • entityid (long) - Entindex of infected what got killed
  • ambush (bool) - Infected was unaware when killed

area_cleared

  • userid (short) - person who cleared the area
  • area (long) - id of the cleared area

award_earned

  • userid (short) - player who earned the award
  • entityid (long) - client likes ent id
  • subjectentid (long) - entity id of other party in the award, if any
  • award (short) - id of award earned

tongue_grab

  • userid (short) - player who did the grabbing
  • victim (short) - player that got grabbed

tongue_broke_bent

  • userid (short) - Tongue owner

tongue_broke_victim_died

  • userid (short) - Tongue owner

tongue_release

Fired in all cases where the tongue releases a victim, whether choked or not, etc.

Note.pngNote:
  • Fires twice in all release cases, except tongue_broke_bent where it only fires once.
  • Second firation will return distance and victim parameters as 0.
  • userid (short) - The tongue owner
  • victim (short) - The (now released) victim
  • distance (long) - Distance the victim was dragged.


choke_start

  • userid (short) - The choker
  • victim (short) - The person being choked

choke_end

  • userid (short) - The choker
  • victim (short) - The person being choked


choke_stopped

Called when a smoker tongue is cleared on a choked player, fires alongside choke_end (choke_stopped fires first).

Note.pngNote:Does not fire when (choke_end still fires):
  • The smoker is staggered with propane/oxygen tank, pipe bomb, explosive ammo, grenade launcher, boomer explosion, and charger impact.
  • Another special takes over the pinned survivor or kills the smoker.
  • The smoker is killed by gascan, firework box, molotov, and incendiary ammo.
  • The smoker ledge-hanged the survivor.
  • Using Stagger() on either the smoker or the survivor.

Issues: While the event does not fire while staggering the smoker with the methods above, it will fire when it is killed using only the grenade launcher and explosive ammo.

  • userid (short) - Who stopped it
  • victim (short) - And who was being choked
  • smoker (short) - The tongue owner
  • release_type (short) - How did it break?


tongue_pull_stopped

Called when a smoker tongue is cleared on a dragging player. Includes cuts.

Note.pngNote:Does not fire when:
  • The smoker is staggered with propane/oxygen tank, pipe bomb, explosive ammo, grenade launcher, boomer explosion, and charger impact.
  • Another special takes over the pinned survivor or kills the smoker.
  • The smoker is killed by gascan, firework box, molotov, and incendiary ammo.
  • The smoker ledge-hanged the survivor.
  • Using Stagger() on either the smoker or the survivor.

Issues: While the event does not fire while staggering the smoker with the methods above, it will fire when it is killed using only the grenade launcher and explosive ammo.

  • userid (short) - Who stopped it
  • victim (short) - And who was being pulled
  • smoker (short) - The tongue owner
  • release_type (short) - How did it break?
  • damage_type (long) - bullet, slash, chainsaw


lunge_shove

  • userid (short) - player who did the lunging
  • victim (short) - player that got lunged

lunge_pounce

  • userid (short) - player who did the lunging
  • victim (short) - player that got lunged
  • distance (long) - Distance from pounce start to contact
  • damage (short) -

pounce_end

  • userid (short) - Player who did the pouncing
  • victim (short) - And who was being pounced

pounce_stopped

Fires whenever a player clearing a hunter dominating a survivor, fires alongside pounce_end (pounce_stopped is fired first).

Note.pngNote:
  • Will not fire if staggered by pipe bomb, propane/oxygen tank, explosive ammo, grenade_launcher, boomer explosion, charger impact, and Stagger(). (pounce_end will still fire)
  • Fires if the hunter killed by any methods above, except boomer explosion and charger impact.
  • A special that kills the hunter will return userid as the special's userid.
  • Killing the hunter by shoving will fire this event before player_hurt. However, killing it by any other means will fire the event after player_hurt.

Issues: Shoving a hunter right after it pounces a survivor will not release the survivor, but the event will still fire.

  • userid (short) - Who stopped it
  • victim (short) - And who was being pounced

pounce_attempt_stopped

  • userid (short) - Who stopped it
  • weaponid (short) - used weapon ID

fatal_vomit

  • userid (short) - Who vomited
  • victim (short) - And who was killed or incapped

survivor_call_for_help

  • userid (short) - The actual player entity who is awaiting rescue.
  • subject (long) - SurvivorRescue entity representing the player who needs to be rescued from the closet (used for position)

survivor_rescued

  • rescuer (short) - player that did the rescuing
  • victim (short) - the survivor being rescued
  • dooridx (long) - ent index of the rescue door

survivor_rescue_abandoned

  • None (None) -

relocated

  • userid (short) - player who was relocated

respawning

  • userid (short) - player who started respawning

tank_frustrated

  • userid (short) - player who was culled

weapon_given

  • userid (short) - player who got the weapon
  • giver (short) - player that did the giving
  • weapon (short) - weapon id given
  • weaponentid (short) - weapon entity id

weapon_drop

Called: When an item is removed from a survivor's inventory
Related Events: Called before heal_success, defibrillator_used, upgrade_pack_used, but called after pills_used and adrenaline_used

  • userid (short) - player who dropped the weapon
  • item (string) - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'
  • propid (short) - entindex of the dropped weapon

weapon_drop_to_prop

  • userid (short) - player who dropped the weapon
  • item (string) - weapon string "weapon_*"
  • propid (short) - entindex of the dropped weapon

break_breakable

Override from gameevents.res

  • userid (short) - userid of breaker
  • entindex (long) - entindex of thing breaking
  • material (byte) - BREAK_GLASS, BREAK_WOOD, etc
  • hulkonly (bool) - SF_BREAK_HULK_ONLY
  • achievement (short) - tag to identify achievement on the client

achievement_earned

  • player (byte) - entindex of the player
  • achievement (short) - achievement ID

spec_target_updated

  • None (None) -

spawner_give_item

A spawner has given a player an item (weapon, pills, ammo, health kit, etc)

  • userid (short) - Item recipient
  • item (string) - Name of item given
  • spawner (long) - entindex of the spawner entity

create_panic_event

A panic event has been created, though not necessarily started

  • userid (short) - player who was started the panic

explain_pills

  • subject (long) - The weapon_pain_pills spawner that will be indicated

explain_weapons

  • subject (long) - The weapon_pain_pills spawner that will be indicated

entity_visible

  • userid (short) - The player who sees the entity
  • subject (long) - Entindex of the entity they see
  • classname (string) - Classname of the entity they see
  • entityname (string) - name of the entity they see

weapon_spawn_visible

  • userid (short) - The player who sees the entity
  • subject (long) - Entindex of the entity they see
  • weaponname (string) - weapon name, or "melee"
  • subtype (string) - melee weapon name

boomer_near

  • userid (short) - The boomer
  • victim (short) - The survivor whom the boomer has gotten very close to

explain_pre_radio

explain the rescue radio will remind you to ready for the finale

  • userid (short) -
  • subject (long) -

started_pre_radio

explain the rescue radio will remind you to ready for the finale

  • userid (short) -
  • subject (long) -

explain_radio

explain the rescue radio will start the finale

  • userid (short) -
  • subject (long) -

explain_gas_truck

explain how pulling the lever on the gas truck will start the finale

  • userid (short) -
  • subject (long) - The lever

explain_panic_button

explain that pressing this button will start a panic event.

  • userid (short) -
  • subject (long) - The panic button

explain_elevator_button

explain how to operate the hospital elevator button.

  • userid (short) -
  • subject (long) - The button

explain_lift_button

explain how to operate the lift button.

  • userid (short) -
  • subject (long) - The lift button

explain_church_door

explain how to provoke the crazy church guy.

  • userid (short) -
  • subject (long) - The saferoom door

explain_emergency_door

explain how to open the emergency door.

  • userid (short) -
  • subject (long) - The door

explain_crane

explain how to lower the box on the crane.

  • userid (short) -
  • subject (long) - The lever/button

explain_bridge

explain how to close the gates to make a bridge.

  • userid (short) -
  • subject (long) - The button

explain_gas_can_panic

explain how to shoot the gas can.

  • userid (short) -
  • subject (long) - The gas can

explain_van_panic

explain how to start the van.

  • userid (short) -
  • subject (long) - The van

explain_mainstreet

explain how to lower the forklift

  • userid (short) -
  • subject (long) - The forklift

explain_train_lever

explain how to operate the train lever.

  • userid (short) -
  • subject (long) - The lever on box car

explain_disturbance

explain that disturbances (car alarm) attract infected horde

  • userid (short) -
  • subject (long) - The source of disturbance

explain_scavenge_goal

explain where to put the scavenge mode items

  • userid (short) -
  • subject (long) - The collection device

explain_scavenge_leave_area

explain that leaving the area, starts round

  • userid (short) -
  • subject (long) - The entity

begin_scavenge_overtime

enter overtime in a scavenge round

scavenge_round_start

a scavenge round has begun

  • round (byte) - round number, 1 based
  • firsthalf (bool) - start of the first half of the round


scavenge_round_halftime

a scavenge round is in halftime

scavenge_round_finished

a scavenge round has ended

scavenge_score_tied

a team just tied the score

versus_round_start

a versus round has begun

gascan_pour_blocked

can't pour the gas, someone else already is

  • userid (short) -

gascan_pour_completed

player finished pouring a can

  • userid (short) -

gascan_dropped

  • userid (short) -

gascan_pour_interrupted

we got interuppted pouring the gas can

  • userid (short) - person who interuppted us

scavenge_match_finished

  • winners (byte) - winner team

versus_match_finished

  • winners (byte) - winner team

use_target

a new use target has been found

  • targetid (long) - Entindex of the use target
  • classname (string) - classname of the use target
  • isprop (bool) - is this a prop that can be carried

player_use

Called: When a Survivor presses +USE on a useable entity. i.e. Weapons, items, doors
Related Events: If targetid is an item, item_pickup will be called prior to player_use

Note.pngNote: It will not fire when using a mounted gun.
  • userid (short) - userid of user
  • targetid (long) - Entindex of the used entity

friendly_fire

  • attacker (short) - player who fired the weapon
  • victim (short) - player who got shot
  • guilty (short) - player who was at fault
  • type (long) - damage type

gameinstructor_draw

  • None (None) -

gameinstructor_nodraw

  • None (None) -

request_weapon_stats

  • userid (short) - userid of user requesting their stats

player_talking_state

  • player (byte) -
  • istalking (bool) -

weapon_pickup

client event for player has picked up a weapon. If that does not work, try using the "item_pickup" event.

  • context (byte) - split screen message context
  • weaponid (byte) -
  • weaponslot (byte) -
  • dropped_by_infected (byte) - gender of the Infected that dropped the weapon


hunter_punched

  • userid (short) - player who caused ignition
  • hunteruserid (long) - user ID of Hunter
  • islunging (bool) - TRUE if the Hunter was in the act of lunging

hunter_headshot

  • userid (short) - player who made the headshot
  • hunteruserid (long) - user ID of Hunter
  • islunging (bool) - TRUE if the Hunter was in the act of lunging

zombie_ignited

  • userid (short) - player who caused ignition
  • gender (short) - gender (type) of the infected
  • entityid (long) - entity ID of Tank
  • victimname (string) - "Witch", "Tank", "Hunter", "Smoker", or "Infected"
  • fire_ammo (bool) - true if incendiary ammo was used

boomer_exploded

  • userid (short) - Boomer that exploded
  • attacker (short) - player who caused the explosion
  • splashedbile (bool) - Exploding boomer splashed bile on Survivors

non_pistol_fired

  • userid (short) - User that fired a non-pistol weapon

weapon_fire_at_40

This is networked, special event for game instructor

  • userid (short) -
  • weapon (string) - used weapon name
  • weaponid (short) - used weapon ID
  • count (short) - number of bullets


total_ammo_below_40

sent for any ammo type, except those with max ammo 1, or infinite ammo, like pistols

  • userid (short) -

player_hurt_concise

Abbreviated version of 'player_hurt' that is networked

  • userid (short) - user ID who was hurt
  • attackerentid (long) - entity id who attacked, if attacker not a player, and userid therefore invalid
  • type (long) - damage type
  • dmg_health (short) - damage done to health


tank_killed

Issues: It will not fire if the tank is not a bot.

  • userid (short) - user ID of dead tank
  • attacker (short) - user id of killer
  • solo (bool) - TRUE if a player single-handedly killed the Tank
  • melee_only (bool) - TRUE if the tank was only killed by melee attacks (no blast, burn, or bullet damage)
  • l4d1_only (bool) - TRUE if l4d1 survivors inflicted damage and the l4d2 survivors did not)

tank_rock_killed

  • userid (short) - user id of killer


achievement_write_failed

Used for a notification message when an achievement fails to write

  • None (None) -


ghost_spawn_time

Used for clients to know how long until they become a ghost (and can spawn)

  • userid (short) - user ID of the player that is becoming a ghost
  • spawntime (short) - How long of a wait until player is a ghost


survival_at_30min

Used to know when we elapse 30 minutes on a survival map

survival_at_10min

Used to know when we elapse 10 minutes on a survival map

explain_pre_drawbridge

Point out the button that will start the gauntlet finale.

  • userid (short) -
  • subject (long) -

explain_drawbridge

  • userid (short) -
  • subject (long) -

explain_perimeter

  • userid (short) -
  • subject (long) -

explain_deactivate_alarm

  • userid (short) -
  • subject (long) -

explain_impound_lot

  • userid (short) -
  • subject (long) -

explain_decon

  • userid (short) -
  • subject (long) -

explain_mall_window

  • userid (short) -
  • subject (long) -

explain_mall_alarm

  • userid (short) -
  • subject (long) -

explain_coaster

  • userid (short) -
  • subject (long) -

explain_coaster_stop

  • userid (short) -
  • subject (long) -

explain_decon_wait

  • userid (short) -
  • subject (long) -

gauntlet_finale_start

explain_float

  • userid (short) -
  • subject (long) -

explain_ferry_button

  • userid (short) -
  • subject (long) -

explain_hatch_button

  • userid (short) -
  • subject (long) -

explain_shack_button

  • userid (short) -
  • subject (long) -

upgrade_incendiary_ammo

  • userid (short) -

upgrade_explosive_ammo

  • userid (short) -

receive_upgrade

  • userid (short) -
  • upgrade (string) -

explain_vehicle_arrival

  • subject (long) -

mounted_gun_start

  • userid (short) -
  • subject (long) -

mounted_gun_overheated

  • userid (short) -

explain_burger_sign

  • userid (short) -
  • subject (long) -

explain_carousel_button

  • userid (short) -
  • subject (long) -

explain_carousel_destination

  • userid (short) -
  • subject (long) -

explain_stage_lighting

  • userid (short) -
  • subject (long) -

explain_stage_finale_start

  • userid (short) -
  • subject (long) -

explain_stage_survival_start

  • userid (short) -
  • subject (long) -

ability_out_of_range

  • userid (short) -
  • ability (string) - ability classname

explain_stage_pyrotechnics

  • userid (short) -
  • subject (long) -

explain_c3m4_radio1

  • userid (short) -
  • subject (long) -

explain_c3m4_radio2

  • userid (short) -
  • subject (long) -

explain_gates_are_open

  • userid (short) -
  • subject (long) -

explain_c2m4_ticketbooth

  • userid (short) -
  • subject (long) -

explain_c3m4_rescue

  • userid (short) -
  • subject (long) -

explain_hotel_elevator_doors

  • userid (short) -
  • subject (long) -

explain_gun_shop_tanker

  • userid (short) -
  • subject (long) -

explain_gun_shop

  • userid (short) -
  • subject (long) -

explain_store_alarm

  • userid (short) -
  • subject (long) -

explain_store_item

  • userid (short) -
  • subject (long) -

explain_store_item_stop

  • userid (short) -
  • subject (long) -

explain_survival_generic

  • userid (short) -
  • subject (long) -

explain_survival_alarm

  • userid (short) -
  • subject (long) -

explain_survival_radio

  • userid (short) -
  • subject (long) -

explain_survival_carousel

  • userid (short) -
  • subject (long) -

explain_return_item

  • userid (short) -
  • subject (long) -

explain_save_items

  • userid (short) -
  • subject (long) -

spit_burst

Triggers even after Spitter's death.Called: Triggers when Spitter's spit hits the ground.

  • userid (short) -
  • subject (long) -


entered_spit

  • userid (short) -
  • subject (long) -

temp_c4m1_getgas

  • userid (short) -
  • subject (long) -

temp_c4m3_return_to_boat

  • userid (short) -
  • subject (long) -

explain_c1m4_finale

  • userid (short) -
  • subject (long) -

c1m4_scavenge_instructions

  • userid (short) -
  • subject (long) -

punched_clown

  • userid (short) - player who punched the clown

charger_killed

  • userid (short) - user ID of dead charger
  • attacker (short) - user id of killer
  • melee (bool) - TRUE if a player killed the charger with a melee weapon
  • charging (bool) - TRUE if the charger was charging when it died

spitter_killed

Called: Triggers in Spitter's death.

  • userid (short) - user ID of dead spitter
  • attacker (short) - user id of killer
  • has_spit (bool) - TRUE if the spitter spit at some point


jockey_ride

  • userid (short) - player who did the lunging
  • victim (short) - player that got lunged

jockey_ride_end

Fires in all cases where a jockey releases the survivor.

Note.pngNote:rescuer will return 0 when:
  • The jockey is being cleared by shoving.
  • Another special takes over the jockeyed survivor.
  • The commons kill the biled jockey.
  • The jockey incaps the survivor, including ledge-hangs.
  • The jockey is killed or stumbled by a charger impact.
Note.pngNote:
  • A jockey stumbled by a boomer explosion will return rescuer parameter as the boomer's userid.
  • Using Stagger() on the jockey will return rescuer parameter as the jockey's userid.
  • Using Stagger() on the survivor will return rescuer parameter as the survivor's userid.
  • userid (short) - player who did the lunging
  • victim (short) - player that got lunged
  • rescuer (short) - Who stopped it
  • ride_length (float) - Duration of our ride


jockey_punched

  • userid (short) - user ID of player that shoved the jockey
  • jockeyuserid (long) - user ID of Jockey
  • islunging (bool) - TRUE if Jockey was in the act of lunging

jockey_headshot

  • userid (short) - user ID of player that landed a headshot on the Jockey
  • jockeyuserid (long) - user ID of Jockey
  • islunging (bool) - TRUE if Jockey was in the act of lunging

jockey_killed

  • userid (short) - user ID of dead jockey
  • attacker (short) - user id of killer
  • weapon (string) - weapon name

non_melee_fired

  • userid (short) - User that fired a non-melee weapon

infected_decapitated

  • userid (short) - userid of the player who did the decapitation
  • weapon (string) - melee weapon name


upgrade_pack_added

  • upgradeid (short) -
  • userid (short) -

vomit_bomb_tank

  • userid (short) - userid of the player who used the bomb

triggered_car_alarm

  • userid (short) - user ID of player who activated car alarm

panic_event_finished

charger_charge_start

The moment when the charger starts chargingIssues: Called more than once per ability use. For consistency, check ability_use
Issues: Can be called after charger_charge_end. Use ability_use for an alternative start to end relationship.

  • userid (short) - user ID of the charger


charger_charge_end

  • userid (short) - user ID of the charger

charger_carry_start

The moment when the charger grabs a survivor

Icon-Bug.pngBug:Will not fire when charger stops charging right after it carries a survivor, usually happens when the survivor is near a wall. Subsequently, charger_carry_end will not fire.  [todo tested in?]
  • userid (short) - user ID of the charger
  • victim (short) - user ID of the player who was charged

charger_carry_end

The moment when the charger stops charging a survivor (and will soon start pummeling)

  • userid (short) - user ID of the charger
  • victim (short) - user ID of the player who was charged

charger_carry_kill

Note.pngNote: Seems to only work on competitive gamemodes, like versus.

When a charger kills a survivor with a carry.

  • userid (short) - user ID of the charger
  • victim (short) - user ID of the victim

charger_impact

When a charger impacts a survivor they aren't carrying

  • userid (short) - user ID of the charger
  • victim (short) - user ID of the player who was impacted

charger_pummel_start

The moment when the charger starts pummeling a survivor

  • userid (short) - user ID of the charger
  • victim (short) - user ID of the player who was charged

charger_pummel_end

When the charger is cleared from the survivor or the survivor dies.

Note.pngNote:
  • Killing the charger or survivor being pummeled to death will return rescuer as 0.
  • It will only return rescuer as the survivor's userid when staggered by pipe bomb, explosive ammo, propane/oxygen tank.
  • Using Stagger() on the survivor will return rescuer as 0.
  • Using Stagger() on the charger will return rescuer as the charger's userid.
  • userid (short) - user ID of the charger
  • victim (short) - user ID of the player who was charged
  • rescuer (short) - user ID of the player who rescued them
  • strongman_bell_knocked_off

    The arcade bell on c2m4_barns

    • userid (short) -
    • subject (short) -

    molotov_thrown

    • userid (short) -

    gas_can_forced_drop

    • userid (short) - player that forced the drop
    • victim (short) - player that dropped it

    explain_need_gnome_to_continue

    • none (none) -

    explain_survivor_glows_disabled

    • userid (short) - The player we're explaining to

    explain_item_glows_disabled

    • userid (short) - The player we're explaining to

    explain_rescue_disabled

    • userid (short) - The player we're explaining to

    explain_bodyshots_reduced

    • userid (short) - The player we're explaining to

    explain_witch_instant_kill

    • userid (short) - The player we're explaining to

    set_instructor_group_enabled

    • group (string) -
    • enabled (short) -

    stashwhacker_game_won

    • userid (short) -
    • subject (short) -

    versus_marker_reached

    • userid (short) -
    • marker (short) -

    start_score_animation

    survival_round_start

    scavenge_gas_can_destroyed

    • userid (short) - The player that destroyed it

    explain_sewer_gate

    • userid (short) -
    • subject (long) -

    explain_sewer_run

    • userid (short) -
    • subject (long) -

    explain_c6m3_finale

    • userid (short) -
    • subject (long) -

    finale_bridge_lowering

    • userid (short) -
    • subject (long) -

    m60_streak_ended

    I was holding down the m60 trigger, and now I'm not

    • none (none) -

    chair_charged

    • userid (short) -

    song_played

    • none (none) -

    foot_locker_opened

    • userid (short) -