package dota; import "steammessages.proto"; import "econ_shared_enums.proto"; option optimize_for = SPEED; option cc_generic_services = false; enum EGCItemMsg { k_EMsgGCBase = 1000; k_EMsgGCSetItemPosition = 1001; k_EMsgGCDelete = 1004; k_EMsgGCVerifyCacheSubscription = 1005; k_EMsgClientToGCNameItem = 1006; k_EMsgGCPaintItem = 1009; k_EMsgGCPaintItemResponse = 1010; k_EMsgGCGoldenWrenchBroadcast = 1011; k_EMsgGCMOTDRequest = 1012; k_EMsgGCMOTDRequestResponse = 1013; k_EMsgGCAddItemToSocket_DEPRECATED = 1014; k_EMsgGCAddItemToSocketResponse_DEPRECATED = 1015; k_EMsgGCAddSocketToBaseItem_DEPRECATED = 1016; k_EMsgGCAddSocketToItem_DEPRECATED = 1017; k_EMsgGCAddSocketToItemResponse_DEPRECATED = 1018; k_EMsgGCNameBaseItem = 1019; k_EMsgGCNameBaseItemResponse = 1020; k_EMsgGCRemoveSocketItem_DEPRECATED = 1021; k_EMsgGCRemoveSocketItemResponse_DEPRECATED = 1022; k_EMsgGCCustomizeItemTexture = 1023; k_EMsgGCCustomizeItemTextureResponse = 1024; k_EMsgGCUseItemRequest = 1025; k_EMsgGCUseItemResponse = 1026; k_EMsgGCGiftedItems = 1027; k_EMsgGCRemoveItemName = 1030; k_EMsgGCRemoveItemPaint = 1031; k_EMsgGCUnwrapGiftRequest = 1037; k_EMsgGCUnwrapGiftResponse = 1038; k_EMsgGCSetItemStyle_DEPRECATED = 1039; k_EMsgGCUsedClaimCodeItem = 1040; k_EMsgGCSortItems = 1041; k_EMsgGC_RevolvingLootList_DEPRECATED = 1042; k_EMsgGCUpdateItemSchema = 1049; k_EMsgGCRemoveCustomTexture = 1051; k_EMsgGCRemoveCustomTextureResponse = 1052; k_EMsgGCRemoveMakersMark = 1053; k_EMsgGCRemoveMakersMarkResponse = 1054; k_EMsgGCRemoveUniqueCraftIndex = 1055; k_EMsgGCRemoveUniqueCraftIndexResponse = 1056; k_EMsgGCSaxxyBroadcast = 1057; k_EMsgGCBackpackSortFinished = 1058; k_EMsgGCAdjustItemEquippedState = 1059; k_EMsgGCCollectItem = 1061; k_EMsgGCItemAcknowledged = 1062; k_EMsgGCPresets_SelectPresetForClass = 1063; k_EMsgGCPresets_SetItemPosition = 1064; k_EMsgGCPresets_SelectPresetForClassReply = 1067; k_EMsgClientToGCNameItemResponse = 1068; k_EMsgGCApplyConsumableEffects = 1069; k_EMsgGCConsumableExhausted = 1070; k_EMsgGCShowItemsPickedUp = 1071; k_EMsgGCClientDisplayNotification = 1072; k_EMsgGCApplyStrangePart = 1073; k_EMsgGC_IncrementKillCountResponse = 1075; k_EMsgGCApplyPennantUpgrade = 1076; k_EMsgGCSetItemPositions = 1077; k_EMsgGCSetItemPositions_RateLimited = 1096; k_EMsgGCApplyEggEssence = 1078; k_EMsgGCNameEggEssenceResponse = 1079; k_EMsgGCFulfillDynamicRecipeComponent = 1082; k_EMsgGCFulfillDynamicRecipeComponentResponse = 1083; k_EMsgGCClientRequestMarketData = 1084; k_EMsgGCClientRequestMarketDataResponse = 1085; k_EMsgGCExtractGems = 1086; k_EMsgGCAddSocket = 1087; k_EMsgGCAddItemToSocket = 1088; k_EMsgGCAddItemToSocketResponse = 1089; k_EMsgGCAddSocketResponse = 1090; k_EMsgGCResetStrangeGemCount = 1091; k_EMsgGCRequestCrateItems = 1092; k_EMsgGCRequestCrateItemsResponse = 1093; k_EMsgGCExtractGemsResponse = 1094; k_EMsgGCResetStrangeGemCountResponse = 1095; k_EMsgGCServerUseItemRequest = 1103; k_EMsgGCAddGiftItem = 1104; k_EMsgGCRemoveItemGiftMessage = 1105; k_EMsgGCRemoveItemGiftMessageResponse = 1106; k_EMsgGCRemoveItemGifterAccountId = 1107; k_EMsgGCRemoveItemGifterAccountIdResponse = 1108; k_EMsgClientToGCRemoveItemGifterAttributes = 1109; k_EMsgClientToGCRemoveItemName = 1110; k_EMsgClientToGCRemoveItemDescription = 1111; k_EMsgClientToGCRemoveItemAttributeResponse = 1112; k_EMsgGCTradingBase = 1500; k_EMsgGCTrading_InitiateTradeRequest = 1501; k_EMsgGCTrading_InitiateTradeResponse = 1502; k_EMsgGCTrading_StartSession = 1503; k_EMsgGCTrading_SessionClosed = 1509; k_EMsgGCTrading_InitiateTradeRequestResponse = 1514; k_EMsgGCServerBrowser_FavoriteServer = 1601; k_EMsgGCServerBrowser_BlacklistServer = 1602; k_EMsgGCServerRentalsBase = 1700; k_EMsgGCItemPreviewCheckStatus = 1701; k_EMsgGCItemPreviewStatusResponse = 1702; k_EMsgGCItemPreviewRequest = 1703; k_EMsgGCItemPreviewRequestResponse = 1704; k_EMsgGCItemPreviewExpire = 1705; k_EMsgGCItemPreviewExpireNotification = 1706; k_EMsgGCItemPreviewItemBoughtNotification = 1707; k_EMsgGCDev_NewItemRequest = 2001; k_EMsgGCDev_NewItemRequestResponse = 2002; k_EMsgGCStoreGetUserData = 2500; k_EMsgGCStoreGetUserDataResponse = 2501; k_EMsgGCStorePurchaseFinalize = 2504; k_EMsgGCStorePurchaseFinalizeResponse = 2505; k_EMsgGCStorePurchaseCancel = 2506; k_EMsgGCStorePurchaseCancelResponse = 2507; k_EMsgGCStorePurchaseInit = 2510; k_EMsgGCStorePurchaseInitResponse = 2511; k_EMsgGCBannedWordListRequest = 2512; k_EMsgGCBannedWordListResponse = 2513; k_EMsgGCToGCBannedWordListBroadcast = 2514; k_EMsgGCToGCBannedWordListUpdated = 2515; k_EMsgGCToGCDirtySDOCache = 2516; k_EMsgGCToGCDirtyMultipleSDOCache = 2517; k_EMsgGCToGCUpdateSQLKeyValue = 2518; k_EMsgGCToGCBroadcastConsoleCommand = 2521; k_EMsgGCServerVersionUpdated = 2522; k_EMsgGCApplyAutograph = 2523; k_EMsgGCToGCWebAPIAccountChanged = 2524; k_EMsgGCClientVersionUpdated = 2528; k_EMsgGCItemPurgatory_FinalizePurchase = 2531; k_EMsgGCItemPurgatory_FinalizePurchaseResponse = 2532; k_EMsgGCItemPurgatory_RefundPurchase = 2533; k_EMsgGCItemPurgatory_RefundPurchaseResponse = 2534; k_EMsgGCToGCPlayerStrangeCountAdjustments = 2535; k_EMsgGCRequestStoreSalesData = 2536; k_EMsgGCRequestStoreSalesDataResponse = 2537; k_EMsgGCRequestStoreSalesDataUpToDateResponse = 2538; k_EMsgGCToGCPingRequest = 2539; k_EMsgGCToGCPingResponse = 2540; k_EMsgGCToGCGetUserSessionServer = 2541; k_EMsgGCToGCGetUserSessionServerResponse = 2542; k_EMsgGCToGCGetUserServerMembers = 2543; k_EMsgGCToGCGetUserServerMembersResponse = 2544; k_EMsgGCToGCGetUserPCBangNo = 2545; k_EMsgGCToGCGetUserPCBangNoResponse = 2546; k_EMsgGCToGCCanUseDropRateBonus = 2547; k_EMsgSQLAddDropRateBonus = 2548; k_EMsgGCToGCRefreshSOCache = 2549; k_EMsgGCToGCApplyLocalizationDiff = 2550; k_EMsgGCToGCApplyLocalizationDiffResponse = 2551; k_EMsgGCToGCCheckAccountTradeStatus = 2552; k_EMsgGCToGCCheckAccountTradeStatusResponse = 2553; k_EMsgGCToGCGrantAccountRolledItems = 2554; k_EMsgGCToGCGrantSelfMadeItemToAccount = 2555; k_EMsgGCPartnerBalanceRequest = 2557; k_EMsgGCPartnerBalanceResponse = 2558; k_EMsgGCPartnerRechargeRedirectURLRequest = 2559; k_EMsgGCPartnerRechargeRedirectURLResponse = 2560; k_EMsgGCStatueCraft = 2561; k_EMsgGCRedeemCode = 2562; k_EMsgGCRedeemCodeResponse = 2563; k_EMsgGCToGCItemConsumptionRollback = 2564; k_EMsgClientToGCWrapAndDeliverGift = 2565; k_EMsgClientToGCWrapAndDeliverGiftResponse = 2566; k_EMsgClientToGCUnpackBundleResponse = 2567; k_EMsgGCToClientStoreTransactionCompleted = 2568; k_EMsgClientToGCEquipItems = 2569; k_EMsgClientToGCEquipItemsResponse = 2570; k_EMsgClientToGCUnlockItemStyle = 2571; k_EMsgClientToGCUnlockItemStyleResponse = 2572; k_EMsgClientToGCSetItemInventoryCategory = 2573; k_EMsgClientToGCUnlockCrate = 2574; k_EMsgClientToGCUnlockCrateResponse = 2575; k_EMsgClientToGCUnpackBundle = 2576; k_EMsgClientToGCSetItemStyle = 2577; k_EMsgClientToGCSetItemStyleResponse = 2578; k_EMsgSQLGCToGCGrantBackpackSlots = 2580; k_EMsgClientToGCLookupAccountName = 2581; k_EMsgClientToGCLookupAccountNameResponse = 2582; k_EMsgGCToGCDevRevokeUserItems = 2583; k_EMsgClientToGCCreateStaticRecipe = 2584; k_EMsgClientToGCCreateStaticRecipeResponse = 2585; k_EMsgGCToGCStoreProcessCDKeyTransaction = 2586; k_EMsgGCToGCStoreProcessCDKeyTransactionResponse = 2587; k_EMsgGCToGCStoreProcessSettlement = 2588; k_EMsgGCToGCStoreProcessSettlementResponse = 2589; k_EMsgGCToGCConsoleOutput = 2590; k_EMsgGCToClientItemAges = 2591; k_EMsgGCToGCInternalTestMsg = 2592; k_EMsgGCToGCClientServerVersionsUpdated = 2593; k_EMsgGCUseMultipleItemsRequest = 2594; } enum EItemPurgatoryResponse_Finalize { k_ItemPurgatoryResponse_Finalize_Succeeded = 0; k_ItemPurgatoryResponse_Finalize_Failed_Incomplete = 1; k_ItemPurgatoryResponse_Finalize_Failed_ItemsNotInPurgatory = 2; k_ItemPurgatoryResponse_Finalize_Failed_CouldNotFindItems = 3; k_ItemPurgatoryResponse_Finalize_Failed_NoSOCache = 4; k_ItemPurgatoryResponse_Finalize_BackpackFull = 5; } enum EItemPurgatoryResponse_Refund { k_ItemPurgatoryResponse_Refund_Succeeded = 0; k_ItemPurgatoryResponse_Refund_Failed_ItemNotInPurgatory = 1; k_ItemPurgatoryResponse_Refund_Failed_CouldNotFindItem = 2; k_ItemPurgatoryResponse_Refund_Failed_NoSOCache = 3; k_ItemPurgatoryResponse_Refund_Failed_NoDetail = 4; k_ItemPurgatoryResponse_Refund_Failed_NexonWebAPI = 5; } enum EGCMsgInitiateTradeResponse { k_EGCMsgInitiateTradeResponse_Accepted = 0; k_EGCMsgInitiateTradeResponse_Declined = 1; k_EGCMsgInitiateTradeResponse_VAC_Banned_Initiator = 2; k_EGCMsgInitiateTradeResponse_VAC_Banned_Target = 3; k_EGCMsgInitiateTradeResponse_Target_Already_Trading = 4; k_EGCMsgInitiateTradeResponse_Disabled = 5; k_EGCMsgInitiateTradeResponse_NotLoggedIn = 6; k_EGCMsgInitiateTradeResponse_Cancel = 7; k_EGCMsgInitiateTradeResponse_TooSoon = 8; k_EGCMsgInitiateTradeResponse_TooSoonPenalty = 9; k_EGCMsgInitiateTradeResponse_Trade_Banned_Initiator = 10; k_EGCMsgInitiateTradeResponse_Trade_Banned_Target = 11; k_EGCMsgInitiateTradeResponse_Free_Account_Initiator_DEPRECATED = 12; k_EGCMsgInitiateTradeResponse_Shared_Account_Initiator = 13; k_EGCMsgInitiateTradeResponse_Service_Unavailable = 14; k_EGCMsgInitiateTradeResponse_Target_Blocked = 15; k_EGCMsgInitiateTradeResponse_NeedVerifiedEmail = 16; k_EGCMsgInitiateTradeResponse_NeedSteamGuard = 17; k_EGCMsgInitiateTradeResponse_SteamGuardDuration = 18; k_EGCMsgInitiateTradeResponse_TheyCannotTrade = 19; k_EGCMsgInitiateTradeResponse_Recent_Password_Reset = 20; k_EGCMsgInitiateTradeResponse_Using_New_Device = 21; k_EGCMsgInitiateTradeResponse_Sent_Invalid_Cookie = 22; k_EGCMsgInitiateTradeResponse_TooRecentFriend = 23; } message CMsgApplyAutograph { optional uint64 autograph_item_id = 1; optional uint64 item_item_id = 2; } message CMsgAdjustItemEquippedState { optional uint64 item_id = 1; optional uint32 new_class = 2; optional uint32 new_slot = 3; optional uint32 style_index = 4; } message CMsgEconPlayerStrangeCountAdjustment { message CStrangeCountAdjustment { optional uint32 event_type = 1; optional uint64 item_id = 2; optional uint32 adjustment = 3; } optional uint32 account_id = 1; repeated CMsgEconPlayerStrangeCountAdjustment.CStrangeCountAdjustment strange_count_adjustments = 2; } message CMsgRequestItemPurgatory_FinalizePurchase { repeated uint64 item_ids = 1; } message CMsgRequestItemPurgatory_FinalizePurchaseResponse { optional uint32 result = 1; repeated uint64 item_ids = 2; } message CMsgRequestItemPurgatory_RefundPurchase { repeated uint64 item_ids = 1; } message CMsgRequestItemPurgatory_RefundPurchaseResponse { optional uint32 result = 1; } message CMsgCraftingResponse { repeated uint64 item_ids = 1; } message CMsgGCRequestStoreSalesData { optional uint32 version = 1; optional uint32 currency = 2; } message CMsgGCRequestStoreSalesDataResponse { message Price { optional uint32 item_def = 1; optional uint32 price = 2; } repeated CMsgGCRequestStoreSalesDataResponse.Price sale_price = 1; optional uint32 version = 2; optional uint32 expiration_time = 3; } message CMsgGCRequestStoreSalesDataUpToDateResponse { optional uint32 version = 1; optional uint32 expiration_time = 2; } message CMsgGCToGCPingRequest { } message CMsgGCToGCPingResponse { } message CMsgGCToGCGetUserSessionServer { optional uint32 account_id = 1; } message CMsgGCToGCGetUserSessionServerResponse { optional fixed64 server_steam_id = 1; } message CMsgGCToGCGetUserServerMembers { optional uint32 account_id = 1; optional uint32 max_spectators = 2; } message CMsgGCToGCGetUserServerMembersResponse { repeated uint32 member_account_id = 1; } message CMsgLookupMultipleAccountNames { repeated uint32 accountids = 1 [packed = true]; } message CMsgLookupMultipleAccountNamesResponse { message Account { optional uint32 accountid = 1; optional string persona = 2; } repeated CMsgLookupMultipleAccountNamesResponse.Account accounts = 1; } message CMsgGCToGCGetUserPCBangNo { optional uint32 account_id = 1; } message CMsgGCToGCGetUserPCBangNoResponse { optional uint32 pc_bang_no = 1; } message CMsgRequestCrateItems { optional uint32 crate_item_def = 1; } message CMsgRequestCrateItemsResponse { enum EResult { k_Succeeded = 0; k_Failed = 1; } optional uint32 response = 1; repeated uint32 item_defs = 2; optional uint32 peek_item_def = 3; } message CMsgGCToGCCanUseDropRateBonus { optional uint32 account_id = 1; optional float drop_rate_bonus = 2; optional uint32 booster_type = 3; optional uint32 exclusive_item_def = 4; optional bool allow_equal_rate = 5; } message CMsgSQLAddDropRateBonus { optional uint32 account_id = 1; optional uint64 item_id = 2; optional uint32 item_def = 3; optional float drop_rate_bonus = 4; optional uint32 booster_type = 5; optional uint32 seconds_duration = 6; optional uint32 end_time_stamp = 7; } message CMsgSQLUpgradeBattleBooster { optional uint32 account_id = 1; optional uint32 item_def = 2; optional float bonus_to_add = 3; optional uint32 booster_type = 4; } message CMsgGCToGCRefreshSOCache { optional uint32 account_id = 1; optional bool reload = 2; } message CMsgGCToGCCheckAccountTradeStatus { optional uint32 account_id = 1; optional bool initiator = 2; } message CMsgGCToGCCheckAccountTradeStatusResponse { optional bool can_trade = 1; optional uint32 error_code = 2; } message CMsgGCToGCGrantAccountRolledItems { message Item { message DynamicAttribute { optional string name = 1; optional uint32 value_uint32 = 2; optional float value_float = 3; } message AdditionalAuditEntry { optional uint32 owner_account_id = 1; optional uint32 audit_action = 2; optional uint64 audit_data = 3; } optional uint32 item_def = 1; repeated string loot_lists = 2; optional bool ignore_limit = 3; optional uint32 origin = 4; repeated CMsgGCToGCGrantAccountRolledItems.Item.DynamicAttribute dynamic_attributes = 5; repeated CMsgGCToGCGrantAccountRolledItems.Item.AdditionalAuditEntry additional_audit_entries = 6; optional uint32 inventory_token = 7; } optional uint32 account_id = 1; repeated CMsgGCToGCGrantAccountRolledItems.Item items = 2; optional uint32 audit_action = 3; optional uint64 audit_data = 4; } message CMsgGCToGCGrantSelfMadeItemToAccount { optional uint32 item_def_index = 1; optional uint32 accountid = 2; } message CMsgUseItem { optional uint64 item_id = 1; optional fixed64 target_steam_id = 2; repeated uint32 gift__potential_targets = 3; optional uint32 duel__class_lock = 4; optional uint64 initiator_steam_id = 5; optional bool itempack__ack_immediately = 6; } message CMsgServerUseItem { optional uint32 initiator_account_id = 1; optional CMsgUseItem use_item_msg = 2; } message CMsgUseMultipleItems { repeated uint64 item_ids = 1; } message CMsgGCPartnerBalanceRequest { } message CMsgGCPartnerBalanceResponse { optional EGCPartnerRequestResponse result = 1 [default = k_EPartnerRequestOK]; optional uint32 balance = 2; } message CGCStoreRechargeRedirect_LineItem { optional uint32 item_def_id = 1; optional uint32 quantity = 2; } message CMsgGCPartnerRechargeRedirectURLRequest { repeated CGCStoreRechargeRedirect_LineItem line_items = 1; } message CMsgGCPartnerRechargeRedirectURLResponse { optional EGCPartnerRequestResponse result = 1 [default = k_EPartnerRequestOK]; optional string url = 2; } message CMsgGCEconSQLWorkItemEmbeddedRollbackData { optional uint32 account_id = 1; optional uint64 deleted_item_id = 2; } message CMsgCraftStatue { optional uint32 heroid = 1; optional string sequencename = 2; optional float cycle = 3; optional string description = 4; optional uint32 pedestal_itemdef = 5; optional uint64 toolid = 6; } message CMsgRedeemCode { optional string code = 1; } message CMsgRedeemCodeResponse { enum EResultCode { k_Succeeded = 0; k_Failed_CodeNotFound = 1; k_Failed_CodeAlreadyUsed = 2; k_Failed_OtherError = 3; } optional uint32 response = 1; optional uint64 item_id = 2; } message CMsgDevNewItemRequest { optional string item_def_name = 3; optional string loot_list_name = 4; repeated string attr_def_name = 5; repeated string attr_value = 6; } message CMsgDevNewItemRequestResponse { optional bool success = 1; } message CMsgGCAddGiftItem { optional uint32 account_id = 1; optional uint64 item_id = 2; } message CMsgClientToGCWrapAndDeliverGift { optional uint64 item_id = 1; optional uint32 give_to_account_id = 2; optional string gift_message = 3; } message CMsgClientToGCWrapAndDeliverGiftResponse { optional EGCMsgResponse response = 1 [default = k_EGCMsgResponseOK]; optional uint32 gifting_charge_uses = 2; optional int32 gifting_charge_max = 3; optional uint32 gifting_uses = 4; optional int32 gifting_max = 5; optional uint32 gifting_window_hours = 6; optional EGCMsgInitiateTradeResponse trade_restriction = 7 [default = k_EGCMsgInitiateTradeResponse_Accepted]; } message CMsgClientToGCUnwrapGift { optional uint64 item_id = 1; } message CMsgClientToGCGetGiftPermissions { } message CMsgClientToGCGetGiftPermissionsResponse { message FriendPermission { optional uint32 account_id = 1; optional EGCMsgInitiateTradeResponse permission = 2 [default = k_EGCMsgInitiateTradeResponse_Accepted]; } optional bool is_unlimited = 1; optional bool has_two_factor = 3; optional EGCMsgInitiateTradeResponse sender_permission = 6 [default = k_EGCMsgInitiateTradeResponse_Accepted]; optional uint32 friendship_age_requirement = 7; optional uint32 friendship_age_requirement_two_factor = 8; repeated CMsgClientToGCGetGiftPermissionsResponse.FriendPermission friend_permissions = 9; } message CMsgClientToGCUnpackBundle { optional uint64 item_id = 1; } message CMsgClientToGCUnpackBundleResponse { enum EUnpackBundle { k_UnpackBundle_Succeeded = 0; k_UnpackBundle_Failed_ItemIsNotBundle = 1; k_UnpackBundle_Failed_UnableToCreateContainedItem = 2; k_UnpackBundle_Failed_SOCacheError = 3; k_UnpackBundle_Failed_ItemIsInvalid = 4; k_UnpackBundle_Failed_BadItemQuantity = 5; k_UnpackBundle_Failed_UnableToDeleteItem = 6; } repeated uint64 unpacked_item_ids = 1; optional CMsgClientToGCUnpackBundleResponse.EUnpackBundle response = 2 [default = k_UnpackBundle_Succeeded]; } message CMsgGCToClientStoreTransactionCompleted { optional uint64 txn_id = 1; repeated uint64 item_ids = 2; } message CMsgClientToGCEquipItems { repeated CMsgAdjustItemEquippedState equips = 1; } message CMsgClientToGCEquipItemsResponse { optional fixed64 so_cache_version_id = 1; } message CMsgClientToGCSetItemStyle { optional uint64 item_id = 1; optional uint32 style_index = 2; } message CMsgClientToGCSetItemStyleResponse { enum ESetStyle { k_SetStyle_Succeeded = 0; k_SetStyle_Failed = 1; k_SetStyle_Failed_StyleIsLocked = 2; } optional CMsgClientToGCSetItemStyleResponse.ESetStyle response = 1 [default = k_SetStyle_Succeeded]; } message CMsgClientToGCUnlockItemStyle { optional uint64 item_to_unlock = 1; optional uint32 style_index = 2; repeated uint64 consumable_item_ids = 3; } message CMsgClientToGCUnlockItemStyleResponse { enum EUnlockStyle { k_UnlockStyle_Succeeded = 0; k_UnlockStyle_Failed_PreReq = 1; k_UnlockStyle_Failed_CantAfford = 2; k_UnlockStyle_Failed_CantCommit = 3; k_UnlockStyle_Failed_CantLockCache = 4; k_UnlockStyle_Failed_CantAffordAttrib = 5; k_UnlockStyle_Failed_CantAffordGem = 6; k_UnlockStyle_Failed_NoCompendiumLevel = 7; k_UnlockStyle_Failed_AlreadyUnlocked = 8; k_UnlockStyle_Failed_OtherError = 9; k_UnlockStyle_Failed_ItemIsInvalid = 10; k_UnlockStyle_Failed_ToolIsInvalid = 11; } optional CMsgClientToGCUnlockItemStyleResponse.EUnlockStyle response = 1 [default = k_UnlockStyle_Succeeded]; optional uint64 item_id = 2; optional uint32 style_index = 3; optional uint32 style_prereq = 4; } message CMsgClientToGCSetItemInventoryCategory { repeated uint64 item_ids = 1; optional uint32 set_to_value = 2; optional uint32 remove_categories = 3; optional uint32 add_categories = 4; } message CMsgClientToGCUnlockCrate { optional uint64 crate_item_id = 1; optional uint64 key_item_id = 2; } message CMsgClientToGCUnlockCrateResponse { message Item { optional uint64 item_id = 1; optional uint32 def_index = 2; } optional EGCMsgResponse result = 1 [default = k_EGCMsgResponseOK]; repeated CMsgClientToGCUnlockCrateResponse.Item granted_items = 2; } message CMsgClientToGCRemoveItemAttribute { optional uint64 item_id = 1; } message CMsgClientToGCRemoveItemAttributeResponse { enum ERemoveItemAttribute { k_RemoveItemAttribute_Succeeded = 0; k_RemoveItemAttribute_Failed = 1; k_RemoveItemAttribute_Failed_ItemIsInvalid = 2; k_RemoveItemAttribute_Failed_AttributeCannotBeRemoved = 3; k_RemoveItemAttribute_Failed_AttributeDoesntExist = 4; } optional CMsgClientToGCRemoveItemAttributeResponse.ERemoveItemAttribute response = 1 [default = k_RemoveItemAttribute_Succeeded]; optional uint64 item_id = 2; } message CMsgClientToGCNameItem { optional uint64 subject_item_id = 1; optional uint64 tool_item_id = 2; optional string name = 3; } message CMsgClientToGCNameItemResponse { enum ENameItem { k_NameItem_Succeeded = 0; k_NameItem_Failed = 1; k_NameItem_Failed_ToolIsInvalid = 2; k_NameItem_Failed_ItemIsInvalid = 3; k_NameItem_Failed_NameIsInvalid = 4; } optional CMsgClientToGCNameItemResponse.ENameItem response = 1 [default = k_NameItem_Succeeded]; optional uint64 item_id = 2; } message CMsgGCSetItemPosition { optional uint64 item_id = 1; optional uint32 new_position = 2; } message CAttribute_ItemDynamicRecipeComponent { optional uint32 item_def = 1; optional uint32 item_quality = 2; optional uint32 item_flags = 3; optional string attributes_string = 4; optional uint32 item_count = 5; optional uint32 items_fulfilled = 6; optional uint32 item_rarity = 7; optional string lootlist = 8; optional uint64 fulfilled_item_id = 9; } message CProtoItemSocket { optional uint64 item_id = 1; optional uint32 attr_def_index = 2; optional uint32 required_type = 3; optional string required_hero = 4; optional uint32 gem_def_index = 5; optional bool not_tradable = 6; optional string required_item_slot = 7; } message CProtoItemSocket_Empty { optional CProtoItemSocket socket = 1; } message CProtoItemSocket_Effect { optional CProtoItemSocket socket = 1; optional uint32 effect = 2; } message CProtoItemSocket_Color { optional CProtoItemSocket socket = 1; optional uint32 red = 2; optional uint32 green = 3; optional uint32 blue = 4; } message CProtoItemSocket_Strange { optional CProtoItemSocket socket = 1; optional uint32 strange_type = 2; optional uint32 strange_value = 3; } message CProtoItemSocket_Spectator { optional CProtoItemSocket socket = 1; optional uint32 games_viewed = 2; optional uint32 corporation_id = 3; optional uint32 league_id = 4; optional uint32 team_id = 5; } message CProtoItemSocket_AssetModifier { optional CProtoItemSocket socket = 1; optional uint32 asset_modifier = 2; } message CProtoItemSocket_AssetModifier_DESERIALIZE_FROM_STRING_ONLY { optional CProtoItemSocket socket = 1; optional uint32 asset_modifier = 2; optional uint32 anim_modifier = 3; optional uint32 ability_effect = 4; } message CProtoItemSocket_Autograph { optional CProtoItemSocket socket = 1; optional string autograph = 2; optional uint32 autograph_id = 3; optional uint32 autograph_score = 4; } message CProtoItemSocket_StaticVisuals { optional CProtoItemSocket socket = 1; } message CAttribute_String { optional string value = 1; } message CWorkshop_GetItemDailyRevenue_Request { optional uint32 appid = 1; optional uint32 item_id = 2; optional uint32 date_start = 3; optional uint32 date_end = 4; } message CWorkshop_GetItemDailyRevenue_Response { message CountryDailyRevenue { optional string country_code = 1; optional uint32 date = 2; optional int64 revenue_usd = 3; optional int32 units = 4; } repeated CWorkshop_GetItemDailyRevenue_Response.CountryDailyRevenue country_revenue = 1; } message CMsgSQLGCToGCGrantBackpackSlots { optional uint32 account_id = 1; optional uint32 add_slots = 2; } message CMsgClientToGCLookupAccountName { optional uint32 account_id = 1; } message CMsgClientToGCLookupAccountNameResponse { optional uint32 account_id = 1; optional string account_name = 2; } message CMsgGCToGCDevRevokeUserItems { optional uint32 account_id = 1; optional uint64 audit_data = 2; optional bool delete_audit_history = 3; } message CMsgClientToGCCreateStaticRecipe { message Item { optional uint64 item_id = 1; optional uint32 slot_id = 2; } repeated CMsgClientToGCCreateStaticRecipe.Item items = 1; optional uint32 recipe_def_index = 2; } message CMsgClientToGCCreateStaticRecipeResponse { message OutputItem { optional uint32 def_index = 1; optional uint64 item_id = 2; optional uint32 slot_id = 3; } message InputError { optional uint32 slot_id = 1; optional CMsgClientToGCCreateStaticRecipeResponse.EResponse error = 2 [default = eResponse_Success]; } message AdditionalOutput { optional uint32 slot_id = 1; optional uint64 value = 2; } enum EResponse { eResponse_Success = 0; eResponse_OfferingDisabled = 1; eResponse_InvalidItems = 2; eResponse_InternalError = 3; eResponse_MissingLeague = 4; } optional CMsgClientToGCCreateStaticRecipeResponse.EResponse response = 1 [default = eResponse_Success]; repeated CMsgClientToGCCreateStaticRecipeResponse.OutputItem output_items = 2; repeated CMsgClientToGCCreateStaticRecipeResponse.InputError input_errors = 3; repeated CMsgClientToGCCreateStaticRecipeResponse.AdditionalOutput additional_outputs = 4; } message CMsgProcessTransactionOrder { message Item { optional uint32 item_def_index = 1; optional uint32 item_price = 2; optional uint32 quantity = 3; optional string category_desc = 4; optional uint32 store_purchase_type = 5; optional uint64 source_reference_id = 6; optional int32 parent_stack_index = 7; optional bool default_price = 8; optional bool is_user_facing = 9; } optional uint64 txn_id = 1; optional uint64 steam_txn_id = 2; optional uint64 partner_txn_id = 3; optional fixed64 steam_id = 4; optional uint32 time_stamp = 5; optional uint64 watermark = 6; optional int32 purchase_report_status = 7; optional uint32 currency = 8; repeated CMsgProcessTransactionOrder.Item items = 9; } message CMsgGCToGCStoreProcessCDKeyTransaction { optional CMsgProcessTransactionOrder order = 1; optional uint32 reason_code = 2; } message CMsgGCToGCStoreProcessCDKeyTransactionResponse { optional bool success = 1; } message CMsgGCToGCStoreProcessSettlement { optional CMsgProcessTransactionOrder order = 1; optional uint32 partner = 2; } message CMsgGCToGCStoreProcessSettlementResponse { optional bool success = 1; } message CMsgGCToGCBroadcastConsoleCommand { optional string con_command = 1; optional bool report_output = 2; optional uint32 sending_gc = 3; optional string output_initiator = 4; } message CMsgGCToGCConsoleOutput { message OutputLine { optional string text = 1; optional uint32 spew_level = 2; } optional string initiator = 1; optional uint32 sending_gc = 2; repeated CMsgGCToGCConsoleOutput.OutputLine msgs = 3; } message CMsgItemAges { message MaxItemIDTimestamp { optional uint32 timestamp = 1; optional uint64 max_item_id = 2; } repeated CMsgItemAges.MaxItemIDTimestamp max_item_id_timestamps = 1; } message CMsgGCToGCInternalTestMsg { optional uint32 sending_gc = 1; optional fixed64 sender_id = 2; optional uint32 context = 3; optional uint32 message_id = 4; optional bytes message_body = 5; optional fixed64 job_id_source = 6; optional fixed64 job_id_target = 7; } message CMsgGCToGCClientServerVersionsUpdated { optional uint32 client_min_allowed_version = 1; optional uint32 client_active_version = 2; optional uint32 server_active_version = 3; optional uint32 server_deployed_version = 4; }