Skip to content

netmessages.proto

Core Source 2 network protocol messages exchanged between client and server. Includes server-info negotiation, entity delta updates, string tables, voice data, and game-event delivery. Client→Server messages use the CLC_ prefix; Server→Client use SVC_.

CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · schema format 2.2

Group: CS2 wire formatMessages: 63 top-level, 74 totalEnums: 11 top-level, 12 total

Imports: networkbasetypes.proto, source2_steam_stats.proto

Wire ids

Every message in this file that a wire-id enum constant maps to, by the join rule described on the Protobufs index.

MessageEnum constantValue
CCLCMsg_ClientInfoCLC_Messages.clc_ClientInfo20
CCLCMsg_MoveCLC_Messages.clc_Move21
CCLCMsg_VoiceDataCLC_Messages.clc_VoiceData22
CCLCMsg_BaselineAckCLC_Messages.clc_BaselineAck23
CCLCMsg_RespondCvarValueCLC_Messages.clc_RespondCvarValue25
CCLCMsg_LoadingProgressCLC_Messages.clc_LoadingProgress27
CCLCMsg_SplitPlayerConnectCLC_Messages.clc_SplitPlayerConnect28
CCLCMsg_SplitPlayerDisconnectCLC_Messages.clc_SplitPlayerDisconnect30
CCLCMsg_ServerStatusCLC_Messages.clc_ServerStatus31
CCLCMsg_RequestPauseCLC_Messages.clc_RequestPause33
CCLCMsg_CmdKeyValuesCLC_Messages.clc_CmdKeyValues34
CCLCMsg_RconServerDetailsCLC_Messages.clc_RconServerDetails35
CCLCMsg_DiagnosticCLC_Messages.clc_Diagnostic37
CSVCMsg_ServerInfoSVC_Messages.svc_ServerInfo40
CSVCMsg_ClassInfoSVC_Messages.svc_ClassInfo42
CSVCMsg_SetPauseSVC_Messages.svc_SetPause43
CSVCMsg_VoiceInitSVC_Messages.svc_VoiceInit46
CSVCMsg_PrintSVC_Messages.svc_Print48
CSVCMsg_SoundsSVC_Messages.svc_Sounds49
CSVCMsg_PrefetchSVC_Messages.svc_Prefetch56
CSVCMsg_SetViewSVC_Messages.svc_SetView50
CSVCMsg_BSPDecalSVC_Messages.svc_BSPDecal53
CSVCMsg_SplitScreenSVC_Messages.svc_SplitScreen54
CSVCMsg_GetCvarValueSVC_Messages.svc_GetCvarValue58
CSVCMsg_MenuSVC_Messages.svc_Menu57
CSVCMsg_UserMessageSVC_Messages.svc_UserMessage72
CSVCMsg_PacketEntitiesSVC_Messages.svc_PacketEntities55
CSVCMsg_CreateStringTableSVC_Messages.svc_CreateStringTable44
CSVCMsg_UpdateStringTableSVC_Messages.svc_UpdateStringTable45
CSVCMsg_VoiceDataSVC_Messages.svc_VoiceData47
CSVCMsg_PacketReliableSVC_Messages.svc_PacketReliable61
CSVCMsg_FullFrameSplitSVC_Messages.svc_FullFrameSplit70
CSVCMsg_HLTVStatusSVC_Messages.svc_HLTVStatus62
CSVCMsg_ServerSteamIDSVC_Messages.svc_ServerSteamID63
CSVCMsg_CmdKeyValuesSVC_Messages.svc_CmdKeyValues52
CSVCMsg_RconServerDetailsSVC_Messages.svc_RconServerDetails71
CSVCMsg_PeerListSVC_Messages.svc_PeerList60
CSVCMsg_ClearAllStringTablesSVC_Messages.svc_ClearAllStringTables51
CSVCMsg_FlattenedSerializerSVC_Messages.svc_FlattenedSerializer41
CSVCMsg_StopSoundSVC_Messages.svc_StopSound59
CCLCMsg_HltvReplayCLC_Messages.clc_HltvReplay36
CSVCMsg_Broadcast_CommandSVC_Messages.svc_Broadcast_Command74
CSVCMsg_HltvFixupOperatorStatusSVC_Messages.svc_HltvFixupOperatorStatus75
CSVCMsg_NextMsgPredictedSVC_Messages.svc_NextMsgPredicted77

Enums

CLC_Messages

Schema entity: CLC_Messages

