Left 4 Dead 2/Scripting/Game Events
This page was ported from a page from AlliedModders Wiki. It was originally at Left 4 Dead 2 Events. The original authors of this page are shown on the page's edit history page.
- Refer back to Game Events (Source) for more events.
Contents
- 1 player_death
- 2 player_hurt
- 3 player_team
- 4 player_bot_replace
- 5 bot_player_replace
- 6 player_afk
- 7 weapon_fire
- 8 weapon_fire_on_empty
- 9 weapon_reload
- 10 weapon_zoom
- 11 ability_use
- 12 ammo_pickup
- 13 item_pickup
- 14 golden_crowbar_pickup
- 15 grenade_bounce
- 16 hegrenade_detonate
- 17 bullet_impact
- 18 player_footstep
- 19 player_jump
- 20 player_blind
- 21 player_falldamage
- 22 player_ledge_grab
- 23 player_ledge_release
- 24 door_moving
- 25 door_open
- 26 door_close
- 27 door_unlocked
- 28 rescue_door_open
- 29 waiting_checkpoint_door_used
- 30 waiting_door_used_versus
- 31 waiting_checkpoint_button_used
- 32 success_checkpoint_button_used
- 33 round_freeze_end
- 34 round_start
- 35 round_start_pre_entity
- 36 round_start_post_nav
- 37 nav_blocked
- 38 nav_generate
- 39 round_end_message
- 40 round_end
- 41 vote_ended
- 42 vote_started
- 43 vote_changed
- 44 vote_passed
- 45 vote_failed
- 46 vote_cast_yes
- 47 vote_cast_no
- 48 infected_hurt
- 49 infected_death
- 50 hostname_changed
- 51 difficulty_changed
- 52 finale_start
- 53 finale_rush
- 54 finale_escape_start
- 55 finale_vehicle_incoming
- 56 finale_vehicle_ready
- 57 finale_vehicle_leaving
- 58 finale_win
- 59 mission_lost
- 60 finale_radio_start
- 61 finale_radio_damaged
- 62 final_reportscreen
- 63 map_transition
- 64 player_transitioned
- 65 heal_begin
- 66 heal_success
- 67 heal_end
- 68 heal_interrupted
- 69 ammo_pack_used
- 70 give_weapon
- 71 pills_used
- 72 pills_used_fail
- 73 ammo_pack_used_fail_no_weapon
- 74 ammo_pack_used_fail_full
- 75 ammo_pack_used_fail_doesnt_use_ammo
- 76 ammo_pile_weapon_cant_use_ammo
- 77 defibrillator_begin
- 78 defibrillator_used
- 79 defibrillator_used_fail
- 80 defibrillator_interrupted
- 81 upgrade_pack_begin
- 82 upgrade_pack_used
- 83 upgrade_item_already_used
- 84 upgrade_failed_no_primary
- 85 dead_survivor_visible
- 86 adrenaline_used
- 87 revive_begin
- 88 revive_success
- 89 revive_end
- 90 drag_begin
- 91 drag_end
- 92 player_incapacitated
- 93 player_incapacitated_start
- 94 player_entered_start_area
- 95 player_first_spawn
- 96 player_left_start_area
- 97 player_left_safe_area
- 98 player_entered_checkpoint
- 99 player_left_checkpoint
- 100 player_shoved
- 101 entity_shoved
- 102 player_jump_apex
- 103 player_blocked
- 104 player_now_it
- 105 player_no_longer_it
- 106 witch_harasser_set
- 107 witch_spawn
- 108 witch_killed
- 109 tank_spawn
- 110 melee_kill
- 111 area_cleared
- 112 award_earned
- 113 tongue_grab
- 114 tongue_broke_bent
- 115 tongue_broke_victim_died
- 116 tongue_release
- 117 choke_start
- 118 choke_end
- 119 choke_stopped
- 120 tongue_pull_stopped
- 121 lunge_shove
- 122 lunge_pounce
- 123 pounce_end
- 124 pounce_stopped
- 125 pounce_attempt_stopped
- 126 fatal_vomit
- 127 survivor_call_for_help
- 128 survivor_rescued
- 129 survivor_rescue_abandoned
- 130 relocated
- 131 respawning
- 132 tank_frustrated
- 133 weapon_given
- 134 weapon_drop
- 135 weapon_drop_to_prop
- 136 break_breakable
- 137 achievement_earned
- 138 spec_target_updated
- 139 spawner_give_item
- 140 create_panic_event
- 141 explain_pills
- 142 explain_weapons
- 143 entity_visible
- 144 weapon_spawn_visible
- 145 boomer_near
- 146 explain_pre_radio
- 147 started_pre_radio
- 148 explain_radio
- 149 explain_gas_truck
- 150 explain_panic_button
- 151 explain_elevator_button
- 152 explain_lift_button
- 153 explain_church_door
- 154 explain_emergency_door
- 155 explain_crane
- 156 explain_bridge
- 157 explain_gas_can_panic
- 158 explain_van_panic
- 159 explain_mainstreet
- 160 explain_train_lever
- 161 explain_disturbance
- 162 explain_scavenge_goal
- 163 explain_scavenge_leave_area
- 164 begin_scavenge_overtime
- 165 scavenge_round_start
- 166 scavenge_round_halftime
- 167 scavenge_round_finished
- 168 scavenge_score_tied
- 169 versus_round_start
- 170 gascan_pour_blocked
- 171 gascan_pour_completed
- 172 gascan_dropped
- 173 gascan_pour_interrupted
- 174 scavenge_match_finished
- 175 versus_match_finished
- 176 use_target
- 177 player_use
- 178 friendly_fire
- 179 gameinstructor_draw
- 180 gameinstructor_nodraw
- 181 request_weapon_stats
- 182 player_talking_state
- 183 weapon_pickup
- 184 hunter_punched
- 185 hunter_headshot
- 186 zombie_ignited
- 187 boomer_exploded
- 188 non_pistol_fired
- 189 weapon_fire_at_40
- 190 total_ammo_below_40
- 191 player_hurt_concise
- 192 tank_killed
- 193 tank_rock_killed
- 194 achievement_write_failed
- 195 ghost_spawn_time
- 196 survival_at_30min
- 197 survival_at_10min
- 198 explain_pre_drawbridge
- 199 explain_drawbridge
- 200 explain_perimeter
- 201 explain_deactivate_alarm
- 202 explain_impound_lot
- 203 explain_decon
- 204 explain_mall_window
- 205 explain_mall_alarm
- 206 explain_coaster
- 207 explain_coaster_stop
- 208 explain_decon_wait
- 209 gauntlet_finale_start
- 210 explain_float
- 211 explain_ferry_button
- 212 explain_hatch_button
- 213 explain_shack_button
- 214 upgrade_incendiary_ammo
- 215 upgrade_explosive_ammo
- 216 receive_upgrade
- 217 explain_vehicle_arrival
- 218 mounted_gun_start
- 219 mounted_gun_overheated
- 220 explain_burger_sign
- 221 explain_carousel_button
- 222 explain_carousel_destination
- 223 explain_stage_lighting
- 224 explain_stage_finale_start
- 225 explain_stage_survival_start
- 226 ability_out_of_range
- 227 explain_stage_pyrotechnics
- 228 explain_c3m4_radio1
- 229 explain_c3m4_radio2
- 230 explain_gates_are_open
- 231 explain_c2m4_ticketbooth
- 232 explain_c3m4_rescue
- 233 explain_hotel_elevator_doors
- 234 explain_gun_shop_tanker
- 235 explain_gun_shop
- 236 explain_store_alarm
- 237 explain_store_item
- 238 explain_store_item_stop
- 239 explain_survival_generic
- 240 explain_survival_alarm
- 241 explain_survival_radio
- 242 explain_survival_carousel
- 243 explain_return_item
- 244 explain_save_items
- 245 spit_burst
- 246 entered_spit
- 247 temp_c4m1_getgas
- 248 temp_c4m3_return_to_boat
- 249 explain_c1m4_finale
- 250 c1m4_scavenge_instructions
- 251 punched_clown
- 252 charger_killed
- 253 spitter_killed
- 254 jockey_ride
- 255 jockey_ride_end
- 256 jockey_punched
- 257 jockey_headshot
- 258 jockey_killed
- 259 non_melee_fired
- 260 infected_decapitated
- 261 upgrade_pack_added
- 262 vomit_bomb_tank
- 263 triggered_car_alarm
- 264 panic_event_finished
- 265 charger_charge_start
- 266 charger_charge_end
- 267 charger_carry_start
- 268 charger_carry_end
- 269 charger_carry_kill
- 270 charger_impact
- 271 charger_pummel_start
- 272 charger_pummel_end
- 273 strongman_bell_knocked_off
- 274 molotov_thrown
- 275 gas_can_forced_drop
- 276 explain_need_gnome_to_continue
- 277 explain_survivor_glows_disabled
- 278 explain_item_glows_disabled
- 279 explain_rescue_disabled
- 280 explain_bodyshots_reduced
- 281 explain_witch_instant_kill
- 282 set_instructor_group_enabled
- 283 stashwhacker_game_won
- 284 versus_marker_reached
- 285 start_score_animation
- 286 survival_round_start
- 287 scavenge_gas_can_destroyed
- 288 explain_sewer_gate
- 289 explain_sewer_run
- 290 explain_c6m3_finale
- 291 finale_bridge_lowering
- 292 m60_streak_ended
- 293 chair_charged
- 294 song_played
- 295 foot_locker_opened
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) -
- None (None) -
- area (long) -
- blocked (bool) -
- 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
- upgradeid (short) - entity index of the deployed upgrade pack (either
upgrade_ammo_explosive
orupgrade_ammo_incendiary
) - userid (short) - person who is deploying the pack
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.
- 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).
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.
- 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).
- 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
a new use target has been foundCalled: 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
- 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.
- 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.
- 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
- 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
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.
- 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.
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) -