Left 4 Dead 2/Scripting/Game Events: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(formatting)
Line 5: Line 5:
== player_death ==
== player_death ==
a game event, name may be 32 charaters long; this extents the original player_death by a new fields
a game event, name may be 32 charaters long; this extents the original player_death by a new fields
* <b>userid</b> (short) - user ID who died
* <b>userid</b> <small>(short)</small> - user ID who died
* <b>entityid</b> (long) - entity ID who died, userid should be used first, to get the dead Player.  Otherwise, it is not a player, so use this.
* <b>entityid</b> <small>(long)</small> - entity ID who died, userid should be used first, to get the dead Player.  Otherwise, it is not a player, so use this.
* <b>attacker</b> (short) - user ID who killed
* <b>attacker</b> <small>(short)</small> - user ID who killed
* <b>attackername</b> (string) - What type of zombie, so we don't have zombie names
* <b>attackername</b> <small>(string)</small> - What type of zombie, so we don't have zombie names
* <b>attackerentid</b> (long) - if killer not a player, the entindex of who killed.  Again, use attacker first
* <b>attackerentid</b> <small>(long)</small> - if killer not a player, the entindex of who killed.  Again, use attacker first
* <b>weapon</b> (string) - weapon name killer used
* <b>weapon</b> <small>(string)</small> - weapon name killer used
* <b>headshot</b> (bool) - signals a headshot
* <b>headshot</b> <small>(bool)</small> - signals a headshot
* <b>attackerisbot</b> (bool) - is the attacker a bot
* <b>attackerisbot</b> <small>(bool)</small> - is the attacker a bot
* <b>victimname</b> (string) - What type of zombie, so we don't have zombie names
* <b>victimname</b> <small>(string)</small> - What type of zombie, so we don't have zombie names
* <b>victimisbot</b> (bool) - is the victim a bot
* <b>victimisbot</b> <small>(bool)</small> - is the victim a bot
* <b>abort</b> (bool) - did the victim abort
* <b>abort</b> <small>(bool)</small> - did the victim abort
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type
* <b>victim_x</b> (float) -  
* <b>victim_x</b> <small>(float)</small> -  
* <b>victim_y</b> (float) -  
* <b>victim_y</b> <small>(float)</small> -  
* <b>victim_z</b> (float) -  
* <b>victim_z</b> <small>(float)</small> -  




== player_hurt ==
== player_hurt ==
Registers all playable classes (Hunter, Smoker, Boomer, Tank, Survivors). See infected_hurt for Witch and Common Infected
Registers all playable classes (Hunter, Smoker, Boomer, Tank, Survivors). See infected_hurt for Witch and Common Infected
* <b>local</b> (1) - Not networked
* <b>local</b> <small>(1)</small> - Not networked
* <b>userid</b> (short) - user ID who was hurt
* <b>userid</b> <small>(short)</small> - user ID who was hurt
* <b>attacker</b> (short) - user id who attacked
* <b>attacker</b> <small>(short)</small> - user id who attacked
* <b>attackerentid</b> (long) - entity id who attacked, if attacker not a player, and userid therefore invalid
* <b>attackerentid</b> <small>(long)</small> - entity id who attacked, if attacker not a player, and userid therefore invalid
* <b>health</b> (short) - remaining health points
* <b>health</b> <small>(short)</small> - remaining health points
* <b>armor</b> (byte) - remaining armor points
* <b>armor</b> <small>(byte)</small> - remaining armor points
* <b>weapon</b> (string) - weapon name attacker used, if not the world
* <b>weapon</b> <small>(string)</small> - weapon name attacker used, if not the world
* <b>dmg_health</b> (short) - damage done to health
* <b>dmg_health</b> <small>(short)</small> - damage done to health
* <b>dmg_armor</b> (byte) - damage done to armor
* <b>dmg_armor</b> <small>(byte)</small> - damage done to armor
* <b>hitgroup</b> (byte) - hitgroup that was damaged
* <b>hitgroup</b> <small>(byte)</small> - hitgroup that was damaged
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type


== player_team ==
== player_team ==
player change his team
player change his team
* <b>userid</b> (short) - user ID on server
* <b>userid</b> <small>(short)</small> - user ID on server
* <b>team</b> (byte) - team id
* <b>team</b> <small>(byte)</small> - team id
* <b>oldteam</b> (byte) - old team id
* <b>oldteam</b> <small>(byte)</small> - old team id
* <b>disconnect</b> (bool) - team change because player disconnects
* <b>disconnect</b> <small>(bool)</small> - team change because player disconnects
* <b>name</b> (string) -  
* <b>name</b> <small>(string)</small> -  
* <b>isbot</b> (bool) -  
* <b>isbot</b> <small>(bool)</small> -  


== player_bot_replace ==
== player_bot_replace ==
Bot replaced a player
Bot replaced a player
* <b>player</b> (short) - user ID of the player
* <b>player</b> <small>(short)</small> - user ID of the player
* <b>bot</b> (short) - user ID of the bot
* <b>bot</b> <small>(short)</small> - user ID of the bot


== bot_player_replace ==
== bot_player_replace ==
Player replaced a bot
Player replaced a bot
* <b>bot</b> (short) - user ID of the bot
* <b>bot</b> <small>(short)</small> - user ID of the bot
* <b>player</b> (short) - user ID of the player
* <b>player</b> <small>(short)</small> - user ID of the player


== player_afk ==
== player_afk ==


* <b>player</b> (short) - user ID of the player
* <b>player</b> <small>(short)</small> - user ID of the player


== weapon_fire ==
== weapon_fire ==


* <b>local</b> (1) - don't network this, its way too spammy
* <b>local</b> <small>(1)</small> - don't network this, its way too spammy
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>weapon</b> (string) - used weapon name
* <b>weapon</b> <small>(string)</small> - used weapon name
* <b>weaponid</b> (short) - used weapon ID
* <b>weaponid</b> <small>(short)</small> - used weapon ID
* <b>count</b> (short) - number of bullets
* <b>count</b> <small>(short)</small> - number of bullets


== weapon_fire_on_empty ==
== weapon_fire_on_empty ==


* <b>local</b> (1) - don't network this, its way too spammy
* <b>local</b> <small>(1)</small> - don't network this, its way too spammy
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>weapon</b> (string) - weapon name used
* <b>weapon</b> <small>(string)</small> - weapon name used
* <b>count</b> (short) - number of bullets
* <b>count</b> <small>(short)</small> - number of bullets


== weapon_reload ==
== weapon_reload ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>manual</b> (bool) - player manually started the reload
* <b>manual</b> <small>(bool)</small> - player manually started the reload