NameNumberMessage
clc_ClientInfo20CCLCMsg_ClientInfo
clc_Move21CCLCMsg_Move
clc_VoiceData22CCLCMsg_VoiceData
clc_BaselineAck23CCLCMsg_BaselineAck
clc_RespondCvarValue25CCLCMsg_RespondCvarValue
clc_LoadingProgress27CCLCMsg_LoadingProgress
clc_SplitPlayerConnect28CCLCMsg_SplitPlayerConnect
clc_SplitPlayerDisconnect30CCLCMsg_SplitPlayerDisconnect
clc_ServerStatus31CCLCMsg_ServerStatus
clc_RequestPause33CCLCMsg_RequestPause
clc_CmdKeyValues34CCLCMsg_CmdKeyValues
clc_RconServerDetails35CCLCMsg_RconServerDetails
clc_HltvReplay36CCLCMsg_HltvReplay
clc_Diagnostic37CCLCMsg_Diagnostic

SVC_Messages

Schema entity: SVC_Messages

NameNumberMessage
svc_ServerInfo40CSVCMsg_ServerInfo
svc_FlattenedSerializer41CSVCMsg_FlattenedSerializer
svc_ClassInfo42CSVCMsg_ClassInfo
svc_SetPause43CSVCMsg_SetPause
svc_CreateStringTable44CSVCMsg_CreateStringTable
svc_UpdateStringTable45CSVCMsg_UpdateStringTable
svc_VoiceInit46CSVCMsg_VoiceInit
svc_VoiceData47CSVCMsg_VoiceData
svc_Print48CSVCMsg_Print
svc_Sounds49CSVCMsg_Sounds
svc_SetView50CSVCMsg_SetView
svc_ClearAllStringTables51CSVCMsg_ClearAllStringTables
svc_CmdKeyValues52CSVCMsg_CmdKeyValues
svc_BSPDecal53CSVCMsg_BSPDecal
svc_SplitScreen54CSVCMsg_SplitScreen
svc_PacketEntities55CSVCMsg_PacketEntities
svc_Prefetch56CSVCMsg_Prefetch
svc_Menu57CSVCMsg_Menu
svc_GetCvarValue58CSVCMsg_GetCvarValue
svc_StopSound59CSVCMsg_StopSound
svc_PeerList60CSVCMsg_PeerList
svc_PacketReliable61CSVCMsg_PacketReliable
svc_HLTVStatus62CSVCMsg_HLTVStatus
svc_ServerSteamID63CSVCMsg_ServerSteamID
svc_FullFrameSplit70CSVCMsg_FullFrameSplit
svc_RconServerDetails71CSVCMsg_RconServerDetails
svc_UserMessage72CSVCMsg_UserMessage
svc_Broadcast_Command74CSVCMsg_Broadcast_Command
svc_HltvFixupOperatorStatus75CSVCMsg_HltvFixupOperatorStatus
svc_UserCmds76
svc_NextMsgPredicted77CSVCMsg_NextMsgPredicted

VoiceDataFormat_t

Schema entity: VoiceDataFormat_t

NameNumberMessage
VOICEDATA_FORMAT_STEAM0
VOICEDATA_FORMAT_ENGINE1
VOICEDATA_FORMAT_OPUS2

RequestPause_t

Schema entity: RequestPause_t

NameNumberMessage
RP_PAUSE0
RP_UNPAUSE1
RP_TOGGLEPAUSE2

PrefetchType

Schema entity: PrefetchType

NameNumberMessage
PFT_SOUND0

ESplitScreenMessageType

Schema entity: ESplitScreenMessageType

NameNumberMessage
MSG_SPLITSCREEN_ADDUSER0
MSG_SPLITSCREEN_REMOVEUSER1

EQueryCvarValueStatus

Schema entity: EQueryCvarValueStatus

NameNumberMessage
eQueryCvarValueStatus_ValueIntact0
eQueryCvarValueStatus_CvarNotFound1
eQueryCvarValueStatus_NotACvar2
eQueryCvarValueStatus_CvarProtected3

DIALOG_TYPE

Schema entity: DIALOG_TYPE

NameNumberMessage
DIALOG_MSG0
DIALOG_MENU1
DIALOG_TEXT2
DIALOG_ENTRY3
DIALOG_ASKCONNECT4

SVC_Messages_LowFrequency

Schema entity: SVC_Messages_LowFrequency

NameNumberMessage
svc_dummy600

Bidirectional_Messages

Schema entity: Bidirectional_Messages

NameNumberMessage
bi_RebroadcastGameEvent16
bi_RebroadcastSource17
bi_GameEvent_DEPRECATED18
bi_PredictionEvent19

ReplayEventType_t

Schema entity: ReplayEventType_t

NameNumberMessage
REPLAY_EVENT_CANCEL0
REPLAY_EVENT_DEATH1
REPLAY_EVENT_GENERIC2
REPLAY_EVENT_STUCK_NEED_FULL_UPDATE3
REPLAY_EVENT_VICTORY4

Messages

CCLCMsg_ClientInfo

Sent by the client immediately after the initial connection handshake to provide hardware/software capability information.

