1385 lines
38 KiB
Protocol Buffer
1385 lines
38 KiB
Protocol Buffer
import "steammessages.proto";
|
|
import "gcsdk_gcmessages.proto";
|
|
import "citadel_gcmessages_common.proto";
|
|
|
|
enum EGCCitadelClientMessages {
|
|
k_EMsgClientToGCStartMatchmaking = 9010;
|
|
k_EMsgClientToGCStartMatchmakingResponse = 9011;
|
|
k_EMsgClientToGCStopMatchmaking = 9012;
|
|
k_EMsgClientToGCStopMatchmakingResponse = 9013;
|
|
k_EMsgGCToClientMatchmakingStopped = 9014;
|
|
k_EMsgClientToGCLeaveLobby = 9015;
|
|
k_EMsgClientToGCLeaveLobbyResponse = 9016;
|
|
k_EMsgClientToGCIsInMatchmaking = 9017;
|
|
k_EMsgClientToGCIsInMatchmakingResponse = 9018;
|
|
k_EMsgGCToClientDevPlaytestStatus = 9019;
|
|
k_EMsgClientToGCDevSetMMBias = 9023;
|
|
k_EMsgClientToGCGetProfileCard = 9024;
|
|
k_EMsgClientToGCGetProfileCardResponse = 9025;
|
|
k_EMsgClientToGCUpdateRoster = 9026;
|
|
k_EMsgClientToGCUpdateRosterResponse = 9027;
|
|
k_EMsgGCToClientProfileCardUpdated = 9028;
|
|
k_EMsgGCToClientDevAnnouncements = 9029;
|
|
k_EMsgClientToGCModifyDevAnnouncements = 9030;
|
|
k_EMsgClientToGCModifyDevAnnouncementsResponse = 9031;
|
|
k_EMsgGCToClientSDRTicket = 9100;
|
|
k_EMsgClientToGCReplacementSDRTicket = 9101;
|
|
k_EMsgClientToGCReplacementSDRTicketResponse = 9102;
|
|
k_EMsgClientToGCSetServerConVar = 9107;
|
|
k_EMsgClientToGCSetServerConVarResponse = 9108;
|
|
k_EMsgClientToGCSpectateLobby = 9109;
|
|
k_EMsgClientToGCSpectateLobbyResponse = 9110;
|
|
k_EMsgClientToGCPostMatchSurveyResponse = 9111;
|
|
k_EMsgClientToGCGetMatchHistory = 9112;
|
|
k_EMsgClientToGCGetMatchHistoryResponse = 9113;
|
|
k_EMsgClientToGCSpectateUser = 9116;
|
|
k_EMsgClientToGCSpectateUserResponse = 9117;
|
|
k_EMsgClientToGCPartyCreate = 9123;
|
|
k_EMsgClientToGCPartyCreateResponse = 9124;
|
|
k_EMsgClientToGCPartyLeave = 9125;
|
|
k_EMsgClientToGCPartyLeaveResponse = 9126;
|
|
k_EMsgClientToGCPartyJoin = 9127;
|
|
k_EMsgClientToGCPartyJoinResponse = 9128;
|
|
k_EMsgClientToGCPartyAction = 9129;
|
|
k_EMsgClientToGCPartyActionResponse = 9130;
|
|
k_EMsgClientToGCPartyStartMatch = 9131;
|
|
k_EMsgClientToGCPartyStartMatchResponse = 9132;
|
|
k_EMsgClientToGCPartyInviteUser = 9133;
|
|
k_EMsgClientToGCPartyInviteUserResponse = 9134;
|
|
k_EMsgGCToClientPartyEvent = 9135;
|
|
k_EMsgGCToClientCanRejoinParty = 9137;
|
|
k_EMsgClientToGCPartyJoinViaCode = 9138;
|
|
k_EMsgClientToGCPartyJoinViaCodeResponse = 9139;
|
|
k_EMsgClientToGCPartyUpdateRoster = 9140;
|
|
k_EMsgClientToGCPartyUpdateRosterResponse = 9141;
|
|
k_EMsgClientToGCPartySetReadyState = 9142;
|
|
k_EMsgClientToGCPartySetReadyStateResponse = 9143;
|
|
k_EMsgClientToGCGetAccountStats = 9164;
|
|
k_EMsgClientToGCGetAccountStatsResponse = 9165;
|
|
k_EMsgGCToClientAccountStatsUpdated = 9166;
|
|
k_EMsgClientToGCGetMatchMetaData = 9167;
|
|
k_EMsgClientToGCGetMatchMetaDataResponse = 9168;
|
|
k_EMsgClientToGCDevAction = 9172;
|
|
k_EMsgClientToGCDevActionResponse = 9173;
|
|
k_EMsgClientToGCRecordClientEvents = 9174;
|
|
k_EMsgClientToGCRecordClientEventsResponse = 9175;
|
|
k_EMsgClientToGCSetNewPlayerProgress = 9176;
|
|
k_EMsgClientToGCSetNewPlayerProgressResponse = 9177;
|
|
k_EMsgClientToGCUpdateAccountSync = 9178;
|
|
k_EMsgClientToGCUpdateAccountSyncResponse = 9179;
|
|
k_EMsgClientToGCGetHeroChoice = 9180;
|
|
k_EMsgClientToGCGetHeroChoiceResponse = 9181;
|
|
k_EMsgClientToGCUnlockHero = 9182;
|
|
k_EMsgClientToGCUnlockHeroResponse = 9183;
|
|
k_EMsgClientToGCBookUnlock = 9184;
|
|
k_EMsgClientToGCBookUnlockResponse = 9185;
|
|
k_EMsgClientToGCGetBook = 9186;
|
|
k_EMsgClientToGCGetBookResponse = 9187;
|
|
k_EMsgGCToClientBookUpdated = 9188;
|
|
k_EMsgClientToGCSubmitPlaytestUser = 9189;
|
|
k_EMsgClientToGCSubmitPlaytestUserResponse = 9190;
|
|
k_EMsgClientToGCUpdateHeroBuild = 9193;
|
|
k_EMsgClientToGCUpdateHeroBuildResponse = 9194;
|
|
k_EMsgClientToGCFindHeroBuilds = 9195;
|
|
k_EMsgClientToGCFindHeroBuildsResponse = 9196;
|
|
k_EMsgClientToGCReportPlayerFromMatch = 9197;
|
|
k_EMsgClientToGCReportPlayerFromMatchResponse = 9198;
|
|
k_EMsgClientToGCGetAccountMatchReports = 9199;
|
|
k_EMsgClientToGCGetAccountMatchReportsResponse = 9200;
|
|
k_EMsgClientToGCDeleteHeroBuild = 9201;
|
|
k_EMsgClientToGCDeleteHeroBuildResponse = 9202;
|
|
k_EMsgClientToGCGetActiveMatches = 9203;
|
|
k_EMsgClientToGCGetActiveMatchesResponse = 9204;
|
|
k_EMsgClientToGCGetDiscordLink = 9205;
|
|
k_EMsgClientToGCGetDiscordLinkResponse = 9206;
|
|
k_EMsgClientToGCPartySetMode = 9207;
|
|
k_EMsgClientToGCPartySetModeResponse = 9208;
|
|
k_EMsgClientToGCGrantForumAccess = 9209;
|
|
k_EMsgClientToGCGrantForumAccessResponse = 9210;
|
|
k_EMsgClientToGCModeratorRequest = 9211;
|
|
k_EMsgClientToGCModeratorRequestResponse = 9212;
|
|
k_EMsgClientToGCGetFriendGameStatus = 9213;
|
|
k_EMsgClientToGCGetFriendGameStatusResponse = 9214;
|
|
k_EMsgClientToGCUpdateHeroBuildPreference = 9215;
|
|
k_EMsgClientToGCUpdateHeroBuildPreferenceResponse = 9216;
|
|
k_EMsgClientToGCGetOldHeroBuildData = 9217;
|
|
k_EMsgClientToGCGetOldHeroBuildDataResponse = 9218;
|
|
k_EMsgClientToGCUpdateSpectatorStatus = 9219;
|
|
}
|
|
|
|
enum ECitadelAccountPermissionFlag {
|
|
k_eAccountPermission_PrivateBot = 1;
|
|
k_eAccountPermission_CoopBot = 2;
|
|
k_eAccountPermission_Unranked = 3;
|
|
}
|
|
|
|
enum ECitadelNewPlayerProgressFlag {
|
|
k_eNewPlayerProgress_GettingStarted = 1;
|
|
k_eNewPlayerProgress_HeroTraining = 2;
|
|
k_eNewPlayerProgress_LaneTraining = 3;
|
|
}
|
|
|
|
enum EProfileCardSlotType {
|
|
k_EProfileCardSlotType_Empty = 0;
|
|
k_EProfileCardSlotType_Stat = 1;
|
|
k_EProfileCardSlotType_Hero = 2;
|
|
}
|
|
|
|
enum ECitadelClientAccountEvent {
|
|
k_eLaunchedHeroTest = 1;
|
|
k_eViewedProfile = 2;
|
|
k_eViewedSocial = 3;
|
|
k_eViewedHeroes = 4;
|
|
k_eViewedHeroDetails = 5;
|
|
k_eViewedPatchNotes = 6;
|
|
k_eViewedEvents = 7;
|
|
k_eViewedGettingStarted = 8;
|
|
k_eViewedGuidePage = 9;
|
|
k_eLaunchedClient = 10;
|
|
k_eEditRoster = 11;
|
|
k_eViewedWatch = 12;
|
|
k_eCreatedParty = 13;
|
|
k_eCreatedPartyWithInvite = 14;
|
|
k_eViewedSelfProfile = 15;
|
|
k_eJoinedPartyCode = 16;
|
|
k_eSentPartyInvite = 17;
|
|
k_eAcceptPartyInvite = 18;
|
|
k_eRejectPartyInvite = 19;
|
|
k_eSpectateUser = 20;
|
|
k_eSpectateMatch = 21;
|
|
k_eEnteredMatchMaking = 22;
|
|
k_eLeftMatchMaking = 23;
|
|
k_eEnteredPartyMatchMaking = 24;
|
|
k_eLeftPartyMatchMaking = 25;
|
|
k_eDownloadedReplay = 26;
|
|
k_eWatchedReplay = 27;
|
|
k_eViewMatchDetails = 28;
|
|
k_eMatchDetailsTab = 29;
|
|
k_eDeleteReplay = 30;
|
|
k_eBotMatch_Guided = 31;
|
|
k_eBotMatch_Easy = 32;
|
|
k_eBotMatch_Hard = 33;
|
|
k_eLiveUpdatedRoster = 34;
|
|
k_eMatchMakingIdle_Displayed = 35;
|
|
k_eMatchMakingIdle_Stopped = 36;
|
|
k_eConnectReacquireTicket = 37;
|
|
k_eConnectAttemptReconnect = 38;
|
|
k_eDisconnectPresentedPrompt = 39;
|
|
k_eDisconnectConfirmed = 40;
|
|
k_eViewedSettings_Options = 41;
|
|
k_eViewedSettings_Video = 42;
|
|
k_eViewedSettings_Audio = 43;
|
|
k_eViewedSettings_HotKey = 44;
|
|
k_eViewedSettings_ChatWheel = 45;
|
|
k_eViewedSettings_About = 46;
|
|
k_eOpenedSubmitFeedback = 47;
|
|
k_eTutorialSkip_Pressed = 48;
|
|
k_eTutorialSkip_Confirmed = 49;
|
|
k_eViewedGuidePage_5s = 50;
|
|
k_eViewedGuidePage_15s = 51;
|
|
k_eViewedGuidePage_30s = 52;
|
|
k_eViewedGuidePage_60s = 53;
|
|
k_eOpenedBookTest = 54;
|
|
k_eSandboxViaHeroPage = 55;
|
|
}
|
|
|
|
message CSOGameAccountClient {
|
|
enum EFlags {
|
|
k_eDeveloper = 1;
|
|
k_eExternalModerator = 2;
|
|
k_eGotInitialHeroes = 4;
|
|
k_eClaimedDiscordLink = 16;
|
|
k_eClaimedForum = 32;
|
|
k_eAccountBanned = 64;
|
|
}
|
|
|
|
optional uint32 account_id = 1 [(key_field) = true];
|
|
optional uint64 flags = 2;
|
|
optional uint32 wins = 3;
|
|
optional uint32 losses = 4;
|
|
optional uint32 kills = 5;
|
|
optional uint32 most_played_hero_id = 6;
|
|
optional uint64 permissions = 7;
|
|
optional uint64 new_player_progress = 8;
|
|
optional uint32 hero_unlock_credits = 9;
|
|
optional uint32 mm_ban_until = 10;
|
|
optional uint32 comms_ban_until = 11;
|
|
optional uint32 low_priority_games_remaining = 12;
|
|
}
|
|
|
|
message CSOAccountSyncStorage {
|
|
optional uint32 account_id = 1;
|
|
optional uint32 id = 2;
|
|
optional uint32 value = 3;
|
|
}
|
|
|
|
message CSOAccountHeroInfo {
|
|
enum EHeroStatus {
|
|
k_eLocked = 0;
|
|
k_eOwned = 1;
|
|
}
|
|
|
|
optional uint32 account_id = 1 [(key_field) = true];
|
|
optional uint32 hero_id = 2;
|
|
optional .CSOAccountHeroInfo.EHeroStatus status = 3 [default = k_eLocked];
|
|
optional uint32 wins = 4;
|
|
optional uint32 kills = 5;
|
|
}
|
|
|
|
message CMsgCitadelClientHello {
|
|
optional .ECitadelRegionMode region_mode = 1 [default = k_ECitadelRegionMode_ROW];
|
|
}
|
|
|
|
message CMsgClientToGCStartMatchmaking {
|
|
optional uint32 client_version = 1;
|
|
optional .EGCPlatform client_platform = 2 [default = k_eGCPlatform_None];
|
|
optional .CMsgStartFindingMatchInfo match_info = 3;
|
|
optional .CMsgRegionPingTimesClient ping_times = 4;
|
|
optional .CMsgHeroSelectionMatchInfo heroes = 5;
|
|
}
|
|
|
|
message CMsgClientToGCStartMatchmakingResponse {
|
|
enum EResultCode {
|
|
k_EResult_OK = 0;
|
|
k_EResult_AlreadyFindingMatch = 1;
|
|
k_EResult_PartyMemberInLobby = 2;
|
|
k_EResult_InvalidClientVersion = 3;
|
|
k_EResult_MatchmakingDisabled = 4;
|
|
k_EResult_MatchmakingTooBusy = 5;
|
|
k_EResult_InternalError = 6;
|
|
k_EResult_NoRegionPings = 7;
|
|
k_EResult_InParty = 8;
|
|
k_EResult_ModeLocked = 9;
|
|
k_EResult_ModeBanned = 10;
|
|
k_EResult_RegionInfoNotProvided = 11;
|
|
k_EResult_DurationControlBlocked = 12;
|
|
k_EResult_InvalidHeroSelection = 13;
|
|
k_EResult_HeroesNotUnlocked = 14;
|
|
k_EResult_PermanentBan = 15;
|
|
}
|
|
|
|
optional .CMsgClientToGCStartMatchmakingResponse.EResultCode result = 1 [default = k_EResult_OK];
|
|
optional uint32 time_stamp = 2;
|
|
optional string debug_message = 3;
|
|
}
|
|
|
|
message CMsgClientToGCStopMatchmaking {
|
|
}
|
|
|
|
message CMsgClientToGCStopMatchmakingResponse {
|
|
optional bool success = 1;
|
|
}
|
|
|
|
message CMsgGCToClientMatchmakingStopped {
|
|
enum EReason {
|
|
k_EResult_Unspecified = 0;
|
|
k_EResult_VersionUpdated = 1;
|
|
k_EResult_FailedReadyUp = 2;
|
|
}
|
|
|
|
optional .CMsgGCToClientMatchmakingStopped.EReason reason = 1 [default = k_EResult_Unspecified];
|
|
}
|
|
|
|
message CMsgClientToGCLeaveLobby {
|
|
optional uint64 lobby_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCLeaveLobbyResponse {
|
|
}
|
|
|
|
message CMsgClientWelcomeCitadel {
|
|
optional uint32 currency = 1;
|
|
repeated .CExtraMsgBlock extra_messages = 2;
|
|
optional uint32 compatibility_version = 3;
|
|
optional .ECitadelRegionMode region_mode = 4 [default = k_ECitadelRegionMode_ROW];
|
|
}
|
|
|
|
message CMsgClientToGCIsInMatchmaking {
|
|
}
|
|
|
|
message CMsgClientToGCIsInMatchmakingResponse {
|
|
optional bool in_matchmaking = 1;
|
|
}
|
|
|
|
message CMsgDevMatchInfo {
|
|
message MatchPlayer {
|
|
optional uint32 account_id = 1;
|
|
optional .ECitadelLobbyTeam team = 2 [default = k_ECitadelLobbyTeam_Team0];
|
|
optional bool abandoned = 3;
|
|
optional uint32 hero_id = 4;
|
|
}
|
|
|
|
optional uint32 start_time = 1;
|
|
optional .ECitadelLobbyTeam winning_team = 2 [default = k_ECitadelLobbyTeam_Team0];
|
|
optional uint64 match_id = 3;
|
|
repeated .CMsgDevMatchInfo.MatchPlayer players = 4;
|
|
optional fixed64 lobby_id = 5;
|
|
optional uint32 net_worth_team_0 = 9;
|
|
optional uint32 net_worth_team_1 = 10;
|
|
optional uint32 duration_s = 11;
|
|
optional uint32 spectators = 12;
|
|
optional uint32 open_spectator_slots = 13;
|
|
optional uint64 objectives_mask_team0 = 14;
|
|
optional uint64 objectives_mask_team1 = 15;
|
|
optional .ECitadelMatchMode match_mode = 16 [default = k_ECitadelMatchMode_Invalid];
|
|
optional .ECitadelGameMode game_mode = 17 [default = k_ECitadelGameMode_Invalid];
|
|
optional uint32 match_score = 18;
|
|
optional .ECitadelRegionMode region_mode = 19 [default = k_ECitadelRegionMode_ROW];
|
|
}
|
|
|
|
message CMsgGCToClientDevPlaytestStatus {
|
|
message HeroWhitelist {
|
|
optional uint32 hero_id = 1;
|
|
repeated uint32 account_ids = 2;
|
|
}
|
|
|
|
message RegionInfo {
|
|
optional .ECitadelRegionMode region = 1 [default = k_ECitadelRegionMode_ROW];
|
|
optional uint32 unranked_queue_size = 5;
|
|
optional uint32 coop_queue_size = 6;
|
|
optional uint32 coop_mm_formation_time = 8;
|
|
optional uint32 available_servers = 9;
|
|
}
|
|
|
|
optional bool is_mm_enabled = 4;
|
|
optional bool locked_heroes = 8;
|
|
optional bool party_shared_heroes = 9;
|
|
repeated .CMsgGCToClientDevPlaytestStatus.HeroWhitelist hero_whitelists = 10;
|
|
optional uint32 mm_pause_time = 14;
|
|
repeated uint32 valid_client_versions = 15;
|
|
optional uint32 active_match_count = 21;
|
|
repeated .CMsgGCToClientDevPlaytestStatus.RegionInfo regions = 22;
|
|
}
|
|
|
|
message CMsgGCToClientSDRTicket {
|
|
optional bytes ticket = 1;
|
|
}
|
|
|
|
message CMsgClientToGCReplacementSDRTicket {
|
|
optional fixed64 lobby_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCReplacementSDRTicketResponse {
|
|
optional bytes ticket = 1;
|
|
optional string error_message = 2;
|
|
}
|
|
|
|
message CMsgClientToGCSetServerConVar {
|
|
optional string convar_name = 1;
|
|
optional string convar_value = 2;
|
|
optional fixed64 lobby_id = 3;
|
|
}
|
|
|
|
message CMsgClientToGCSetServerConVarResponse {
|
|
optional string message = 1;
|
|
}
|
|
|
|
message CMsgClientToGCPostMatchSurveyResponse {
|
|
message PostMatchSurvey {
|
|
optional uint32 question_id = 1;
|
|
optional uint32 response_value = 2;
|
|
}
|
|
|
|
repeated .CMsgClientToGCPostMatchSurveyResponse.PostMatchSurvey post_match_survey = 1;
|
|
optional uint64 match_id = 2;
|
|
}
|
|
|
|
message CMsgPartyMMInfo {
|
|
optional .EGCPlatform platform = 1 [default = k_eGCPlatform_None];
|
|
optional .CMsgRegionPingTimesClient ping_times = 2;
|
|
optional uint32 client_version = 3;
|
|
optional .ECitadelRegionMode region_mode = 4 [default = k_ECitadelRegionMode_ROW];
|
|
}
|
|
|
|
message CMsgClientToGCPartyCreate {
|
|
optional .CMsgPartyMMInfo party_mm_info = 1;
|
|
optional uint32 invite_account_id = 3;
|
|
optional bool disable_party_code = 4;
|
|
optional bool is_private_lobby = 5;
|
|
optional .ECitadelRegionMode region_mode = 6 [default = k_ECitadelRegionMode_ROW];
|
|
optional string server_search_key = 7;
|
|
}
|
|
|
|
message CMsgClientToGCPartyCreateResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eAlreadyInParty = 2;
|
|
k_eDisabled = 3;
|
|
k_eInvalidVersion = 4;
|
|
k_eNoRegionPings = 5;
|
|
k_eTooBusy = 6;
|
|
k_eRateLimited = 7;
|
|
k_eNotFriends = 8;
|
|
k_eRegionInfoNotProvided = 9;
|
|
k_eDurationControlBlocked = 10;
|
|
k_eInMatchmaking = 11;
|
|
k_ePlayerDoesntHaveGame = 12;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyCreateResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional fixed64 party_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyLeave {
|
|
optional fixed64 party_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCPartyLeaveResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eNotInParty = 2;
|
|
k_eInMatchMaking = 3;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyLeaveResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCPartyJoin {
|
|
optional fixed64 party_id = 1;
|
|
optional bool is_rejoin = 2;
|
|
optional .CMsgPartyMMInfo party_mm_info = 3;
|
|
}
|
|
|
|
message CMsgClientToGCPartyJoinResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eAlreadyInParty = 2;
|
|
k_eDisabled = 3;
|
|
k_eInvalidPartyID = 4;
|
|
k_eInvalidPermissions = 5;
|
|
k_eInvalidVersion = 6;
|
|
k_eNoRegionPings = 7;
|
|
k_eTooBusy = 8;
|
|
k_eInvalidCode = 9;
|
|
k_eRateLimited = 10;
|
|
k_eRegionInfoNotProvided = 11;
|
|
k_eDurationControlBlocked = 12;
|
|
k_ePartyInMatchMaking = 13;
|
|
k_eInMatchmaking = 14;
|
|
k_ePartyFull = 15;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyJoinResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCPartyAction {
|
|
enum EAction {
|
|
k_eKickUser = 1;
|
|
k_eCancelInvite = 2;
|
|
k_eCancelFindMatch = 3;
|
|
k_eSetPlayerType = 5;
|
|
k_eEnablePartyCode = 7;
|
|
k_eSetMemberTeam = 8;
|
|
k_eSetChatMode = 9;
|
|
k_eSetPlayerSlot = 10;
|
|
k_eSetRegionMode = 11;
|
|
k_eSetPlayerSlotBot = 12;
|
|
k_eSetAllSlotBots = 13;
|
|
}
|
|
|
|
optional fixed64 party_id = 1;
|
|
optional uint32 target_account_id = 2;
|
|
optional .CMsgClientToGCPartyAction.EAction action_id = 3 [default = k_eKickUser];
|
|
optional uint64 uint_value = 4;
|
|
optional bool bool_value = 5;
|
|
}
|
|
|
|
message CMsgClientToGCPartyActionResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eInvalidPartyID = 2;
|
|
k_eInvalidPermissions = 3;
|
|
k_eInvalidTarget = 4;
|
|
k_eInvalidValue = 5;
|
|
k_eInMatchMaking = 6;
|
|
k_eInMatch = 7;
|
|
k_eDisabled = 8;
|
|
k_eTooBusy = 9;
|
|
k_eRateLimited = 10;
|
|
k_eCannotChangeWhileReady = 12;
|
|
k_eSlotTaken = 13;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyActionResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCPartySetMode {
|
|
optional fixed64 party_id = 1;
|
|
optional .ECitadelMatchMode match_mode = 2 [default = k_ECitadelMatchMode_Invalid];
|
|
optional .ECitadelGameMode game_mode = 3 [default = k_ECitadelGameMode_Invalid];
|
|
optional .ECitadelBotDifficulty bot_difficulty = 4 [default = k_ECitadelBotDifficulty_None];
|
|
optional string dev_server_command = 5;
|
|
optional .ECitadelRegionMode region_mode = 6 [default = k_ECitadelRegionMode_ROW];
|
|
}
|
|
|
|
message CMsgClientToGCPartySetModeResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eInvalidPartyID = 2;
|
|
k_eInvalidPermissions = 3;
|
|
k_ePlayerPermanentBanned = 4;
|
|
k_eInvalidValue = 5;
|
|
k_eInMatchMaking = 6;
|
|
k_eInMatch = 7;
|
|
k_eDisabled = 8;
|
|
k_eTooBusy = 9;
|
|
k_eRateLimited = 10;
|
|
k_eAlreadyDrafting = 11;
|
|
k_eCannotChangeWhileReady = 12;
|
|
k_eTooFewPlayers = 13;
|
|
k_eTooManyPlayers = 14;
|
|
k_ePlayerBanned = 15;
|
|
k_eTooManyHighMMR = 16;
|
|
k_eFiveStacksNotAllowed = 18;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartySetModeResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional uint32 time_stamp = 2;
|
|
optional uint32 account_id = 3;
|
|
}
|
|
|
|
message CMsgClientToGCPartyStartMatch {
|
|
optional fixed64 party_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCPartyStartMatchResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 2;
|
|
k_eInvalidPartyID = 3;
|
|
k_eInvalidPermissions = 4;
|
|
k_eTooBusy = 5;
|
|
k_eInMatchmaking = 6;
|
|
k_eInMatch = 7;
|
|
k_eInvalidVersion = 10;
|
|
k_ePlayersNotReady = 11;
|
|
k_eCannotSelectRegion = 12;
|
|
k_eNotAllPlayersAvailable = 13;
|
|
k_eTooManyPlayersForMM = 14;
|
|
k_eTooManyPlayersForPrivate = 15;
|
|
k_eTooManySpectatorsForMM = 16;
|
|
k_eTooManySpectatorsForPrivate = 17;
|
|
k_eTooFewPlayersForMM = 18;
|
|
k_eTooFewPlayersForPrivate = 19;
|
|
k_eMismatchedVersions = 20;
|
|
k_eInvalidPartyMatchMode = 21;
|
|
k_ePlayerBannedFromMode = 22;
|
|
k_eTooManyPlayersOnTeam = 23;
|
|
k_eInvalidTeam = 24;
|
|
k_eInvalidHeroLineup = 25;
|
|
k_eInvalidGroupHeroLineup = 26;
|
|
k_eUnassignedPlayers = 27;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyStartMatchResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional uint32 account_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyInviteUser {
|
|
optional fixed64 party_id = 1;
|
|
optional uint32 invite_account_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyInviteUserResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eAlreadyInvited = 2;
|
|
k_eInvalidPermissions = 3;
|
|
k_eInvalidPartyID = 4;
|
|
k_eDisabled = 5;
|
|
k_eTooManyInvites = 6;
|
|
k_eNotFriends = 7;
|
|
k_eTooBusy = 8;
|
|
k_eRateLimited = 9;
|
|
k_eInvalidPartyMode = 10;
|
|
k_ePlayerDoesntHaveGame = 11;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyInviteUserResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional bool user_online = 2;
|
|
}
|
|
|
|
message CMsgGCToClientPartyEvent {
|
|
enum EEvent {
|
|
k_ePlayerKicked = 1;
|
|
k_eJoinedParty = 3;
|
|
k_eMatchCompleted = 4;
|
|
k_eMatchMakingStopped_User = 5;
|
|
k_eMatchMakingStopped_Version = 6;
|
|
k_eMatchMakingStopped_NoServerRegion = 7;
|
|
k_eLeftParty = 8;
|
|
k_eDeclinedInvite = 9;
|
|
k_eMatchMakingStopped_FailedOther = 10;
|
|
k_eDraftEnded_User = 11;
|
|
k_eStartDraftMMFailed = 12;
|
|
k_eMatchMakingStopped_Cancelled = 13;
|
|
}
|
|
|
|
optional fixed64 party_id = 1;
|
|
optional .CMsgGCToClientPartyEvent.EEvent event = 2 [default = k_ePlayerKicked];
|
|
optional uint32 initiator_account_id = 3;
|
|
optional uint32 target_account_id = 4;
|
|
optional bytes bytes_data = 5;
|
|
optional string str_data = 6;
|
|
optional uint64 uint_data = 7;
|
|
}
|
|
|
|
message CMsgGCToClientCanRejoinParty {
|
|
optional fixed64 party_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCPartyJoinViaCode {
|
|
optional uint64 join_code = 1;
|
|
optional .CMsgPartyMMInfo party_mm_info = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyJoinViaCodeResponse {
|
|
optional .CMsgClientToGCPartyJoinResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional fixed64 party_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyUpdateRoster {
|
|
optional fixed64 party_id = 1;
|
|
optional .CMsgHeroSelectionMatchInfo hero_roster = 2;
|
|
}
|
|
|
|
message CMsgClientToGCPartyUpdateRosterResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eInvalidPermissions = 2;
|
|
k_eDisabled = 3;
|
|
k_eTooBusy = 4;
|
|
k_eRateLimited = 5;
|
|
k_eInvalidRoster = 6;
|
|
k_eMatchForming = 7;
|
|
k_eInvalidGroupRoster = 8;
|
|
k_eHeroesNotUnlocked = 9;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartyUpdateRosterResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCPartySetReadyState {
|
|
optional fixed64 party_id = 1;
|
|
optional bool ready_state = 2;
|
|
optional .CMsgHeroSelectionMatchInfo hero_roster = 3;
|
|
}
|
|
|
|
message CMsgClientToGCPartySetReadyStateResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eInvalidPermissions = 2;
|
|
k_eDisabled = 3;
|
|
k_eTooBusy = 4;
|
|
k_eRateLimited = 5;
|
|
k_eInvalidRoster = 6;
|
|
k_eMatchForming = 7;
|
|
k_eInvalidGroupRoster = 8;
|
|
k_eInMatch = 9;
|
|
k_eHeroesNotUnlocked = 10;
|
|
k_eModeLocked = 11;
|
|
k_eModeBanned = 12;
|
|
}
|
|
|
|
optional .CMsgClientToGCPartySetReadyStateResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCDevSetMMBias {
|
|
optional uint32 account_id = 1;
|
|
optional uint32 value = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetMatchHistory {
|
|
optional uint32 account_id = 1;
|
|
optional uint64 continue_cursor = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetMatchHistoryResponse {
|
|
message Match {
|
|
optional uint64 match_id = 1;
|
|
optional uint32 hero_id = 2;
|
|
optional uint32 match_duration_s = 3;
|
|
optional uint32 start_time = 4;
|
|
optional uint32 match_result = 5;
|
|
optional .ECitadelLobbyTeam player_team = 6 [default = k_ECitadelLobbyTeam_Team0];
|
|
optional uint32 player_kills = 7;
|
|
optional uint32 player_deaths = 8;
|
|
optional uint32 player_assists = 9;
|
|
optional uint32 last_hits = 11;
|
|
optional uint32 denies = 12;
|
|
optional uint32 hero_level = 13;
|
|
optional uint32 net_worth = 14;
|
|
optional uint64 objectives_mask_team0 = 15;
|
|
optional uint64 objectives_mask_team1 = 16;
|
|
optional bool team_abandoned = 17;
|
|
optional uint32 abandoned_time_s = 18;
|
|
}
|
|
|
|
enum EResult {
|
|
k_eResult_InternalError = 0;
|
|
k_eResult_Success = 1;
|
|
k_eResult_InvalidPermission = 2;
|
|
k_eResult_TemporarilyDisabled = 3;
|
|
k_eResult_TooBusy = 4;
|
|
k_eResult_RateLimited = 5;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetMatchHistoryResponse.EResult result = 1 [default = k_eResult_InternalError];
|
|
optional uint64 continue_cursor = 2;
|
|
repeated .CMsgClientToGCGetMatchHistoryResponse.Match matches = 3;
|
|
}
|
|
|
|
message CMsgClientToGCSpectateUser {
|
|
optional uint32 spectate_account_id = 1;
|
|
optional .ECitadelRegionMode region_mode = 2 [default = k_ECitadelRegionMode_ROW];
|
|
optional uint32 client_version = 3;
|
|
optional .EGCPlatform client_platform = 4 [default = k_eGCPlatform_None];
|
|
}
|
|
|
|
message CMsgClientToGCSpectateUserResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 2;
|
|
k_eTooBusy = 3;
|
|
k_eRateLimited = 4;
|
|
k_eNotInGame = 5;
|
|
k_eDisabledForGame = 6;
|
|
k_eServerFull = 7;
|
|
k_eNotFriends = 8;
|
|
k_eRegionInfoNotProvided = 9;
|
|
k_eDurationControlBlocked = 10;
|
|
k_eInvalidClientVersion = 11;
|
|
k_eInvalidRegion = 12;
|
|
}
|
|
|
|
optional .CMsgClientToGCSpectateUserResponse.EResponse result = 1 [default = k_eInternalError];
|
|
optional fixed64 server_steam_id = 3;
|
|
optional bytes sdr_key = 4;
|
|
optional uint32 udp_connect_ip = 5;
|
|
optional uint32 udp_connect_port = 6;
|
|
optional fixed64 lobby_id = 7;
|
|
optional string client_broadcast_url = 8;
|
|
}
|
|
|
|
message CMsgClientToGCSpectateLobby {
|
|
optional uint64 lobby_id = 1;
|
|
optional .ECitadelRegionMode region_mode = 2 [default = k_ECitadelRegionMode_ROW];
|
|
optional uint32 client_version = 3;
|
|
optional .EGCPlatform client_platform = 4 [default = k_eGCPlatform_None];
|
|
}
|
|
|
|
message CMsgClientToGCSpectateLobbyResponse {
|
|
optional .CMsgClientToGCSpectateUserResponse result = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetProfileCard {
|
|
optional uint32 account_id = 1;
|
|
optional bool dev_access_hint = 2;
|
|
optional bool friend_access_hint = 3;
|
|
}
|
|
|
|
message CMsgCitadelProfileCard {
|
|
message Slot {
|
|
message Stat {
|
|
optional .CMsgCitadelProfileCard.EStatID stat_id = 1 [default = k_eStat_Invalid];
|
|
optional uint32 stat_score = 2;
|
|
}
|
|
|
|
message Hero {
|
|
optional uint32 hero_id = 1;
|
|
optional uint32 hero_wins = 2;
|
|
optional uint32 hero_kills = 3;
|
|
}
|
|
|
|
optional uint32 slot_id = 1;
|
|
optional .CMsgCitadelProfileCard.Slot.Stat stat = 2;
|
|
optional .CMsgCitadelProfileCard.Slot.Hero hero = 3;
|
|
}
|
|
|
|
enum EStatID {
|
|
k_eStat_Invalid = 0;
|
|
k_eStat_Wins = 1;
|
|
k_eStat_Kills = 2;
|
|
k_eStat_GamesPlayed = 3;
|
|
}
|
|
|
|
optional uint32 account_id = 1;
|
|
repeated .CMsgCitadelProfileCard.Slot slots = 2;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateRoster {
|
|
optional .CMsgHeroSelectionMatchInfo heroes = 1;
|
|
optional .ECitadelGameMode game_mode = 2 [default = k_ECitadelGameMode_Invalid];
|
|
optional .ECitadelMatchMode match_mode = 3 [default = k_ECitadelMatchMode_Invalid];
|
|
optional bool solo_match = 4;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateRosterResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 2;
|
|
k_eTooBusy = 3;
|
|
k_eRateLimited = 4;
|
|
k_eMMBusy = 5;
|
|
k_eInvalidHeroSelection = 6;
|
|
k_eHeroesNotUnlocked = 7;
|
|
}
|
|
|
|
optional .CMsgClientToGCUpdateRosterResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCGetAccountStats {
|
|
optional uint32 account_id = 1;
|
|
optional bool dev_access_hint = 2;
|
|
optional bool friend_access_hint = 3;
|
|
}
|
|
|
|
message CMsgClientToGCGetAccountStatsResponse {
|
|
enum EResult {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 2;
|
|
k_eTooBusy = 3;
|
|
k_eRateLimited = 4;
|
|
k_eInvalidPermissions = 5;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetAccountStatsResponse.EResult result = 1 [default = k_eInternalError];
|
|
optional .CMsgAccountStats stats = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetMatchMetaData {
|
|
optional uint64 match_id = 1;
|
|
optional uint32 metadata_salt = 3;
|
|
optional uint32 target_account_id = 4;
|
|
}
|
|
|
|
message CMsgClientToGCGetMatchMetaDataResponse {
|
|
enum EResult {
|
|
k_eResult_InternalError = 0;
|
|
k_eResult_Success = 1;
|
|
k_eResult_InvalidPermission = 2;
|
|
k_eResult_TemporarilyDisabled = 3;
|
|
k_eResult_TooBusy = 4;
|
|
k_eResult_RateLimited = 5;
|
|
k_eResult_InvalidMatch = 6;
|
|
k_eResult_MatchInFlight = 7;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetMatchMetaDataResponse.EResult result = 1 [default = k_eResult_InternalError];
|
|
optional uint32 replay_salt = 2;
|
|
optional uint32 metadata_salt = 3;
|
|
optional uint32 replay_valid_through = 4;
|
|
optional uint32 cluster_id = 5;
|
|
optional uint32 replay_processing_through = 6;
|
|
}
|
|
|
|
message CMsgGCToClientDevAnnouncements {
|
|
message Announcement {
|
|
optional uint32 priority = 1;
|
|
optional string title = 2;
|
|
optional string message = 3;
|
|
optional string url = 4;
|
|
optional uint32 unique_id = 5;
|
|
optional uint32 posted_time = 6;
|
|
optional string patch_version = 7;
|
|
}
|
|
|
|
repeated .CMsgGCToClientDevAnnouncements.Announcement announcements = 1;
|
|
}
|
|
|
|
message CMsgClientToGCModifyDevAnnouncements {
|
|
enum EOperation {
|
|
k_eCreate = 0;
|
|
k_eUpdate = 1;
|
|
k_eDelete = 2;
|
|
}
|
|
|
|
optional .CMsgClientToGCModifyDevAnnouncements.EOperation operation = 1 [default = k_eCreate];
|
|
optional uint32 target_id = 2;
|
|
optional uint32 priority = 3;
|
|
optional string title = 4;
|
|
optional string message = 5;
|
|
optional string url = 6;
|
|
optional string patch_version = 7;
|
|
}
|
|
|
|
message CMsgClientToGCModifyDevAnnouncementsResponse {
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eInvalidPermission = 1;
|
|
k_eInvalidTarget = 2;
|
|
k_eInternalError = 3;
|
|
}
|
|
|
|
optional .CMsgClientToGCModifyDevAnnouncementsResponse.EResult result = 1 [default = k_eSuccess];
|
|
}
|
|
|
|
message CMsgClientToGCDevAction {
|
|
enum EAction {
|
|
k_eSetDeveloper = 1;
|
|
k_eSetMMR = 2;
|
|
k_eSetMMRUncertainty = 3;
|
|
k_eSetHeroStatus = 4;
|
|
k_eSetPermission = 5;
|
|
k_eSetNewPlayerProgress = 6;
|
|
k_eForceAccountStorage = 7;
|
|
k_eBookReset = 9;
|
|
k_eBookXPGrant = 10;
|
|
k_eBanAccount = 11;
|
|
}
|
|
|
|
optional .CMsgClientToGCDevAction.EAction action = 1 [default = k_eSetDeveloper];
|
|
optional uint32 account_id = 2;
|
|
optional uint32 uint_value = 3;
|
|
optional int32 int_value = 4;
|
|
optional bool bool_value = 5;
|
|
optional string str_value = 6;
|
|
}
|
|
|
|
message CMsgClientToGCDevActionResponse {
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eInvalidPermission = 1;
|
|
k_eInvalidTarget = 2;
|
|
k_eInternalError = 3;
|
|
}
|
|
|
|
optional .CMsgClientToGCDevActionResponse.EResult result = 1 [default = k_eSuccess];
|
|
}
|
|
|
|
message CMsgClientToGCRecordClientEvents {
|
|
message Event {
|
|
optional uint32 time_stamp = 1;
|
|
optional .ECitadelClientAccountEvent event_id = 2 [default = k_eLaunchedHeroTest];
|
|
optional uint64 event_data = 3;
|
|
optional uint32 client_event_index = 4;
|
|
}
|
|
|
|
repeated .CMsgClientToGCRecordClientEvents.Event events = 1;
|
|
optional uint32 client_run_token = 2;
|
|
}
|
|
|
|
message CMsgClientToGCRecordClientEventsResponse {
|
|
optional bool success = 1;
|
|
}
|
|
|
|
message CMsgClientToGCSetNewPlayerProgress {
|
|
optional .ECitadelNewPlayerProgressFlag flag = 1 [default = k_eNewPlayerProgress_GettingStarted];
|
|
}
|
|
|
|
message CMsgClientToGCSetNewPlayerProgressResponse {
|
|
optional bool success = 1;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateAccountSync {
|
|
repeated uint32 ids = 1;
|
|
repeated uint32 values = 2;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateAccountSyncResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 2;
|
|
k_eTooBusy = 3;
|
|
k_eInvalidMessage = 4;
|
|
}
|
|
|
|
optional .CMsgClientToGCUpdateAccountSyncResponse.EResponse result = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCGetHeroChoice {
|
|
}
|
|
|
|
message CMsgClientToGCGetHeroChoiceResponse {
|
|
message Hero {
|
|
optional uint32 hero_id = 1;
|
|
}
|
|
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eNoChoices = 1;
|
|
k_eInvalidTarget = 2;
|
|
k_eInternalError = 3;
|
|
k_eDisabled = 4;
|
|
k_eTooBusy = 5;
|
|
k_eChoiceClosed = 6;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetHeroChoiceResponse.EResult result = 1 [default = k_eSuccess];
|
|
repeated .CMsgClientToGCGetHeroChoiceResponse.Hero hero_selections = 2;
|
|
optional uint32 hero_choice_id = 3;
|
|
optional uint32 select_count = 4;
|
|
}
|
|
|
|
message CMsgClientToGCUnlockHero {
|
|
repeated uint32 hero_ids = 1;
|
|
optional uint32 hero_choice_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCUnlockHeroResponse {
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eInternalError = 1;
|
|
k_eInvalidHero = 2;
|
|
k_eOutOfSync = 3;
|
|
k_eDisabled = 4;
|
|
k_eTooBusy = 5;
|
|
}
|
|
|
|
optional .CMsgClientToGCUnlockHeroResponse.EResult result = 1 [default = k_eSuccess];
|
|
}
|
|
|
|
message CMsgAccountBook {
|
|
message Unlock {
|
|
optional uint32 unlock_id = 1;
|
|
optional uint32 flags = 2;
|
|
}
|
|
|
|
optional uint32 book_id = 1;
|
|
optional uint32 book_xp = 2;
|
|
optional uint32 spent_xp = 3;
|
|
repeated .CMsgAccountBook.Unlock unlocks = 4;
|
|
}
|
|
|
|
message CMsgClientToGCBookUnlock {
|
|
optional uint32 book_id = 1;
|
|
optional uint32 unlock_id = 2;
|
|
optional uint32 expected_cost = 3;
|
|
optional uint32 client_version = 4;
|
|
}
|
|
|
|
message CMsgClientToGCBookUnlockResponse {
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eInternalError = 1;
|
|
k_eOutOfDateClient = 2;
|
|
k_eInvalidFunds = 3;
|
|
k_eDisabled = 4;
|
|
k_eTooBusy = 5;
|
|
k_eAlreadyUnlocked = 6;
|
|
}
|
|
|
|
optional .CMsgClientToGCBookUnlockResponse.EResult result = 1 [default = k_eSuccess];
|
|
optional .CMsgAccountBook updated_book = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetBook {
|
|
optional uint32 book_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetBookResponse {
|
|
enum EResult {
|
|
k_eSuccess = 0;
|
|
k_eInternalError = 1;
|
|
k_eInvalidBook = 2;
|
|
k_eDisabled = 3;
|
|
k_eTooBusy = 4;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetBookResponse.EResult result = 1 [default = k_eSuccess];
|
|
optional .CMsgAccountBook book = 2;
|
|
}
|
|
|
|
message CMsgGCToClientBookUpdated {
|
|
optional .CMsgAccountBook book = 1;
|
|
}
|
|
|
|
message CMsgClientToGCSubmitPlaytestUser {
|
|
optional string location = 3;
|
|
optional uint32 target_account_id = 4;
|
|
}
|
|
|
|
message CMsgClientToGCSubmitPlaytestUserResponse {
|
|
enum EResponse {
|
|
eResponse_Success = 0;
|
|
eResponse_InternalError = 1;
|
|
eResponse_InvalidFriend = 3;
|
|
eResponse_NotFriendsLongEnough = 4;
|
|
eResponse_AlreadyHasGame = 5;
|
|
eResponse_LimitedUser = 6;
|
|
eResponse_InviteLimitReached = 7;
|
|
}
|
|
|
|
optional .CMsgClientToGCSubmitPlaytestUserResponse.EResponse response = 1 [default = eResponse_Success];
|
|
}
|
|
|
|
message CMsgHeroBuild {
|
|
message BuildModEntry {
|
|
optional uint32 ability_id = 1;
|
|
optional string annotation = 2;
|
|
}
|
|
|
|
message BuildModCategory {
|
|
repeated .CMsgHeroBuild.BuildModEntry mods = 1;
|
|
optional string name = 2;
|
|
optional string description = 3;
|
|
optional float width = 4;
|
|
optional float height = 5;
|
|
}
|
|
|
|
message CurrencyChange {
|
|
optional uint32 ability_id = 1;
|
|
optional int32 currency_type = 2;
|
|
optional int32 delta = 3;
|
|
optional string annotation = 4;
|
|
}
|
|
|
|
message AbilityOrder {
|
|
repeated .CMsgHeroBuild.CurrencyChange currency_changes = 1;
|
|
}
|
|
|
|
message Details_V0 {
|
|
repeated .CMsgHeroBuild.BuildModCategory mod_categories = 1;
|
|
optional .CMsgHeroBuild.AbilityOrder ability_order = 2;
|
|
}
|
|
|
|
optional uint32 hero_build_id = 1;
|
|
optional uint32 hero_id = 2;
|
|
optional uint32 author_account_id = 3;
|
|
optional uint32 last_updated_timestamp = 4;
|
|
optional string name = 5;
|
|
optional string description = 6;
|
|
optional uint32 language = 7;
|
|
optional uint32 version = 8;
|
|
optional uint32 origin_build_id = 9;
|
|
optional .CMsgHeroBuild.Details_V0 details = 10;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateHeroBuild {
|
|
optional .CMsgHeroBuild hero_build = 1;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateHeroBuildResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
}
|
|
|
|
optional .CMsgClientToGCUpdateHeroBuildResponse.EResponse response = 1 [default = k_eInternalError];
|
|
optional uint32 hero_build_id = 2;
|
|
optional uint32 version = 3;
|
|
}
|
|
|
|
message CMsgClientToGCFindHeroBuilds {
|
|
optional uint32 author_account_id = 1;
|
|
optional uint32 hero_id = 2;
|
|
repeated int32 language = 3;
|
|
optional string search_text = 4;
|
|
}
|
|
|
|
message CMsgHeroBuildPreference {
|
|
optional bool favorited = 1;
|
|
optional bool ignored = 2;
|
|
optional bool reported = 3;
|
|
}
|
|
|
|
message CMsgClientToGCFindHeroBuildsResponse {
|
|
message HeroBuildResult {
|
|
optional .CMsgHeroBuild hero_build = 1;
|
|
optional .CMsgHeroBuildPreference preference = 2;
|
|
optional uint32 num_favorites = 3;
|
|
optional uint32 num_ignores = 4;
|
|
optional uint32 num_reports = 5;
|
|
}
|
|
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
}
|
|
|
|
optional .CMsgClientToGCFindHeroBuildsResponse.EResponse response = 1 [default = k_eInternalError];
|
|
repeated .CMsgClientToGCFindHeroBuildsResponse.HeroBuildResult results = 2;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateHeroBuildPreference {
|
|
optional uint32 hero_build_id = 1;
|
|
optional .CMsgHeroBuildPreference preference = 2;
|
|
}
|
|
|
|
message CMsgClientToGCUpdateHeroBuildPreferenceResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
}
|
|
|
|
optional .CMsgClientToGCUpdateHeroBuildPreferenceResponse.EResponse response = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCGetOldHeroBuildData {
|
|
optional uint32 author_account_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetOldHeroBuildDataResponse {
|
|
message OldDetails_V0 {
|
|
repeated uint32 recommended_mod_ability_ids = 1;
|
|
}
|
|
|
|
message OldBuild {
|
|
optional string name = 1;
|
|
optional uint32 hero_id = 2;
|
|
optional string description = 3;
|
|
optional .CMsgClientToGCGetOldHeroBuildDataResponse.OldDetails_V0 details = 4;
|
|
}
|
|
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetOldHeroBuildDataResponse.EResponse response = 1 [default = k_eInternalError];
|
|
optional uint32 author_account_id = 2;
|
|
repeated .CMsgClientToGCGetOldHeroBuildDataResponse.OldBuild results = 3;
|
|
}
|
|
|
|
message CMsgClientToGCReportPlayerFromMatch {
|
|
enum EReportType {
|
|
k_eReport_None = 0;
|
|
k_eReport_VoiceChat = 1;
|
|
k_eReport_Griefing = 2;
|
|
k_eReport_LeftMatch = 3;
|
|
k_eReport_Matchmaking = 4;
|
|
}
|
|
|
|
optional uint64 match_id = 1;
|
|
optional uint32 target_account_id = 2;
|
|
optional .CMsgClientToGCReportPlayerFromMatch.EReportType report_type = 3 [default = k_eReport_None];
|
|
optional string report_text = 4;
|
|
}
|
|
|
|
message CMsgClientToGCReportPlayerFromMatchResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eRateLimited = 2;
|
|
k_eAlreadyReported = 3;
|
|
k_eDisabled = 4;
|
|
k_eInvalidPermissions = 5;
|
|
k_eReportingWindowExpired = 6;
|
|
k_eTooBusy = 7;
|
|
}
|
|
|
|
optional .CMsgClientToGCReportPlayerFromMatchResponse.EResponse response = 1 [default = k_eInternalError];
|
|
}
|
|
|
|
message CMsgClientToGCGetAccountMatchReports {
|
|
optional uint64 match_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetAccountMatchReportsResponse {
|
|
message Report {
|
|
optional uint32 account_id = 1;
|
|
}
|
|
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDisabled = 4;
|
|
k_eTooBusy = 7;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetAccountMatchReportsResponse.EResponse response = 1 [default = k_eInternalError];
|
|
repeated .CMsgClientToGCGetAccountMatchReportsResponse.Report reports = 2;
|
|
}
|
|
|
|
message CMsgClientToGCDeleteHeroBuild {
|
|
optional uint32 author_account_id = 1;
|
|
optional uint32 hero_build_id = 2;
|
|
}
|
|
|
|
message CMsgClientToGCDeleteHeroBuildResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
}
|
|
|
|
optional .CMsgClientToGCDeleteHeroBuildResponse.EResponse response = 1 [default = k_eInternalError];
|
|
optional uint32 builds_deleted = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetActiveMatches {
|
|
}
|
|
|
|
message CMsgClientToGCGetActiveMatchesResponse {
|
|
repeated .CMsgDevMatchInfo active_matches = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetDiscordLink {
|
|
}
|
|
|
|
message CMsgClientToGCGetDiscordLinkResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eDiscordTooBusy = 2;
|
|
k_eAlreadyClaimed = 3;
|
|
k_eDisabled = 4;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetDiscordLinkResponse.EResponse response = 1 [default = k_eInternalError];
|
|
optional string discord_link = 2;
|
|
optional uint32 valid_hours = 3;
|
|
}
|
|
|
|
message CMsgClientToGCGrantForumAccess {
|
|
optional string email = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGrantForumAccessResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eAlreadyClaimed = 2;
|
|
k_eDisabled = 3;
|
|
k_eEmailUsed = 4;
|
|
}
|
|
|
|
optional .CMsgClientToGCGrantForumAccessResponse.EResponse response = 1 [default = k_eInternalError];
|
|
optional string email = 2;
|
|
optional string username = 3;
|
|
optional string forum_password = 4;
|
|
}
|
|
|
|
message CMsgClientToGCModeratorRequest {
|
|
optional uint32 account_id = 1;
|
|
}
|
|
|
|
message CMsgClientToGCModeratorRequestResponse {
|
|
optional bool success = 1;
|
|
repeated string response_text = 2;
|
|
}
|
|
|
|
message CMsgClientToGCGetFriendGameStatus {
|
|
optional bool include_invited = 1;
|
|
}
|
|
|
|
message CMsgClientToGCGetFriendGameStatusResponse {
|
|
enum EResponse {
|
|
k_eInternalError = 0;
|
|
k_eSuccess = 1;
|
|
k_eTooBusy = 2;
|
|
k_eDisabled = 3;
|
|
}
|
|
|
|
optional .CMsgClientToGCGetFriendGameStatusResponse.EResponse response = 1 [default = k_eInternalError];
|
|
repeated uint32 friends_played_game = 2 [packed = true];
|
|
repeated uint32 friends_invited = 3 [packed = true];
|
|
}
|
|
|
|
message CMsgClientToGCUpdateSpectatorStatus {
|
|
optional fixed64 spectating_lobby_id = 1;
|
|
optional bool stopped_spectating = 2;
|
|
}
|