== weapon_zoom ==
== weapon_zoom ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== ability_use ==
== ability_use ==
Line 87: Line 87:
{{eventnote|Issues|Doesn't fire for jockey}}
{{eventnote|Issues|Doesn't fire for jockey}}


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>ability</b> (string) - Classname of ability. Possible values:
* <b>ability</b> <small>(string)</small> - Classname of ability. Possible values:
*ability_tongue
*ability_tongue
*ability_vomit
*ability_vomit
Line 96: Line 96:
*ability_throw
*ability_throw
for the Smoker, Boomer, Hunter, Spitter, Charger and Tank respectively.
for the Smoker, Boomer, Hunter, Spitter, Charger and Tank respectively.
* <b>context</b> (short) - enum of the way it was used (different for each ability)
* <b>context</b> <small>(short)</small> - enum of the way it was used (different for each ability)




== ammo_pickup ==
== ammo_pickup ==


* <b>userid</b> (short) - The player who got some ammo from a weapon_ammo_spawner
* <b>userid</b> <small>(short)</small> - The player who got some ammo from a weapon_ammo_spawner


== item_pickup ==
== item_pickup ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>item</b> (string) - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'
* <b>item</b> <small>(string)</small> - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'


== golden_crowbar_pickup ==
== golden_crowbar_pickup ==


* <b>userid</b> (short) -  The player who picked up the crowbar
* <b>userid</b> <small>(short)</small> -  The player who picked up the crowbar


== grenade_bounce ==
== grenade_bounce ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== hegrenade_detonate ==
== hegrenade_detonate ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>x</b> (float) -  
* <b>x</b> <small>(float)</small> -  
* <b>y</b> (float) -  
* <b>y</b> <small>(float)</small> -  
* <b>z</b> (float) -  
* <b>z</b> <small>(float)</small> -  


== bullet_impact ==
== bullet_impact ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>x</b> (float) -  
* <b>x</b> <small>(float)</small> -  
* <b>y</b> (float) -  
* <b>y</b> <small>(float)</small> -  
* <b>z</b> (float) -  
* <b>z</b> <small>(float)</small> -  


== player_footstep ==
== player_footstep ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== player_jump ==
== player_jump ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== player_blind ==
== player_blind ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== player_falldamage ==
== player_falldamage ==


* <b>userid</b> (short) - Who got hurt
* <b>userid</b> <small>(short)</small> - Who got hurt
* <b>damage</b> (float) - for how much
* <b>damage</b> <small>(float)</small> - for how much
* <b>causer</b> (short) - Who caused them to do so (if anyone)
* <b>causer</b> <small>(short)</small> - Who caused them to do so (if anyone)


== player_ledge_grab ==
== player_ledge_grab ==


* <b>userid</b> (short) - Who grabbed the ledge
* <b>userid</b> <small>(short)</small> - Who grabbed the ledge
* <b>causer</b> (short) - Who caused them to do so (if anyone)
* <b>causer</b> <small>(short)</small> - Who caused them to do so (if anyone)


== player_ledge_release ==
== player_ledge_release ==


* <b>userid</b> (short) - person who released from the ledge
* <b>userid</b> <small>(short)</small> - person who released from the ledge


== door_moving ==
== door_moving ==


* <b>entindex</b> (long) -  
* <b>entindex</b> <small>(long)</small> -  
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== door_open ==
== door_open ==


* <b>userid</b> (short) - Who opened the door
* <b>userid</b> <small>(short)</small> - Who opened the door
* <b>checkpoint</b> (bool) - Is the door a checkpoint door
* <b>checkpoint</b> <small>(bool)</small> - Is the door a checkpoint door
* <b>closed</b> (bool) - Was the door closed when it started opening?
* <b>closed</b> <small>(bool)</small> - Was the door closed when it started opening?


== door_close ==
== door_close ==


* <b>userid</b> (short) - Who closed the door
* <b>userid</b> <small>(short)</small> - Who closed the door
* <b>checkpoint</b> (bool) - Is the door a checkpoint door
* <b>checkpoint</b> <small>(bool)</small> - Is the door a checkpoint door


== door_unlocked ==
== door_unlocked ==


* <b>userid</b> (short) - Who opened the door
* <b>userid</b> <small>(short)</small> - Who opened the door
* <b>checkpoint</b> (bool) - Is the door a checkpoint door
* <b>checkpoint</b> <small>(bool)</small> - Is the door a checkpoint door


== rescue_door_open ==
== rescue_door_open ==


* <b>userid</b> (short) - Who opened the door
* <b>userid</b> <small>(short)</small> - Who opened the door
* <b>entindex</b> (long) - door that opened
* <b>entindex</b> <small>(long)</small> - door that opened


== waiting_checkpoint_door_used ==
== waiting_checkpoint_door_used ==
Someone tried to open a checkpoint door that is locked till everyone loads in
Someone tried to open a checkpoint door that is locked till everyone loads in
* <b>userid</b> (short) - player who tried to open it
* <b>userid</b> <small>(short)</small> - player who tried to open it
* <b>entindex</b> (long) - door that was used
* <b>entindex</b> <small>(long)</small> - door that was used


== waiting_door_used_versus ==
== waiting_door_used_versus ==
Someone tried to open a checkpoint door that is locked till everyone loads in
Someone tried to open a checkpoint door that is locked till everyone loads in
* <b>userid</b> (short) - player who tried to open it
* <b>userid</b> <small>(short)</small> - player who tried to open it
* <b>entindex</b> (long) - door that was used
* <b>entindex</b> <small>(long)</small> - door that was used


== waiting_checkpoint_button_used ==
== waiting_checkpoint_button_used ==
Someone tried to push a button that's locked until everyone is gathered
Someone tried to push a button that's locked until everyone is gathered
* <b>userid</b> (short) - player who tried to open it
* <b>userid</b> <small>(short)</small> - player who tried to open it


== success_checkpoint_button_used ==
== success_checkpoint_button_used ==
Someone pushed a button that's locked until everyone is gathered
Someone pushed a button that's locked until everyone is gathered
* <b>userid</b> (short) - player who openned it
* <b>userid</b> <small>(short)</small> - player who openned it


== round_freeze_end ==
== round_freeze_end ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== round_start_pre_entity ==
== round_start_pre_entity ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== round_start_post_nav ==
== round_start_post_nav ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== nav_blocked ==
== nav_blocked ==


* <b>area</b> (long) -  
* <b>area</b> <small>(long)</small> -  
* <b>blocked</b> (bool) -  
* <b>blocked</b> <small>(bool)</small> -  


== nav_generate ==
== nav_generate ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== round_end_message ==
== round_end_message ==


* <b>winner</b> (byte) - winner team/user i
* <b>winner</b> <small>(byte)</small> - winner team/user i
* <b>reason</b> (byte) - reson why team won
* <b>reason</b> <small>(byte)</small> - reson why team won
* <b>message</b> (string) - end round message
* <b>message</b> <small>(string)</small> - end round message


== round_end ==
== round_end ==


* <b>winner</b> (byte) - winner team/user i
* <b>winner</b> <small>(byte)</small> - winner team/user i
* <b>reason</b> (byte) - reson why team won
* <b>reason</b> <small>(byte)</small> - reson why team won
* <b>message</b> (string) - end round message
* <b>message</b> <small>(string)</small> - end round message
* <b>time</b> (float) -  
* <b>time</b> <small>(float)</small> -  


== vote_ended ==
== vote_ended ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== vote_started ==
== vote_started ==


* <b>issue</b> (string) -  
* <b>issue</b> <small>(string)</small> -  
* <b>param1</b> (string) -  
* <b>param1</b> <small>(string)</small> -  
* <b>votedata</b> (string) -  
* <b>votedata</b> <small>(string)</small> -  
* <b>team</b> (byte) -  
* <b>team</b> <small>(byte)</small> -  
* <b>initiator</b> (long) - entity id of the player who initiated the vote
* <b>initiator</b> <small>(long)</small> - entity id of the player who initiated the vote
* <b>reliable</b> (1) - this event is reliable
* <b>reliable</b> <small>(1)</small> - this event is reliable




== vote_changed ==
== vote_changed ==


* <b>yesVotes</b> (byte) -  
* <b>yesVotes</b> <small>(byte)</small> -  
* <b>noVotes</b> (byte) -  
* <b>noVotes</b> <small>(byte)</small> -  
* <b>potentialVotes</b> (byte) -  
* <b>potentialVotes</b> <small>(byte)</small> -  


== vote_passed ==
== vote_passed ==


* <b>details</b> (string) -  
* <b>details</b> <small>(string)</small> -  
* <b>param1</b> (string) -  
* <b>param1</b> <small>(string)</small> -  
* <b>team</b> (byte) -  
* <b>team</b> <small>(byte)</small> -  
* <b>reliable</b> (1) - this event is reliable
* <b>reliable</b> <small>(1)</small> - this event is reliable




== vote_failed ==
== vote_failed ==


* <b>team</b> (byte) -  
* <b>team</b> <small>(byte)</small> -  
* <b>reliable</b> (1) - this event is reliable
* <b>reliable</b> <small>(1)</small> - this event is reliable




== vote_cast_yes ==
== vote_cast_yes ==


* <b>team</b> (byte) -  
* <b>team</b> <small>(byte)</small> -  
* <b>entityid</b> (long) - entity id of the voter
* <b>entityid</b> <small>(long)</small> - entity id of the voter


== vote_cast_no ==
== vote_cast_no ==


* <b>team</b> (byte) -  
* <b>team</b> <small>(byte)</small> -  
* <b>entityid</b> (long) - entity id of the voter
* <b>entityid</b> <small>(long)</small> - entity id of the voter


== infected_hurt ==
== infected_hurt ==
Registers for non-playable classes (Common Infected, Witch). See player_hurt for other playable classes
Registers for non-playable classes (Common Infected, Witch). See player_hurt for other playable classes
* <b>local</b> (1) - don't network this, its way too spammy
* <b>local</b> <small>(1)</small> - don't network this, its way too spammy
* <b>attacker</b> (short) - player userid who attacked
* <b>attacker</b> <small>(short)</small> - player userid who attacked
* <b>entityid</b> (long) - entity id of infected
* <b>entityid</b> <small>(long)</small> - entity id of infected
* <b>hitgroup</b> (byte) - hitgroup that was damaged
* <b>hitgroup</b> <small>(byte)</small> - hitgroup that was damaged
* <b>amount</b> (short) - how much damage was done
* <b>amount</b> <small>(short)</small> - how much damage was done
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type


== infected_death ==
== infected_death ==


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


== hostname_changed ==
== hostname_changed ==


* <b>hostname</b> (string) -  
* <b>hostname</b> <small>(string)</small> -  


== difficulty_changed ==
== difficulty_changed ==
It appears that strDifficulty is z_difficulty value
It appears that strDifficulty is z_difficulty value
* <b>newDifficulty</b> (short) -  
* <b>newDifficulty</b> <small>(short)</small> -  
* <b>oldDifficulty</b> (short) -  
* <b>oldDifficulty</b> <small>(short)</small> -  
* <b>strDifficulty</b> (string) -  
* <b>strDifficulty</b> <small>(string)</small> -  




== finale_start ==
== finale_start ==


* <b>rushes</b> (short) -  
* <b>rushes</b> <small>(short)</small> -  


== finale_rush ==
== finale_rush ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== finale_escape_start ==
== finale_escape_start ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== finale_vehicle_incoming ==
== finale_vehicle_incoming ==


* <b>campaign</b> (string) -  
* <b>campaign</b> <small>(string)</small> -  


== finale_vehicle_ready ==
== finale_vehicle_ready ==


* <b>campaign</b> (string) -  
* <b>campaign</b> <small>(string)</small> -  


== finale_vehicle_leaving ==
== finale_vehicle_leaving ==


* <b>survivorcount</b> (short) - number of survivors that made it out
* <b>survivorcount</b> <small>(short)</small> - number of survivors that made it out


== finale_win ==
== finale_win ==


* <b>map_name</b> (string) -  
* <b>map_name</b> <small>(string)</small> -  
* <b>difficulty</b> (short) -  
* <b>difficulty</b> <small>(short)</small> -  


== mission_lost ==
== mission_lost ==
As in, the survivor team failed.  Opposite of finale_win, but not necessarily during the finale.
As in, the survivor team failed.  Opposite of finale_win, but not necessarily during the finale.
* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== finale_radio_start ==
== finale_radio_start ==


* <b>health</b> (short) -  
* <b>health</b> <small>(short)</small> -  


== finale_radio_damaged ==
== finale_radio_damaged ==


* <b>health</b> (short) -  
* <b>health</b> <small>(short)</small> -  


== final_reportscreen ==
== final_reportscreen ==
Right before the final report screen comes up, let awards possibly fire
Right before the final report screen comes up, let awards possibly fire
* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== map_transition ==
== map_transition ==
When campaign cinematics start
When campaign cinematics start
* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  




== player_transitioned ==
== player_transitioned ==
When campaign cinematics end and player is transitioned to first person view
When campaign cinematics end and player is transitioned to first person view
* <b>userid</b> (short) - the person that just finished transitioning
* <b>userid</b> <small>(short)</small> - the person that just finished transitioning




== heal_begin ==
== heal_begin ==


* <b>userid</b> (short) - person doing the healing
* <b>userid</b> <small>(short)</small> - person doing the healing
* <b>subject</b> (short) - person being healed
* <b>subject</b> <small>(short)</small> - person being healed


== heal_success ==
== heal_success ==


* <b>userid</b> (short) - person doing the healing
* <b>userid</b> <small>(short)</small> - person doing the healing
* <b>subject</b> (short) - person being healed
* <b>subject</b> <small>(short)</small> - person being healed
* <b>health_restored</b> (short) - amount of health restored
* <b>health_restored</b> <small>(short)</small> - amount of health restored


== heal_end ==
== heal_end ==
{{eventnote|Issues|subject is broken for this event, it always appears to be the player doing the healing}}
{{eventnote|Issues|subject is broken for this event, it always appears to be the player doing the healing}}


* <b>userid</b> (short) - person doing the healing
* <b>userid</b> <small>(short)</small> - person doing the healing
* <b>subject</b> (short) - person being healed
* <b>subject</b> <small>(short)</small> - person being healed




== heal_interrupted ==
== heal_interrupted ==


* <b>userid</b> (short) - person who was being healed, but moved.
* <b>userid</b> <small>(short)</small> - person who was being healed, but moved.
* <b>subject</b> (short) - person being healed
* <b>subject</b> <small>(short)</small> - person being healed


== ammo_pack_used ==
== ammo_pack_used ==


* <b>userid</b> (short) - person giving the ammo
* <b>userid</b> <small>(short)</small> - person giving the ammo
* <b>subject</b> (short) - person receiving ammo
* <b>subject</b> <small>(short)</small> - person receiving ammo


== give_weapon ==
== give_weapon ==


* <b>userid</b> (short) - The giver of the weapon
* <b>userid</b> <small>(short)</small> - The giver of the weapon
* <b>recipient</b> (short) - The recipient of the weapon
* <b>recipient</b> <small>(short)</small> - The recipient of the weapon
* <b>weapon</b> (short) - The ID of the weapon given
* <b>weapon</b> <small>(short)</small> - The ID of the weapon given


== pills_used ==
== pills_used ==


* <b>userid</b> (short) - person who had the pills
* <b>userid</b> <small>(short)</small> - person who had the pills
* <b>subject</b> (short) - person swallowing the pills
* <b>subject</b> <small>(short)</small> - person swallowing the pills


== pills_used_fail ==
== pills_used_fail ==


* <b>userid</b> (short) - person who tried to use the pills
* <b>userid</b> <small>(short)</small> - person who tried to use the pills


== ammo_pack_used_fail_no_weapon ==
== ammo_pack_used_fail_no_weapon ==


* <b>userid</b> (short) - person who tried to use the ammo pack
* <b>userid</b> <small>(short)</small> - person who tried to use the ammo pack
* <b>subject</b> (short) - person it failed to help
* <b>subject</b> <small>(short)</small> - person it failed to help


== ammo_pack_used_fail_full ==
== ammo_pack_used_fail_full ==


* <b>userid</b> (short) - person who tried to use the ammo pack
* <b>userid</b> <small>(short)</small> - person who tried to use the ammo pack
* <b>subject</b> (short) - person it failed to help
* <b>subject</b> <small>(short)</small> - person it failed to help


== ammo_pack_used_fail_doesnt_use_ammo ==
== ammo_pack_used_fail_doesnt_use_ammo ==


* <b>userid</b> (short) - person who tried to use the ammo pack
* <b>userid</b> <small>(short)</small> - person who tried to use the ammo pack
* <b>subject</b> (short) - person it failed to help
* <b>subject</b> <small>(short)</small> - person it failed to help


== ammo_pile_weapon_cant_use_ammo ==
== ammo_pile_weapon_cant_use_ammo ==


* <b>userid</b> (short) - person who tried to use an ammo pile with a grenade launcher
* <b>userid</b> <small>(short)</small> - person who tried to use an ammo pile with a grenade launcher


== defibrillator_begin ==
== defibrillator_begin ==


* <b>userid</b> (short) - person who is defibrillating.
* <b>userid</b> <small>(short)</small> - person who is defibrillating.
* <b>subject</b> (short) - person being revived
* <b>subject</b> <small>(short)</small> - person being revived


== defibrillator_used ==
== defibrillator_used ==


* <b>userid</b> (short) - person who used the defibrillator
* <b>userid</b> <small>(short)</small> - person who used the defibrillator
* <b>subject</b> (short) - person it helped
* <b>subject</b> <small>(short)</small> - person it helped


== defibrillator_used_fail ==
== defibrillator_used_fail ==


* <b>userid</b> (short) - person who tried to use the defibrillator
* <b>userid</b> <small>(short)</small> - person who tried to use the defibrillator
* <b>subject</b> (short) - person it failed to help
* <b>subject</b> <small>(short)</small> - person it failed to help


== defibrillator_interrupted ==
== defibrillator_interrupted ==


* <b>userid</b> (short) - person who was defibrillating, but moved.
* <b>userid</b> <small>(short)</small> - person who was defibrillating, but moved.
* <b>subject</b> (short) - person being revived
* <b>subject</b> <small>(short)</small> - person being revived


== upgrade_pack_begin ==
== upgrade_pack_begin ==


* <b>userid</b> (short) - person who is deploying the pack
* <b>userid</b> <small>(short)</small> - person who is deploying the pack


== upgrade_pack_used ==
== upgrade_pack_used ==


* <b>upgradeid</b> (short) -  
* <b>upgradeid</b> <small>(short)</small> -  
* <b>userid</b> (short) - person who is deploying the pack
* <b>userid</b> <small>(short)</small> - person who is deploying the pack


== upgrade_item_already_used ==
== upgrade_item_already_used ==


* <b>userid</b> (short) - person who tried to use an ammo upgrade twice
* <b>userid</b> <small>(short)</small> - person who tried to use an ammo upgrade twice
* <b>upgradeclass</b> (string) - classname of the upgrade we tried to use
* <b>upgradeclass</b> <small>(string)</small> - classname of the upgrade we tried to use


== upgrade_failed_no_primary ==
== upgrade_failed_no_primary ==


* <b>userid</b> (short) - person who tried to use an upgrade without having a primary weapon
* <b>userid</b> <small>(short)</small> - person who tried to use an upgrade without having a primary weapon
* <b>upgrade</b> (string) - name of the upgrade we tried to use, eg "INCENDIARY_AMMO"
* <b>upgrade</b> <small>(string)</small> - name of the upgrade we tried to use, eg "INCENDIARY_AMMO"


== dead_survivor_visible ==
== dead_survivor_visible ==


* <b>userid</b> (short) - The player who sees the entity
* <b>userid</b> <small>(short)</small> - The player who sees the entity
* <b>subject</b> (long) - Entindex of the entity they see
* <b>subject</b> <small>(long)</small> - Entindex of the entity they see
* <b>deadplayer</b> (short) - user id of the dead player represented
* <b>deadplayer</b> <small>(short)</small> - user id of the dead player represented


== adrenaline_used ==
== adrenaline_used ==


* <b>userid</b> (short) - person who had and used the adrenaline
* <b>userid</b> <small>(short)</small> - person who had and used the adrenaline


== revive_begin ==
== revive_begin ==


* <b>userid</b> (short) - person doing the reviving
* <b>userid</b> <small>(short)</small> - person doing the reviving
* <b>subject</b> (short) - person being revived
* <b>subject</b> <small>(short)</small> - person being revived


== revive_success ==
== revive_success ==


* <b>userid</b> (short) - person doing the reviving
* <b>userid</b> <small>(short)</small> - person doing the reviving
* <b>subject</b> (short) - person who was revived
* <b>subject</b> <small>(short)</small> - person who was revived
* <b>lastlife</b> (bool) - person revived will die if they fall again
* <b>lastlife</b> <small>(bool)</small> - person revived will die if they fall again
* <b>ledge_hang</b> (bool) - 1 if person revived was ledge hanging
* <b>ledge_hang</b> <small>(bool)</small> - 1 if person revived was ledge hanging


== revive_end ==
== revive_end ==


* <b>userid</b> (short) - person doing the reviving
* <b>userid</b> <small>(short)</small> - person doing the reviving
* <b>subject</b> (short) - person being revived
* <b>subject</b> <small>(short)</small> - person being revived
* <b>ledge_hang</b> (bool) - person is ledge hanging
* <b>ledge_hang</b> <small>(bool)</small> - person is ledge hanging


== drag_begin ==
== drag_begin ==


* <b>userid</b> (short) - person doing the dragging
* <b>userid</b> <small>(short)</small> - person doing the dragging
* <b>subject</b> (short) - person being dragged
* <b>subject</b> <small>(short)</small> - person being dragged


== drag_end ==
== drag_end ==


* <b>userid</b> (short) - person doing the dragging
* <b>userid</b> <small>(short)</small> - person doing the dragging
* <b>subject</b> (short) - person being dragged
* <b>subject</b> <small>(short)</small> - person being dragged


== player_incapacitated ==
== player_incapacitated ==
when a player becomes incapacitated.  This is also called when a tank is killed.
when a player becomes incapacitated.  This is also called when a tank is killed.
* <b>userid</b> (short) - person who became incapacitated
* <b>userid</b> <small>(short)</small> - person who became incapacitated
* <b>attacker</b> (short) - user ID who made us incapacitated
* <b>attacker</b> <small>(short)</small> - user ID who made us incapacitated
* <b>attackerentid</b> (long) - if attacker not player, entindex of who made us incapacitated
* <b>attackerentid</b> <small>(long)</small> - if attacker not player, entindex of who made us incapacitated
* <b>weapon</b> (string) - weapon name attacker used
* <b>weapon</b> <small>(string)</small> - weapon name attacker used
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type


== player_incapacitated_start ==
== player_incapacitated_start ==
when a player is about to become incapacitated, so you can see his last living state
when a player is about to become incapacitated, so you can see his last living state
* <b>userid</b> (short) - person who became incapacitated
* <b>userid</b> <small>(short)</small> - person who became incapacitated
* <b>attacker</b> (short) - user ID who made us incapacitated
* <b>attacker</b> <small>(short)</small> - user ID who made us incapacitated
* <b>attackerentid</b> (long) - if attacker not player, entindex of who made us incapacitated
* <b>attackerentid</b> <small>(long)</small> - if attacker not player, entindex of who made us incapacitated
* <b>weapon</b> (string) - weapon name attacker used
* <b>weapon</b> <small>(string)</small> - weapon name attacker used
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type


== player_entered_start_area ==
== player_entered_start_area ==
when a player spawns into the player start area
when a player spawns into the player start area
* <b>userid</b> (short) - person who entered
* <b>userid</b> <small>(short)</small> - person who entered


== player_first_spawn ==
== player_first_spawn ==
when a player spawns for the first time in a given mission
when a player spawns for the first time in a given mission
* <b>userid</b> (short) - person who spawned
* <b>userid</b> <small>(short)</small> - person who spawned
* <b>map_name</b> (string) -  
* <b>map_name</b> <small>(string)</small> -  
* <b>isbot</b> (bool) -  
* <b>isbot</b> <small>(bool)</small> -  




== player_left_start_area ==
== player_left_start_area ==
when a player leaves the player start area
when a player leaves the player start area
* <b>userid</b> (short) - person who left
* <b>userid</b> <small>(short)</small> - person who left


== player_left_safe_area ==
== player_left_safe_area ==
when a player leaves the safe area
when a player leaves the safe area
* <b>userid</b> (short) - person who left
* <b>userid</b> <small>(short)</small> - person who left
* <b>playercount</b> (byte) -  
* <b>playercount</b> <small>(byte)</small> -  


== player_entered_checkpoint ==
== player_entered_checkpoint ==
when a basecombatcharacter enters a checkpoint area
when a basecombatcharacter enters a checkpoint area
* <b>userid</b> (short) - player who entered
* <b>userid</b> <small>(short)</small> - player who entered
* <b>entityid</b> (long) - If not a player, the entity index of the one entering
* <b>entityid</b> <small>(long)</small> - If not a player, the entity index of the one entering
* <b>door</b> (long) - Entindex of the checkpoint door the player entered to get here.
* <b>door</b> <small>(long)</small> - Entindex of the checkpoint door the player entered to get here.
* <b>area</b> (long) -  
* <b>area</b> <small>(long)</small> -  
* <b>doorname</b> (string) - name of the entity they see
* <b>doorname</b> <small>(string)</small> - name of the entity they see


== player_left_checkpoint ==
== player_left_checkpoint ==
when a player leaves a checkpoint area
when a player leaves a checkpoint area
* <b>userid</b> (short) - player who left
* <b>userid</b> <small>(short)</small> - player who left
* <b>entityid</b> (long) - If not a player, the entity index of the one exiting
* <b>entityid</b> <small>(long)</small> - If not a player, the entity index of the one exiting
* <b>area</b> (long) -  
* <b>area</b> <small>(long)</small> -  


== player_shoved ==
== player_shoved ==


* <b>userid</b> (short) - player index who was shoved
* <b>userid</b> <small>(short)</small> - player index who was shoved
* <b>attacker</b> (short) - player index who attacked them
* <b>attacker</b> <small>(short)</small> - player index who attacked them


== entity_shoved ==
== entity_shoved ==


* <b>entityid</b> (short) - the entity index of the one who was shoved
* <b>entityid</b> <small>(short)</small> - the entity index of the one who was shoved
* <b>attacker</b> (short) - player index who attacked them
* <b>attacker</b> <small>(short)</small> - player index who attacked them


== player_jump_apex ==
== player_jump_apex ==


* <b>userid</b> (short) - player who jumped
* <b>userid</b> <small>(short)</small> - player who jumped


== player_blocked ==
== player_blocked ==


* <b>userid</b> (short) - player index who was trying to move
* <b>userid</b> <small>(short)</small> - player index who was trying to move
* <b>blocker</b> (short) - player index who kept them from moving
* <b>blocker</b> <small>(short)</small> - player index who kept them from moving


== player_now_it ==
== player_now_it ==


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


== player_no_longer_it ==
== player_no_longer_it ==


* <b>userid</b> (short) - Player who is now no longer it
* <b>userid</b> <small>(short)</small> - Player who is now no longer it


== witch_harasser_set ==
== witch_harasser_set ==


* <b>userid</b> (short) - Player who woke up the witch
* <b>userid</b> <small>(short)</small> - Player who woke up the witch
* <b>witchid</b> (long) - Entindex of witch woken up
* <b>witchid</b> <small>(long)</small> - Entindex of witch woken up
* <b>first</b> (bool) - First time the witch set a harasser
* <b>first</b> <small>(bool)</small> - First time the witch set a harasser


== witch_spawn ==
== witch_spawn ==


* <b>witchid</b> (long) - Entindex of witch spawning right now.
* <b>witchid</b> <small>(long)</small> - Entindex of witch spawning right now.


== witch_killed ==
== witch_killed ==


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


== tank_spawn ==
== tank_spawn ==


* <b>userid</b> (short) - User ID of the tank spawning now
* <b>userid</b> <small>(short)</small> - User ID of the tank spawning now
* <b>tankid</b> (long) - Entindex of tank spawning right now.
* <b>tankid</b> <small>(long)</small> - Entindex of tank spawning right now.


== melee_kill ==
== melee_kill ==


* <b>userid</b> (short) - Player who bashed the infected
* <b>userid</b> <small>(short)</small> - Player who bashed the infected
* <b>entityid</b> (long) - Entindex of infected what got killed
* <b>entityid</b> <small>(long)</small> - Entindex of infected what got killed
* <b>ambush</b> (bool) - Infected was unaware when killed
* <b>ambush</b> <small>(bool)</small> - Infected was unaware when killed


== area_cleared ==
== area_cleared ==


* <b>userid</b> (short) - person who cleared the area
* <b>userid</b> <small>(short)</small> - person who cleared the area
* <b>area</b> (long) - id of the cleared area
* <b>area</b> <small>(long)</small> - id of the cleared area


== award_earned ==
== award_earned ==


* <b>userid</b> (short) - player who earned the award
* <b>userid</b> <small>(short)</small> - player who earned the award
* <b>entityid</b> (long) - client likes ent id
* <b>entityid</b> <small>(long)</small> - client likes ent id
* <b>subjectentid</b> (long) - entity id of other party in the award, if any
* <b>subjectentid</b> <small>(long)</small> - entity id of other party in the award, if any
* <b>award</b> (short) - id of award earned
* <b>award</b> <small>(short)</small> - id of award earned


== tongue_grab ==
== tongue_grab ==


* <b>userid</b> (short) - player who did the grabbing
* <b>userid</b> <small>(short)</small> - player who did the grabbing
* <b>victim</b> (short) - player that got grabbed
* <b>victim</b> <small>(short)</small> - player that got grabbed


== tongue_broke_bent ==
== tongue_broke_bent ==


* <b>userid</b> (short) - Tongue owner
* <b>userid</b> <small>(short)</small> - Tongue owner


== tongue_broke_victim_died ==
== tongue_broke_victim_died ==


* <b>userid</b> (short) - Tongue owner
* <b>userid</b> <small>(short)</small> - Tongue owner


== tongue_release ==
== tongue_release ==
Line 644: Line 644:
* Second firation will return distance and victim parameters as 0.}}
* Second firation will return distance and victim parameters as 0.}}


