diff --git a/src/services/serversideVendorsService.ts b/src/services/serversideVendorsService.ts index 1c947197..6205060f 100644 --- a/src/services/serversideVendorsService.ts +++ b/src/services/serversideVendorsService.ts @@ -7,7 +7,6 @@ import { IItemManifest, IVendorInfo, IVendorManifest } from "@/src/types/vendorT import { logger } from "@/src/utils/logger"; import { ExportVendors, IRange, IVendor, IVendorOffer } from "warframe-public-export-plus"; -import ArchimedeanVendorManifest from "@/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json"; import DeimosEntratiFragmentVendorProductsManifest from "@/static/fixed_responses/getVendorInfo/DeimosEntratiFragmentVendorProductsManifest.json"; import DeimosHivemindCommisionsManifestFishmonger from "@/static/fixed_responses/getVendorInfo/DeimosHivemindCommisionsManifestFishmonger.json"; import DeimosHivemindCommisionsManifestPetVendor from "@/static/fixed_responses/getVendorInfo/DeimosHivemindCommisionsManifestPetVendor.json"; @@ -23,11 +22,8 @@ import MaskSalesmanManifest from "@/static/fixed_responses/getVendorInfo/MaskSal import Nova1999ConquestShopManifest from "@/static/fixed_responses/getVendorInfo/Nova1999ConquestShopManifest.json"; import OstronPetVendorManifest from "@/static/fixed_responses/getVendorInfo/OstronPetVendorManifest.json"; import SolarisDebtTokenVendorRepossessionsManifest from "@/static/fixed_responses/getVendorInfo/SolarisDebtTokenVendorRepossessionsManifest.json"; -import Temple1999VendorManifest from "@/static/fixed_responses/getVendorInfo/Temple1999VendorManifest.json"; -import ZarimanCommisionsManifestArchimedean from "@/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json"; const rawVendorManifests: IVendorManifest[] = [ - ArchimedeanVendorManifest, DeimosEntratiFragmentVendorProductsManifest, DeimosHivemindCommisionsManifestFishmonger, DeimosHivemindCommisionsManifestPetVendor, @@ -42,9 +38,7 @@ const rawVendorManifests: IVendorManifest[] = [ MaskSalesmanManifest, Nova1999ConquestShopManifest, OstronPetVendorManifest, - SolarisDebtTokenVendorRepossessionsManifest, - Temple1999VendorManifest, - ZarimanCommisionsManifestArchimedean + SolarisDebtTokenVendorRepossessionsManifest ]; interface IGeneratableVendorInfo extends Omit { @@ -297,31 +291,30 @@ const generateVendorManifest = (vendorInfo: IGeneratableVendorInfo): IVendorMani } // Add counted offers - if (manifest.numItems) { - const useRng = manifest.numItems.minValue != manifest.numItems.maxValue; - const numItemsTarget = - numUncountedOffers + - (useRng - ? rng.randomInt(manifest.numItems.minValue, manifest.numItems.maxValue) - : manifest.numItems.minValue); - let i = 0; - while (info.ItemManifest.length + offersToAdd.length < numItemsTarget) { - const item = useRng ? rng.randomElement(manifest.items)! : manifest.items[i++]; - if ( - !item.alwaysOffered && - remainingItemCapacity[getOfferId(item)] != 0 && - (numOffersThatNeedToMatchABin == 0 || missingItemsPerBin[item.bin]) - ) { - remainingItemCapacity[getOfferId(item)] -= 1; - if (missingItemsPerBin[item.bin]) { - missingItemsPerBin[item.bin] -= 1; - numOffersThatNeedToMatchABin -= 1; - } - offersToAdd.splice(offset, 0, item); - } - if (i == manifest.items.length) { - i = 0; + const useRng = manifest.numItems && manifest.numItems.minValue != manifest.numItems.maxValue; + const numItemsTarget = manifest.numItems + ? numUncountedOffers + + (useRng + ? rng.randomInt(manifest.numItems.minValue, manifest.numItems.maxValue) + : manifest.numItems.minValue) + : manifest.items.length; + let i = 0; + while (info.ItemManifest.length + offersToAdd.length < numItemsTarget) { + const item = useRng ? rng.randomElement(manifest.items)! : manifest.items[i++]; + if ( + !item.alwaysOffered && + remainingItemCapacity[getOfferId(item)] != 0 && + (numOffersThatNeedToMatchABin == 0 || missingItemsPerBin[item.bin]) + ) { + remainingItemCapacity[getOfferId(item)] -= 1; + if (missingItemsPerBin[item.bin]) { + missingItemsPerBin[item.bin] -= 1; + numOffersThatNeedToMatchABin -= 1; } + offersToAdd.splice(offset, 0, item); + } + if (i == manifest.items.length) { + i = 0; } } } else { @@ -465,4 +458,10 @@ if (isDev) { ) { logger.warn(`self test failed for /Lotus/Types/Game/VendorManifests/Hubs/RailjackCrewMemberVendorManifest`); } + + const temple = getVendorManifestByTypeName("/Lotus/Types/Game/VendorManifests/TheHex/Temple1999VendorManifest")! + .VendorInfo.ItemManifest; + if (!temple.find(x => x.StoreItem == "/Lotus/StoreItems/Types/Items/MiscItems/Kuva")) { + logger.warn(`self test failed for /Lotus/Types/Game/VendorManifests/TheHex/Temple1999VendorManifest`); + } } diff --git a/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json b/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json deleted file mode 100644 index df3dc048..00000000 --- a/static/fixed_responses/getVendorInfo/ArchimedeanVendorManifest.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "VendorInfo": { - "_id": { "$oid": "62695b0467e5d379750f9f75" }, - "TypeName": "/Lotus/Types/Game/VendorManifests/Zariman/ArchimedeanVendorManifest", - "ItemManifest": [ - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/VoidPlumeAOrnament", - "ItemPrices": [{ "ItemCount": 1, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "AllowMultipurchase": true, - "Id": { "$oid": "63ed01ef4c37f93d0b797826" } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/VoidPlumeBOrnament", - "ItemPrices": [{ "ItemCount": 1, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "AllowMultipurchase": true, - "Id": { "$oid": "63ed01ef4c37f93d0b797827" } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/MiscItems/Kuva", - "ItemPrices": [{ "ItemCount": 5, "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidAngelItem", "ProductCategory": "MiscItems" }], - "Bin": "BIN_0", - "QuantityMultiplier": 35000, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "66664112af1177b5070ab882" } - } - ], - "PropertyTextHash": "DB7BF03C3FE6D0036A4DC30066A9A17E", - "Expiry": { "$date": { "$numberLong": "9999999000000" } } - } -} diff --git a/static/fixed_responses/getVendorInfo/Temple1999VendorManifest.json b/static/fixed_responses/getVendorInfo/Temple1999VendorManifest.json deleted file mode 100644 index 6309363f..00000000 --- a/static/fixed_responses/getVendorInfo/Temple1999VendorManifest.json +++ /dev/null @@ -1,459 +0,0 @@ -{ - "VendorInfo": { - "_id": { - "$oid": "67dadc30e4b6e0e5979c8d56" - }, - "TypeName": "/Lotus/Types/Game/VendorManifests/TheHex/Temple1999VendorManifest", - "ItemManifest": [ - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/WarframeRecipes/TempleBlueprint", - "ItemPrices": [ - { - "ItemCount": 195, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c18c" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/WarframeRecipes/TempleSystemsBlueprint", - "ItemPrices": [ - { - "ItemCount": 65, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c18d" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/WarframeRecipes/TempleChassisBlueprint", - "ItemPrices": [ - { - "ItemCount": 65, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c18e" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/WarframeRecipes/TempleHelmetBlueprint", - "ItemPrices": [ - { - "ItemCount": 65, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c18f" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/Weapons/1999EntHybridPistolBlueprint", - "ItemPrices": [ - { - "ItemCount": 120, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c190" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/Weapons/WeaponParts/1999EntHybridPistolBarrelBlueprint", - "ItemPrices": [ - { - "ItemCount": 60, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c191" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/Weapons/WeaponParts/1999EntHybridPistolReceiverBlueprint", - "ItemPrices": [ - { - "ItemCount": 60, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c192" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Recipes/Weapons/WeaponParts/1999EntHybridPistolStockBlueprint", - "ItemPrices": [ - { - "ItemCount": 60, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c193" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumDrumCoreKitA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c194" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumDrumCymbalA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c195" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumDrumFloorTomA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c196" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumDrumSnareA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c197" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c198" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseB", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c199" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseC", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c19a" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseD", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c19b" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseE", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c19c" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumEquipmentCaseF", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c19d" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Hollvania/LASxStadiumSynthKeyboardA", - "ItemPrices": [ - { - "ItemCount": 30, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c19e" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/PhotoBooth/Vania/PhotoboothTileVaniaObjTempleDefense", - "ItemPrices": [ - { - "ItemCount": 100, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "AllowMultipurchase": false, - "Id": { - "$oid": "67dadc30641da66dc5c1c19f" - } - }, - { - "StoreItem": "/Lotus/StoreItems/Types/Items/MiscItems/Kuva", - "ItemPrices": [ - { - "ItemCount": 110, - "ItemType": "/Lotus/Types/Gameplay/1999Wf/Resources/1999ResourceDefense", - "ProductCategory": "MiscItems" - } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 6000, - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - }, - "PurchaseQuantityLimit": 7, - "AllowMultipurchase": true, - "Id": { - "$oid": "67dadc30641da66dc5c1c1a5" - } - } - ], - "PropertyTextHash": "20B13D9EB78FEC80EA32D0687F5BA1AE", - "RequiredGoalTag": "", - "Expiry": { - "$date": { - "$numberLong": "2051240400000" - } - } - } -} diff --git a/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json b/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json deleted file mode 100644 index ec1c5c22..00000000 --- a/static/fixed_responses/getVendorInfo/ZarimanCommisionsManifestArchimedean.json +++ /dev/null @@ -1,75 +0,0 @@ -{ - "VendorInfo": { - "_id": { "$oid": "62a20ba667e5d3797540d831" }, - "TypeName": "/Lotus/Types/Game/VendorManifests/Zariman/ZarimanCommisionsManifestArchimedean", - "ItemManifest": [ - { - "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskE", - "ItemPrices": [ - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 4, "ProductCategory": "MiscItems" }, - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 6, "ProductCategory": "MiscItems" } - ], - "Bin": "BIN_4", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "6678b612aa3d8ee5c2597299" } - }, - { - "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskD", - "ItemPrices": [ - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 5, "ProductCategory": "MiscItems" }, - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 3, "ProductCategory": "MiscItems" } - ], - "Bin": "BIN_3", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "6678b612aa3d8ee5c259729a" } - }, - { - "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskC", - "ItemPrices": [ - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidWraithItem", "ItemCount": 15, "ProductCategory": "MiscItems" }, - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanDogTagUncommon", "ItemCount": 1, "ProductCategory": "MiscItems" } - ], - "Bin": "BIN_2", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "6678b612aa3d8ee5c259729b" } - }, - { - "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskB", - "ItemPrices": [ - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/VoidWraithItem", "ItemCount": 4, "ProductCategory": "MiscItems" }, - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 1, "ProductCategory": "MiscItems" } - ], - "Bin": "BIN_1", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "6678b612aa3d8ee5c259729c" } - }, - { - "StoreItem": "/Lotus/Types/StoreItems/Packages/Tasks/Zariman/AchimedeanTaskA", - "ItemPrices": [ - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemB", "ItemCount": 1, "ProductCategory": "MiscItems" }, - { "ItemType": "/Lotus/Types/Gameplay/Zariman/Resources/ZarimanMiscItemA", "ItemCount": 2, "ProductCategory": "MiscItems" } - ], - "Bin": "BIN_0", - "QuantityMultiplier": 1, - "Expiry": { "$date": { "$numberLong": "9999999000000" } }, - "PurchaseQuantityLimit": 1, - "AllowMultipurchase": false, - "Id": { "$oid": "6678b612aa3d8ee5c259729d" } - } - ], - "PropertyTextHash": "F43F0ED811985EEF856970A8342EF322", - "Expiry": { "$date": { "$numberLong": "9999999000000" } } - } -}