Counter-Strike: Source/Scripting/Game Events

From Valve Developer Community
Jump to navigation Jump to search
VScript

This article lists game events in Counter-Strike Source. These were retrieved from 🖿serverevents.res, 🖿gameevents.res and 🖿modevents.res in the 🖿resource folder.

Warning.pngWarning:Some events have parameter 'class' which cannot be accessed with dot syntax, i.e. params.class, as class is a reserved word in Squirrel. Instead, use string indexing like so: params["class"]
Tip.pngTip:To see what events fire during the game, download this script (right click and Save Page), place it into your scripts/vscripts/ folder and run script_execute showevents in console.
Todo: Distinguish which events are clientside and/or serverside

achievement_earned

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

achievement_earned_local

  • achievement (short) - achievement ID

achievement_event

  • achievement_name (string) - non-localized name of achievement
  • cur_val (short) - # of steps toward achievement
  • max_val (short) - total # of steps in achievement

achievement_increment

  • achievement_id (long) - ID of achievement that went up
  • cur_val (short) - # of steps toward achievement
  • max_val (short) - total # of steps in achievement

ammo_pickup

  • ammo_index (long)
  • amount (long)
  • total (long)

base_player_teleported

  • entindex (short)

bomb_abortdefuse

  • userid (short) - player who was defusing

bomb_abortplant

  • userid (short) - player who is planting the bomb
  • site (short) - bombsite index

bomb_beep

  • entindex (long) - c4 entity

bomb_begindefuse

  • userid (short) - player who is defusing
  • haskit (bool)

bomb_beginplant

  • userid (short) - player who is planting the bomb
  • site (short) - bombsite index

bomb_defused

  • userid (short) - player who defused the bomb
  • site (short) - bombsite index

bomb_dropped

  • userid (short) - player who dropped the bomb

bomb_exploded

  • userid (short) - player who planted the bomb
  • site (short) - bombsite index

bomb_pickup

  • userid (short) - player who picked up the bomb

bomb_planted

  • userid (short) - player who planted the bomb
  • site (short) - bombsite index
  • posx (short) - position x
  • posy (short) - position y

bonus_updated

  • numadvanced (short)
  • numbronze (short)
  • numsilver (short)
  • numgold (short)

break_breakable

  • entindex (long)
  • userid (short)
  • material (byte) - BREAK_GLASS, BREAK_WOOD, etc

break_prop

  • entindex (long)
  • userid (short)

browse_replays

bullet_impact

Impact position of a bullet fired by a weapon. This is sent for every impact including penetration.

  • userid (short) - Player ID who fired
  • x (float) - world coordinate X
  • y (float) - world coordinate Y
  • z (float) - world coordinate Z

cart_updated

christmas_gift_grab

  • userid (short)

client_beginconnect

client tries to connect to server

  • address (string) - Name we used to connect to the server
  • ip (long)
  • port (short) - server port
  • source (string) - what caused us to attempt this connection? (blank for general command line, "serverbrowser", "quickplay", etc)

client_connected

client has completed the challenge / handshake process and is in SIGNONSTATE_CONNECTED

  • address (string) - Name we used to connect to the server
  • ip (long)
  • port (short) - server port

client_disconnect

client side disconnect message

  • message (string) - Why are we disconnecting? This could be a localization token or an English-language string

client_fullconnect

  • address (string) - Name we used to connect to the server
  • ip (long)
  • port (short) - server port

cs_win_panel_match

  • t_score (short)
  • ct_score (short)
  • t_kd (float)
  • ct_kd (float)
  • t_objectives_done (short)
  • ct_objectives_done (short)
  • t_money_earned (long)
  • ct_money_earned (long)

cs_win_panel_round

  • show_timer_defend (bool)
  • show_timer_attack (bool)
  • timer_time (short)
  • final_event (byte) - define in cs_gamerules.h
  • funfact_token (string)
  • funfact_player (short)
  • funfact_data1 (long)
  • funfact_data2 (long)
  • funfact_data3 (long)

door_moving

  • entindex (long)
  • userid (short)

econ_inventory_connected

enter_vehicle

  • vehicle (long) - entindex of the vehicle

entered_performance_mode

entity_killed

  • entindex_killed (long)
  • entindex_attacker (long)
  • entindex_inflictor (long)
  • damagebits (long)

flare_ignite_npc

  • entindex (long) - entity ignited

flashbang_detonate

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

freezecam_started

game_end

a game ended

  • winner (byte) - winner team/user id

game_init

sent when a new game is started

game_message