* <b>userid</b> (short) - The tongue owner
* <b>userid</b> <small>(short)</small> - The tongue owner
* <b>victim</b> (short) - The (now released) victim
* <b>victim</b> <small>(short)</small> - The (now released) victim
* <b>distance</b> (long) - Distance the victim was dragged.
* <b>distance</b> <small>(long)</small> - Distance the victim was dragged.




== choke_start ==
== choke_start ==


* <b>userid</b> (short) - The choker
* <b>userid</b> <small>(short)</small> - The choker
* <b>victim</b> (short) - The person being choked
* <b>victim</b> <small>(short)</small> - The person being choked


== choke_end ==
== choke_end ==


* <b>userid</b> (short) - The choker
* <b>userid</b> <small>(short)</small> - The choker
* <b>victim</b> (short) - The person being choked
* <b>victim</b> <small>(short)</small> - The person being choked




Line 669: Line 669:
{{eventnote|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.}}
{{eventnote|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.}}


* <b>userid</b> (short) - Who stopped it
* <b>userid</b> <small>(short)</small> - Who stopped it
* <b>victim</b> (short) - And who was being choked
* <b>victim</b> <small>(short)</small> - And who was being choked
* <b>smoker</b> (short) - The tongue owner
* <b>smoker</b> <small>(short)</small> - The tongue owner
* <b>release_type</b> (short) - How did it break?
* <b>release_type</b> <small>(short)</small> - How did it break?