Wire id: CLC_Messages.clc_ClientInfo = 20

FieldNumberLabelTypeDefaultDescription
send_table_crc1optionalfixed32
server_count2optionaluint32
is_hltv3optionalbool
friends_id5optionaluint32
friends_name6optionalstring

CCLCMsg_Move

Primary per-tick user-command message carrying all player input: view angles, buttons pressed, tick number, and move delta. This is the heartbeat of the client→server input channel.

Wire id: CLC_Messages.clc_Move = 21

FieldNumberLabelTypeDefaultDescription
data3optionalbytes
last_command_number4optionaluint32

CMsgVoiceAudio

Referenced by (3): CCLCMsg_VoiceData, CP2P_Voice, CSVCMsg_VoiceData

FieldNumberLabelTypeDefaultDescription
format1optionalVoiceDataFormat_tVOICEDATA_FORMAT_STEAM
voice_data2optionalbytes
sequence_bytes3optionalint32
section_number4optionaluint32
sample_rate5optionaluint32
uncompressed_sample_offset6optionaluint32
num_packets7optionaluint32
packet_offsets8repeateduint32
voice_level9optionalfloat

CCLCMsg_VoiceData

Carries a compressed voice-audio packet from the client to the server for relay to nearby players.

Wire id: CLC_Messages.clc_VoiceData = 22

FieldNumberLabelTypeDefaultDescription
audio1optionalCMsgVoiceAudio
xuid2optionalfixed64
tick3optionaluint32

CCLCMsg_BaselineAck

Acknowledges that the client has received and applied the entity baseline snapshot up to a given tick, allowing the server to stop retransmitting baseline data.

Wire id: CLC_Messages.clc_BaselineAck = 23

FieldNumberLabelTypeDefaultDescription
baseline_tick1optionalint32
baseline_nr2optionalint32

CCLCMsg_ListenEvents

Registers which game-events this client wishes to receive (similar to CMsgSource1LegacyListenEvents but at the CLC layer).

FieldNumberLabelTypeDefaultDescription
event_mask1repeatedfixed32

CCLCMsg_RespondCvarValue

Client response to a CSVCMsg_GetCvarValue query; reports the current value of a convar requested by the server (e.g. for anti-cheat verification).

Wire id: CLC_Messages.clc_RespondCvarValue = 25

FieldNumberLabelTypeDefaultDescription
cookie1optionalint32
status_code2optionalint32
name3optionalstring
value4optionalstring

CCLCMsg_LoadingProgress

Periodic heartbeat sent by the client while loading a map, reporting the current loading percentage so the server can track all-clients-loaded state.

Wire id: CLC_Messages.clc_LoadingProgress = 27

FieldNumberLabelTypeDefaultDescription
progress1optionalint32

CCLCMsg_SplitPlayerConnect

Wire id: CLC_Messages.clc_SplitPlayerConnect = 28

Referenced by (1): C2S_CONNECT_Message

FieldNumberLabelTypeDefaultDescription
playername1optionalstring

CCLCMsg_SplitPlayerDisconnect

Wire id: CLC_Messages.clc_SplitPlayerDisconnect = 30

FieldNumberLabelTypeDefaultDescription
slot1optionalint32

CCLCMsg_ServerStatus

Wire id: CLC_Messages.clc_ServerStatus = 31

FieldNumberLabelTypeDefaultDescription
simplified1optionalbool

CCLCMsg_RequestPause

Client request to pause or unpause the server (only honoured when the client has appropriate privileges, e.g. tournament admin).

Wire id: CLC_Messages.clc_RequestPause = 33

FieldNumberLabelTypeDefaultDescription
pause_type1optionalRequestPause_tRP_PAUSE
pause_group2optionalint32

CCLCMsg_CmdKeyValues

Wire id: CLC_Messages.clc_CmdKeyValues = 34

FieldNumberLabelTypeDefaultDescription
data1optionalbytes

CCLCMsg_RconServerDetails

Wire id: CLC_Messages.clc_RconServerDetails = 35

FieldNumberLabelTypeDefaultDescription
token1optionalbytes

CCLCMsg_Diagnostic

Wire id: CLC_Messages.clc_Diagnostic = 37

FieldNumberLabelTypeDefaultDescription
system_specs1optionalCMsgSource2SystemSpecs
vprof_report2optionalCMsgSource2VProfLiteReport
downstream_flow3optionalCMsgSource2NetworkFlowQuality
upstream_flow4optionalCMsgSource2NetworkFlowQuality
perf_samples5repeatedCMsgSource2PerfIntervalSample

CSVCMsg_ServerInfo

First substantial message sent by the server after handshake. Provides all configuration data the client needs to initialise its session.

Wire id: SVC_Messages.svc_ServerInfo = 40