a message send by game logic to everyone

  • target (byte) - 0 = console, 1 = HUD
  • text (string) - the message text

game_newmap

send when new map is completely loaded

  • mapname (string) - map name

game_start

a new game starts

  • roundslimit (long) - max round
  • timelimit (long) - time limit
  • fraglimit (long) - frag limit
  • objective (string) - round objective

gameui_activate

gameui_hide

gc_lost_session

gc_new_session

grenade_bounce

  • userid (short)

hegrenade_detonate

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

helicopter_grenade_punt_miss

hide_freezepanel

hltv_changed_mode

  • oldmode (short)
  • newmode (short)
  • obs_target (short)

hltv_changed_target

  • mode (short)
  • old_target (short)
  • obs_target (short)

host_quit

hostage_call_for_help

  • hostage (short) - hostage entity index

hostage_follows

  • userid (short) - player who touched the hostage
  • hostage (short) - hostage entity index

hostage_hurt

  • userid (short) - player who hurt the hostage
  • hostage (short) - hostage entity index

hostage_killed

  • userid (short) - player who killed the hostage
  • hostage (short) - hostage entity index

hostage_rescued

  • userid (short) - player who rescued the hostage
  • hostage (short) - hostage entity index
  • site (short) - rescue site index

hostage_rescued_all

hostage_stops_following

  • userid (short) - player who rescued the hostage
  • hostage (short) - hostage entity index

inventory_updated

item_pickup

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

item_schema_initialized

leave_vehicle

  • vehicle (long) - entindex of the vehicle

match_end_conditions

  • frags (long)
  • max_rounds (long)
  • win_rounds (long)
  • time (long)

nav_blocked

  • area (long)
  • blocked (bool)

nav_generate

physgun_pickup

  • entindex (long) - entity picked up

player_activate

  • userid (short) - user ID on server

player_avenged_teammate

  • avenger_id (short)
  • avenged_player_id (short)

player_blind

  • userid (short)

player_changename

  • userid (short) - user ID on server
  • oldname (string) - players old (current) name
  • newname (string) - players new name

player_chat

a public player chat

  • teamonly (bool) - true if team only chat
  • userid (short) - chatting player
  • text (string) - chat text

player_class

a player changed his class

  • userid (short) - user ID on server
  • class (string) - new player class / model

player_connect

a new client connected

  • name (string) - player name
  • index (byte) - player slot (entity index-1)
  • userid (short) - user ID on server (unique on server)
  • networkid (string) - player network (i.e steam) id
  • address (string) - ip:port
  • bot (short) - is a bot

player_connect_client

a new client connected

  • name (string) - player name
  • index (byte) - player slot (entity index-1)
  • userid (short) - user ID on server (unique on server)
  • networkid (string) - player network (i.e steam) id
  • bot (short) - is a bot

player_death

a game event, name may be 32 characters long

  • userid (short) - user ID who died
  • attacker (short) - user ID who killed
  • weapon (string) - weapon name killer used
  • headshot (bool) - singals a headshot
  • dominated (short) - did killer dominate victim with this kill
  • revenge (short) - did killer get revenge on victim with this kill

player_decal

  • userid (short)

player_disconnect

a client was disconnected

  • userid (short) - user ID on server
  • reason (string) - "self", "kick", "ban", "cheat", "error"
  • name (string) - player name
  • networkid (string) - player network (i.e steam) id
  • bot (short) - is a bot

player_falldamage

  • userid (short)
  • damage (float)

player_footstep

  • userid (short)

player_hintmessage

  • hintmessage (string) - localizable string of a hint

player_hurt

  • userid (short) - player index who was hurt
  • attacker (short) - player index who attacked
  • health (byte) - remaining health points
  • armor (byte) - remaining armor points
  • weapon (string) - weapon name attacker used, if not the world
  • dmg_health (byte) - damage done to health
  • dmg_armor (byte) - damage done to armor
  • hitgroup (byte) - hitgroup that was damaged

player_info

a player changed his name

  • name (string) - player name
  • index (byte) - player slot (entity index-1)
  • userid (short) - user ID on server (unique on server)
  • networkid (string) - player network (i.e steam) id
  • bot (bool) - true if player is a AI bot

player_jump

  • userid (short)

player_radio

  • userid (short)
  • slot (short)

player_say

  • userid (short) - user ID on server
  • text (string) - the say text

player_score

players scores changed

  • userid (short) - user ID on server
  • kills (short) - # of kills
  • deaths (short) - # of deaths
  • score (short) - total game score

player_shoot

