import "steammessages.proto";

option optimize_for = SPEED;
option cc_generic_services = false;

enum EGCItemMsg {
	k_EMsgGCBase = 1000;
	k_EMsgGCSetSingleItemPosition = 1001;
	k_EMsgGCCraft = 1002;
	k_EMsgGCCraftResponse = 1003;
	k_EMsgGCDelete = 1004;
	k_EMsgGCVerifyCacheSubscription = 1005;
	k_EMsgGCNameItem = 1006;
	k_EMsgGCUnlockCrate = 1007;
	k_EMsgGCUnlockCrateResponse = 1008;
	k_EMsgGCPaintItem = 1009;
	k_EMsgGCPaintItemResponse = 1010;
	k_EMsgGCGoldenWrenchBroadcast = 1011;
	k_EMsgGCMOTDRequest = 1012;
	k_EMsgGCMOTDRequestResponse = 1013;
	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_EMsgGCRespawnPostLoadoutChange = 1029;
	k_EMsgGCRemoveItemName = 1030;
	k_EMsgGCRemoveItemPaint = 1031;
	k_EMsgGCGiftWrapItem = 1032;
	k_EMsgGCGiftWrapItemResponse = 1033;
	k_EMsgGCDeliverGift = 1034;
	k_EMsgGCDeliverGiftResponseReceiver = 1036;
	k_EMsgGCUnwrapGiftRequest = 1037;
	k_EMsgGCUnwrapGiftResponse = 1038;
	k_EMsgGCSetItemStyle = 1039;
	k_EMsgGCUsedClaimCodeItem = 1040;
	k_EMsgGCSortItems = 1041;
	k_EMsgGC_RevolvingLootList_DEPRECATED = 1042;
	k_EMsgGCLookupAccount = 1043;
	k_EMsgGCLookupAccountResponse = 1044;
	k_EMsgGCLookupAccountName = 1045;
	k_EMsgGCLookupAccountNameResponse = 1046;
	k_EMsgGCUpdateItemSchema = 1049;
	k_EMsgGCRequestInventoryRefresh = 1050;
	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_EMsgGC_ReportAbuse = 1065;
	k_EMsgGC_ReportAbuseResponse = 1066;
	k_EMsgGCPresets_SelectPresetForClassReply = 1067;
	k_EMsgGCNameItemNotification = 1068;
	k_EMsgGCClientDisplayNotification = 1069;
	k_EMsgGCApplyStrangePart = 1070;
	k_EMsgGC_IncrementKillCountAttribute = 1071;
	k_EMsgGC_IncrementKillCountResponse = 1072;
	k_EMsgGCRemoveStrangePart = 1073;
	k_EMsgGCResetStrangeScores = 1074;
	k_EMsgGCGiftedItems = 1075;
	k_EMsgGCApplyUpgradeCard = 1077;
	k_EMsgGCRemoveUpgradeCard = 1078;
	k_EMsgGCApplyStrangeRestriction = 1079;
	k_EMsgGCClientRequestMarketData = 1080;
	k_EMsgGCClientRequestMarketDataResponse = 1081;
	k_EMsgGCApplyXifier = 1082;
	k_EMsgGCApplyXifierResponse = 1083;
	k_EMsgGC_TrackUniquePlayerPairEvent = 1084;
	k_EMsgGCFulfillDynamicRecipeComponent = 1085;
	k_EMsgGCFulfillDynamicRecipeComponentResponse = 1086;
	k_EMsgGCSetItemEffectVerticalOffset = 1087;
	k_EMsgGCSetHatEffectUseHeadOrigin = 1088;
	k_EMsgGCItemEaterRecharger = 1089;
	k_EMsgGCItemEaterRechargerResponse = 1090;
	k_EMsgGCApplyBaseItemXifier = 1091;
	k_EMsgGCApplyClassTransmogrifier = 1092;
	k_EMsgGCApplyHalloweenSpellbookPage = 1093;
	k_EMsgGCRemoveKillStreak = 1094;
	k_EMsgGCRemoveKillStreakResponse = 1095;
	k_EMsgGCTFSpecificItemBroadcast = 1096;
	k_EMsgGC_IncrementKillCountAttribute_Multiple = 1097;
	k_EMsgGCDeliverGiftResponseGiver = 1098;
	k_EMsgGCSetItemPositions = 1100;
	k_EMsgGCLookupMultipleAccountNames = 1101;
	k_EMsgGCLookupMultipleAccountNamesResponse = 1102;
	k_EMsgGCTradingBase = 1500;
	k_EMsgGCTrading_InitiateTradeRequest = 1501;
	k_EMsgGCTrading_InitiateTradeResponse = 1502;
	k_EMsgGCTrading_StartSession = 1503;
	k_EMsgGCTrading_SessionClosed = 1509;
	k_EMsgGCTrading_CancelSession = 1510;
	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 = 1708;
	k_EMsgGCDev_NewItemRequest = 2001;
	k_EMsgGCDev_NewItemRequestResponse = 2002;
	k_EMsgGCDev_DebugRollLootRequest = 2003;
	k_EMsgGCStoreGetUserData = 2500;
	k_EMsgGCStoreGetUserDataResponse = 2501;
	k_EMsgGCStorePurchaseInit_DEPRECATED = 2502;
	k_EMsgGCStorePurchaseInitResponse_DEPRECATED = 2503;
	k_EMsgGCStorePurchaseFinalize = 2512;
	k_EMsgGCStorePurchaseFinalizeResponse = 2513;
	k_EMsgGCStorePurchaseCancel = 2514;
	k_EMsgGCStorePurchaseCancelResponse = 2515;
	k_EMsgGCStorePurchaseQueryTxn = 2508;
	k_EMsgGCStorePurchaseQueryTxnResponse = 2509;
	k_EMsgGCStorePurchaseInit = 2510;
	k_EMsgGCStorePurchaseInitResponse = 2511;
	k_EMsgGCToGCDirtySDOCache = 2516;
	k_EMsgGCToGCDirtyMultipleSDOCache = 2517;
	k_EMsgGCToGCUpdateSQLKeyValue = 2518;
	k_EMsgGCToGCBroadcastConsoleCommand = 2521;
	k_EMsgGCServerVersionUpdated = 2522;
	k_EMsgGCApplyAutograph = 2523;
	k_EMsgGCToGCWebAPIAccountChanged = 2524;
	k_EMsgGCRequestAnnouncements = 2525;
	k_EMsgGCRequestAnnouncementsResponse = 2526;
	k_EMsgGCRequestPassportItemGrant = 2527;
	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_EMsgGCToGCGrantSelfMadeItemToAccount = 2555;
	k_EMsgGCToGCThankedByNewUser = 2556;
	k_EMsgGCShuffleCrateContents = 2557;
	k_EMsgGCQuestObjective_Progress = 2558;
	k_EMsgGCQuestCompleted = 2559;
	k_EMsgGCApplyDuckToken = 2560;
	k_EMsgGCQuestObjective_PointsChange = 2562;
	k_EMsgGCQuestObjective_RequestLoanerItems = 2564;
	k_EMsgGCQuestObjective_RequestLoanerResponse = 2565;
	k_EMsgGCApplyStrangeCountTransfer = 2566;
	k_EMsgGCCraftCollectionUpgrade = 2567;
	k_EMsgGCCraftHalloweenOffering = 2568;
	k_EMsgGCQuestDiscard_Request = 2569;
	k_EMsgGCRemoveGiftedBy = 2570;
	k_EMsgGCRemoveGiftedByResponse = 2571;
	k_EMsgGCRemoveFestivizer = 2572;
	k_EMsgGCRemoveFestivizerResponse = 2573;
	k_EMsgGCCraftCommonStatClock = 2574;
}