FieldNumberLabelTypeDefaultDescription
protocol1optionalint32Network protocol version number.
server_count2optionalint32Unique server instance counter; increments on each map change.
is_dedicated3optionalboolTrue when running on a dedicated server (as opposed to a listen server).
is_hltv4optionalboolTrue when this connection is a GOTV/HLTV proxy.
c_os6optionalint32Server operating system code (0 = Windows, 1 = Linux, 2 = macOS).
max_clients10optionalint32Maximum number of player slots on this server.
max_classes11optionalint32Number of entity class types registered; used to size class-info tables.
player_slot12optionalint32-1Slot index assigned to this connecting client.
tick_interval13optionalfloatDuration of one server tick in seconds (e.g. 0.015625 for 64-tick).
game_dir14optionalstringGame directory name (e.g. 'csgo').
map_name15optionalstringName of the map currently running on the server.
sky_name16optionalstringSky-box texture set name used for the current map.
host_name17optionalstringDisplay name of the server as shown in the server browser.
addon_name18optionalstring
game_session_config19optionalCSVCMsg_GameSessionConfiguration
game_session_manifest20optionalbytes

CSVCMsg_ClassInfo

Enumerates all entity class types known to the server, mapping numeric class IDs to class name strings. Clients use this to instantiate the correct entity objects when receiving entity creation deltas.

Wire id: SVC_Messages.svc_ClassInfo = 42

FieldNumberLabelTypeDefaultDescription
create_on_client1optionalboolTrue when the client should create entity objects from this list immediately.
classes2repeatedCSVCMsg_ClassInfo.class_tList of (class_id, class_name) pairs for all registered entity classes.

CSVCMsg_ClassInfo.class_t

Referenced by (1): CSVCMsg_ClassInfo

FieldNumberLabelTypeDefaultDescription
class_id1optionalint32
class_name3optionalstring

CSVCMsg_SetPause

Instructs the client to enter or leave pause state.

Wire id: SVC_Messages.svc_SetPause = 43

FieldNumberLabelTypeDefaultDescription
paused1optionalboolTrue to pause client-side simulation.

CSVCMsg_VoiceInit

Initialises the voice-codec parameters on the client.

Wire id: SVC_Messages.svc_VoiceInit = 46

FieldNumberLabelTypeDefaultDescription
quality1optionalint32Voice codec quality level.
codec2optionalstring
version3optionalint320

CSVCMsg_Print

Wire id: SVC_Messages.svc_Print = 48

FieldNumberLabelTypeDefaultDescription
text1optionalstring

CSVCMsg_Sounds

Wire id: SVC_Messages.svc_Sounds = 49

FieldNumberLabelTypeDefaultDescription
reliable_sound1optionalbool
sounds2repeatedCSVCMsg_Sounds.sounddata_t

CSVCMsg_Sounds.sounddata_t

Referenced by (1): CSVCMsg_Sounds

FieldNumberLabelTypeDefaultDescription
origin_x1optionalsint32
origin_y2optionalsint32
origin_z3optionalsint32
volume4optionaluint32
delay_value5optionalfloat
sequence_number6optionalint32
entity_index7optionalint32-1
channel8optionalint32
pitch9optionalint32
flags10optionalint32
sound_num11optionaluint32
sound_num_handle12optionalfixed32
speaker_entity13optionalint32
random_seed14optionalint32
sound_level15optionalint32
is_sentence16optionalbool
is_ambient17optionalbool
guid18optionaluint32
sound_resource_id19optionalfixed64

CSVCMsg_Prefetch

Wire id: SVC_Messages.svc_Prefetch = 56

FieldNumberLabelTypeDefaultDescription
sound_index1optionalint32
resource_type2optionalPrefetchTypePFT_SOUND

CSVCMsg_SetView

Changes the entity index used as the origin for the client's view (e.g. switches from player view to a camera entity during replays).

Wire id: SVC_Messages.svc_SetView = 50

FieldNumberLabelTypeDefaultDescription
entity_index1optionalint32-1Entity index to use as the view origin.
slot2optionalint32-1Split-screen slot this view assignment applies to.

CSVCMsg_FixAngle

Forces the client's view angles to specific values (used for spawn orientation resets, teleports, and some map entities).

FieldNumberLabelTypeDefaultDescription
relative1optionalboolTrue for a relative angle delta, false for absolute.
angle2optionalCMsgQAngleTarget view angle (pitch, yaw, roll).

CSVCMsg_CrosshairAngle

FieldNumberLabelTypeDefaultDescription
angle1optionalCMsgQAngle

CSVCMsg_BSPDecal

Wire id: SVC_Messages.svc_BSPDecal = 53

FieldNumberLabelTypeDefaultDescription
pos1optionalCMsgVector
decal_texture_index2optionalint32
entity_index3optionalint32-1
model_index4optionalint32
low_priority5optionalbool

