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.
301 lines
10 KiB
Protocol Buffer
301 lines
10 KiB
Protocol Buffer
8 years ago
|
package dota;
|
||
|
|
||
|
import "steammessages.proto";
|
||
|
import "gcsdk_gcmessages.proto";
|
||
|
import "dota_shared_enums.proto";
|
||
|
|
||
|
option optimize_for = SPEED;
|
||
|
option cc_generic_services = false;
|
||
|
|
||
|
enum LobbyDotaTVDelay {
|
||
|
LobbyDotaTV_10 = 0;
|
||
|
LobbyDotaTV_120 = 1;
|
||
|
LobbyDotaTV_300 = 2;
|
||
|
}
|
||
|
|
||
|
enum LobbyDotaPauseSetting {
|
||
|
LobbyDotaPauseSetting_Unlimited = 0;
|
||
|
LobbyDotaPauseSetting_Limited = 1;
|
||
|
LobbyDotaPauseSetting_Disabled = 2;
|
||
|
}
|
||
|
|
||
|
message CSODOTAPartyMember {
|
||
|
optional PartnerAccountType partner_type = 1 [default = PARTNER_NONE];
|
||
|
optional bool is_coach = 2;
|
||
|
repeated uint32 region_ping_codes = 4 [packed = true];
|
||
|
repeated uint32 region_ping_times = 5 [packed = true];
|
||
|
optional uint32 region_ping_failed_bitmask = 6;
|
||
|
optional uint32 tourney_skill_level = 7;
|
||
|
optional uint32 tourney_buyin = 8;
|
||
|
}
|
||
|
|
||
|
message CSODOTAParty {
|
||
|
enum State {
|
||
|
UI = 0;
|
||
|
FINDING_MATCH = 1;
|
||
|
IN_MATCH = 2;
|
||
|
}
|
||
|
|
||
|
optional uint64 party_id = 1 [(key_field) = true];
|
||
|
optional fixed64 leader_id = 2;
|
||
|
repeated fixed64 member_ids = 3;
|
||
|
optional uint32 game_modes = 4;
|
||
|
optional CSODOTAParty.State state = 6 [default = UI];
|
||
|
optional uint32 effective_started_matchmaking_time = 7;
|
||
|
optional uint32 raw_started_matchmaking_time = 32;
|
||
|
optional uint32 attempt_start_time = 33;
|
||
|
optional uint32 attempt_num = 34;
|
||
|
optional uint32 matchgroups = 11;
|
||
|
optional uint32 low_priority_account_id = 19;
|
||
|
optional MatchType match_type = 21 [default = MATCH_TYPE_CASUAL];
|
||
|
optional DOTABotDifficulty bot_difficulty = 22 [default = BOT_DIFFICULTY_PASSIVE];
|
||
|
optional uint32 team_id = 23;
|
||
|
optional string team_name = 51;
|
||
|
optional uint64 team_ui_logo = 52;
|
||
|
optional uint64 team_base_logo = 53;
|
||
|
optional uint32 match_disabled_until_date = 24;
|
||
|
optional uint32 match_disabled_account_id = 25;
|
||
|
optional uint32 matchmaking_max_range_minutes = 26;
|
||
|
optional uint32 matchlanguages = 27;
|
||
|
optional uint32 map_preference = 38;
|
||
|
repeated CSODOTAPartyMember members = 29;
|
||
|
optional uint32 open_guild_id = 30;
|
||
|
repeated uint32 common_guilds = 31;
|
||
|
optional uint32 low_priority_games_remaining = 35;
|
||
|
repeated EEvent active_ingame_events = 39;
|
||
|
optional bool open_for_join_requests = 40;
|
||
|
repeated CSODOTAPartyInvite sent_invites = 41;
|
||
|
repeated CSODOTAPartyInvite recv_invites = 42;
|
||
|
optional uint32 account_flags = 43;
|
||
|
optional uint32 region_select_flags = 44;
|
||
|
optional uint32 exclusive_tournament_id = 45;
|
||
|
optional uint32 tourney_division_id = 47;
|
||
|
optional uint32 tourney_schedule_time = 48;
|
||
|
optional uint32 tourney_skill_level = 49;
|
||
|
optional uint32 tourney_bracket_round = 50;
|
||
|
optional uint32 tourney_queue_deadline_time = 54;
|
||
|
optional ETourneyQueueDeadlineState tourney_queue_deadline_state = 55 [default = k_ETourneyQueueDeadlineState_Normal];
|
||
|
}
|
||
|
|
||
|
message CSODOTAPartyInvite {
|
||
|
message PartyMember {
|
||
|
optional string name = 1;
|
||
|
optional fixed64 steam_id = 2;
|
||
|
optional bool is_coach = 4;
|
||
|
}
|
||
|
|
||
|
optional uint64 group_id = 1 [(key_field) = true];
|
||
|
optional fixed64 sender_id = 2;
|
||
|
optional string sender_name = 3;
|
||
|
repeated CSODOTAPartyInvite.PartyMember members = 4;
|
||
|
optional uint32 team_id = 5;
|
||
|
optional bool low_priority_status = 6;
|
||
|
optional bool as_coach = 7;
|
||
|
optional fixed64 invite_gid = 8;
|
||
|
}
|
||
|
|
||
|
message CSODOTALobbyInvite {
|
||
|
message LobbyMember {
|
||
|
optional string name = 1;
|
||
|
optional fixed64 steam_id = 2;
|
||
|
}
|
||
|
|
||
|
optional uint64 group_id = 1 [(key_field) = true];
|
||
|
optional fixed64 sender_id = 2;
|
||
|
optional string sender_name = 3;
|
||
|
repeated CSODOTALobbyInvite.LobbyMember members = 4;
|
||
|
optional uint64 custom_game_id = 5;
|
||
|
optional fixed64 invite_gid = 6;
|
||
|
optional fixed64 custom_game_crc = 7;
|
||
|
optional fixed32 custom_game_timestamp = 8;
|
||
|
}
|
||
|
|
||
|
message CMsgLeaverState {
|
||
|
optional uint32 lobby_state = 1;
|
||
|
optional DOTA_GameState game_state = 2 [default = DOTA_GAMERULES_STATE_INIT];
|
||
|
optional bool leaver_detected = 3;
|
||
|
optional bool first_blood_happened = 4;
|
||
|
optional bool discard_match_results = 5;
|
||
|
optional bool mass_disconnect = 6;
|
||
|
}
|
||
|
|
||
|
message CDOTALobbyMember {
|
||
|
message CDOTALobbyMemberXPBonus {
|
||
|
optional uint32 type = 1;
|
||
|
optional float xp_bonus = 2;
|
||
|
optional uint64 source_key = 3;
|
||
|
}
|
||
|
|
||
|
optional fixed64 id = 1 [(key_field) = true];
|
||
|
optional uint32 hero_id = 2;
|
||
|
optional DOTA_GC_TEAM team = 3 [default = DOTA_GC_TEAM_GOOD_GUYS];
|
||
|
optional string name = 6;
|
||
|
optional uint32 slot = 7;
|
||
|
optional uint64 party_id = 12;
|
||
|
optional uint32 meta_level = 13;
|
||
|
optional uint32 meta_xp = 14;
|
||
|
optional uint32 meta_xp_awarded = 15;
|
||
|
optional DOTALeaverStatus_t leaver_status = 16 [default = DOTA_LEAVER_NONE];
|
||
|
optional uint32 leaver_actions = 28;
|
||
|
optional uint32 channel = 17;
|
||
|
optional uint32 prize_def_index = 18;
|
||
|
repeated uint32 disabled_hero_id = 20;
|
||
|
optional PartnerAccountType partner_account_type = 21 [default = PARTNER_NONE];
|
||
|
repeated uint32 enabled_hero_id = 22;
|
||
|
optional DOTA_GC_TEAM coach_team = 23 [default = DOTA_GC_TEAM_GOOD_GUYS];
|
||
|
optional uint32 nexon_pc_bang_no = 24;
|
||
|
optional string nexon_pc_bang_name = 25;
|
||
|
repeated CDOTALobbyMember.CDOTALobbyMemberXPBonus xp_bonuses = 27;
|
||
|
optional sint32 rank_change = 29;
|
||
|
optional bool cameraman = 30;
|
||
|
repeated uint32 custom_game_product_ids = 31;
|
||
|
optional uint32 lobby_mvp_vote_account_id = 32;
|
||
|
optional MatchType search_match_type = 33 [default = MATCH_TYPE_CASUAL];
|
||
|
}
|
||
|
|
||
|
message CLobbyTeamDetails {
|
||
|
optional string team_name = 1;
|
||
|
optional string team_tag = 3;
|
||
|
optional uint32 team_id = 4;
|
||
|
optional uint64 team_logo = 5;
|
||
|
optional uint64 team_base_logo = 6;
|
||
|
optional uint64 team_banner_logo = 7;
|
||
|
optional bool team_complete = 8;
|
||
|
optional string guild_name = 9;
|
||
|
optional string guild_tag = 10;
|
||
|
optional uint32 guild_id = 11;
|
||
|
optional uint64 guild_logo = 12;
|
||
|
optional uint64 guild_base_logo = 13;
|
||
|
optional uint64 guild_banner_logo = 14;
|
||
|
optional uint32 rank = 15;
|
||
|
optional sint32 rank_change = 16;
|
||
|
optional bool is_home_team = 17;
|
||
|
}
|
||
|
|
||
|
message CLobbyTimedRewardDetails {
|
||
|
optional uint32 item_def_index = 2;
|
||
|
optional bool is_supply_crate = 3;
|
||
|
optional bool is_timed_drop = 4;
|
||
|
optional uint32 account_id = 5;
|
||
|
optional uint32 origin = 6;
|
||
|
}
|
||
|
|
||
|
message CLobbyBroadcastChannelInfo {
|
||
|
optional uint32 channel_id = 1;
|
||
|
optional string country_code = 2;
|
||
|
optional string description = 3;
|
||
|
optional string language_code = 4;
|
||
|
}
|
||
|
|
||
|
message CSODOTALobby {
|
||
|
message CExtraMsg {
|
||
|
optional uint32 id = 1;
|
||
|
optional bytes contents = 2;
|
||
|
}
|
||
|
|
||
|
enum State {
|
||
|
UI = 0;
|
||
|
READYUP = 4;
|
||
|
SERVERSETUP = 1;
|
||
|
RUN = 2;
|
||
|
POSTGAME = 3;
|
||
|
NOTREADY = 5;
|
||
|
SERVERASSIGN = 6;
|
||
|
}
|
||
|
|
||
|
enum LobbyType {
|
||
|
INVALID = -1;
|
||
|
CASUAL_MATCH = 0;
|
||
|
PRACTICE = 1;
|
||
|
TOURNAMENT = 2;
|
||
|
COOP_BOT_MATCH = 4;
|
||
|
LEGACY_TEAM_MATCH = 5;
|
||
|
LEGACY_SOLO_QUEUE_MATCH = 6;
|
||
|
COMPETITIVE_MATCH = 7;
|
||
|
CASUAL_1V1_MATCH = 8;
|
||
|
WEEKEND_TOURNEY = 9;
|
||
|
LOCAL_BOT_MATCH = 10;
|
||
|
SPECTATOR = 11;
|
||
|
}
|
||
|
|
||
|
optional uint64 lobby_id = 1 [(key_field) = true];
|
||
|
repeated CDOTALobbyMember members = 2;
|
||
|
repeated CDOTALobbyMember left_members = 7;
|
||
|
optional fixed64 leader_id = 11;
|
||
|
optional fixed64 server_id = 6 [default = 0];
|
||
|
optional uint32 game_mode = 3;
|
||
|
repeated fixed64 pending_invites = 10;
|
||
|
optional CSODOTALobby.State state = 4 [default = UI];
|
||
|
optional string connect = 5;
|
||
|
optional CSODOTALobby.LobbyType lobby_type = 12 [default = INVALID];
|
||
|
optional bool allow_cheats = 13;
|
||
|
optional bool fill_with_bots = 14;
|
||
|
optional bool intro_mode = 15;
|
||
|
optional string game_name = 16;
|
||
|
repeated CLobbyTeamDetails team_details = 17;
|
||
|
optional uint32 tutorial_lesson = 18;
|
||
|
optional uint32 tournament_id = 19;
|
||
|
optional uint32 tournament_game_id = 20;
|
||
|
optional uint32 server_region = 21 [default = 0];
|
||
|
optional DOTA_GameState game_state = 22 [default = DOTA_GAMERULES_STATE_INIT];
|
||
|
optional uint32 num_spectators = 23;
|
||
|
optional uint32 matchgroup = 25;
|
||
|
optional DOTA_CM_PICK cm_pick = 28 [default = DOTA_CM_RANDOM];
|
||
|
optional uint64 match_id = 30;
|
||
|
optional bool allow_spectating = 31 [default = true];
|
||
|
optional DOTABotDifficulty bot_difficulty = 36 [default = BOT_DIFFICULTY_HARD];
|
||
|
optional DOTAGameVersion game_version = 37 [default = GAME_VERSION_CURRENT];
|
||
|
repeated CLobbyTimedRewardDetails timed_reward_details = 38;
|
||
|
optional string pass_key = 39;
|
||
|
repeated DOTABotDifficulty bot_slot_difficulty = 41;
|
||
|
optional uint32 leagueid = 42;
|
||
|
optional uint32 penalty_level_radiant = 43 [default = 0];
|
||
|
optional uint32 penalty_level_dire = 44 [default = 0];
|
||
|
optional uint32 load_game_id = 45;
|
||
|
optional uint32 series_type = 46;
|
||
|
optional uint32 radiant_series_wins = 47;
|
||
|
optional uint32 dire_series_wins = 48;
|
||
|
optional uint32 loot_generated = 49;
|
||
|
optional uint32 loot_awarded = 50;
|
||
|
optional bool allchat = 51 [default = false];
|
||
|
optional LobbyDotaTVDelay dota_tv_delay = 53 [default = LobbyDotaTV_10];
|
||
|
optional string custom_game_mode = 54;
|
||
|
optional string custom_map_name = 55;
|
||
|
optional uint32 custom_difficulty = 56;
|
||
|
optional bool lan = 57;
|
||
|
repeated CLobbyBroadcastChannelInfo broadcast_channel_info = 58;
|
||
|
optional uint32 first_leaver_accountid = 59;
|
||
|
optional uint32 series_id = 60;
|
||
|
optional bool low_priority = 61;
|
||
|
repeated CSODOTALobby.CExtraMsg extra_messages = 62;
|
||
|
optional CDOTASaveGame save_game = 63;
|
||
|
optional bool first_blood_happened = 65;
|
||
|
optional EMatchOutcome match_outcome = 70 [default = k_EMatchOutcome_Unknown];
|
||
|
optional bool mass_disconnect = 67;
|
||
|
optional uint64 custom_game_id = 68;
|
||
|
repeated EEvent active_ingame_events = 69;
|
||
|
optional uint32 custom_min_players = 71;
|
||
|
optional uint32 custom_max_players = 72;
|
||
|
optional PartnerAccountType partner_type = 73 [default = PARTNER_NONE];
|
||
|
optional uint32 lan_host_ping_to_server_region = 74;
|
||
|
optional DOTALobbyVisibility visibility = 75 [default = DOTALobbyVisibility_Public];
|
||
|
optional fixed64 custom_game_crc = 76;
|
||
|
optional bool custom_game_auto_created_lobby = 77;
|
||
|
optional uint32 league_series_id = 78;
|
||
|
optional uint32 league_game_id = 79;
|
||
|
optional fixed32 custom_game_timestamp = 80;
|
||
|
repeated uint64 previous_series_matches = 81;
|
||
|
optional uint64 previous_match_override = 82;
|
||
|
optional bool custom_game_uses_account_records = 83;
|
||
|
optional uint32 league_selection_priority_team = 84;
|
||
|
optional SelectionPriorityType league_selection_priority_choice = 85 [default = UNDEFINED];
|
||
|
optional SelectionPriorityType league_non_selection_priority_choice = 86 [default = UNDEFINED];
|
||
|
optional uint32 game_start_time = 87;
|
||
|
optional LobbyDotaPauseSetting pause_setting = 88 [default = LobbyDotaPauseSetting_Unlimited];
|
||
|
optional uint32 lobby_mvp_account_id = 89;
|
||
|
optional uint32 weekend_tourney_division_id = 90;
|
||
|
optional uint32 weekend_tourney_skill_level = 91;
|
||
|
optional uint32 weekend_tourney_bracket_round = 92;
|
||
|
}
|
||
|
|