Line 684: Line 684:
{{eventnote|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.}}
{{eventnote|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.}}


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




== lunge_shove ==
== lunge_shove ==


* <b>userid</b> (short) - player who did the lunging
* <b>userid</b> <small>(short)</small> - player who did the lunging
* <b>victim</b> (short) - player that got lunged
* <b>victim</b> <small>(short)</small> - player that got lunged


== lunge_pounce ==
== lunge_pounce ==


* <b>userid</b> (short) - player who did the lunging
* <b>userid</b> <small>(short)</small> - player who did the lunging
* <b>victim</b> (short) - player that got lunged
* <b>victim</b> <small>(short)</small> - player that got lunged
* <b>distance</b> (long) - Distance from pounce start to contact
* <b>distance</b> <small>(long)</small> - Distance from pounce start to contact
* <b>damage</b> (short) -  
* <b>damage</b> <small>(short)</small> -  


== pounce_end ==
== pounce_end ==


* <b>userid</b> (short) - Player who did the pouncing
* <b>userid</b> <small>(short)</small> - Player who did the pouncing
* <b>victim</b> (short) - And who was being pounced
* <b>victim</b> <small>(short)</small> - And who was being pounced


== pounce_stopped ==
== pounce_stopped ==
Line 716: Line 716:
}}
}}
{{eventnote|Issues|Shoving a hunter right after it pounces a survivor will not release the survivor, but the event will still fire.}}
{{eventnote|Issues|Shoving a hunter right after it pounces a survivor will not release the survivor, but the event will still fire.}}
* <b>userid</b> (short) - Who stopped it
* <b>userid</b> <small>(short)</small> - Who stopped it
* <b>victim</b> (short) - And who was being pounced
* <b>victim</b> <small>(short)</small> - And who was being pounced