CSVCMsg_SplitScreen

Wire id: SVC_Messages.svc_SplitScreen = 54

FieldNumberLabelTypeDefaultDescription
type1optionalESplitScreenMessageTypeMSG_SPLITSCREEN_ADDUSER
slot2optionalint32
player_index3optionalint32-1

CSVCMsg_GetCvarValue

Asks the client to report the current value of a specific convar. The client responds with CCLCMsg_RespondCvarValue.

Wire id: SVC_Messages.svc_GetCvarValue = 58

FieldNumberLabelTypeDefaultDescription
cookie1optionalint32Opaque identifier echoed back in the response for correlation.
cvar_name2optionalstringName of the convar whose value is being queried.

CSVCMsg_Menu

Wire id: SVC_Messages.svc_Menu = 57

FieldNumberLabelTypeDefaultDescription
dialog_type1optionalint32
menu_key_values2optionalbytes

CSVCMsg_UserMessage

Wraps a higher-level user-message (CCSUsrMsg_*, CUserMessage*) inside a network packet for reliable delivery.

Wire id: SVC_Messages.svc_UserMessage = 72

FieldNumberLabelTypeDefaultDescription
msg_type1optionalint32User-message type ID from ECstrike15UserMessages or EBaseUserMessages.
msg_data2optionalbytesSerialised protobuf payload of the specific user-message type.
passthrough3optionalint32Passthrough flag used by split-screen.

CSVCMsg_SendTable

FieldNumberLabelTypeDefaultDescription
is_end1optionalbool
net_table_name2optionalstring
needs_decoder3optionalbool
props4repeatedCSVCMsg_SendTable.sendprop_t

CSVCMsg_SendTable.sendprop_t

Referenced by (1): CSVCMsg_SendTable

FieldNumberLabelTypeDefaultDescription
type1optionalint32
var_name2optionalstring
flags3optionalint32
priority4optionalint32
dt_name5optionalstring
num_elements6optionalint32
low_value7optionalfloat
high_value8optionalfloat
num_bits9optionalint32

CSVCMsg_GameEventList

FieldNumberLabelTypeDefaultDescription
descriptors1repeatedCSVCMsg_GameEventList.descriptor_t

CSVCMsg_GameEventList.key_t

Referenced by (1): CSVCMsg_GameEventList.descriptor_t

FieldNumberLabelTypeDefaultDescription
type1optionalint32
name2optionalstring

CSVCMsg_GameEventList.descriptor_t

Referenced by (1): CSVCMsg_GameEventList

FieldNumberLabelTypeDefaultDescription
eventid1optionalint32
name2optionalstring
keys3repeatedCSVCMsg_GameEventList.key_t

CSVCMsg_PacketEntities

The most bandwidth-intensive server message; carries the delta-compressed entity-state update for all entities that changed since the client's last acknowledged snapshot.

The inner data blob is decoded using the Source 2 entity-delta codec. Demo parsers (demoinfocs-golang, etc.) spend most of their time processing this message.

Wire id: SVC_Messages.svc_PacketEntities = 55

FieldNumberLabelTypeDefaultDescription
max_entries1optionalint32Maximum entity index present in this packet.
updated_entries2optionalint32Number of entity change records in the data blob.
legacy_is_delta3optionalboolLegacy flag: true for incremental updates; false for a full baseline snapshot.
update_baseline4optionalbool
baseline5optionalint32Which baseline buffer (0 or 1) the data is relative to.
delta_from6optionalint32Tick that the delta originates from.
entity_data7optionalbytesBinary blob of delta-encoded entity field changes.
pending_full_frame8optionalbool
active_spawngroup_handle9optionaluint32
max_spawngroup_creationsequence10optionaluint32
last_cmd_number_executed11optionaluint32
server_tick12optionaluint32
serialized_entities13optionalbytes
alternate_baselines15repeatedCSVCMsg_PacketEntities.alternate_baseline_t
has_pvs_vis_bits_deprecated16optionaluint32
last_cmd_number_recv_delta17optionalsint32
non_transmitted_entities19optionalCSVCMsg_PacketEntities.non_transmitted_entities_t
cq_starved_command_ticks20optionaluint32
cq_discarded_command_ticks21optionaluint32
cmd_recv_status22repeatedsint32
outofpvs_entity_updates23optionalCSVCMsg_PacketEntities.outofpvs_entity_updates_t
dev_padding999optionalbytes

CSVCMsg_PacketEntities.alternate_baseline_t

Referenced by (1): CSVCMsg_PacketEntities

FieldNumberLabelTypeDefaultDescription
entity_index1optionalint32
baseline_index2optionalint32

CSVCMsg_PacketEntities.non_transmitted_entities_t

