Counter-Strike: Global Offensive uses Google's ProtoBuffers instead of Valve's traditional UserMessages.
The data on this page was read from cstrike15_usermessages.proto which was provided by Valve.
Valve Copyright Notice
//====== Copyright (c) 2013, Valve Corporation, All rights reserved. ========//
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
// Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
// THE POSSIBILITY OF SUCH DAMAGE.
//===========================================================================//
//
// Purpose: The file defines our Google Protocol Buffers which are used in over
// the wire messages for the Source engine.
//
//=============================================================================
Name:
|
VGUIMenu
|
Structure:
|
string
|
name
|
|
bool
|
show
|
|
repeated SubKey
|
subkeys
|
|
|
Geiger
Train
HudText
SayText
Name:
|
SayText
|
Structure:
|
int32
|
ent_idx
|
|
string
|
text
|
|
bool
|
chat
|
|
bool
|
textallchat
|
|
|
SayText2
Name:
|
SayText2
|
Structure:
|
int32
|
ent_idx
|
|
bool
|
chat
|
|
string
|
msg_name
|
|
repeated string
|
params
|
|
bool
|
textallchat
|
|
|
TextMsg
Name:
|
TextMsg
|
Structure:
|
int32
|
msg_dst
|
|
repeated string
|
params
|
|
|
HudMsg
Name:
|
HudMsg
|
Structure:
|
int32
|
channel
|
|
CMsgVector2D
|
pos
|
|
CMsgRGBA
|
clr1
|
|
CMsgRGBA
|
clr2
|
|
int32
|
effect
|
|
float
|
fade_in_time
|
|
float
|
fade_out_time
|
|
float
|
hold_time
|
|
float
|
fx_time
|
|
string
|
text
|
|
|
Shake
Name:
|
Shake
|
Structure:
|
int32
|
command
|
|
float
|
local_amplitude
|
|
float
|
frequency
|
|
float
|
duration
|
|
|
Fade
Name:
|
Fade
|
Structure:
|
int32
|
duration
|
|
int32
|
hold_time
|
|
int32
|
flags
|
fade type (in / out)
|
CMsgRGBA
|
clr
|
|
|
Rumble
Name:
|
Rumble
|
Structure:
|
int32
|
index
|
|
int32
|
data
|
|
int32
|
flags
|
|
|
CloseCaption
Name:
|
CloseCaption
|
Structure:
|
uint32
|
hash
|
|
int32
|
duration
|
|
bool
|
from_player
|
{{{3}}}
|
|
CloseCaptionDirect
Name:
|
CloseCaptionDirect
|
Structure:
|
uint32
|
hash
|
|
int32
|
duration
|
|
bool
|
from_player
|
{{{3}}}
|
|
SendAudio
Name:
|
SendAudio
|
Structure:
|
|
RawAudio
Name:
|
RawAudio
|
Structure:
|
int32
|
pitch
|
|
int32
|
ent_index
|
|
float
|
duration
|
|
string
|
voice_filename
|
|
|
VoiceMask
Name:
|
PlayerMask
|
Structure:
|
int32
|
game_rules_mask
|
|
int32
|
ban_masks
|
|
|
Name:
|
VoiceMask
|
Structure:
|
repeated PlayerMask
|
player_masks
|
|
bool
|
player_mod_enable
|
|
|
Damage
Name:
|
Damage
|
Structure:
|
int32
|
amount
|
|
CMsgVector
|
inflictor_world_pos
|
|
|
RadioText
Name:
|
RadioText
|
Structure:
|
int32
|
msg_dst
|
|
int32
|
client
|
|
string
|
msg_name
|
|
repeated string
|
params
|
|
|
HintText
Name:
|
HintText
|
Structure:
|
|
KeyHintText
Name:
|
KeyHintText
|
Structure:
|
|
ProcessSpottedEntityUpdate
Note: gurjeets - Message below is slightly bigger in size than the non-protobuf version, by around 8 bits.
Name:
|
SpottedEntityUpdate
|
Structure:
|
int32
|
entity_idx
|
|
int32
|
class_id
|
|
int32
|
origin_x
|
|
int32
|
origin_y
|
|
int32
|
origin_z
|
|
int32
|
angle_y
|
|
bool
|
defuser
|
|
bool
|
player_has_defuser
|
|
bool
|
player_has_c4
|
|
|
Name:
|
ProcessSpottedEntityUpdate
|
Structure:
|
repeated SpottedEntityUpdate
|
entity_updates
|
|
|