== pounce_attempt_stopped ==
== pounce_attempt_stopped ==


* <b>userid</b> (short) - Who stopped it
* <b>userid</b> <small>(short)</small> - Who stopped it
* <b>weaponid</b> (short) - used weapon ID
* <b>weaponid</b> <small>(short)</small> - used weapon ID


== fatal_vomit ==
== fatal_vomit ==


* <b>userid</b> (short) - Who vomited
* <b>userid</b> <small>(short)</small> - Who vomited
* <b>victim</b> (short) - And who was killed or incapped
* <b>victim</b> <small>(short)</small> - And who was killed or incapped


== survivor_call_for_help ==
== survivor_call_for_help ==


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


== survivor_rescued ==
== survivor_rescued ==


* <b>rescuer</b> (short) - player that did the rescuing
* <b>rescuer</b> <small>(short)</small> - player that did the rescuing
* <b>victim</b> (short) - the survivor being rescued
* <b>victim</b> <small>(short)</small> - the survivor being rescued
* <b>dooridx</b> (long) - ent index of the rescue door
* <b>dooridx</b> <small>(long)</small> - ent index of the rescue door


== survivor_rescue_abandoned ==
== survivor_rescue_abandoned ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== relocated ==
== relocated ==


* <b>userid</b> (short) - player who was relocated
* <b>userid</b> <small>(short)</small> - player who was relocated


== respawning ==
== respawning ==


* <b>userid</b> (short) - player who started respawning
* <b>userid</b> <small>(short)</small> - player who started respawning


== tank_frustrated ==
== tank_frustrated ==


* <b>userid</b> (short) - player who was culled
* <b>userid</b> <small>(short)</small> - player who was culled


== weapon_given ==
== weapon_given ==


* <b>userid</b> (short) - player who got the weapon
* <b>userid</b> <small>(short)</small> - player who got the weapon
* <b>giver</b> (short) - player that did the giving
* <b>giver</b> <small>(short)</small> - player that did the giving
* <b>weapon</b> (short) - weapon id given
* <b>weapon</b> <small>(short)</small> - weapon id given
* <b>weaponentid</b> (short) - weapon entity id
* <b>weaponentid</b> <small>(short)</small> - weapon entity id


== weapon_drop ==
== weapon_drop ==
Line 767: Line 767:
{{eventnote|Related Events|Called before heal_success, defibrillator_used, upgrade_pack_used, but called after pills_used and adrenaline_used}}
{{eventnote|Related Events|Called before heal_success, defibrillator_used, upgrade_pack_used, but called after pills_used and adrenaline_used}}


* <b>userid</b> (short) - player who dropped the weapon
* <b>userid</b> <small>(short)</small> - player who dropped the weapon
* <b>item</b> (string) - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'
* <b>item</b> <small>(string)</small> - either a weapon such as 'tmp' or 'hegrenade', or an item such as 'nvgs'
* <b>propid</b> (short) - entindex of the dropped weapon
* <b>propid</b> <small>(short)</small> - entindex of the dropped weapon


== weapon_drop_to_prop ==
== weapon_drop_to_prop ==


* <b>userid</b> (short) - player who dropped the weapon
* <b>userid</b> <small>(short)</small> - player who dropped the weapon
* <b>item</b> (string) - weapon string "weapon_*"
* <b>item</b> <small>(string)</small> - weapon string "weapon_*"
* <b>propid</b> (short) - entindex of the dropped weapon
* <b>propid</b> <small>(short)</small> - entindex of the dropped weapon


== break_breakable ==
== break_breakable ==
Override from gameevents.res
Override from gameevents.res
* <b>userid</b> (short) - userid of breaker
* <b>userid</b> <small>(short)</small> - userid of breaker
* <b>entindex</b> (long) - entindex of thing breaking
* <b>entindex</b> <small>(long)</small> - entindex of thing breaking
* <b>material</b> (byte) - BREAK_GLASS, BREAK_WOOD, etc
* <b>material</b> <small>(byte)</small> - BREAK_GLASS, BREAK_WOOD, etc
* <b>hulkonly</b> (bool) - SF_BREAK_HULK_ONLY
* <b>hulkonly</b> <small>(bool)</small> - SF_BREAK_HULK_ONLY
* <b>achievement</b> (short) - tag to identify achievement on the client  
* <b>achievement</b> <small>(short)</small> - tag to identify achievement on the client  


== achievement_earned ==
== achievement_earned ==


* <b>player</b> (byte) - entindex of the player
* <b>player</b> <small>(byte)</small> - entindex of the player
* <b>achievement</b> (short) - achievement ID
* <b>achievement</b> <small>(short)</small> - achievement ID


== spec_target_updated ==
== spec_target_updated ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== spawner_give_item ==
== spawner_give_item ==
A spawner has given a player an item (weapon, pills, ammo, health kit, etc)
A spawner has given a player an item (weapon, pills, ammo, health kit, etc)
* <b>userid</b> (short) - Item recipient
* <b>userid</b> <small>(short)</small> - Item recipient
* <b>item</b> (string) - Name of item given
* <b>item</b> <small>(string)</small> - Name of item given
* <b>spawner</b> (long) - entindex of the spawner entity
* <b>spawner</b> <small>(long)</small> - entindex of the spawner entity


== create_panic_event ==
== create_panic_event ==
A panic event has been created, though not necessarily started
A panic event has been created, though not necessarily started
* <b>userid</b> (short) - player who was started the panic
* <b>userid</b> <small>(short)</small> - player who was started the panic


== explain_pills ==
== explain_pills ==


* <b>subject</b> (long) - The weapon_pain_pills spawner that will be indicated
* <b>subject</b> <small>(long)</small> - The weapon_pain_pills spawner that will be indicated


== explain_weapons ==
== explain_weapons ==


