import "steammessages.proto"; import "econ_shared_enums.proto"; import "gcsdk_gcmessages.proto"; import "base_gcmessages.proto"; enum EGCItemMsg { k_EMsgGCBase = 1000; k_EMsgGCSetItemPosition = 1001; k_EMsgClientToGCPackBundle = 1002; k_EMsgClientToGCPackBundleResponse = 1003; k_EMsgGCDelete = 1004; k_EMsgGCVerifyCacheSubscription = 1005; k_EMsgClientToGCNameItem = 1006; k_EMsgGCPaintItem = 1009; k_EMsgGCPaintItemResponse = 1010; k_EMsgGCNameBaseItem = 1019; k_EMsgGCNameBaseItemResponse = 1020; k_EMsgGCUseItemRequest = 1025; k_EMsgGCUseItemResponse = 1026; k_EMsgGCGiftedItems = 1027; k_EMsgGCUnwrapGiftRequest = 1037; k_EMsgGCUnwrapGiftResponse = 1038; k_EMsgGCSortItems = 1041; k_EMsgGCBackpackSortFinished = 1058; k_EMsgGCAdjustItemEquippedState = 1059; k_EMsgGCItemAcknowledged = 1062; k_EMsgClientToGCNameItemResponse = 1068; k_EMsgGCApplyStrangePart = 1073; k_EMsgGCApplyPennantUpgrade = 1076; k_EMsgGCSetItemPositions = 1077; k_EMsgGCApplyEggEssence = 1078; k_EMsgGCNameEggEssenceResponse = 1079; 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_EMsgClientToGCRemoveItemGifterAttributes = 1109; k_EMsgClientToGCRemoveItemName = 1110; k_EMsgClientToGCRemoveItemDescription = 1111; k_EMsgClientToGCRemoveItemAttributeResponse = 1112; k_EMsgGCDev_NewItemRequest = 2001; k_EMsgGCDev_NewItemRequestResponse = 2002; k_EMsgGCDev_UnlockAllItemStylesRequest = 2003; k_EMsgGCDev_UnlockAllItemStylesResponse = 2004; k_EMsgGCStorePurchaseFinalize = 2504; k_EMsgGCStorePurchaseFinalizeResponse = 2505; k_EMsgGCStorePurchaseCancel = 2506; k_EMsgGCStorePurchaseCancelResponse = 2507; k_EMsgGCStorePurchaseInit = 2510; k_EMsgGCStorePurchaseInitResponse = 2511; k_EMsgGCToGCBannedWordListUpdated = 2515; k_EMsgGCToGCDirtySDOCache = 2516; k_EMsgGCToGCUpdateSQLKeyValue = 2518; k_EMsgGCToGCBroadcastConsoleCommand = 2521; k_EMsgGCServerVersionUpdated = 2522; k_EMsgGCApplyAutograph = 2523; k_EMsgGCToGCWebAPIAccountChanged = 2524; k_EMsgGCClientVersionUpdated = 2528; k_EMsgGCToGCUpdateWelcomeMsg = 2529; 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_EMsgGCToGCCanUseDropRateBonus = 2547; k_EMsgSQLAddDropRateBonus = 2548; k_EMsgGCToGCRefreshSOCache = 2549; k_EMsgGCToGCGrantAccountRolledItems = 2554; k_EMsgGCToGCGrantSelfMadeItemToAccount = 2555; 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_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; k_EMsgGCGetAccountSubscriptionItem = 2595; k_EMsgGCGetAccountSubscriptionItemResponse = 2596; k_EMsgGCToGCBroadcastMessageFromSub = 2598; k_EMsgGCToClientCurrencyPricePoints = 2599; k_EMsgGCToGCAddSubscriptionTime = 2600; k_EMsgGCToGCFlushSteamInventoryCache = 2601; k_EMsgGCRequestCrateEscalationLevel = 2602; k_EMsgGCRequestCrateEscalationLevelResponse = 2603; k_EMsgGCToGCUpdateSubscriptionItems = 2604; k_EMsgGCToGCSelfPing = 2605; k_EMsgGCToGCGetInfuxIntervalStats = 2606; k_EMsgGCToGCGetInfuxIntervalStatsResponse = 2607; k_EMsgGCToGCPurchaseSucceeded = 2608; k_EMsgClientToGCGetLimitedItemPurchaseQuantity = 2609; k_EMsgClientToGCGetLimitedItemPurchaseQuantityResponse = 2610; k_EMsgGCToGCBetaDeleteItems = 2611; } 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; k_EGCMsgInitiateTradeResponse_WalledFundsNotTrusted = 24; } 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 [default = 255]; } 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; optional bool turbo_mode = 3; } 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; optional bool is_online = 2; } 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 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; repeated uint32 peek_item_defs = 3; repeated .CSOEconItem peek_items = 4; } message CMsgRequestCrateEscalationLevel { optional uint32 crate_item_def = 1; } message CMsgRequestCrateEscalationLevelResponse { enum EResult { k_Succeeded = 0; k_Failed = 1; } optional uint32 response = 1; optional uint32 escalation_level0 = 2; optional uint32 escalation_level1 = 3; optional uint32 escalation_level2 = 4; optional uint32 escalation_level3 = 5; } 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 CMsgGCToGCAddSubscriptionTime { optional uint32 account_id = 1; repeated uint32 matching_subscription_def_indexes = 2; optional uint32 additional_seconds = 3; } message CMsgGCToGCGrantAccountRolledItems { message Item { message DynamicAttribute { optional string name = 1; optional uint32 value_uint32 = 2; optional float value_float = 3; optional string value_string = 4; } 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 quality = 8; } optional uint32 account_id = 1; repeated .CMsgGCToGCGrantAccountRolledItems.Item items = 2; optional uint32 audit_action = 3; optional uint64 audit_data = 4; } message CMsgGCToGCBetaDeleteItems { optional uint32 account_id = 1; repeated uint64 item_ids = 2; repeated uint32 item_defs = 3; } 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 CGCStoreRechargeRedirect_LineItem { optional uint32 item_def_id = 1; optional uint32 quantity = 2; } message CMsgGCEconSQLWorkItemEmbeddedRollbackData { optional uint32 account_id = 1; optional uint64 deleted_item_id = 2; optional uint32 old_audit_action = 3; optional uint32 new_audit_action = 4; optional uint32 expected_audit_action = 5; } 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; optional uint32 item_quality = 7; } message CMsgDevNewItemRequestResponse { optional bool success = 1; } message CMsgDevUnlockAllItemStyles { optional uint64 item_id = 1; } message CMsgDevUnlockAllItemStylesResponse { optional bool success = 1; } message CMsgGCGetAccountSubscriptionItem { optional uint32 account_id = 1; } message CMsgGCGetAccountSubscriptionItemResponse { optional uint32 def_index = 1; } message CMsgGCAddGiftItem { optional uint32 gifter_account_id = 1; optional uint32 receiver_account_id = 2; optional .CSOEconItem wrapped_item = 3; optional string gift_message = 4; optional bool is_wallet_cash_trusted = 5; } 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]; repeated uint32 unpacked_item_def_indexes = 3; } message CMsgClientToGCPackBundle { repeated uint64 item_ids = 1; optional uint32 bundle_item_def_index = 2; } message CMsgClientToGCPackBundleResponse { enum EPackBundle { k_PackBundle_Succeeded = 0; k_PackBundle_Failed_InternalError = 1; k_PackBundle_Failed_ItemIsNotBundle = 2; k_PackBundle_Failed_SOCacheError = 3; k_PackBundle_Failed_ItemIsInvalid = 4; k_PackBundle_Failed_BadItemQuantity = 5; k_PackBundle_Failed_UnableToDeleteItem = 6; k_PackBundle_Failed_BundleCannotBePacked = 7; k_PackBundle_Failed_ItemIsUntradeable = 8; k_PackBundle_Failed_ItemIsEquipped = 9; k_PackBundle_Failed_ItemHasGems = 10; k_PackBundle_Failed_ItemMixedQuality = 11; k_PackBundle_Failed_ItemInvalidQuality = 12; k_PackBundle_Failed_ItemIsNonEconomy = 13; k_PackBundle_Failed_Disabled = 14; } optional uint64 item_id = 1; optional .CMsgClientToGCPackBundleResponse.EPackBundle response = 2 [default = k_PackBundle_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 [default = 255]; } 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 [default = 255]; 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 [default = 255]; optional uint32 style_prereq = 4 [default = 255]; } 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; optional uint32 associated_item_def = 10; } 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_Strange_DESERIALIZE_FROM_STRING_ONLY { optional .CProtoItemSocket socket = 1; optional uint32 strange_type = 2; optional uint32 strange_value = 3; optional uint32 ability_effect = 4; } 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 CWorkshop_GetPackageDailyRevenue_Request { optional uint32 packageid = 1; optional uint32 date_start = 2; optional uint32 date_end = 3; } message CWorkshop_GetPackageDailyRevenue_Response { message CountryDailyRevenue { optional string country_code = 1; optional uint32 date = 2; optional int64 revenue_usd = 3; optional int32 units = 4; } repeated .CWorkshop_GetPackageDailyRevenue_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 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; eResponse_MissingEvent = 5; } 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; optional uint32 partner = 3; } message CMsgGCToGCStoreProcessCDKeyTransactionResponse { optional bool success = 1; } message CMsgGCToGCStoreProcessSettlement { optional .CMsgProcessTransactionOrder order = 1; } message CMsgGCToGCStoreProcessSettlementResponse { optional bool success = 1; } message CMsgGCToGCBroadcastConsoleCommand { optional string con_command = 1; optional bool report_output = 2; optional int32 sending_gc = 3 [default = -1]; optional string output_initiator = 4; } message CMsgGCToGCConsoleOutput { message OutputLine { optional string text = 1; optional uint32 spew_level = 2; } optional string initiator = 1; optional int32 sending_gc = 2 [default = -1]; repeated .CMsgGCToGCConsoleOutput.OutputLine msgs = 3; optional bool is_last_for_source_job = 4; } 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 int32 sending_gc = 1 [default = -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; optional uint32 what_changed = 5; } message CMsgGCToGCBroadcastMessageFromSub { optional uint32 msg_id = 1; optional bytes serialized_msg = 2; repeated uint32 account_id_list = 3 [packed = true]; repeated fixed64 steam_id_list = 4 [packed = true]; } message CMsgGCToClientCurrencyPricePoints { message Currency { optional uint32 currency_id = 1; repeated uint64 currency_price = 2 [packed = true]; } repeated uint64 price_key = 1 [packed = true]; repeated .CMsgGCToClientCurrencyPricePoints.Currency currencies = 2; } message CMsgBannedWordList { optional uint32 version = 1; repeated string banned_words = 2; } message CMsgGCToGCFlushSteamInventoryCache { message Key { optional uint64 steamid = 1; optional uint64 contextid = 2; } repeated .CMsgGCToGCFlushSteamInventoryCache.Key keys = 1; } message CMsgGCToGCUpdateSubscriptionItems { optional uint32 account_id = 1; optional bool always_notify = 2; } message CMsgGCToGCSelfPing { optional uint32 sample_id = 1; } message CMsgGCToGCGetInfuxIntervalStats { } message CMsgGCToGCGetInfuxIntervalStatsResponse { repeated fixed32 stat_ids = 1 [packed = true]; repeated uint64 stat_total = 2 [packed = true]; repeated uint32 stat_samples = 3 [packed = true]; repeated uint32 stat_max = 4 [packed = true]; optional uint32 sample_duration_ms = 5; } message CMsgGCToGCPurchaseSucceeded { } message CMsgClientToGCGetLimitedItemPurchaseQuantity { optional uint32 item_def = 1; } message CMsgClientToGCGetLimitedItemPurchaseQuantityResponse { enum EResponse { k_eInternalError = 0; k_eSuccess = 1; k_eTooBusy = 2; k_eDisabled = 3; k_eTimeout = 4; k_eInvalidItemDef = 5; k_eItemDefNotLimited = 6; } optional .CMsgClientToGCGetLimitedItemPurchaseQuantityResponse.EResponse result = 1 [default = k_eInternalError]; optional uint32 quantity_purchased = 2; } message CMsgGCToGCUpdateWelcomeMsg { optional bool server = 1; optional .CExtraMsgBlock new_msg = 2; optional bool broadcast = 3; }