Referenced by (1): CSVCMsg_PacketEntities

FieldNumberLabelTypeDefaultDescription
header_count1optionalint32
data2optionalbytes

CSVCMsg_PacketEntities.outofpvs_entity_updates_t

Referenced by (1): CSVCMsg_PacketEntities

FieldNumberLabelTypeDefaultDescription
count1optionalint32
data2optionalbytes

CSVCMsg_TempEntities

Batches one or more temporary-entity (TE) events into a single reliable message. TE events produce short-lived visual/audio effects without creating persistent server entities.

FieldNumberLabelTypeDefaultDescription
reliable1optionalbool
num_entries2optionalint32Number of TE entries packed into this message.
entity_data3optionalbytesSerialised list of TE event data blobs.

CSVCMsg_CreateStringTable

Creates a new named string table on the client, initialised with the provided data blob. String tables are the primary mechanism for sharing static/semi-static lookup data (model precache, sound precache, user info, etc.).

Wire id: SVC_Messages.svc_CreateStringTable = 44

FieldNumberLabelTypeDefaultDescription
name1optionalstringUnique name of the string table (e.g. 'userinfo', 'modelprecache').
num_entries2optionalint32Number of entries in the initial table.
user_data_fixed_size3optionalboolTrue when all entries have fixed-size user-data blobs.
user_data_size4optionalint32Fixed user-data size in bytes (valid when user_data_fixed_size is true).
user_data_size_bits5optionalint32Bit-width of each user-data field.
flags6optionalint32Table flags (e.g. FSTRINGTAB_DICTIONARY_ENABLED).
string_data7optionalbytesSerialised table data blob (may be compressed).
uncompressed_size8optionalint32Size of the data after decompression (0 when not compressed).
data_compressed9optionalboolTrue when string_data is compressed.
using_varint_bitcounts10optionalboolTrue when the serialised bit-counts are encoded as varints.

CSVCMsg_UpdateStringTable

Incremental update to an existing string table, adding or modifying entries since the last full snapshot.

Wire id: SVC_Messages.svc_UpdateStringTable = 45

FieldNumberLabelTypeDefaultDescription
table_id1optionalint32Index of the string table to update.
num_changed_entries2optionalint32Number of changed entries in this update.
string_data3optionalbytesDelta-encoded table data blob.

CSVCMsg_VoiceData

Relays a voice-audio packet from a speaking player to all listeners.

Wire id: SVC_Messages.svc_VoiceData = 47

FieldNumberLabelTypeDefaultDescription
audio1optionalCMsgVoiceAudioCMsgVoiceAudio containing the compressed audio data and format.
client_deprecated2optionalint32-1Deprecated. Player slot index of the speaker.
proximity3optionalboolTrue when the voice is 3D positional (proximity voice chat).
xuid4optionalfixed64
audible_mask5optionalint32Bitmask of player slots that should hear this audio.
tick6optionaluint32
passthrough7optionalint32
entity8optionalint32-1

CSVCMsg_PacketReliable

Reliable wrapper for delta packets that must be delivered in order and without loss (e.g. initial baseline or important game-state transitions).

Wire id: SVC_Messages.svc_PacketReliable = 61

FieldNumberLabelTypeDefaultDescription
tick1optionalint32
messagessize2optionalint32
state3optionalbool

CSVCMsg_FullFrameSplit

Wire id: SVC_Messages.svc_FullFrameSplit = 70

FieldNumberLabelTypeDefaultDescription
tick1optionalint32
section2optionalint32
total3optionalint32
data4optionalbytes

CSVCMsg_HLTVStatus

Wire id: SVC_Messages.svc_HLTVStatus = 62

FieldNumberLabelTypeDefaultDescription
master1optionalstring
clients2optionalint32
slots3optionalint32
proxies4optionalint32

CSVCMsg_ServerSteamID

Wire id: SVC_Messages.svc_ServerSteamID = 63

FieldNumberLabelTypeDefaultDescription
steam_id1optionaluint64

CSVCMsg_CmdKeyValues

Wire id: SVC_Messages.svc_CmdKeyValues = 52

FieldNumberLabelTypeDefaultDescription
data1optionalbytes

CSVCMsg_RconServerDetails

Wire id: SVC_Messages.svc_RconServerDetails = 71

FieldNumberLabelTypeDefaultDescription
token1optionalbytes
details2optionalstring

CMsgIPCAddress

Referenced by (1): CMsgServerPeer

FieldNumberLabelTypeDefaultDescription
computer_guid1optionalfixed64
process_id2optionaluint32

CMsgServerPeer

Referenced by (1): CSVCMsg_PeerList

FieldNumberLabelTypeDefaultDescription
player_slot1optionalint32-1
steamid2optionalfixed64
ipc3optionalCMsgIPCAddress
they_hear_you4optionalbool
you_hear_them5optionalbool
is_listenserver_host6optionalbool

