You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
558 lines
13 KiB
Protocol Buffer
558 lines
13 KiB
Protocol Buffer
package dota;
|
|
|
|
import "networkbasetypes.proto";
|
|
|
|
option cc_generic_services = false;
|
|
|
|
enum CLC_Messages {
|
|
clc_ClientInfo = 20;
|
|
clc_Move = 21;
|
|
clc_VoiceData = 22;
|
|
clc_BaselineAck = 23;
|
|
clc_ListenEvents = 24;
|
|
clc_RespondCvarValue = 25;
|
|
clc_FileCRCCheck = 26;
|
|
clc_LoadingProgress = 27;
|
|
clc_SplitPlayerConnect = 28;
|
|
clc_ClientMessage = 29;
|
|
clc_SplitPlayerDisconnect = 30;
|
|
clc_ServerStatus = 31;
|
|
clc_ServerPing = 32;
|
|
clc_RequestPause = 33;
|
|
clc_CmdKeyValues = 34;
|
|
}
|
|
|
|
enum SVC_Messages {
|
|
svc_ServerInfo = 40;
|
|
svc_FlattenedSerializer = 41;
|
|
svc_ClassInfo = 42;
|
|
svc_SetPause = 43;
|
|
svc_CreateStringTable = 44;
|
|
svc_UpdateStringTable = 45;
|
|
svc_VoiceInit = 46;
|
|
svc_VoiceData = 47;
|
|
svc_Print = 48;
|
|
svc_Sounds = 49;
|
|
svc_SetView = 50;
|
|
svc_ClearAllStringTables = 51;
|
|
svc_CmdKeyValues = 52;
|
|
svc_BSPDecal = 53;
|
|
svc_SplitScreen = 54;
|
|
svc_PacketEntities = 55;
|
|
svc_Prefetch = 56;
|
|
svc_Menu = 57;
|
|
svc_GetCvarValue = 58;
|
|
svc_StopSound = 59;
|
|
svc_PeerList = 60;
|
|
svc_PacketReliable = 61;
|
|
svc_HLTVStatus = 62;
|
|
svc_ServerSteamID = 63;
|
|
svc_FullFrameSplit = 70;
|
|
}
|
|
|
|
enum VoiceDataFormat_t {
|
|
VOICEDATA_FORMAT_STEAM = 0;
|
|
VOICEDATA_FORMAT_ENGINE = 1;
|
|
}
|
|
|
|
enum RequestPause_t {
|
|
RP_PAUSE = 0;
|
|
RP_UNPAUSE = 1;
|
|
RP_TOGGLEPAUSE = 2;
|
|
}
|
|
|
|
enum PrefetchType {
|
|
PFT_SOUND = 0;
|
|
}
|
|
|
|
enum ESplitScreenMessageType {
|
|
MSG_SPLITSCREEN_ADDUSER = 0;
|
|
MSG_SPLITSCREEN_REMOVEUSER = 1;
|
|
}
|
|
|
|
enum EQueryCvarValueStatus {
|
|
eQueryCvarValueStatus_ValueIntact = 0;
|
|
eQueryCvarValueStatus_CvarNotFound = 1;
|
|
eQueryCvarValueStatus_NotACvar = 2;
|
|
eQueryCvarValueStatus_CvarProtected = 3;
|
|
}
|
|
|
|
enum DIALOG_TYPE {
|
|
DIALOG_MSG = 0;
|
|
DIALOG_MENU = 1;
|
|
DIALOG_TEXT = 2;
|
|
DIALOG_ENTRY = 3;
|
|
DIALOG_ASKCONNECT = 4;
|
|
}
|
|
|
|
enum SVC_Messages_LowFrequency {
|
|
svc_dummy = 600;
|
|
}
|
|
|
|
enum Bidirectional_Messages {
|
|
bi_RebroadcastGameEvent = 16;
|
|
bi_RebroadcastSource = 17;
|
|
bi_GameEvent = 18;
|
|
}
|
|
|
|
enum Bidirectional_Messages_LowFrequency {
|
|
bi_RelayInfo = 700;
|
|
bi_RelayPacket = 701;
|
|
}
|
|
|
|
message CCLCMsg_ClientInfo {
|
|
optional fixed32 send_table_crc = 1;
|
|
optional uint32 server_count = 2;
|
|
optional bool is_hltv = 3;
|
|
optional bool is_replay = 4;
|
|
optional uint32 friends_id = 5;
|
|
optional string friends_name = 6;
|
|
}
|
|
|
|
message CCLCMsg_Move {
|
|
optional uint32 num_backup_commands = 1;
|
|
optional uint32 num_new_commands = 2;
|
|
optional bytes data = 3;
|
|
}
|
|
|
|
message CMsgVoiceAudio {
|
|
optional VoiceDataFormat_t format = 1 [default = VOICEDATA_FORMAT_STEAM];
|
|
optional bytes voice_data = 2;
|
|
optional int32 sequence_bytes = 3;
|
|
optional uint32 section_number = 4;
|
|
optional uint32 sample_rate = 5;
|
|
optional uint32 uncompressed_sample_offset = 6;
|
|
}
|
|
|
|
message CCLCMsg_VoiceData {
|
|
optional CMsgVoiceAudio audio = 1;
|
|
optional fixed64 xuid = 2;
|
|
optional uint32 tick = 3;
|
|
}
|
|
|
|
message CCLCMsg_BaselineAck {
|
|
optional int32 baseline_tick = 1;
|
|
optional int32 baseline_nr = 2;
|
|
}
|
|
|
|
message CCLCMsg_ListenEvents {
|
|
repeated fixed32 event_mask = 1;
|
|
}
|
|
|
|
message CCLCMsg_RespondCvarValue {
|
|
optional int32 cookie = 1;
|
|
optional int32 status_code = 2;
|
|
optional string name = 3;
|
|
optional string value = 4;
|
|
}
|
|
|
|
message CCLCMsg_FileCRCCheck {
|
|
optional int32 code_path = 1;
|
|
optional string path = 2;
|
|
optional int32 code_filename = 3;
|
|
optional string filename = 4;
|
|
optional fixed32 crc = 5;
|
|
}
|
|
|
|
message CCLCMsg_LoadingProgress {
|
|
optional int32 progress = 1;
|
|
}
|
|
|
|
message CCLCMsg_SplitPlayerConnect {
|
|
optional string playername = 1;
|
|
}
|
|
|
|
message CCLCMsg_ClientMessage {
|
|
optional int32 msg_type = 1;
|
|
optional bytes data = 2;
|
|
}
|
|
|
|
message CCLCMsg_SplitPlayerDisconnect {
|
|
optional int32 slot = 1;
|
|
}
|
|
|
|
message CCLCMsg_ServerStatus {
|
|
optional bool simplified = 1;
|
|
}
|
|
|
|
message CCLCMsg_ServerPing {
|
|
}
|
|
|
|
message CCLCMsg_RequestPause {
|
|
optional RequestPause_t pause_type = 1 [default = RP_PAUSE];
|
|
optional int32 pause_group = 2;
|
|
}
|
|
|
|
message CCLCMsg_CmdKeyValues {
|
|
optional bytes data = 1;
|
|
}
|
|
|
|
message CSVCMsg_ServerInfo {
|
|
optional int32 protocol = 1;
|
|
optional int32 server_count = 2;
|
|
optional bool is_dedicated = 3;
|
|
optional bool is_hltv = 4;
|
|
optional bool is_replay = 5;
|
|
optional int32 c_os = 6;
|
|
optional fixed32 map_crc = 7;
|
|
optional fixed32 client_crc = 8;
|
|
optional fixed32 string_table_crc = 9;
|
|
optional int32 max_clients = 10;
|
|
optional int32 max_classes = 11;
|
|
optional int32 player_slot = 12;
|
|
optional float tick_interval = 13;
|
|
optional string game_dir = 14;
|
|
optional string map_name = 15;
|
|
optional string sky_name = 16;
|
|
optional string host_name = 17;
|
|
optional string addon_name = 18;
|
|
optional CSVCMsg_GameSessionConfiguration game_session_config = 19;
|
|
optional bytes game_session_manifest = 20;
|
|
}
|
|
|
|
message CSVCMsg_ClassInfo {
|
|
message class_t {
|
|
optional int32 class_id = 1;
|
|
optional string data_table_name = 2;
|
|
optional string class_name = 3;
|
|
}
|
|
|
|
optional bool create_on_client = 1;
|
|
repeated CSVCMsg_ClassInfo.class_t classes = 2;
|
|
}
|
|
|
|
message CSVCMsg_SetPause {
|
|
optional bool paused = 1;
|
|
}
|
|
|
|
message CSVCMsg_VoiceInit {
|
|
optional int32 quality = 1;
|
|
optional string codec = 2;
|
|
optional int32 version = 3 [default = 0];
|
|
}
|
|
|
|
message CSVCMsg_Print {
|
|
optional string text = 1;
|
|
}
|
|
|
|
message CSVCMsg_Sounds {
|
|
message sounddata_t {
|
|
optional sint32 origin_x = 1;
|
|
optional sint32 origin_y = 2;
|
|
optional sint32 origin_z = 3;
|
|
optional uint32 volume = 4;
|
|
optional float delay_value = 5;
|
|
optional int32 sequence_number = 6;
|
|
optional int32 entity_index = 7;
|
|
optional int32 channel = 8;
|
|
optional int32 pitch = 9;
|
|
optional int32 flags = 10;
|
|
optional uint32 sound_num = 11;
|
|
optional fixed32 sound_num_handle = 12;
|
|
optional int32 speaker_entity = 13;
|
|
optional int32 random_seed = 14;
|
|
optional int32 sound_level = 15;
|
|
optional bool is_sentence = 16;
|
|
optional bool is_ambient = 17;
|
|
optional uint32 guid = 18;
|
|
optional fixed64 sound_resource_id = 19;
|
|
}
|
|
|
|
optional bool reliable_sound = 1;
|
|
repeated CSVCMsg_Sounds.sounddata_t sounds = 2;
|
|
}
|
|
|
|
message CSVCMsg_Prefetch {
|
|
optional int32 sound_index = 1;
|
|
optional PrefetchType resource_type = 2 [default = PFT_SOUND];
|
|
}
|
|
|
|
message CSVCMsg_SetView {
|
|
optional int32 entity_index = 1;
|
|
optional int32 slot = 2;
|
|
}
|
|
|
|
message CSVCMsg_FixAngle {
|
|
optional bool relative = 1;
|
|
optional CMsgQAngle angle = 2;
|
|
}
|
|
|
|
message CSVCMsg_CrosshairAngle {
|
|
optional CMsgQAngle angle = 1;
|
|
}
|
|
|
|
message CSVCMsg_BSPDecal {
|
|
optional CMsgVector pos = 1;
|
|
optional int32 decal_texture_index = 2;
|
|
optional int32 entity_index = 3;
|
|
optional int32 model_index = 4;
|
|
optional bool low_priority = 5;
|
|
}
|
|
|
|
message CSVCMsg_SplitScreen {
|
|
optional ESplitScreenMessageType type = 1 [default = MSG_SPLITSCREEN_ADDUSER];
|
|
optional int32 slot = 2;
|
|
optional int32 player_index = 3;
|
|
}
|
|
|
|
message CSVCMsg_GetCvarValue {
|
|
optional int32 cookie = 1;
|
|
optional string cvar_name = 2;
|
|
}
|
|
|
|
message CSVCMsg_Menu {
|
|
optional int32 dialog_type = 1;
|
|
optional bytes menu_key_values = 2;
|
|
}
|
|
|
|
message CSVCMsg_SendTable {
|
|
message sendprop_t {
|
|
optional int32 type = 1;
|
|
optional string var_name = 2;
|
|
optional int32 flags = 3;
|
|
optional int32 priority = 4;
|
|
optional string dt_name = 5;
|
|
optional int32 num_elements = 6;
|
|
optional float low_value = 7;
|
|
optional float high_value = 8;
|
|
optional int32 num_bits = 9;
|
|
}
|
|
|
|
optional bool is_end = 1;
|
|
optional string net_table_name = 2;
|
|
optional bool needs_decoder = 3;
|
|
repeated CSVCMsg_SendTable.sendprop_t props = 4;
|
|
}
|
|
|
|
message CSVCMsg_GameEventList {
|
|
message key_t {
|
|
optional int32 type = 1;
|
|
optional string name = 2;
|
|
}
|
|
|
|
message descriptor_t {
|
|
optional int32 eventid = 1;
|
|
optional string name = 2;
|
|
repeated CSVCMsg_GameEventList.key_t keys = 3;
|
|
}
|
|
|
|
repeated CSVCMsg_GameEventList.descriptor_t descriptors = 1;
|
|
}
|
|
|
|
message CSVCMsg_PacketEntities {
|
|
optional int32 max_entries = 1;
|
|
optional int32 updated_entries = 2;
|
|
optional bool is_delta = 3;
|
|
optional bool update_baseline = 4;
|
|
optional int32 baseline = 5;
|
|
optional int32 delta_from = 6;
|
|
optional bytes entity_data = 7;
|
|
optional bool pending_full_frame = 8;
|
|
optional uint32 active_spawngroup_handle = 9;
|
|
optional uint32 max_spawngroup_creationsequence = 10;
|
|
}
|
|
|
|
message CSVCMsg_TempEntities {
|
|
optional bool reliable = 1;
|
|
optional int32 num_entries = 2;
|
|
optional bytes entity_data = 3;
|
|
}
|
|
|
|
message CSVCMsg_CreateStringTable {
|
|
optional string name = 1;
|
|
optional int32 num_entries = 2;
|
|
optional bool user_data_fixed_size = 3;
|
|
optional int32 user_data_size = 4;
|
|
optional int32 user_data_size_bits = 5;
|
|
optional int32 flags = 6;
|
|
optional bytes string_data = 7;
|
|
optional int32 uncompressed_size = 8;
|
|
optional bool data_compressed = 9;
|
|
}
|
|
|
|
message CSVCMsg_UpdateStringTable {
|
|
optional int32 table_id = 1;
|
|
optional int32 num_changed_entries = 2;
|
|
optional bytes string_data = 3;
|
|
}
|
|
|
|
message CSVCMsg_VoiceData {
|
|
optional CMsgVoiceAudio audio = 1;
|
|
optional int32 client = 2;
|
|
optional bool proximity = 3;
|
|
optional fixed64 xuid = 4;
|
|
optional int32 audible_mask = 5;
|
|
optional uint32 tick = 6;
|
|
}
|
|
|
|
message CSVCMsg_PacketReliable {
|
|
optional int32 tick = 1;
|
|
optional int32 messagessize = 2;
|
|
optional bool state = 3;
|
|
}
|
|
|
|
message CSVCMsg_FullFrameSplit {
|
|
optional int32 tick = 1;
|
|
optional int32 section = 2;
|
|
optional int32 total = 3;
|
|
optional bytes data = 4;
|
|
}
|
|
|
|
message CSVCMsg_HLTVStatus {
|
|
optional string master = 1;
|
|
optional int32 clients = 2;
|
|
optional int32 slots = 3;
|
|
optional int32 proxies = 4;
|
|
}
|
|
|
|
message CSVCMsg_ServerSteamID {
|
|
optional uint64 steam_id = 1;
|
|
}
|
|
|
|
message CSVCMsg_CmdKeyValues {
|
|
optional bytes data = 1;
|
|
}
|
|
|
|
message CMsgIPCAddress {
|
|
optional fixed64 computer_guid = 1;
|
|
optional uint32 process_id = 2;
|
|
}
|
|
|
|
message CMsgServerPeer {
|
|
optional int32 player_slot = 1;
|
|
optional fixed64 steamid = 2;
|
|
optional CMsgIPCAddress ipc = 3;
|
|
optional bool they_hear_you = 4;
|
|
optional bool you_hear_them = 5;
|
|
optional bool is_listenserver_host = 6;
|
|
}
|
|
|
|
message CSVCMsg_PeerList {
|
|
repeated CMsgServerPeer peer = 1;
|
|
}
|
|
|
|
message CSVCMsg_ClearAllStringTables {
|
|
optional string mapname = 1;
|
|
optional uint32 map_crc = 2;
|
|
}
|
|
|
|
message ProtoFlattenedSerializerField_t {
|
|
optional int32 var_type_sym = 1;
|
|
optional int32 var_name_sym = 2;
|
|
optional int32 bit_count = 3;
|
|
optional float low_value = 4;
|
|
optional float high_value = 5;
|
|
optional int32 encode_flags = 6;
|
|
optional int32 field_serializer_name_sym = 7;
|
|
optional int32 field_serializer_version = 8;
|
|
optional int32 send_node_sym = 9;
|
|
optional int32 var_encoder_sym = 10;
|
|
}
|
|
|
|
message ProtoFlattenedSerializer_t {
|
|
optional int32 serializer_name_sym = 1;
|
|
optional int32 serializer_version = 2;
|
|
repeated int32 fields_index = 3;
|
|
}
|
|
|
|
message CSVCMsg_FlattenedSerializer {
|
|
repeated ProtoFlattenedSerializer_t serializers = 1;
|
|
repeated string symbols = 2;
|
|
repeated ProtoFlattenedSerializerField_t fields = 3;
|
|
}
|
|
|
|
message CSVCMsg_StopSound {
|
|
optional fixed32 guid = 1;
|
|
}
|
|
|
|
message CBidirMsg_RebroadcastGameEvent {
|
|
optional bool posttoserver = 1;
|
|
optional int32 buftype = 2;
|
|
optional uint32 clientbitcount = 3;
|
|
optional uint64 receivingclients = 4;
|
|
}
|
|
|
|
message CBidirMsg_RebroadcastSource {
|
|
optional int32 eventsource = 1;
|
|
}
|
|
|
|
message SerializedNetAddress_t {
|
|
required bytes serializedAddress = 1;
|
|
}
|
|
|
|
message CBidirMsg_RelayInfo {
|
|
enum Operation_t {
|
|
RIO_REQUEST_RELAY = 0;
|
|
RIO_WILL_RELAY = 1;
|
|
RIO_NO_ROUTE = 2;
|
|
RIO_REJECT_RELAY = 3;
|
|
RIO_ESTABLISH_CONNECTION = 4;
|
|
}
|
|
|
|
required CBidirMsg_RelayInfo.Operation_t operation = 1 [default = RIO_REQUEST_RELAY];
|
|
optional SerializedNetAddress_t serializedTargetAddress = 2;
|
|
optional uint32 additionalHops = 3;
|
|
}
|
|
|
|
message SignedPayload_t {
|
|
required bytes payloadData = 1;
|
|
required uint32 signature = 2;
|
|
required bool bPayloadEncrypted = 3;
|
|
}
|
|
|
|
message CBidirMsg_RelayPacket {
|
|
message SignedDestinationAddress_t {
|
|
required SerializedNetAddress_t serializedAddr = 1;
|
|
required uint32 signature = 2;
|
|
optional bytes encryptedPayloadKey = 3;
|
|
}
|
|
|
|
required uint32 prevhopcount = 1;
|
|
required SerializedNetAddress_t originalSender = 2;
|
|
required SignedPayload_t signedPayload = 3;
|
|
repeated CBidirMsg_RelayPacket.SignedDestinationAddress_t recipientList = 4;
|
|
}
|
|
|
|
message CMsgServerNetworkStats {
|
|
message Port {
|
|
optional int32 port = 1;
|
|
optional string name = 2;
|
|
}
|
|
|
|
message Player {
|
|
optional uint64 steamid = 1;
|
|
optional string remote_addr = 2;
|
|
optional int32 ping_stddev_ms = 3;
|
|
optional int32 ping_avg_ms = 4;
|
|
optional float packet_loss_pct = 5;
|
|
optional bool is_bot = 6;
|
|
}
|
|
|
|
optional bool dedicated = 1;
|
|
optional int32 cpu_usage = 2;
|
|
optional int32 memory_used_mb = 3;
|
|
optional int32 memory_free_mb = 4;
|
|
optional int32 uptime = 5;
|
|
optional int32 spawn_count = 6;
|
|
optional int32 num_clients = 8;
|
|
optional int32 num_bots = 9;
|
|
optional int32 num_spectators = 10;
|
|
optional int32 num_tv_relays = 11;
|
|
optional float fps = 12;
|
|
repeated CMsgServerNetworkStats.Port ports = 17;
|
|
optional float avg_latency_out = 18;
|
|
optional float avg_latency_in = 19;
|
|
optional float avg_packets_out = 20;
|
|
optional float avg_packets_in = 21;
|
|
optional float avg_loss_out = 22;
|
|
optional float avg_loss_in = 23;
|
|
optional float avg_data_out = 24;
|
|
optional float avg_data_in = 25;
|
|
optional uint64 total_data_in = 26;
|
|
optional uint64 total_packets_in = 27;
|
|
optional uint64 total_data_out = 28;
|
|
optional uint64 total_packets_out = 29;
|
|
repeated CMsgServerNetworkStats.Player players = 30;
|
|
}
|
|
|