Note.pngNote:Not implemented, use weapon_fire instead.
  • userid (short) - user ID on server
  • weapon (byte) - weapon ID
  • mode (byte) - weapon mode

player_spawn

This event will be sent once when the player entity is created, i.e. they joined the server or they are loading in after a map change. In this case, their team is equal to 0 (unassigned). Each time afterwards, the event will only be fired when the player spawns alive on terrorist or counter-terrorist. This is also fired once when SourceTV is loaded in.

  • userid (short) - user ID on server

player_stats_updated

  • forceupload (bool)

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
  • autoteam (bool) - true if the player was auto assigned to the team
  • silent (bool) - if true wont print the team join messages
  • name (string) - player's name

player_use

Note.pngNote:Not implemented, instead hook the Use input
  • userid (short) - user ID on server
  • entity (short) - entity used by player

ragdoll_dissolved

  • entindex (long)

replay_saved

replay_youtube_stats

  • views (long)
  • likes (long)
  • favorited (long)

round_end

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

round_freeze_end

round_mvp

  • userid (short)
  • reason (short)

round_start

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

server_addban

  • name (string) - player name
  • userid (short) - user ID on server
  • networkid (string) - player network (i.e steam) id
  • ip (string) - IP address
  • duration (string) - length of the ban
  • by (string) - banned by...
  • kicked (bool) - whether the player was also kicked

server_changelevel_failed

  • levelname (string) - The level name that failed changelevel

server_cvar

a server console var has changed

  • cvarname (string) - cvar name, eg "mp_roundtime"
  • cvarvalue (string) - new cvar value

server_message

a generic server message

  • text (string) - the message text

server_removeban

  • networkid (string) - player network (i.e steam) id
  • ip (string) - IP address
  • by (string) - removed by...

server_shutdown

server shut down

  • reason (string) - reason why server was shut down

server_spawn

send once a server starts

  • hostname (string) - public host name
  • address (string) - hostame, IP or DNS name
  • ip (long)
  • port (short) - server port
  • game (string) - game dir
  • mapname (string) - map name
  • maxplayers (long) - max players
  • os (string) - WIN32, LINUX
  • dedicated (bool) - true if dedicated server
  • password (bool) - true if password protected

show_freezepanel

  • killer (short) - entindex of the killer entity

single_player_death

smokegrenade_detonate

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

spec_target_updated

store_pricesheet_updated

take_armor

  • amount (long)
  • total (long)

take_health

  • amount (long)
  • total (long)
  • entindex (long)

team_info

info about team

  • teamid (byte) - unique team id
  • teamname (string) - team name eg "Team Blue"

team_score

team score changed

  • teamid (byte) - team id
  • score (short) - total team score

teamplay_broadcast_audio

emits a sound to everyone on a team

  • team (byte) - unique team id
  • sound (string) - name of the sound to emit

teamplay_round_start

round restart

  • full_reset (bool) - is this a full reset of the map

user_data_downloaded

fired when achievements/stats are downloaded from Steam or XBox Live

vip_escaped

  • userid (short) - player who was the VIP

vip_killed

  • userid (short) - player who was the VIP
  • attacker (short) - user ID who killed the VIP

vote_cast

  • vote_option (byte) - which option the player voted on
  • team (short)
  • entityid (long) - entity id of the voter
  • voteidx (long)

vote_changed

  • vote_option1 (byte)
  • vote_option2 (byte)
  • vote_option3 (byte)
  • vote_option4 (byte)
  • vote_option5 (byte)
  • potentialVotes (byte)
  • voteidx (long)

vote_ended

vote_failed

  • team (byte)
  • voteidx (long)

vote_options

  • count (byte) - Number of options - up to MAX_VOTE_OPTIONS
  • option1 (string)
  • option2 (string)
  • option3 (string)
  • option4 (string)
  • option5 (string)
  • voteidx (long)

vote_passed

  • details (string)
  • param1 (string)
  • team (byte)
  • voteidx (long)

vote_started

  • issue (string)
  • param1 (string)
  • team (byte)
  • initiator (long) - entity id of the player who initiated the vote
  • voteidx (long)

weapon_equipped

  • class (string)
  • entindex (long)
  • owner_entindex (long)

weapon_fire

Sent when a weapon is fired. Also sent when attacking with the knife.

  • userid (short)
  • weapon (string) - weapon name used

weapon_fire_on_empty

Sent when a weapon is attempted to be fired with no ammo remaining.

  • userid (short)
  • weapon (string) - weapon name used

weapon_reload

  • userid (short)

weapon_zoom

  • userid (short)