CSVCMsg_PeerList

Wire id: SVC_Messages.svc_PeerList = 60

FieldNumberLabelTypeDefaultDescription
peer1repeatedCMsgServerPeer

CSVCMsg_ClearAllStringTables

Wire id: SVC_Messages.svc_ClearAllStringTables = 51

FieldNumberLabelTypeDefaultDescription
mapname1optionalstring
create_tables_skipped3optionalbool

ProtoFlattenedSerializerField_t

Referenced by (1): CSVCMsg_FlattenedSerializer

FieldNumberLabelTypeDefaultDescription
var_type_sym1optionalint32
var_name_sym2optionalint32
bit_count3optionalint32
low_value4optionalfloat
high_value5optionalfloat
encode_flags6optionalint32
field_serializer_name_sym7optionalint32
field_serializer_version8optionalint32
send_node_sym9optionalint32
var_encoder_sym10optionalint32
polymorphic_types11repeatedProtoFlattenedSerializerField_t.polymorphic_field_t
var_serializer_sym12optionalint32

ProtoFlattenedSerializerField_t.polymorphic_field_t

Referenced by (1): ProtoFlattenedSerializerField_t

FieldNumberLabelTypeDefaultDescription
polymorphic_field_serializer_name_sym1optionalint32
polymorphic_field_serializer_version2optionalint32

ProtoFlattenedSerializer_t

Referenced by (1): CSVCMsg_FlattenedSerializer

FieldNumberLabelTypeDefaultDescription
serializer_name_sym1optionalint32
serializer_version2optionalint32
fields_index3repeatedint32

CSVCMsg_FlattenedSerializer

Wire id: SVC_Messages.svc_FlattenedSerializer = 41

FieldNumberLabelTypeDefaultDescription
serializers1repeatedProtoFlattenedSerializer_t
symbols2repeatedstring
fields3repeatedProtoFlattenedSerializerField_t

CSVCMsg_StopSound

Wire id: SVC_Messages.svc_StopSound = 59

FieldNumberLabelTypeDefaultDescription
guid1optionalfixed32

CBidirMsg_RebroadcastGameEvent

FieldNumberLabelTypeDefaultDescription
posttoserver1optionalbool
buftype2optionalint32
clientbitcount3optionaluint32
receivingclients4optionaluint64

CBidirMsg_RebroadcastSource

FieldNumberLabelTypeDefaultDescription
eventsource1optionalint32

CBidirMsg_PredictionEvent

FieldNumberLabelTypeDefaultDescription
event_id1optionaluint32
event_data2optionalbytes
sync_type3optionaluint32
sync_val_uint324optionaluint32

CBidirMsg_PredictionEvent.ESyncType

NameNumberMessage
ST_Tick0
ST_UserCmdNum1

CMsgServerNetworkStats

FieldNumberLabelTypeDefaultDescription
dedicated1optionalbool
cpu_usage2optionalint32
memory_used_mb3optionalint32
memory_free_mb4optionalint32
uptime5optionalint32
spawn_count6optionalint32
num_clients8optionalint32
num_bots9optionalint32
num_spectators10optionalint32
num_tv_relays11optionalint32
fps12optionalfloat
ports17repeatedCMsgServerNetworkStats.Port
avg_ping_ms18optionalfloat
avg_engine_latency_out19optionalfloat
avg_packets_out20optionalfloat
avg_packets_in21optionalfloat
avg_loss_out22optionalfloat
avg_loss_in23optionalfloat
avg_data_out24optionalfloat
avg_data_in25optionalfloat
total_data_in26optionaluint64
total_packets_in27optionaluint64
total_data_out28optionaluint64
total_packets_out29optionaluint64
players30repeatedCMsgServerNetworkStats.Player

CMsgServerNetworkStats.Port

Referenced by (1): CMsgServerNetworkStats

FieldNumberLabelTypeDefaultDescription
port1optionalint32
name2optionalstring

CMsgServerNetworkStats.Player

Referenced by (1): CMsgServerNetworkStats

FieldNumberLabelTypeDefaultDescription
steamid1optionaluint64
remote_addr2optionalstring
ping_avg_ms4optionalint32
packet_loss_pct5optionalfloat
is_bot6optionalbool
loss_in7optionalfloat
loss_out8optionalfloat
engine_latency_ms9optionalint32

CSVCMsg_HltvReplay

FieldNumberLabelTypeDefaultDescription
delay1optionalint32
primary_target2optionalint32-1
replay_stop_at3optionalint32
replay_start_at4optionalint32
replay_slowdown_begin5optionalint32
replay_slowdown_end6optionalint32
replay_slowdown_rate7optionalfloat
reason8optionalint32

CCLCMsg_HltvReplay