enum EGCMsgResponse {
	k_EGCMsgResponseOK = 0;
	k_EGCMsgResponseDenied = 1;
	k_EGCMsgResponseServerError = 2;
	k_EGCMsgResponseTimeout = 3;
	k_EGCMsgResponseInvalid = 4;
	k_EGCMsgResponseNoMatch = 5;
	k_EGCMsgResponseUnknownError = 6;
	k_EGCMsgResponseNotLoggedOn = 7;
	k_EGCMsgFailedToCreate = 8;
}

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;
}

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;
}

message CMsgApplyAutograph {
	optional uint64 autograph_item_id = 1;
	optional uint64 item_item_id = 2;
}

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;
}

message CMsgRequestItemPurgatory_RefundPurchase {
	optional uint64 item_id = 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 CMsgGCToGCGrantSelfMadeItemToAccount {
	optional uint32 item_def_index = 1;
	optional uint32 accountid = 2;
}

message CMsgGCToGCThankedByNewUser {
	optional uint32 new_user_accountid = 1;
	optional uint32 thanked_user_accountid = 2;
}

message CMsgGCShuffleCrateContents {
	optional uint64 crate_item_id = 1;
	optional string user_code_string = 2;
}

message CMsgGCQuestObjective_Progress {
	optional uint64 quest_id = 1;
	optional uint32 quest_attrib_index = 2;
	optional uint32 delta = 3;
	optional fixed64 owner_steamid = 4;
}

message CMsgGCQuestObjective_PointsChange {
	optional uint64 quest_id = 1;
	optional fixed64 owner_steamid = 4;
	optional bool update_base_points = 5 [default = false];
	optional uint32 points_0 = 6;
	optional uint32 points_1 = 7;
	optional uint32 points_2 = 8;
}

message CMsgGCQuestComplete_Request {
	optional uint64 quest_id = 1;
}

message CMsgGCQuestCompleted {
}

message CMsgGCQuestObjective_RequestLoanerItems {
	optional uint64 quest_id = 1;
}

message CMsgGCQuestObjective_RequestLoanerResponse {
}

message CMsgCraftCollectionUpgrade {
	repeated uint64 item_id = 1;
}

message CMsgCraftHalloweenOffering {
	optional uint64 tool_id = 1;
	repeated uint64 item_id = 2;
}

message CMsgCraftCommonStatClock {
	optional uint64 tool_id = 1;
	repeated uint64 item_id = 2;
}

message CMsgGCQuestDiscard_Request {
	optional uint64 quest_id = 1;
}
