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.
hyperstone/dota/dota_gcmessages_client_fant...

880 lines
23 KiB
Protocol Buffer

package dota;
import "dota_shared_enums.proto";
option optimize_for = SPEED;
option cc_generic_services = false;
enum DOTA_2013PassportSelectionIndices {
PP13_SEL_ALLSTAR_PLAYER_0 = 0;
PP13_SEL_ALLSTAR_PLAYER_1 = 1;
PP13_SEL_ALLSTAR_PLAYER_2 = 2;
PP13_SEL_ALLSTAR_PLAYER_3 = 3;
PP13_SEL_ALLSTAR_PLAYER_4 = 4;
PP13_SEL_ALLSTAR_PLAYER_5 = 5;
PP13_SEL_ALLSTAR_PLAYER_6 = 6;
PP13_SEL_ALLSTAR_PLAYER_7 = 7;
PP13_SEL_ALLSTAR_PLAYER_8 = 8;
PP13_SEL_ALLSTAR_PLAYER_9 = 9;
PP13_SEL_QUALPRED_WEST_0 = 10;
PP13_SEL_QUALPRED_WEST_1 = 11;
PP13_SEL_QUALPRED_WEST_2 = 12;
PP13_SEL_QUALPRED_WEST_3 = 13;
PP13_SEL_QUALPRED_WEST_4 = 14;
PP13_SEL_QUALPRED_WEST_5 = 15;
PP13_SEL_QUALPRED_WEST_6 = 16;
PP13_SEL_QUALPRED_WEST_7 = 17;
PP13_SEL_QUALPRED_WEST_8 = 18;
PP13_SEL_QUALPRED_WEST_9 = 19;
PP13_SEL_QUALPRED_WEST_10 = 20;
PP13_SEL_QUALPRED_WEST_11 = 21;
PP13_SEL_QUALPRED_WEST_12 = 22;
PP13_SEL_QUALPRED_WEST_13 = 23;
PP13_SEL_QUALPRED_WEST_14 = 24;
PP13_SEL_QUALPRED_EAST_0 = 25;
PP13_SEL_QUALPRED_EAST_1 = 26;
PP13_SEL_QUALPRED_EAST_2 = 27;
PP13_SEL_QUALPRED_EAST_3 = 28;
PP13_SEL_QUALPRED_EAST_4 = 29;
PP13_SEL_QUALPRED_EAST_5 = 30;
PP13_SEL_QUALPRED_EAST_6 = 31;
PP13_SEL_QUALPRED_EAST_7 = 32;
PP13_SEL_QUALPRED_EAST_8 = 33;
PP13_SEL_QUALPRED_EAST_9 = 34;
PP13_SEL_QUALPRED_EAST_10 = 35;
PP13_SEL_QUALPRED_EAST_11 = 36;
PP13_SEL_QUALPRED_EAST_12 = 37;
PP13_SEL_QUALPRED_EAST_13 = 38;
PP13_SEL_QUALPRED_EAST_14 = 39;
PP13_SEL_TEAMCUP_TEAM = 40;
PP13_SEL_TEAMCUP_PLAYER = 41;
PP13_SEL_TEAMCUP_TEAM_LOCK = 42;
PP13_SEL_TEAMCUP_PLAYER_LOCK = 43;
PP13_SEL_EVENTPRED_0 = 44;
PP13_SEL_EVENTPRED_1 = 45;
PP13_SEL_EVENTPRED_2 = 46;
PP13_SEL_EVENTPRED_3 = 47;
PP13_SEL_EVENTPRED_4 = 48;
PP13_SEL_EVENTPRED_5 = 49;
PP13_SEL_EVENTPRED_6 = 50;
PP13_SEL_EVENTPRED_7 = 51;
PP13_SEL_EVENTPRED_8 = 52;
PP13_SEL_EVENTPRED_9 = 53;
PP13_SEL_EVENTPRED_10 = 54;
PP13_SEL_EVENTPRED_11 = 55;
PP13_SEL_EVENTPRED_12 = 56;
PP13_SEL_EVENTPRED_13 = 57;
PP13_SEL_EVENTPRED_14 = 58;
PP13_SEL_EVENTPRED_15 = 59;
PP13_SEL_EVENTPRED_16 = 60;
PP13_SEL_EVENTPRED_17 = 61;
PP13_SEL_EVENTPRED_18 = 62;
PP13_SEL_EVENTPRED_19 = 63;
PP13_SEL_EVENTPRED_20 = 64;
PP13_SEL_EVENTPRED_21 = 65;
PP13_SEL_EVENTPRED_22 = 66;
PP13_SEL_EVENTPRED_23 = 67;
PP13_SEL_EVENTPRED_24 = 68;
PP13_SEL_EVENTPRED_25 = 69;
PP13_SEL_EVENTPRED_26 = 70;
PP13_SEL_EVENTPRED_27 = 71;
PP13_SEL_EVENTPRED_28 = 72;
PP13_SEL_EVENTPRED_29 = 73;
PP13_SEL_EVENTPRED_30 = 74;
PP13_SEL_EVENTPRED_31 = 75;
PP13_SEL_EVENTPRED_32 = 76;
PP13_SEL_EVENTPRED_33 = 77;
PP13_SEL_EVENTPRED_34 = 78;
PP13_SEL_EVENTPRED_35 = 79;
PP13_SEL_EVENTPRED_36 = 80;
PP13_SEL_EVENTPRED_37 = 81;
PP13_SEL_EVENTPRED_38 = 82;
PP13_SEL_EVENTPRED_39 = 83;
PP13_SEL_EVENTPRED_40 = 84;
PP13_SEL_EVENTPRED_41 = 85;
PP13_SEL_EVENTPRED_42 = 86;
PP13_SEL_EVENTPRED_43 = 87;
PP13_SEL_SOLO_0 = 88;
PP13_SEL_SOLO_1 = 89;
PP13_SEL_SOLO_2 = 90;
PP13_SEL_SOLO_3 = 91;
PP13_SEL_SOLO_4 = 92;
PP13_SEL_SOLO_5 = 93;
PP13_SEL_SOLO_6 = 94;
PP13_SEL_SOLO_7 = 95;
}
message CMsgGCPlayerInfo {
message PlayerInfo {
optional uint32 account_id = 1;
optional string name = 2;
optional string country_code = 3;
optional uint32 fantasy_role = 4;
optional uint32 team_id = 5;
optional string team_name = 6;
optional string team_tag = 7;
optional string sponsor = 8;
optional bool is_locked = 9;
optional bool is_pro = 10;
optional uint32 locked_until = 11;
optional uint32 timestamp = 12;
}
message RegionLeaderboard {
optional uint32 division = 1;
repeated uint32 account_ids = 2;
}
repeated CMsgGCPlayerInfo.PlayerInfo player_infos = 1;
repeated CMsgGCPlayerInfo.RegionLeaderboard leaderboards = 2;
}
message CMsgDOTACreateFantasyLeagueRequest {
optional string league_name = 1;
optional uint64 league_logo = 2;
optional Fantasy_Selection_Mode selection_mode = 3 [default = FANTASY_SELECTION_INVALID];
optional uint32 team_count = 4;
}
message CMsgDOTACreateFantasyLeagueResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_TOO_MANY_LEAGUES = 2;
ERROR_INVALID_TEAM_COUNT = 3;
ERROR_CREATION_DISABLED = 4;
}
optional CMsgDOTACreateFantasyLeagueResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgFantasyLeagueScoring {
optional float level = 1;
optional float kills = 2;
optional float deaths = 3;
optional float assists = 4;
optional float last_hits = 5;
optional float denies = 6;
optional float gpm = 7;
optional float xppm = 8;
optional float stuns = 9;
optional float healing = 10;
optional float tower_kills = 11;
optional float roshan_kills = 12;
optional float multiplier_premium = 13;
optional float multiplier_professional = 14;
}
message CMsgDOTAFantasyLeagueInfo {
message OwnerInfo {
optional uint32 owner_account_id = 1;
optional bool left_league = 2;
repeated uint32 player_account_id = 3;
}
optional uint32 fantasy_league_id = 1;
optional uint32 commissioner_account_id = 2;
optional string fantasy_league_name = 3;
optional Fantasy_Selection_Mode selection_mode = 4 [default = FANTASY_SELECTION_INVALID];
optional uint32 team_count = 5;
optional uint64 logo = 6;
optional CMsgFantasyLeagueScoring scoring = 7;
optional uint32 draft_time = 12;
optional uint32 draft_pick_time = 13;
optional uint32 season_start = 15;
optional uint32 season_length = 16;
optional uint32 veto_votes = 17;
optional uint32 acquisitions = 18;
optional uint32 slot_1 = 19;
optional uint32 slot_2 = 20;
optional uint32 slot_3 = 21;
optional uint32 slot_4 = 22;
optional uint32 slot_5 = 23;
optional uint32 bench_slots = 24;
repeated CMsgDOTAFantasyLeagueInfo.OwnerInfo owner_info = 25;
repeated uint32 players = 26;
optional uint32 time_zone = 27;
optional uint32 season = 28;
optional string password = 29;
}
message CMsgDOTAFantasyLeagueEditInfoRequest {
optional uint32 fantasy_league_id = 1;
optional CMsgDOTAFantasyLeagueInfo edit_info = 2;
}
message CMsgDOTAFantasyLeagueEditInfoResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyLeagueEditInfoResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyLeagueFindRequest {
optional uint32 fantasy_league_id = 1;
optional string password = 2;
}
message CMsgDOTAFantasyLeagueFindResponse {
enum EResult {
SUCCESS = 0;
ERROR_LEAGUE_NOT_FOUND = 1;
ERROR_BAD_PASSWORD = 2;
ERROR_UNSPECIFIED = 3;
ERROR_FULL = 4;
ERROR_ALREADY_MEMBER = 5;
ERROR_LEAGUE_LOCKED = 6;
}
optional CMsgDOTAFantasyLeagueFindResponse.EResult result = 1 [default = SUCCESS];
optional string fantasy_league_name = 2;
optional string commissioner_name = 3;
}
message CMsgDOTAFantasyLeagueInfoRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyLeagueInfoResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_BAD_LEAGUE_ID = 2;
}
optional CMsgDOTAFantasyLeagueInfoResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyLeagueMatchupsRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyLeagueMatchupsResponse {
message Matchup {
optional uint32 owner_account_id_1 = 1;
optional uint32 owner_account_id_2 = 2;
optional float score_1 = 3;
optional float score_2 = 4;
}
message WeeklyMatchups {
repeated CMsgDOTAFantasyLeagueMatchupsResponse.Matchup matchup = 1;
optional uint32 start_time = 2;
optional uint32 end_time = 3;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_BAD_LEAGUE_ID = 2;
ERROR_NO_PERMISSION = 3;
}
optional CMsgDOTAFantasyLeagueMatchupsResponse.EResult result = 1 [default = SUCCESS];
optional uint32 fantasy_league_id = 2;
repeated CMsgDOTAFantasyLeagueMatchupsResponse.WeeklyMatchups weekly_matchups = 3;
}
message CMsgDOTAEditFantasyTeamRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index = 2;
optional string team_name = 3;
optional uint64 team_logo = 4;
}
message CMsgDOTAEditFantasyTeamResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_INVALID_TEAM_INFO = 2;
ERROR_NAME_ALREADY_TAKEN = 3;
ERROR_NO_PERMISSION = 4;
}
optional CMsgDOTAEditFantasyTeamResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyTeamInfoRequestByFantasyLeagueID {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyTeamInfoRequestByOwnerAccountID {
optional uint32 owner_account_id = 1;
}
message CMsgDOTAFantasyTeamInfoResponse {
repeated CMsgDOTAFantasyTeamInfo results = 1;
}
message CMsgDOTAFantasyTeamInfo {
optional uint32 fantasy_league_id = 1;
optional uint32 owner_account_id = 2;
optional uint32 fantasy_team_index = 3;
optional string team_name = 4;
optional uint64 team_logo = 5;
optional uint32 wins = 6;
optional uint32 losses = 7;
repeated uint32 current_roster = 8;
}
message CMsgDOTAFantasyTeamScoreRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 owner_account_id = 2;
optional uint32 fantasy_team_index = 3;
optional uint64 filter_match_id = 4;
optional uint32 filter_start_time = 5;
optional uint32 filter_end_time = 6;
optional bool include_bench = 7;
}
message CMsgDOTAFantasyTeamScoreResponse {
message CMsgPlayerScore {
optional uint32 account_id = 1;
optional float score = 2;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
ERROR_OWNER_NOT_IN_LEAGUE = 3;
}
optional CMsgDOTAFantasyTeamScoreResponse.EResult result = 1 [default = SUCCESS];
optional float fantasy_team_score = 2;
repeated CMsgDOTAFantasyTeamScoreResponse.CMsgPlayerScore fantasy_player_score = 3;
}
message CMsgDOTAFantasyTeamStandingsRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 count = 2;
optional uint32 filter_start_time = 3;
optional uint32 filter_end_time = 4;
optional uint64 filter_match_id = 5;
optional bool filter_last_match = 6;
optional bool filter_in_hall = 7;
}
message CMsgDOTAFantasyTeamStandingsResponse {
message CMsgTeamScore {
optional uint32 fantasy_league_id = 1;
optional uint32 owner_account_id = 2;
optional uint32 fantasy_team_index = 3;
optional uint64 fantasy_team_logo = 4;
optional string owner_name = 5;
optional string fantasy_team_name = 6;
optional float score = 7;
optional float score_against = 8;
optional uint32 wins = 9;
optional uint32 losses = 10;
optional int32 streak = 11;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyTeamStandingsResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyTeamStandingsResponse.CMsgTeamScore team_scores = 3;
}
message CMsgDOTAFantasyPlayerScoreRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 player_account_id = 2;
optional uint32 filter_start_time = 3;
optional uint32 filter_end_time = 4;
optional uint64 filter_match_id = 5;
optional bool filter_last_match = 6;
}
message CMsgDOTAFantasyPlayerScoreResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyPlayerScoreResponse.EResult result = 1 [default = SUCCESS];
optional uint32 fantasy_league_id = 2;
optional uint32 player_account_id = 3;
optional string player_name = 4;
optional float score = 5;
}
message CMsgDOTAFantasyPlayerStandingsRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 count = 2;
optional uint32 role = 3;
optional uint32 filter_start_time = 4;
optional uint32 filter_end_time = 5;
optional uint64 filter_match_id = 6;
optional bool filter_last_match = 7;
}
message CMsgDOTAFantasyPlayerStandingsResponse {
message CMsgPlayerScore {
optional uint32 player_account_id = 1;
optional string player_name = 2;
optional float score = 3;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyPlayerStandingsResponse.EResult result = 1 [default = SUCCESS];
optional uint32 fantasy_league_id = 2;
optional uint32 role = 3;
repeated CMsgDOTAFantasyPlayerStandingsResponse.CMsgPlayerScore player_scores = 4;
}
message CMsgDOTAFantasyPlayerInfoRequest {
}
message CMsgDOTAFantasyPlayerInfoResponse {
optional CMsgGCPlayerInfo msg = 1;
}
message CMsgDOTAFantasyLeagueCreateRequest {
optional uint32 season_id = 1;
optional string fantasy_league_name = 2;
optional string password = 3;
optional string team_name = 4;
optional uint64 logo = 5;
optional uint64 ticket_item_id = 6;
}
message CMsgDOTAFantasyLeagueCreateResponse {
enum EResult {
SUCCESS = 0;
ERROR_NO_PERMISSION = 1;
ERROR_BAD_SEASON_ID = 2;
ERROR_BAD_LEAGUE_NAME = 3;
ERROR_BAD_TEAM_NAME = 4;
ERROR_UNSPECIFIED = 5;
ERROR_FAILED_LOGO_UPLOAD = 6;
ERROR_NO_TICKET = 7;
}
optional CMsgDOTAFantasyLeagueCreateResponse.EResult result = 1 [default = SUCCESS];
optional uint32 fantasy_league_id = 2;
}
message CMsgDOTAFantasyTeamCreateRequest {
optional uint32 fantasy_league_id = 1;
optional string password = 2;
optional string team_name = 3;
optional uint64 logo = 4;
optional uint64 ticket_item_id = 5;
}
message CMsgDOTAFantasyTeamCreateResponse {
enum EResult {
SUCCESS = 0;
ERROR_NO_PERMISSION = 1;
ERROR_FAILED_LOGO_UPLOAD = 2;
ERROR_BAD_FANTASY_LEAGUE_ID = 3;
ERROR_BAD_NAME = 4;
ERROR_FULL = 5;
ERROR_ALREADY_MEMBER = 6;
ERROR_BAD_PASSWORD = 7;
ERROR_UNSPECIFIED = 8;
ERROR_NO_TICKET = 9;
ERROR_LEAGUE_LOCKED = 10;
}
optional CMsgDOTAFantasyTeamCreateResponse.EResult result = 1 [default = SUCCESS];
optional uint32 fantasy_team_index = 2;
}
message CMsgDOTAFantasyLeagueEditInvitesRequest {
message InviteChange {
optional uint32 account_id = 1;
optional bool invited = 2;
}
optional uint32 fantasy_league_id = 1;
optional string password = 2;
repeated CMsgDOTAFantasyLeagueEditInvitesRequest.InviteChange invite_change = 3;
}
message CMsgDOTAFantasyLeagueEditInvitesResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
}
optional CMsgDOTAFantasyLeagueEditInvitesResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyLeagueDraftStatusRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyLeagueDraftStatus {
optional uint32 fantasy_league_id = 1;
repeated uint32 draft_order = 2;
optional uint32 current_pick = 3;
optional uint32 time_remaining = 4;
optional bool pending_resume = 5;
optional bool completed = 6;
repeated uint32 available_players = 7;
}
message CMsgDOTAFantasyLeagueDraftPlayerRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index = 2;
optional uint32 player_account_id = 3;
}
message CMsgDOTAFantasyLeagueDraftPlayerResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_INVALID_FANTASY_LEAGUE = 2;
ERROR_FANTASY_LEAGUE_NOT_DRAFTING = 3;
ERROR_OWNER_NOT_IN_LEAGUE = 4;
ERROR_NOT_OWNERS_TURN = 5;
ERROR_PLAYER_INVALID = 6;
ERROR_PLAYER_UNAVAILABLE = 7;
ERROR_PLAYER_NO_VALID_SLOTS = 8;
}
optional CMsgDOTAFantasyLeagueDraftPlayerResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyTeamRosterSwapRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index = 2;
optional uint32 timestamp = 3;
optional uint32 slot_1 = 4;
optional uint32 slot_2 = 5;
}
message CMsgDOTAFantasyTeamRosterSwapResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_OWNER_NOT_IN_LEAGUE = 2;
ERROR_SLOTS_INVALID = 3;
ERROR_SLOT_LOCKED = 4;
}
optional CMsgDOTAFantasyTeamRosterSwapResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyTeamRosterAddDropRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index = 2;
optional uint32 add_account_id = 5;
optional uint32 drop_account_id = 6;
}
message CMsgDOTAFantasyTeamRosterAddDropResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_OWNER_NOT_IN_LEAGUE = 2;
ERROR_PLAYER_NOT_AVAILABLE = 3;
ERROR_PLAYER_NOT_ON_TEAM = 4;
ERROR_TRADE_ALREADY_PENDING = 5;
}
optional CMsgDOTAFantasyTeamRosterAddDropResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyTeamTradesRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyTeamTradesResponse {
message Trade {
optional uint32 timestamp = 1;
optional uint32 owner_account_id_1 = 2;
optional uint32 owner_account_id_2 = 3;
optional uint32 player_account_id_1 = 4;
optional uint32 player_account_id_2 = 5;
optional uint32 status = 6;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyTeamTradesResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyTeamTradesResponse.Trade trades = 2;
}
message CMsgDOTAFantasyTeamTradeCancelRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index_1 = 3;
optional uint32 owner_account_id_2 = 4;
optional uint32 team_index_2 = 5;
}
message CMsgDOTAFantasyTeamTradeCancelResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
ERROR_NO_TRADE = 3;
}
optional CMsgDOTAFantasyTeamTradeCancelResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyTeamRosterRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 team_index = 2;
optional uint32 owner_account_id = 3;
optional uint32 timestamp = 4;
}
message CMsgDOTAFantasyTeamRosterResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
ERROR_OWNER_NOT_IN_LEAGUE = 3;
}
optional CMsgDOTAFantasyTeamRosterResponse.EResult result = 1 [default = SUCCESS];
repeated uint32 player_account_ids = 2;
repeated bool player_locked = 3;
}
message CMsgDOTAFantasyPlayerHisoricalStatsRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyPlayerHisoricalStatsResponse {
message PlayerScoreAccumulator {
optional uint32 matches = 1;
optional float levels = 2;
optional float kills = 3;
optional float deaths = 4;
optional float assists = 5;
optional float last_hits = 6;
optional float denies = 7;
optional float gpm = 8;
optional float xppm = 9;
optional float stuns = 10;
optional float healing = 11;
optional float tower_kills = 12;
optional float roshan_kills = 13;
optional float score = 14;
}
message PlayerStats {
optional uint32 account_id = 1;
optional uint32 weeks = 2;
optional CMsgDOTAFantasyPlayerHisoricalStatsResponse.PlayerScoreAccumulator stats_premium = 4;
optional CMsgDOTAFantasyPlayerHisoricalStatsResponse.PlayerScoreAccumulator stats_professional = 5;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyPlayerHisoricalStatsResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyPlayerHisoricalStatsResponse.PlayerStats stats = 2;
}
message CMsgDOTAFantasyMessageAdd {
optional uint32 fantasy_league_id = 1;
optional string message = 2;
}
message CMsgDOTAFantasyMessagesRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 start_message = 2;
optional uint32 end_message = 3;
}
message CMsgDOTAFantasyMessagesResponse {
message Message {
optional uint32 message_id = 1;
optional string message = 2;
optional uint32 author_account_id = 3;
optional uint32 time = 4;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
}
optional CMsgDOTAFantasyMessagesResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyMessagesResponse.Message messages = 2;
optional uint32 num_total_messages = 3;
}
message CMsgDOTAFantasyRemoveOwner {
optional uint32 fantasy_league_id = 1;
optional uint32 owner_account_id = 2;
optional uint32 team_index = 3;
}
message CMsgDOTAFantasyRemoveOwnerResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NO_PERMISSION = 2;
ERROR_LEAGUE_LOCKED = 3;
ERROR_NOT_A_MEMBER = 4;
}
optional CMsgDOTAFantasyRemoveOwnerResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyScheduledMatchesRequest {
optional uint32 fantasy_league_id = 1;
}
message CMsgDOTAFantasyScheduledMatchesResponse {
message ScheduledMatchDays {
optional uint32 timestamp = 1;
repeated uint32 team_ids = 2;
repeated uint32 league_ids = 3;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
}
optional CMsgDOTAFantasyScheduledMatchesResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyScheduledMatchesResponse.ScheduledMatchDays scheduled_match_days = 2;
}
message CMsgDOTAFantasyLeaveLeagueRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 fantasy_team_index = 2;
}
message CMsgDOTAFantasyLeaveLeagueResponse {
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NOT_MEMBER = 2;
ERROR_LEAGUE_NOT_FOUND = 3;
ERROR_DRAFT_ACTIVE = 4;
}
optional CMsgDOTAFantasyLeaveLeagueResponse.EResult result = 1 [default = SUCCESS];
}
message CMsgDOTAFantasyPlayerScoreDetailsRequest {
optional uint32 fantasy_league_id = 1;
optional uint32 player_account_id = 2;
optional uint32 start_time = 3;
optional uint32 end_time = 4;
}
message CMsgDOTAFantasyPlayerScoreDetailsResponse {
message PlayerMatchData {
optional uint64 match_id = 1;
optional uint32 series_id = 2;
optional uint32 series_num = 3;
optional uint32 series_type = 4;
optional uint32 league_tier = 5;
optional uint32 league_id = 6;
optional uint32 opposing_team_id = 7;
optional uint64 opposing_team_logo = 8;
optional string opposing_team_name = 9;
optional uint32 owned_by = 11;
optional bool benched = 12;
}
enum EResult {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_NOT_MEMBER = 2;
}
optional CMsgDOTAFantasyPlayerScoreDetailsResponse.EResult result = 1 [default = SUCCESS];
repeated CMsgDOTAFantasyPlayerScoreDetailsResponse.PlayerMatchData data = 2;
}
message CMsgDOTAPassportVoteTeamGuess {
optional uint32 league_id = 1;
optional uint32 winner_id = 2;
optional uint32 runnerup_id = 3;
}
message CMsgDOTAPassportVoteGenericSelection {
optional DOTA_2013PassportSelectionIndices selection_index = 1 [default = PP13_SEL_ALLSTAR_PLAYER_0];
optional uint32 selection = 2;
}
message CMsgDOTAPassportStampedPlayer {
optional uint64 steam_id = 1;
optional uint32 stamp_level = 2;
}
message CMsgDOTAPassportPlayerCardChallenge {
optional uint32 challenge_id = 1;
}
message CMsgDOTAPassportVote {
repeated CMsgDOTAPassportVoteTeamGuess team_votes = 1;
repeated CMsgDOTAPassportVoteGenericSelection generic_selections = 2;
repeated CMsgDOTAPassportStampedPlayer stamped_players = 3;
repeated CMsgDOTAPassportPlayerCardChallenge player_card_challenges = 4;
}
message CMsgClientToGCGetPlayerCardRosterRequest {
optional uint32 league_id = 1;
optional uint32 timestamp = 2;
}
message CMsgClientToGCGetPlayerCardRosterResponse {
enum Result {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_INVALID_LEAGUE_ID = 2;
ERROR_INVALID_TIMESTAMP = 3;
}
optional CMsgClientToGCGetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
repeated uint64 player_card_item_id = 2;
optional float score = 3;
optional bool finalized = 4;
}
message CMsgClientToGCSetPlayerCardRosterRequest {
optional uint32 league_id = 1;
optional uint32 timestamp = 2;
optional uint32 slot = 3;
optional uint64 player_card_item_id = 4;
}
message CMsgClientToGCSetPlayerCardRosterResponse {
enum Result {
SUCCESS = 0;
ERROR_UNSPECIFIED = 1;
ERROR_INVALID_LEAGUE_ID = 2;
ERROR_INVALID_TIMESTAMP = 3;
ERROR_PLAYER_CARD_NOT_OWNED = 4;
ERROR_INVALID_SLOT = 5;
ERROR_FAILED_CARD_INFO = 6;
ERROR_ACCOUNT_DUPLICATE = 7;
ERROR_LOCKED_TIMESTAMP = 8;
}
optional CMsgClientToGCSetPlayerCardRosterResponse.Result result = 1 [default = SUCCESS];
}