* <b>subject</b> (long) - The weapon_pain_pills spawner that will be indicated
* <b>subject</b> <small>(long)</small> - The weapon_pain_pills spawner that will be indicated


== entity_visible ==
== entity_visible ==


* <b>userid</b> (short) - The player who sees the entity
* <b>userid</b> <small>(short)</small> - The player who sees the entity
* <b>subject</b> (long) - Entindex of the entity they see
* <b>subject</b> <small>(long)</small> - Entindex of the entity they see
* <b>classname</b> (string) - Classname of the entity they see
* <b>classname</b> <small>(string)</small> - Classname of the entity they see
* <b>entityname</b> (string) - name of the entity they see
* <b>entityname</b> <small>(string)</small> - name of the entity they see


== weapon_spawn_visible ==
== weapon_spawn_visible ==


* <b>userid</b> (short) - The player who sees the entity
* <b>userid</b> <small>(short)</small> - The player who sees the entity
* <b>subject</b> (long) - Entindex of the entity they see
* <b>subject</b> <small>(long)</small> - Entindex of the entity they see
* <b>weaponname</b> (string) - weapon name, or "melee"
* <b>weaponname</b> <small>(string)</small> - weapon name, or "melee"
* <b>subtype</b> (string) - melee weapon name
* <b>subtype</b> <small>(string)</small> - melee weapon name


== boomer_near ==
== boomer_near ==


* <b>userid</b> (short) - The boomer
* <b>userid</b> <small>(short)</small> - The boomer
* <b>victim</b> (short) - The survivor whom the boomer has gotten very close to
* <b>victim</b> <small>(short)</small> - The survivor whom the boomer has gotten very close to


== explain_pre_radio ==
== explain_pre_radio ==
explain the rescue radio will remind you to ready for the finale
explain the rescue radio will remind you to ready for the finale
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== started_pre_radio ==
== started_pre_radio ==
explain the rescue radio will remind you to ready for the finale
explain the rescue radio will remind you to ready for the finale
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_radio ==
== explain_radio ==
explain the rescue radio will start the finale
explain the rescue radio will start the finale
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_gas_truck ==
== explain_gas_truck ==
explain how pulling the lever on the gas truck will start the finale
explain how pulling the lever on the gas truck will start the finale
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The lever
* <b>subject</b> <small>(long)</small> - The lever


== explain_panic_button ==
== explain_panic_button ==
explain that pressing this button will start a panic event.
explain that pressing this button will start a panic event.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The panic button
* <b>subject</b> <small>(long)</small> - The panic button


== explain_elevator_button ==
== explain_elevator_button ==
explain how to operate the hospital elevator button.
explain how to operate the hospital elevator button.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The button
* <b>subject</b> <small>(long)</small> - The button


== explain_lift_button ==
== explain_lift_button ==
explain how to operate the lift button.
explain how to operate the lift button.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The lift button
* <b>subject</b> <small>(long)</small> - The lift button


== explain_church_door ==
== explain_church_door ==
explain how to provoke the crazy church guy.
explain how to provoke the crazy church guy.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The saferoom door
* <b>subject</b> <small>(long)</small> - The saferoom door


== explain_emergency_door ==
== explain_emergency_door ==
explain how to open the emergency door.
explain how to open the emergency door.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The door
* <b>subject</b> <small>(long)</small> - The door


== explain_crane ==
== explain_crane ==
explain how to lower the box on the crane.
explain how to lower the box on the crane.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The lever/button
* <b>subject</b> <small>(long)</small> - The lever/button


== explain_bridge ==
== explain_bridge ==
explain how to close the gates to make a bridge.
explain how to close the gates to make a bridge.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The button
* <b>subject</b> <small>(long)</small> - The button


== explain_gas_can_panic ==
== explain_gas_can_panic ==
explain how to shoot the gas can.
explain how to shoot the gas can.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The gas can
* <b>subject</b> <small>(long)</small> - The gas can


== explain_van_panic ==
== explain_van_panic ==
explain how to start the van.
explain how to start the van.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The van
* <b>subject</b> <small>(long)</small> - The van


== explain_mainstreet ==
== explain_mainstreet ==
explain how to lower the forklift
explain how to lower the forklift
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The forklift
* <b>subject</b> <small>(long)</small> - The forklift


== explain_train_lever ==
== explain_train_lever ==
explain how to operate the train lever.
explain how to operate the train lever.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The lever on box car
* <b>subject</b> <small>(long)</small> - The lever on box car


== explain_disturbance ==
== explain_disturbance ==
explain that disturbances (car alarm) attract infected horde
explain that disturbances (car alarm) attract infected horde
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The source of disturbance
* <b>subject</b> <small>(long)</small> - The source of disturbance


== explain_scavenge_goal ==
== explain_scavenge_goal ==
explain where to put the scavenge mode items
explain where to put the scavenge mode items
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The collection device
* <b>subject</b> <small>(long)</small> - The collection device


== explain_scavenge_leave_area ==
== explain_scavenge_leave_area ==
explain that leaving the area, starts round
explain that leaving the area, starts round
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) - The entity
* <b>subject</b> <small>(long)</small> - The entity


== begin_scavenge_overtime ==
== begin_scavenge_overtime ==
Line 926: Line 926:
== scavenge_round_start ==
== scavenge_round_start ==
a scavenge round has begun
a scavenge round has begun
* <b>round</b> (byte) - round number, 1 based
* <b>round</b> <small>(byte)</small> - round number, 1 based
* <b>firsthalf</b> (bool) - start of the first half of the round
* <b>firsthalf</b> <small>(bool)</small> - start of the first half of the round




Line 944: Line 944:
== gascan_pour_blocked ==
== gascan_pour_blocked ==
can't pour the gas, someone else already is
can't pour the gas, someone else already is
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== gascan_pour_completed ==
== gascan_pour_completed ==
player finished pouring a can
player finished pouring a can
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== gascan_dropped ==
== gascan_dropped ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== gascan_pour_interrupted ==
== gascan_pour_interrupted ==
we got interuppted pouring the gas can
we got interuppted pouring the gas can
* <b>userid</b> (short) - person who interuppted us
* <b>userid</b> <small>(short)</small> - person who interuppted us


== scavenge_match_finished ==
== scavenge_match_finished ==


* <b>winners</b> (byte) - winner team
* <b>winners</b> <small>(byte)</small> - winner team


== versus_match_finished ==
== versus_match_finished ==


* <b>winners</b> (byte) - winner team
* <b>winners</b> <small>(byte)</small> - winner team


== use_target ==
== use_target ==
a new use target has been found
a new use target has been found
* <b>targetid</b> (long) - Entindex of the use target
* <b>targetid</b> <small>(long)</small> - Entindex of the use target
* <b>classname</b> (string) - classname of the use target
* <b>classname</b> <small>(string)</small> - classname of the use target
* <b>isprop</b> (bool) - is this a prop that can be carried
* <b>isprop</b> <small>(bool)</small> - is this a prop that can be carried


== player_use ==
== player_use ==
Line 976: Line 976:
{{eventnote|Related Events|If targetid is an item, item_pickup will be called prior to player_use}}
{{eventnote|Related Events|If targetid is an item, item_pickup will be called prior to player_use}}


* <b>userid</b> (short) - userid of user
* <b>userid</b> <small>(short)</small> - userid of user
* <b>targetid</b> (long) - Entindex of the used entity
* <b>targetid</b> <small>(long)</small> - Entindex of the used entity


== friendly_fire ==
== friendly_fire ==


* <b>attacker</b> (short) - player who fired the weapon
* <b>attacker</b> <small>(short)</small> - player who fired the weapon
* <b>victim</b> (short) - player who got shot
* <b>victim</b> <small>(short)</small> - player who got shot
* <b>guilty</b> (short) - player who was at fault
* <b>guilty</b> <small>(short)</small> - player who was at fault
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type


== gameinstructor_draw ==
== gameinstructor_draw ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== gameinstructor_nodraw ==
== gameinstructor_nodraw ==


* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  


== request_weapon_stats ==
== request_weapon_stats ==


* <b>userid</b> (short) - userid of user requesting their stats
* <b>userid</b> <small>(short)</small> - userid of user requesting their stats


== player_talking_state ==
== player_talking_state ==


* <b>player</b> (byte) -  
* <b>player</b> <small>(byte)</small> -  
* <b>istalking</b> (bool) -  
* <b>istalking</b> <small>(bool)</small> -  


== weapon_pickup ==
== weapon_pickup ==
client event for player has picked up a weapon. If that does not work, try using the "item_pickup" event.
client event for player has picked up a weapon. If that does not work, try using the "item_pickup" event.
* <b>context</b> (byte) - split screen message context
* <b>context</b> <small>(byte)</small> - split screen message context
* <b>weaponid</b> (byte) -  
* <b>weaponid</b> <small>(byte)</small> -  
* <b>weaponslot</b> (byte) -  
* <b>weaponslot</b> <small>(byte)</small> -  
* <b>dropped_by_infected</b> (byte) - gender of the Infected that dropped the weapon
* <b>dropped_by_infected</b> <small>(byte)</small> - gender of the Infected that dropped the weapon




== hunter_punched ==
== hunter_punched ==


