Half-Life 2: Deathmatch/Scripting/Game Events

From Valve Developer Community
Jump to navigation Jump to search
VScript

This article lists game events in Half-Life 2: Deathmatch. 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_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)

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

cart_updated

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

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

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

helicopter_grenade_punt_miss

hltv_changed_mode

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

hltv_changed_target

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

host_quit

inventory_updated

item_schema_initialized

leave_vehicle

  • vehicle (long) - entindex of the vehicle

physgun_pickup

  • entindex (long) - entity picked up

player_activate

  • userid (short) - user ID on server

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 - we should only really have server listeners for this, due to the IP being exposed

  • 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 charaters long

  • userid (short) - user ID who died
  • attacker (short) - user ID who killed
  • weapon (string) - weapon name killed used

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

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

player shoot his weapon

  • userid (short) - user ID on server
  • weapon (byte) - weapon ID
  • mode (byte) - weapon mode

player_spawn

player spawned in game

  • userid (short) - user ID on server

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

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

single_player_death

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

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)