### Steam Workshop API Request and Response Structures Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt Outlines data structures for various Steam Workshop API requests and their corresponding responses, covering operations like getting contributors, retrieving daily revenue, populating item descriptions, and setting item payment rules. ```APIDOC CWorkshop_GetContributors_Request CWorkshop_GetContributors_Response CWorkshop_GetItemDailyRevenue_Request CWorkshop_GetItemDailyRevenue_Response CWorkshop_GetItemDailyRevenue_Response_CountryDailyRevenue CWorkshop_GetPackageDailyRevenue_Request CWorkshop_GetPackageDailyRevenue_Response CWorkshop_GetPackageDailyRevenue_Response_CountryDailyRevenue CWorkshop_PopulateItemDescriptions_Request CWorkshop_PopulateItemDescriptions_Request_ItemDescriptionsLanguageBlock CWorkshop_PopulateItemDescriptions_Request_SingleItemDescription CWorkshop_SetItemPaymentRules_Request CWorkshop_SetItemPaymentRules_Request_PartnerItemPaymentRule CWorkshop_SetItemPaymentRules_Request_WorkshopDirectPaymentRule CWorkshop_SetItemPaymentRules_Request_WorkshopItemPaymentRule CWorkshop_SetItemPaymentRules_Response ``` -------------------------------- ### Dota 2 and Steam Learn Core Message Types Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt A comprehensive list of message types, likely Protocol Buffer (protobuf) messages, defining the data structures for communication within the Dota 2 game and the Steam Learn machine learning platform. These messages cover aspects from matchmaking and in-game events to user statistics and AI model inference requests/responses. ```APIDOC CMsgStartFindingMatch CMsgStartFindingMatchResult CMsgSteamLearnAbilitySkill CMsgSteamLearnAccessTokens CMsgSteamLearnAccessTokens_CacheDataAccessToken CMsgSteamLearnAccessTokens_InferenceAccessToken CMsgSteamLearnAccessTokens_SnapshotProjectAccessToken CMsgSteamLearnData CMsgSteamLearnDataElement CMsgSteamLearnDataList CMsgSteamLearnDataObject CMsgSteamLearnDataSource CMsgSteamLearnDataSourceDescElement CMsgSteamLearnDataSourceDescObject CMsgSteamLearnItemPurchaseV7 CMsgSteamLearnMatchHeroV6 CMsgSteamLearnMatchHeroesV3 CMsgSteamLearnMatchInfo CMsgSteamLearnMatchInfoPlayer CMsgSteamLearnMatchInfoTeam CMsgSteamLearnMatchInfoTeam_Player CMsgSteamLearnMatchStateV5 CMsgSteamLearnMatchStateV5_PlayerState CMsgSteamLearnMatchStateV5_TeamState CMsgSteamLearnNeutralItemPurchaseV4 CMsgSteamLearnPlayerMatchState CMsgSteamLearnPlayerTimedStats CMsgSteamLearnPlayerTimedStats_StatBucket CMsgSteamLearnPreGameItemPurchase CMsgSteamLearnPreGameItemPurchases CMsgSteamLearnServerInfo CMsgSteamLearnServerInfo_ProjectInfo CMsgSteamLearnWardPlacement CMsgSteamLearnWardPlacement_Location CMsgSteamLearn_BatchOperation_Request CMsgSteamLearn_BatchOperation_Response CMsgSteamLearn_CacheData_Request CMsgSteamLearn_CacheData_Response CMsgSteamLearn_GetAccessTokens_Request CMsgSteamLearn_GetAccessTokens_Response CMsgSteamLearn_InferenceBackend_Response CMsgSteamLearn_InferenceBackend_Response_BinaryCrossEntropyOutput CMsgSteamLearn_InferenceBackend_Response_CategoricalCrossEntropyOutput CMsgSteamLearn_InferenceBackend_Response_MutliBinaryCrossEntropyOutput CMsgSteamLearn_InferenceBackend_Response_NamedInferenceOutput CMsgSteamLearn_InferenceBackend_Response_Output CMsgSteamLearn_InferenceBackend_Response_Output_BinaryCrossentropy CMsgSteamLearn_InferenceBackend_Response_Output_CategoricalCrossentropy CMsgSteamLearn_InferenceBackend_Response_Output_MultiBinaryCrossentropy CMsgSteamLearn_InferenceBackend_Response_Output_NamedInference CMsgSteamLearn_InferenceBackend_Response_Output_Regression CMsgSteamLearn_InferenceBackend_Response_RegressionOutput CMsgSteamLearn_InferenceBackend_Response_Sequence CMsgSteamLearn_InferenceMetadataBackend_Request CMsgSteamLearn_InferenceMetadata_Request CMsgSteamLearn_InferenceMetadata_Response CMsgSteamLearn_InferenceMetadata_Response_AppInfo CMsgSteamLearn_InferenceMetadata_Response_AppInfoEntry CMsgSteamLearn_InferenceMetadata_Response_CompactTable CMsgSteamLearn_InferenceMetadata_Response_CompactTable_Entry CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapMappingsEntry CMsgSteamLearn_InferenceMetadata_Response_CompactTable_MapValuesEntry CMsgSteamLearn_InferenceMetadata_Response_KMeans CMsgSteamLearn_InferenceMetadata_Response_KMeans_Cluster CMsgSteamLearn_InferenceMetadata_Response_Range CMsgSteamLearn_InferenceMetadata_Response_RowRange CMsgSteamLearn_InferenceMetadata_Response_SequenceTable CMsgSteamLearn_InferenceMetadata_Response_SequenceTable_Entry CMsgSteamLearn_InferenceMetadata_Response_SequenceTable_MapMappingsEntry CMsgSteamLearn_InferenceMetadata_Response_SequenceTable_MapValuesEntry CMsgSteamLearn_InferenceMetadata_Response_SnapshotHistogram CMsgSteamLearn_InferenceMetadata_Response_StdDev CMsgSteamLearn_Inference_Request CMsgSteamLearn_Inference_Response CMsgSteamLearn_RegisterDataSource_Request CMsgSteamLearn_RegisterDataSource_Response CMsgSteamLearn_SnapshotProject_Request CMsgSteamLearn_SnapshotProject_Response CMsgStickerHero CMsgStickerHeroes CMsgStickerbook CMsgStickerbookPage CMsgStickerbookSticker CMsgStickerbookTeamPageOrderSequence CMsgStopFindingMatch CMsgSuccessfulHero CMsgSurvivorsUserData CMsgSurvivorsUserData_AttributeLevelsEntry CMsgTalentContentAssetStatus CMsgTalentContentStatus CMsgTalentContentStatus_TalentDetails CMsgTalentWinRates CMsgTeamFanContentAssetStatus CMsgTeamFanContentAssetStatusResponse CMsgTeamFanContentAutographStatus CMsgTeamFanContentAutographStatus_AutographStatus CMsgTeamFanContentAutographStatus_TeamStatus CMsgTeamFanContentStatus CMsgTeamFanContentStatus_TeamStatus CMsgTeamFanfare CMsgTournamentItemEvent CMsgTournamentItemEventResponse CMsgTrackedStat CMsgUnderDraftData CMsgUnderDraftData_BenchSlot CMsgUnderDraftData_ShopSlot CMsgUpgradeLeagueItem CMsgUpgradeLeagueItemResponse CMsgUseItem CMsgUseMultipleItems CMsgWatchGame CMsgWatchGameResponse CMsgWeekendTourneyLeave CMsgWeekendTourneyOpts CMsgWeekendTourneySchedule CMsgWeekendTourneySchedule_Division CMvpData CMvpData_MvpDatum CMvpData_MvpDatum_MvpAccolade CPartySearchClientParty CProtoItemHeroStatue CProtoItemSocket CProtoItemSocket_AssetModifier CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY CProtoItemSocket_Autograph CProtoItemSocket_Color CProtoItemSocket_Effect CProtoItemSocket_Empty CProtoItemSocket_Spectator CProtoItemSocket_StaticVisuals CProtoItemSocket_Strange CProtoItemSocket_Strange_DESERIALIZE_FROM_STRING_ONLY CSODOTAChatWheel CSODOTAGameAccountClient CSODOTAGameAccountClient_RoleHandicap CSODOTAGameAccountPlus CSODOTAGameHeroFavorites CSODOTALobby ``` -------------------------------- ### Dota 2 Combat Log and SourceTV Data Structures Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt Details data structures for serialized combat logs, including dictionary components, and SourceTV game information, such as small game details and player information. ```APIDOC CSerializedCombatLog CSerializedCombatLog_Dictionary CSerializedCombatLog_Dictionary_DictString CSourceTVGameSmall CSourceTVGameSmall_Player ``` -------------------------------- ### Dota 2 Client-to-Game Coordinator Message Definitions Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt This section enumerates the various `CMsgClientToGC` and related message types used for communication between the Dota 2 client and the Game Coordinator. These messages cover a wide range of functionalities including item usage, compendium interactions, guild management, administrative tasks, social features, and game telemetry. ```APIDOC CMsgClientToGCRoadToTIUseItem CMsgClientToGCRoadToTIUseItemResponse CMsgClientToGCSelectCompendiumInGamePrediction CMsgClientToGCSelectCompendiumInGamePredictionResponse CMsgClientToGCSelectCompendiumInGamePrediction_Prediction CMsgClientToGCSelectGuildContract CMsgClientToGCSelectGuildContractResponse CMsgClientToGCSetBannedHeroes CMsgClientToGCSetDPCFavoriteState CMsgClientToGCSetDPCFavoriteStateResponse CMsgClientToGCSetEventActiveSeasonID CMsgClientToGCSetEventActiveSeasonIDResponse CMsgClientToGCSetFavoritePage CMsgClientToGCSetFavoritePageResponse CMsgClientToGCSetGuildInfo CMsgClientToGCSetGuildInfoResponse CMsgClientToGCSetGuildMemberRole CMsgClientToGCSetGuildMemberRoleResponse CMsgClientToGCSetGuildRoleOrder CMsgClientToGCSetGuildRoleOrderResponse CMsgClientToGCSetHeroSticker CMsgClientToGCSetHeroStickerResponse CMsgClientToGCSetItemInventoryCategory CMsgClientToGCSetItemStyle CMsgClientToGCSetItemStyleResponse CMsgClientToGCSetPlayerCardRosterRequest CMsgClientToGCSetPlayerCardRosterResponse CMsgClientToGCSetProfileCardSlots CMsgClientToGCSetProfileCardSlots_CardSlot CMsgClientToGCShowcaseAdminConvict CMsgClientToGCShowcaseAdminConvictResponse CMsgClientToGCShowcaseAdminExonerate CMsgClientToGCShowcaseAdminExonerateResponse CMsgClientToGCShowcaseAdminGetReportsRollup CMsgClientToGCShowcaseAdminGetReportsRollupList CMsgClientToGCShowcaseAdminGetReportsRollupListResponse CMsgClientToGCShowcaseAdminGetReportsRollupResponse CMsgClientToGCShowcaseAdminGetUserDetails CMsgClientToGCShowcaseAdminGetUserDetailsResponse CMsgClientToGCShowcaseAdminLockAccount CMsgClientToGCShowcaseAdminLockAccountResponse CMsgClientToGCShowcaseAdminReset CMsgClientToGCShowcaseAdminResetResponse CMsgClientToGCShowcaseGetUserData CMsgClientToGCShowcaseGetUserDataResponse CMsgClientToGCShowcaseModerationApplyModeration CMsgClientToGCShowcaseModerationApplyModerationResponse CMsgClientToGCShowcaseModerationGetQueue CMsgClientToGCShowcaseModerationGetQueueResponse CMsgClientToGCShowcaseSetUserData CMsgClientToGCShowcaseSetUserDataResponse CMsgClientToGCShowcaseSubmitReport CMsgClientToGCShowcaseSubmitReportResponse CMsgClientToGCSocialFeedPostCommentRequest CMsgClientToGCSocialFeedPostMessageRequest CMsgClientToGCStartWatchingOverwatch CMsgClientToGCStopWatchingOverwatch CMsgClientToGCSubmitCoachTeammateRating CMsgClientToGCSubmitCoachTeammateRatingResponse CMsgClientToGCSubmitDraftTriviaMatchAnswer CMsgClientToGCSubmitDraftTriviaMatchAnswerResponse CMsgClientToGCSubmitOWConviction CMsgClientToGCSubmitOWConvictionResponse CMsgClientToGCSubmitPlayerMatchSurvey CMsgClientToGCSubmitPlayerMatchSurveyResponse CMsgClientToGCSubmitPrivateCoachingSessionRating CMsgClientToGCSubmitPrivateCoachingSessionRatingResponse CMsgClientToGCSurvivorsGameTelemetryData CMsgClientToGCSurvivorsGameTelemetryDataResponse CMsgClientToGCSurvivorsPowerUpTelemetryData CMsgClientToGCTeammateStatsRequest CMsgClientToGCTeammateStatsResponse CMsgClientToGCTeammateStatsResponse_TeammateStat CMsgClientToGCTopFriendMatchesRequest CMsgClientToGCTopLeagueMatchesRequest CMsgClientToGCTransferSeasonalMMRRequest CMsgClientToGCTransferSeasonalMMRResponse CMsgClientToGCUnderDraftBuy CMsgClientToGCUnderDraftBuyResponse CMsgClientToGCUnderDraftRedeemReward CMsgClientToGCUnderDraftRedeemRewardResponse CMsgClientToGCUnderDraftRequest CMsgClientToGCUnderDraftReroll CMsgClientToGCUnderDraftRerollResponse CMsgClientToGCUnderDraftResponse CMsgClientToGCUnderDraftRollBackBench CMsgClientToGCUnderDraftRollBackBenchResponse CMsgClientToGCUnderDraftSell CMsgClientToGCUnderDraftSellResponse CMsgClientToGCUnlockCrate CMsgClientToGCUnlockCrateResponse CMsgClientToGCUnlockCrateResponse_Item CMsgClientToGCUnlockItemStyle CMsgClientToGCUnlockItemStyleResponse CMsgClientToGCUnpackBundle CMsgClientToGCUnpackBundleResponse CMsgClientToGCUnwrapGift CMsgClientToGCUpdateComicBookStats CMsgClientToGCUpdateComicBookStats_LanguageStats CMsgClientToGCUpdateComicBookStats_SingleStat CMsgClientToGCUpdateFilteredPlayerNote CMsgClientToGCUpdatePartyBeacon CMsgClientToGCUploadMatchClip CMsgClientToGCVerifyFavoritePlayers CMsgClientToGCVoteForArcana CMsgClientToGCVoteForArcanaResponse CMsgClientToGCVoteForMVP CMsgClientToGCVoteForMVPResponse CMsgClientToGCWageringRequest CMsgClientToGCWrapAndDeliverGift CMsgClientToGCWrapAndDeliverGiftResponse CMsgClientToGcFantasyCraftingUpgradeTablets CMsgClientToGcFantasyCraftingUpgradeTabletsResponse CMsgClientWelcome CMsgClientWelcome_Location CMsgClientsRejoinChatChannels CMsgConnectedPlayers CMsgConnectedPlayers_Player CMsgConnectedPlayers_PlayerDraft CMsgConnectionStatus CMsgConsumableUsage CMsgConsumeEventSupportGrantItem CMsgConsumeEventSupportGrantItemResponse CMsgCraftStatue CMsgCraftingResponse CMsgCraftworksComponents CMsgCraftworksComponents_ComponentQuantitiesEntry CMsgCraftworksQuestReward CMsgCraftworksUserData CMsgCreateSpectatorLobby CMsgCustomGameInstallStatus CMsgCustomGameWhitelist CMsgCustomGameWhitelistForEdit ``` -------------------------------- ### Game Coordinator to Client Messages (CMsgGCToClient) Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt These messages are sent from the Dota 2 Game Coordinator to the client, conveying updates, responses, and notifications related to in-game events, user data, Battle Pass progress, social features, and match information. They cover a broad spectrum of client-facing functionalities. ```APIDOC CMsgGCToClientBattlePassRollup_TI8_CavernCrawl CMsgGCToClientBattlePassRollup_TI8_FantasyChallenge CMsgGCToClientBattlePassRollup_TI8_PlayerCard CMsgGCToClientBattlePassRollup_TI8_Predictions CMsgGCToClientBattlePassRollup_TI8_Wagering CMsgGCToClientBattlePassRollup_TI9 CMsgGCToClientBattlePassRollup_Winter2017 CMsgGCToClientBattlePassRollup_Winter2017_Achievements CMsgGCToClientBattlePassRollup_Winter2017_BattleCup CMsgGCToClientBattlePassRollup_Winter2017_Bracket CMsgGCToClientBattlePassRollup_Winter2017_FantasyChallenge CMsgGCToClientBattlePassRollup_Winter2017_PlayerCard CMsgGCToClientBattlePassRollup_Winter2017_Predictions CMsgGCToClientBattlePassRollup_Winter2017_Questlines CMsgGCToClientBattlePassRollup_Winter2017_Wagering CMsgGCToClientBingoUserDataUpdated CMsgGCToClientCandyShopUserDataUpdated CMsgGCToClientCavernCrawlMapPathCompleted CMsgGCToClientCavernCrawlMapPathCompleted_CompletedPathInfo CMsgGCToClientCavernCrawlMapUpdated CMsgGCToClientClaimEventActionUsingItemCompleted CMsgGCToClientCoachTeammateRatingsChanged CMsgGCToClientCollectorsCacheAvailableDataResponse CMsgGCToClientCollectorsCacheAvailableDataResponse_Vote CMsgGCToClientCommendNotification CMsgGCToClientCraftworksUserDataUpdated CMsgGCToClientCurrencyPricePoints CMsgGCToClientCurrencyPricePoints_Currency CMsgGCToClientCustomGamesFriendsPlayedResponse CMsgGCToClientCustomGamesFriendsPlayedResponse_CustomGame CMsgGCToClientEmoticonData CMsgGCToClientFantasyCraftingDataUpdated CMsgGCToClientFightingGameChallenge CMsgGCToClientFightingGameChallengeCanceled CMsgGCToClientFightingGameStartMatch CMsgGCToClientFindTopSourceTVGamesResponse CMsgGCToClientFriendsPlayedCustomGameResponse CMsgGCToClientGetFavoritePlayersResponse CMsgGCToClientGetFilteredPlayersResponse CMsgGCToClientGetFilteredPlayersResponse_CFilterEntry CMsgGCToClientGuildDataUpdated CMsgGCToClientGuildFeedUpdated CMsgGCToClientGuildMembersDataUpdated CMsgGCToClientGuildMembershipUpdated CMsgGCToClientGuildUnderDraftGoldUpdated CMsgGCToClientHeroStatueCreateResult CMsgGCToClientInFlightChargesUpdated CMsgGCToClientInFlightChargesUpdated_ItemCharges CMsgGCToClientJoinPartyFromBeaconResponse CMsgGCToClientManageFavoritesResponse CMsgGCToClientMapStatsResponse CMsgGCToClientMatchGroupsVersion CMsgGCToClientMatchSignedOut CMsgGCToClientOverwatchCasesAvailable CMsgGCToClientOverworldUserDataUpdated CMsgGCToClientPartyBeaconUpdate CMsgGCToClientPartySearchInvite CMsgGCToClientPartySearchInvites CMsgGCToClientPlayerBeaconState CMsgGCToClientPlayerStatsResponse CMsgGCToClientPlaytestStatus CMsgGCToClientPollConvarRequest CMsgGCToClientPollConvarResponse CMsgGCToClientPollFileRequest CMsgGCToClientPollFileResponse CMsgGCToClientPrivateChatResponse CMsgGCToClientPrivateCoachingSessionUpdated CMsgGCToClientPurchaseFilteredPlayerSlotResponse CMsgGCToClientQuestProgressUpdated CMsgGCToClientQuestProgressUpdated_Challenge CMsgGCToClientRankResponse CMsgGCToClientRankUpdate CMsgGCToClientRecordContestVoteResponse CMsgGCToClientRemoveFilteredPlayerResponse CMsgGCToClientRequestActiveBeaconPartiesResponse CMsgGCToClientRequestDropped CMsgGCToClientRequestLaneSelection CMsgGCToClientRequestLaneSelectionResponse CMsgGCToClientRequestMMInfo CMsgGCToClientRoadToTIQuestDataUpdated CMsgGCToClientSocialFeedPostCommentResponse CMsgGCToClientSocialFeedPostMessageResponse CMsgGCToClientSteamDatagramTicket CMsgGCToClientStoreTransactionCompleted CMsgGCToClientTopFriendMatchesResponse CMsgGCToClientTopLeagueMatchesResponse CMsgGCToClientTopWeekendTourneyGames CMsgGCToClientTournamentItemDrop CMsgGCToClientTrophyAwarded CMsgGCToClientUpdateFilteredPlayerNoteResponse CMsgGCToClientUploadMatchClipResponse CMsgGCToClientVACReminder CMsgGCToClientVerifyFavoritePlayersResponse CMsgGCToClientVerifyFavoritePlayersResponse_Result CMsgGCToClientWageringResponse CMsgGCToClientWageringUpdate ``` -------------------------------- ### Dota 2 Lobby, Party, and Game Management Structures Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt Defines various data structures used for managing Dota 2 game lobbies, parties, and related entities, including invites, member details, and server-side lobby information. ```APIDOC CSODOTALobbyInvite CSODOTALobbyInvite_LobbyMember CSODOTALobbyMember CSODOTALobby_CExtraMsg CSODOTAMapLocationState CSODOTAParty CSODOTAPartyInvite CSODOTAPartyInvite_PartyMember CSODOTAPartyMember CSODOTAPlayerChallenge CSODOTAServerLobby CSODOTAServerLobbyMember CSODOTAServerStaticLobby CSODOTAServerStaticLobbyMember CSODOTAStaticLobby CSODOTAStaticLobbyMember ``` -------------------------------- ### Dota 2 Game Coordinator Message Types Reference Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt This snippet lists all identified message types used for communication between the Dota 2 client and the Game Coordinator (GC). These messages facilitate various in-game actions, data exchanges, and system interactions, categorized by their functional prefixes like CMsgClientToGC (client-to-GC requests) and CMsg (general messages). ```APIDOC CMsgCancelWatchGame CMsgCandyShopCandyCount CMsgCandyShopCandyQuantity CMsgCandyShopExchangeRecipe CMsgCandyShopReward CMsgCandyShopRewardData_EventAction CMsgCandyShopRewardData_EventPoints CMsgCandyShopRewardData_Item CMsgCandyShopUserData CMsgChatToxicityReport CMsgChatToxicityToxicPlayerMatchesReport CMsgChatToxicityToxicPlayerMatchesReport_IndividualRow CMsgCheerConfig CMsgCheerState CMsgCheerTypeState CMsgClientHello CMsgClientPingData CMsgClientSuspended CMsgClientToGCAcceptInviteToGuild CMsgClientToGCAcceptInviteToGuildResponse CMsgClientToGCAcceptPrivateCoachingSession CMsgClientToGCAcceptPrivateCoachingSessionResponse CMsgClientToGCAcknowledgeBattleReport CMsgClientToGCAcknowledgeBattleReportResponse CMsgClientToGCAcknowledgeReporterUpdates CMsgClientToGCAddGuildRole CMsgClientToGCAddGuildRoleResponse CMsgClientToGCAddPlayerToGuildChat CMsgClientToGCAddPlayerToGuildChatResponse CMsgClientToGCAggregateMetrics CMsgClientToGCAggregateMetrics_SingleMetric CMsgClientToGCApplyGemCombiner CMsgClientToGCBatchGetPlayerCardRosterRequest CMsgClientToGCBatchGetPlayerCardRosterRequest_LeagueTimestamp CMsgClientToGCBatchGetPlayerCardRosterResponse CMsgClientToGCBatchGetPlayerCardRosterResponse_RosterResponse CMsgClientToGCBingoClaimRow CMsgClientToGCBingoClaimRowResponse CMsgClientToGCBingoDevAddTokens CMsgClientToGCBingoDevAddTokensResponse CMsgClientToGCBingoDevClearInventory CMsgClientToGCBingoDevClearInventoryResponse CMsgClientToGCBingoDevRerollCard CMsgClientToGCBingoDevRerollCardResponse CMsgClientToGCBingoGetStatsData CMsgClientToGCBingoGetStatsDataResponse CMsgClientToGCBingoGetUserData CMsgClientToGCBingoGetUserDataResponse CMsgClientToGCBingoModifySquare CMsgClientToGCBingoModifySquareResponse CMsgClientToGCBingoShuffleCard CMsgClientToGCBingoShuffleCardResponse CMsgClientToGCCancelInviteToGuild CMsgClientToGCCancelInviteToGuildResponse CMsgClientToGCCancelUnfinalizedTransactions CMsgClientToGCCancelUnfinalizedTransactionsResponse CMsgClientToGCCandyShopDevClearInventory CMsgClientToGCCandyShopDevClearInventoryResponse CMsgClientToGCCandyShopDevGrantCandy CMsgClientToGCCandyShopDevGrantCandyBags CMsgClientToGCCandyShopDevGrantCandyBagsResponse CMsgClientToGCCandyShopDevGrantRerollCharges CMsgClientToGCCandyShopDevGrantRerollChargesResponse CMsgClientToGCCandyShopDevResetShop CMsgClientToGCCandyShopDevResetShopResponse CMsgClientToGCCandyShopDevShuffleExchange CMsgClientToGCCandyShopDevShuffleExchangeResponse CMsgClientToGCCandyShopDoExchange CMsgClientToGCCandyShopDoExchangeResponse CMsgClientToGCCandyShopDoVariableExchange CMsgClientToGCCandyShopDoVariableExchangeResponse CMsgClientToGCCandyShopGetUserData CMsgClientToGCCandyShopGetUserDataResponse CMsgClientToGCCandyShopOpenBags CMsgClientToGCCandyShopOpenBagsResponse CMsgClientToGCCandyShopPurchaseReward CMsgClientToGCCandyShopPurchaseRewardResponse CMsgClientToGCCandyShopRerollRewards CMsgClientToGCCandyShopRerollRewardsResponse CMsgClientToGCCavernCrawlClaimRoom CMsgClientToGCCavernCrawlClaimRoomResponse CMsgClientToGCCavernCrawlGetClaimedRoomCount CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse CMsgClientToGCCavernCrawlGetClaimedRoomCountResponse_MapVariant CMsgClientToGCCavernCrawlRequestMapState CMsgClientToGCCavernCrawlRequestMapStateResponse CMsgClientToGCCavernCrawlRequestMapStateResponse_InventoryItem CMsgClientToGCCavernCrawlRequestMapStateResponse_MapVariant CMsgClientToGCCavernCrawlRequestMapStateResponse_SwappedChallenge CMsgClientToGCCavernCrawlRequestMapStateResponse_TreasureMap CMsgClientToGCCavernCrawlUseItemOnPath CMsgClientToGCCavernCrawlUseItemOnPathResponse CMsgClientToGCCavernCrawlUseItemOnRoom CMsgClientToGCCavernCrawlUseItemOnRoomResponse CMsgClientToGCChinaSSAAcceptedRequest CMsgClientToGCChinaSSAAcceptedResponse CMsgClientToGCChinaSSAURLRequest CMsgClientToGCChinaSSAURLResponse CMsgClientToGCClaimEventActionUsingItem CMsgClientToGCClaimEventActionUsingItemResponse CMsgClientToGCClaimLeaderboardRewards CMsgClientToGCClaimLeaderboardRewardsResponse CMsgClientToGCClaimSwag CMsgClientToGCClaimSwagResponse CMsgClientToGCCoachFriend CMsgClientToGCCoachFriendResponse CMsgClientToGCCollectorsCacheAvailableDataRequest CMsgClientToGCCraftworksCraftRecipe CMsgClientToGCCraftworksCraftRecipeResponse CMsgClientToGCCraftworksDevModifyComponents CMsgClientToGCCraftworksDevModifyComponentsResponse CMsgClientToGCCraftworksGetUserData CMsgClientToGCCraftworksGetUserDataResponse CMsgClientToGCCreateGuild CMsgClientToGCCreateGuildResponse CMsgClientToGCCreateHeroStatue CMsgClientToGCCreatePlayerCardPack CMsgClientToGCCreatePlayerCardPackResponse CMsgClientToGCCreateStaticRecipe CMsgClientToGCCreateStaticRecipeResponse CMsgClientToGCCreateStaticRecipeResponse_AdditionalOutput CMsgClientToGCCreateStaticRecipeResponse_InputError CMsgClientToGCCreateStaticRecipeResponse_OutputItem CMsgClientToGCCreateStaticRecipe_Item CMsgClientToGCCreateStickerbookPageRequest ``` -------------------------------- ### Dota 2 Economy Item Data Structures Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt Describes data structures related to Dota 2 in-game economy items, including general item properties, attributes, drop rate bonuses, equipped status, and tournament passports. ```APIDOC CSOEconGameAccountClient CSOEconItem CSOEconItemAttribute CSOEconItemDropRateBonus CSOEconItemEquipped CSOEconItemTournamentPassport ``` -------------------------------- ### Dota 2 API Message and Data Structure Names Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt This snippet provides a complete listing of all identified message and data structure names from the /paralin/go-dota2 project. These names represent distinct API entities, such as game attributes, broadcast requests, match metadata, and various in-game events or objects. While detailed schemas are not provided in the source, this list serves as an index of available types. ```APIDOC CAttribute_ItemDynamicRecipeComponent CAttribute_String CBroadcast_PostGameDataFrame_Request CCandyShopDev CCommunity_ClanAnnouncementInfo CCommunity_GetClanAnnouncements_Request CCommunity_GetClanAnnouncements_Response CDOTABroadcasterInfo CDOTAClientHardwareSpecs CDOTALobbyMatchQualityData CDOTAMatchMetadata CDOTAMatchMetadataFile CDOTAMatchMetadata_EconItem CDOTAMatchMetadata_GuildChallengeProgress CDOTAMatchMetadata_GuildChallengeProgress_IndividualProgress CDOTAMatchMetadata_Team CDOTAMatchMetadata_Team_ActionGrant CDOTAMatchMetadata_Team_AutoStyleCriteria CDOTAMatchMetadata_Team_CandyGrant CDOTAMatchMetadata_Team_CavernChallengeResult CDOTAMatchMetadata_Team_EventData CDOTAMatchMetadata_Team_FeaturedGamemodeProgress CDOTAMatchMetadata_Team_InventorySnapshot CDOTAMatchMetadata_Team_ItemPurchase CDOTAMatchMetadata_Team_KillInfo CDOTAMatchMetadata_Team_PeriodicResourceData CDOTAMatchMetadata_Team_Player CDOTAMatchMetadata_Team_PlayerKill CDOTAMatchMetadata_Team_Player_ContractProgress CDOTAMatchMetadata_Team_Player_OverworldRewards CDOTAMatchMetadata_Team_StrangeGemProgress CDOTAMatchMetadata_Team_SubChallenge CDOTAMatchMetadata_Team_VictoryPrediction CDOTAMatchMetadata_Tip CDOTAMatchPrivateMetadata CDOTAMatchPrivateMetadata_StringName CDOTAMatchPrivateMetadata_Team CDOTAMatchPrivateMetadata_Team_Building CDOTAMatchPrivateMetadata_Team_Player CDOTAMatchPrivateMetadata_Team_Player_BuffRecord CDOTAMatchPrivateMetadata_Team_Player_BuffRecord_ByHeroTarget CDOTAMatchPrivateMetadata_Team_Player_CombatSegment CDOTAMatchPrivateMetadata_Team_Player_CombatSegment_DamageByAbility CDOTAMatchPrivateMetadata_Team_Player_CombatSegment_DamageByAbility_ByHeroTarget CDOTAMatchPrivateMetadata_Team_Player_CombatSegment_HealingByAbility CDOTAMatchPrivateMetadata_Team_Player_CombatSegment_HealingByAbility_ByHeroTarget CDOTAMatchPrivateMetadata_Team_Player_GoldReceived CDOTAMatchPrivateMetadata_Team_Player_XPReceived CDOTAReplayDownloadInfo CDOTAReplayDownloadInfo_Highlight CDOTASaveGame CDOTASaveGame_Player CDOTASaveGame_SaveInstance CDOTASaveGame_SaveInstance_PlayerPositions CDotaMsg_PredictionResult CDotaMsg_PredictionResult_Prediction CExtraMsgBlock CGCMsgCompressedMsgToClient CGCMsgGetIPLocationResponse CGCStorePurchaseInit_LineItem CGCStoreRechargeRedirect_LineItem CGCSystemMsg_GetAccountDetails CGCSystemMsg_GetAccountDetails_Response CGCToGCMsgMasterAck CGCToGCMsgMasterAck_Process CGCToGCMsgMasterAck_Response CGCToGCMsgMasterStartupComplete CGCToGCMsgMasterStartupComplete_GCInfo CGCToGCMsgRouted CGCToGCMsgRoutedReply CIPLocationInfo CLobbyBroadcastChannelInfo CLobbyGuildChallenge CLobbyGuildDetails CLobbyTeamDetails CLobbyTimedRewardDetails CMatchAdditionalUnitInventory CMatchClip CMatchHeroSelectEvent CMatchPlayerAbilityUpgrade CMatchPlayerPermanentBuff CMatchPlayerTimedCustomStat CMatchPlayerTimedStatAverages CMatchPlayerTimedStatStdDeviations CMatchPlayerTimedStats CMatchTeamTimedStats CMsgAbandonCurrentGame CMsgAbilitySelectionSteamMLEntry CMsgAccountGuildEventData CMsgAccountGuildInvite CMsgAccountGuildMemberships CMsgAccountGuildsPersonaInfo CMsgActivatePlusFreeTrialResponse CMsgAddItemToSocket CMsgAddItemToSocketData CMsgAddItemToSocketResponse CMsgAddSocket CMsgAddSocketResponse CMsgAdditionalLobbyStartupAccountData CMsgAdditionalLobbyStartupAccountData_ChatWheelMessageRange CMsgAdditionalLobbyStartupAccountData_PingWheelMessageRange CMsgAdjustItemEquippedState CMsgApplyAutograph CMsgApplyEggEssence CMsgApplyPennantUpgrade CMsgApplyRemoteConVars CMsgApplyRemoteConVars_ConVar CMsgApplyStrangePart CMsgApplyTeamToPracticeLobby CMsgArcanaVoteMatchVotes CMsgArcanaVotes CMsgArcanaVotes_Match CMsgAvailablePredictions CMsgAvailablePredictions_MatchPrediction CMsgAvailablePrivateCoachingSession CMsgAvailablePrivateCoachingSessionList CMsgAvailablePrivateCoachingSessionSummary CMsgBalancedShuffleLobby CMsgBannedWordList CMsgBattleCupVictory CMsgBattleReport CMsgBattleReportAggregateStats CMsgBattleReportAggregateStats_CMsgBattleReportAggregate CMsgBattleReportAggregateStats_CMsgBattleReportStat CMsgBattleReportAggregatedGeneralStats CMsgBattleReportHighlights CMsgBattleReportInfo CMsgBattleReportInfoList CMsgBattleReport_Game CMsgBattleReport_GameList CMsgBattleReport_Highlight CMsgBattleReport_HighlightGeneral CMsgBingoCard CMsgBingoIndividualStatData CMsgBingoSquare CMsgBingoStatsData CMsgBingoTokens CMsgBingoUserData CMsgBingoUserData_BingoCardsEntry CMsgBingoUserData_BingoTokensEntry CMsgBotGameCreate CMsgBotWorldState CMsgBotWorldState_Ability CMsgBotWorldState_AvoidanceZone CMsgBotWorldState_Courier CMsgBotWorldState_DroppedItem CMsgBotWorldState_EventAbility CMsgBotWorldState_EventCourierKilled CMsgBotWorldState_EventDamage CMsgBotWorldState_EventRoshanKilled CMsgBotWorldState_EventTree CMsgBotWorldState_LinearProjectile CMsgBotWorldState_Modifier CMsgBotWorldState_Player CMsgBotWorldState_RuneInfo CMsgBotWorldState_TeleportInfo CMsgBotWorldState_TrackingProjectile CMsgBotWorldState_Unit CMsgBotWorldState_Vector ``` -------------------------------- ### Dota 2 Client-to-Game Coordinator (CMsg) Message List Source: https://github.com/paralin/go-dota2/blob/master/apigen/snapshot-type-list.txt This is a comprehensive list of message types (CMsg) used for communication between the Dota 2 game client and the Game Coordinator. Each entry represents a specific request from the client or a response from the GC, covering a broad spectrum of game features such as overworld events, inventory management, player statistics, guild operations, and more. ```APIDOC CMsgClientToGCOverworldClaimEncounterReward CMsgClientToGCOverworldClaimEncounterRewardResponse CMsgClientToGCOverworldCompletePath CMsgClientToGCOverworldCompletePathResponse CMsgClientToGCOverworldDevClearInventory CMsgClientToGCOverworldDevClearInventoryResponse CMsgClientToGCOverworldDevGrantTokens CMsgClientToGCOverworldDevGrantTokensResponse CMsgClientToGCOverworldDevResetAll CMsgClientToGCOverworldDevResetAllResponse CMsgClientToGCOverworldDevResetNode CMsgClientToGCOverworldDevResetNodeResponse CMsgClientToGCOverworldFeedback CMsgClientToGCOverworldFeedbackResponse CMsgClientToGCOverworldGetDynamicImage CMsgClientToGCOverworldGetDynamicImageResponse CMsgClientToGCOverworldGetDynamicImageResponse_Image CMsgClientToGCOverworldGetUserData CMsgClientToGCOverworldGetUserDataResponse CMsgClientToGCOverworldGiftTokens CMsgClientToGCOverworldGiftTokensResponse CMsgClientToGCOverworldMinigameAction CMsgClientToGCOverworldMinigameActionResponse CMsgClientToGCOverworldMoveToNode CMsgClientToGCOverworldMoveToNodeResponse CMsgClientToGCOverworldRequestTokensNeededByFriend CMsgClientToGCOverworldRequestTokensNeededByFriendResponse CMsgClientToGCOverworldTradeTokens CMsgClientToGCOverworldTradeTokensResponse CMsgClientToGCOverworldVisitEncounter CMsgClientToGCOverworldVisitEncounterResponse CMsgClientToGCPackBundle CMsgClientToGCPackBundleResponse CMsgClientToGCPlaceCollectionStickersRequest CMsgClientToGCPlaceCollectionStickersRequest_Slot CMsgClientToGCPlaceCollectionStickersResponse CMsgClientToGCPlaceStickersRequest CMsgClientToGCPlaceStickersRequest_StickerItem CMsgClientToGCPlaceStickersResponse CMsgClientToGCPlayerCardSpecificPurchaseRequest CMsgClientToGCPlayerCardSpecificPurchaseResponse CMsgClientToGCPlayerStatsRequest CMsgClientToGCPrivateChatDemote CMsgClientToGCPrivateChatInvite CMsgClientToGCPrivateChatKick CMsgClientToGCPrivateChatPromote CMsgClientToGCPublishUserStat CMsgClientToGCPurchaseChargeCostItems CMsgClientToGCPurchaseChargeCostItemsResponse CMsgClientToGCPurchaseChargeCostItems_Item CMsgClientToGCPurchaseFilteredPlayerSlot CMsgClientToGCPurchaseLabyrinthBlessings CMsgClientToGCPurchaseLabyrinthBlessingsResponse CMsgClientToGCRankRequest CMsgClientToGCRecalibrateMMR CMsgClientToGCRecalibrateMMRResponse CMsgClientToGCRecordContestVote CMsgClientToGCRecyclePlayerCard CMsgClientToGCRecyclePlayerCardResponse CMsgClientToGCRemoveFilteredPlayer CMsgClientToGCRemoveGuildRole CMsgClientToGCRemoveGuildRoleResponse CMsgClientToGCRemoveItemAttribute CMsgClientToGCRemoveItemAttributeResponse CMsgClientToGCReportGuildContent CMsgClientToGCReportGuildContentResponse CMsgClientToGCRequestAccountGuildEventData CMsgClientToGCRequestAccountGuildEventDataResponse CMsgClientToGCRequestAccountGuildPersonaInfo CMsgClientToGCRequestAccountGuildPersonaInfoBatch CMsgClientToGCRequestAccountGuildPersonaInfoBatchResponse CMsgClientToGCRequestAccountGuildPersonaInfoResponse CMsgClientToGCRequestActiveBeaconParties CMsgClientToGCRequestActiveGuildChallenge CMsgClientToGCRequestActiveGuildChallengeResponse CMsgClientToGCRequestActiveGuildContracts CMsgClientToGCRequestActiveGuildContractsResponse CMsgClientToGCRequestArcanaVotesRemaining CMsgClientToGCRequestArcanaVotesRemainingResponse CMsgClientToGCRequestContestVotes CMsgClientToGCRequestContestVotesResponse CMsgClientToGCRequestContestVotesResponse_ItemVote CMsgClientToGCRequestEventPointLogResponseV2 CMsgClientToGCRequestEventPointLogResponseV2_LogEntry CMsgClientToGCRequestEventPointLogV2 CMsgClientToGCRequestGuildData CMsgClientToGCRequestGuildDataResponse CMsgClientToGCRequestGuildEventMembers CMsgClientToGCRequestGuildEventMembersResponse CMsgClientToGCRequestGuildFeedResponse CMsgClientToGCRequestGuildMembership CMsgClientToGCRequestGuildMembershipResponse CMsgClientToGCRequestPlayerCoachMatch CMsgClientToGCRequestPlayerCoachMatchResponse CMsgClientToGCRequestPlayerCoachMatches CMsgClientToGCRequestPlayerCoachMatchesResponse CMsgClientToGCRequestPlayerHeroRecentAccomplishments CMsgClientToGCRequestPlayerHeroRecentAccomplishmentsResponse CMsgClientToGCRequestPlayerRecentAccomplishments CMsgClientToGCRequestPlayerRecentAccomplishmentsResponse CMsgClientToGCRequestPlusWeeklyChallengeResult CMsgClientToGCRequestPlusWeeklyChallengeResultResponse CMsgClientToGCRequestPrivateCoachingSession CMsgClientToGCRequestPrivateCoachingSessionResponse CMsgClientToGCRequestReporterUpdates CMsgClientToGCRequestReporterUpdatesResponse CMsgClientToGCRequestReporterUpdatesResponse_ReporterUpdate CMsgClientToGCRequestSlarkGameResult CMsgClientToGCRequestSlarkGameResultResponse CMsgClientToGCRequestSteamDatagramTicket CMsgClientToGCRequestSteamDatagramTicketResponse CMsgClientToGCRerollPlayerChallenge CMsgClientToGCRespondToCoachFriendRequest CMsgClientToGCRespondToCoachFriendRequestResponse CMsgClientToGCRoadToTIDevForceQuest CMsgClientToGCRoadToTIGetActiveQuest CMsgClientToGCRoadToTIGetActiveQuestResponse CMsgClientToGCRoadToTIGetQuests CMsgClientToGCRoadToTIGetQuestsResponse ``` -------------------------------- ### Subscribe to SOCache Type Changes in Go Source: https://github.com/paralin/go-dota2/blob/master/README.md This snippet demonstrates how to subscribe to updates for a specific object type within the SOCache mechanism, such as 'Lobby'. It illustrates importing necessary protocol and CSO packages, subscribing to an event channel, handling potential errors, ensuring resource cleanup with 'defer eventCancel()', and type-asserting the received object to its concrete protocol type (e.g., CSODOTALobby). This pattern is essential for monitoring changes to common DOTA 2 game objects. ```Go import ( gcmm "github.com/paralin/go-dota2/protocol" "github.com/paralin/go-dota2/cso" ) eventCh, eventCancel, err := dota.GetCache().SubscribeType(cso.Lobby) if err != nil { return err } defer eventCancel() lobbyEvent := <-eventCh lobby := lobbyEvent.Object.(*gcmm.CSODOTALobby) ```