* <b>userid</b> (short) - player who caused ignition
* <b>userid</b> <small>(short)</small> - player who caused ignition
* <b>hunteruserid</b> (long) - user ID of Hunter
* <b>hunteruserid</b> <small>(long)</small> - user ID of Hunter
* <b>islunging</b> (bool) - TRUE if the Hunter was in the act of lunging
* <b>islunging</b> <small>(bool)</small> - TRUE if the Hunter was in the act of lunging


== hunter_headshot ==
== hunter_headshot ==


* <b>userid</b> (short) - player who made the headshot
* <b>userid</b> <small>(short)</small> - player who made the headshot
* <b>hunteruserid</b> (long) - user ID of Hunter
* <b>hunteruserid</b> <small>(long)</small> - user ID of Hunter
* <b>islunging</b> (bool) - TRUE if the Hunter was in the act of lunging
* <b>islunging</b> <small>(bool)</small> - TRUE if the Hunter was in the act of lunging


== zombie_ignited ==
== zombie_ignited ==


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


== boomer_exploded ==
== boomer_exploded ==


* <b>userid</b> (short) - Boomer that exploded
* <b>userid</b> <small>(short)</small> - Boomer that exploded
* <b>attacker</b> (short) - player who caused the explosion
* <b>attacker</b> <small>(short)</small> - player who caused the explosion
* <b>splashedbile</b> (bool) - Exploding boomer splashed bile on Survivors
* <b>splashedbile</b> <small>(bool)</small> - Exploding boomer splashed bile on Survivors


== non_pistol_fired ==
== non_pistol_fired ==


* <b>userid</b> (short) - User that fired a non-pistol weapon
* <b>userid</b> <small>(short)</small> - User that fired a non-pistol weapon


== weapon_fire_at_40 ==
== weapon_fire_at_40 ==
This is networked, special event for game instructor
This is networked, special event for game instructor
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>weapon</b> (string) - used weapon name
* <b>weapon</b> <small>(string)</small> - used weapon name
* <b>weaponid</b> (short) - used weapon ID
* <b>weaponid</b> <small>(short)</small> - used weapon ID
* <b>count</b> (short) - number of bullets
* <b>count</b> <small>(short)</small> - number of bullets




== total_ammo_below_40 ==
== total_ammo_below_40 ==
sent for any ammo type, except those with max ammo 1, or infinite ammo, like pistols
sent for any ammo type, except those with max ammo 1, or infinite ammo, like pistols
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== player_hurt_concise ==
== player_hurt_concise ==
Abbreviated version of 'player_hurt' that is networked
Abbreviated version of 'player_hurt' that is networked
* <b>userid</b> (short) - user ID who was hurt
* <b>userid</b> <small>(short)</small> - user ID who was hurt
* <b>attackerentid</b> (long) - entity id who attacked, if attacker not a player, and userid therefore invalid
* <b>attackerentid</b> <small>(long)</small> - entity id who attacked, if attacker not a player, and userid therefore invalid
* <b>type</b> (long) - damage type
* <b>type</b> <small>(long)</small> - damage type
* <b>dmg_health</b> (short) - damage done to health
* <b>dmg_health</b> <small>(short)</small> - damage done to health




== tank_killed ==
== tank_killed ==


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




== tank_rock_killed ==
== tank_rock_killed ==


* <b>userid</b> (short) - user id of killer
* <b>userid</b> <small>(short)</small> - user id of killer




== achievement_write_failed ==
== achievement_write_failed ==
Used for a notification message when an achievement fails to write
Used for a notification message when an achievement fails to write
* <b>None</b> (None) -  
* <b>None</b> <small>(None)</small> -  




== ghost_spawn_time ==
== ghost_spawn_time ==
Used for clients to know how long until they become a ghost (and can spawn)
Used for clients to know how long until they become a ghost (and can spawn)
* <b>userid</b> (short) - user ID of the player that is becoming a ghost
* <b>userid</b> <small>(short)</small> - user ID of the player that is becoming a ghost
* <b>spawntime</b> (short) - How long of a wait until player is a ghost
* <b>spawntime</b> <small>(short)</small> - How long of a wait until player is a ghost




Line 1,094: Line 1,094:
== explain_pre_drawbridge ==
== explain_pre_drawbridge ==
Point out the button that will start the gauntlet finale.
Point out the button that will start the gauntlet finale.
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_drawbridge ==
== explain_drawbridge ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_perimeter ==
== explain_perimeter ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_deactivate_alarm ==
== explain_deactivate_alarm ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_impound_lot ==
== explain_impound_lot ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_decon ==
== explain_decon ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_mall_window ==
== explain_mall_window ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_mall_alarm ==
== explain_mall_alarm ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_coaster ==
== explain_coaster ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_coaster_stop ==
== explain_coaster_stop ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_decon_wait ==
== explain_decon_wait ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== gauntlet_finale_start ==
== gauntlet_finale_start ==
Line 1,152: Line 1,152:
== explain_float ==
== explain_float ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_ferry_button ==
== explain_ferry_button ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_hatch_button ==
== explain_hatch_button ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_shack_button ==
== explain_shack_button ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== upgrade_incendiary_ammo ==
== upgrade_incendiary_ammo ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== upgrade_explosive_ammo ==
== upgrade_explosive_ammo ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== receive_upgrade ==
== receive_upgrade ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>upgrade</b> (string) -  
* <b>upgrade</b> <small>(string)</small> -  


== explain_vehicle_arrival ==
== explain_vehicle_arrival ==


* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== mounted_gun_start ==
== mounted_gun_start ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== mounted_gun_overheated ==
== mounted_gun_overheated ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== explain_burger_sign ==
== explain_burger_sign ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_carousel_button ==
== explain_carousel_button ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_carousel_destination ==
== explain_carousel_destination ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_stage_lighting ==
== explain_stage_lighting ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_stage_finale_start ==
== explain_stage_finale_start ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_stage_survival_start ==
== explain_stage_survival_start ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== ability_out_of_range ==
== ability_out_of_range ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>ability</b> (string) - ability classname
* <b>ability</b> <small>(string)</small> - ability classname


== explain_stage_pyrotechnics ==
== explain_stage_pyrotechnics ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c3m4_radio1 ==
== explain_c3m4_radio1 ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c3m4_radio2 ==
== explain_c3m4_radio2 ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_gates_are_open ==
== explain_gates_are_open ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c2m4_ticketbooth ==
== explain_c2m4_ticketbooth ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c3m4_rescue ==
== explain_c3m4_rescue ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_hotel_elevator_doors ==
== explain_hotel_elevator_doors ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_gun_shop_tanker ==
== explain_gun_shop_tanker ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_gun_shop ==
== explain_gun_shop ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_store_alarm ==
== explain_store_alarm ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_store_item ==
== explain_store_item ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_store_item_stop ==
== explain_store_item_stop ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_survival_generic ==
== explain_survival_generic ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_survival_alarm ==
== explain_survival_alarm ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_survival_radio ==
== explain_survival_radio ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_survival_carousel ==
== explain_survival_carousel ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_return_item ==
== explain_return_item ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_save_items ==
== explain_save_items ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== spit_burst ==
== spit_burst ==
Triggers even after Spitter's death.{{eventnote|Called|Triggers when Spitter's spit hits the ground.}}
Triggers even after Spitter's death.{{eventnote|Called|Triggers when Spitter's spit hits the ground.}}


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  




== entered_spit ==
== entered_spit ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== temp_c4m1_getgas ==
== temp_c4m1_getgas ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== temp_c4m3_return_to_boat ==
== temp_c4m3_return_to_boat ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c1m4_finale ==
== explain_c1m4_finale ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== c1m4_scavenge_instructions ==
== c1m4_scavenge_instructions ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== punched_clown ==
== punched_clown ==


* <b>userid</b> (short) - player who punched the clown
* <b>userid</b> <small>(short)</small> - player who punched the clown


== charger_killed ==
== charger_killed ==


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