Wire id: CLC_Messages.clc_HltvReplay = 36

FieldNumberLabelTypeDefaultDescription
request1optionalint32
slowdown_length2optionalfloat
slowdown_rate3optionalfloat
primary_target4optionalint32-1
event_time5optionalfloat

CSVCMsg_Broadcast_Command

Wire id: SVC_Messages.svc_Broadcast_Command = 74

FieldNumberLabelTypeDefaultDescription
cmd1optionalstring

CCLCMsg_HltvFixupOperatorTick

FieldNumberLabelTypeDefaultDescription
tick1optionalint32
props_data2optionalbytes
origin3optionalCMsgVector
eye_angles4optionalCMsgQAngle
observer_mode5optionalint32
cameraman_scoreboard6optionalbool
observer_target7optionalint32
view_offset8optionalCMsgVector

CSVCMsg_HltvFixupOperatorStatus

Wire id: SVC_Messages.svc_HltvFixupOperatorStatus = 75

FieldNumberLabelTypeDefaultDescription
mode1optionaluint32
override_operator_name2optionalstring

CMsgServerUserCmd

Referenced by (1): CSVCMsg_UserCommands

FieldNumberLabelTypeDefaultDescription
data1optionalbytes
cmd_number2optionalint32
player_slot3optionalint32-1
server_tick_executed4optionalint32
client_tick5optionalint32
delta_data6optionalbytes

CSVCMsg_UserCommands

FieldNumberLabelTypeDefaultDescription
commands1repeatedCMsgServerUserCmd

CSVCMsg_NextMsgPredicted

Wire id: SVC_Messages.svc_NextMsgPredicted = 77

FieldNumberLabelTypeDefaultDescription
predicted_by_player_slot1optionalint32-1
message_type_id2optionaluint32

Reference graph

Message reference graph (28 edges)
flowchart LR
    n0["CCLCMsg_VoiceData"]
    n1["CMsgVoiceAudio"]
    n0 --> n1
    n2["CCLCMsg_Diagnostic"]
    n3["CMsgSource2SystemSpecs"]
    n2 --> n3
    n4["CMsgSource2VProfLiteReport"]
    n2 --> n4
    n5["CMsgSource2NetworkFlowQuality"]
    n2 --> n5
    n6["CMsgSource2PerfIntervalSample"]
    n2 --> n6
    n7["CSVCMsg_ServerInfo"]
    n8["CSVCMsg_GameSessionConfiguration"]
    n7 --> n8
    n9["CSVCMsg_ClassInfo"]
    n10["CSVCMsg_ClassInfo.class_t"]
    n9 --> n10
    n11["CSVCMsg_Sounds"]
    n12["CSVCMsg_Sounds.sounddata_t"]
    n11 --> n12
    n13["CSVCMsg_FixAngle"]
    n14["CMsgQAngle"]
    n13 --> n14
    n15["CSVCMsg_CrosshairAngle"]
    n15 --> n14
    n16["CSVCMsg_BSPDecal"]
    n17["CMsgVector"]
    n16 --> n17
    n18["CSVCMsg_SendTable"]
    n19["CSVCMsg_SendTable.sendprop_t"]
    n18 --> n19
    n20["CSVCMsg_GameEventList"]
    n21["CSVCMsg_GameEventList.descriptor_t"]
    n20 --> n21
    n22["CSVCMsg_GameEventList.key_t"]
    n21 --> n22
    n23["CSVCMsg_PacketEntities"]
    n24["CSVCMsg_PacketEntities.alternate_baseline_t"]
    n23 --> n24
    n25["CSVCMsg_PacketEntities.non_transmitted_entities_t"]
    n23 --> n25
    n26["CSVCMsg_PacketEntities.outofpvs_entity_updates_t"]
    n23 --> n26
    n27["CSVCMsg_VoiceData"]
    n27 --> n1
    n28["CMsgServerPeer"]
    n29["CMsgIPCAddress"]
    n28 --> n29
    n30["CSVCMsg_PeerList"]
    n30 --> n28
    n31["ProtoFlattenedSerializerField_t"]
    n32["ProtoFlattenedSerializerField_t.polymorphic_field_t"]
    n31 --> n32
    n33["CSVCMsg_FlattenedSerializer"]
    n34["ProtoFlattenedSerializer_t"]
    n33 --> n34
    n33 --> n31
    n35["CMsgServerNetworkStats"]
    n36["CMsgServerNetworkStats.Port"]
    n35 --> n36
    n37["CMsgServerNetworkStats.Player"]
    n35 --> n37
    n38["CCLCMsg_HltvFixupOperatorTick"]
    n38 --> n17
    n38 --> n14
    n39["CSVCMsg_UserCommands"]
    n40["CMsgServerUserCmd"]
    n39 --> n40