demo.proto
CS2 build 25218825 · Steam date 2026-09-09 · platform windows-x86_64 · schema format 2.2
Group: DemoMessages: 20 top-level, 28 totalEnums: 1 top-level, 1 total
Imports: none
Wire ids
Every message in this file that a wire-id enum constant maps to, by the join rule described on the Protobufs index.
Enums
EDemoCommands
Schema entity: EDemoCommands
| Name | Number | Message |
|---|---|---|
DEM_Error | -1 | |
DEM_Stop | 0 | CDemoStop |
DEM_FileHeader | 1 | CDemoFileHeader |
DEM_FileInfo | 2 | CDemoFileInfo |
DEM_SyncTick | 3 | CDemoSyncTick |
DEM_SendTables | 4 | CDemoSendTables |
DEM_ClassInfo | 5 | CDemoClassInfo |
DEM_StringTables | 6 | CDemoStringTables |
DEM_Packet | 7 | CDemoPacket |
DEM_SignonPacket | 8 | |
DEM_ConsoleCmd | 9 | CDemoConsoleCmd |
DEM_CustomData | 10 | CDemoCustomData |
DEM_CustomDataCallbacks | 11 | CDemoCustomDataCallbacks |
DEM_UserCmd | 12 | CDemoUserCmd |
DEM_FullPacket | 13 | CDemoFullPacket |
DEM_SaveGame | 14 | CDemoSaveGame |
DEM_SpawnGroups | 15 | CDemoSpawnGroups |
DEM_AnimationData | 16 | CDemoAnimationData |
DEM_AnimationHeader | 17 | CDemoAnimationHeader |
DEM_Recovery | 18 | CDemoRecovery |
DEM_Max | 19 | |
DEM_IsCompressed | 64 |
Messages
CDemoFileHeader
Wire id: EDemoCommands.DEM_FileHeader = 1
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
demo_file_stamp | 1 | required | string | ||
patch_version | 2 | optional | int32 | ||
server_name | 3 | optional | string | ||
client_name | 4 | optional | string | ||
map_name | 5 | optional | string | ||
game_directory | 6 | optional | string | ||
fullpackets_version | 7 | optional | int32 | ||
allow_clientside_entities | 8 | optional | bool | ||
allow_clientside_particles | 9 | optional | bool | ||
addons | 10 | optional | string | ||
demo_version_name | 11 | optional | string | ||
demo_version_guid | 12 | optional | string | ||
build_num | 13 | optional | int32 | ||
game | 14 | optional | string | ||
server_start_tick | 15 | optional | int32 |
CGameInfo
Referenced by (1): CDemoFileInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
dota | 4 | optional | CGameInfo.CDotaGameInfo | ||
cs | 5 | optional | CGameInfo.CCSGameInfo |
CGameInfo.CDotaGameInfo
Referenced by (1): CGameInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
match_id | 1 | optional | uint64 | ||
game_mode | 2 | optional | int32 | ||
game_winner | 3 | optional | int32 | ||
player_info | 4 | repeated | CGameInfo.CDotaGameInfo.CPlayerInfo | ||
leagueid | 5 | optional | uint32 | ||
picks_bans | 6 | repeated | CGameInfo.CDotaGameInfo.CHeroSelectEvent | ||
radiant_team_id | 7 | optional | uint32 | ||
dire_team_id | 8 | optional | uint32 | ||
radiant_team_tag | 9 | optional | string | ||
dire_team_tag | 10 | optional | string | ||
end_time | 11 | optional | uint32 |
CGameInfo.CDotaGameInfo.CPlayerInfo
Referenced by (1): CGameInfo.CDotaGameInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
hero_name | 1 | optional | string | ||
player_name | 2 | optional | string | ||
is_fake_client | 3 | optional | bool | ||
steamid | 4 | optional | uint64 | ||
game_team | 5 | optional | int32 |
CGameInfo.CDotaGameInfo.CHeroSelectEvent
Referenced by (1): CGameInfo.CDotaGameInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
is_pick | 1 | optional | bool | ||
team | 2 | optional | uint32 | ||
hero_id | 3 | optional | int32 |
CGameInfo.CCSGameInfo
Referenced by (1): CGameInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
round_start_ticks | 1 | repeated | int32 |
CDemoFileInfo
Wire id: EDemoCommands.DEM_FileInfo = 2
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
playback_time | 1 | optional | float | ||
playback_ticks | 2 | optional | int32 | ||
playback_frames | 3 | optional | int32 | ||
game_info | 4 | optional | CGameInfo |
CDemoPacket
Wire id: EDemoCommands.DEM_Packet = 7
Referenced by (1): CDemoFullPacket
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
data | 3 | optional | bytes |
CDemoFullPacket
Wire id: EDemoCommands.DEM_FullPacket = 13
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
string_table | 1 | optional | CDemoStringTables | ||
packet | 2 | optional | CDemoPacket |
CDemoSaveGame
Wire id: EDemoCommands.DEM_SaveGame = 14
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
data | 1 | optional | bytes | ||
steam_id | 2 | optional | fixed64 | ||
signature | 3 | optional | fixed64 | ||
version | 4 | optional | int32 |
CDemoSyncTick
Wire id: EDemoCommands.DEM_SyncTick = 3
(no fields)
CDemoConsoleCmd
Wire id: EDemoCommands.DEM_ConsoleCmd = 9
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
cmdstring | 1 | optional | string |
CDemoSendTables
Wire id: EDemoCommands.DEM_SendTables = 4
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
data | 1 | optional | bytes |
CDemoClassInfo
Wire id: EDemoCommands.DEM_ClassInfo = 5
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
classes | 1 | repeated | CDemoClassInfo.class_t |
CDemoClassInfo.class_t
Referenced by (1): CDemoClassInfo
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
class_id | 1 | optional | int32 | ||
network_name | 2 | optional | string | ||
table_name | 3 | optional | string |
CDemoCustomData
Wire id: EDemoCommands.DEM_CustomData = 10
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
callback_index | 1 | optional | int32 | ||
data | 2 | optional | bytes |
CDemoCustomDataCallbacks
Wire id: EDemoCommands.DEM_CustomDataCallbacks = 11
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
save_id | 1 | repeated | string |
CDemoAnimationHeader
Wire id: EDemoCommands.DEM_AnimationHeader = 17
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
entity_id | 1 | optional | sint32 | ||
tick | 2 | optional | int32 | ||
data | 3 | optional | bytes |
CDemoAnimationData
Wire id: EDemoCommands.DEM_AnimationData = 16
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
entity_id | 1 | optional | sint32 | ||
start_tick | 2 | optional | int32 | ||
end_tick | 3 | optional | int32 | ||
data | 4 | optional | bytes | ||
data_checksum | 5 | optional | int64 |
CDemoStringTables
Wire id: EDemoCommands.DEM_StringTables = 6
Referenced by (1): CDemoFullPacket
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
tables | 1 | repeated | CDemoStringTables.table_t |
CDemoStringTables.items_t
Referenced by (1): CDemoStringTables.table_t
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
str | 1 | optional | string | ||
data | 2 | optional | bytes |
CDemoStringTables.table_t
Referenced by (1): CDemoStringTables
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
table_name | 1 | optional | string | ||
items | 2 | repeated | CDemoStringTables.items_t | ||
items_clientside | 3 | repeated | CDemoStringTables.items_t | ||
table_flags | 4 | optional | int32 |
CDemoStop
Wire id: EDemoCommands.DEM_Stop = 0
(no fields)
CDemoUserCmd
Wire id: EDemoCommands.DEM_UserCmd = 12
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
cmd_number | 1 | optional | int32 | ||
data | 2 | optional | bytes |
CDemoSpawnGroups
Wire id: EDemoCommands.DEM_SpawnGroups = 15
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
msgs | 3 | repeated | bytes |
CDemoSpawnGroupsHLTVBroadcast
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
data | 1 | optional | bytes |
CDemoRecovery
Wire id: EDemoCommands.DEM_Recovery = 18
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
initial_spawn_group | 1 | optional | CDemoRecovery.DemoInitialSpawnGroupEntry | ||
spawn_group_message | 2 | optional | bytes |
CDemoRecovery.DemoInitialSpawnGroupEntry
Referenced by (1): CDemoRecovery
| Field | Number | Label | Type | Default | Description |
|---|---|---|---|---|---|
spawngrouphandle | 1 | optional | uint32 | ||
was_created | 2 | optional | bool |
Reference graph
Message reference graph (11 edges)
flowchart LR
n0["CGameInfo"]
n1["CGameInfo.CDotaGameInfo"]
n0 --> n1
n2["CGameInfo.CCSGameInfo"]
n0 --> n2
n3["CGameInfo.CDotaGameInfo.CPlayerInfo"]
n1 --> n3
n4["CGameInfo.CDotaGameInfo.CHeroSelectEvent"]
n1 --> n4
n5["CDemoFileInfo"]
n5 --> n0
n6["CDemoFullPacket"]
n7["CDemoStringTables"]
n6 --> n7
n8["CDemoPacket"]
n6 --> n8
n9["CDemoClassInfo"]
n10["CDemoClassInfo.class_t"]
n9 --> n10
n11["CDemoStringTables.table_t"]
n7 --> n11
n12["CDemoStringTables.items_t"]
n11 --> n12
n13["CDemoRecovery"]
n14["CDemoRecovery.DemoInitialSpawnGroupEntry"]
n13 --> n14