== spitter_killed ==
== spitter_killed ==
{{eventnote|Called|Triggers in Spitter's death.}}
{{eventnote|Called|Triggers in Spitter's death.}}


* <b>userid</b> (short) - user ID of dead spitter
* <b>userid</b> <small>(short)</small> - user ID of dead spitter
* <b>attacker</b> (short) - user id of killer
* <b>attacker</b> <small>(short)</small> - user id of killer
* <b>has_spit</b> (bool) - TRUE if the spitter spit at some point
* <b>has_spit</b> <small>(bool)</small> - TRUE if the spitter spit at some point




== jockey_ride ==
== jockey_ride ==


* <b>userid</b> (short) - player who did the lunging
* <b>userid</b> <small>(short)</small> - player who did the lunging
* <b>victim</b> (short) - player that got lunged
* <b>victim</b> <small>(short)</small> - player that got lunged


== jockey_ride_end ==
== jockey_ride_end ==
Line 1,390: Line 1,390:
* Using Stagger() on the survivor will return rescuer parameter as the survivor's userid.}}
* Using Stagger() on the survivor will return rescuer parameter as the survivor's userid.}}


* <b>userid</b> (short) - player who did the lunging
* <b>userid</b> <small>(short)</small> - player who did the lunging
* <b>victim</b> (short) - player that got lunged
* <b>victim</b> <small>(short)</small> - player that got lunged
* <b>rescuer</b> (short) - Who stopped it
* <b>rescuer</b> <small>(short)</small> - Who stopped it
* <b>ride_length</b> (float) - Duration of our ride
* <b>ride_length</b> <small>(float)</small> - Duration of our ride




== jockey_punched ==
== jockey_punched ==


* <b>userid</b> (short) - user ID of player that shoved the jockey
* <b>userid</b> <small>(short)</small> - user ID of player that shoved the jockey
* <b>jockeyuserid</b> (long) - user ID of Jockey
* <b>jockeyuserid</b> <small>(long)</small> - user ID of Jockey
* <b>islunging</b> (bool) -  TRUE if Jockey was in the act of lunging
* <b>islunging</b> <small>(bool)</small> -  TRUE if Jockey was in the act of lunging


== jockey_headshot ==
== jockey_headshot ==


* <b>userid</b> (short) - user ID of player that landed a headshot on the Jockey
* <b>userid</b> <small>(short)</small> - user ID of player that landed a headshot on the Jockey
* <b>jockeyuserid</b> (long) - user ID of Jockey
* <b>jockeyuserid</b> <small>(long)</small> - user ID of Jockey
* <b>islunging</b> (bool) -  TRUE if Jockey was in the act of lunging
* <b>islunging</b> <small>(bool)</small> -  TRUE if Jockey was in the act of lunging


== jockey_killed ==
== jockey_killed ==


* <b>userid</b> (short) - user ID of dead jockey
* <b>userid</b> <small>(short)</small> - user ID of dead jockey
* <b>attacker</b> (short) - user id of killer
* <b>attacker</b> <small>(short)</small> - user id of killer
* <b>weapon</b> (string) - weapon name
* <b>weapon</b> <small>(string)</small> - weapon name


== non_melee_fired ==
== non_melee_fired ==


* <b>userid</b> (short) - User that fired a non-melee weapon
* <b>userid</b> <small>(short)</small> - User that fired a non-melee weapon


== infected_decapitated ==
== infected_decapitated ==


* <b>userid</b> (short) - userid of the player who did the decapitation
* <b>userid</b> <small>(short)</small> - userid of the player who did the decapitation
* <b>weapon</b> (string) - melee weapon name
* <b>weapon</b> <small>(string)</small> - melee weapon name




== upgrade_pack_added ==
== upgrade_pack_added ==


* <b>upgradeid</b> (short) -  
* <b>upgradeid</b> <small>(short)</small> -  
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== vomit_bomb_tank ==
== vomit_bomb_tank ==


* <b>userid</b> (short) - userid of the player who used the bomb
* <b>userid</b> <small>(short)</small> - userid of the player who used the bomb


== triggered_car_alarm ==
== triggered_car_alarm ==


* <b>userid</b> (short) - user ID of player who activated car alarm
* <b>userid</b> <small>(short)</small> - user ID of player who activated car alarm


== panic_event_finished ==
== panic_event_finished ==
Line 1,444: Line 1,444:
{{eventnote|Issues|Can be called after charger_charge_end. Use ability_use for an alternative start to end relationship.}}
{{eventnote|Issues|Can be called after charger_charge_end. Use ability_use for an alternative start to end relationship.}}


* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger




== charger_charge_end ==
== charger_charge_end ==


* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger


== charger_carry_start ==
== charger_carry_start ==
The moment when the charger grabs a survivor
The moment when the charger grabs a survivor
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) - user ID of the player who was charged
* <b>victim</b> <small>(short)</small> - user ID of the player who was charged


== charger_carry_end ==
== charger_carry_end ==
The moment when the charger stops charging a survivor (and will soon start pummeling)
The moment when the charger stops charging a survivor (and will soon start pummeling)
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) - user ID of the player who was charged
* <b>victim</b> <small>(short)</small> - user ID of the player who was charged


== charger_carry_kill ==
== charger_carry_kill ==
When a charger kills a survivor with a carry.
When a charger kills a survivor with a carry.
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) - user ID of the victim
* <b>victim</b> <small>(short)</small> - user ID of the victim




== charger_impact ==
== charger_impact ==
When a charger impacts a survivor they aren't carrying
When a charger impacts a survivor they aren't carrying
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) - user ID of the player who was impacted
* <b>victim</b> <small>(short)</small> - user ID of the player who was impacted


== charger_pummel_start ==
== charger_pummel_start ==
The moment when the charger starts pummeling a survivor
The moment when the charger starts pummeling a survivor
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) - user ID of the player who was charged
* <b>victim</b> <small>(short)</small> - user ID of the player who was charged


== charger_pummel_end ==
== charger_pummel_end ==
When the charger is cleared from the survivor or the survivor dies.
When the charger is cleared from the survivor or the survivor dies.
* <b>userid</b> (short) - user ID of the charger
* <b>userid</b> <small>(short)</small> - user ID of the charger
* <b>victim</b> (short) -  
* <b>victim</b> <small>(short)</small> -  
* <b>rescuer</b> (short) - user ID of the player who rescued them
* <b>rescuer</b> <small>(short)</small> - user ID of the player who rescued them


== strongman_bell_knocked_off ==
== strongman_bell_knocked_off ==
The arcade bell on c2m4_barns
The arcade bell on c2m4_barns
* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (short) -  
* <b>subject</b> <small>(short)</small> -  


== molotov_thrown ==
== molotov_thrown ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== gas_can_forced_drop ==
== gas_can_forced_drop ==


* <b>userid</b> (short) - player that forced the drop
* <b>userid</b> <small>(short)</small> - player that forced the drop
* <b>victim</b> (short) - player that dropped it
* <b>victim</b> <small>(short)</small> - player that dropped it


== explain_need_gnome_to_continue ==
== explain_need_gnome_to_continue ==


* <b>none</b> (none) -  
* <b>none</b> <small>(none)</small> -  


== explain_survivor_glows_disabled ==
== explain_survivor_glows_disabled ==


* <b>userid</b> (short) - The player we're explaining to
* <b>userid</b> <small>(short)</small> - The player we're explaining to


== explain_item_glows_disabled ==
== explain_item_glows_disabled ==


* <b>userid</b> (short) - The player we're explaining to
* <b>userid</b> <small>(short)</small> - The player we're explaining to


== explain_rescue_disabled ==
== explain_rescue_disabled ==


* <b>userid</b> (short) - The player we're explaining to
* <b>userid</b> <small>(short)</small> - The player we're explaining to


== explain_bodyshots_reduced ==
== explain_bodyshots_reduced ==


* <b>userid</b> (short) - The player we're explaining to
* <b>userid</b> <small>(short)</small> - The player we're explaining to


== explain_witch_instant_kill ==
== explain_witch_instant_kill ==


* <b>userid</b> (short) - The player we're explaining to
* <b>userid</b> <small>(short)</small> - The player we're explaining to


== set_instructor_group_enabled ==
== set_instructor_group_enabled ==


* <b>group</b> (string) -  
* <b>group</b> <small>(string)</small> -  
* <b>enabled</b> (short) -  
* <b>enabled</b> <small>(short)</small> -  


== stashwhacker_game_won ==
== stashwhacker_game_won ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (short) -  
* <b>subject</b> <small>(short)</small> -  


== versus_marker_reached ==
== versus_marker_reached ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>marker</b> (short) -  
* <b>marker</b> <small>(short)</small> -  


== start_score_animation ==
== start_score_animation ==
Line 1,544: Line 1,544:
== scavenge_gas_can_destroyed ==
== scavenge_gas_can_destroyed ==


* <b>userid</b> (short) - The player that destroyed it
* <b>userid</b> <small>(short)</small> - The player that destroyed it


== explain_sewer_gate ==
== explain_sewer_gate ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_sewer_run ==
== explain_sewer_run ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== explain_c6m3_finale ==
== explain_c6m3_finale ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== finale_bridge_lowering ==
== finale_bridge_lowering ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  
* <b>subject</b> (long) -  
* <b>subject</b> <small>(long)</small> -  


== m60_streak_ended ==
== m60_streak_ended ==
I was holding down the m60 trigger, and now I'm not
I was holding down the m60 trigger, and now I'm not
* <b>none</b> (none) -  
* <b>none</b> <small>(none)</small> -  


== chair_charged ==
== chair_charged ==


* <b>userid</b> (short) -  
* <b>userid</b> <small>(short)</small> -  


== song_played ==
== song_played ==


* <b>none</b> (none) -  
* <b>none</b> <small>(none)</small> -  


== foot_locker_opened ==
== foot_locker_opened ==


* <b>userid</b> (short) -
* <b>userid</b> <small>(short)</small> -

Revision as of 04:49, 25 June 2024

English (en)中文 (zh)
Left 4 Dead 2 Level Creation
Red x.png
This template (and its redirect) is Wikipedia icon Deprecated. Its use is not recommended and its functionality may be compromised.
You can help our editors by replacing or deleting this template on the Pages that use this template. Once no more pages use this template, it should be Marked for deletion.

Additional notes:
Use #switch parser function instead. Example
{{#switch: {{language}}
| #default = English
| ja = 日本語
| zh-tw = 中文(台灣)
‎}}

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_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

  • upgradeid (short) -
  • 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

  • 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.

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

  • 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

  • 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.

  • userid (short) - user ID of the charger
  • victim (short) -
  • 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) -