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.
428 lines
13 KiB
Protocol Buffer
428 lines
13 KiB
Protocol Buffer
package dota;
|
|
|
|
import "steammessages.proto";
|
|
import "dota_shared_enums.proto";
|
|
import "dota_client_enums.proto";
|
|
import "base_gcmessages.proto";
|
|
import "dota_gcmessages_common_match_management.proto";
|
|
|
|
option optimize_for = SPEED;
|
|
option cc_generic_services = false;
|
|
|
|
enum EStartFindingMatchResult {
|
|
k_EStartFindingMatchResult_Invalid = 0;
|
|
k_EStartFindingMatchResult_OK = 1;
|
|
k_EStartFindingMatchResult_AlreadySearching = 2;
|
|
k_EStartFindingMatchResult_FailGeneric = 100;
|
|
k_EStartFindingMatchResult_FailedIgnore = 101;
|
|
k_EStartFindingMatchResult_MatchmakingDisabled = 102;
|
|
k_EStartFindingMatchResult_RegionOffline = 103;
|
|
k_EStartFindingMatchResult_MatchmakingCooldown = 104;
|
|
k_EStartFindingMatchResult_ClientOutOfDate = 105;
|
|
k_EStartFindingMatchResult_CompetitiveNoLowPriority = 106;
|
|
k_EStartFindingMatchResult_CompetitiveNotUnlocked = 107;
|
|
k_EStartFindingMatchResult_GameModeNotUnlocked = 108;
|
|
k_EStartFindingMatchResult_CompetitiveNotEnoughSkillData = 109;
|
|
k_EStartFindingMatchResult_MissingInitialSkill = 110;
|
|
k_EStartFindingMatchResult_CompetitiveRankSpreadTooLarge = 111;
|
|
k_EStartFindingMatchResult_MemberAlreadyInLobby = 112;
|
|
k_EStartFindingMatchResult_MemberNotVACVerified = 113;
|
|
k_EStartFindingMatchResult_WeekendTourneyBadPartySize = 114;
|
|
k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooSmall = 115;
|
|
k_EStartFindingMatchResult_WeekendTourneyIndividualBuyInTooLarge = 116;
|
|
k_EStartFindingMatchResult_WeekendTourneyTeamBuyInTooLarge = 117;
|
|
k_EStartFindingMatchResult_MemberMissingEventOwnership = 118;
|
|
k_EStartFindingMatchResult_WeekendTourneyNotUnlocked = 119;
|
|
}
|
|
|
|
message CMsgStartFindingMatch {
|
|
optional string key = 1;
|
|
optional uint32 matchgroups = 2 [default = 4294967295];
|
|
optional uint32 client_version = 3;
|
|
optional uint32 game_modes = 4 [default = 4294967295];
|
|
optional DOTABotDifficulty bot_difficulty = 5 [default = BOT_DIFFICULTY_HARD];
|
|
optional MatchType match_type = 6 [default = MATCH_TYPE_CASUAL];
|
|
optional uint32 matchlanguages = 7 [default = 4294967295];
|
|
optional uint32 map_preference = 9;
|
|
optional uint32 team_id = 8;
|
|
optional MatchLanguages game_language_enum = 10 [default = MATCH_LANGUAGE_INVALID];
|
|
optional string game_language_name = 11;
|
|
optional CMsgClientPingData ping_data = 12;
|
|
optional uint32 region_select_flags = 13;
|
|
}
|
|
|
|
message CMsgStartFindingMatchResult {
|
|
optional uint32 legacy_generic_eresult = 1 [default = 2];
|
|
optional EStartFindingMatchResult result = 2 [default = k_EStartFindingMatchResult_Invalid];
|
|
optional string error_token = 3;
|
|
optional string debug_message = 4;
|
|
repeated fixed64 responsible_party_members = 5;
|
|
}
|
|
|
|
message CMsgStopFindingMatch {
|
|
}
|
|
|
|
message CMsgReadyUp {
|
|
optional DOTALobbyReadyState state = 1 [default = DOTALobbyReadyState_UNDECLARED];
|
|
optional fixed64 ready_up_key = 2;
|
|
optional CDOTAClientHardwareSpecs hardware_specs = 3;
|
|
}
|
|
|
|
message CMsgReadyUpStatus {
|
|
optional fixed64 lobby_id = 1;
|
|
repeated uint32 accepted_ids = 2;
|
|
repeated uint32 declined_ids = 3;
|
|
}
|
|
|
|
message CMsgAbandonCurrentGame {
|
|
}
|
|
|
|
message CMsgPracticeLobbySetDetails {
|
|
optional uint64 lobby_id = 1;
|
|
optional string game_name = 2;
|
|
repeated CLobbyTeamDetails team_details = 3;
|
|
optional uint32 server_region = 4;
|
|
optional uint32 game_mode = 5;
|
|
optional DOTA_CM_PICK cm_pick = 6 [default = DOTA_CM_RANDOM];
|
|
optional DOTABotDifficulty bot_difficulty = 9 [default = BOT_DIFFICULTY_MEDIUM];
|
|
optional bool allow_cheats = 10;
|
|
optional bool fill_with_bots = 11;
|
|
optional bool intro_mode = 12;
|
|
optional bool allow_spectating = 13;
|
|
optional DOTAGameVersion game_version = 14 [default = GAME_VERSION_CURRENT];
|
|
optional string pass_key = 15;
|
|
optional uint32 leagueid = 16;
|
|
optional uint32 penalty_level_radiant = 17;
|
|
optional uint32 penalty_level_dire = 18;
|
|
optional uint32 load_game_id = 19;
|
|
optional uint32 series_type = 20;
|
|
optional uint32 radiant_series_wins = 21;
|
|
optional uint32 dire_series_wins = 22;
|
|
optional bool allchat = 23 [default = false];
|
|
optional LobbyDotaTVDelay dota_tv_delay = 24 [default = LobbyDotaTV_120];
|
|
optional bool lan = 25;
|
|
optional string custom_game_mode = 26;
|
|
optional string custom_map_name = 27;
|
|
optional uint32 custom_difficulty = 28;
|
|
optional uint64 custom_game_id = 29;
|
|
optional uint32 custom_min_players = 30;
|
|
optional uint32 custom_max_players = 31;
|
|
optional uint32 lan_host_ping_to_server_region = 32;
|
|
optional DOTALobbyVisibility visibility = 33 [default = DOTALobbyVisibility_Public];
|
|
optional fixed64 custom_game_crc = 34;
|
|
optional uint32 league_series_id = 35;
|
|
optional uint32 league_game_id = 36;
|
|
optional fixed32 custom_game_timestamp = 37;
|
|
optional uint64 previous_match_override = 38;
|
|
optional uint32 league_selection_priority_team = 39;
|
|
optional SelectionPriorityType league_selection_priority_choice = 40 [default = UNDEFINED];
|
|
optional SelectionPriorityType league_non_selection_priority_choice = 41 [default = UNDEFINED];
|
|
optional LobbyDotaPauseSetting pause_setting = 42 [default = LobbyDotaPauseSetting_Unlimited];
|
|
}
|
|
|
|
message CMsgPracticeLobbyCreate {
|
|
message SaveGame {
|
|
optional bytes data = 1;
|
|
optional int32 version = 2;
|
|
optional fixed64 steam_id = 3;
|
|
optional fixed64 signature = 4;
|
|
}
|
|
|
|
optional string search_key = 1;
|
|
optional string pass_key = 5;
|
|
optional uint32 client_version = 6;
|
|
optional CMsgPracticeLobbySetDetails lobby_details = 7;
|
|
optional CMsgPracticeLobbyCreate.SaveGame save_game = 8;
|
|
}
|
|
|
|
message CMsgPracticeLobbySetTeamSlot {
|
|
optional DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
|
|
optional uint32 slot = 2;
|
|
optional DOTABotDifficulty bot_difficulty = 3 [default = BOT_DIFFICULTY_PASSIVE];
|
|
}
|
|
|
|
message CMsgPracticeLobbySetCoach {
|
|
optional DOTA_GC_TEAM team = 1 [default = DOTA_GC_TEAM_GOOD_GUYS];
|
|
}
|
|
|
|
message CMsgPracticeLobbyJoinBroadcastChannel {
|
|
optional uint32 channel = 1;
|
|
optional string preferred_description = 2;
|
|
optional string preferred_country_code = 3;
|
|
optional string preferred_language_code = 4;
|
|
}
|
|
|
|
message CMsgPracticeLobbyCloseBroadcastChannel {
|
|
optional uint32 channel = 1;
|
|
}
|
|
|
|
message CMsgPracticeLobbyToggleBroadcastChannelCameramanStatus {
|
|
}
|
|
|
|
message CMsgPracticeLobbyKick {
|
|
optional uint32 account_id = 3;
|
|
}
|
|
|
|
message CMsgPracticeLobbyKickFromTeam {
|
|
optional uint32 account_id = 1;
|
|
}
|
|
|
|
message CMsgPracticeLobbyLeave {
|
|
}
|
|
|
|
message CMsgPracticeLobbyLaunch {
|
|
optional uint32 client_version = 5;
|
|
}
|
|
|
|
message CMsgApplyTeamToPracticeLobby {
|
|
optional uint32 team_id = 1;
|
|
}
|
|
|
|
message CMsgClearPracticeLobbyTeam {
|
|
}
|
|
|
|
message CMsgPracticeLobbyList {
|
|
optional bool tournament_games = 1;
|
|
optional string pass_key = 2;
|
|
optional uint32 region = 3;
|
|
optional DOTA_GameMode game_mode = 4 [default = DOTA_GAMEMODE_NONE];
|
|
}
|
|
|
|
message CMsgPracticeLobbyListResponseEntry {
|
|
message CLobbyMember {
|
|
optional uint32 account_id = 1;
|
|
optional string player_name = 2;
|
|
}
|
|
|
|
optional uint64 id = 1 [(key_field) = true];
|
|
optional uint32 tournament_id = 3;
|
|
optional uint32 tournament_game_id = 4;
|
|
repeated CMsgPracticeLobbyListResponseEntry.CLobbyMember members = 5;
|
|
optional bool requires_pass_key = 6;
|
|
optional uint32 leader_account_id = 7;
|
|
optional uint32 guild_id = 8;
|
|
optional uint64 guild_logo = 9;
|
|
optional string name = 10;
|
|
optional string custom_game_mode = 11;
|
|
optional DOTA_GameMode game_mode = 12 [default = DOTA_GAMEMODE_NONE];
|
|
optional bool friend_present = 13;
|
|
optional uint32 players = 14;
|
|
optional string custom_map_name = 15;
|
|
optional uint32 max_player_count = 16;
|
|
optional uint32 server_region = 17;
|
|
optional uint32 lan_host_ping_to_server_region = 18;
|
|
optional uint32 league_id = 19;
|
|
}
|
|
|
|
message CMsgPracticeLobbyListResponse {
|
|
optional bool tournament_games = 1;
|
|
repeated CMsgPracticeLobbyListResponseEntry lobbies = 2;
|
|
}
|
|
|
|
message CMsgLobbyList {
|
|
optional uint32 server_region = 1 [default = 0];
|
|
optional DOTA_GameMode game_mode = 2 [default = DOTA_GAMEMODE_NONE];
|
|
}
|
|
|
|
message CMsgLobbyListResponse {
|
|
repeated CMsgPracticeLobbyListResponseEntry lobbies = 1;
|
|
}
|
|
|
|
message CMsgPracticeLobbyJoin {
|
|
optional uint64 lobby_id = 1;
|
|
optional uint32 client_version = 2;
|
|
optional string pass_key = 3;
|
|
optional fixed64 custom_game_crc = 4;
|
|
optional fixed32 custom_game_timestamp = 5;
|
|
}
|
|
|
|
message CMsgPracticeLobbyJoinResponse {
|
|
optional DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
|
|
}
|
|
|
|
message CMsgFriendPracticeLobbyListRequest {
|
|
repeated uint32 friends = 1;
|
|
}
|
|
|
|
message CMsgFriendPracticeLobbyListResponse {
|
|
repeated CMsgPracticeLobbyListResponseEntry lobbies = 1;
|
|
}
|
|
|
|
message CMsgGuildmatePracticeLobbyListRequest {
|
|
repeated uint32 guilds = 1;
|
|
}
|
|
|
|
message CMsgGuildmatePracticeLobbyListResponse {
|
|
repeated CMsgPracticeLobbyListResponseEntry lobbies = 1;
|
|
}
|
|
|
|
message CMsgJoinableCustomGameModesRequest {
|
|
optional uint32 server_region = 1;
|
|
}
|
|
|
|
message CMsgJoinableCustomGameModesResponseEntry {
|
|
optional uint64 custom_game_id = 1;
|
|
optional uint32 lobby_count = 2;
|
|
optional uint32 player_count = 3;
|
|
}
|
|
|
|
message CMsgJoinableCustomGameModesResponse {
|
|
repeated CMsgJoinableCustomGameModesResponseEntry game_modes = 1;
|
|
}
|
|
|
|
message CMsgJoinableCustomLobbiesRequest {
|
|
optional uint32 server_region = 1;
|
|
optional uint64 custom_game_id = 2;
|
|
}
|
|
|
|
message CMsgJoinableCustomLobbiesResponseEntry {
|
|
optional fixed64 lobby_id = 1;
|
|
optional uint64 custom_game_id = 2;
|
|
optional string lobby_name = 3;
|
|
optional uint32 member_count = 4;
|
|
optional uint32 leader_account_id = 5;
|
|
optional string leader_name = 6;
|
|
optional string custom_map_name = 7;
|
|
optional uint32 max_player_count = 8;
|
|
optional uint32 server_region = 9;
|
|
optional uint32 lan_host_ping_to_server_region = 10;
|
|
optional bool has_pass_key = 11;
|
|
}
|
|
|
|
message CMsgJoinableCustomLobbiesResponse {
|
|
repeated CMsgJoinableCustomLobbiesResponseEntry lobbies = 1;
|
|
}
|
|
|
|
message CMsgQuickJoinCustomLobby {
|
|
message LegacyRegionPing {
|
|
optional uint32 server_region = 1;
|
|
optional uint32 ping = 2;
|
|
optional fixed32 region_code = 3;
|
|
}
|
|
|
|
optional uint32 legacy_server_region = 1;
|
|
optional uint64 custom_game_id = 2;
|
|
optional uint32 client_version = 3;
|
|
optional CMsgPracticeLobbySetDetails create_lobby_details = 4;
|
|
optional bool allow_any_map = 5;
|
|
repeated CMsgQuickJoinCustomLobby.LegacyRegionPing legacy_region_pings = 6;
|
|
optional CMsgClientPingData ping_data = 7;
|
|
}
|
|
|
|
message CMsgQuickJoinCustomLobbyResponse {
|
|
optional DOTAJoinLobbyResult result = 1 [default = DOTA_JOIN_RESULT_SUCCESS];
|
|
}
|
|
|
|
message CMsgBotGameCreate {
|
|
optional string search_key = 1;
|
|
optional uint32 client_version = 2;
|
|
optional DOTABotDifficulty difficulty = 3 [default = BOT_DIFFICULTY_PASSIVE];
|
|
optional DOTA_GC_TEAM team = 4 [default = DOTA_GC_TEAM_GOOD_GUYS];
|
|
optional uint32 game_mode = 5;
|
|
}
|
|
|
|
message CMsgCustomGameCreate {
|
|
optional string search_key = 1;
|
|
optional uint32 client_version = 2;
|
|
optional uint32 difficulty = 3;
|
|
optional string game_mode = 4;
|
|
optional string map = 5;
|
|
optional uint64 custom_game_id = 7;
|
|
}
|
|
|
|
message CMsgEventGameCreate {
|
|
optional string search_key = 1;
|
|
optional uint32 client_version = 2;
|
|
optional uint32 difficulty = 3;
|
|
optional string game_mode = 4;
|
|
optional string map = 5;
|
|
optional uint64 custom_game_id = 7;
|
|
}
|
|
|
|
message CMsgDOTAPartyMemberSetCoach {
|
|
optional bool wants_coach = 1;
|
|
}
|
|
|
|
message CMsgDOTASetGroupLeader {
|
|
optional fixed64 new_leader_steamid = 1;
|
|
}
|
|
|
|
message CMsgDOTACancelGroupInvites {
|
|
repeated fixed64 invited_steamids = 1;
|
|
repeated fixed64 invited_groupids = 2;
|
|
}
|
|
|
|
message CMsgDOTASetGroupOpenStatus {
|
|
optional bool open = 1;
|
|
}
|
|
|
|
message CMsgDOTAGroupMergeInvite {
|
|
optional fixed64 other_group_id = 1;
|
|
}
|
|
|
|
message CMsgDOTAGroupMergeResponse {
|
|
optional fixed64 initiator_group_id = 1;
|
|
optional bool accept = 2;
|
|
}
|
|
|
|
message CMsgDOTAGroupMergeReply {
|
|
optional EDOTAGroupMergeResult result = 1 [default = k_EDOTAGroupMergeResult_OK];
|
|
}
|
|
|
|
message CMsgSpectatorLobbyGameDetails {
|
|
message Team {
|
|
optional uint32 team_id = 1;
|
|
optional string team_name = 2;
|
|
optional fixed64 team_logo = 3;
|
|
}
|
|
|
|
optional uint32 language = 1;
|
|
optional uint64 match_id = 2;
|
|
optional fixed64 server_steam_id = 3;
|
|
optional string stream_url = 4;
|
|
optional string stream_name = 5;
|
|
optional uint32 league_id = 6;
|
|
optional uint32 series_type = 7;
|
|
optional uint32 series_game = 8;
|
|
optional CMsgSpectatorLobbyGameDetails.Team radiant_team = 9;
|
|
optional CMsgSpectatorLobbyGameDetails.Team dire_team = 10;
|
|
}
|
|
|
|
message CMsgSetSpectatorLobbyDetails {
|
|
optional uint64 lobby_id = 1;
|
|
optional string lobby_name = 2;
|
|
optional string pass_key = 3;
|
|
optional CMsgSpectatorLobbyGameDetails game_details = 4;
|
|
}
|
|
|
|
message CMsgCreateSpectatorLobby {
|
|
optional uint32 client_version = 1;
|
|
optional CMsgSetSpectatorLobbyDetails details = 2;
|
|
}
|
|
|
|
message CMsgSpectatorLobbyList {
|
|
}
|
|
|
|
message CMsgSpectatorLobbyListResponse {
|
|
message SpectatorLobby {
|
|
optional uint64 lobby_id = 1;
|
|
optional string game_name = 2;
|
|
optional bool requires_pass_key = 3;
|
|
optional uint32 leader_account_id = 4;
|
|
optional uint32 member_count = 5;
|
|
optional CMsgSpectatorLobbyGameDetails game_details = 7;
|
|
}
|
|
|
|
repeated CMsgSpectatorLobbyListResponse.SpectatorLobby lobbies = 1;
|
|
}
|
|
|
|
message CMsgClientToGCRequestSteamDatagramTicket {
|
|
optional fixed64 server_steam_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCRequestSteamDatagramTicketResponse {
|
|
optional string serialized_ticket = 1;
|
|
optional string message = 2;
|
|
}
|
|
|