From 1c6412a6a41aff074d9ab789330c15ba63ed6c83 Mon Sep 17 00:00:00 2001
From: Vampire Kitten <95658710+VampireKitten@users.noreply.github.com>
Date: Sat, 15 Jun 2024 00:38:12 +0200
Subject: [PATCH 01/38] feat(webui): change server config through UI (#294)
---
.../custom/getConfigDataController.ts | 8 ++
.../custom/updateConfigDataController.ts | 16 ++++
src/routes/custom.ts | 7 +-
src/routes/webui.ts | 3 +
static/webui/index.html | 78 ++++++++++++++++++-
static/webui/script.js | 45 +++++++++++
6 files changed, 152 insertions(+), 5 deletions(-)
create mode 100644 src/controllers/custom/getConfigDataController.ts
create mode 100644 src/controllers/custom/updateConfigDataController.ts
diff --git a/src/controllers/custom/getConfigDataController.ts b/src/controllers/custom/getConfigDataController.ts
new file mode 100644
index 00000000..8d946384
--- /dev/null
+++ b/src/controllers/custom/getConfigDataController.ts
@@ -0,0 +1,8 @@
+import { RequestHandler } from "express";
+import configFile from "@/config.json";
+
+const getConfigDataController: RequestHandler = (_req, res) => {
+ res.json(configFile);
+};
+
+export { getConfigDataController };
diff --git a/src/controllers/custom/updateConfigDataController.ts b/src/controllers/custom/updateConfigDataController.ts
new file mode 100644
index 00000000..38d6ca35
--- /dev/null
+++ b/src/controllers/custom/updateConfigDataController.ts
@@ -0,0 +1,16 @@
+import { RequestHandler } from "express";
+import path from "path";
+import fs from "fs";
+const rootDir = path.join(__dirname, "../../..");
+
+const updateConfigDataController: RequestHandler = (req) => {
+ const updateSettingsData = req.body;
+
+ fs.writeFile(path.join(rootDir, "config.json"), updateSettingsData, function(err:any) {
+ if(err) {
+ return console.log(err);
+ }
+ });
+};
+
+export { updateConfigDataController };
diff --git a/src/routes/custom.ts b/src/routes/custom.ts
index 8a4218d7..6c0a7416 100644
--- a/src/routes/custom.ts
+++ b/src/routes/custom.ts
@@ -2,6 +2,8 @@ import express from "express";
import { getItemListsController } from "@/src/controllers/custom/getItemListsController";
import { createAccountController } from "@/src/controllers/custom/createAccountController";
import { addItemController } from "@/src/controllers/custom/addItemController";
+import { getConfigDataController } from "@/src/controllers/custom/getConfigDataController";
+import { updateConfigDataController } from "@/src/controllers/custom/updateConfigDataController";
const customRouter = express.Router();
@@ -10,4 +12,7 @@ customRouter.get("/getItemLists", getItemListsController);
customRouter.post("/createAccount", createAccountController);
customRouter.post("/addItem", addItemController);
-export { customRouter };
+customRouter.get("/config", getConfigDataController);
+customRouter.post("/config", updateConfigDataController);
+
+export { customRouter };
\ No newline at end of file
diff --git a/src/routes/webui.ts b/src/routes/webui.ts
index 677031c6..93005f34 100644
--- a/src/routes/webui.ts
+++ b/src/routes/webui.ts
@@ -19,6 +19,9 @@ webuiRouter.use("/webui", (req, res, next) => {
});
// Serve virtual routes
+webuiRouter.get("/webui/settings", (_req, res) => {
+ res.sendFile(path.join(rootDir, "static/webui/index.html"));
+});
webuiRouter.get("/webui/inventory", (_req, res) => {
res.sendFile(path.join(rootDir, "static/webui/index.html"));
});
diff --git a/static/webui/index.html b/static/webui/index.html
index a680fd33..6ab05bad 100644
--- a/static/webui/index.html
+++ b/static/webui/index.html
@@ -67,15 +67,21 @@
Mods
+
+
+ Settings
+
+
-
- Note: Changes made here will only be reflected in-game when the game re-downloads your inventory.
- Visiting the navigation should be the easiest way to trigger that.
-
Login using your OpenWF account credentials.
+
+ Note: Changes made here will only be reflected in-game when the game re-downloads your inventory.
+ Visiting the navigation should be the easiest way to trigger that.
+
+
+ Note: Changes made here will only be reflected in-game when the game re-downloads your inventory.
+ Visiting the navigation should be the easiest way to trigger that.
+
+
diff --git a/static/webui/script.js b/static/webui/script.js
index 4220234a..b03de1d2 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -15,6 +15,7 @@ function loginFromLocalStorage() {
window.accountId = data.id;
window.authz = "accountId=" + data.id + "&nonce=" + data.Nonce;
updateInventory();
+ fetchSettings();
},
() => {
logout();
@@ -618,3 +619,47 @@ function doAcquireMod() {
$("#mod-to-acquire").on("input", () => {
$("#mod-to-acquire").removeClass("is-invalid");
});
+
+function fetchSettings() {
+ fetch('/custom/config')
+ .then((response) => response.json())
+ .then((json) => Object.entries(json).forEach((entry) => {
+ const [key, value] = entry;
+ var x = document.getElementById(`${key}`);
+ if (x!=null) {
+ if (x.type == "checkbox") {
+ if (value === true) {
+ x.setAttribute("checked", "checked")
+ }
+ } else if (x.type == "number") {
+ x.setAttribute("value", `${value}`)
+ }
+ }
+ }));
+}
+
+function doChangeSettings() {
+ fetch('/custom/config')
+ .then((response) => response.json())
+ .then((json) => {
+ for(var i in json) {
+ var x = document.getElementById(`${i}`);
+ if (x!=null) {
+ if (x.type == "checkbox") {
+ if (x.checked === true) {
+ json[i]=true;
+ } else {
+ json[i]=false;
+ }
+ } else if (x.type == "number") {
+ json[i]=parseInt(x.value);
+ }
+ }
+ }
+ $.post({
+ url: "/custom/config",
+ contentType: "text/plain",
+ data: JSON.stringify(json, null, 2)
+ })
+ })
+}
\ No newline at end of file
From ba8a3afce5c2a5dda60b1b365f089a98e18f1c2b Mon Sep 17 00:00:00 2001
From: OrdisPrime
Date: Fri, 14 Jun 2024 22:38:33 +0000
Subject: [PATCH 02/38] Apply prettier changes
---
.../custom/updateConfigDataController.ts | 8 +--
src/routes/custom.ts | 2 +-
static/webui/index.html | 67 ++++++++++++-------
static/webui/script.js | 52 +++++++-------
4 files changed, 76 insertions(+), 53 deletions(-)
diff --git a/src/controllers/custom/updateConfigDataController.ts b/src/controllers/custom/updateConfigDataController.ts
index 38d6ca35..1b13cc60 100644
--- a/src/controllers/custom/updateConfigDataController.ts
+++ b/src/controllers/custom/updateConfigDataController.ts
@@ -3,11 +3,11 @@ import path from "path";
import fs from "fs";
const rootDir = path.join(__dirname, "../../..");
-const updateConfigDataController: RequestHandler = (req) => {
+const updateConfigDataController: RequestHandler = req => {
const updateSettingsData = req.body;
-
- fs.writeFile(path.join(rootDir, "config.json"), updateSettingsData, function(err:any) {
- if(err) {
+
+ fs.writeFile(path.join(rootDir, "config.json"), updateSettingsData, function (err: any) {
+ if (err) {
return console.log(err);
}
});
diff --git a/src/routes/custom.ts b/src/routes/custom.ts
index 6c0a7416..476c5997 100644
--- a/src/routes/custom.ts
+++ b/src/routes/custom.ts
@@ -15,4 +15,4 @@ customRouter.post("/addItem", addItemController);
customRouter.get("/config", getConfigDataController);
customRouter.post("/config", updateConfigDataController);
-export { customRouter };
\ No newline at end of file
+export { customRouter };
diff --git a/static/webui/index.html b/static/webui/index.html
index 6ab05bad..df711a5f 100644
--- a/static/webui/index.html
+++ b/static/webui/index.html
@@ -96,8 +96,8 @@
- Note: Changes made here will only be reflected in-game when the game re-downloads your inventory.
- Visiting the navigation should be the easiest way to trigger that.
+ Note: Changes made here will only be reflected in-game when the game re-downloads your
+ inventory. Visiting the navigation should be the easiest way to trigger that.
@@ -144,8 +144,8 @@
- Note: Changes made here will only be reflected in-game when the game re-downloads your inventory.
- Visiting the navigation should be the easiest way to trigger that.
+ Note: Changes made here will only be reflected in-game when the game re-downloads your
+ inventory. Visiting the navigation should be the easiest way to trigger that.
From e3103d4ab62bf2311c2e1abae1b451c4cc37c6cd Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sat, 15 Jun 2024 15:09:38 +0200
Subject: [PATCH 05/38] fix(webui): webui config change not committing change
to memory (#298)
---
src/services/configService.ts | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/services/configService.ts b/src/services/configService.ts
index 8290047b..283b31bf 100644
--- a/src/services/configService.ts
+++ b/src/services/configService.ts
@@ -46,5 +46,6 @@ interface ILoggerConfig {
export const updateConfig = async (data: string) => {
amnesia = true;
- return await fsPromises.writeFile(configPath, data);
+ await fsPromises.writeFile(configPath, data);
+ Object.assign(config, JSON.parse(data));
};
From f216d5222fb44f46af09a9aa12c53f7a9fcecb31 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sat, 15 Jun 2024 15:12:08 +0200
Subject: [PATCH 06/38] feat: purchase shop decorations (#299)
---
src/services/inventoryService.ts | 78 ++++++++++++++++++++++++++------
1 file changed, 65 insertions(+), 13 deletions(-)
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index f21ea25a..e5f82b97 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -116,6 +116,23 @@ export const addItem = async (
FlavourItems: [await addCustomization(typeName, accountId)]
}
};
+ case "Objects": {
+ // /Lotus/Objects/Tenno/Props/TnoLisetTextProjector (Note Beacon)
+ const inventory = await getInventory(accountId);
+ const changes = [
+ {
+ ItemType: typeName,
+ ItemCount: quantity
+ } satisfies IMiscItem
+ ];
+ addShipDecorations(inventory, changes);
+ await inventory.save();
+ return {
+ InventoryChanges: {
+ ShipDecorations: changes
+ }
+ };
+ }
case "Types":
switch (typeName.substr(1).split("/")[2]) {
case "AvatarImages":
@@ -136,20 +153,40 @@ export const addItem = async (
}
};
case "Items": {
- const inventory = await getInventory(accountId);
- const miscItemChanges = [
- {
- ItemType: typeName,
- ItemCount: quantity
- } satisfies IMiscItem
- ];
- addMiscItems(inventory, miscItemChanges);
- await inventory.save();
- return {
- InventoryChanges: {
- MiscItems: miscItemChanges
+ switch (typeName.substr(1).split("/")[3]) {
+ case "ShipDecos": {
+ const inventory = await getInventory(accountId);
+ const changes = [
+ {
+ ItemType: typeName,
+ ItemCount: quantity
+ } satisfies IMiscItem
+ ];
+ addShipDecorations(inventory, changes);
+ await inventory.save();
+ return {
+ InventoryChanges: {
+ ShipDecorations: changes
+ }
+ };
}
- };
+ default: {
+ const inventory = await getInventory(accountId);
+ const miscItemChanges = [
+ {
+ ItemType: typeName,
+ ItemCount: quantity
+ } satisfies IMiscItem
+ ];
+ addMiscItems(inventory, miscItemChanges);
+ await inventory.save();
+ return {
+ InventoryChanges: {
+ MiscItems: miscItemChanges
+ }
+ };
+ }
+ }
}
case "Recipes":
case "Consumables": {
@@ -427,6 +464,21 @@ export const addMiscItems = (inventory: IInventoryDatabaseDocument, itemsArray:
});
};
+export const addShipDecorations = (inventory: IInventoryDatabaseDocument, itemsArray: IConsumable[] | undefined) => {
+ const { ShipDecorations } = inventory;
+
+ itemsArray?.forEach(({ ItemCount, ItemType }) => {
+ const itemIndex = ShipDecorations.findIndex(miscItem => miscItem.ItemType === ItemType);
+
+ if (itemIndex !== -1) {
+ ShipDecorations[itemIndex].ItemCount += ItemCount;
+ inventory.markModified(`ShipDecorations.${itemIndex}.ItemCount`);
+ } else {
+ ShipDecorations.push({ ItemCount, ItemType });
+ }
+ });
+};
+
export const addConsumables = (inventory: IInventoryDatabaseDocument, itemsArray: IConsumable[] | undefined) => {
const { Consumables } = inventory;
From 21db3b5c5d5dffd60c8f57c1818f6bd48ddbe073 Mon Sep 17 00:00:00 2001
From: OrdisPrime <134585663+OrdisPrime@users.noreply.github.com>
Date: Sat, 15 Jun 2024 17:39:13 +0200
Subject: [PATCH 07/38] fix: move ship decorations (#300)
---
src/models/personalRoomsModel.ts | 3 +-
src/services/shipCustomizationsService.ts | 71 ++++++++++++++++++++++-
src/types/shipTypes.ts | 12 +++-
3 files changed, 79 insertions(+), 7 deletions(-)
diff --git a/src/models/personalRoomsModel.ts b/src/models/personalRoomsModel.ts
index 8f4abede..8a7caaf0 100644
--- a/src/models/personalRoomsModel.ts
+++ b/src/models/personalRoomsModel.ts
@@ -7,7 +7,8 @@ const placedDecosSchema = new Schema(
{
Type: String,
Pos: [Number],
- Rot: [Number]
+ Rot: [Number],
+ Scale: Number
},
{ id: false }
);
diff --git a/src/services/shipCustomizationsService.ts b/src/services/shipCustomizationsService.ts
index 98125e50..d21510e7 100644
--- a/src/services/shipCustomizationsService.ts
+++ b/src/services/shipCustomizationsService.ts
@@ -6,6 +6,7 @@ import {
IShipDecorationsRequest,
IShipDecorationsResponse
} from "@/src/types/shipTypes";
+import { logger } from "@/src/utils/logger";
import { Types } from "mongoose";
export const setShipCustomizations = async (shipCustomization: ISetShipCustomizationsRequest) => {
@@ -37,12 +38,74 @@ export const handleSetShipDecorations = async (
const rooms = placedDecoration.IsApartment ? personalRooms.Apartment.Rooms : personalRooms.Ship.Rooms;
- const room = rooms.find(room => room.Name === placedDecoration.Room);
+ const roomToPlaceIn = rooms.find(room => room.Name === placedDecoration.Room);
+
+ if (!roomToPlaceIn) {
+ logger.error("room not found");
+ throw new Error("room not found");
+ }
+
+ if (placedDecoration.MoveId) {
+ //moved within the same room
+ if (placedDecoration.OldRoom === placedDecoration.Room) {
+ const existingDecorationIndex = roomToPlaceIn?.PlacedDecos?.findIndex(
+ deco => deco._id.toString() === placedDecoration.MoveId
+ );
+
+ if (existingDecorationIndex === -1) {
+ logger.error("decoration to be moved not found");
+ throw new Error("decoration to be moved not found");
+ }
+
+ roomToPlaceIn.PlacedDecos[existingDecorationIndex].Pos = placedDecoration.Pos;
+ roomToPlaceIn.PlacedDecos[existingDecorationIndex].Rot = placedDecoration.Rot;
+
+ if (placedDecoration.Scale) {
+ roomToPlaceIn.PlacedDecos[existingDecorationIndex].Scale = placedDecoration.Scale;
+ }
+
+ await personalRooms.save();
+ return {
+ OldRoom: placedDecoration.OldRoom,
+ NewRoom: placedDecoration.Room,
+ IsApartment: placedDecoration.IsApartment,
+ MaxCapacityIncrease: 0 // TODO: calculate capacity change upon removal
+ };
+ }
+
+ //moved to a different room
+ const oldRoom = rooms.find(room => room.Name === placedDecoration.OldRoom);
+
+ if (!oldRoom) {
+ logger.error("old room not found");
+ throw new Error("old room not found");
+ }
+
+ oldRoom.PlacedDecos.pull({ _id: placedDecoration.MoveId });
+
+ const newDecoration = {
+ Type: placedDecoration.Type,
+ Pos: placedDecoration.Pos,
+ Rot: placedDecoration.Rot,
+ Scale: placedDecoration.Scale || 1,
+ _id: placedDecoration.MoveId
+ };
+
+ //the new room is still roomToPlaceIn
+ roomToPlaceIn.PlacedDecos.push(newDecoration);
+ await personalRooms.save();
+ return {
+ OldRoom: placedDecoration.OldRoom,
+ NewRoom: placedDecoration.Room,
+ IsApartment: placedDecoration.IsApartment,
+ MaxCapacityIncrease: 0 // TODO: calculate capacity change upon removal
+ };
+ }
//TODO: check whether to remove from shipitems
if (placedDecoration.RemoveId) {
- room?.PlacedDecos?.pull({ _id: placedDecoration.RemoveId });
+ roomToPlaceIn.PlacedDecos.pull({ _id: placedDecoration.RemoveId });
await personalRooms.save();
return {
DecoId: placedDecoration.RemoveId,
@@ -54,11 +117,13 @@ export const handleSetShipDecorations = async (
// TODO: handle capacity
+ //place decoration
const decoId = new Types.ObjectId();
- room?.PlacedDecos?.push({
+ roomToPlaceIn.PlacedDecos?.push({
Type: placedDecoration.Type,
Pos: placedDecoration.Pos,
Rot: placedDecoration.Rot,
+ Scale: placedDecoration.Scale || 1,
_id: decoId
});
diff --git a/src/types/shipTypes.ts b/src/types/shipTypes.ts
index 53cf1f87..6b0e019f 100644
--- a/src/types/shipTypes.ts
+++ b/src/types/shipTypes.ts
@@ -69,6 +69,7 @@ export interface IPlacedDecosDatabase {
Type: string;
Pos: [number, number, number];
Rot: [number, number, number];
+ Scale: number;
_id: Types.ObjectId;
}
@@ -100,12 +101,17 @@ export interface IShipDecorationsRequest {
Rot: [number, number, number];
Room: string;
IsApartment: boolean;
- RemoveId: string;
+ RemoveId?: string;
+ MoveId?: string;
+ OldRoom?: string;
+ Scale?: number;
}
export interface IShipDecorationsResponse {
- DecoId: string;
- Room: string;
+ DecoId?: string;
+ Room?: string;
IsApartment: boolean;
MaxCapacityIncrease?: number;
+ OldRoom?: string;
+ NewRoom?: string;
}
From 5036d6dbae41dd4e86204c710d912bff3e3c7770 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sat, 15 Jun 2024 22:12:57 +0200
Subject: [PATCH 08/38] feat: purchasing of bundles (#301)
---
package-lock.json | 8 ++--
package.json | 2 +-
src/services/purchaseService.ts | 66 +++++++++++++++++++++++----------
3 files changed, 51 insertions(+), 25 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 14580188..113407a0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.2",
+ "warframe-public-export-plus": "^0.2.3",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
@@ -3909,9 +3909,9 @@
}
},
"node_modules/warframe-public-export-plus": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.2.tgz",
- "integrity": "sha512-PAsiyiRDqXcsUwZTweihwrSksd+GT3USrbHwS/TrJUC3TqLS0Ng24OfefFKPWOmPfMxDbdkg2zV39uq72iZ/Yg=="
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.3.tgz",
+ "integrity": "sha512-Bl4gb3f1LIdGXLEOJg2XTIFYqrialdTIvVhDqDzVJIRfii0PKsy9jsr9vqM14tWz7oVpQMeCUyvisDkkXijTSg=="
},
"node_modules/warframe-riven-info": {
"version": "0.1.0",
diff --git a/package.json b/package.json
index 88a71412..9da3bcca 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.2",
+ "warframe-public-export-plus": "^0.2.3",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
diff --git a/src/services/purchaseService.ts b/src/services/purchaseService.ts
index ba13666a..b8a1c1ea 100644
--- a/src/services/purchaseService.ts
+++ b/src/services/purchaseService.ts
@@ -3,6 +3,7 @@ import { getSubstringFromKeyword } from "@/src/helpers/stringHelpers";
import { addItem, addBooster, updateCurrency, updateSlots } from "@/src/services/inventoryService";
import { IPurchaseRequest, SlotPurchase } from "@/src/types/purchaseTypes";
import { logger } from "@/src/utils/logger";
+import { ExportBundles } from "warframe-public-export-plus";
export const getStoreItemCategory = (storeItem: string) => {
const storeItemString = getSubstringFromKeyword(storeItem, "StoreItems/");
@@ -21,26 +22,12 @@ export const getStoreItemTypesCategory = (typesItem: string) => {
export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountId: string) => {
logger.debug("purchase request", purchaseRequest);
- const storeCategory = getStoreItemCategory(purchaseRequest.PurchaseParams.StoreItem);
- const internalName = purchaseRequest.PurchaseParams.StoreItem.replace("/StoreItems", "");
- logger.debug(`store category ${storeCategory}`);
- let purchaseResponse;
- switch (storeCategory) {
- default:
- purchaseResponse = await addItem(accountId, internalName);
- break;
- case "Types":
- purchaseResponse = await handleTypesPurchase(
- internalName,
- accountId,
- purchaseRequest.PurchaseParams.Quantity
- );
- break;
- case "Boosters":
- purchaseResponse = await handleBoostersPurchase(internalName, accountId);
- break;
- }
+ const purchaseResponse = await handleStoreItemAcquisition(
+ purchaseRequest.PurchaseParams.StoreItem,
+ accountId,
+ purchaseRequest.PurchaseParams.Quantity
+ );
if (!purchaseResponse) throw new Error("purchase response was undefined");
@@ -58,6 +45,43 @@ export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountI
return purchaseResponse;
};
+const handleStoreItemAcquisition = async (
+ storeItemName: string,
+ accountId: string,
+ quantity: number
+): Promise<{ InventoryChanges: object }> => {
+ let purchaseResponse = {
+ InventoryChanges: {}
+ };
+ logger.debug(`handling acquision of ${storeItemName}`);
+ if (storeItemName in ExportBundles) {
+ const bundle = ExportBundles[storeItemName];
+ logger.debug("acquiring bundle", bundle);
+ for (const component of bundle.components) {
+ purchaseResponse = {
+ ...purchaseResponse,
+ ...(await handleStoreItemAcquisition(component.typeName, accountId, component.purchaseQuantity))
+ };
+ }
+ } else {
+ const storeCategory = getStoreItemCategory(storeItemName);
+ const internalName = storeItemName.replace("/StoreItems", "");
+ logger.debug(`store category ${storeCategory}`);
+ switch (storeCategory) {
+ default:
+ purchaseResponse = await addItem(accountId, internalName);
+ break;
+ case "Types":
+ purchaseResponse = await handleTypesPurchase(internalName, accountId, quantity);
+ break;
+ case "Boosters":
+ purchaseResponse = await handleBoostersPurchase(internalName, accountId);
+ break;
+ }
+ }
+ return purchaseResponse;
+};
+
export const slotPurchaseNameToSlotName: SlotPurchase = {
SuitSlotItem: { name: "SuitBin", slotsPerPurchase: 1 },
TwoSentinelSlotItem: { name: "SentinelBin", slotsPerPurchase: 2 },
@@ -122,7 +146,9 @@ const boosterCollection = [
const handleBoostersPurchase = async (boosterStoreName: string, accountId: string) => {
const match = boosterStoreName.match(/(\d+)Day/);
- if (!match) return;
+ if (!match) {
+ return { InventoryChanges: {} };
+ }
const extractedDigit = Number(match[1]);
const ItemType = boosterCollection.find(i =>
From 31da32889a9adef5f3ee93846ac48bdcfadcb2ad Mon Sep 17 00:00:00 2001
From: Mebius <160588255+Mebiius@users.noreply.github.com>
Date: Sun, 16 Jun 2024 03:23:33 -0700
Subject: [PATCH 09/38] improve(webui): Zaw display label (#304)
Co-authored-by: Belenus <160588255+Be1enus@users.noreply.github.com>
---
static/webui/script.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/static/webui/script.js b/static/webui/script.js
index 37fa5177..288f70c7 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -95,6 +95,8 @@ window.itemListPromise = new Promise(resolve => {
"/Lotus/Weapons/Tenno/Pistol/LotusPistol": { name: "Pistol" },
"/Lotus/Weapons/Tenno/Rifle/LotusRifle": { name: "Rifle" },
"/Lotus/Weapons/Tenno/Shotgun/LotusShotgun": { name: "Shotgun" },
+ // Modular weapons
+ "/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": {name: "Zaw"},
// Missing in data sources
"/Lotus/Upgrades/CosmeticEnhancers/Peculiars/CyoteMod": { name: "Traumatic Peculiar" }
};
From 8f8d58ade6cf59773d3e9f82bb53196824e20e66 Mon Sep 17 00:00:00 2001
From: OrdisPrime
Date: Sun, 16 Jun 2024 10:23:52 +0000
Subject: [PATCH 10/38] Apply prettier changes
---
static/webui/script.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/static/webui/script.js b/static/webui/script.js
index 288f70c7..15db05d7 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -96,7 +96,7 @@ window.itemListPromise = new Promise(resolve => {
"/Lotus/Weapons/Tenno/Rifle/LotusRifle": { name: "Rifle" },
"/Lotus/Weapons/Tenno/Shotgun/LotusShotgun": { name: "Shotgun" },
// Modular weapons
- "/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": {name: "Zaw"},
+ "/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": { name: "Zaw" },
// Missing in data sources
"/Lotus/Upgrades/CosmeticEnhancers/Peculiars/CyoteMod": { name: "Traumatic Peculiar" }
};
From c9b570059ea3a42ddb6be70a9fc36d900eb003f9 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sun, 16 Jun 2024 12:24:15 +0200
Subject: [PATCH 11/38] improve: don't fake XPInfo if we don't have to (#303)
---
src/controllers/api/inventoryController.ts | 23 +++++++++++-----------
static/webui/script.js | 4 ++--
2 files changed, 13 insertions(+), 14 deletions(-)
diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts
index e78bf3d8..4aa44387 100644
--- a/src/controllers/api/inventoryController.ts
+++ b/src/controllers/api/inventoryController.ts
@@ -78,19 +78,18 @@ const inventoryController: RequestHandler = async (request: Request, response: R
}
}
- if (
- typeof config.spoofMasteryRank === "number" &&
- config.spoofMasteryRank >= 0 &&
- config.spoofMasteryRank <= 5030
- ) {
+ if (typeof config.spoofMasteryRank === "number" && config.spoofMasteryRank >= 0) {
inventoryResponse.PlayerLevel = config.spoofMasteryRank;
- inventoryResponse.XPInfo = [];
- let numFrames = getExpRequiredForMr(config.spoofMasteryRank) / 6000;
- while (numFrames-- > 0) {
- inventoryResponse.XPInfo.push({
- ItemType: "/Lotus/Powersuits/Mag/Mag",
- XP: 1_600_000
- });
+ if (!("xpBasedLevelCapDisabled" in request.query)) {
+ // This client has not been patched to accept any mastery rank, need to fake the XP.
+ inventoryResponse.XPInfo = [];
+ let numFrames = getExpRequiredForMr(Math.min(config.spoofMasteryRank, 5030)) / 6000;
+ while (numFrames-- > 0) {
+ inventoryResponse.XPInfo.push({
+ ItemType: "/Lotus/Powersuits/Mag/Mag",
+ XP: 1_600_000
+ });
+ }
}
}
diff --git a/static/webui/script.js b/static/webui/script.js
index 15db05d7..0475a730 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -123,7 +123,7 @@ window.itemListPromise = new Promise(resolve => {
});
function updateInventory() {
- const req = $.get("/api/inventory.php?" + window.authz);
+ const req = $.get("/api/inventory.php?" + window.authz + "&xpBasedLevelCapDisabled=1");
req.done(data => {
window.itemListPromise.then(itemMap => {
document.getElementById("warframe-list").innerHTML = "";
@@ -539,7 +539,7 @@ function doAcquireRiven() {
})
}).done(function () {
// Get riven's assigned id
- $.get("/api/inventory.php?" + window.authz).done(data => {
+ $.get("/api/inventory.php?" + window.authz + "&xpBasedLevelCapDisabled=1").done(data => {
for (const rawUpgrade of data.RawUpgrades) {
if (rawUpgrade.ItemType === uniqueName) {
// Add fingerprint to riven
From e2221f257b596097f9c14296048d41a63ce144ee Mon Sep 17 00:00:00 2001
From: AMelonInsideLemon <166175391+AMelonInsideLemon@users.noreply.github.com>
Date: Sun, 16 Jun 2024 17:51:20 +0200
Subject: [PATCH 12/38] refactor: Combine Equipment and Config Types (#289)
Co-authored-by: AMelonInsideLemon
Co-authored-by: Ordis <134585663+OrdisPrime@users.noreply.github.com>
---
src/controllers/api/upgradesController.ts | 20 +-
src/models/inventoryModels/inventoryModel.ts | 215 +++------
src/models/inventoryModels/loadoutModel.ts | 3 +-
src/services/inventoryService.ts | 13 +-
src/types/inventoryTypes/SuitTypes.ts | 25 --
.../inventoryTypes/commonInventoryTypes.ts | 63 ++-
src/types/inventoryTypes/inventoryTypes.ts | 413 ++++--------------
src/types/inventoryTypes/weaponTypes.ts | 33 --
src/types/purchaseTypes.ts | 13 +-
src/types/requestTypes.ts | 19 +-
src/types/saveLoadoutTypes.ts | 21 +-
11 files changed, 214 insertions(+), 624 deletions(-)
delete mode 100644 src/types/inventoryTypes/SuitTypes.ts
delete mode 100644 src/types/inventoryTypes/weaponTypes.ts
diff --git a/src/controllers/api/upgradesController.ts b/src/controllers/api/upgradesController.ts
index b0545632..88c01dc7 100644
--- a/src/controllers/api/upgradesController.ts
+++ b/src/controllers/api/upgradesController.ts
@@ -1,7 +1,7 @@
import { RequestHandler } from "express";
import { IUpgradesRequest } from "@/src/types/requestTypes";
-import { FocusSchool } from "@/src/types/inventoryTypes/commonInventoryTypes";
-import { IGenericItemDatabase, IMiscItem, TGenericItemKey } from "@/src/types/inventoryTypes/inventoryTypes";
+import { FocusSchool, IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes";
+import { IMiscItem, IEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
@@ -28,7 +28,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
switch (operation.UpgradeRequirement) {
case "/Lotus/Types/Items/MiscItems/OrokinReactor":
case "/Lotus/Types/Items/MiscItems/OrokinCatalyst":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 1;
@@ -38,7 +38,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
break;
case "/Lotus/Types/Items/MiscItems/UtilityUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponUtilityUnlocker":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 2;
@@ -49,7 +49,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
case "/Lotus/Types/Items/MiscItems/WeaponPrimaryArcaneUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponSecondaryArcaneUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponMeleeArcaneUnlocker":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 32;
@@ -61,7 +61,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
case "/Lotus/Types/Items/MiscItems/FormaUmbra":
case "/Lotus/Types/Items/MiscItems/FormaAura":
case "/Lotus/Types/Items/MiscItems/FormaStance":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.XP = 0;
setSlotPolarity(item, operation.PolarizeSlot, operation.PolarizeValue);
@@ -72,7 +72,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
}
break;
case "/Lotus/Types/Items/MiscItems/ModSlotUnlocker":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.ModSlotPurchases ??= 0;
item.ModSlotPurchases += 1;
@@ -87,7 +87,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
}
break;
case "/Lotus/Types/Items/MiscItems/CustomizationSlotUnlocker":
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.CustomizationSlotPurchases ??= 0;
item.CustomizationSlotPurchases += 1;
@@ -103,7 +103,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
break;
case "":
console.assert(operation.OperationType == "UOT_SWAP_POLARITY");
- for (const item of inventory[payload.ItemCategory as TGenericItemKey] as IGenericItemDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
for (let i = 0; i != operation.PolarityRemap.length; ++i) {
if (operation.PolarityRemap[i].Slot != i) {
@@ -122,7 +122,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
res.json({ InventoryChanges });
};
-const setSlotPolarity = (item: IGenericItemDatabase, slot: number, polarity: FocusSchool): void => {
+const setSlotPolarity = (item: IEquipmentDatabase, slot: number, polarity: FocusSchool): void => {
item.Polarity ??= [];
const entry = item.Polarity.find(entry => entry.Slot == slot);
if (entry) {
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index 679216b7..dc91ddb7 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -8,7 +8,6 @@ import {
IBooster,
IInventoryResponse,
ISlots,
- IGenericItem,
IMailbox,
IDuviriInfo,
IPendingRecipe as IPendingRecipeDatabase,
@@ -16,14 +15,13 @@ import {
ITypeCount,
IFocusXP,
IFocusUpgrades,
- IGenericItem2,
ITypeXPItem,
IChallengeProgress,
IStepSequencer,
IAffiliation,
INotePacks,
ICompletedJobChain,
- ISeasonChallengeHistory,
+ ISeasonChallenge,
IPlayerSkills,
ISettings,
IInfestedFoundry,
@@ -40,15 +38,14 @@ import {
ILoreFragmentScan
} from "../../types/inventoryTypes/inventoryTypes";
import { IOid } from "../../types/commonTypes";
-import { ISuitDatabase } from "@/src/types/inventoryTypes/SuitTypes";
-import { IWeaponDatabase } from "@/src/types/inventoryTypes/weaponTypes";
import {
IAbilityOverride,
IColor,
IItemConfig,
- IOperatorConfigClient,
IOperatorConfigDatabase,
- IPolarity
+ IPolarity,
+ IEquipmentDatabase,
+ IOperatorConfigClient
} from "@/src/types/inventoryTypes/commonInventoryTypes";
import { toMongoDate, toOid } from "@/src/helpers/inventoryHelpers";
@@ -185,33 +182,35 @@ ItemConfigSchema.set("toJSON", {
}
});
-//TODO: migrate to one schema for weapons and suits.. and possibly others
-const WeaponSchema = new Schema(
- {
- ItemType: String,
- Configs: [ItemConfigSchema],
- UpgradeVer: Number,
- XP: Number,
- Features: Number,
- Polarized: Number,
- Polarity: [polaritySchema],
- FocusLens: String,
- ModSlotPurchases: Number,
- CustomizationSlotPurchases: Number,
- UpgradeType: Schema.Types.Mixed, //todo
- UpgradeFingerprint: String,
- ItemName: String,
- ModularParts: [String],
- UnlockLevel: Number
- },
- { id: false }
-);
+const EquipmentSchema = new Schema({
+ ItemType: String,
+ Configs: [ItemConfigSchema],
+ UpgradeVer: Number,
+ XP: Number,
+ Features: Number,
+ Polarized: Number,
+ Polarity: [polaritySchema],
+ FocusLens: String,
+ ModSlotPurchases: Number,
+ CustomizationSlotPurchases: Number,
+ UpgradeType: Schema.Types.Mixed, //todo
+ UpgradeFingerprint: String,
+ ItemName: String,
+ InfestationDate: Date,
+ InfestationDays: Number,
+ InfestationType: String,
+ ModularParts: [String],
+ UnlockLevel: Number,
+ Expiry: Date,
+ SkillTree: String,
+ ArchonCrystalUpgrades: [Schema.Types.Mixed] //TODO
+});
-WeaponSchema.virtual("ItemId").get(function () {
+EquipmentSchema.virtual("ItemId").get(function () {
return { $oid: this._id.toString() } satisfies IOid;
});
-WeaponSchema.set("toJSON", {
+EquipmentSchema.set("toJSON", {
virtuals: true,
transform(_document, returnedObject) {
delete returnedObject._id;
@@ -248,7 +247,7 @@ RawUpgrades.set("toJSON", {
});
//TODO: find out what this is
-const upgrqadesSchema = new Schema(
+const upgradesSchema = new Schema(
{
UpgradeFingerprint: String,
ItemType: String
@@ -256,42 +255,11 @@ const upgrqadesSchema = new Schema(
{ id: false }
);
-upgrqadesSchema.virtual("ItemId").get(function () {
+upgradesSchema.virtual("ItemId").get(function () {
return toOid(this._id);
});
-upgrqadesSchema.set("toJSON", {
- virtuals: true,
- transform(_document, returnedObject) {
- delete returnedObject._id;
- delete returnedObject.__v;
- }
-});
-
-//TODO: reduce weapon and suit schemas to one schema if reasonable
-const suitSchema = new Schema(
- {
- ItemType: String,
- Configs: [ItemConfigSchema],
- UpgradeVer: Number,
- XP: Number,
- InfestationDate: Date,
- Features: Number,
- Polarity: [polaritySchema],
- Polarized: Number,
- ModSlotPurchases: Number,
- CustomizationSlotPurchases: Number,
- FocusLens: String,
- UnlockLevel: Number
- },
- { id: false }
-);
-
-suitSchema.virtual("ItemId").get(function () {
- return { $oid: this._id.toString() } satisfies IOid;
-});
-
-suitSchema.set("toJSON", {
+upgradesSchema.set("toJSON", {
virtuals: true,
transform(_document, returnedObject) {
delete returnedObject._id;
@@ -321,33 +289,6 @@ FlavourItemSchema.set("toJSON", {
}
});
-const GenericItemSchema = new Schema(
- {
- ItemType: String,
- Configs: [ItemConfigSchema],
- UpgradeVer: Number,
- XP: Number,
- Features: Number,
- Polarity: [polaritySchema],
- Polarized: Number,
- ModSlotPurchases: Number,
- CustomizationSlotPurchases: Number
- },
- { id: false }
-);
-
-GenericItemSchema.virtual("ItemId").get(function () {
- return { $oid: this._id.toString() } satisfies IOid;
-});
-
-GenericItemSchema.set("toJSON", {
- virtuals: true,
- transform(_document, returnedObject) {
- delete returnedObject._id;
- delete returnedObject.__v;
- }
-});
-
// "Mailbox": { "LastInboxId": { "$oid": "123456780000000000000000" } }
const MailboxSchema = new Schema(
{
@@ -384,30 +325,6 @@ DuviriInfoSchema.set("toJSON", {
}
});
-// eslint-disable-next-line @typescript-eslint/no-unused-vars
-const GenericItemSchema2 = new Schema({
- ItemType: String,
- ItemName: String,
- XP: Number,
- UpgradeVer: Number, //this is probably __v
- Features: Number,
- Polarized: Number,
- CustomizationSlotPurchases: Number,
- ModSlotPurchases: Number,
- FocusLens: String,
- Expiry: Date, //TODO: needs conversion
- Polarity: [polaritySchema],
- Configs: [ItemConfigSchema],
- ModularParts: [String],
- SkillTree: String,
- UpgradeType: String,
- UpgradeFingerprint: String,
- OffensiveUpgrade: String,
- DefensiveUpgrade: String,
- UpgradesExpiry: Date, //TODO: needs conversion
- ArchonCrystalUpgrades: []
-});
-
const TypeXPItemSchema = new Schema(
{
ItemType: String,
@@ -475,7 +392,7 @@ const completedJobChainsSchema = new Schema(
{ _id: false }
);
-const seasonChallengeHistorySchema = new Schema(
+const seasonChallengeHistorySchema = new Schema(
{
challenge: String,
id: String
@@ -696,31 +613,31 @@ const inventorySchema = new Schema(
//Non Upgrade Mods Example:I have 999 item WeaponElectricityDamageMod (only "ItemCount"+"ItemType")
RawUpgrades: [RawUpgrades],
//Upgrade Mods\Riven\Arcane Example:"UpgradeFingerprint"+"ItemType"+""
- Upgrades: [upgrqadesSchema],
+ Upgrades: [upgradesSchema],
//Warframe
- Suits: [suitSchema],
+ Suits: [EquipmentSchema],
//Primary Weapon
- LongGuns: [WeaponSchema],
+ LongGuns: [EquipmentSchema],
//Secondary Weapon
- Pistols: [WeaponSchema],
+ Pistols: [EquipmentSchema],
//Melee Weapon
- Melee: [WeaponSchema],
+ Melee: [EquipmentSchema],
//Ability Weapon like Ultimate Mech\Excalibur\Ivara etc
- SpecialItems: [GenericItemSchema],
+ SpecialItems: [EquipmentSchema],
//The Mandachord(Octavia) is a step sequencer
StepSequencers: [StepSequencersSchema],
//Sentinel(like Helios or modular)
- Sentinels: [Schema.Types.Mixed],
+ Sentinels: [EquipmentSchema],
//Any /Sentinels/SentinelWeapons/ (like warframe weapon)
- SentinelWeapons: [Schema.Types.Mixed],
+ SentinelWeapons: [EquipmentSchema],
//Modular Pets
- MoaPets: [Schema.Types.Mixed],
+ MoaPets: [EquipmentSchema],
KubrowPetEggs: [Schema.Types.Mixed],
//Like PowerSuit Cat\Kubrow or etc Pets
- KubrowPets: [Schema.Types.Mixed],
+ KubrowPets: [EquipmentSchema],
//Prints Cat(3 Prints)\Kubrow(2 Prints) Pets
KubrowPetPrints: [Schema.Types.Mixed],
@@ -735,27 +652,27 @@ const inventorySchema = new Schema(
//to use add SummonItem to Consumables+EquippedGear
//Archwing need Suits+Melee+Guns
- SpaceSuits: [GenericItemSchema],
- SpaceMelee: [GenericItemSchema],
- SpaceGuns: [Schema.Types.Mixed],
+ SpaceSuits: [EquipmentSchema],
+ SpaceMelee: [EquipmentSchema],
+ SpaceGuns: [EquipmentSchema],
ArchwingEnabled: Boolean,
//Mech need Suits+SpaceGuns+SpecialItem
- MechSuits: [suitSchema],
+ MechSuits: [EquipmentSchema],
///Restoratives/HoverboardSummon (like Suit)
- Hoverboards: [Schema.Types.Mixed],
+ Hoverboards: [EquipmentSchema],
//Use Operator\Drifter
UseAdultOperatorLoadout: Boolean,
//Operator\Drifter Weapon
- OperatorAmps: [Schema.Types.Mixed],
+ OperatorAmps: [EquipmentSchema],
//Operator
OperatorLoadOuts: [operatorConfigSchema],
//Drifter
AdultOperatorLoadOuts: [operatorConfigSchema],
- DrifterMelee: [GenericItemSchema],
- DrifterGuns: [GenericItemSchema],
+ DrifterMelee: [EquipmentSchema],
+ DrifterGuns: [EquipmentSchema],
//ErsatzHorsePowerSuit
- Horses: [GenericItemSchema],
+ Horses: [EquipmentSchema],
//LandingCraft like Liset
Ships: { type: [Schema.Types.ObjectId], ref: "Ships" },
@@ -763,7 +680,7 @@ const inventorySchema = new Schema(
ShipDecorations: [typeCountSchema],
//RailJack Setting(Mods,Skin,Weapon,etc)
- CrewShipHarnesses: [Schema.Types.Mixed],
+ CrewShipHarnesses: [EquipmentSchema],
//Railjack/Components(https://warframe.fandom.com/wiki/Railjack/Components)
CrewShipRawSalvage: [Schema.Types.Mixed],
@@ -790,7 +707,7 @@ const inventorySchema = new Schema(
FlavourItems: [FlavourItemSchema],
//Lunaro Weapon
- Scoops: [GenericItemSchema],
+ Scoops: [EquipmentSchema],
//Mastery Rank*(Need item XPInfo to rank up)
PlayerLevel: Number,
@@ -907,7 +824,7 @@ const inventorySchema = new Schema(
InvasionChainProgress: [Schema.Types.Mixed],
//https://warframe.fandom.com/wiki/Parazon
- DataKnives: [GenericItemSchema],
+ DataKnives: [EquipmentSchema],
//CorpusLich or GrineerLich
NemesisAbandonedRewards: [String],
@@ -1000,24 +917,24 @@ inventorySchema.set("toJSON", {
// type overwrites for subdocuments/subdocument arrays
type InventoryDocumentProps = {
- Suits: Types.DocumentArray;
- LongGuns: Types.DocumentArray;
- Pistols: Types.DocumentArray;
- Melee: Types.DocumentArray;
+ Suits: Types.DocumentArray;
+ LongGuns: Types.DocumentArray;
+ Pistols: Types.DocumentArray;
+ Melee: Types.DocumentArray;
FlavourItems: Types.DocumentArray;
RawUpgrades: Types.DocumentArray;
Upgrades: Types.DocumentArray;
MiscItems: Types.DocumentArray;
Boosters: Types.DocumentArray;
OperatorLoadOuts: Types.DocumentArray;
- SpecialItems: Types.DocumentArray;
+ SpecialItems: Types.DocumentArray;
AdultOperatorLoadOuts: Types.DocumentArray; //TODO: this should still contain _id
- MechSuits: Types.DocumentArray;
- Scoops: Types.DocumentArray;
- DataKnives: Types.DocumentArray;
- DrifterMelee: Types.DocumentArray;
- Sentinels: Types.DocumentArray;
- Horses: Types.DocumentArray;
+ MechSuits: Types.DocumentArray;
+ Scoops: Types.DocumentArray;
+ DataKnives: Types.DocumentArray;
+ DrifterMelee: Types.DocumentArray;
+ Sentinels: Types.DocumentArray;
+ Horses: Types.DocumentArray;
PendingRecipes: Types.DocumentArray;
};
diff --git a/src/models/inventoryModels/loadoutModel.ts b/src/models/inventoryModels/loadoutModel.ts
index 7bd2aaa1..a0cd68e1 100644
--- a/src/models/inventoryModels/loadoutModel.ts
+++ b/src/models/inventoryModels/loadoutModel.ts
@@ -1,5 +1,6 @@
import { IOid } from "@/src/types/commonTypes";
-import { ILoadoutConfigDatabase, ILoadoutDatabase, IEquipmentSelection } from "@/src/types/saveLoadoutTypes";
+import { IEquipmentSelection } from "@/src/types/inventoryTypes/commonInventoryTypes";
+import { ILoadoutConfigDatabase, ILoadoutDatabase } from "@/src/types/saveLoadoutTypes";
import { Model, Schema, Types, model } from "mongoose";
const oidSchema = new Schema(
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index e5f82b97..b06dcd14 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -2,9 +2,7 @@ import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
import new_inventory from "@/static/fixed_responses/postTutorialInventory.json";
import { config } from "@/src/services/configService";
import { Types } from "mongoose";
-import { ISuitClient } from "@/src/types/inventoryTypes/SuitTypes";
import { SlotNames } from "@/src/types/purchaseTypes";
-import { IWeaponClient } from "@/src/types/inventoryTypes/weaponTypes";
import {
IChallengeProgress,
IConsumable,
@@ -13,7 +11,7 @@ import {
IMiscItem,
IMission,
IRawUpgrade,
- ISeasonChallengeHistory,
+ ISeasonChallenge,
ITypeCount,
InventorySlot
} from "@/src/types/inventoryTypes/inventoryTypes";
@@ -27,6 +25,7 @@ import {
import { logger } from "@/src/utils/logger";
import { WeaponTypeInternal, getWeaponType, getExalted } from "@/src/services/itemDataService";
import { ISyndicateSacrifice, ISyndicateSacrificeResponse } from "../types/syndicateTypes";
+import { IEquipmentClient } from "../types/inventoryTypes/commonInventoryTypes";
export const createInventory = async (
accountOwnerId: Types.ObjectId,
@@ -237,7 +236,7 @@ export const addSentinel = async (sentinelName: string, accountId: string) => {
return changedInventory.Sentinels[sentinelIndex - 1].toJSON();
};
-export const addPowerSuit = async (powersuitName: string, accountId: string): Promise => {
+export const addPowerSuit = async (powersuitName: string, accountId: string): Promise => {
const specialItems = getExalted(powersuitName);
if (specialItems != false) {
for await (const specialItem of specialItems) {
@@ -386,7 +385,7 @@ export const addWeapon = async (
weaponType: WeaponTypeInternal,
weaponName: string,
accountId: string
-): Promise => {
+): Promise => {
const inventory = await getInventory(accountId);
let weaponIndex;
@@ -418,7 +417,7 @@ export const addCustomization = async (customizatonName: string, accountId: stri
const addGearExpByCategory = (
inventory: IInventoryDatabaseDocument,
- gearArray: ISuitClient[] | IWeaponClient[] | undefined,
+ gearArray: IEquipmentClient[] | undefined,
categoryName: "Pistols" | "LongGuns" | "Melee" | "Suits"
) => {
const category = inventory[categoryName];
@@ -534,7 +533,7 @@ export const updateChallengeProgress = async (challenges: IUpdateChallengeProgre
export const addSeasonalChallengeHistory = (
inventory: IInventoryDatabaseDocument,
- itemsArray: ISeasonChallengeHistory[] | undefined
+ itemsArray: ISeasonChallenge[] | undefined
) => {
const category = inventory.SeasonChallengeHistory;
diff --git a/src/types/inventoryTypes/SuitTypes.ts b/src/types/inventoryTypes/SuitTypes.ts
deleted file mode 100644
index 8fe48081..00000000
--- a/src/types/inventoryTypes/SuitTypes.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-import { IOid } from "@/src/types/commonTypes";
-import { IPolarity } from "@/src/types/inventoryTypes/commonInventoryTypes";
-import { Types } from "mongoose";
-import { IItemConfig } from "./commonInventoryTypes";
-
-export interface ISuitClient extends Omit {
- ItemId: IOid;
-}
-
-export interface ISuitDatabase {
- ItemType: string;
- Configs: IItemConfig[];
- UpgradeVer?: number;
- XP?: number;
- InfestationDate?: Date;
- Features?: number;
- Polarity?: IPolarity[];
- Polarized?: number;
- ModSlotPurchases?: number;
- CustomizationSlotPurchases?: number;
- FocusLens?: string;
- UnlockLevel?: number;
- _id: Types.ObjectId;
- ItemId?: IOid; // only in response
-}
diff --git a/src/types/inventoryTypes/commonInventoryTypes.ts b/src/types/inventoryTypes/commonInventoryTypes.ts
index b86cb719..8596c6e4 100644
--- a/src/types/inventoryTypes/commonInventoryTypes.ts
+++ b/src/types/inventoryTypes/commonInventoryTypes.ts
@@ -1,4 +1,4 @@
-import { IOid } from "@/src/types/commonTypes";
+import { IMongoDate, IOid } from "@/src/types/commonTypes";
import { Types } from "mongoose";
export interface IPolarity {
@@ -38,15 +38,8 @@ export interface ISlotsBin {
Slots: number;
}
-// ISigCol? IsIgCoL? ISIGCOL!
-export interface Isigcol {
- t0: number;
- t1: number;
- en: number;
-}
-
-interface IItemConfigBase {
- Skins: string[];
+export interface IItemConfig {
+ Skins?: string[];
pricol?: IColor;
attcol?: IColor;
sigcol?: IColor;
@@ -56,12 +49,7 @@ interface IItemConfigBase {
cloth?: IColor;
Upgrades?: string[];
Name?: string;
- ugly?: boolean;
-}
-
-//TODO: Proper names for the different config types, this should be something like
-//IItemConfigPlayable
-export interface IItemConfig extends IItemConfigBase {
+ OperatorAmp?: IOid;
Songs?: ISong[];
AbilityOverride?: IAbilityOverride;
PvpUpgrades?: string[];
@@ -74,14 +62,47 @@ export interface ISong {
p?: string;
s: string;
}
-
-//TODO: Consider renaming it to loadout instead of config
-export interface IOperatorConfigDatabase extends IItemConfigBase {
+export interface IOperatorConfigDatabase extends IItemConfig {
_id: Types.ObjectId;
- AbilityOverride?: IAbilityOverride; // not present in adultOperator
- OperatorAmp?: IOid; // not present in adultOperator
}
export interface IOperatorConfigClient extends Omit {
ItemId: IOid;
}
+
+export interface IEquipmentSelection {
+ ItemId: IOid;
+ mod?: number;
+ cus?: number;
+ ItemType?: string;
+ hide?: boolean;
+}
+
+export interface IEquipmentClient extends Omit {
+ ItemId: IOid;
+}
+
+export interface IEquipmentDatabase {
+ ItemType: string;
+ ItemName?: string;
+ Configs: IItemConfig[];
+ UpgradeVer?: number;
+ XP?: number;
+ Features?: number;
+ Polarized?: number;
+ Polarity?: IPolarity[];
+ FocusLens?: string;
+ ModSlotPurchases?: number;
+ CustomizationSlotPurchases?: number;
+ UpgradeType?: string;
+ UpgradeFingerprint?: string;
+ InfestationDate?: IMongoDate;
+ InfestationDays?: number;
+ InfestationType?: string;
+ ModularParts?: string[];
+ UnlockLevel?: number;
+ Expiry?: IMongoDate;
+ SkillTree?: string;
+ ArchonCrystalUpgrades?: []; //TODO
+ _id: Types.ObjectId;
+}
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index 3bc903cd..4b4f589a 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -2,15 +2,13 @@
import { Document, Types } from "mongoose";
import { IOid, IMongoDate } from "../commonTypes";
import {
- IAbilityOverride,
IColor,
FocusSchool,
- IPolarity,
IItemConfig,
- IOperatorConfigClient
+ IOperatorConfigClient,
+ IEquipmentSelection,
+ IEquipmentDatabase
} from "@/src/types/inventoryTypes/commonInventoryTypes";
-import { ISuitDatabase } from "@/src/types/inventoryTypes/SuitTypes";
-import { IOperatorLoadOutSigcol, IWeaponDatabase } from "@/src/types/inventoryTypes/weaponTypes";
//Document extends will be deleted soon. TODO: delete and migrate uses to ...
export interface IInventoryDatabaseDocument extends IInventoryDatabase, Document {}
@@ -61,48 +59,14 @@ export interface ITypeCount {
ItemCount: number;
}
-export interface IGenericItem2 {
- ItemType: string;
- ItemName: string;
- ItemId: IOid;
- XP: number;
- UpgradeVer: number;
- Features: number;
- Polarized: number;
- CustomizationSlotPurchases: number;
- ModSlotPurchases: number;
- FocusLens: string;
- Expiry: IMongoDate;
- Polarity: IPolarity[];
- Configs: IItemConfig[];
- ModularParts: string[];
- SkillTree: string;
- UpgradeType: string;
- UpgradeFingerprint: string;
- OffensiveUpgrade: string;
- DefensiveUpgrade: string;
- UpgradesExpiry: IMongoDate;
- ArchonCrystalUpgrades: [];
-}
-
-export interface IGenericItem {
- ItemType: string;
- XP?: number;
- Configs: IItemConfig[];
- UpgradeVer: number;
- ItemId: IOid;
- Features?: number;
- Polarity?: IPolarity[];
- Polarized?: number;
- ModSlotPurchases?: number;
- CustomizationSlotPurchases?: number;
-}
-
-export interface IGenericItemDatabase extends Omit {
- _id: Types.ObjectId;
-}
-
-export type TGenericItemKey = "Suits" | "LongGuns" | "Pistols" | "Melee";
+export type IEquipmentKey =
+ | "Suits"
+ | "LongGuns"
+ | "Pistols"
+ | "Melee"
+ | "SpecialItems"
+ | "Sentinels"
+ | "SentinelWeapons";
export interface IDuviriInfo {
Seed: number;
@@ -119,12 +83,12 @@ export interface IPendingRecipeResponse extends Omit;
Missions: IMission[];
- RandomUpgradesIdentified: number;
+ RandomUpgradesIdentified?: number;
LastRegionPlayed: string;
XPInfo: ITypeXPItem[];
Recipes: ITypeCount[];
@@ -198,14 +162,14 @@ export interface IInventoryResponse {
Affiliations: IAffiliation[];
QualifyingInvasions: any[];
FactionScores: number[];
- SpaceSuits: IGenericItem[];
- SpaceMelee: IGenericItem[];
- SpaceGuns: ISpaceGun[];
+ SpaceSuits: IEquipmentDatabase[];
+ SpaceMelee: IEquipmentDatabase[];
+ SpaceGuns: IEquipmentDatabase[];
ArchwingEnabled: boolean;
PendingSpectreLoadouts: any[];
SpectreLoadouts: ISpectreLoadout[];
- SentinelWeapons: IWeaponDatabase[];
- Sentinels: IWeaponDatabase[];
+ SentinelWeapons: IEquipmentDatabase[];
+ Sentinels: IEquipmentDatabase[];
EmailItems: ITypeXPItem[];
CompletedSyndicates: string[];
FocusXP: IFocusXP;
@@ -216,7 +180,7 @@ export interface IInventoryResponse {
Drones: IDrone[];
StepSequencers: IStepSequencer[];
ActiveAvatarImageType: string;
- KubrowPets: IKubrowPet[];
+ KubrowPets: IEquipmentDatabase[];
ShipDecorations: IConsumable[];
DailyAffiliationCetus: number;
DailyAffiliationQuills: number;
@@ -224,14 +188,14 @@ export interface IInventoryResponse {
CompletedJobs: ICompletedJob[];
FocusAbility: string;
FocusUpgrades: IFocusUpgrade[];
- OperatorAmps: IOperatorAmp[];
- HasContributedToDojo: boolean;
+ OperatorAmps: IEquipmentDatabase[];
+ HasContributedToDojo?: boolean;
HWIDProtectEnabled: boolean;
KubrowPetPrints: IKubrowPetPrint[];
AlignmentReplay: IAlignment;
PersonalGoalProgress: IPersonalGoalProgress[];
DailyAffiliationSolaris: number;
- SpecialItems: IGenericItem[];
+ SpecialItems: IEquipmentDatabase[];
ThemeStyle: string;
ThemeBackground: string;
ThemeSounds: string;
@@ -242,17 +206,17 @@ export interface IInventoryResponse {
DailyAffiliationVentkids: number;
DailyAffiliationVox: number;
RecentVendorPurchases: Array;
- Hoverboards: IHoverboard[];
+ Hoverboards: IEquipmentDatabase[];
NodeIntrosCompleted: string[];
GuildId?: IOid;
CompletedJobChains: ICompletedJobChain[];
- SeasonChallengeHistory: ISeasonChallengeHistory[];
- MoaPets: IMoaPet[];
+ SeasonChallengeHistory: ISeasonChallenge[];
+ MoaPets: IEquipmentDatabase[];
EquippedInstrument: string;
InvasionChainProgress: IInvasionChainProgress[];
- DataKnives: IGenericItem[];
+ DataKnives: IEquipmentDatabase[];
NemesisHistory: INemesisHistory[];
- LastNemesisAllySpawnTime: IMongoDate;
+ LastNemesisAllySpawnTime?: IMongoDate;
Settings: ISettings;
PersonalTechProjects: IPersonalTechProject[];
CrewShips: ICrewShip[];
@@ -262,15 +226,15 @@ export interface IInventoryResponse {
CrewShipWeapons: ICrewShipWeapon[];
CrewShipSalvagedWeapons: ICrewShipWeapon[];
CrewShipWeaponSkins: ICrewShipSalvagedWeaponSkin[];
- TradeBannedUntil: IMongoDate;
+ TradeBannedUntil?: IMongoDate;
PlayedParkourTutorial: boolean;
SubscribedToEmailsPersonalized: number;
DailyAffiliationEntrati: number;
DailyAffiliationNecraloid: number;
- MechSuits: ISuitDatabase[];
+ MechSuits: IEquipmentDatabase[];
InfestedFoundry: IInfestedFoundry;
BlessingCooldown: IMongoDate;
- CrewShipHarnesses: ICrewShipHarness[];
+ CrewShipHarnesses: IEquipmentDatabase[];
CrewShipRawSalvage: IConsumable[];
CrewMembers: ICrewMember[];
AdultOperatorLoadOuts: IOperatorConfigClient[];
@@ -297,16 +261,6 @@ export interface IInventoryResponse {
DeathSquadable: boolean;
}
-export interface IAdultOperatorLoadOut {
- Skins: string[];
- attcol: IColor;
- eyecol: IColor;
- facial: IColor;
- pricol: IColor;
- Upgrades?: string[];
- ItemId: IOid;
-}
-
export interface IAffiliation {
Initiated?: boolean;
Standing: number;
@@ -384,14 +338,11 @@ export interface ICrewMember {
WeaponId: IOid;
XP: number;
PowersuitType: string;
- Configs: ICrewMemberConfig[];
+ Configs: IItemConfig[];
SecondInCommand: boolean;
ItemId: IOid;
}
-// eslint-disable-next-line @typescript-eslint/no-empty-interface
-export interface ICrewMemberConfig {}
-
export interface ISkillEfficiency {
PILOTING: ICombat;
GUNNERY: ICombat;
@@ -404,21 +355,6 @@ export interface ICombat {
Assigned: number;
}
-export interface ICrewShipHarness {
- ItemType: string;
- Configs: ICrewShipHarnessConfig[];
- Features: number;
- UpgradeVer: number;
- XP: number;
- Polarity: IPolarity[];
- Polarized: number;
- ItemId: IOid;
-}
-
-export interface ICrewShipHarnessConfig {
- Upgrades?: string[];
-}
-
export enum InventorySlot {
SUITS = "SuitBin",
WEAPONS = "WeaponBin",
@@ -443,25 +379,21 @@ export interface ICrewShipWeapon {
ItemType: string;
UpgradeType?: string;
UpgradeFingerprint?: string;
- Configs?: ICrewShipHarnessConfig[];
+ Configs?: IItemConfig[];
UpgradeVer?: number;
ItemId: IOid;
}
export interface ICrewShip {
ItemType: string;
- Configs: ICrewShipConfig[];
+ Configs: IItemConfig[];
Weapon: ICrewshipWeapon;
Customization: ICustomization;
ItemName: string;
RailjackImage: IFlavourItem;
CrewMembers: ICrewMembers;
ItemId: IOid;
-}
-
-export interface ICrewShipConfig {
- Skins?: string[];
- pricol?: IColor;
+ _id: Types.ObjectId;
}
export interface ICrewMembers {
@@ -484,16 +416,6 @@ export interface IShipExterior {
ShipAttachments?: IShipAttachments;
}
-//TODO: check whether it makes sense to use this specifity of color.
-export interface IShipExteriorColors {
- t0: number;
- t1: number;
- t2: number;
- t3: number;
- m0: number;
- en: number;
-}
-
export interface IShipAttachments {
HOOD_ORNAMENT: string; //TODO: Others are probably possible
}
@@ -512,22 +434,12 @@ export interface ICrewshipWeapon {
PORT_GUNS: IPortGuns;
}
-export interface IPilot {
- PRIMARY_A: IL;
- SECONDARY_A: IL;
-}
-
-// L? Bozo.
-export interface IL {
- ItemId?: IOid;
- mod?: number;
- cus?: number;
- ItemType?: string;
- hide?: boolean;
-}
-
export interface IPortGuns {
- PRIMARY_A: IL;
+ PRIMARY_A: IEquipmentSelection;
+}
+
+export interface IPilot extends IPortGuns {
+ SECONDARY_A: IEquipmentSelection;
}
export interface IDiscoveredMarker {
@@ -569,38 +481,6 @@ export interface IFusionTreasure {
Sockets: number;
}
-export interface IHoverboard {
- ItemType: string;
- Configs: IHoverboardConfig[];
- ModularParts: string[];
- ItemName?: string;
- Polarity?: IPolarity[];
- UpgradeVer: number;
- XP: number;
- Features: number;
- ItemId: IOid;
-}
-
-export interface IHoverboardConfig {
- Upgrades?: string[];
- Skins?: IPurpleSkin[];
- pricol?: IColor;
- sigcol?: ISigcol;
- attcol?: IColor;
-}
-
-export enum IPurpleSkin {
- Empty = "",
- The5Be4Af71A38E4A9306040E15 = "5be4af71a38e4a9306040e15",
- The5C930Ac3A38E4A24Bc3Ad5De = "5c930ac3a38e4a24bc3ad5de",
- The5C9C6F9857904A7A3B25656B = "5c9c6f9857904a7a3b25656b",
- The5Dd8A8E3A38E4A321A45E6A0 = "5dd8a8e3a38e4a321a45e6a0"
-}
-
-export interface ISigcol {
- t3: number;
-}
-
export interface IInfestedFoundry {
Name: string;
Resources: ITypeCount[];
@@ -653,44 +533,13 @@ export interface ITraits {
Personality: string;
BodyType: string;
Head?: string;
- Tail?: Tail;
-}
-
-export enum Tail {
- Empty = "",
- LotusTypesGameCatbrowPetTailsCatbrowTailA = "/Lotus/Types/Game/CatbrowPet/Tails/CatbrowTailA",
- LotusTypesGameCatbrowPetTailsCatbrowTailB = "/Lotus/Types/Game/CatbrowPet/Tails/CatbrowTailB",
- LotusTypesGameCatbrowPetTailsCatbrowTailC = "/Lotus/Types/Game/CatbrowPet/Tails/CatbrowTailC",
- LotusTypesGameCatbrowPetTailsCatbrowTailD = "/Lotus/Types/Game/CatbrowPet/Tails/CatbrowTailD"
+ Tail?: string;
}
export enum KubrowPetPrintItemType {
LotusTypesGameKubrowPetImprintedTraitPrint = "/Lotus/Types/Game/KubrowPet/ImprintedTraitPrint"
}
-export interface IKubrowPet {
- ItemType: string;
- Configs: IKubrowPetConfig[];
- UpgradeVer: number;
- Details: IDetails;
- XP?: number;
- Polarized?: number;
- Polarity?: IPolarity[];
- Features?: number;
- InfestationDate?: IMongoDate;
- InfestationDays?: number;
- InfestationType?: string;
- ItemId: IOid;
- ModularParts?: string[];
-}
-
-export interface IKubrowPetConfig {
- Skins?: string[];
- pricol?: IColor;
- attcol?: IColor;
- Upgrades?: string[];
-}
-
export interface IDetails {
Name: string;
IsPuppy: boolean;
@@ -733,74 +582,32 @@ export interface ILibraryPersonalProgress {
//this needs to be checked against ILoadoutDatabase
export interface ILoadOutPresets {
- NORMAL: INormal[];
- NORMAL_PVP: IArchwing[];
- LUNARO: ILunaro[];
- ARCHWING: IArchwing[];
- SENTINEL: IArchwing[];
- OPERATOR: IArchwing[];
- GEAR: IGear[];
- KDRIVE: IKdrive[];
- DATAKNIFE: IArchwing[];
- MECH: IMech[];
- OPERATOR_ADULT: IArchwing[];
+ NORMAL: ILoadoutConfigClient[];
+ NORMAL_PVP: ILoadoutConfigClient[];
+ LUNARO: ILoadoutConfigClient[];
+ ARCHWING: ILoadoutConfigClient[];
+ SENTINEL: ILoadoutConfigClient[];
+ OPERATOR: ILoadoutConfigClient[];
+ GEAR: ILoadoutConfigClient[];
+ KDRIVE: ILoadoutConfigClient[];
+ DATAKNIFE: ILoadoutConfigClient[];
+ MECH: ILoadoutConfigClient[];
+ OPERATOR_ADULT: ILoadoutConfigClient[];
}
-export interface IArchwing {
- PresetIcon: string;
- Favorite: boolean;
- n?: string;
- s: IL;
- l?: IL;
- m?: IL;
- ItemId: IOid;
- p?: IL;
-}
-
-export interface IGear {
- n: string;
- s: IL;
- p: IL;
- l: IL;
- m: IL;
- ItemId: IOid;
-}
-
-export interface IKdrive {
- PresetIcon: string;
- Favorite: boolean;
- s: IL;
- ItemId: IOid;
-}
-
-export interface ILunaro {
- n: string;
- s: IL;
- m: IL;
- ItemId: IOid;
-}
-
-export interface IMech {
- PresetIcon: string;
- Favorite: boolean;
- s: IL;
- h: IL;
- a: IL;
- ItemId: IOid;
-}
-
-export interface INormal {
- FocusSchool: FocusSchool;
- PresetIcon: string;
- Favorite: boolean;
- n: string;
- s: IL;
- p: IL;
- l: IL;
- m: IL;
- h: IL;
- a?: IL;
+export interface ILoadoutConfigClient {
+ FocusSchool?: FocusSchool;
+ PresetIcon?: string;
+ Favorite?: boolean;
+ n?: string; // Loadout name
+ s?: IEquipmentSelection; // Suit
+ p?: IEquipmentSelection;
+ l?: IEquipmentSelection; // Primary weapon
+ m?: IEquipmentSelection; // Melee weapon
+ h?: IEquipmentSelection; // Gravimag weapon
+ a?: IEquipmentSelection;
ItemId: IOid;
+ Remove?: boolean; // when client wants to remove a config, it only includes ItemId & Remove.
}
export enum UpgradeType {
@@ -813,16 +620,7 @@ export interface ILoreFragmentScan {
ItemType: string;
}
-export interface ILotusCustomization {
- Upgrades: any[];
- PvpUpgrades: any[];
- Skins: string[];
- pricol: IColor;
- attcol: any[];
- sigcol: any[];
- eyecol: any[];
- facial: any[];
- Songs: any[];
+export interface ILotusCustomization extends IItemConfig {
Persona: string;
}
@@ -833,18 +631,6 @@ export interface IMission {
RewardsCooldownTime?: IMongoDate;
}
-export interface IMoaPet {
- ItemType: string;
- Configs: IKubrowPetConfig[];
- UpgradeVer: number;
- ModularParts: string[];
- XP?: number;
- Features?: number;
- ItemName: string;
- Polarity?: IPolarity[];
- ItemId: IOid;
-}
-
export interface INemesisHistory {
fp: number;
manifest: Manifest;
@@ -879,30 +665,6 @@ export enum Manifest {
LotusTypesGameNemesisKuvaLichKuvaLichManifestVersionTwo = "/Lotus/Types/Game/Nemesis/KuvaLich/KuvaLichManifestVersionTwo"
}
-export interface IOperatorAmp {
- ItemType: string;
- Configs: IKubrowPetConfig[];
- ModularParts?: string[];
- XP?: number;
- UpgradeVer?: number;
- ItemName?: string;
- Features?: number;
- ItemId: IOid;
-}
-
-export interface IOperatorLoadOut {
- Skins: string[];
- pricol?: IColor;
- attcol?: IColor;
- eyecol: IColor;
- facial?: IColor;
- sigcol?: IOperatorLoadOutSigcol;
- OperatorAmp?: IOid;
- Upgrades?: string[];
- AbilityOverride: IAbilityOverride;
- ItemId: IOid;
-}
-
export interface IPendingCoupon {
Expiry: IMongoDate;
Discount: number;
@@ -1031,12 +793,7 @@ export interface IRawUpgrade {
LastAdded?: IOid;
}
-export interface ISeasonChallengeHistory {
- challenge: string;
- id: string;
-}
-
-export interface ISeasonChallengeCompletions {
+export interface ISeasonChallenge {
challenge: string;
id: string;
}
@@ -1060,30 +817,6 @@ export interface IShipInventory {
ItemId: IOid;
}
-export interface ISpaceGun {
- ItemType: string;
- Configs: ISpaceGunConfig[];
- XP?: number;
- UpgradeVer?: number;
- ItemId: IOid;
- Features?: number;
- Polarized?: number;
- Polarity?: IPolarity[];
- UpgradeType?: UpgradeType;
- UpgradeFingerprint?: string;
- ItemName?: string;
-}
-
-export interface ISpaceGunConfig {
- Skins?: string[];
- pricol?: IColor;
- Upgrades?: string[];
-}
-
-export interface IPurpleCol {
- en: number;
-}
-
export interface ISpectreLoadout {
LongGuns: string;
Melee: string;
diff --git a/src/types/inventoryTypes/weaponTypes.ts b/src/types/inventoryTypes/weaponTypes.ts
deleted file mode 100644
index 46d11d01..00000000
--- a/src/types/inventoryTypes/weaponTypes.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-import { IOid } from "@/src/types/commonTypes";
-import { IItemConfig } from "./commonInventoryTypes";
-import { IPolarity } from "@/src/types/inventoryTypes/commonInventoryTypes";
-import { Types } from "mongoose";
-
-export interface IWeaponClient extends Omit {
- ItemId: IOid;
-}
-
-export interface IWeaponDatabase {
- ItemType: string;
- Configs: IItemConfig[];
- UpgradeVer?: number;
- XP?: number;
- Features?: number;
- Polarized?: number;
- Polarity?: IPolarity[];
- FocusLens?: string;
- ModSlotPurchases?: number;
- CustomizationSlotPurchases?: number;
- UpgradeType?: string;
- UpgradeFingerprint?: string;
- ItemName?: string;
- ModularParts?: string[];
- UnlockLevel?: number;
- _id: Types.ObjectId;
-}
-
-export interface IOperatorLoadOutSigcol {
- t0?: number;
- t1?: number;
- en?: number;
-}
diff --git a/src/types/purchaseTypes.ts b/src/types/purchaseTypes.ts
index 73ee085c..db143470 100644
--- a/src/types/purchaseTypes.ts
+++ b/src/types/purchaseTypes.ts
@@ -1,6 +1,5 @@
-import { ISuitClient } from "@/src/types/inventoryTypes/SuitTypes";
import { IFlavourItem } from "@/src/types/inventoryTypes/inventoryTypes";
-import { IWeaponClient } from "@/src/types/inventoryTypes/weaponTypes";
+import { IEquipmentClient } from "./inventoryTypes/commonInventoryTypes";
export interface IPurchaseRequest {
PurchaseParams: IPurchaseParams;
@@ -23,11 +22,11 @@ export interface IPurchaseResponse {
SuitBin?: IBinChanges;
WeaponBin?: IBinChanges;
MechBin?: IBinChanges;
- MechSuits?: ISuitClient[];
- Suits?: ISuitClient[];
- LongGuns?: IWeaponClient[];
- Pistols?: IWeaponClient[];
- Melee?: IWeaponClient[];
+ MechSuits?: IEquipmentClient[];
+ Suits?: IEquipmentClient[];
+ LongGuns?: IEquipmentClient[];
+ Pistols?: IEquipmentClient[];
+ Melee?: IEquipmentClient[];
PremiumCredits?: number;
PremiumCreditsFree?: number;
RegularCredits?: number;
diff --git a/src/types/requestTypes.ts b/src/types/requestTypes.ts
index 78ea111f..6dc35b76 100644
--- a/src/types/requestTypes.ts
+++ b/src/types/requestTypes.ts
@@ -1,5 +1,5 @@
import { IOid } from "./commonTypes";
-import { IPolarity, FocusSchool } from "@/src/types/inventoryTypes/commonInventoryTypes";
+import { IPolarity, FocusSchool, IEquipmentClient } from "@/src/types/inventoryTypes/commonInventoryTypes";
import {
IBooster,
IChallengeProgress,
@@ -8,11 +8,8 @@ import {
IMiscItem,
IMission,
IRawUpgrade,
- ISeasonChallengeCompletions,
- ISeasonChallengeHistory
+ ISeasonChallenge
} from "./inventoryTypes/inventoryTypes";
-import { IWeaponClient } from "./inventoryTypes/weaponTypes";
-import { ISuitClient } from "./inventoryTypes/SuitTypes";
export interface IArtifactsRequest {
Upgrade: ICrewShipSalvagedWeaponSkin;
@@ -35,18 +32,18 @@ export interface IAffiliationChange {
export interface IUpdateChallengeProgressRequest {
ChallengeProgress: IChallengeProgress[];
- SeasonChallengeHistory: ISeasonChallengeHistory[];
- SeasonChallengeCompletions: ISeasonChallengeCompletions[];
+ SeasonChallengeHistory: ISeasonChallenge[];
+ SeasonChallengeCompletions: ISeasonChallenge[];
}
export interface IMissionInventoryUpdateRequest {
rewardsMultiplier?: number;
ActiveBoosters?: IBooster[];
AffiliationChanges?: IAffiliationChange[];
- LongGuns?: IWeaponClient[];
- Pistols?: IWeaponClient[];
- Suits?: ISuitClient[];
- Melee?: IWeaponClient[];
+ LongGuns?: IEquipmentClient[];
+ Pistols?: IEquipmentClient[];
+ Suits?: IEquipmentClient[];
+ Melee?: IEquipmentClient[];
RawUpgrades?: IRawUpgrade[];
MiscItems?: IMiscItem[];
Consumables?: IConsumable[];
diff --git a/src/types/saveLoadoutTypes.ts b/src/types/saveLoadoutTypes.ts
index 09577594..4f434eef 100644
--- a/src/types/saveLoadoutTypes.ts
+++ b/src/types/saveLoadoutTypes.ts
@@ -1,6 +1,7 @@
import { IOid } from "@/src/types/commonTypes";
import { IItemConfig, IOperatorConfigClient } from "@/src/types/inventoryTypes/commonInventoryTypes";
import { Types } from "mongoose";
+import { ILoadoutConfigClient } from "./inventoryTypes/inventoryTypes";
export interface ISaveLoadoutRequest {
LoadOuts: ILoadoutClient;
@@ -72,23 +73,3 @@ export interface ILoadoutEntry {
export interface ILoadoutConfigDatabase extends Omit {
_id: Types.ObjectId;
}
-
-// for request and response from and to client
-export interface ILoadoutConfigClient {
- ItemId: IOid;
- Remove?: boolean; // when client wants to remove a config, it only includes ItemId & Remove.
- n?: string;
- PresetIcon?: string;
- Favorite?: boolean;
- s?: IEquipmentSelection;
- p?: IEquipmentSelection;
- l?: IEquipmentSelection;
- m?: IEquipmentSelection;
-}
-
-export interface IEquipmentSelection {
- ItemId?: IOid;
- mod?: number;
- cus?: number;
- hide?: boolean;
-}
From 96fa616f3da697a8bfee6666248d97d601ae9140 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sun, 16 Jun 2024 17:56:51 +0200
Subject: [PATCH 13/38] improve: save loadouts for all item types (#306)
---
src/services/saveLoadoutService.ts | 26 +++++++++++++-------------
1 file changed, 13 insertions(+), 13 deletions(-)
diff --git a/src/services/saveLoadoutService.ts b/src/services/saveLoadoutService.ts
index c08a47b3..502a0e63 100644
--- a/src/services/saveLoadoutService.ts
+++ b/src/services/saveLoadoutService.ts
@@ -132,7 +132,19 @@ export const handleInventoryItemConfigChange = async (
case "DataKnives":
case "DrifterMelee":
case "Sentinels":
- case "Horses": {
+ case "Horses":
+ case "OperatorAmps":
+ case "SentinelWeapons":
+ case "KubrowPets":
+ case "SpaceSuits":
+ case "SpaceGuns":
+ case "SpaceMelee":
+ case "SpecialItems":
+ case "MoaPets":
+ case "Hoverboards":
+ case "MechSuits":
+ case "CrewShipHarnesses":
+ case "CrewShips": {
logger.debug(`general Item config saved of type ${equipmentName}`, { config: equipment });
const itemEntries = equipment as IItemEntry;
@@ -162,18 +174,6 @@ export const handleInventoryItemConfigChange = async (
default: {
logger.error(`category not implemented: ${equipmentName}`, { config: equipment });
}
- //case "OperatorAmps":
- // case "SentinelWeapons":
- // case "KubrowPets":
- // case "SpaceSuits":
- // case "SpaceGuns":
- // case "SpaceMelee":
- // case "SpecialItems":
- // case "MoaPets":
- // case "Hoverboards":
- // case "MechSuits":
- // case "CrewShipHarnesses":
- // case "CrewShips":
//case "KahlLoadOuts": not sure yet how to handle kahl: it is not sent in inventory
}
}
From b3794821c479b0f00ce2067e098f0a3bcb8712b2 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sun, 16 Jun 2024 21:49:41 +0200
Subject: [PATCH 14/38] feat: custom item names (#307)
---
src/controllers/api/nameWeaponController.ts | 27 ++++++
src/controllers/api/upgradesController.ts | 16 ++--
src/routes/api.ts | 2 +
src/types/inventoryTypes/inventoryTypes.ts | 2 +-
static/webui/script.js | 96 ++++++++++++++-------
static/webui/style.css | 7 ++
6 files changed, 109 insertions(+), 41 deletions(-)
create mode 100644 src/controllers/api/nameWeaponController.ts
diff --git a/src/controllers/api/nameWeaponController.ts b/src/controllers/api/nameWeaponController.ts
new file mode 100644
index 00000000..7543cbc4
--- /dev/null
+++ b/src/controllers/api/nameWeaponController.ts
@@ -0,0 +1,27 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getInventory, updateCurrency } from "@/src/services/inventoryService";
+import { getJSONfromString } from "@/src/helpers/stringHelpers";
+import { TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
+
+interface INameWeaponRequest {
+ ItemName: string;
+}
+
+export const nameWeaponController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const inventory = await getInventory(accountId);
+ const body = getJSONfromString(req.body.toString()) as INameWeaponRequest;
+ const item = inventory[req.query.Category as string as TEquipmentKey].find(
+ item => item._id.toString() == (req.query.ItemId as string)
+ )!;
+ if (body.ItemName != "") {
+ item.ItemName = body.ItemName;
+ } else {
+ item.ItemName = undefined;
+ }
+ await inventory.save();
+ res.json({
+ InventoryChanges: await updateCurrency("webui" in req.query ? 0 : 15, true, accountId)
+ });
+};
diff --git a/src/controllers/api/upgradesController.ts b/src/controllers/api/upgradesController.ts
index 88c01dc7..25b548e6 100644
--- a/src/controllers/api/upgradesController.ts
+++ b/src/controllers/api/upgradesController.ts
@@ -1,7 +1,7 @@
import { RequestHandler } from "express";
import { IUpgradesRequest } from "@/src/types/requestTypes";
import { FocusSchool, IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes";
-import { IMiscItem, IEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
+import { IMiscItem, TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
@@ -28,7 +28,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
switch (operation.UpgradeRequirement) {
case "/Lotus/Types/Items/MiscItems/OrokinReactor":
case "/Lotus/Types/Items/MiscItems/OrokinCatalyst":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 1;
@@ -38,7 +38,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
break;
case "/Lotus/Types/Items/MiscItems/UtilityUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponUtilityUnlocker":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 2;
@@ -49,7 +49,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
case "/Lotus/Types/Items/MiscItems/WeaponPrimaryArcaneUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponSecondaryArcaneUnlocker":
case "/Lotus/Types/Items/MiscItems/WeaponMeleeArcaneUnlocker":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
item.Features |= 32;
@@ -61,7 +61,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
case "/Lotus/Types/Items/MiscItems/FormaUmbra":
case "/Lotus/Types/Items/MiscItems/FormaAura":
case "/Lotus/Types/Items/MiscItems/FormaStance":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.XP = 0;
setSlotPolarity(item, operation.PolarizeSlot, operation.PolarizeValue);
@@ -72,7 +72,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
}
break;
case "/Lotus/Types/Items/MiscItems/ModSlotUnlocker":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.ModSlotPurchases ??= 0;
item.ModSlotPurchases += 1;
@@ -87,7 +87,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
}
break;
case "/Lotus/Types/Items/MiscItems/CustomizationSlotUnlocker":
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.CustomizationSlotPurchases ??= 0;
item.CustomizationSlotPurchases += 1;
@@ -103,7 +103,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
break;
case "":
console.assert(operation.OperationType == "UOT_SWAP_POLARITY");
- for (const item of inventory[payload.ItemCategory as IEquipmentKey] as IEquipmentDatabase[]) {
+ for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
for (let i = 0; i != operation.PolarityRemap.length; ++i) {
if (operation.PolarityRemap[i].Slot != i) {
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 2ed9bdcb..8a059bfe 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -55,6 +55,7 @@ import { getGuildDojoController } from "@/src/controllers/api/getGuildDojoContro
import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
import { queueDojoComponentDestructionController } from "@/src/controllers/api/queueDojoComponentDestructionController";
+import { nameWeaponController } from "@/src/controllers/api/nameWeaponController";
const apiRouter = express.Router();
@@ -120,5 +121,6 @@ apiRouter.post("/upgrades.php", upgradesController);
apiRouter.post("/guildTech.php", guildTechController);
apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
+apiRouter.post("/nameWeapon.php", nameWeaponController);
export { apiRouter };
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index 4b4f589a..ec492353 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -59,7 +59,7 @@ export interface ITypeCount {
ItemCount: number;
}
-export type IEquipmentKey =
+export type TEquipmentKey =
| "Suits"
| "LongGuns"
| "Pistols"
diff --git a/static/webui/script.js b/static/webui/script.js
index 0475a730..6a9d525d 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -132,6 +132,9 @@ function updateInventory() {
{
const td = document.createElement("td");
td.textContent = itemMap[item.ItemType]?.name ?? item.ItemType;
+ if (item.ItemName) {
+ td.textContent = item.ItemName + " (" + td.textContent + ")";
+ }
tr.appendChild(td);
}
{
@@ -144,12 +147,21 @@ function updateInventory() {
event.preventDefault();
addGearExp("Suits", item.ItemId.$oid, 1_600_000 - item.XP);
};
- a.textContent = "Make Rank 30";
+ a.title = "Make Rank 30";
+ a.innerHTML = ` `;
+ td.appendChild(a);
+ }
+ {
+ const a = document.createElement("a");
+ a.href = "#";
+ a.onclick = function (event) {
+ event.preventDefault();
+ const name = prompt("Enter new custom name:");
+ renameGear("Suits", item.ItemId.$oid, name);
+ };
+ a.title = "Rename";
+ a.innerHTML = ` `;
td.appendChild(a);
-
- const span = document.createElement("span");
- span.innerHTML = " · ";
- td.appendChild(span);
}
{
const a = document.createElement("a");
@@ -158,7 +170,8 @@ function updateInventory() {
event.preventDefault();
disposeOfGear("Suits", item.ItemId.$oid);
};
- a.textContent = "Remove";
+ a.title = "Remove";
+ a.innerHTML = ` `;
td.appendChild(a);
}
tr.appendChild(td);
@@ -173,6 +186,9 @@ function updateInventory() {
{
const td = document.createElement("td");
td.textContent = itemMap[item.ItemType]?.name ?? item.ItemType;
+ if (item.ItemName) {
+ td.textContent = item.ItemName + " (" + td.textContent + ")";
+ }
tr.appendChild(td);
}
{
@@ -185,12 +201,21 @@ function updateInventory() {
event.preventDefault();
addGearExp(category, item.ItemId.$oid, 800_000 - item.XP);
};
- a.textContent = "Make Rank 30";
+ a.title = "Make Rank 30";
+ a.innerHTML = ` `;
+ td.appendChild(a);
+ }
+ {
+ const a = document.createElement("a");
+ a.href = "#";
+ a.onclick = function (event) {
+ event.preventDefault();
+ const name = prompt("Enter new custom name:");
+ renameGear(category, item.ItemId.$oid, name);
+ };
+ a.title = "Rename";
+ a.innerHTML = ` `;
td.appendChild(a);
-
- const span = document.createElement("span");
- span.innerHTML = " · ";
- td.appendChild(span);
}
{
const a = document.createElement("a");
@@ -199,7 +224,8 @@ function updateInventory() {
event.preventDefault();
disposeOfGear(category, item.ItemId.$oid);
};
- a.textContent = "Remove";
+ a.title = "Remove";
+ a.innerHTML = ` `;
td.appendChild(a);
}
tr.appendChild(td);
@@ -241,14 +267,10 @@ function updateInventory() {
})
);
a.target = "_blank";
- a.textContent = "View Stats";
+ a.title = "View Stats";
+ a.innerHTML = ` `;
td.appendChild(a);
}
- {
- const span = document.createElement("span");
- span.innerHTML = " · ";
- td.appendChild(span);
- }
{
const a = document.createElement("a");
a.href = "#";
@@ -256,7 +278,8 @@ function updateInventory() {
event.preventDefault();
disposeOfGear("Upgrades", item.ItemId.$oid);
};
- a.textContent = "Remove";
+ a.title = "Remove";
+ a.innerHTML = ` `;
td.appendChild(a);
}
tr.appendChild(td);
@@ -282,12 +305,9 @@ function updateInventory() {
event.preventDefault();
setFingerprint(item.ItemType, item.ItemId, { lvl: maxRank });
};
- a.textContent = "Max Rank";
+ a.title = "Max Rank";
+ a.innerHTML = ` `;
td.appendChild(a);
-
- const span = document.createElement("span");
- span.innerHTML = " · ";
- td.appendChild(span);
}
{
const a = document.createElement("a");
@@ -296,7 +316,8 @@ function updateInventory() {
event.preventDefault();
disposeOfGear("Upgrades", item.ItemId.$oid);
};
- a.textContent = "Remove";
+ a.title = "Remove";
+ a.innerHTML = ` `;
td.appendChild(a);
}
tr.appendChild(td);
@@ -327,14 +348,10 @@ function updateInventory() {
event.preventDefault();
setFingerprint(item.ItemType, item.LastAdded, { lvl: maxRank });
};
- a.textContent = "Max Rank";
+ a.title = "Max Rank";
+ a.innerHTML = ` `;
td.appendChild(a);
}
- {
- const span = document.createElement("span");
- span.innerHTML = " · ";
- td.appendChild(span);
- }
{
const a = document.createElement("a");
a.href = "#";
@@ -342,7 +359,8 @@ function updateInventory() {
event.preventDefault();
disposeOfItems("Upgrades", item.ItemType, item.ItemCount);
};
- a.textContent = "Remove";
+ a.title = "Remove";
+ a.innerHTML = ` `;
td.appendChild(a);
}
tr.appendChild(td);
@@ -432,6 +450,20 @@ function addGearExp(category, oid, xp) {
});
}
+function renameGear(category, oid, name) {
+ revalidateAuthz(() => {
+ $.post({
+ url: "/api/nameWeapon.php?" + window.authz + "&Category=" + category + "&ItemId=" + oid + "&webui=1",
+ contentType: "text/plain",
+ data: JSON.stringify({
+ ItemName: name
+ })
+ }).done(function () {
+ updateInventory();
+ });
+ });
+}
+
function disposeOfGear(category, oid) {
const data = {
SellCurrency: "SC_RegularCredits",
diff --git a/static/webui/style.css b/static/webui/style.css
index 119d4fd2..341588cd 100644
--- a/static/webui/style.css
+++ b/static/webui/style.css
@@ -20,3 +20,10 @@ body:not(.logged-in) .nav-item.dropdown,
body:not(.logged-in) #refresh-note {
display: none;
}
+
+td.text-end > a > svg {
+ fill: currentColor;
+ height: 1em;
+ margin-left: 0.5em;
+ margin-bottom: 4px; /* to centre the icon */
+}
From 1dc1a9aec82bb318f6e786ea6a5ed05faabcedf1 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sun, 16 Jun 2024 23:02:44 +0200
Subject: [PATCH 15/38] fix: being bugged about "new quests available" despite
completeAllQuests (#309)
---
src/controllers/api/inventoryController.ts | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts
index 4aa44387..40b8ba7c 100644
--- a/src/controllers/api/inventoryController.ts
+++ b/src/controllers/api/inventoryController.ts
@@ -60,6 +60,14 @@ const inventoryController: RequestHandler = async (request: Request, response: R
if (config.completeAllQuests) {
for (const quest of inventoryResponse.QuestKeys) {
quest.Completed = true;
+ quest.Progress = [
+ {
+ c: 0,
+ i: false,
+ m: false,
+ b: []
+ }
+ ];
}
}
From 92e12a6d034d9b9e838123616644934fbfdecbd1 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Sun, 16 Jun 2024 23:57:30 +0200
Subject: [PATCH 16/38] improve: completeAllQuests (#311)
---
src/controllers/api/inventoryController.ts | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts
index 40b8ba7c..6d12b5f7 100644
--- a/src/controllers/api/inventoryController.ts
+++ b/src/controllers/api/inventoryController.ts
@@ -69,6 +69,11 @@ const inventoryController: RequestHandler = async (request: Request, response: R
}
];
}
+
+ inventoryResponse.ArchwingEnabled = true;
+
+ // Skip "Watch The Maker"
+ inventoryResponse.NodeIntrosCompleted.push("/Lotus/Levels/Cinematics/NewWarIntro/NewWarStageTwo.level");
}
if (config.unlockAllShipDecorations) inventoryResponse.ShipDecorations = allShipDecorations;
From 77c2761a97b21471f8252cc26925b904cf2cdf43 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Mon, 17 Jun 2024 16:38:26 +0200
Subject: [PATCH 17/38] fix: not being able to purchase boosters (#316)
---
package-lock.json | 8 +++----
package.json | 2 +-
src/services/purchaseService.ts | 37 +++++++++++++++++++++------------
3 files changed, 29 insertions(+), 18 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index 113407a0..a6da5d4d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.3",
+ "warframe-public-export-plus": "^0.2.4",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
@@ -3909,9 +3909,9 @@
}
},
"node_modules/warframe-public-export-plus": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.3.tgz",
- "integrity": "sha512-Bl4gb3f1LIdGXLEOJg2XTIFYqrialdTIvVhDqDzVJIRfii0PKsy9jsr9vqM14tWz7oVpQMeCUyvisDkkXijTSg=="
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.4.tgz",
+ "integrity": "sha512-Kh2+4p0qirTNUfHLr/nUJ1y/kH9mKnig28dwgpPaWt41ZfGzA+/qrpqI3DHYUvpd4wTCii/HItIy6tZtpTsy4Q=="
},
"node_modules/warframe-riven-info": {
"version": "0.1.0",
diff --git a/package.json b/package.json
index 9da3bcca..7ac70817 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.3",
+ "warframe-public-export-plus": "^0.2.4",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
diff --git a/src/services/purchaseService.ts b/src/services/purchaseService.ts
index b8a1c1ea..0f96055c 100644
--- a/src/services/purchaseService.ts
+++ b/src/services/purchaseService.ts
@@ -3,7 +3,7 @@ import { getSubstringFromKeyword } from "@/src/helpers/stringHelpers";
import { addItem, addBooster, updateCurrency, updateSlots } from "@/src/services/inventoryService";
import { IPurchaseRequest, SlotPurchase } from "@/src/types/purchaseTypes";
import { logger } from "@/src/utils/logger";
-import { ExportBundles } from "warframe-public-export-plus";
+import { ExportBundles, TRarity } from "warframe-public-export-plus";
export const getStoreItemCategory = (storeItem: string) => {
const storeItemString = getSubstringFromKeyword(storeItem, "StoreItems/");
@@ -26,7 +26,8 @@ export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountI
const purchaseResponse = await handleStoreItemAcquisition(
purchaseRequest.PurchaseParams.StoreItem,
accountId,
- purchaseRequest.PurchaseParams.Quantity
+ purchaseRequest.PurchaseParams.Quantity,
+ "COMMON"
);
if (!purchaseResponse) throw new Error("purchase response was undefined");
@@ -48,7 +49,8 @@ export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountI
const handleStoreItemAcquisition = async (
storeItemName: string,
accountId: string,
- quantity: number
+ quantity: number,
+ durability: TRarity
): Promise<{ InventoryChanges: object }> => {
let purchaseResponse = {
InventoryChanges: {}
@@ -60,7 +62,12 @@ const handleStoreItemAcquisition = async (
for (const component of bundle.components) {
purchaseResponse = {
...purchaseResponse,
- ...(await handleStoreItemAcquisition(component.typeName, accountId, component.purchaseQuantity))
+ ...(await handleStoreItemAcquisition(
+ component.typeName,
+ accountId,
+ component.purchaseQuantity,
+ component.durability
+ ))
};
}
} else {
@@ -75,7 +82,7 @@ const handleStoreItemAcquisition = async (
purchaseResponse = await handleTypesPurchase(internalName, accountId, quantity);
break;
case "Boosters":
- purchaseResponse = await handleBoostersPurchase(internalName, accountId);
+ purchaseResponse = await handleBoostersPurchase(internalName, accountId, durability);
break;
}
}
@@ -144,17 +151,21 @@ const boosterCollection = [
"/Lotus/Types/Boosters/CreditBooster"
];
-const handleBoostersPurchase = async (boosterStoreName: string, accountId: string) => {
- const match = boosterStoreName.match(/(\d+)Day/);
- if (!match) {
+const boosterDuration: Record = {
+ COMMON: 3 * 86400,
+ UNCOMMON: 7 * 86400,
+ RARE: 30 * 86400,
+ LEGENDARY: 90 * 86400
+};
+
+const handleBoostersPurchase = async (boosterStoreName: string, accountId: string, durability: TRarity) => {
+ const ItemType = boosterStoreName.replace("StoreItem", "");
+ if (!boosterCollection.find(x => x == ItemType)) {
+ logger.error(`unknown booster type: ${ItemType}`);
return { InventoryChanges: {} };
}
- const extractedDigit = Number(match[1]);
- const ItemType = boosterCollection.find(i =>
- boosterStoreName.includes(i.split("/").pop()!.replace("Booster", ""))
- )!;
- const ExpiryDate = extractedDigit * 86400;
+ const ExpiryDate = boosterDuration[durability];
await addBooster(ItemType, ExpiryDate, accountId);
From f15105a048e49b598dbd4f1a39bdee142c95b803 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Mon, 17 Jun 2024 16:38:43 +0200
Subject: [PATCH 18/38] fix: missionInventoryUpdateService's file name (#315)
---
src/controllers/api/missionInventoryUpdateController.ts | 2 +-
...entoryUpdateService .ts => missionInventoryUpdateService.ts} | 0
2 files changed, 1 insertion(+), 1 deletion(-)
rename src/services/{missionInventoryUpdateService .ts => missionInventoryUpdateService.ts} (100%)
diff --git a/src/controllers/api/missionInventoryUpdateController.ts b/src/controllers/api/missionInventoryUpdateController.ts
index 79b4632e..46acdd34 100644
--- a/src/controllers/api/missionInventoryUpdateController.ts
+++ b/src/controllers/api/missionInventoryUpdateController.ts
@@ -1,6 +1,6 @@
import { RequestHandler } from "express";
import { missionInventoryUpdate } from "@/src/services/inventoryService";
-import { combineRewardAndLootInventory, getRewards } from "@/src/services/missionInventoryUpdateService ";
+import { combineRewardAndLootInventory, getRewards } from "@/src/services/missionInventoryUpdateService";
import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { IMissionInventoryUpdateRequest } from "@/src/types/requestTypes";
diff --git a/src/services/missionInventoryUpdateService .ts b/src/services/missionInventoryUpdateService.ts
similarity index 100%
rename from src/services/missionInventoryUpdateService .ts
rename to src/services/missionInventoryUpdateService.ts
From e8d7e17611a2abf31f8f707944a5926674be0641 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Mon, 17 Jun 2024 16:41:02 +0200
Subject: [PATCH 19/38] fix: not being able to purchase or craft some recipes
(#314)
---
.../api/claimCompletedRecipeController.ts | 5 ++-
src/services/inventoryService.ts | 38 ++++++++++---------
src/services/itemDataService.ts | 21 +++++-----
src/services/recipeService.ts | 11 ++----
4 files changed, 39 insertions(+), 36 deletions(-)
diff --git a/src/controllers/api/claimCompletedRecipeController.ts b/src/controllers/api/claimCompletedRecipeController.ts
index 034b2e10..43abc899 100644
--- a/src/controllers/api/claimCompletedRecipeController.ts
+++ b/src/controllers/api/claimCompletedRecipeController.ts
@@ -48,6 +48,9 @@ export const claimCompletedRecipeController: RequestHandler = async (req, res) =
res.json({});
} else {
logger.debug("Claiming Recipe", { buildable, pendingRecipe });
+ if (buildable.consumeOnUse) {
+ // TODO: Remove one instance of this recipe, and include that in InventoryChanges.
+ }
let currencyChanges = {};
if (req.query.rush && buildable.skipBuildTimePrice) {
currencyChanges = await updateCurrency(buildable.skipBuildTimePrice, true, accountId);
@@ -55,7 +58,7 @@ export const claimCompletedRecipeController: RequestHandler = async (req, res) =
res.json({
InventoryChanges: {
...currencyChanges,
- ...(await addItem(accountId, buildable.uniqueName, buildable.buildQuantity)).InventoryChanges
+ ...(await addItem(accountId, buildable.resultType, buildable.num)).InventoryChanges
}
});
}
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index b06dcd14..64ed6f94 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -26,6 +26,7 @@ import { logger } from "@/src/utils/logger";
import { WeaponTypeInternal, getWeaponType, getExalted } from "@/src/services/itemDataService";
import { ISyndicateSacrifice, ISyndicateSacrificeResponse } from "../types/syndicateTypes";
import { IEquipmentClient } from "../types/inventoryTypes/commonInventoryTypes";
+import { ExportRecipes } from "warframe-public-export-plus";
export const createInventory = async (
accountOwnerId: Types.ObjectId,
@@ -70,6 +71,25 @@ export const addItem = async (
typeName: string,
quantity: number = 1
): Promise<{ InventoryChanges: object }> => {
+ // Strict typing
+ if (typeName in ExportRecipes) {
+ const inventory = await getInventory(accountId);
+ const recipeChanges = [
+ {
+ ItemType: typeName,
+ ItemCount: quantity
+ } satisfies ITypeCount
+ ];
+ addRecipes(inventory, recipeChanges);
+ await inventory.save();
+ return {
+ InventoryChanges: {
+ Recipes: recipeChanges
+ }
+ };
+ }
+
+ // Path-based duck typing
switch (typeName.substr(1).split("/")[1]) {
case "Powersuits":
if (typeName.includes("EntratiMech")) {
@@ -187,24 +207,6 @@ export const addItem = async (
}
}
}
- case "Recipes":
- case "Consumables": {
- // Blueprints for Ciphers, Antitoxins
- const inventory = await getInventory(accountId);
- const recipeChanges = [
- {
- ItemType: typeName,
- ItemCount: quantity
- } satisfies ITypeCount
- ];
- addRecipes(inventory, recipeChanges);
- await inventory.save();
- return {
- InventoryChanges: {
- Recipes: recipeChanges
- }
- };
- }
case "Restoratives": // Codex Scanner, Remote Observer, Starburst
const inventory = await getInventory(accountId);
const consumablesChanges = [
diff --git a/src/services/itemDataService.ts b/src/services/itemDataService.ts
index 46a785ba..c755336d 100644
--- a/src/services/itemDataService.ts
+++ b/src/services/itemDataService.ts
@@ -1,8 +1,15 @@
import { getIndexAfter } from "@/src/helpers/stringHelpers";
import { logger } from "@/src/utils/logger";
-import Items, { Buildable, Category, MinimalItem, Warframe, Weapon } from "warframe-items";
+import Items, { Category, MinimalItem, Warframe, Weapon } from "warframe-items";
import badItems from "@/static/json/exclude-mods.json";
-import { dict_en, ExportWarframes, ExportWeapons, IPowersuit } from "warframe-public-export-plus";
+import {
+ dict_en,
+ ExportRecipes,
+ ExportWarframes,
+ ExportWeapons,
+ IPowersuit,
+ IRecipe
+} from "warframe-public-export-plus";
export type MinWarframe = Omit;
export type MinWeapon = Omit;
@@ -100,13 +107,9 @@ export const blueprintNames = Object.fromEntries(
.map(name => [name, craftNames[name]])
);
-const buildables = items.filter(item => !!(item as Buildable).components);
-
-export const getItemByBlueprint = (uniqueName: string): (MinItem & Buildable) | undefined => {
- const item = buildables.find(item =>
- (item as Buildable).components?.find(component => component.uniqueName === uniqueName)
- );
- return item;
+// Gets a recipe by its uniqueName
+export const getItemByBlueprint = (uniqueName: string): IRecipe | undefined => {
+ return ExportRecipes[uniqueName];
};
export const getExalted = (uniqueName: string) => {
diff --git a/src/services/recipeService.ts b/src/services/recipeService.ts
index 953992f6..c9d315bd 100644
--- a/src/services/recipeService.ts
+++ b/src/services/recipeService.ts
@@ -34,9 +34,9 @@ export const startRecipe = async (recipeName: string, accountId: string) => {
throw new Error(`unknown recipe ${recipeName}`);
}
- const componentsNeeded = recipe.components?.map(component => ({
- uniqueName: component.uniqueName,
- count: component.itemCount
+ const componentsNeeded = recipe.ingredients.map(component => ({
+ uniqueName: component.ItemType,
+ count: component.ItemCount
}));
if (!componentsNeeded) {
@@ -47,11 +47,6 @@ export const startRecipe = async (recipeName: string, accountId: string) => {
//TODO: consume components used
//await updateResources(accountId, componentsNeeded);
- //might be redundant
- if (recipe.consumeOnBuild) {
- //consume
- }
-
if (!recipe.buildTime) {
logger.error(`recipe ${recipeName} has no build time`);
throw new Error(`recipe ${recipeName} has no build time`);
From aec6a964954ec1c901912d7c2ccba0518b444ab8 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Tue, 18 Jun 2024 02:03:07 +0200
Subject: [PATCH 20/38] feat: modular weapon crafting (#317)
---
.../api/modularWeaponCraftingController.ts | 55 +++++++++++++++++++
.../custom/getItemListsController.ts | 4 +-
src/models/inventoryModels/inventoryModel.ts | 1 +
src/routes/api.ts | 2 +
src/services/inventoryService.ts | 15 +++--
static/webui/script.js | 6 +-
6 files changed, 75 insertions(+), 8 deletions(-)
create mode 100644 src/controllers/api/modularWeaponCraftingController.ts
diff --git a/src/controllers/api/modularWeaponCraftingController.ts b/src/controllers/api/modularWeaponCraftingController.ts
new file mode 100644
index 00000000..c1cd7bc8
--- /dev/null
+++ b/src/controllers/api/modularWeaponCraftingController.ts
@@ -0,0 +1,55 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getJSONfromString } from "@/src/helpers/stringHelpers";
+import { WeaponTypeInternal } from "@/src/services/itemDataService";
+import { getInventory, updateCurrency, addWeapon, addMiscItems } from "@/src/services/inventoryService";
+
+const modularWeaponTypes: Record = {
+ "/Lotus/Weapons/SolarisUnited/Primary/LotusModularPrimaryBeam": "LongGuns",
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondary": "Pistols",
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryBeam": "Pistols",
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryShotgun": "Pistols",
+ "/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": "Melee",
+ "/Lotus/Weapons/Sentients/OperatorAmplifiers/OperatorAmpWeapon": "OperatorAmps"
+};
+
+interface IModularCraftRequest {
+ WeaponType: string;
+ Parts: string[];
+}
+
+export const modularWeaponCraftingController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const data: IModularCraftRequest = getJSONfromString(req.body.toString());
+ if (!(data.WeaponType in modularWeaponTypes)) {
+ throw new Error(`unknown modular weapon type: ${data.WeaponType}`);
+ }
+ const category = modularWeaponTypes[data.WeaponType];
+
+ // Give weapon
+ const weapon = await addWeapon(category, data.WeaponType, accountId, data.Parts);
+
+ // Remove 4000 credits
+ const currencyChanges = await updateCurrency(4000, false, accountId);
+
+ // Remove parts
+ const miscItemChanges = [];
+ for (const part of data.Parts) {
+ miscItemChanges.push({
+ ItemType: part,
+ ItemCount: -1
+ });
+ }
+ const inventory = await getInventory(accountId);
+ addMiscItems(inventory, miscItemChanges);
+ await inventory.save();
+
+ // Tell client what we did
+ res.json({
+ InventoryChanges: {
+ ...currencyChanges,
+ [category]: [weapon],
+ MiscItems: miscItemChanges
+ }
+ });
+};
diff --git a/src/controllers/custom/getItemListsController.ts b/src/controllers/custom/getItemListsController.ts
index f10b450b..04f3568d 100644
--- a/src/controllers/custom/getItemListsController.ts
+++ b/src/controllers/custom/getItemListsController.ts
@@ -43,7 +43,9 @@ const getItemListsController: RequestHandler = (_req, res) => {
item.category == "Misc" ||
item.category == "Resources" ||
item.category == "Fish" ||
- ((item as any).productCategory == "Pistols" && (item as MinWeapon).totalDamage == 0)
+ ((item as any).productCategory == "Pistols" &&
+ (item as MinWeapon).totalDamage == 0 &&
+ !item.excludeFromCodex) // exclude Zaw Strike PvP variant
)
),
mods,
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index dc91ddb7..8a79f758 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -921,6 +921,7 @@ type InventoryDocumentProps = {
LongGuns: Types.DocumentArray;
Pistols: Types.DocumentArray;
Melee: Types.DocumentArray;
+ OperatorAmps: Types.DocumentArray;
FlavourItems: Types.DocumentArray;
RawUpgrades: Types.DocumentArray;
Upgrades: Types.DocumentArray;
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 8a059bfe..014e24ab 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -56,6 +56,7 @@ import { syndicateSacrificeController } from "../controllers/api/syndicateSacrif
import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
import { queueDojoComponentDestructionController } from "@/src/controllers/api/queueDojoComponentDestructionController";
import { nameWeaponController } from "@/src/controllers/api/nameWeaponController";
+import { modularWeaponCraftingController } from "@/src/controllers/api/modularWeaponCraftingController";
const apiRouter = express.Router();
@@ -122,5 +123,6 @@ apiRouter.post("/guildTech.php", guildTechController);
apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
apiRouter.post("/nameWeapon.php", nameWeaponController);
+apiRouter.post("/modularWeaponCrafting.php", modularWeaponCraftingController);
export { apiRouter };
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index 64ed6f94..c7861130 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -386,20 +386,23 @@ export const syndicateSacrifice = async (
export const addWeapon = async (
weaponType: WeaponTypeInternal,
weaponName: string,
- accountId: string
+ accountId: string,
+ modularParts: string[] | undefined = undefined
): Promise => {
const inventory = await getInventory(accountId);
let weaponIndex;
switch (weaponType) {
case "LongGuns":
- weaponIndex = inventory.LongGuns.push({ ItemType: weaponName, Configs: [], XP: 0 });
- break;
case "Pistols":
- weaponIndex = inventory.Pistols.push({ ItemType: weaponName, Configs: [], XP: 0 });
- break;
case "Melee":
- weaponIndex = inventory.Melee.push({ ItemType: weaponName, Configs: [], XP: 0 });
+ case "OperatorAmps":
+ weaponIndex = inventory[weaponType].push({
+ ItemType: weaponName,
+ Configs: [],
+ XP: 0,
+ ModularParts: modularParts
+ });
break;
default:
throw new Error("unknown weapon type: " + weaponType);
diff --git a/static/webui/script.js b/static/webui/script.js
index 6a9d525d..bc1e8758 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -96,6 +96,10 @@ window.itemListPromise = new Promise(resolve => {
"/Lotus/Weapons/Tenno/Rifle/LotusRifle": { name: "Rifle" },
"/Lotus/Weapons/Tenno/Shotgun/LotusShotgun": { name: "Shotgun" },
// Modular weapons
+ "/Lotus/Weapons/SolarisUnited/Primary/LotusModularPrimaryBeam": { name: "Kitgun" },
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondary": { name: "Kitgun" },
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryBeam": { name: "Kitgun" },
+ "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryShotgun": { name: "Kitgun" },
"/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": { name: "Zaw" },
// Missing in data sources
"/Lotus/Upgrades/CosmeticEnhancers/Peculiars/CyoteMod": { name: "Traumatic Peculiar" }
@@ -524,7 +528,7 @@ function doAcquireMiscItems() {
MiscItems: [
{
ItemType: uniqueName,
- ItemCount: $("#miscitem-count").val()
+ ItemCount: parseInt($("#miscitem-count").val())
}
]
})
From be9ba026f75e1c1afb651fed7d6ad874d96d38db Mon Sep 17 00:00:00 2001
From: Sainan
Date: Tue, 18 Jun 2024 02:07:30 +0200
Subject: [PATCH 21/38] improve: sort api.ts alphabetically (#318)
---
src/routes/api.ts | 155 +++++++++++++++++++++++-----------------------
1 file changed, 76 insertions(+), 79 deletions(-)
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 014e24ab..2850b2dc 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -1,128 +1,125 @@
+import express from "express";
+import { addFriendImageController } from "@/src/controllers/api/addFriendImageController";
+import { artifactsController } from "../controllers/api/artifactsController";
import { checkDailyMissionBonusController } from "@/src/controllers/api/checkDailyMissionBonusController";
+import { claimCompletedRecipeController } from "@/src/controllers/api/claimCompletedRecipeController";
+import { createGuildController } from "@/src/controllers/api/createGuildController";
import { deleteSessionController } from "@/src/controllers/api/deleteSessionController";
+import { dojoController } from "@/src/controllers/api/dojoController";
import { dronesController } from "@/src/controllers/api/dronesController";
import { findSessionsController } from "@/src/controllers/api/findSessionsController";
+import { focusController } from "@/src/controllers/api/focusController";
import { genericUpdateController } from "@/src/controllers/api/genericUpdateController";
import { getAllianceController } from "@/src/controllers/api/getAllianceController";
import { getCreditsController } from "@/src/controllers/api/getCreditsController";
+import { getDailyDealStockLevelsController } from "@/src/controllers/api/getDailyDealStockLevelsController";
import { getFriendsController } from "@/src/controllers/api/getFriendsController";
+import { getGuildController } from "@/src/controllers/api/getGuildController";
+import { getGuildDojoController } from "@/src/controllers/api/getGuildDojoController";
+import { getGuildLogController } from "../controllers/api/getGuildLogController";
import { getIgnoredUsersController } from "@/src/controllers/api/getIgnoredUsersController";
import { getNewRewardSeedController } from "@/src/controllers/api/getNewRewardSeedController";
import { getShipController } from "@/src/controllers/api/getShipController";
+import { guildTechController } from "../controllers/api/guildTechController";
import { hostSessionController } from "@/src/controllers/api/hostSessionController";
import { hubController } from "@/src/controllers/api/hubController";
import { hubInstancesController } from "@/src/controllers/api/hubInstancesController";
import { inboxController } from "@/src/controllers/api/inboxController";
import { inventoryController } from "@/src/controllers/api/inventoryController";
+import { inventorySlotsController } from "@/src/controllers/api/inventorySlotsController";
+import { joinSessionController } from "@/src/controllers/api/joinSessionController";
import { loginController } from "@/src/controllers/api/loginController";
import { loginRewardsController } from "@/src/controllers/api/loginRewardsController";
import { logoutController } from "@/src/controllers/api/logoutController";
import { marketRecommendationsController } from "@/src/controllers/api/marketRecommendationsController";
import { missionInventoryUpdateController } from "@/src/controllers/api/missionInventoryUpdateController";
+import { modularWeaponCraftingController } from "@/src/controllers/api/modularWeaponCraftingController";
import { modularWeaponSaleController } from "@/src/controllers/api/modularWeaponSaleController";
+import { nameWeaponController } from "@/src/controllers/api/nameWeaponController";
import { purchaseController } from "@/src/controllers/api/purchaseController";
+import { queueDojoComponentDestructionController } from "@/src/controllers/api/queueDojoComponentDestructionController";
import { rerollRandomModController } from "@/src/controllers/api/rerollRandomModController";
+import { saveLoadoutController } from "@/src/controllers/api/saveLoadout";
+import { sellController } from "@/src/controllers/api/sellController";
import { setActiveQuestController } from "@/src/controllers/api/setActiveQuestController";
+import { setActiveShipController } from "@/src/controllers/api/setActiveShipController";
+import { setBootLocationController } from "@/src/controllers/api/setBootLocationController";
+import { setShipCustomizationsController } from "@/src/controllers/api/setShipCustomizationsController";
+import { setSupportedSyndicateController } from "@/src/controllers/api/setSupportedSyndicateController";
+import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
+import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
+import { startRecipeController } from "@/src/controllers/api/startRecipeController";
import { surveysController } from "@/src/controllers/api/surveysController";
+import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
+import { trainingResultController } from "@/src/controllers/api/trainingResultController";
import { updateChallengeProgressController } from "@/src/controllers/api/updateChallengeProgressController";
import { updateSessionGetController, updateSessionPostController } from "@/src/controllers/api/updateSessionController";
-import { joinSessionController } from "@/src/controllers/api/joinSessionController";
-import { saveLoadoutController } from "@/src/controllers/api/saveLoadout";
-import { trainingResultController } from "@/src/controllers/api/trainingResultController";
-import { artifactsController } from "../controllers/api/artifactsController";
-
-import express from "express";
-import { setBootLocationController } from "@/src/controllers/api/setBootLocationController";
-import { focusController } from "@/src/controllers/api/focusController";
-import { inventorySlotsController } from "@/src/controllers/api/inventorySlotsController";
-import { startRecipeController } from "@/src/controllers/api/startRecipeController";
-import { claimCompletedRecipeController } from "@/src/controllers/api/claimCompletedRecipeController";
-import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
-import { setShipCustomizationsController } from "@/src/controllers/api/setShipCustomizationsController";
-import { setActiveShipController } from "@/src/controllers/api/setActiveShipController";
import { updateThemeController } from "../controllers/api/updateThemeController";
-import { getGuildController } from "@/src/controllers/api/getGuildController";
-import { addFriendImageController } from "@/src/controllers/api/addFriendImageController";
-import { createGuildController } from "@/src/controllers/api/createGuildController";
-import { sellController } from "@/src/controllers/api/sellController";
import { upgradesController } from "@/src/controllers/api/upgradesController";
-import { setSupportedSyndicateController } from "@/src/controllers/api/setSupportedSyndicateController";
-import { getDailyDealStockLevelsController } from "@/src/controllers/api/getDailyDealStockLevelsController";
-import { getGuildLogController } from "../controllers/api/getGuildLogController";
-import { guildTechController } from "../controllers/api/guildTechController";
-import { dojoController } from "@/src/controllers/api/dojoController";
-import { getGuildDojoController } from "@/src/controllers/api/getGuildDojoController";
-import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
-import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
-import { queueDojoComponentDestructionController } from "@/src/controllers/api/queueDojoComponentDestructionController";
-import { nameWeaponController } from "@/src/controllers/api/nameWeaponController";
-import { modularWeaponCraftingController } from "@/src/controllers/api/modularWeaponCraftingController";
const apiRouter = express.Router();
// get
-apiRouter.get("/inventory.php", inventoryController);
-apiRouter.get("/getFriends.php", getFriendsController);
-apiRouter.get("/marketRecommendations.php", marketRecommendationsController);
-apiRouter.get("/marketSearchRecommendations.php", marketRecommendationsController);
-apiRouter.get("/surveys.php", surveysController);
-apiRouter.get("/loginRewards.php", loginRewardsController);
apiRouter.get("/checkDailyMissionBonus.php", checkDailyMissionBonusController);
-apiRouter.get("/inbox.php", inboxController);
-apiRouter.get("/getShip.php", getShipController);
+apiRouter.get("/credits.php", getCreditsController);
+apiRouter.get("/deleteSession.php", deleteSessionController);
+apiRouter.get("/dojo", dojoController);
apiRouter.get("/drones.php", dronesController);
+apiRouter.get("/getDailyDealStockLevels.php", getDailyDealStockLevelsController);
+apiRouter.get("/getFriends.php", getFriendsController);
+apiRouter.get("/getGuild.php", getGuildController);
+apiRouter.get("/getGuildDojo.php", getGuildDojoController);
+apiRouter.get("/getGuildLog.php", getGuildLogController);
apiRouter.get("/getIgnoredUsers.php", getIgnoredUsersController);
apiRouter.get("/getNewRewardSeed.php", getNewRewardSeedController);
-apiRouter.get("/setActiveQuest.php", setActiveQuestController);
-apiRouter.get("/updateSession.php", updateSessionGetController);
-apiRouter.get("/credits.php", getCreditsController);
-apiRouter.get("/hubInstances", hubInstancesController);
+apiRouter.get("/getShip.php", getShipController);
apiRouter.get("/hub", hubController);
-apiRouter.get("/modularWeaponSale.php", modularWeaponSaleController);
-apiRouter.get("/deleteSession.php", deleteSessionController);
+apiRouter.get("/hubInstances", hubInstancesController);
+apiRouter.get("/inbox.php", inboxController);
+apiRouter.get("/inventory.php", inventoryController);
+apiRouter.get("/loginRewards.php", loginRewardsController);
apiRouter.get("/logout.php", logoutController);
-apiRouter.get("/setBootLocation.php", setBootLocationController);
-apiRouter.get("/setActiveShip.php", setActiveShipController);
-apiRouter.get("/getGuild.php", getGuildController);
-apiRouter.get("/setSupportedSyndicate.php", setSupportedSyndicateController);
-apiRouter.get("/getDailyDealStockLevels.php", getDailyDealStockLevelsController);
-apiRouter.get("/getGuildLog.php", getGuildLogController);
-apiRouter.get("/dojo", dojoController);
-apiRouter.get("/getGuildDojo.php", getGuildDojoController);
+apiRouter.get("/marketRecommendations.php", marketRecommendationsController);
+apiRouter.get("/marketSearchRecommendations.php", marketRecommendationsController);
+apiRouter.get("/modularWeaponSale.php", modularWeaponSaleController);
apiRouter.get("/queueDojoComponentDestruction.php", queueDojoComponentDestructionController);
+apiRouter.get("/setActiveQuest.php", setActiveQuestController);
+apiRouter.get("/setActiveShip.php", setActiveShipController);
+apiRouter.get("/setBootLocation.php", setBootLocationController);
+apiRouter.get("/setSupportedSyndicate.php", setSupportedSyndicateController);
+apiRouter.get("/surveys.php", surveysController);
+apiRouter.get("/updateSession.php", updateSessionGetController);
// post
-// eslint-disable-next-line @typescript-eslint/no-misused-promises
-apiRouter.post("/shipDecorations.php", shipDecorationsController);
-apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
-apiRouter.post("/claimCompletedRecipe.php", claimCompletedRecipeController);
-apiRouter.post("/startRecipe.php", startRecipeController);
-apiRouter.post("/inventorySlots.php", inventorySlotsController);
-apiRouter.post("/focus.php", focusController);
-apiRouter.post("/artifacts.php", artifactsController);
-apiRouter.post("/findSessions.php", findSessionsController);
-// eslint-disable-next-line @typescript-eslint/no-misused-promises
-apiRouter.post("/purchase.php", purchaseController);
-apiRouter.post("/login.php", loginController);
-apiRouter.post("/getAlliance.php", getAllianceController);
-apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
-apiRouter.post("/hostSession.php", hostSessionController);
-apiRouter.post("/updateSession.php", updateSessionPostController);
-apiRouter.post("/missionInventoryUpdate.php", missionInventoryUpdateController);
-apiRouter.post("/genericUpdate.php", genericUpdateController);
-apiRouter.post("/rerollRandomMod.php", rerollRandomModController);
-apiRouter.post("/joinSession.php", joinSessionController);
-apiRouter.post("/saveLoadout.php", saveLoadoutController);
-apiRouter.post("/trainingResult.php", trainingResultController);
-apiRouter.post("/updateTheme.php", updateThemeController);
apiRouter.post("/addFriendImage.php", addFriendImageController);
+apiRouter.post("/artifacts.php", artifactsController);
+apiRouter.post("/claimCompletedRecipe.php", claimCompletedRecipeController);
apiRouter.post("/createGuild.php", createGuildController);
-apiRouter.post("/sell.php", sellController);
-apiRouter.post("/upgrades.php", upgradesController);
+apiRouter.post("/findSessions.php", findSessionsController);
+apiRouter.post("/focus.php", focusController);
+apiRouter.post("/genericUpdate.php", genericUpdateController);
+apiRouter.post("/getAlliance.php", getAllianceController);
apiRouter.post("/guildTech.php", guildTechController);
-apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
-apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
-apiRouter.post("/nameWeapon.php", nameWeaponController);
+apiRouter.post("/hostSession.php", hostSessionController);
+apiRouter.post("/inventorySlots.php", inventorySlotsController);
+apiRouter.post("/joinSession.php", joinSessionController);
+apiRouter.post("/login.php", loginController);
+apiRouter.post("/missionInventoryUpdate.php", missionInventoryUpdateController);
apiRouter.post("/modularWeaponCrafting.php", modularWeaponCraftingController);
+apiRouter.post("/nameWeapon.php", nameWeaponController);
+apiRouter.post("/purchase.php", purchaseController);
+apiRouter.post("/rerollRandomMod.php", rerollRandomModController);
+apiRouter.post("/saveLoadout.php", saveLoadoutController);
+apiRouter.post("/sell.php", sellController);
+apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
+apiRouter.post("/shipDecorations.php", shipDecorationsController);
+apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
+apiRouter.post("/startRecipe.php", startRecipeController);
+apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
+apiRouter.post("/trainingResult.php", trainingResultController);
+apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
+apiRouter.post("/updateSession.php", updateSessionPostController);
+apiRouter.post("/updateTheme.php", updateThemeController);
+apiRouter.post("/upgrades.php", upgradesController);
export { apiRouter };
From c2a6892c2a3436cd4788973eff3c8a7351aca9ab Mon Sep 17 00:00:00 2001
From: Sainan
Date: Tue, 18 Jun 2024 12:24:58 +0200
Subject: [PATCH 22/38] feat: add optional myIrcAddresses config (#321)
---
src/controllers/api/loginController.ts | 4 ++--
src/services/configService.ts | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/controllers/api/loginController.ts b/src/controllers/api/loginController.ts
index 883b51c4..9338b3c7 100644
--- a/src/controllers/api/loginController.ts
+++ b/src/controllers/api/loginController.ts
@@ -43,7 +43,7 @@ const loginController: RequestHandler = async (request, response) => {
platformCDNs: platformCDNs,
NRS: [config.myAddress],
DTLS: DTLS,
- IRC: [config.myAddress],
+ IRC: config.myIrcAddresses ?? [config.myAddress],
HUB: HUB,
BuildLabel: buildConfig.buildLabel,
MatchmakingBuildId: buildConfig.matchmakingBuildId
@@ -79,7 +79,7 @@ const loginController: RequestHandler = async (request, response) => {
platformCDNs: platformCDNs,
NRS: [config.myAddress],
DTLS: DTLS,
- IRC: [config.myAddress],
+ IRC: config.myIrcAddresses ?? [config.myAddress],
HUB: HUB,
BuildLabel: buildConfig.buildLabel,
MatchmakingBuildId: buildConfig.matchmakingBuildId
diff --git a/src/services/configService.ts b/src/services/configService.ts
index 283b31bf..785c0f0b 100644
--- a/src/services/configService.ts
+++ b/src/services/configService.ts
@@ -24,6 +24,7 @@ interface IConfig {
myAddress: string;
httpPort?: number;
httpsPort?: number;
+ myIrcAddresses?: string[];
autoCreateAccount?: boolean;
skipStoryModeChoice?: boolean;
skipTutorial?: boolean;
From 74de4e075389c5eee0844ae920f3181c687bb574 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Tue, 18 Jun 2024 13:02:29 +0200
Subject: [PATCH 23/38] feat: implement helminth naming & archon shard
installation (#320)
Co-authored-by: Sainan
---
.../api/infestedFoundryController.ts | 88 +++++++++++++++++++
src/models/inventoryModels/inventoryModel.ts | 44 +++++++---
src/routes/api.ts | 2 +
.../inventoryTypes/commonInventoryTypes.ts | 7 +-
src/types/inventoryTypes/inventoryTypes.ts | 18 ++--
5 files changed, 136 insertions(+), 23 deletions(-)
create mode 100644 src/controllers/api/infestedFoundryController.ts
diff --git a/src/controllers/api/infestedFoundryController.ts b/src/controllers/api/infestedFoundryController.ts
new file mode 100644
index 00000000..26b98803
--- /dev/null
+++ b/src/controllers/api/infestedFoundryController.ts
@@ -0,0 +1,88 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getJSONfromString } from "@/src/helpers/stringHelpers";
+import { getInventory, addMiscItems } from "@/src/services/inventoryService";
+import { IOid } from "@/src/types/commonTypes";
+
+export const infestedFoundryController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const payload = getJSONfromString(req.body.toString());
+ switch (req.query.mode) {
+ case "s": {
+ // shard installation
+ const request = payload as IShardInstallRequest;
+ const inventory = await getInventory(accountId);
+ const suit = inventory.Suits.find(suit => suit._id.toString() == request.SuitId.$oid)!;
+ if (
+ !suit.ArchonCrystalUpgrades ||
+ suit.ArchonCrystalUpgrades.length != 5 // we shouldn't have an array like this, but older inventories may disagree...
+ ) {
+ suit.ArchonCrystalUpgrades = [{}, {}, {}, {}, {}];
+ }
+ suit.ArchonCrystalUpgrades[request.Slot] = {
+ UpgradeType: request.UpgradeType,
+ Color: request.Color
+ };
+ const miscItemChanges = [
+ {
+ ItemType: colorToShard[request.Color],
+ ItemCount: -1
+ }
+ ];
+ addMiscItems(inventory, miscItemChanges);
+ await inventory.save();
+ res.json({
+ InventoryChanges: {
+ MiscItems: miscItemChanges
+ }
+ });
+ break;
+ }
+
+ case "n": {
+ // name the beast
+ const inventory = await getInventory(accountId);
+ inventory.InfestedFoundry ??= {};
+ inventory.InfestedFoundry.Name = payload.newName as string;
+ await inventory.save();
+ res.json({
+ InventoryChanges: {
+ InfestedFoundry: {
+ Name: inventory.InfestedFoundry.Name
+ }
+ }
+ });
+ break;
+ }
+
+ case "o": // offerings update
+ // {"OfferingsIndex":540,"SuitTypes":["/Lotus/Powersuits/PaxDuviricus/PaxDuviricusBaseSuit","/Lotus/Powersuits/Nezha/NezhaBaseSuit","/Lotus/Powersuits/Devourer/DevourerBaseSuit"],"Extra":false}
+ res.status(404).end();
+ break;
+
+ default:
+ throw new Error(`unhandled infestedFoundry mode: ${req.query.mode}`);
+ }
+};
+
+interface IShardInstallRequest {
+ SuitId: IOid;
+ Slot: number;
+ UpgradeType: string;
+ Color: string;
+}
+
+const colorToShard: Record = {
+ ACC_RED: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalAmar",
+ ACC_RED_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalAmarMythic",
+ ACC_YELLOW: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalNira",
+ ACC_YELLOW_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalNiraMythic",
+ ACC_BLUE: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalBoreal",
+ ACC_BLUE_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalBorealMythic",
+ ACC_GREEN: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalGreen",
+ ACC_GREEN_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalGreenMythic",
+ ACC_ORANGE: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalOrange",
+ ACC_ORANGE_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalOrangeMythic",
+ ACC_PURPLE: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalViolet",
+ ACC_PURPLE_MYTHIC: "/Lotus/Types/Gameplay/NarmerSorties/ArchonCrystalVioletMythic"
+};
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index 8a79f758..90c4c844 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -45,7 +45,8 @@ import {
IOperatorConfigDatabase,
IPolarity,
IEquipmentDatabase,
- IOperatorConfigClient
+ IOperatorConfigClient,
+ IArchonCrystalUpgrade
} from "@/src/types/inventoryTypes/commonInventoryTypes";
import { toMongoDate, toOid } from "@/src/helpers/inventoryHelpers";
@@ -182,6 +183,20 @@ ItemConfigSchema.set("toJSON", {
}
});
+const ArchonCrystalUpgradeSchema = new Schema(
+ {
+ UpgradeType: String,
+ Color: String
+ },
+ { _id: false }
+);
+
+ArchonCrystalUpgradeSchema.set("toJSON", {
+ transform(_document, returnedObject) {
+ delete returnedObject.__v;
+ }
+});
+
const EquipmentSchema = new Schema({
ItemType: String,
Configs: [ItemConfigSchema],
@@ -193,7 +208,7 @@ const EquipmentSchema = new Schema({
FocusLens: String,
ModSlotPurchases: Number,
CustomizationSlotPurchases: Number,
- UpgradeType: Schema.Types.Mixed, //todo
+ UpgradeType: String,
UpgradeFingerprint: String,
ItemName: String,
InfestationDate: Date,
@@ -203,7 +218,7 @@ const EquipmentSchema = new Schema({
UnlockLevel: Number,
Expiry: Date,
SkillTree: String,
- ArchonCrystalUpgrades: [Schema.Types.Mixed] //TODO
+ ArchonCrystalUpgrades: { type: [ArchonCrystalUpgradeSchema], default: undefined }
});
EquipmentSchema.virtual("ItemId").get(function () {
@@ -432,16 +447,19 @@ const consumedSchuitsSchema = new Schema({
c: colorSchema
});
-const infestedFoundrySchema = new Schema({
- Name: String,
- Resources: [typeCountSchema],
- Slots: Number,
- XP: Number,
- ConsumedSuits: [consumedSchuitsSchema],
- InvigorationIndex: Number,
- InvigorationSuitOfferings: [String],
- InvigorationsApplied: Number
-});
+const infestedFoundrySchema = new Schema(
+ {
+ Name: String,
+ Resources: { type: [typeCountSchema], default: undefined },
+ Slots: Number,
+ XP: Number,
+ ConsumedSuits: { type: [consumedSchuitsSchema], default: undefined },
+ InvigorationIndex: Number,
+ InvigorationSuitOfferings: { type: [String], default: undefined },
+ InvigorationsApplied: Number
+ },
+ { _id: false }
+);
const questProgressSchema = new Schema({
c: Number,
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 2850b2dc..35eaaa43 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -25,6 +25,7 @@ import { hostSessionController } from "@/src/controllers/api/hostSessionControll
import { hubController } from "@/src/controllers/api/hubController";
import { hubInstancesController } from "@/src/controllers/api/hubInstancesController";
import { inboxController } from "@/src/controllers/api/inboxController";
+import { infestedFoundryController } from "@/src/controllers/api/infestedFoundryController";
import { inventoryController } from "@/src/controllers/api/inventoryController";
import { inventorySlotsController } from "@/src/controllers/api/inventorySlotsController";
import { joinSessionController } from "@/src/controllers/api/joinSessionController";
@@ -101,6 +102,7 @@ apiRouter.post("/genericUpdate.php", genericUpdateController);
apiRouter.post("/getAlliance.php", getAllianceController);
apiRouter.post("/guildTech.php", guildTechController);
apiRouter.post("/hostSession.php", hostSessionController);
+apiRouter.post("/infestedFoundry.php", infestedFoundryController);
apiRouter.post("/inventorySlots.php", inventorySlotsController);
apiRouter.post("/joinSession.php", joinSessionController);
apiRouter.post("/login.php", loginController);
diff --git a/src/types/inventoryTypes/commonInventoryTypes.ts b/src/types/inventoryTypes/commonInventoryTypes.ts
index 8596c6e4..aadc1b62 100644
--- a/src/types/inventoryTypes/commonInventoryTypes.ts
+++ b/src/types/inventoryTypes/commonInventoryTypes.ts
@@ -103,6 +103,11 @@ export interface IEquipmentDatabase {
UnlockLevel?: number;
Expiry?: IMongoDate;
SkillTree?: string;
- ArchonCrystalUpgrades?: []; //TODO
+ ArchonCrystalUpgrades?: IArchonCrystalUpgrade[];
_id: Types.ObjectId;
}
+
+export interface IArchonCrystalUpgrade {
+ UpgradeType?: string;
+ Color?: string;
+}
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index ec492353..1abd4cd8 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -232,7 +232,7 @@ export interface IInventoryResponse {
DailyAffiliationEntrati: number;
DailyAffiliationNecraloid: number;
MechSuits: IEquipmentDatabase[];
- InfestedFoundry: IInfestedFoundry;
+ InfestedFoundry?: IInfestedFoundry;
BlessingCooldown: IMongoDate;
CrewShipHarnesses: IEquipmentDatabase[];
CrewShipRawSalvage: IConsumable[];
@@ -482,14 +482,14 @@ export interface IFusionTreasure {
}
export interface IInfestedFoundry {
- Name: string;
- Resources: ITypeCount[];
- Slots: number;
- XP: number;
- ConsumedSuits: IConsumedSuit[];
- InvigorationIndex: number;
- InvigorationSuitOfferings: string[];
- InvigorationsApplied: number;
+ Name?: string;
+ Resources?: ITypeCount[];
+ Slots?: number;
+ XP?: number;
+ ConsumedSuits?: IConsumedSuit[];
+ InvigorationIndex?: number;
+ InvigorationSuitOfferings?: string[];
+ InvigorationsApplied?: number;
}
export interface IConsumedSuit {
From 03ac8ab0106f279cd4dae5edf3c40b36a9702f69 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Tue, 18 Jun 2024 23:10:26 +0200
Subject: [PATCH 24/38] chore: update data for 36.0.0 (Jade Shadows) (#324)
---
package-lock.json | 8 +-
package.json | 2 +-
src/controllers/api/inventoryController.ts | 36 +-
.../custom/getItemListsController.ts | 51 +-
src/services/itemDataService.ts | 10 -
static/fixed_responses/allFlavourItems.json | 1951 --------
static/fixed_responses/allMissions.json | 6 +
static/fixed_responses/allQuestKeys.json | 38 -
.../fixed_responses/allShipDecorations.json | 1011 -----
static/fixed_responses/allSkins.json | 4031 -----------------
10 files changed, 68 insertions(+), 7076 deletions(-)
delete mode 100644 static/fixed_responses/allFlavourItems.json
delete mode 100644 static/fixed_responses/allQuestKeys.json
delete mode 100644 static/fixed_responses/allShipDecorations.json
delete mode 100644 static/fixed_responses/allSkins.json
diff --git a/package-lock.json b/package-lock.json
index a6da5d4d..e12a07ef 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.4",
+ "warframe-public-export-plus": "^0.2.5",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
@@ -3909,9 +3909,9 @@
}
},
"node_modules/warframe-public-export-plus": {
- "version": "0.2.4",
- "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.4.tgz",
- "integrity": "sha512-Kh2+4p0qirTNUfHLr/nUJ1y/kH9mKnig28dwgpPaWt41ZfGzA+/qrpqI3DHYUvpd4wTCii/HItIy6tZtpTsy4Q=="
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/warframe-public-export-plus/-/warframe-public-export-plus-0.2.5.tgz",
+ "integrity": "sha512-IsS2Z14CeTpGSpfeUxqTi8wAQjQ6qjh2kV8RC9St5hcDmII3NpwEFXmStEqz7r+JPfea72D3cZMMl+4QLHqvXw=="
},
"node_modules/warframe-riven-info": {
"version": "0.1.0",
diff --git a/package.json b/package.json
index 7ac70817..473d3cdc 100644
--- a/package.json
+++ b/package.json
@@ -17,7 +17,7 @@
"express": "^5.0.0-beta.3",
"mongoose": "^8.1.1",
"warframe-items": "^1.1262.74",
- "warframe-public-export-plus": "^0.2.4",
+ "warframe-public-export-plus": "^0.2.5",
"warframe-riven-info": "^0.1.0",
"winston": "^3.11.0",
"winston-daily-rotate-file": "^4.7.1"
diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts
index 6d12b5f7..b2738bf8 100644
--- a/src/controllers/api/inventoryController.ts
+++ b/src/controllers/api/inventoryController.ts
@@ -5,12 +5,9 @@ import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
import { Request, RequestHandler, Response } from "express";
import { config } from "@/src/services/configService";
import allMissions from "@/static/fixed_responses/allMissions.json";
-import allQuestKeys from "@/static/fixed_responses/allQuestKeys.json";
-import allShipDecorations from "@/static/fixed_responses/allShipDecorations.json";
-import allFlavourItems from "@/static/fixed_responses/allFlavourItems.json";
-import allSkins from "@/static/fixed_responses/allSkins.json";
import { ILoadoutDatabase } from "@/src/types/saveLoadoutTypes";
-import { IShipInventory, IFlavourItem } from "@/src/types/inventoryTypes/inventoryTypes";
+import { IShipInventory } from "@/src/types/inventoryTypes/inventoryTypes";
+import { ExportCustoms, ExportFlavour, ExportKeys, ExportResources } from "warframe-public-export-plus";
const inventoryController: RequestHandler = async (request: Request, response: Response) => {
let accountId;
@@ -51,9 +48,11 @@ const inventoryController: RequestHandler = async (request: Request, response: R
}
if (config.unlockAllQuests) {
- for (const questKey of allQuestKeys) {
- if (!inventoryResponse.QuestKeys.find(quest => quest.ItemType == questKey)) {
- inventoryResponse.QuestKeys.push({ ItemType: questKey });
+ for (const [k, v] of Object.entries(ExportKeys)) {
+ if ("chainStages" in v) {
+ if (!inventoryResponse.QuestKeys.find(quest => quest.ItemType == k)) {
+ inventoryResponse.QuestKeys.push({ ItemType: k });
+ }
}
}
}
@@ -76,17 +75,30 @@ const inventoryController: RequestHandler = async (request: Request, response: R
inventoryResponse.NodeIntrosCompleted.push("/Lotus/Levels/Cinematics/NewWarIntro/NewWarStageTwo.level");
}
- if (config.unlockAllShipDecorations) inventoryResponse.ShipDecorations = allShipDecorations;
- if (config.unlockAllFlavourItems) inventoryResponse.FlavourItems = allFlavourItems satisfies IFlavourItem[];
+ if (config.unlockAllShipDecorations) {
+ inventoryResponse.ShipDecorations = [];
+ for (const [uniqueName, item] of Object.entries(ExportResources)) {
+ if (item.productCategory == "ShipDecorations") {
+ inventoryResponse.ShipDecorations.push({ ItemType: uniqueName, ItemCount: 1 });
+ }
+ }
+ }
+
+ if (config.unlockAllFlavourItems) {
+ inventoryResponse.FlavourItems = [];
+ for (const uniqueName in ExportFlavour) {
+ inventoryResponse.FlavourItems.push({ ItemType: uniqueName });
+ }
+ }
if (config.unlockAllSkins) {
inventoryResponse.WeaponSkins = [];
- for (const skin of allSkins) {
+ for (const uniqueName in ExportCustoms) {
inventoryResponse.WeaponSkins.push({
ItemId: {
$oid: "000000000000000000000000"
},
- ItemType: skin
+ ItemType: uniqueName
});
}
}
diff --git a/src/controllers/custom/getItemListsController.ts b/src/controllers/custom/getItemListsController.ts
index 04f3568d..574ec8d7 100644
--- a/src/controllers/custom/getItemListsController.ts
+++ b/src/controllers/custom/getItemListsController.ts
@@ -1,7 +1,7 @@
import { RequestHandler } from "express";
-import { MinItem, MinWeapon, warframes, items, getEnglishString } from "@/src/services/itemDataService";
+import { MinItem, items, getEnglishString } from "@/src/services/itemDataService";
import badItems from "@/static/json/exclude-mods.json";
-import { ExportArcanes, ExportWeapons } from "warframe-public-export-plus";
+import { ExportArcanes, ExportResources, ExportWarframes, ExportWeapons } from "warframe-public-export-plus";
interface ListedItem {
uniqueName: string;
@@ -20,6 +20,30 @@ function reduceItems(items: MinItem[]): ListedItem[] {
}
const getItemListsController: RequestHandler = (_req, res) => {
+ const weapons = [];
+ const miscitems = [];
+ for (const [uniqueName, item] of Object.entries(ExportWeapons)) {
+ if (item.productCategory !== "OperatorAmps") {
+ if (item.totalDamage !== 0) {
+ weapons.push({
+ uniqueName,
+ name: getEnglishString(item.name)
+ });
+ } else if (!item.excludeFromCodex) {
+ miscitems.push({
+ uniqueName,
+ name: getEnglishString(item.name)
+ });
+ }
+ }
+ }
+ for (const [uniqueName, item] of Object.entries(ExportResources)) {
+ miscitems.push({
+ uniqueName,
+ name: getEnglishString(item.name)
+ });
+ }
+
const mods = reduceItems(items.filter(item => item.category == "Mods"));
for (const [uniqueName, arcane] of Object.entries(ExportArcanes)) {
mods.push({
@@ -27,27 +51,18 @@ const getItemListsController: RequestHandler = (_req, res) => {
name: getEnglishString(arcane.name)
});
}
+
res.json({
- warframes: reduceItems(warframes),
- weapons: Object.entries(ExportWeapons)
- .filter(([_uniqueName, weapon]) => weapon.productCategory !== "OperatorAmps" && weapon.totalDamage !== 0)
- .map(([uniqueName, weapon]) => {
+ warframes: Object.entries(ExportWarframes)
+ .filter(([_uniqueName, warframe]) => warframe.productCategory == "Suits")
+ .map(([uniqueName, warframe]) => {
return {
uniqueName,
- name: getEnglishString(weapon.name)
+ name: getEnglishString(warframe.name)
};
}),
- miscitems: reduceItems(
- items.filter(
- item =>
- item.category == "Misc" ||
- item.category == "Resources" ||
- item.category == "Fish" ||
- ((item as any).productCategory == "Pistols" &&
- (item as MinWeapon).totalDamage == 0 &&
- !item.excludeFromCodex) // exclude Zaw Strike PvP variant
- )
- ),
+ weapons,
+ miscitems,
mods,
badItems
});
diff --git a/src/services/itemDataService.ts b/src/services/itemDataService.ts
index c755336d..694a766f 100644
--- a/src/services/itemDataService.ts
+++ b/src/services/itemDataService.ts
@@ -15,16 +15,6 @@ export type MinWarframe = Omit;
export type MinWeapon = Omit;
export type MinItem = Omit;
-export const warframes: MinWarframe[] = Array.from(new Items({ category: ["Warframes"] }) as Warframe[])
- .filter(item => {
- return item.uniqueName.substring(0, 30) != "/Lotus/Powersuits/EntratiMech/";
- })
- .map(item => {
- const next = { ...item };
- delete next.patchlogs;
- return next;
- });
-
export type WeaponTypeInternal =
| "LongGuns"
| "Pistols"
diff --git a/static/fixed_responses/allFlavourItems.json b/static/fixed_responses/allFlavourItems.json
deleted file mode 100644
index a636bb0d..00000000
--- a/static/fixed_responses/allFlavourItems.json
+++ /dev/null
@@ -1,1951 +0,0 @@
-[
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/BaruukBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/ConqueraBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/CorpusBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/DeadlockBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/FortunaBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/GradientBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/GrineerBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/HelminthBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/LegacyBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/NatahBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/SpringFestivalBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/StalkerBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Backgrounds/ZephyrDeluxeBackground" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerA" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerB" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerC" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerD" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerE" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerF" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerG" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerH" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerI" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerJ" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/ControllerK" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyA" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyB" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyC" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyD" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyE" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyF" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseGreyG" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineA" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineB" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineC" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineD" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineE" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineF" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineG" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineH" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseLineI" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Cursors/MouseYareli" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Sounds/CorpusSounds" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Sounds/HelminthSounds" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Sounds/LegacySounds" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/Sounds/ZephyrDeluxeSounds" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/BaruukStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/ConqueraStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/ContrastStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/CorpusStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/DeadlockStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/EquinoxStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/FortunaStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/GrineerStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/HelminthStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/LegacyStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/LotusStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/LunarNewYearStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/NatahStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/NidusStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/OrokinStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/StalkerStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/TennoStyle" },
- { "ItemType": "/Lotus/Interface/Graphics/CustomUI/ZephyrDeluxeStyle" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/CephalonDiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/CorpusIcePlanetDiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/EarthADiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/EidolonADiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/EmpyreanRegionADiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/FortressDiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/OceanADiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/OrokinMoonDiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/SettlementDiorama" },
- { "ItemType": "/Lotus/Types/Game/ActionFigureDioramas/VenusADiorama" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsB" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsC" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsCephalon" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsContest" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsD" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsEntrati" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsFeral" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsHyekka" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsNexus" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsSolstice" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorAccentsXmas" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseB" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseC" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseCephalon" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseContest" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseD" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseEntrati" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseFeral" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseHyekka" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseNexus" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseSolstice" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseVampire" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorBaseXmas" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryB" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryC" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryCephalon" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryContest" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryD" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryEntrati" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryFeral" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryHyekka" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryNexus" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondarySolstice" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryVampire" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorSecondaryXmas" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryB" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryC" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryCephalon" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryContest" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryD" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryEntrati" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryFeral" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryHyekka" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryNexus" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiarySolstice" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/CatbrowPetColorTertiaryXmas" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/GaraPrimeCatbrowPetColorAccents" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/GaraPrimeCatbrowPetColorBase" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/GaraPrimeCatbrowPetColorSecondary" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/GaraPrimeCatbrowPetColorTertiary" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/KhoraDeluxeColorAccents" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/KhoraDeluxeColorBase" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/KhoraDeluxeColorSecondary" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/KhoraDeluxeColorTertiary" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/PrimeCatbrowPetColorAccents" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/PrimeCatbrowPetColorBaseA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/PrimeCatbrowPetColorSecondaryA" },
- { "ItemType": "/Lotus/Types/Game/CatbrowPet/Colors/PrimeCatbrowPetColorTertiaryA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowColorWukongPrimeMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowColorWukongPrimeMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowColorWukongPrimeVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorCephalonMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorCephalonMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorCephalonVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDrahkMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDrahkMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDrahkVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDuviriWolfAccent" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDuviriWolfMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDuviriWolfMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorDuviriWolfVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorFeralMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorFeralMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorFeralVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorKavatBase" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorKavatSecondary" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorKavatTertiary" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidB" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidC" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidContest" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidD" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidDiamond" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidE" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidF" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidG" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidH" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidI" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidJ" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidK" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMidLiquid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneB" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneC" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneContest" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneD" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneDiamond" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneE" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneF" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneG" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneH" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneI" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneJ" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneK" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorMundaneLiquid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeC" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeD" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeTraderMidA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeTraderMundaneA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorPrimeTraderVibrantA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorSolsticeMid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorSolsticeMundane" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorSolsticeVibrant" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantB" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantC" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantContest" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantD" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantDiamond" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantE" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantF" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantG" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantH" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantI" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantJ" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantK" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorVibrantLiquid" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasMidA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasMidB" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasMundaneA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasMundaneB" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasVibrantA" },
- { "ItemType": "/Lotus/Types/Game/KubrowPet/Colors/KubrowPetColorXmasVibrantB" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardCorpusPackA" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardCorpusPackB" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardCorpusPackC" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardCorpusPackD" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardCorpusPackE" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardEDMPackA" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardGrineerPackA" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardGrineerPackB" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardHipHopPackA" },
- { "ItemType": "/Lotus/Types/Game/NotePacks/BardTennoPackA" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/ArachnoidCamperPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/ArchwingArmedPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/ArchwingUnarmedPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/CorpusCrewmanGunPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/CorpusCrewmanReactPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/GrineerGunPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/GrineerReactPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/RopalolystPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/TeralystPoseSet" },
- { "ItemType": "/Lotus/Types/Game/PoseSets/WarframeGunPoseSet" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/BaroWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/CorpusWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/GrineerQueensWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/GrineerWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/LavosAlchemistWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/NoraWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/OstronWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicateAHWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicateCSWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicateNLWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicatePSWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicateRVWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/SyndicateSMWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/TennoWallpaper" },
- { "ItemType": "/Lotus/Types/Game/QuartersWallpapers/TwitchPrimeWallpaper" },
- { "ItemType": "/Lotus/Types/Items/Arcade/FlappyArcadeItem" },
- { "ItemType": "/Lotus/Types/Items/Arcade/FrameFighterArcadeItem" },
- { "ItemType": "/Lotus/Types/Items/Arcade/WyrmiusArcadeItem" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/AHCombatEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/AHEngineeringEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/AHGunneryEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/AHPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/AHSurvivabilityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/CSCombatEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/CSEngineeringEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/CSGunneryEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/CSPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/CSSurvivabilityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/NLCombatEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/NLEngineeringEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/NLPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/NLSurvivabilityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/PSPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/PSSurvivabilityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/RVEngineeringEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/RVPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/SMCombatEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/SMGunneryEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/SMPilotingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Syndicate/SMSurvivabilityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/AgreeEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ArbitrationEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/BaroEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/BarterEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/BowEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/BragEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/CaptainEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ClapEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Dance2Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Dance3Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Dance4Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Dance5Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceArsenioEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceBarelyDancingEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceElbowWave" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceHandsOnHipsEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceHandsUp" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceHeadphonesBop" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceLassoSidestep" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceLegTapEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceOneHandHipLookLeftRight" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceOneHandHipPump" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceOutUpOutBackEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceReachAcrossHips" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceSideStepCrossEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceSideStepTurn" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DanceTurnReverseTurn" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DeepBowEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/DisagreeEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/FarewellEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/FollowEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/GaussGonnaGetchaEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HandshakeEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeCeresEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeDeimosEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeDerelictEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeDuviriEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeEarthEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeErisEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeEuropaEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeJupiterEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeKuvaFortressEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeLuaEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeMarsEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeMercuryEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeNeptuneEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodePhobosEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodePlutoEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeSaturnEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeSednaEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeUranusEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeVenusEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeVoidEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HardmodeZarimanEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/HeirloomEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Kata2Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Kata3Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Kata5Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/KataEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/KhoraPrimeEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/KneelEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/KneelOneLegEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/LNY2023Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/LNY2024DragonEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/LeftHeartEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/LegionSaluteEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/MeditateEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ParazonEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/PunctualityEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Rank30Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/RightHeartEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ShawzinEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ShrugEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/SitEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2019Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2020AEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2020BEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2021Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2022Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/Tennocon2024Emote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/ThousandDaysEmote" },
- { "ItemType": "/Lotus/Types/Items/Emotes/WolfRageEmote" },
- { "ItemType": "/Lotus/Types/Items/Events/TennoConRelay2022EarlyAccess" },
- { "ItemType": "/Lotus/Types/Items/Events/TennoConRelay2023EarlyAccess" },
- { "ItemType": "/Lotus/Types/Items/Events/TennoConRelay2024EarlyAccess" },
- { "ItemType": "/Lotus/Types/Items/VideoWallBackdrops/ZarimanApartment/VideoWallBackDropE" },
- { "ItemType": "/Lotus/Types/Items/VideoWallBackdrops/ZarimanApartment/VideoWallBackDropF" },
- { "ItemType": "/Lotus/Types/Items/VideoWallBackdrops/ZarimanApartment/VideoWallBackDropG" },
- { "ItemType": "/Lotus/Types/Items/VideoWallBackdrops/ZarimanApartment/VideoWallBackDropH" },
- { "ItemType": "/Lotus/Types/Items/VideoWallBackdrops/ZarimanApartment/VideoWallBackDropI" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeA" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeB" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeC" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeD" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeE" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeF" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeG" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeH" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeI" },
- { "ItemType": "/Lotus/Types/Items/VideoWallSoundscapes/ZarimanApartment/VideoWallSoundscapeJ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageEidolonCritter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageEidolonFish" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageEidolonGem" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageVenusCritter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageVenusFish" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Conservation/AvatarImageVenusGem" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Events/EventGlyphCaviaBirdThree" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Events/EventGlyphCaviaFibonacci" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Events/EventGlyphCaviaTagfer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImage13angTV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAHR" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAccessibleGamer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAcolyteSynpai" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAdelfosSelene" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAdikDarkCero" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAdmiralBahroo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAeonKnight" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAjingom" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAkariayataka" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAlainLove" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAlexanderDario" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAlexandraLive" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAlthani" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAlyekk" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAnJetCat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAngryIceberg" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAngryUnicorn" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAnnoyingKillah" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageArgonSix" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAshi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAshisogiTenno" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAungelecette" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAuroraStarr" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAvelna" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAywi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAznitrous" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageAzrael" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBBSChainWarden" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBRCommunityDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBabychanTH" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBackyardisTV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBadNewsBaron" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBast" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBennyfits" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBigJimID" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBikeman" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBlackOni" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBlazingCobalt" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBlueberryCat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBluyayogamer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBocchanVT" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBriannaKane" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBricky" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBrickyOrchid" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBrozime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBuff00n" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBurnBxx" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageBwana" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCASTiELiX" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCGsKnackie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCalamityDeath" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCaleyEmerald" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCanOfCraig" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCanalTenno" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCaptWalker" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCaptainTutu" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCarchara" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCasardis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCephalonSquared" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCeratia" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageChacytay" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageChar" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageChelestra" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageChrisIsHD" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageChromaPrimePartner" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCleoNaturin" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCodoma" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCohhCarnage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCohony" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageColdScar" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageColdTiger" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCommunityDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageConclaveDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageConfusedWarframe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCopyKavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCptKim" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCrazyBikerDude" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCrestbear" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCrowdi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageCrusader" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageD4NK3R" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDJTechlive" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDNexus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDadXGotXGame" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDadefuye" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDaiDaiKiri" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDanily" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDappaDanMan" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDarkSlayer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDarkfreack" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDasterCreations" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDatLoon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDayJoBo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDayTotalN3wb" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDebbysheen" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDeejayKnight" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDeepBlueBeard" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDentw" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDesRPG" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDestrohido" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDeuceTheGamer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDillyFrame" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDimitriVTwo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDisfusional" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDistantObserver" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageDramakins" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEdrick" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEduiy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageElCanalDeRow" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageElGrineerExiliado" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageElNoraEleo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageElTioProd" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEliceGameplay" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEligibleMonster" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEmovj" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEmpyreanCap" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEndotti" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEsp4him" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEtainted" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageEterion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageExtraCredits" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFR4GTP" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFRCommunityDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFacelessBeanie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFashionFrameIsEndgame" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFated2Perish" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFatefulYT" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFattShane" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFeelLikeAPlayer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFerreusDemon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFinlaena" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFloofyDwagon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFluffyMiracle" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFrancois" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFromThe70s" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFrostyNovaPrime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageFrozenbawz" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGamingBitches" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGara" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGastel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGermanCommunityDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGingy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGir8Tacos" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGlamShatterskull" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGlitchyGirl" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGoguma" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGoku" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGooperatives" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGorillaWolfGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGriddark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGrimlockePrime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageGrindHardSquad" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHappinessDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHarcosMagyarokWarframe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHomiInvocado" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHotsHomStories" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHunter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHydroxate" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHynkardSector" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageHypercaptai" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageIQ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageIkedo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageIm7heClown" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageInexpensiveGamer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageInfernoTheFirelord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageInfodiversao" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageInfraredMike" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageIvorysMoon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageIwoply" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJ3ubbleboy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJamieVoiceOver" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJandoncom" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJayNeverwhere" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJessiThrower" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJoeyZero" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJoriale" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageJustPlayBP" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageK0yi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKacchi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKalon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKaoiji" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKavatsSchroedinger" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKengineer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKenshinWF" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKillerBarbie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKingGothalion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKingKongDonk" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKingWolby" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKirarahime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKiwad" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKnightmareFrame" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKoreanCommunityDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKr1ptonPlayer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKrashOmnis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKretduy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageKyriosYuudai" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLadyNovita" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLadyTheLaddy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLeDouble" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLeamxp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLeoDoodling" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLeonelGM" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLeyzarViewGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLifeOfRio" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLifewater" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLightmicke" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLilLexi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLittleNavi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLluull" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLokKingMacho" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLordSaliak" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLordschaby" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLovinDaTacos" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLucianPlaysAllDay" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageLynxaria" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMCGamerCZ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMCIK" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMCMonkeys" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMGLblaze" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMHBlacky" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMK3Gaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMakarimorph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMaomix" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMeCore" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMedusaCaptures" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMemeSage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMissFwuffy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMjikThize" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMooha" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMozetas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMrBearGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMrMorgenstern" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMrRoadBlock" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMrSteelWar" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageMrWarframeGuy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNRDabears" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNeavo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNekrokrim" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNeoNess" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNoSympathyy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNononom" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageNyxxtv" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOOSIJ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOddieowl" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOldDirtyDaz" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOldGamer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOmniVoice" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOriginalGamers" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOrpheusDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageOzku" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePammyJammy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePandaahhhhh" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePapaTLion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePartner" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePartnerMug" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePartnerUpdated" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePhongFu" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePixelReboot" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePlagueDirector" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePokketNinja" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePorongo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePorphi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePostiTV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePrettyPoison" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePrimedAverage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageProfessorBroman" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePunchL1ne" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePurkinje" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePurpleFlurp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePyrah" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagePyrrhicSerenity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageQueenMisrule" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageQynchou" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRLCGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRagey" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRagingTerror" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRahetalius" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRahny" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRainbowWaffles" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRandomSurge" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRavenZ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRawSteelClan" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageReclaimJoey" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRedX" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageReddit" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRelentlessZen" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRelli" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRevengal" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageReyGanso" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRippz0r" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRitens" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRoyGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRoyalPrat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRundas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageRustyFin" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageS0lstep" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSabaiGuy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSabuuchi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSapmatic" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSarahTsang" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSaturnSixBarDiscord" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageScallion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageScarletMoon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSealsdie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSearyn" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSeleste" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSenastra" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSerafimPT" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSerganlkari" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageShadowFoxx" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageShanksy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSharlazard" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageShenzhao" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSherpaRage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageShulGaming" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSiejoUmbra" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSilentMashiko" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSillfix" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSixixgatsu" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSkillUp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSlapsticklogic" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSlivarito" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSlycker" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSmashley" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSmoodie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSn0wRC" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSp00nerism" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSpaceWaifu" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSpacebeastx" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSpandy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSpiritualJedi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStallordD" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStormcrown" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStr8opticroyal" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStreamingDownUnder" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStrippin" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStrongArmy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageStudioCyen" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSummerYuko" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSummit1G" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSuperxinvader" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageSzczebrzeszyniarz" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTBGKaru" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTCN" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTVSBOH" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTavierCorsair" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTdefton" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTeawrex" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTennoChronicler" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTennoForever" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTennoGen" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTennoHelp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTenshi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTheDorTip" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTheGamio" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTheLadyEgo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTheNextLevel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageThePandaNEight" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTheReaperHunter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTinBears" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTioMario" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTioRamon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageToYou" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageToastedTV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTorkie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageToxickToe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTrainsyTv" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTrashFrame" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTriburos" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTrysmj" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTwila" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTyFighter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageTygastripe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageUncleCat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageUnrealYuki" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageUreiFen" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVGWFR" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVamppire" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVanthesque" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVarlinator" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVashCowaii" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVernoc" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVladislavaLynx" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVnorberto" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVoidFissureBR" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVoli" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVolkeris" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVoltTheHero" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageVorticoseline" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWDTortoise" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWalterDV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWanderbots" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWarframeFR" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWarframeFanChannel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWarframeMadness" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWarframeReliquary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWarframeRunway" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWealWest" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWhiskeyCat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWidescreenJohn" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWobbzie" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageWoxli" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageX3lp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageXandyPants" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageXiaRose" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageXxVampixx" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageYantzi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageYourLuckyClover" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZakguo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZanagoth" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZarionis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZexiontat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZopney" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZotbot" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImageZxpfer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagedepths" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagenponesixtyone" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FanChannel/AvatarImagexOGxSkeezy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageBaruukPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageBaruukPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGaraPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGaraPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGarudaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGarudaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGaussPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGaussPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGrendelPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageGrendelPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageHarrowPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageHarrowPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageHildrynPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageHildrynPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageKhoraPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageKhoraPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageNidusPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageNidusPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageProteaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageProteaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageRevenantPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageRevenantPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageWispPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Primes/ImageWispPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearGroundI" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearGroundII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearGroundIII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearOperationI" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearOperationII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearOperationIII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearSpaceI" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearSpaceII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ScarletSpear/ImageScarletSpearSpaceIII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageChillingGlyphFour" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageChillingGlyphOne" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageChillingGlyphThree" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageChillingGlyphTwo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieExcalibur" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieFortuna" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieKavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieKdrive" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieKubrow" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieNef" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieOrbVallis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageGlyphCookieStalker" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2021Dethcube" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2021Grineer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2021Loid" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2021Lotus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2021Pumpkin" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageHalloween2023LuaNights" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/AvatarImageYearOfTheDragonGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019CheshireKavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019CreepyClem" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019FrankenCorpus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019GhostChibiWisp" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019GhoulGrave" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019GrendelTreat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019SlimeLoki" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019TrickOrBalas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Seasonal/Halloween2019Werefested" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Sony/AvatarImageOkinaGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/CitrineActionGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageBaruukDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCalibanAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCalibanAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCalibanBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCalibanDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCitrineAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCitrineAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCitrineBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageCitrineDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageDagathAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageDagathAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageDagathBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageDagathDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageGaussDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageGyreAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageGyreAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageGyreBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageGyreDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageHildrynDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageMesaDeluxeB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePagemasterAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePagemasterAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePagemasterBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePagemasterDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePaxDuviricusAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePaxDuviricusAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePaxDuviricusBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImagePaxDuviricusDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageProteaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageQorvexAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageQorvexAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageQorvexBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageQorvexDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageRhinoDeluxeTwo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageSevagothDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltBBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltBDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltCBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltCDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltDBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxAltDDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageStyanaxDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageTitaniaDeluxeII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageValkyrDeluxeB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageVoltDeluxeB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageVorunaAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageVorunaAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageVorunaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageVorunaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageWispDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageYareliAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageYareliAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageYareliBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/ImageYareliDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Warframes/VorunaActionGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageAlbrechtHatCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageAshAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeEmber" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeKulervo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeMesa" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeOctavia" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeRhino" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeStynax" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBadgeXaku" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBansheeAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBaroIcon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBaroTwoIcon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBaruukDoanStyle" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBonewidowAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageBuriedDebts" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageChatModerator" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageClemKawaii" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityCavaleroGraffiti" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityChroma" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityClemComic" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityEquinox" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityKullervo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityLittleDuckGraffiti" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityMotherGraffiti" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityRevenant" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTennobaumFrost" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTennobaumKubrow" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTennobaumVauban" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTennobaumVulpaphyla" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTennobaumZephyr" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCommunityTitania" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageConqueraGlyphUpdated" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorAGGP" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorDKDiamantes" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorDanieltheDemon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorFlareEyes" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorH3dsh0t" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorIflynn" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorLokenPlays" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorLunskee" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorMogamu" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorN00blShowtek" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorOriginalWickedfun" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorQuiteShallow" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorSnowLit" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorTacticalPotato" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorTanchan" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorVVhiteAngel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorWgrates" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageCreatorXenogelion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageDanteGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageDefault" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageDrakeRifle" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageEmberAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburActionNintendo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburActionProto" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburActionSony" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburActionXbox" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburChibi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageExcaliburMobile" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageFrostAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGamingCommunityExpo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCarolingOctavia" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicC" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicD" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicE" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphComicF" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieBoot" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieCorpus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieDethcube" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieGrineer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieLotus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphCookieVoidKey" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDELogo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerHannahIvara" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerHannahUmbra" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerKedKela" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerKedLotus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerLigerNezha" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerLigerNidus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerSteelsuitNidus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerSteelsuitOberon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerTreshClem" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerTreshLotus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersAtlas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersEmber" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersHek" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersMirage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersRegor" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphDesignerVentersVolt" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphErisTennocon2020Bird" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphErisTennocon2020Drone" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphErisTennocon2020Gate" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphErisTennocon2020Mech" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphErisTennocon2020Monster" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphFestiveFloof" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphJingleKavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphJollyGrendel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphKiradien" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphLaborAward" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphLegendaryCelestics" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphLegendaryQuasars" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphLocoCrazy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMAWEli" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedAladV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedExcalibur" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedFrostPrime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedMirage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedNefAnyo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedNyxPrime" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedOberon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMashedStalker" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMattaus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMemeGreedyMilk" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMemePotato" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMemeProdman" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMemeShorts" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyC" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyD" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyE" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyF" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyG" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyH" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyI" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphMuckneyJ" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphSkiGauss" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphSnowGlobeFrost" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphStarterPackA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphSurpriseIvara" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGlyphYareliComic" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageGrineerQueensVed" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2016A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2016B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2016C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2016D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2020A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2020B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHalloween2020C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHarrowAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHildrynPrideCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageHydroidFlag" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageInarosScarabs" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageInktober" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem1" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem2" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem3" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem4" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem5" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem6" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem7" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageItem8" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageIvaraAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageKavatEnamel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageKubrowEnamel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageKubrowKawaii1" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageKubrowKawaii2" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageKubrowKawaii3" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLavosAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLokiAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLokiActionTwitch" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLokiChibi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLotusGuide" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLotusKawaii" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLowPolyAtlas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLowPolyHildryn" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLowPolyKavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageLowPolyKubrow" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageMagAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageMagChibi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageManInTheWallCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageMesaEnamel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackBlast" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackCold" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackCorrosive" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackCritical" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackDamage" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackElectricity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackFire" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackGas" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackMagnetic" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackRadiation" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackToxin" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageModPackViral" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageMovember" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNekrosAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNekrosCalaca" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNoraNightA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNoraNightB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNovaAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageNyxAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageOctaviaAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageOctaviaActionTwitch" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageOroKitty" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageOroKittyEnamel" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImagePrideCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImagePrideGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageProteaAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageRevenantAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageRhinoAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageRhinoChibi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageSarynAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageSevagothAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageStarDaysCervulitePat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageStarDaysQorvexHeart" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageStarterPackLotus" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageTennoTranslator" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageTennoVIP" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageTeshinVed" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageThreshconeKawaii" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageTitaniaButterflies" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageTrinityAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageUmbraAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageUnrealTournament" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2017A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2017B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2017C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2017D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2017E" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2020Alad" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2020Clem" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2020Key" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2020Kuva" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2021Deimos" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2021Gauss" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2021Helminth" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2021Lavos" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2021Mech" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2022Grineer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2022Ordis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2022Yareli" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2023Gyre" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2023Kavat" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValentine2023Ticker" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageValkyrAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVaubanAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVitruvianGlyphA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVitruvianGlyphB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVitruvianGlyphC" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVitruvianGlyphD" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVitruvianGlyphE" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVoidrigAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVoltAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageVorKawaii" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2016D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017E" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2017F" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinter2018E" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016E" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016F" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageWinterB2016G" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageXakuAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageYareliAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageZarimanLogo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/AvatarImageZarimanSupporterPackGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/CNY2023RabbitGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/CherryTreeGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ChineseNewYear2021Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Community10YearAnniversaryGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Community10YearOrdisGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/DeimosRevolverGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/DogDaysKavatGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/DogDaysKubrowGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/FireIceCompanionGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Gamification2019Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/GuardianCon2018Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/HeirloomGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Image2019Twitter" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshDeluxeII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshLocustBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshLocustDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshScorpionBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAshScorpionDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAtlasDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAtlasPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageAtlasPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeChorusBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeChorusDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheePrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheePrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeReverbBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBansheeReverbDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBaroKiteer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBombastineCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerAltTwoBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerAltTwoDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrawlerDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrokenFrameAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrokenFrameAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrokenFrameBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageBrokenFrameDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCalibanInAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCephalonCy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCephalonSimaris" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaAmaruBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaAmaruDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaDracBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaDracDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageChromaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2021A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2021B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2021C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2021D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2022A" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2022B" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2022C" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageConquera2022D" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusAladV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusCrewman" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusJackal" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusMoa" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusNefAnyo" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageCorpusOsprey" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageDeadlockProtocolA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageDeadlockProtocolB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageDexAnniversary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEightYearAnniversary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageElevenYearAnniversary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberBackdraftBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberBackdraftDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberDeluxeII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberPheonixBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberPheonixDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEmberPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxSolsticeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageEquinoxSolsticeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburAvalonBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburAvalonDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburMordredBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburMordredDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburPendragonBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburPendragonDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburProto" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburUmbraAltTwoBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburUmbraAltTwoDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburUmbraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageExcaliburUmbraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostAuroraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostAuroraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostSquallBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageFrostSquallDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaraDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaraPrimeCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGarudaAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGarudaAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGarudaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGarudaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGarudaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaussAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaussAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaussBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaussDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGaussVED" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGengzi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGlassAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGlassAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGlassBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGlassDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGraeaeLimboBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGraeaeLimboDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrendelAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrendelAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrendelBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrendelDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrendelVED" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerBallista" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerCaptainVor" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionBeastMaster" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionCharger" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionEngineer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionGrunt" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionHealer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionHellion" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionSniper" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerChampionTank" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerKelaDeThaym" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerLancer" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerRoller" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGrineerSargusRuk" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGunslingerAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGunslingerAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGunslingerBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGunslingerDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGunslingerDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageGyreInAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageHarrowDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageHydroidDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageHydroidPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageHydroidPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageInarosDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageInarosMarsGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageInarosPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageInarosPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIronFrameAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIronFrameAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIronFrameBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIronFrameDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIvaraDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIvaraPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageIvaraPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageKhoraAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageKhoraAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageKhoraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageKhoraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageKhoraDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLavosAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLavosAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLavosBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLavosDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboAristeasBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboAristeasDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLimboPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiEnigmaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiEnigmaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiEssenceBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiEssenceDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiSwindleBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLokiSwindleDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageLotusDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagCoilBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagCoilDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagGaussBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagGaussDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMagPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMesaCortesBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMesaCortesDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMesaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMesaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageHarlequinBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageHarlequinDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMirageInAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMiragePrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMiragePrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingMacakBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageMonkeyKingMacakDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosAraknidBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosAraknidDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosShroudBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNekrosShroudDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaAlt2Bright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaAlt2Dark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNezhaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusDeluxeMutated" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusPrionBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNidusPrionDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNineYearAnniversary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaDeluxeII" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaQuantumBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaQuantumDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaSlipstreamBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNovaSlipstreamDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxMenticideBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxMenticideDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxNemesis" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxVespaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageNyxVespaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonMarkhorBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonMarkhorDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOberonPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaCadenzaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaCadenzaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageOctaviaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePacifistAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePacifistAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePacifistBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePacifistDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateKetosBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateKetosDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateTritonBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePirateTritonDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePopsicleGrineerPurple" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestAlt2HelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestAlt2HelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImagePriestDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaAltTwoBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaAltTwoDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageProteaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRailjackInAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerLoxleyBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerLoxleyDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerZirastraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRangerZirastraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRevenantAltHelmBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRevenantAltHelmDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRevenantBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRevenantDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRevenantDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoThrakBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoThrakDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoVanguardBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageRhinoVanguardDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanAnubisBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanAnubisDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanCanopicBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanCanopicDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSandmanDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynChloraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynChloraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynHemlockBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynHemlockDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSarynPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageStyanaxInAction" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicateAH" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicateCS" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicateNL" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicatePS" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicateRV" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageSyndicateSM" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTenYearAnniversary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenDynline" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenEpsilon" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenFabpsi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenInkary" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenLocoCrazy" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTennogenSharksteeth" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTitaniaPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperGambitBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperGambitDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperSoldierBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrapperSoldierDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTravelinMirageBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTravelinMirageDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityAuraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityAuraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityMeridianBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityMeridianDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageTrinityPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValaCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrBastetBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrBastetDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrKaraBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrKaraDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageValkyrPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVaubanDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVaubanPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVaubanPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltPulseBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltPulseDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltStormBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageVoltStormDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWispAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWispAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWispBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWispChibi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWispDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWolfBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWolfDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWraithAltBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWraithAltDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWraithBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWraithDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWukongDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWukongDeluxeVED" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWukongPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageWukongPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageXakuDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageXakuDeluxeKintsugi" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageYareliCommunity" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageYouTubeCorpusA" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageYouTubeCorpusB" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrCierzoBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrCierzoDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrDeluxe" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrPrimeBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrPrimeDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrTenguBright" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/ImageZephyrTenguDark" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/KahlCommunityGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/KahlSupporterPackGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/KalymosGrimoireGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Login650Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Login750Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Login950Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/MesaHighNoonGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/NarmerEyeGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/NewWar2021Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemFassGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemJahuGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemKhraGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemLohkGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemNetraGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemRisGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemVomeGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/RequiemXataGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/SavePopcornGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TenYearAnniversaryWeek1Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TenYearAnniversaryWeek2Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TenYearAnniversaryWeek3Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TenYearAnniversaryWeek4Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TenYearAnniversaryWeek5Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2017Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2018Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2019Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2019SimarisGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2020Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2020SimarisGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2021Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2021MerchGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2022Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2022MerchGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023BestInShowAwardGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023BestPetAwardGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023BestWorkmanshipAwardGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023CutenessAwardGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023FunniestAwardGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2023MerchGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TennoCon2024Glyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TwinSnakesGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/TwitchNecraloidGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20DaughterGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20FatherGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20GrandmaGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20MotherGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20OtakGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/XMas20SonGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2021GrinoalieGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2021MaggotGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2021MoaGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2021NutcorpusGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2023BombastineGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/AvatarImages/Xmas2023ThraxGlyph" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichBase" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichElectric" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichFire" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichIce" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichMag" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichPoison" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/Nemesis/ColourPickerKuvaLichTrickster" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerAccessibilityItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerAnniversaryEleven" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerBastilleItem" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerBeach" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerCavia" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerCorpusItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDaybreakItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDefaultsItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDefaultsItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDefaultsItemC" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDiscordItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerDojoItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerEasterItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerEximus" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerFireItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerGammaItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerGrineerItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerHalloweenItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerHalloweenItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerHeirloom" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerIceItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerInfestedItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerItem" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerItemC" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerItemD" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerJadeItem" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerKalymos" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerKiteerItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerKiteerItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerLotus" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerMarshlandsItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerNarmer" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerOrokin" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerPS4ItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerPrideItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerPrideItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerPrimeDayItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerRWBItem" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerRollers" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerShamrockItem" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerSwitchItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTMobileItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTransmissionItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTwilightItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTwitchBItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTwitchItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerTwitchItemC" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerValItemA" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ColourPickerValItemB" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/ExtraOperatorSkinColors" },
- { "ItemType": "/Lotus/Types/StoreItems/SuitCustomizations/NinjaColourPickerItem" },
- { "ItemType": "/Lotus/Upgrades/Skins/Alchemist/UnlockAlchemistAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Alchemist/UnlockAlchemistNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Anima/UnlockAnimaAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Anima/UnlockAnimaDayAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Anima/UnlockAnimaDayNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Anima/UnlockAnimaNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/AntiMatter/UnlockAntiMatterAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/AntiMatter/UnlockAntiMatterNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Asp/UnlockAspAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Asp/UnlockAspNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Bard/UnlockBardAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Bard/UnlockBardNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerDeluxeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerDeluxeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Brawler/UnlockBrawlerAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Brawler/UnlockBrawlerNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/BrokenFrame/UnlockBrokenFrameAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/BrokenFrame/UnlockBrokenFrameNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/ConcreteFrame/UnlockConcreteAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/ConcreteFrame/UnlockConcreteNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Cowgirl/UnlockCowgirlAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Cowgirl/UnlockCowgirlNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Dagath/UnlockDagathAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Dagath/UnlockDagathNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Decree/UnlockDecreeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Decree/UnlockDecreeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Devourer/UnlockDevourerAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Devourer/UnlockDevourerNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Dragon/UnlockChromaAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Dragon/UnlockChromaNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ember/UnlockEmberAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ember/UnlockEmberNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburDeluxeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburDeluxeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburUmbraAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburUmbraNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Fairy/UnlockFairyAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Fairy/UnlockFairyNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Frost/UnlockFrostAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Frost/UnlockFrostNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Garuda/UnlockGarudaAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Garuda/UnlockGarudaNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Geode/UnlockGeodeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Geode/UnlockGeodeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Glass/UnlockGlassAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Glass/UnlockGlassNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Gyre/UnlockGyreAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Gyre/UnlockGyreNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Harlequin/UnlockHarlequinAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Harlequin/UnlockHarlequinNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Harlequin/UnlockMirageDeluxeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Harlequin/UnlockMirageDeluxeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Hoplite/UnlockHopliteAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Hoplite/UnlockHopliteNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Hydroid/UnlockHydroidAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Hydroid/UnlockHydroidNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Infestation/UnlockInfestationAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Infestation/UnlockInfestationNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/IronFrame/UnlockIronFrameAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/IronFrame/UnlockIronFrameNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Jade/UnlockJadeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Jade/UnlockJadeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Khora/UnlockKhoraAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Khora/UnlockKhoraDeluxeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Khora/UnlockKhoraDeluxeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Khora/UnlockKhoraNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/GrineerShip/LisetGrineerShipDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeGrineerQueens" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinIfrit" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinNekrognos" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinPrimeTrader" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/Gyroscope/SWXiphosLilieaeSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinA" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinB" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinC" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinD" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ConquestHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/DexLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/InarosLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkyDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinDeluxe" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinGrineerQueens" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinInaros" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinPrimeTrader" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinSound" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinSplash" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinStalker" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinCamo" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinExotic" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinGrineerQueens" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinHalloween" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinInaros" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinIridos" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinNautilus" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinPrimeTrader" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemB" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemC" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemD" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinGrineerQueens" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinHalloween" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinJade" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinKaboom" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinKotora" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinObsidian" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinPrime" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinRelayEvent" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinSWROne" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinSWROneHellkite" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinSWRThreeMaltzurOculus" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinTwitchPrime" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/LisetSkinVoidTrader" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/MITWHoodOrnamentA" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/MaduraiHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/MasteryHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/NaramonHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/NoraShipDefault" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWHerulystLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWLilieaeSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWMantisVammatarSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWMithraLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWProtegeLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/SWVammatarLisetSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/UnairuHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/VazarinHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZenurikHoodOrnament" },
- { "ItemType": "/Lotus/Upgrades/Skins/Liset/ZephyrDeluxeShipSkin" },
- { "ItemType": "/Lotus/Upgrades/Skins/Loki/UnlockLokiAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Loki/UnlockLokiNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Mag/UnlockMagAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Mag/UnlockMagNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Magician/UnlockMagicianAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Magician/UnlockMagicianNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/MonkeyKing/UnlockMonkeyKingAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/MonkeyKing/UnlockMonkeyKingNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Necro/UnlockNecroAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Necro/UnlockNecroNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Nezha/UnlockNezhaAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Nezha/UnlockNezhaNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ninja/UnlockNinjaAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ninja/UnlockNinjaNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Odalisk/UnlockOdaliskAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Odalisk/UnlockOdaliskNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Pacifist/UnlockPacifistAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Pacifist/UnlockPacifistNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Pagemaster/UnlockPagemasterAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Pagemaster/UnlockPagemasterNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Paladin/UnlockPaladinAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Paladin/UnlockPaladinNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/PaxDuviricus/UnlockPaxDuviricusAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/PaxDuviricus/UnlockPaxDuviricusNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Priest/UnlockPriestAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Priest/UnlockPriestNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Promo/Twitch/LisetSkinTwitch" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ranger/UnlockRangerAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Ranger/UnlockRangerNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Revenant/UnlockRevenantAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Revenant/UnlockRevenantNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoDeluxeV2Agile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoDeluxeV2Noble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Runner/UnlockRunnerAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Runner/UnlockRunnerNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Sandman/UnlockSandmanAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Sandman/UnlockSandmanNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Sentient/UnlockSentientAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Sentient/UnlockSentientNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Tengu/UnlockTenguAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Tengu/UnlockTenguDeluxeAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Tengu/UnlockTenguDeluxeNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Tengu/UnlockTenguNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Trapper/UnlockTrapperAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Trapper/UnlockTrapperNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Trinity/UnlockTrinityAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Trinity/UnlockTrinityNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Volt/UnlockVoltAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Volt/UnlockVoltNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Werewolf/UnlockWerewolfAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Werewolf/UnlockWerewolfNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Wisp/UnlockWispAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Wisp/UnlockWispNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Wraith/UnlockWraithAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Wraith/UnlockWraithNoble" },
- { "ItemType": "/Lotus/Upgrades/Skins/Yareli/UnlockYareliAgile" },
- { "ItemType": "/Lotus/Upgrades/Skins/Yareli/UnlockYareliNoble" }
-]
diff --git a/static/fixed_responses/allMissions.json b/static/fixed_responses/allMissions.json
index f158de4a..74b18f42 100644
--- a/static/fixed_responses/allMissions.json
+++ b/static/fixed_responses/allMissions.json
@@ -1249,6 +1249,11 @@
"Tier": 1,
"Tag": "SolNode721"
},
+ {
+ "Completes": 1,
+ "Tier": 1,
+ "Tag": "SolNode723"
+ },
{
"Completes": 1,
"Tier": 1,
@@ -1516,6 +1521,7 @@
},
{
"Completes": 1,
+ "Tier": 1,
"Tag": "UranusToNeptuneJunction"
},
{
diff --git a/static/fixed_responses/allQuestKeys.json b/static/fixed_responses/allQuestKeys.json
deleted file mode 100644
index 370197b9..00000000
--- a/static/fixed_responses/allQuestKeys.json
+++ /dev/null
@@ -1,38 +0,0 @@
-[
- "/Lotus/Types/Keys/VorsPrize/VorsPrizeQuestKeyChain",
- "/Lotus/Types/Keys/GlassQuest/GlassQuestKeyChain",
- "/Lotus/Types/Keys/SolarisQuest/SolarisQuestKeyChain",
- "/Lotus/Types/Keys/InfestedIntroQuest/InfestedIntroQuestKeyChain",
- "/Lotus/Types/Keys/KubrowQuest/KubrowQuestKeyChain",
- "/Lotus/Types/Keys/ArchwingQuest/ArchwingQuestKeyChain",
- "/Lotus/Types/Keys/GetClemQuest/GetClemQuestKeyChain",
- "/Lotus/Types/Keys/SpyQuestKeyChain/SpyQuestKeyChain",
- "/Lotus/Types/Keys/DragonQuest/DragonQuestKeyChain",
- "/Lotus/Types/Keys/LimboQuest/LimboQuestKeyChain",
- "/Lotus/Types/Keys/SentientQuest/SentientQuestKeyChain",
- "/Lotus/Types/Keys/OrokinMoonQuest/OrokinMoonQuestKeyChain",
- "/Lotus/Types/Keys/MirageQuest/MirageQuestKeyChain",
- "/Lotus/Types/Keys/WarWithinQuest/WarWithinQuestKeyChain",
- "/Lotus/Types/Keys/InfestedAladVQuest/InfestedAladVQuestKeyChain",
- "/Lotus/Types/Keys/GolemQuest/GolemQuestKeyChainItem",
- "/Lotus/Types/Keys/BardQuest/BardQuestKeyChain",
- "/Lotus/Types/Keys/FairyQuest/FairyQuestKeyChain",
- "/Lotus/Types/Keys/IndexQuest/IndexQuestKeyChain",
- "/Lotus/Types/Keys/PriestFrameQuest/PriestQuestKeyChain",
- "/Lotus/Types/Keys/ApostasyQuest/ApostasyKeyChain",
- "/Lotus/Types/Keys/SacrificeQuest/SacrificeQuestKeyChain",
- "/Lotus/Types/Keys/ChimeraQuest/ChimeraKeyChain",
- "/Lotus/Types/Keys/MummyQuest/MummyQuestKeyChain",
- "/Lotus/Types/Keys/RailJackBuildQuest/RailjackBuildQuestKeyChain",
- "/Lotus/Types/Keys/NewWarIntroQuest/NewWarIntroKeyChain",
- "/Lotus/Types/Keys/ProteaQuest/ProteaQuestKeyChain",
- "/Lotus/Types/Keys/RevenantQuest/RevenantQuestKeyChain",
- "/Lotus/Types/Keys/InfestedMicroplanetQuest/InfestedMicroplanetQuestKeyChain",
- "/Lotus/Types/Keys/WraithQuest/WraithQuestKeyChain",
- "/Lotus/Types/Keys/YareliQuest/YareliQuestKeyChain",
- "/Lotus/Types/Keys/NewWarQuest/NewWarQuestKeyChain",
- "/Lotus/Types/Keys/ZarimanQuest/ZarimanQuestKeyChain",
- "/Lotus/Types/Keys/KahlQuest/KahlQuestKeyChain",
- "/Lotus/Types/Keys/DuviriQuest/DuviriQuestKeyChain",
- "/Lotus/Types/Keys/EntratiLab/EntratiQuestKeyChain"
-]
diff --git a/static/fixed_responses/allShipDecorations.json b/static/fixed_responses/allShipDecorations.json
deleted file mode 100644
index ec5a2ca9..00000000
--- a/static/fixed_responses/allShipDecorations.json
+++ /dev/null
@@ -1,1011 +0,0 @@
-[
- { "ItemCount": 1, "ItemType": "/Lotus/Objects/Tenno/Props/TnoLisetTextProjector" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/7thAnniversaryPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/8thAnniversaryPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteAreaCasterBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteControlBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteDuellistBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteHeavyBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteRogueBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AcolyteStrikerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AladVBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AlbrechtPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AmbulasBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArbitersHexisSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArbitersRewardStatue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Arcade" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArloBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArloFemaleFollowerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArloHealingLamp" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ArloMaleFollowerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AshBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AshPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AtlasBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/AtlasPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BansheeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BansheePrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroKiTeerDecorationH" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroPedestal" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaroPlanter" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaruukAltBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaruukBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaruukPattern" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaruukPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BaruukPrimePattern" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BekranZaftBucketBroom" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BombastineBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BoredTennoPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothCommonFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothRareBootTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothRareFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/BothUncommonFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamAHeavyBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamARifleBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamASkateBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamAZanukaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamBDisruptorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamBHyenaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamBRaptorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamBRiotMoaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamCDeceptionBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamCHackerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamCMoaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamCStealthBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamDBusterABobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamDBusterBBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamDBusterCBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CCTeamDOspreyBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CNY2021Poster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CalibanBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CephalonSudaSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChildDrawingG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChromaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ChromaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ClemBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Community10YearDasterDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Community10YearRoyalPratDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ConclaveHeartOroOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ConclaveOroMoonOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ConclaveOroOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ConclaveOroSunOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Conquera2021Deco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemAlloyDrum" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemArgonPegmatite" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemCellArray" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemCircuitryLockbox" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemFerriteDeposit" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemGalliumDeposit" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemMorphicsStabilizer" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemNeuropticMass" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemPlastidCarapace" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemPolymerCase" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemRoboticsLockbox" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemRubedoFormation" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemSalvage" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemSensorArray" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ContainerDecoItemSporeCulture" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefH" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefI" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefJ" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusGreedReliefK" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusShip/LisetPropGreedCoinBlack" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusShip/LisetPropGreedCoinBlue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusShip/LisetPropGreedCoinGold" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/CorpusShip/LisetPropHandShrine" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DarvoBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DayCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DayCommonFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DayCommonFishCTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DayUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DayUncommonFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/DaughterTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/DeimosHalloweenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FatherTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyHybridRareA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyHybridUncommonA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyHybridUncommonB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedCommonA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedCommonB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedCommonC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedCommonD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedCommonE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedRareA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyInfestedUncommonA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyOrokinLegendaryA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyOrokinRareA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/FishTrophyOrokinUncommonA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/GrandmotherTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropEntratiLamp" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedCrate" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedCystC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedCystD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedPlantA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedPlantC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropInfestedPlantE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropOrokinBeamBase" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropOrokinBlock" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/LisetPropOrokinFloorLight" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/MotherTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/OtakTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Deimos/SonTokenShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DominusThraxStatueDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DomsFinalDrink" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxBarrelLarge" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxBarrelSmall" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxContainerA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxContainerB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxContainerC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterHangingPot" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterHangingPotB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterHangingPotC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterPotA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterPotB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterPotC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterPotD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DUVxPlanterPotE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DominitiusThraxThrone" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxAbacusSmallA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxBirdBath" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxCemeteryMonumentA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxChairB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxChairC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxHayBaleSmall" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxIntPropStoolA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxIntPropTableA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxPodium" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxScaleA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxSingleBedA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxStandingChangeScreen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/Duviri2ndRelease/DUVxTable2mB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/DuviriDragonDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/NightwaveDuviriHeroDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Duviri/PuzzleSphinxOwl" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DuviriBookQuestReward" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/DuviriCommunityPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EliteAlertShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EmberBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EmberPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EmberVermillionBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EmpyreanPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabChairA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabChairB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabChaiseLounge" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabLightChandelierA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabLightChandelierB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabLightChandelierD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabLightWallCandleA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabLoveSeat" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabMachineB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabMachineD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabMachineJ" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabOttoman" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabStool" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/ORKxLabVesselEyeDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EntratiLabs/PagemasterOwl" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxCombinedBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxDayBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxNightBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxPrimeDayBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EquinoxPrimeNightBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/EraHypnosisPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ErraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/CitrineComboCrystalShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/NeonPrideWings" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/TickerValentineWings" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFBeastMasterBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFChargerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFEngineerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFGruntBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFHealerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFHeavyBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFHellionBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFRollerFloof" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFRollerFloofBeach" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFRollerFloofMorning" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFRollerFloofRainbow" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFRollerFloofRucksack" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFSniperBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Events/WFTankBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburArchwingBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburDexBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburJadeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburObsidianAzuraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburObsidianBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburOpalBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburPrismaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburProtoBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExcaliburUmbraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ExplorationPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FlappyZephyrPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Focus/MaduraiPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Focus/NaramonPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Focus/UnairuPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Focus/VazarinPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Focus/ZenurikPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FrameFighterPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FrostBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FrostHarkaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FrostPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/FrostSnowdayBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Gamification2019Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GaraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GaraPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GarudaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GarvLatroxPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GaussBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GaussPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GaussTowerOfAltraDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GlassmakerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GlyphPictureFrame" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrendelBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrendelOrokinDishSet" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrendelPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrimoireAltar" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsBeastMasterBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsChargerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsEngineerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsGruntBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsHealerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsHeavyBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsHellionBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsSniperBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerChampionsTankBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerExcavationBossBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerHyekkaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineAlt2DesertBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineAltArcticBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineAltDesertBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineArcticBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerMarineDesertBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/GrineerNightwatchMarineBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HarrowBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HarrowPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HarrowQuestKeyOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HeartOfDeimosAlbumCoverPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HildrynPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HydroidBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/HydroidPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InarosBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InarosCoffin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InarosPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InarosSarcophagusBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/IndexAutograph" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InfestationPrimeShipMaggot" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/InfestationShipMaggot" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ItzalArchwingBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/IvaraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/IvaraObsidianBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/IvaraPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JackONaughtBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JackalBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JavisExperimentsPosterA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JavisExperimentsPosterB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JavisExperimentsPosterC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/JavisExperimentsPosterD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KavatBust" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KelaDeThaymBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KhoraBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KhoraPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KineticSiphonTrapLiset" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowBedA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowBedB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowBedC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowBedD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowBust" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowKavatLowPolyPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowToyA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowToyB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowToyC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KubrowToyD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/KuvaMetaBallOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LavosDeviceDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/IvaraLeverianPovisRecordsDecoration" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/LisetPropMuralCycle" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/LisetPropMuralFenrus" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/LisetPropMuralMezzik" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/LisetPropMuralShyur" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Leverian/LisetPropMuralVonnel" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LimboBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LimboPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropAntenna" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropBallasSwordSheath" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusJug" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusPigmentBasketLarge" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusPigmentBasketSmall" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusStallSignA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusStallSignB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusStallSignC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusVegBasketA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusVegBasketB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCetusVegBasketC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDrone" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneBaro" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneBeachcomber" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneColorFive" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneColorFour" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneColorOne" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneColorThree" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneColorTwo" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneDuviri" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneInfested" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneTenno" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneTwitch" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCleaningDroneYareli" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCooler" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCorpusBasilisk" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCorpusHarpi" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropCorpusWeaver" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropDotDMandolin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropEidolonShard" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropFishingBoot" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGlassTreasureBox" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGradientMandolin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGrineerCrewship" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGrineerCutter" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGrineerFlak" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGrineerTaktis" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropGyrePulseDecoration" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropHardDrive" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropHologram" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropLotusMandolin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropMandolin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropMandolinGrineer" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropMandolinSentient" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropMultiport" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropNarmerMandolin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropNecraMechDrone" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropNoraNightShip" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOldLocker" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOperatorHoodDisplayBlack" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOperatorHoodDisplayDefault" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOperatorHoodDisplayGrey" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOroOperatorSwitch" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOroSigilMarker" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOroSpotlight" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOrokinMaggot" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstArtisanBulbs" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstBirdCage" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstBlubberPileB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstHaulingBalloonD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstLanternGround" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRodentCage" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugBaro" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugBlue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugGreen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugOrange" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugRed" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstRugYellow" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropOstStoneFish" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropPillar" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropReactor" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropSUPosters" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropSentientCore" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinDuviri" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinDuviriErsatz" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinPrime" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinTwitch" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinZariman" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropShawzinZarimanVoid" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropSimarisOfferings" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropSimarisResearch" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropStep" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropStyanaxSpearShieldDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropWolfHeadStatueADeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropWolfHeadStatueBDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropWolfHeadStatueCDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetPropWolfHeadStatueDDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LisetTickerSign" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LoidPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LokiBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LokiPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/LokiVervBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MacheteManicBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MagBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MagPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MagnoliaTree" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank00Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank01Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank02Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank03Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank04Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank05Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank06Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank07Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank08Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank09Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank10Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank11Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank12Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank13Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank14Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank15Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank16Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank17Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank18Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank19Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank20Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank21Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank22Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank23Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank24Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank25Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank26Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank27Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank28Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank29Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank30Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank31Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank32Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank33Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MasteryTrophies/Rank34Trophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MesaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MesaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MirageBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MiragePrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/MummyQuestVessel" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NekrosBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NekrosPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewLokaSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropBallasStaff" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinBench" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinGarbageBin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinMattress" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinPillow" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinStool" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropCabinTable" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropFamilyPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarBag" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarCube" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarFoodRack" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarPlantA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarPlantB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarPlantC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NewWar/LisetPropZarTechTablet" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NezhaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NezhaEtchingsTablets" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NezhaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NidusBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NidusPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NightLegendaryFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NightRareFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NightRareFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Nightwave/GlassmakerShipDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NoraNightBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NoraSeasonFourOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NoraSeasonThreeOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NoraSeasonTwoOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NoraWolfOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NovaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NovaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NyxBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/NyxPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OberonBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OberonPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OctaviaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OctaviaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OculystStatue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Operator/SchoolDecalMadurai" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Operator/SchoolDecalNaramon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Operator/SchoolDecalUnairu" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Operator/SchoolDecalVazarin" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Operator/SchoolDecalZenurik" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrame" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameBaro" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameH" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrbiterPictureFrameI" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OrokinFelisBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OstHaiLukBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OstHokBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OstKonzuBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OstronHeadStatue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/OwlOrdisStatue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ParazonPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PedistalPrime" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PerrinSequenceSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyCeresBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyDeimosBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyDerelictBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyDuviriBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyEarthBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyErisBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyEuropaBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyJupiterBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyKuvaFortressBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyLuaBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyMarsBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyMercuryBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyNeptuneBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyPhobosBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyPlutoBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophySaturnBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophySednaBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyUranusBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyVenusBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyVoidBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PlanetTrophies/PlanetTrophyZarimanBronze" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/BirdPlush" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/DeerPlush" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedCritterCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedCritterRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedCritterUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedKdriveCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedKdriveRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedKdriveUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMaggotCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMaggotRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMaggotUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMergooCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMergooRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedMergooUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedNexiferaCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedNexiferaRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedNexiferaUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedPredatorCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedPredatorRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedPredatorUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedZongroCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedZongroRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyInfestedZongroUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushyMoonMonsterCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Deimos/PlushySunMonsterCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/FishPlush" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/GaussPrimePlush" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Plushy2021QTCC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/Plushy2022QTCC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyArthur" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyBeachKavat" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyBolarolaCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyBolarolaRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyBolarolaUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyCarnivalKubrow" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyCondrocCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyCondrocRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyCondrocUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyDesertSkate" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyHorrasqueCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyHorrasqueRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyHorrasqueUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKoala" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKuakaCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKuakaRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKuakaUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKubrodonCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKubrodonRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKubrodonRareDirty" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyKubrodonUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyLNY2023Rabbit" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyLNY2024Dragon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyLotus" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyMergooCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyMergooRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyMergooUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyMorningKavat" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyOrdis" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyPobbersCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyPobbersRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyPobbersUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyPobbersUncommonDirty" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyRucksackKubrow" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushySawgawCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushySawgawRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushySawgawUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyStoverCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyStoverRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyStoverUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyThumper" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyThumperLarge" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyThumperMedium" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyThumperMediumDirty" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyTicker" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyTiger" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVampireKavatCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVampireKavatRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVampireKavatUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVirminkCommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVirminkQTCC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVirminkRare" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Plushies/PlushyVirminkUncommon" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/PopcornBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Pride2023Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RedVeilSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RelayEmberBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RelayHydroidBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemAlloyPlate" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemArgonCrystal" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemCetusWispTwitch" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemCircuits" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemControlModule" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemFerrite" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemGallium" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemIradite" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemMorphics" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemNanoSpore" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemNeuralSensor" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemNeurodes" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemOrokinCell" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemPlastids" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemPolymerBundle" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemRubedo" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemSalvage" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ResourceDecoItemVitusEssence" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RevenantPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RhinoBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RhinoDexBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RhinoJadeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/RhinoPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SargusRukBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SarynBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SarynPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ScarletSpearAsteroidsDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ScarletSpearPlanetDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SentientMeleeWarriorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SentientWarriorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ShawzinPlayableBase" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/StalkerBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/SteelMeridianSyndicateOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/StyanaxDeluxeSpearDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TNWKahlBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TNWTeshinBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TNWVesoBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCard2021Tennotober" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCard2022Tennotober" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCard2023Tennotober" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardAsh" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardAtlas" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardCaliban" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardCitrine" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardDagath" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardDante" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardGauss" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardGrendel" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardGyre" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardIvara" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardLavos" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardNezha" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardNova" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardSevagoth" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardStyanax" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConH" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConI" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennoConJ" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardTennotober" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardVoruna" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TarotCardYareli" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TeaSet" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021BallasPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayBaseTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayBestInShowTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayBestPetTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayBestWorkmanshipTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayFunniestTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021CosplayTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2021MerchDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayBaseTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayBestInShowTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayBestPetTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayBestWorkmanshipTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayFunniestTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022CosplayTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022MerchDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2022OrokinPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoCon2023SoundtrackADisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoConDojoGhostTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoConDojoMoonTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoConDojoMountainTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoConDojoShadowTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoConDojoStormTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TennoPlanterF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2017Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2018Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2018PlanterA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2018PlanterB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2018PlanterC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2019Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2019SimarisDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2020Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2020SimarisDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2023Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2023SoundtrackBDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Tennocon2024Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TeshinBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TeshinBust" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ThanoMechStatue" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TheLotusBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TitaniaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TitaniaPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TrinityBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TrinityPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/TylRegorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/UmbraDaxPortrait" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/UmbraPedestal" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ValkyrBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ValkyrPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VaubanBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VaubanPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VentKidBoardBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/ClemTennobaumDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/Conquera2023CommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusBothUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusCoolCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusCoolUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusWarmCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusWarmCommonFishBTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CorpusWarmUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/CrewmanBootTrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/OrokinBothLegendaryFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/OrokinBothRareFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/OrokinCoolRareFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/Pride2024Display" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/PrideCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUBookAOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUContainerCrate" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUCoolantPodA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUFoodBox" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUFoodCans" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUFoodSet" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUSupplyCartA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUSupplyCartB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUSupplyRack" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUTechToolA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUTechToolB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUTechToolC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUTechToolD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUToolBox" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUToolBoxLarge" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SUTruckSmall" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisBothCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisCoolCommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisCoolUncommonFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisPosterG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/SolarisWarmRareFishATrophy" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/StyanaxCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TNWGlintLotusDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TNWGlintOperatorDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TNWGlintTeshinDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TNWGlintUmbraDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TheNewWarKahlCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TheNewWarTeshinCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/TheNewWarVesoCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/ValaParvosCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidBooster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterG" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterH" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterI" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterJ" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterK" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterL" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterM" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterN" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterO" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VentKidPosterP" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/VenusBountyTrap" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Venus/YareliCommunityDisplay" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/ArachnoidCamperAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/ArachnoidCamperTerraAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/CrewmanAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/GrineerAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/RopalolystAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/TeralystAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/TeralystBigAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Enemies/TeralystRainAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Warframes/ArchwingAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/Vignettes/Warframes/WarframeAFItem" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VoidPlumeAOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VoidPlumeBOrnament" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VoltBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VoltPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/VorBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WeGame/LuckyKavat" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WeGame/LuckyKavatGold" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WeGame/LuckyKavatWhite" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WispPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WitWSupporterPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WolfBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WraithQuestRewardDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WukongBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WukongPrimeBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/WyrmiusPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/XakuPotF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliAltCoverPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliComicCoverPoster" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliEffectDeco" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliMerulinaBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/YareliQuestComic" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxCeilingLightA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxCineCabinTableA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxGlobeLightOrb" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxGlobeLightOrbJustOrb" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxGlowStickLightA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxHydroPlantStationA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxHydroponicsDoor" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxLunaroCourtBannerLargeA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxLunaroCourtBannerMediumA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxParkSignMapA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPortraitFrame" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPortraitFrameAlbrecht" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPortraitFrameFemale" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpBannerFloorA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpBannerFloorB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpBarrelPlastic" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAa" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAb" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAc" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAd" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAe" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAf" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAg" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAh" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpClassRoomPostersAi" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateLargeA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateLargeAOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateLargeAOpenTop" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumAOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumAOpenTop" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumBOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumBOpenTop" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumCOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumCOpenTop" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateMediumDEmpty" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateSmallB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateStackingMediumA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateStackingMediumAOpen" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateStackingMediumAOpenTop" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateStackingMediumB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateStackingMediumC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateTankMediumA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCrateTankMediumB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpCubeStationary" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpDrinkDispenser" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpEngineGeneratorA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpEngineGeneratorALight" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFloatingGlobe" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFloatingGlobeBase" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFloorSealPadA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodCanA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodCanB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodDrinkA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodDrinkB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodDrinkC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodKnifeA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodPouchA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodSpoonA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFoodTrayA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchA60A" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchA60B" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchA90A" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchA90B" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchASingle" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB20A" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB60A" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB60B" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB90A" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureBenchB90B" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureChairA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureClassRoomDeskA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureGroundLockerLongA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureGroundLockerLongB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureGroundLockerShortA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureGroundLockerShortB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureTableA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureWallLockerLongA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureWallLockerSmallA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureWallLockerSmallB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureWallLockerTallA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpFurnitureWallLockerTallB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpGarbageBinB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpHallwayCenterDivideA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpHallwayCenterDivideAPannelA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpHangingPlanets" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpHangingPlanetsB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenBoiler" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenFoodRationA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenFoodRationB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenFoodRationC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenFoodRationD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenFoodRationE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceD" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceE" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscApplianceF" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMiscTrayA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenMixer" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenPanA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenSaladSpinner" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpKitchenSterilizer" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpLabSetA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpLabSetB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpLabSetC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpPlanterClipOnSmlA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpPlanterClipOnSmlAFoliageB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpShoes" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpStatuePlinthA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpToolBoxStandingNew" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpWoodPanelWallSingleA16mA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpWoodPanelWallSingleEndCapA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxPrpWoodPanelWallSingleEndCapB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueChildHeroicA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueChildHeroicB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueFemaleHeroicA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueMaleHeroicA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueMaleHeroicB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueMaleHeroicDrummerA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueMaleHeroicKneelA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatueOrokinB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxStatuePlatformA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxTrophyA" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxTrophyB" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZarimanApartment/ZARxTrophyC" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZealoidPrelateBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZephyrBobbleHead" },
- { "ItemCount": 1, "ItemType": "/Lotus/Types/Items/ShipDecos/ZephyrPrimeBobbleHead" }
-]
diff --git a/static/fixed_responses/allSkins.json b/static/fixed_responses/allSkins.json
deleted file mode 100644
index 28c4a9c8..00000000
--- a/static/fixed_responses/allSkins.json
+++ /dev/null
@@ -1,4031 +0,0 @@
-[
- "/Lotus/Upgrades/Skins/Alchemist/AlchemistAgileAnims",
- "/Lotus/Upgrades/Skins/Alchemist/AlchemistAltHelmet",
- "/Lotus/Upgrades/Skins/Alchemist/AlchemistHelmet",
- "/Lotus/Upgrades/Skins/Alchemist/AlchemistNobleAnims",
- "/Lotus/Upgrades/Skins/Alchemist/AlchemistSkin",
- "/Lotus/Upgrades/Skins/Alchemist/SWLavosKuvaelHelmet",
- "/Lotus/Upgrades/Skins/Alchemist/SWLavosKuvaelSkin",
- "/Lotus/Upgrades/Skins/Alchemist/UnlockAlchemistAgile",
- "/Lotus/Upgrades/Skins/Alchemist/UnlockAlchemistNoble",
- "/Lotus/Upgrades/Skins/Anima/AnimaAgileAnims",
- "/Lotus/Upgrades/Skins/Anima/AnimaAltHelmet",
- "/Lotus/Upgrades/Skins/Anima/AnimaAltHelmetTwo",
- "/Lotus/Upgrades/Skins/Anima/AnimaDayAgileAnims",
- "/Lotus/Upgrades/Skins/Anima/AnimaDayNobleAnims",
- "/Lotus/Upgrades/Skins/Anima/AnimaHelmet",
- "/Lotus/Upgrades/Skins/Anima/AnimaNightAgileAnims",
- "/Lotus/Upgrades/Skins/Anima/AnimaNightNobleAnims",
- "/Lotus/Upgrades/Skins/Anima/AnimaNobleAnims",
- "/Lotus/Upgrades/Skins/Anima/SWDivisaHelmet",
- "/Lotus/Upgrades/Skins/Anima/SWDivisaSkin",
- "/Lotus/Upgrades/Skins/Anima/SWInsomniaHelmet",
- "/Lotus/Upgrades/Skins/Anima/SWInsomniaSkin",
- "/Lotus/Upgrades/Skins/Anima/SWMegaeraHelmet",
- "/Lotus/Upgrades/Skins/Anima/SWMegaeraSkin",
- "/Lotus/Upgrades/Skins/Anima/UnlockAnimaAgile",
- "/Lotus/Upgrades/Skins/Anima/UnlockAnimaDayAgile",
- "/Lotus/Upgrades/Skins/Anima/UnlockAnimaDayNoble",
- "/Lotus/Upgrades/Skins/Anima/UnlockAnimaNoble",
- "/Lotus/Upgrades/Skins/AntiMatter/AntiAltHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/AntiAltHelmetStatless",
- "/Lotus/Upgrades/Skins/AntiMatter/AntiHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/AntiMatterAgileAnims",
- "/Lotus/Upgrades/Skins/AntiMatter/AntiMatterNobleAnims",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaAlternateSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaDeluxeIIHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaDeluxeIISuit",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaDeluxeSuit",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaPrimeHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaPrimeSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaQuantumHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaSlipstreamHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaVoidShellHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/NovaVoidShellSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWCorpraHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWCorpraSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWGraxxNovaHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWGraxxNovaSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWNovaMithraHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWNovaMithraSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRFourNovaFusionHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeCygniHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeCygniSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeDeviceHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeDeviceSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeGnovaHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeGnovaSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeLamiaHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeLamiaSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeStingerHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeStingerSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeVisageHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/SWRThreeVisageSkin",
- "/Lotus/Upgrades/Skins/AntiMatter/SWTachyonHelmet",
- "/Lotus/Upgrades/Skins/AntiMatter/UnlockAntiMatterAgile",
- "/Lotus/Upgrades/Skins/AntiMatter/UnlockAntiMatterNoble",
- "/Lotus/Upgrades/Skins/Archer/ArcherCape",
- "/Lotus/Upgrades/Skins/Archer/IvaraDeluxeBallisticaSkin",
- "/Lotus/Upgrades/Skins/Archer/IvaraDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Archer/IvaraDeluxeSuit",
- "/Lotus/Upgrades/Skins/Archer/IvaraPrimeHelmet",
- "/Lotus/Upgrades/Skins/Archer/IvaraPrimeSkin",
- "/Lotus/Upgrades/Skins/Archer/ObsidianIvaraExaltedBowSkin",
- "/Lotus/Upgrades/Skins/Archer/ObsidianIvaraHelmet",
- "/Lotus/Upgrades/Skins/Archer/ObsidianIvaraSkin",
- "/Lotus/Upgrades/Skins/Archer/SWArcuataHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWArcuataSkin",
- "/Lotus/Upgrades/Skins/Archer/SWAstreaHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWAstreaSkin",
- "/Lotus/Upgrades/Skins/Archer/SWIvaraGraxxHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWIvaraGraxxSkin",
- "/Lotus/Upgrades/Skins/Archer/SWIvaraZamariuHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWIvaraZamariuSkin",
- "/Lotus/Upgrades/Skins/Archer/SWKuvaelHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWKuvaelSkin",
- "/Lotus/Upgrades/Skins/Archer/SWYoukaiHelmet",
- "/Lotus/Upgrades/Skins/Archer/SWYoukaiSkin",
- "/Lotus/Upgrades/Skins/Archer/WinterSolsticeSalix",
- "/Lotus/Upgrades/Skins/Archwing/DemolitionDefaultArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/GrendelArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/PrimeDefaultArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/StandardDefaultArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/StealthDefaultArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/SupportDefaultArchwingSkin",
- "/Lotus/Upgrades/Skins/Archwing/TitaniaPrimeArchwingSkin",
- "/Lotus/Upgrades/Skins/Armor/ArbiterOfHexisArmor/ArbiterOfHexisArmorA",
- "/Lotus/Upgrades/Skins/Armor/ArbiterOfHexisArmor/ArbiterOfHexisArmorC",
- "/Lotus/Upgrades/Skins/Armor/ArbiterOfHexisArmor/ArbiterOfHexisArmorL",
- "/Lotus/Upgrades/Skins/Armor/BaroArmour/BaroArmourA",
- "/Lotus/Upgrades/Skins/Armor/BaroArmour/BaroArmourC",
- "/Lotus/Upgrades/Skins/Armor/BaroArmour/BaroArmourL",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourThree/BaroArmourThreeA",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourThree/BaroArmourThreeC",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourThree/BaroArmourThreeL",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourTwo/BaroArmourTwoA",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourTwo/BaroArmourTwoC",
- "/Lotus/Upgrades/Skins/Armor/BaroArmourTwo/BaroArmourTwoL",
- "/Lotus/Upgrades/Skins/Armor/BillowingArmor/BillowingArmorA",
- "/Lotus/Upgrades/Skins/Armor/BillowingArmor/BillowingArmorC",
- "/Lotus/Upgrades/Skins/Armor/BillowingArmor/BillowingArmorL",
- "/Lotus/Upgrades/Skins/Armor/CephArmor/CephArmorA",
- "/Lotus/Upgrades/Skins/Armor/CephArmor/CephArmorC",
- "/Lotus/Upgrades/Skins/Armor/CephArmor/CephArmorL",
- "/Lotus/Upgrades/Skins/Armor/ChromaPrimeArmor/ChromaPrimeArmorA",
- "/Lotus/Upgrades/Skins/Armor/ChromaPrimeArmor/ChromaPrimeArmorC",
- "/Lotus/Upgrades/Skins/Armor/ChromaPrimeArmor/ChromaPrimeArmorL",
- "/Lotus/Upgrades/Skins/Armor/CorpusFencer/CrpFncAArmor",
- "/Lotus/Upgrades/Skins/Armor/CorpusFencer/CrpFncLArmor",
- "/Lotus/Upgrades/Skins/Armor/CorpusFencer/PS4CrpFncAArmor",
- "/Lotus/Upgrades/Skins/Armor/CorpusFencer/PS4CrpFncLArmor",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/CrpCircA",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/CrpCircC",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/CrpCircL",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/HalloweenCrpCircA",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/HalloweenCrpCircC",
- "/Lotus/Upgrades/Skins/Armor/CrpCircleArmour/HalloweenCrpCircL",
- "/Lotus/Upgrades/Skins/Armor/CrpCubinatorArmor/CrpCubinatorArmorA",
- "/Lotus/Upgrades/Skins/Armor/CrpCubinatorArmor/CrpCubinatorArmorC",
- "/Lotus/Upgrades/Skins/Armor/CrpCubinatorArmor/CrpCubinatorArmorL",
- "/Lotus/Upgrades/Skins/Armor/CrpHighArmor/CrpHighArmorA",
- "/Lotus/Upgrades/Skins/Armor/CrpHighArmor/CrpHighArmorC",
- "/Lotus/Upgrades/Skins/Armor/CrpHighArmor/CrpHighArmorL",
- "/Lotus/Upgrades/Skins/Armor/CrpIndexTwo/CrpIndexTwoAArmor",
- "/Lotus/Upgrades/Skins/Armor/CrpIndexTwo/CrpIndexTwoCArmor",
- "/Lotus/Upgrades/Skins/Armor/CrpIndexTwo/CrpIndexTwoLArmor",
- "/Lotus/Upgrades/Skins/Armor/CrpModular/CrpModularAArmorTwitch",
- "/Lotus/Upgrades/Skins/Armor/CrpModular/CrpModularCArmorTwitch",
- "/Lotus/Upgrades/Skins/Armor/CrpModular/CrpModularLArmorTwitch",
- "/Lotus/Upgrades/Skins/Armor/CrpShoulderArmor/CrpShoulderArmorL",
- "/Lotus/Upgrades/Skins/Armor/CrpSisters/CrpSistersA",
- "/Lotus/Upgrades/Skins/Armor/CrpSisters/CrpSistersC",
- "/Lotus/Upgrades/Skins/Armor/CrpSisters/CrpSistersL",
- "/Lotus/Upgrades/Skins/Armor/Daybreak/DaybreakArmourA",
- "/Lotus/Upgrades/Skins/Armor/Daybreak/DaybreakArmourC",
- "/Lotus/Upgrades/Skins/Armor/Daybreak/DaybreakArmourL",
- "/Lotus/Upgrades/Skins/Armor/Dex2020Armor/Dex2020ArmorAArmor",
- "/Lotus/Upgrades/Skins/Armor/Dex2020Armor/Dex2020ArmorCArmor",
- "/Lotus/Upgrades/Skins/Armor/Dex2020Armor/Dex2020ArmorLArmor",
- "/Lotus/Upgrades/Skins/Armor/DuvArmor/DuvArmorA",
- "/Lotus/Upgrades/Skins/Armor/DuvArmor/DuvArmorC",
- "/Lotus/Upgrades/Skins/Armor/DuvArmor/DuvArmorL",
- "/Lotus/Upgrades/Skins/Armor/FocusSchool/MaduraiCArmor",
- "/Lotus/Upgrades/Skins/Armor/FocusSchool/NaramonCArmor",
- "/Lotus/Upgrades/Skins/Armor/FocusSchool/UnairuCArmor",
- "/Lotus/Upgrades/Skins/Armor/FocusSchool/VazarinCArmor",
- "/Lotus/Upgrades/Skins/Armor/FocusSchool/ZenurikCArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/FurisAArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/FurisCArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/FurisLArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/PrismaFurisAArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/PrismaFurisCArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/PrismaFurisLArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/SolsticeFurisAArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/SolsticeFurisCArmor",
- "/Lotus/Upgrades/Skins/Armor/FurisArmor/SolsticeFurisLArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerQueenArmour/GrineerQueenArmourA",
- "/Lotus/Upgrades/Skins/Armor/GrineerQueenArmour/GrineerQueenArmourC",
- "/Lotus/Upgrades/Skins/Armor/GrineerQueenArmour/GrineerQueenArmourL",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/GrineerTurbinesArmArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/GrineerTurbinesChestArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/GrineerTurbinesLegArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/WraithTurbinesArmArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/WraithTurbinesChestArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerTurbines/WraithTurbinesLegArmor",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/GrineerVHA",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/GrineerVHC",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/GrineerVHL",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/SummerSolsticeMaggorA",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/SummerSolsticeMaggorC",
- "/Lotus/Upgrades/Skins/Armor/GrineerVHArmour/SummerSolsticeMaggorL",
- "/Lotus/Upgrades/Skins/Armor/GrnAmphisArmor/GrnAmphisAArmor",
- "/Lotus/Upgrades/Skins/Armor/GrnAmphisArmor/GrnAmphisCArmor",
- "/Lotus/Upgrades/Skins/Armor/GrnAmphisArmor/GrnAmphisLArmor",
- "/Lotus/Upgrades/Skins/Armor/GrnFaceMaskArmour/GrnFaceMaskArmour",
- "/Lotus/Upgrades/Skins/Armor/GrnFaceMaskArmour/ObsidianFaceMaskArmour",
- "/Lotus/Upgrades/Skins/Armor/GrnSteelMeridianArmor/GrnSteelMeridianAArmor",
- "/Lotus/Upgrades/Skins/Armor/GrnSteelMeridianArmor/GrnSteelMeridianCArmor",
- "/Lotus/Upgrades/Skins/Armor/GrnSteelMeridianArmor/GrnSteelMeridianLArmor",
- "/Lotus/Upgrades/Skins/Armor/GuideOfTheLotus/GuideOfTheLotusArmArmor",
- "/Lotus/Upgrades/Skins/Armor/Halloween2014Wings/Halloween2014ArmArmor",
- "/Lotus/Upgrades/Skins/Armor/Halloween2014Wings/PrismaNaberusArmArmor",
- "/Lotus/Upgrades/Skins/Armor/HarrowDeluxe/HarrowDeluxeAArmor",
- "/Lotus/Upgrades/Skins/Armor/HarrowDeluxe/HarrowDeluxeCArmor",
- "/Lotus/Upgrades/Skins/Armor/HarrowDeluxe/HarrowDeluxeLArmor",
- "/Lotus/Upgrades/Skins/Armor/InfEmbolistArmor/InfEmbolistArmorA",
- "/Lotus/Upgrades/Skins/Armor/InfEmbolistArmor/InfEmbolistArmorC",
- "/Lotus/Upgrades/Skins/Armor/InfEmbolistArmor/InfEmbolistArmorL",
- "/Lotus/Upgrades/Skins/Armor/InfestedFins/InfestedFinsArmArmor",
- "/Lotus/Upgrades/Skins/Armor/InfestedFins/InfestedFinsChestArmor",
- "/Lotus/Upgrades/Skins/Armor/InfestedFins/InfestedFinsLegArmor",
- "/Lotus/Upgrades/Skins/Armor/InfestedShoulderArmor/InfestedShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/IvaraPrimeArmor/IvaraPrimeAArmor",
- "/Lotus/Upgrades/Skins/Armor/IvaraPrimeArmor/IvaraPrimeCArmor",
- "/Lotus/Upgrades/Skins/Armor/IvaraPrimeArmor/IvaraPrimeLArmor",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetA/KuvaLichArmourAChest",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetA/KuvaLichArmourALegs",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetB/KuvaLichArmourBArms",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetB/KuvaLichArmourBChest",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetC/KuvaLichArmourCArms",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetC/KuvaLichArmourCChest",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetD/KuvaLichArmourDChest",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetE/KuvaLichArmourEChest",
- "/Lotus/Upgrades/Skins/Armor/KuvaLichSetF/KuvaLichArmourFChest",
- "/Lotus/Upgrades/Skins/Armor/LokiDeluxeArmour/LokiDeluxeAArmor",
- "/Lotus/Upgrades/Skins/Armor/LokiDeluxeArmour/LokiDeluxeCArmor",
- "/Lotus/Upgrades/Skins/Armor/LokiDeluxeArmour/LokiDeluxeLArmor",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetA/LunaroSetAA",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetA/LunaroSetAC",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetA/LunaroSetAL",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetB/LunaroSetBA",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetB/LunaroSetBC",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetB/LunaroSetBL",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetC/LunaroSetCA",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetC/LunaroSetCC",
- "/Lotus/Upgrades/Skins/Armor/LunaroSetC/LunaroSetCL",
- "/Lotus/Upgrades/Skins/Armor/Microsoft/JadeAxaArmourA",
- "/Lotus/Upgrades/Skins/Armor/Microsoft/JadeAxaArmourC",
- "/Lotus/Upgrades/Skins/Armor/Microsoft/JadeAxaArmourL",
- "/Lotus/Upgrades/Skins/Armor/NLokaArmor/NLokaAArmor",
- "/Lotus/Upgrades/Skins/Armor/NLokaArmor/NLokaCArmor",
- "/Lotus/Upgrades/Skins/Armor/NLokaArmor/NLokaLArmor",
- "/Lotus/Upgrades/Skins/Armor/NWIIIBossArmor/NWIIIBossAArmor",
- "/Lotus/Upgrades/Skins/Armor/NecraArmor/NecraArmorA",
- "/Lotus/Upgrades/Skins/Armor/NecraArmor/NecraArmorC",
- "/Lotus/Upgrades/Skins/Armor/NecraArmor/NecraArmorL",
- "/Lotus/Upgrades/Skins/Armor/OstronCrewArmor/OstronCrewArmorA",
- "/Lotus/Upgrades/Skins/Armor/OstronCrewArmor/OstronCrewArmorC",
- "/Lotus/Upgrades/Skins/Armor/OstronCrewArmor/OstronCrewArmorL",
- "/Lotus/Upgrades/Skins/Armor/PS5Armor/PS5ArmorA",
- "/Lotus/Upgrades/Skins/Armor/PS5Armor/PS5ArmorC",
- "/Lotus/Upgrades/Skins/Armor/PS5Armor/PS5ArmorL",
- "/Lotus/Upgrades/Skins/Armor/PerrinSequenceArmor/PerrinSequenceArmorA",
- "/Lotus/Upgrades/Skins/Armor/PerrinSequenceArmor/PerrinSequenceArmorC",
- "/Lotus/Upgrades/Skins/Armor/PerrinSequenceArmor/PerrinSequenceArmorL",
- "/Lotus/Upgrades/Skins/Armor/PersianArmour/TnPersianAArmor",
- "/Lotus/Upgrades/Skins/Armor/PersianArmour/TnPersianCArmor",
- "/Lotus/Upgrades/Skins/Armor/PersianArmour/TnPersianLArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeArmorEquinox/PrimeArmorEquinoxA",
- "/Lotus/Upgrades/Skins/Armor/PrimeArmorEquinox/PrimeArmorEquinoxC",
- "/Lotus/Upgrades/Skins/Armor/PrimeArmorEquinox/PrimeArmorEquinoxL",
- "/Lotus/Upgrades/Skins/Armor/PrimeAviaArmor/PrimeAviaAArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeAviaArmor/PrimeAviaCArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeAviaArmor/PrimeAviaLArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeGarudaArmor/PrimeGarudaAArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeGarudaArmor/PrimeGarudaCArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeGarudaArmor/PrimeGarudaLArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeGaussArmour/PrimeGaussArmourA",
- "/Lotus/Upgrades/Skins/Armor/PrimeGaussArmour/PrimeGaussArmourC",
- "/Lotus/Upgrades/Skins/Armor/PrimeGaussArmour/PrimeGaussArmourL",
- "/Lotus/Upgrades/Skins/Armor/PrimeInarosArmor/PrimeInarosArmorA",
- "/Lotus/Upgrades/Skins/Armor/PrimeInarosArmor/PrimeInarosArmorC",
- "/Lotus/Upgrades/Skins/Armor/PrimeInarosArmor/PrimeInarosArmorL",
- "/Lotus/Upgrades/Skins/Armor/PrimeNezhaArmor/PrimeNezhaArmorA",
- "/Lotus/Upgrades/Skins/Armor/PrimeNezhaArmor/PrimeNezhaArmorC",
- "/Lotus/Upgrades/Skins/Armor/PrimeNezhaArmor/PrimeNezhaArmorL",
- "/Lotus/Upgrades/Skins/Armor/PrimeOctaviaArmour/PrimeOctaviaArmourA",
- "/Lotus/Upgrades/Skins/Armor/PrimeOctaviaArmour/PrimeOctaviaArmourC",
- "/Lotus/Upgrades/Skins/Armor/PrimeOctaviaArmour/PrimeOctaviaArmourL",
- "/Lotus/Upgrades/Skins/Armor/PrimeRevenantArmour/PrimeRevenantArmourA",
- "/Lotus/Upgrades/Skins/Armor/PrimeRevenantArmour/PrimeRevenantArmourC",
- "/Lotus/Upgrades/Skins/Armor/PrimeRevenantArmour/PrimeRevenantArmourL",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetFour/PrimeSetFourA",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetFour/PrimeSetFourC",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetFour/PrimeSetFourL",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetMirage/PrimeSetMirageA",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetMirage/PrimeSetMirageC",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetMirage/PrimeSetMirageL",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetOne/PrimeSetOneArmArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetOne/PrimeSetOneChestArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetOne/PrimeSetOneLegArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetThree/PrimeSetThreeA",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetThree/PrimeSetThreeC",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetThree/PrimeSetThreeL",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetTwo/PrimeSetTwoArmArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetTwo/PrimeSetTwoChestArmor",
- "/Lotus/Upgrades/Skins/Armor/PrimeSetTwo/PrimeSetTwoLegArmor",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/ItzalArmourA",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/ItzalArmourC",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/ItzalArmourL",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/RailjackAArmor",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/RailjackCArmor",
- "/Lotus/Upgrades/Skins/Armor/RailjackArmor/RailjackLArmor",
- "/Lotus/Upgrades/Skins/Armor/RedVeilArmor/RedVeilAArmor",
- "/Lotus/Upgrades/Skins/Armor/RedVeilArmor/RedVeilCArmor",
- "/Lotus/Upgrades/Skins/Armor/RedVeilArmor/RedVeilLArmor",
- "/Lotus/Upgrades/Skins/Armor/RevenantArmor/RevenantArmorA",
- "/Lotus/Upgrades/Skins/Armor/RevenantArmor/RevenantArmorC",
- "/Lotus/Upgrades/Skins/Armor/RevenantArmor/RevenantArmorL",
- "/Lotus/Upgrades/Skins/Armor/SWAsakageArmor/SWAsakageA",
- "/Lotus/Upgrades/Skins/Armor/SWAsteriaChestArmor/SWAsteriaChestArmorC",
- "/Lotus/Upgrades/Skins/Armor/SWAvyrdiShoulderArmor/SWAvyrdiShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/SWDivaArmor/SWDivaArmourC",
- "/Lotus/Upgrades/Skins/Armor/SWEucyonArmor/SWEucyonChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SWFhanEpakArmor/SWFhanEpakArmourC",
- "/Lotus/Upgrades/Skins/Armor/SWInflatableShoulderArmor/SWInflatableShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/SWIonShoulderArmor/SWIonShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/SWJotunheimMusicShoulder/SWJotunheimMusicShoulder",
- "/Lotus/Upgrades/Skins/Armor/SWKishikamiArmor/SWKishikamiC",
- "/Lotus/Upgrades/Skins/Armor/SWKrtrimaArmor/SWKrtrimaArmorA",
- "/Lotus/Upgrades/Skins/Armor/SWKrtrimaArmor/SWKrtrimaArmorC",
- "/Lotus/Upgrades/Skins/Armor/SWKrtrimaArmor/SWKrtrimaArmorL",
- "/Lotus/Upgrades/Skins/Armor/SWLamassuShoulderArmor/SWLamassuShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/SWPaxisArmor/SWPaxisArmourC",
- "/Lotus/Upgrades/Skins/Armor/SWPaxisShoulderArmor/SWPaxisShoulderArmor",
- "/Lotus/Upgrades/Skins/Armor/SWPiercingEyeShoulderArmor/SWPiercingEyeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SWPiercingEyeShoulderArmor/SWPiercingEyeShoulderArmor",
- "/Lotus/Upgrades/Skins/Armor/SWRaigoChestArmor/SWRaigoChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SWSeraphimArmor/SWSeraphimChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SWVikasaAegisArmor/SWVikasaAegisArmorC",
- "/Lotus/Upgrades/Skins/Armor/SWVikasaPlatingShoulderArmor/SWVikasaPlatingShoulderArmor",
- "/Lotus/Upgrades/Skins/Armor/SWXulatuChest/SWXulatuChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SWZhiviraShoulderArmor/SWZhiviraShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor1A",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor1C",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor1L",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor2A",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor2C",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor2L",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor3A",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor3C",
- "/Lotus/Upgrades/Skins/Armor/SentEvoArmor/SentEvoArmor3L",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/JadeSetThreeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/JadeSetThreeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/JadeSetThreeLegArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SetThreeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SetThreeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SetThreeLegArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/SolsticeSetThreeLegArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/VTSetThreeArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/VTSetThreeArmRightArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/VTSetThreeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/VTSetThreeLegLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/SetThreeWinged/VTSetThreeLegRightArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/SetTwoArmArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/SetTwoChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/SetTwoLegArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/VTSetTwoArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/VTSetTwoArmRightArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/VTSetTwoChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/VTSetTwoLegLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/SetTwoSamurai/VTSetTwoLegRightArmor",
- "/Lotus/Upgrades/Skins/Armor/SevagothDlxFishArmour/SevagothDlxFishArmourA",
- "/Lotus/Upgrades/Skins/Armor/SolarisUnitedArmor/SolarisUnitedAArmor",
- "/Lotus/Upgrades/Skins/Armor/SolarisUnitedArmor/SolarisUnitedCArmor",
- "/Lotus/Upgrades/Skins/Armor/SolarisUnitedArmor/SolarisUnitedLArmor",
- "/Lotus/Upgrades/Skins/Armor/Sony/OAArmorA",
- "/Lotus/Upgrades/Skins/Armor/Sony/OAArmorC",
- "/Lotus/Upgrades/Skins/Armor/Sony/OAArmorL",
- "/Lotus/Upgrades/Skins/Armor/StalkArmour/StalkA",
- "/Lotus/Upgrades/Skins/Armor/StalkArmour/StalkC",
- "/Lotus/Upgrades/Skins/Armor/StalkArmour/StalkL",
- "/Lotus/Upgrades/Skins/Armor/Sundial/SundialA",
- "/Lotus/Upgrades/Skins/Armor/Sundial/SundialC",
- "/Lotus/Upgrades/Skins/Armor/Sundial/SundialL",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2018Armor/TennoCon2018ArmorA",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2018Armor/TennoCon2018ArmorC",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2018Armor/TennoCon2018ArmorL",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2019Armor/TennoCon2019AArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2019Armor/TennoCon2019CArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2019Armor/TennoCon2019LArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2021Armor/TennoCon2021AArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2021Armor/TennoCon2021CArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2021Armor/TennoCon2021LArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2022Armor/TennoCon2022AArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2022Armor/TennoCon2022CArmor",
- "/Lotus/Upgrades/Skins/Armor/TennoCon2022Armor/TennoCon2022LArmor",
- "/Lotus/Upgrades/Skins/Armor/TitaniaDeluxeArmor/TitaniaDeluxeArmorA",
- "/Lotus/Upgrades/Skins/Armor/TitaniaDeluxeArmor/TitaniaDeluxeArmorC",
- "/Lotus/Upgrades/Skins/Armor/TitaniaDeluxeArmor/TitaniaDeluxeArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnArmorCurve/TnArmorCurveA",
- "/Lotus/Upgrades/Skins/Armor/TnArmorCurve/TnArmorCurveC",
- "/Lotus/Upgrades/Skins/Armor/TnArmorCurve/TnArmorCurveL",
- "/Lotus/Upgrades/Skins/Armor/TnBayonettaArmor/TnDeimosSupporterArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnBayonettaArmor/TnDeimosSupporterArmorC",
- "/Lotus/Upgrades/Skins/Armor/TnBayonettaArmor/TnDeimosSupporterArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnCeramicArmor/TnCeramicArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnCeramicArmor/TnCeramicArmorC",
- "/Lotus/Upgrades/Skins/Armor/TnCeramicArmor/TnCeramicArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnCharityRibbonArmor/ConqueraArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnCharityRibbonArmor/ConqueraArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnCharityRibbonArmor/ConqueraChestRibbon",
- "/Lotus/Upgrades/Skins/Armor/TnHvArmour/TnHvArmourA",
- "/Lotus/Upgrades/Skins/Armor/TnHvArmour/TnHvArmourC",
- "/Lotus/Upgrades/Skins/Armor/TnHvArmour/TnHvArmourL",
- "/Lotus/Upgrades/Skins/Armor/TnIceArmor/TnIceArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnIceArmor/TnIceArmorC",
- "/Lotus/Upgrades/Skins/Armor/TnIceArmor/TnIceArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronArmArmorElixis",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronArmArmorPrisma",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronChestArmorElixis",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronChestArmorPrisma",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronLegArmorElixis",
- "/Lotus/Upgrades/Skins/Armor/TnLatronArmor/TnLatronLegArmorPrisma",
- "/Lotus/Upgrades/Skins/Armor/TnNewPlayerArmor/TnNewPlayerAArmor",
- "/Lotus/Upgrades/Skins/Armor/TnNewPlayerArmor/TnNewPlayerCArmor",
- "/Lotus/Upgrades/Skins/Armor/TnNewPlayerArmor/TnNewPlayerLArmor",
- "/Lotus/Upgrades/Skins/Armor/TnPagemasterArmor/TnPagemasterArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnPagemasterArmor/TnPagemasterArmorC",
- "/Lotus/Upgrades/Skins/Armor/TnShinaiArmor/TnShinaiArmorA",
- "/Lotus/Upgrades/Skins/Armor/TnShinaiArmor/TnShinaiArmorC",
- "/Lotus/Upgrades/Skins/Armor/TnShinaiArmor/TnShinaiArmorL",
- "/Lotus/Upgrades/Skins/Armor/TnoCharityRibbon/TnoCharityRibbon",
- "/Lotus/Upgrades/Skins/Armor/Twitch2021Armor/TwitchArmor2021A",
- "/Lotus/Upgrades/Skins/Armor/Twitch2021Armor/TwitchArmor2021C",
- "/Lotus/Upgrades/Skins/Armor/Twitch2021Armor/TwitchArmor2021L",
- "/Lotus/Upgrades/Skins/Armor/UmbraArmour/UmbraAArmor",
- "/Lotus/Upgrades/Skins/Armor/UmbraArmour/UmbraCArmor",
- "/Lotus/Upgrades/Skins/Armor/UmbraArmour/UmbraLArmor",
- "/Lotus/Upgrades/Skins/Armor/VTEos/VTEosALArmor",
- "/Lotus/Upgrades/Skins/Armor/VTEos/VTEosARArmor",
- "/Lotus/Upgrades/Skins/Armor/VTEos/VTEosChestArmor",
- "/Lotus/Upgrades/Skins/Armor/VTEos/VTEosLLArmor",
- "/Lotus/Upgrades/Skins/Armor/VTEos/VTEosLRArmor",
- "/Lotus/Upgrades/Skins/Armor/ValkyrDeluxeArmor/ValkyrDeluxeArmorA",
- "/Lotus/Upgrades/Skins/Armor/ValkyrDeluxeArmor/ValkyrDeluxeArmorC",
- "/Lotus/Upgrades/Skins/Armor/ValkyrDeluxeArmor/ValkyrDeluxeArmorL",
- "/Lotus/Upgrades/Skins/Armor/VeilShoulderArmor/VeilShoulderArmorA",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/BansheeArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/BansheePrimeArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/DagathArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/EmberDeluxeIIArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/EmberDeluxeIIChestArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/EmberPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/EmptyCustomization",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/ExcaliburDeluxeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostEmperorArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostGrostArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostHeirloomArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/FrostVoidshellArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/HildrynPrimeChestArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/HydroidPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/LavosArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/MagPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/OberonArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/OberonPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/RevenantDeluxeCape",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/RevenantPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWBansheeBotLArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWFrostStrigidArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWHisameArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWIonFrostArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWLavosKuvaelArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWOberonBotLArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWOberonYoukaiArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/SWSonorityArmLeftArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/VoltArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/VoltChameleonArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/VoltPrimeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/WerewolfArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/WerewolfVoidshellArmArmor",
- "/Lotus/Upgrades/Skins/Armor/WarframeDefaults/WukongDeluxeArmArmor",
- "/Lotus/Upgrades/Skins/Armor/Wolf/TennoWolfAArmor",
- "/Lotus/Upgrades/Skins/Armor/Wolf/TennoWolfCArmor",
- "/Lotus/Upgrades/Skins/Armor/Wolf/TennoWolfLArmor",
- "/Lotus/Upgrades/Skins/Armor/SetOneArmArmor",
- "/Lotus/Upgrades/Skins/Armor/SetOneChestArmor",
- "/Lotus/Upgrades/Skins/Armor/SetOneLegArmor",
- "/Lotus/Upgrades/Skins/Arrows/AlternateArrowA",
- "/Lotus/Upgrades/Skins/Arrows/AlternateArrowB",
- "/Lotus/Upgrades/Skins/Arrows/AlternateArrowC",
- "/Lotus/Upgrades/Skins/Asp/AspAgileAnims",
- "/Lotus/Upgrades/Skins/Asp/AspAltHelmet",
- "/Lotus/Upgrades/Skins/Asp/AspAltHelmetB",
- "/Lotus/Upgrades/Skins/Asp/AspAltHelmetBStatless",
- "/Lotus/Upgrades/Skins/Asp/AspAltHelmetStatless",
- "/Lotus/Upgrades/Skins/Asp/AspHelmet",
- "/Lotus/Upgrades/Skins/Asp/AspNobleAnims",
- "/Lotus/Upgrades/Skins/Asp/SarynAlternateSkin",
- "/Lotus/Upgrades/Skins/Asp/UnlockAspAgile",
- "/Lotus/Upgrades/Skins/Asp/UnlockAspNoble",
- "/Lotus/Upgrades/Skins/Axe/DaggerAxe",
- "/Lotus/Upgrades/Skins/Axe/SarynDeluxeSickle",
- "/Lotus/Upgrades/Skins/Axe/SolsticeScindo",
- "/Lotus/Upgrades/Skins/Bard/BardAgileAnims",
- "/Lotus/Upgrades/Skins/Bard/BardAltCloakA",
- "/Lotus/Upgrades/Skins/Bard/BardAltCloakB",
- "/Lotus/Upgrades/Skins/Bard/BardAltHelmet",
- "/Lotus/Upgrades/Skins/Bard/BardHelmet",
- "/Lotus/Upgrades/Skins/Bard/BardNobleAnims",
- "/Lotus/Upgrades/Skins/Bard/BardSkin",
- "/Lotus/Upgrades/Skins/Bard/BardTwitchAltHelmet",
- "/Lotus/Upgrades/Skins/Bard/BardTwitchHelmet",
- "/Lotus/Upgrades/Skins/Bard/BardTwitchSkin",
- "/Lotus/Upgrades/Skins/Bard/OctaviaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Bard/OctaviaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Bard/OctaviaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Bard/OctaviaPrimeSkin",
- "/Lotus/Upgrades/Skins/Bard/SWDivaHelmet",
- "/Lotus/Upgrades/Skins/Bard/SWDivaSkin",
- "/Lotus/Upgrades/Skins/Bard/SWGiocosoHelmet",
- "/Lotus/Upgrades/Skins/Bard/SWMandachoralystHelmet",
- "/Lotus/Upgrades/Skins/Bard/SWMandachoralystSkin",
- "/Lotus/Upgrades/Skins/Bard/SWOctaviaYoukaiHelmet",
- "/Lotus/Upgrades/Skins/Bard/SWOctaviaYoukaiSkin",
- "/Lotus/Upgrades/Skins/Bard/UnlockBardAgile",
- "/Lotus/Upgrades/Skins/Bard/UnlockBardNoble",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerAgileAnims",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerBastetHelmet",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerDangles",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerDeluxeAgileAnims",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerDeluxeNobleAnims",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerDeluxeSuit",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerHelmet",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerNobleAnims",
- "/Lotus/Upgrades/Skins/Berserker/BerserkerSkin",
- "/Lotus/Upgrades/Skins/Berserker/JadeValkyrHelmet",
- "/Lotus/Upgrades/Skins/Berserker/JadeValkyrSkin",
- "/Lotus/Upgrades/Skins/Berserker/SWDelusionHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWDelusionSkin",
- "/Lotus/Upgrades/Skins/Berserker/SWIonHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWLeonessaHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWLeonessaSkin",
- "/Lotus/Upgrades/Skins/Berserker/SWMithraValkyrHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWMithraValkyrSkin",
- "/Lotus/Upgrades/Skins/Berserker/SWRFiveValkyrCheetahHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWRFourValkyrGraxxHelmet",
- "/Lotus/Upgrades/Skins/Berserker/SWRFourValkyrGraxxSkin",
- "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerAgile",
- "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerDeluxeAgile",
- "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerDeluxeNoble",
- "/Lotus/Upgrades/Skins/Berserker/UnlockBerserkerNoble",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrAltBHelmet",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrAlternateSkin",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrDeluxeFistSkin",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrDeluxeSkin",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrPrimeDangles",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrPrimeHelmet",
- "/Lotus/Upgrades/Skins/Berserker/ValkyrPrimeSkin",
- "/Lotus/Upgrades/Skins/BrassAndGold/BrassAndGoldAkbolto",
- "/Lotus/Upgrades/Skins/BrassAndGold/BrassAndGoldBolto",
- "/Lotus/Upgrades/Skins/BrassAndGold/BrassAndGoldDaikyu",
- "/Lotus/Upgrades/Skins/BrassAndGold/BrassAndGoldTipedo",
- "/Lotus/Upgrades/Skins/Brawler/AtlasDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Brawler/AtlasDeluxeSkin",
- "/Lotus/Upgrades/Skins/Brawler/AtlasPrimeHelmet",
- "/Lotus/Upgrades/Skins/Brawler/AtlasPrimeSkin",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerAgileAnims",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerAlt2Helmet",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerAltHelmet",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerHelmet",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerNobleAnims",
- "/Lotus/Upgrades/Skins/Brawler/BrawlerSkin",
- "/Lotus/Upgrades/Skins/Brawler/SWAtlasBotLHelmet",
- "/Lotus/Upgrades/Skins/Brawler/SWAtlasBotLSkin",
- "/Lotus/Upgrades/Skins/Brawler/SWAtlasGraxxHelmet",
- "/Lotus/Upgrades/Skins/Brawler/SWAtlasGraxxSkin",
- "/Lotus/Upgrades/Skins/Brawler/SWMonolithHelmet",
- "/Lotus/Upgrades/Skins/Brawler/SWMonolithSkin",
- "/Lotus/Upgrades/Skins/Brawler/SWRFiveAtlasArhatHelmet",
- "/Lotus/Upgrades/Skins/Brawler/SWRSixAtlasTelamonHelmet",
- "/Lotus/Upgrades/Skins/Brawler/UnlockBrawlerAgile",
- "/Lotus/Upgrades/Skins/Brawler/UnlockBrawlerNoble",
- "/Lotus/Upgrades/Skins/BrokenFrame/BrokenFrameAgileAnims",
- "/Lotus/Upgrades/Skins/BrokenFrame/BrokenFrameAltHelmet",
- "/Lotus/Upgrades/Skins/BrokenFrame/BrokenFrameHelmet",
- "/Lotus/Upgrades/Skins/BrokenFrame/BrokenFrameNobleAnims",
- "/Lotus/Upgrades/Skins/BrokenFrame/BrokenFrameSkin",
- "/Lotus/Upgrades/Skins/BrokenFrame/SWXakuDeatheaHelmet",
- "/Lotus/Upgrades/Skins/BrokenFrame/SWXakuDeatheaSkin",
- "/Lotus/Upgrades/Skins/BrokenFrame/UnlockBrokenFrameAgile",
- "/Lotus/Upgrades/Skins/BrokenFrame/UnlockBrokenFrameNoble",
- "/Lotus/Upgrades/Skins/BrokenFrame/XakuDeluxeHelmet",
- "/Lotus/Upgrades/Skins/BrokenFrame/XakuDeluxeSkin",
- "/Lotus/Upgrades/Skins/Camo/AkimboViperCamo",
- "/Lotus/Upgrades/Skins/Camo/DesertAtteraxSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertDirigaSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertGrinlokSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertHekSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertKarakSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertMarelokSkin",
- "/Lotus/Upgrades/Skins/Camo/DesertTonkorSkin",
- "/Lotus/Upgrades/Skins/Camo/GorgonCamo",
- "/Lotus/Upgrades/Skins/Camo/GrakataCamo",
- "/Lotus/Upgrades/Skins/Camo/GrnAkimboPistolsCamo",
- "/Lotus/Upgrades/Skins/Camo/KrackenCamo",
- "/Lotus/Upgrades/Skins/Camo/SobekCamo",
- "/Lotus/Upgrades/Skins/Camo/ViperCamo",
- "/Lotus/Upgrades/Skins/Camo/VulkarCamo",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorA",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorB",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorC",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorDuviri",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorGaraPrime",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorHalloweenA",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorPrime",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/CatbrowArmorVoidTraderA",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/EmpyreanKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/GrnAmphisKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/GrnQueenCatbrowArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/RevenantKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/TnTigrisKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/Twitch2021MyrdinCatbrowArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/UmbraKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/VermillionKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/Armor/WispKavatArmor",
- "/Lotus/Upgrades/Skins/Catbrows/CephalonCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/ContestCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/DaybreakCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/GaraPrimeCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/NexusCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/PrimeCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/SolsticeCatbrowFur",
- "/Lotus/Upgrades/Skins/Catbrows/XmasCatbrowSkin",
- "/Lotus/Upgrades/Skins/CephWepSkins/CephGaundaoSkin",
- "/Lotus/Upgrades/Skins/CephWepSkins/CephPyranaSkin",
- "/Lotus/Upgrades/Skins/CephWepSkins/CephRubicoSkin",
- "/Lotus/Upgrades/Skins/Clan/Focus/MaduraiBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Focus/NaramonBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Focus/UnairuBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Focus/VazarinBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Focus/ZenurikBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearGroundIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearGroundIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearGroundIIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearOperationIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearOperationIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearOperationIIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearSpaceIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearSpaceIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/ScarletSpear/ScarletSpearSpaceIIIEmblem",
- "/Lotus/Upgrades/Skins/Clan/AggressionEventCorpusBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/AggressionEventGrineerBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/AllianceEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/AmalgamEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/AmbulasEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/BaroKavatBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/BaroKubrowBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/BaroQuantumBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/BountyHunterBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/CNY2021EmblemItem",
- "/Lotus/Upgrades/Skins/Clan/CNY2022EmblemItem",
- "/Lotus/Upgrades/Skins/Clan/CNY2023EmblemItem",
- "/Lotus/Upgrades/Skins/Clan/CY17173MediaBadge",
- "/Lotus/Upgrades/Skins/Clan/CYCCBBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/CYDuowanMediaBadge",
- "/Lotus/Upgrades/Skins/Clan/CYOBBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/CYPlayBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ClanEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/Community10YearEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/ConservationBadgeBItem",
- "/Lotus/Upgrades/Skins/Clan/ConservationBadgeCItem",
- "/Lotus/Upgrades/Skins/Clan/ConservationBadgeDeimosItem",
- "/Lotus/Upgrades/Skins/Clan/ConservationBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/CorpusLichBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/CorpusVoidBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/DefectorRescueEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/DogDaysBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Dragon2024BadgeItem",
- "/Lotus/Upgrades/Skins/Clan/DrakeRifleBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/EliteAlertBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/EntratiEventEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/ExcaliburUmbraBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ExcavationEvenetBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/FalseProfitEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/FoundersBadgeDiscipleItem",
- "/Lotus/Upgrades/Skins/Clan/FoundersBadgeGrandMasterItem",
- "/Lotus/Upgrades/Skins/Clan/FoundersBadgeHunterItem",
- "/Lotus/Upgrades/Skins/Clan/FoundersBadgeMasterItem",
- "/Lotus/Upgrades/Skins/Clan/GlassmakerEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/GolemRaidBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/GrnSeaLabEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Halloween2023OwlBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/Halloween2023RamBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/HiveSabotageEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/HolidayDeathMatchBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/IndexEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/InfTacAlertDiseasedAncientBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/InfTacAlertNaniteMoaAncientBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/InfTacAlertPussAncientBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/InfTacAlertSlowBombMoaAncientBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/InfestationEventEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/JungleEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/KelaEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/LeaderBadgeGhostItem",
- "/Lotus/Upgrades/Skins/Clan/LeaderBadgeMoonItem",
- "/Lotus/Upgrades/Skins/Clan/LeaderBadgeMountainItem",
- "/Lotus/Upgrades/Skins/Clan/LeaderBadgeShadowItem",
- "/Lotus/Upgrades/Skins/Clan/LeaderBadgeStormItem",
- "/Lotus/Upgrades/Skins/Clan/LichKillerBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/LotusGuideBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/MechEventEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/MutalistIncursionsBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/NightmareSevantiHaloBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/NoraSeasonTwoBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/OrbBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/OrokinSabotageBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/OrokittyBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/PS5OkinaBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/PlagueStarBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/PrismaLotusEmblem",
- "/Lotus/Upgrades/Skins/Clan/ProjectSinisterBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/PvpRepBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/RadioLegionBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/RescueEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/SevantiHaloBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/SevantiLegacyHaloBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ShipyardsEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ShipyardsEventQuantumBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/SkullBadgeBronzeItem",
- "/Lotus/Upgrades/Skins/Clan/SkullBadgeGoldItem",
- "/Lotus/Upgrades/Skins/Clan/SkullBadgeSilverItem",
- "/Lotus/Upgrades/Skins/Clan/SlingStone2EmblemItem",
- "/Lotus/Upgrades/Skins/Clan/SlingStoneEmblemItem",
- "/Lotus/Upgrades/Skins/Clan/SolarisBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/SurvivalEventBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TenYearAnniversaryBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TennoCon2016BadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TennoGenBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TranslatorBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TwitchNecraloidBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/TwitchPromo2021BadgeItem",
- "/Lotus/Upgrades/Skins/Clan/WikiaBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/WolfBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/XBoneJadeClemBadgeItem",
- "/Lotus/Upgrades/Skins/Clan/ZarimanEvolvingSekharaBadgeItemA",
- "/Lotus/Upgrades/Skins/Clan/ZarimanEvolvingSekharaBadgeItemB",
- "/Lotus/Upgrades/Skins/Clan/ZarimanEvolvingSekharaBadgeItemC",
- "/Lotus/Upgrades/Skins/Clan/ZawVariantBadgeItemA",
- "/Lotus/Upgrades/Skins/Clan/ZawVariantBadgeItemB",
- "/Lotus/Upgrades/Skins/Clan/ZawVariantBadgeItemC",
- "/Lotus/Upgrades/Skins/ConcreteFrame/ConcreteAgileAnims",
- "/Lotus/Upgrades/Skins/ConcreteFrame/ConcreteFrameAltHelmet",
- "/Lotus/Upgrades/Skins/ConcreteFrame/ConcreteFrameHelmet",
- "/Lotus/Upgrades/Skins/ConcreteFrame/ConcreteFrameSkin",
- "/Lotus/Upgrades/Skins/ConcreteFrame/ConcreteNobleAnims",
- "/Lotus/Upgrades/Skins/ConcreteFrame/UnlockConcreteAgile",
- "/Lotus/Upgrades/Skins/ConcreteFrame/UnlockConcreteNoble",
- "/Lotus/Upgrades/Skins/Contests/LongGuns/VectisSharpshooter",
- "/Lotus/Upgrades/Skins/Contests/LongGuns/VectisSilferer",
- "/Lotus/Upgrades/Skins/Contests/Melee/DualZorenCombustion",
- "/Lotus/Upgrades/Skins/Contests/Melee/DualZorenKuberus",
- "/Lotus/Upgrades/Skins/Contests/Melee/ScindoCombustion",
- "/Lotus/Upgrades/Skins/Contests/Melee/ScindoKuberus",
- "/Lotus/Upgrades/Skins/Contests/Pistols/AkmagnusDakila",
- "/Lotus/Upgrades/Skins/Contests/Pistols/AkmagnusHiveLight",
- "/Lotus/Upgrades/Skins/Contests/Pistols/MagnusDakila",
- "/Lotus/Upgrades/Skins/Contests/Pistols/MagnusHiveLight",
- "/Lotus/Upgrades/Skins/Cowgirl/CowgirlAgileAnims",
- "/Lotus/Upgrades/Skins/Cowgirl/CowgirlAltHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/CowgirlHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/CowgirlNobleAnims",
- "/Lotus/Upgrades/Skins/Cowgirl/CowgirlSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaAltBHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeArmGunSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeDualPistolSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxePistolSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeV2ArmGunSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeV2Helmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaDeluxeV2Skin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaImmortallSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaPrimeAltHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaPrimeSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/MesaVoidShellSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWCowgirlInsomniaHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWCowgirlInsomniaSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWDevilRangerHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWDevilRangerSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWGraxxMesaHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWGraxxMesaSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWKudegraHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWKudegraSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWMarletHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWMarletSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWMesnificentHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWMesnificentSkin",
- "/Lotus/Upgrades/Skins/Cowgirl/SWRThreeDeadEyeHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/SWRThreeFalconHelmet",
- "/Lotus/Upgrades/Skins/Cowgirl/UnlockCowgirlAgile",
- "/Lotus/Upgrades/Skins/Cowgirl/UnlockCowgirlNoble",
- "/Lotus/Upgrades/Skins/Crowns/DexVinesCrown",
- "/Lotus/Upgrades/Skins/Crowns/HeirloomFrostCrown",
- "/Lotus/Upgrades/Skins/Crowns/HeirloomMagCrown",
- "/Lotus/Upgrades/Skins/Crowns/LaurelHaloCrown",
- "/Lotus/Upgrades/Skins/CrpArSniper/CrpArSniperLichSkin",
- "/Lotus/Upgrades/Skins/Dagath/DagathAgileAnims",
- "/Lotus/Upgrades/Skins/Dagath/DagathAltHelmet",
- "/Lotus/Upgrades/Skins/Dagath/DagathHelmet",
- "/Lotus/Upgrades/Skins/Dagath/DagathNobleAnims",
- "/Lotus/Upgrades/Skins/Dagath/DagathSkin",
- "/Lotus/Upgrades/Skins/Dagath/UnlockDagathAgile",
- "/Lotus/Upgrades/Skins/Dagath/UnlockDagathNoble",
- "/Lotus/Upgrades/Skins/Dazzle/BratonDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/CestraDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/DeraDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/DetronDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/DualCestraDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/FluxRifleDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/LankaDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/LectaDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/ObexDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/OpticorDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/PentaDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/ProvaDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/ShockExergisSkin",
- "/Lotus/Upgrades/Skins/Dazzle/ShockFalcorSkin",
- "/Lotus/Upgrades/Skins/Dazzle/ShockPlinxSkin",
- "/Lotus/Upgrades/Skins/Dazzle/SnipetronDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/SpectraDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/SupraDazzleCamo",
- "/Lotus/Upgrades/Skins/Dazzle/TetraDazzleCamo",
- "/Lotus/Upgrades/Skins/Decree/BansheeAlternateSkin",
- "/Lotus/Upgrades/Skins/Decree/BansheeDeluxeArmLeftArmor",
- "/Lotus/Upgrades/Skins/Decree/BansheeDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Decree/BansheeDeluxeSuit",
- "/Lotus/Upgrades/Skins/Decree/BansheePrimeHelmet",
- "/Lotus/Upgrades/Skins/Decree/BansheePrimeSkin",
- "/Lotus/Upgrades/Skins/Decree/BansheeSkin",
- "/Lotus/Upgrades/Skins/Decree/BansheeVoidShellArmLeftArmor",
- "/Lotus/Upgrades/Skins/Decree/BansheeVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Decree/BansheeVoidShellSkin",
- "/Lotus/Upgrades/Skins/Decree/DecreeAgileAnims",
- "/Lotus/Upgrades/Skins/Decree/DecreeAltHelmet",
- "/Lotus/Upgrades/Skins/Decree/DecreeAltHelmetB",
- "/Lotus/Upgrades/Skins/Decree/DecreeAltHelmetBStatless",
- "/Lotus/Upgrades/Skins/Decree/DecreeAltHelmetStatless",
- "/Lotus/Upgrades/Skins/Decree/DecreeHelmet",
- "/Lotus/Upgrades/Skins/Decree/DecreeNobleAnims",
- "/Lotus/Upgrades/Skins/Decree/SWBansheeBotLHelmet",
- "/Lotus/Upgrades/Skins/Decree/SWBansheeBotLSkin",
- "/Lotus/Upgrades/Skins/Decree/SWDominiaHelmet",
- "/Lotus/Upgrades/Skins/Decree/SWRSixBansheeEchoHelmet",
- "/Lotus/Upgrades/Skins/Decree/SWSonorityHelmet",
- "/Lotus/Upgrades/Skins/Decree/SWSonoritySkin",
- "/Lotus/Upgrades/Skins/Decree/UnlockDecreeAgile",
- "/Lotus/Upgrades/Skins/Decree/UnlockDecreeNoble",
- "/Lotus/Upgrades/Skins/Deluxe/AshDeluxeIIBowSkin",
- "/Lotus/Upgrades/Skins/Deluxe/AtlasDeluxeSparring",
- "/Lotus/Upgrades/Skins/Deluxe/BansheeDeluxeSonicor",
- "/Lotus/Upgrades/Skins/Deluxe/ChromaDeluxeSword",
- "/Lotus/Upgrades/Skins/Deluxe/FrostDeluxeDualSword",
- "/Lotus/Upgrades/Skins/Deluxe/FrostDeluxeSword",
- "/Lotus/Upgrades/Skins/Deluxe/IvaraDeluxeBowSkin",
- "/Lotus/Upgrades/Skins/Deluxe/LimboDeluxeCardSkin",
- "/Lotus/Upgrades/Skins/Deluxe/LokiDeluxeDualKamas",
- "/Lotus/Upgrades/Skins/Deluxe/NovaDeluxeIISniperSkin",
- "/Lotus/Upgrades/Skins/Deluxe/NovaDeluxePolearm",
- "/Lotus/Upgrades/Skins/Deluxe/NyxDeluxeShotgunSkin",
- "/Lotus/Upgrades/Skins/Deluxe/OberonDeluxeAckBrunt",
- "/Lotus/Upgrades/Skins/Deluxe/OberonDeluxeParis",
- "/Lotus/Upgrades/Skins/Deluxe/OctaviaDeluxeBoltor",
- "/Lotus/Upgrades/Skins/Deluxe/ProteaDeluxeSkinTonkor",
- "/Lotus/Upgrades/Skins/Deluxe/ProteaDeluxeThrowingSkin",
- "/Lotus/Upgrades/Skins/Deluxe/StyanaxDeluxeSpearSkin",
- "/Lotus/Upgrades/Skins/Deluxe/WispDeluxeFulminSkin",
- "/Lotus/Upgrades/Skins/Deluxe/WukongDeluxeWhipSkin",
- "/Lotus/Upgrades/Skins/Devourer/DevourerAgileAnims",
- "/Lotus/Upgrades/Skins/Devourer/DevourerAltHelmet",
- "/Lotus/Upgrades/Skins/Devourer/DevourerHelmet",
- "/Lotus/Upgrades/Skins/Devourer/DevourerNobleAnims",
- "/Lotus/Upgrades/Skins/Devourer/DevourerSkin",
- "/Lotus/Upgrades/Skins/Devourer/GrendelDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Devourer/GrendelDeluxeSkin",
- "/Lotus/Upgrades/Skins/Devourer/GrendelPrimeHelmet",
- "/Lotus/Upgrades/Skins/Devourer/GrendelPrimeSkin",
- "/Lotus/Upgrades/Skins/Devourer/GrendelVoidshellHelmet",
- "/Lotus/Upgrades/Skins/Devourer/GrendelVoidshellSkin",
- "/Lotus/Upgrades/Skins/Devourer/SWMolochHelmet",
- "/Lotus/Upgrades/Skins/Devourer/SWMolochSkin",
- "/Lotus/Upgrades/Skins/Devourer/UnlockDevourerAgile",
- "/Lotus/Upgrades/Skins/Devourer/UnlockDevourerNoble",
- "/Lotus/Upgrades/Skins/DexTheSecond/NintendoDexDakra",
- "/Lotus/Upgrades/Skins/DexTheSecond/ObsidianDexDakra",
- "/Lotus/Upgrades/Skins/Dragon/ChromaAgileAnims",
- "/Lotus/Upgrades/Skins/Dragon/ChromaAltBHelmet",
- "/Lotus/Upgrades/Skins/Dragon/ChromaAlternateSkin",
- "/Lotus/Upgrades/Skins/Dragon/ChromaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Dragon/ChromaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Dragon/ChromaDeluxeWings",
- "/Lotus/Upgrades/Skins/Dragon/ChromaLNYHelmet",
- "/Lotus/Upgrades/Skins/Dragon/ChromaLNYSkin",
- "/Lotus/Upgrades/Skins/Dragon/ChromaLNYWings",
- "/Lotus/Upgrades/Skins/Dragon/ChromaNobleAnims",
- "/Lotus/Upgrades/Skins/Dragon/ChromaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Dragon/ChromaPrimeSkin",
- "/Lotus/Upgrades/Skins/Dragon/ChromaSkin",
- "/Lotus/Upgrades/Skins/Dragon/DragonAltHelmet",
- "/Lotus/Upgrades/Skins/Dragon/DragonHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWGraxxChromaHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWGraxxChromaSkin",
- "/Lotus/Upgrades/Skins/Dragon/SWMorkaiHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWMorkaiSkin",
- "/Lotus/Upgrades/Skins/Dragon/SWRFiveChromaDrevniSkin",
- "/Lotus/Upgrades/Skins/Dragon/SWRSixChromaVojnikSkin",
- "/Lotus/Upgrades/Skins/Dragon/SWRThreeKaijuHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWRThreeTarrasqueHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWThyrusHelmet",
- "/Lotus/Upgrades/Skins/Dragon/SWThyrusSkin",
- "/Lotus/Upgrades/Skins/Dragon/UnlockChromaAgile",
- "/Lotus/Upgrades/Skins/Dragon/UnlockChromaNoble",
- "/Lotus/Upgrades/Skins/DualAxe/DaggerAxe",
- "/Lotus/Upgrades/Skins/Duviri/DuviriSwordTowerShieldSkin",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaFireEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaIceEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaImpactEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaLightningEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaMagneticEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaToxinEphemera",
- "/Lotus/Upgrades/Skins/Effects/Kuva/KuvaTricksterEphemera",
- "/Lotus/Upgrades/Skins/Effects/ArchonShardEphemera",
- "/Lotus/Upgrades/Skins/Effects/ArchonShardEphemeraB",
- "/Lotus/Upgrades/Skins/Effects/AvatarBloodA",
- "/Lotus/Upgrades/Skins/Effects/AvatarSmokeA",
- "/Lotus/Upgrades/Skins/Effects/BaroEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/BaroEphemeraB",
- "/Lotus/Upgrades/Skins/Effects/BaruukPrimeEphemera",
- "/Lotus/Upgrades/Skins/Effects/BaseFootsteps",
- "/Lotus/Upgrades/Skins/Effects/BatWingsEphemera",
- "/Lotus/Upgrades/Skins/Effects/BatsEphemera",
- "/Lotus/Upgrades/Skins/Effects/Conquera2022Ephemera",
- "/Lotus/Upgrades/Skins/Effects/ConqueraEphemera",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraB",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraC",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraD",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraE",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraF",
- "/Lotus/Upgrades/Skins/Effects/CorpusLichEphemeraG",
- "/Lotus/Upgrades/Skins/Effects/CupidWingsEphemera",
- "/Lotus/Upgrades/Skins/Effects/DeimosEphemera",
- "/Lotus/Upgrades/Skins/Effects/DogDaysEphemera",
- "/Lotus/Upgrades/Skins/Effects/EphemeraGaraPrime",
- "/Lotus/Upgrades/Skins/Effects/EphemeraNezhaPrime",
- "/Lotus/Upgrades/Skins/Effects/EphemeraPrimeA",
- "/Lotus/Upgrades/Skins/Effects/FootstepsEasterEggs",
- "/Lotus/Upgrades/Skins/Effects/FootstepsEidolon",
- "/Lotus/Upgrades/Skins/Effects/FootstepsElectrical",
- "/Lotus/Upgrades/Skins/Effects/FootstepsHeat",
- "/Lotus/Upgrades/Skins/Effects/FootstepsIce",
- "/Lotus/Upgrades/Skins/Effects/FootstepsMaple",
- "/Lotus/Upgrades/Skins/Effects/FootstepsPetals",
- "/Lotus/Upgrades/Skins/Effects/GarudaPrimeEphemera",
- "/Lotus/Upgrades/Skins/Effects/GrendelPrimeEphemera",
- "/Lotus/Upgrades/Skins/Effects/HydroidDeluxeEphemera",
- "/Lotus/Upgrades/Skins/Effects/InfestedEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/LNYDragonEphemera",
- "/Lotus/Upgrades/Skins/Effects/LotusFlowers",
- "/Lotus/Upgrades/Skins/Effects/LunarEphemera",
- "/Lotus/Upgrades/Skins/Effects/NarmerEvolvingEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/NarmerEvolvingEphemeraB",
- "/Lotus/Upgrades/Skins/Effects/NarmerEvolvingEphemeraC",
- "/Lotus/Upgrades/Skins/Effects/NightwaveIntermissionEphemera",
- "/Lotus/Upgrades/Skins/Effects/ObsidianEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/OrbsEphemera",
- "/Lotus/Upgrades/Skins/Effects/OvergrowthEphemera",
- "/Lotus/Upgrades/Skins/Effects/PeachBlossomsEphemera",
- "/Lotus/Upgrades/Skins/Effects/ProteaPrimeEphemera",
- "/Lotus/Upgrades/Skins/Effects/SandmanEphemera",
- "/Lotus/Upgrades/Skins/Effects/SentientDeadEphemera",
- "/Lotus/Upgrades/Skins/Effects/SmokeEphemera",
- "/Lotus/Upgrades/Skins/Effects/SnowEphemera",
- "/Lotus/Upgrades/Skins/Effects/TatsuSkullEphemera",
- "/Lotus/Upgrades/Skins/Effects/TennoCon2021Ephemera",
- "/Lotus/Upgrades/Skins/Effects/TwitchEphemera",
- "/Lotus/Upgrades/Skins/Effects/VoidAngelEphemeraA",
- "/Lotus/Upgrades/Skins/Effects/VoidAngelEphemeraB",
- "/Lotus/Upgrades/Skins/Effects/WebEphemera",
- "/Lotus/Upgrades/Skins/Effects/WerewolfEphemera",
- "/Lotus/Upgrades/Skins/Effects/XakuDeluxeEphemera",
- "/Lotus/Upgrades/Skins/EliteAlerts/EliteAlertAmprex",
- "/Lotus/Upgrades/Skins/EliteAlerts/EliteAlertAtomos",
- "/Lotus/Upgrades/Skins/EliteAlerts/EliteAlertAtterax",
- "/Lotus/Upgrades/Skins/Ember/EmberAgileAnims",
- "/Lotus/Upgrades/Skins/Ember/EmberAlternateSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeDualPistolSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeIIFlamethrowerSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeIIHelmet",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeIISkin",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxePistolSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberDeluxeSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberHelmet",
- "/Lotus/Upgrades/Skins/Ember/EmberHelmetAlt",
- "/Lotus/Upgrades/Skins/Ember/EmberHelmetAltB",
- "/Lotus/Upgrades/Skins/Ember/EmberHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Ember/EmberHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Ember/EmberNobleAnims",
- "/Lotus/Upgrades/Skins/Ember/EmberPrimeHelmet",
- "/Lotus/Upgrades/Skins/Ember/EmberPrimeSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberSkin",
- "/Lotus/Upgrades/Skins/Ember/EmberVoidshellHelmet",
- "/Lotus/Upgrades/Skins/Ember/EmberVoidshellSkin",
- "/Lotus/Upgrades/Skins/Ember/SWIgnitionHelmet",
- "/Lotus/Upgrades/Skins/Ember/SWIgnitionSkin",
- "/Lotus/Upgrades/Skins/Ember/SWMagestyHelmet",
- "/Lotus/Upgrades/Skins/Ember/SWMagestySkin",
- "/Lotus/Upgrades/Skins/Ember/SWRSixEmberGraxxHelmet",
- "/Lotus/Upgrades/Skins/Ember/SWRSixEmberGraxxSkin",
- "/Lotus/Upgrades/Skins/Ember/UnlockEmberAgile",
- "/Lotus/Upgrades/Skins/Ember/UnlockEmberNoble",
- "/Lotus/Upgrades/Skins/Events/AcolyteStalkerMios",
- "/Lotus/Upgrades/Skins/Events/ArchRocketCrossbowGrineer",
- "/Lotus/Upgrades/Skins/Events/BlackoutOrthos",
- "/Lotus/Upgrades/Skins/Events/BunnyEars",
- "/Lotus/Upgrades/Skins/Events/GlaxionPolar",
- "/Lotus/Upgrades/Skins/Events/InfQuantaInfestedAladV",
- "/Lotus/Upgrades/Skins/Events/PremiumBunnyEars",
- "/Lotus/Upgrades/Skins/Events/WolfStalkerMask",
- "/Lotus/Upgrades/Skins/Excalibur/DiscordExcalibur",
- "/Lotus/Upgrades/Skins/Excalibur/DiscordExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburAgileAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburAlternateSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDeluxeAgileAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDeluxeNobleAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDeluxeSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDeluxeSugatra",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDexHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburDexSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetAlt",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetAltB",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetMordred",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburHelmetSWROne",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburNobleAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburPrimeAlabasterSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburPrimeHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburPrimeSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburProtoHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburProtoSuit",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburSkin",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburUmbraAgileAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburUmbraAltHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburUmbraHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburUmbraNobleAnims",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburVeilBreakerHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ExcaliburVeilBreakerSkin",
- "/Lotus/Upgrades/Skins/Excalibur/NintendoExcalibur",
- "/Lotus/Upgrades/Skins/Excalibur/NintendoExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/ObsidianExcaliburHelmetB",
- "/Lotus/Upgrades/Skins/Excalibur/ObsidianExcaliburSkinB",
- "/Lotus/Upgrades/Skins/Excalibur/SWArturiusExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWCorpraHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWCorpraSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWExaltationHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWExaltationSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWExcaliburBotLHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWExcaliburBotLSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWIonExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWIonExcaliburSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWIsurusExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWOgrantExcaliburHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburApexHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburApexSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburCadutoHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburCadutoSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburGraxxHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourExcaliburGraxxSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWRFourGraxxAltHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWROneExcaliburSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWRThreeSentientSlayerHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRThreeSentientSlayerSkin",
- "/Lotus/Upgrades/Skins/Excalibur/SWRoninHelmet",
- "/Lotus/Upgrades/Skins/Excalibur/SWRoninSkin",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburAgile",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburDeluxeAgile",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburDeluxeNoble",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburNoble",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburUmbraAgile",
- "/Lotus/Upgrades/Skins/Excalibur/UnlockExcaliburUmbraNoble",
- "/Lotus/Upgrades/Skins/Fairy/FaerieAltHelm",
- "/Lotus/Upgrades/Skins/Fairy/FairyAgileAnims",
- "/Lotus/Upgrades/Skins/Fairy/FairyAltHelmet",
- "/Lotus/Upgrades/Skins/Fairy/FairyHelmet",
- "/Lotus/Upgrades/Skins/Fairy/FairyNobleAnims",
- "/Lotus/Upgrades/Skins/Fairy/FairySkin",
- "/Lotus/Upgrades/Skins/Fairy/SWLympharisHelmet",
- "/Lotus/Upgrades/Skins/Fairy/SWLympharisSkin",
- "/Lotus/Upgrades/Skins/Fairy/SWPixialystHelmet",
- "/Lotus/Upgrades/Skins/Fairy/SWPixialystSkin",
- "/Lotus/Upgrades/Skins/Fairy/SWUnseelieHelmet",
- "/Lotus/Upgrades/Skins/Fairy/SWUnseelieSkin",
- "/Lotus/Upgrades/Skins/Fairy/SWVirajiHelmet",
- "/Lotus/Upgrades/Skins/Fairy/SolsticeFairySkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeArchwingPistolsSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeArchwingSwordSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeGunbladeSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeIIArchwingPistolsSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeIIArchwingSwordSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeIIAuxWings",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeIIHelmet",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeIISkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Fairy/TitaniaPrimeSkin",
- "/Lotus/Upgrades/Skins/Fairy/UnlockFairyAgile",
- "/Lotus/Upgrades/Skins/Fairy/UnlockFairyNoble",
- "/Lotus/Upgrades/Skins/Festivities/JingleKnuckles",
- "/Lotus/Upgrades/Skins/Festivities/PumpkinHead",
- "/Lotus/Upgrades/Skins/Festivities/XmasGlaxion",
- "/Lotus/Upgrades/Skins/Festivities/XmasSonicor",
- "/Lotus/Upgrades/Skins/Frost/FrostAgileAnims",
- "/Lotus/Upgrades/Skins/Frost/FrostAlternateSkin",
- "/Lotus/Upgrades/Skins/Frost/FrostDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Frost/FrostDeluxeSuit",
- "/Lotus/Upgrades/Skins/Frost/FrostHeirloomHelmet",
- "/Lotus/Upgrades/Skins/Frost/FrostHeirloomSkin",
- "/Lotus/Upgrades/Skins/Frost/FrostHelmet",
- "/Lotus/Upgrades/Skins/Frost/FrostHelmetAlt",
- "/Lotus/Upgrades/Skins/Frost/FrostHelmetAltB",
- "/Lotus/Upgrades/Skins/Frost/FrostHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Frost/FrostHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Frost/FrostNobleAnims",
- "/Lotus/Upgrades/Skins/Frost/FrostPrimeBodyCoat",
- "/Lotus/Upgrades/Skins/Frost/FrostPrimeHelmet",
- "/Lotus/Upgrades/Skins/Frost/FrostPrimeLegsCoat",
- "/Lotus/Upgrades/Skins/Frost/FrostPrimeSkin",
- "/Lotus/Upgrades/Skins/Frost/FrostSkin",
- "/Lotus/Upgrades/Skins/Frost/FrostVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Frost/FrostVoidShellSkin",
- "/Lotus/Upgrades/Skins/Frost/FrostXmasSkin",
- "/Lotus/Upgrades/Skins/Frost/NintendoFrost",
- "/Lotus/Upgrades/Skins/Frost/NintendoFrostHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWFrostStrigidSkin",
- "/Lotus/Upgrades/Skins/Frost/SWHimavatHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWHisameHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWHisameSkin",
- "/Lotus/Upgrades/Skins/Frost/SWIonFrostHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWIonFrostSkin",
- "/Lotus/Upgrades/Skins/Frost/SWMantaZHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRFourFrostJotunHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRSixFrostEmperorHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRSixFrostEmperorSkin",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostGrostHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostGrostSkin",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostHailstormHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostHailstormSkin",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostVojnikHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostVojnikSkin",
- "/Lotus/Upgrades/Skins/Frost/SWRThreeFrostZastrugaHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWStrigidHelmet",
- "/Lotus/Upgrades/Skins/Frost/SWSummitHelmet",
- "/Lotus/Upgrades/Skins/Frost/UnlockFrostAgile",
- "/Lotus/Upgrades/Skins/Frost/UnlockFrostNoble",
- "/Lotus/Upgrades/Skins/Garuda/GarudaAgileAnims",
- "/Lotus/Upgrades/Skins/Garuda/GarudaAltHelmet",
- "/Lotus/Upgrades/Skins/Garuda/GarudaDeluxeClawsSkin",
- "/Lotus/Upgrades/Skins/Garuda/GarudaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Garuda/GarudaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Garuda/GarudaDeluxeWarfanSkin",
- "/Lotus/Upgrades/Skins/Garuda/GarudaHelmet",
- "/Lotus/Upgrades/Skins/Garuda/GarudaNobleAnims",
- "/Lotus/Upgrades/Skins/Garuda/GarudaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Garuda/GarudaPrimeSkin",
- "/Lotus/Upgrades/Skins/Garuda/GarudaSkin",
- "/Lotus/Upgrades/Skins/Garuda/SWGarudaTengushinHelmet",
- "/Lotus/Upgrades/Skins/Garuda/SWGarudaTengushinSkin",
- "/Lotus/Upgrades/Skins/Garuda/SWSakhuraHelmet",
- "/Lotus/Upgrades/Skins/Garuda/SWSuccessorHelmet",
- "/Lotus/Upgrades/Skins/Garuda/SWSuccessorSkin",
- "/Lotus/Upgrades/Skins/Garuda/SWTiamatHelmet",
- "/Lotus/Upgrades/Skins/Garuda/SWTiamatSkin",
- "/Lotus/Upgrades/Skins/Garuda/UnlockGarudaAgile",
- "/Lotus/Upgrades/Skins/Garuda/UnlockGarudaNoble",
- "/Lotus/Upgrades/Skins/Geode/GeodeAgileAnims",
- "/Lotus/Upgrades/Skins/Geode/GeodeAltHelmet",
- "/Lotus/Upgrades/Skins/Geode/GeodeHelmet",
- "/Lotus/Upgrades/Skins/Geode/GeodeNobleAnims",
- "/Lotus/Upgrades/Skins/Geode/GeodeSkin",
- "/Lotus/Upgrades/Skins/Geode/UnlockGeodeAgile",
- "/Lotus/Upgrades/Skins/Geode/UnlockGeodeNoble",
- "/Lotus/Upgrades/Skins/Glass/GaraAlternateSkin",
- "/Lotus/Upgrades/Skins/Glass/GaraDeluxeSword",
- "/Lotus/Upgrades/Skins/Glass/GaraPrimeHelmet",
- "/Lotus/Upgrades/Skins/Glass/GaraPrimeSkin",
- "/Lotus/Upgrades/Skins/Glass/GlassAgileAnims",
- "/Lotus/Upgrades/Skins/Glass/GlassAltHelmet",
- "/Lotus/Upgrades/Skins/Glass/GlassDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Glass/GlassDeluxeSkin",
- "/Lotus/Upgrades/Skins/Glass/GlassDeluxeWings",
- "/Lotus/Upgrades/Skins/Glass/GlassHelmet",
- "/Lotus/Upgrades/Skins/Glass/GlassNobleAnims",
- "/Lotus/Upgrades/Skins/Glass/GlassSkin",
- "/Lotus/Upgrades/Skins/Glass/SWGaraAdoraHelmet",
- "/Lotus/Upgrades/Skins/Glass/SWRouenHelmet",
- "/Lotus/Upgrades/Skins/Glass/SWSilicaHelmet",
- "/Lotus/Upgrades/Skins/Glass/SWZamariuHelmet",
- "/Lotus/Upgrades/Skins/Glass/SWZamariuSkin",
- "/Lotus/Upgrades/Skins/Glass/UnlockGlassAgile",
- "/Lotus/Upgrades/Skins/Glass/UnlockGlassNoble",
- "/Lotus/Upgrades/Skins/GrineerAssaultRifle/NintendoGrineerAssaultRifleSkin",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestAfuris",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestBallistica",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestBoltor",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestBraton",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestDethcube",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestDualHeatSwords",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestDualVastos",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestDualZoren",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestFuris",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestHeatDagger",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestHeatSword",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestOrthos",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestParis",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestScindo",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestSoma",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestVasto",
- "/Lotus/Upgrades/Skins/GrineerForest/GrineerForestVectis",
- "/Lotus/Upgrades/Skins/GrineerUrban/AckBruntGrineerUrbanCamo",
- "/Lotus/Upgrades/Skins/GrineerUrban/NukorGrineerUrbanCamo",
- "/Lotus/Upgrades/Skins/GrineerUrban/OgrisGrineerUrbanCamo",
- "/Lotus/Upgrades/Skins/Guandao/NintendoGaundaoSkin",
- "/Lotus/Upgrades/Skins/Gyre/GyreAgileAnims",
- "/Lotus/Upgrades/Skins/Gyre/GyreAltHelmetA",
- "/Lotus/Upgrades/Skins/Gyre/GyreHelmet",
- "/Lotus/Upgrades/Skins/Gyre/GyreNobleAnims",
- "/Lotus/Upgrades/Skins/Gyre/GyreSkin",
- "/Lotus/Upgrades/Skins/Gyre/SWGyreKuvealMonarchHelmet",
- "/Lotus/Upgrades/Skins/Gyre/SWGyreKuvealMonarchSkin",
- "/Lotus/Upgrades/Skins/Gyre/UnlockGyreAgile",
- "/Lotus/Upgrades/Skins/Gyre/UnlockGyreNoble",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenAklato",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenAkvasto",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenAmprex",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenAngstrum",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenArchSword",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenBasmu",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenBoltor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenBraton",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenBuzlok",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDaikyu",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDarkDagger",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDarkSplitSword",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDragonNikana",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDread",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenDualZoren",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGalatine",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGlaive",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGlaxion",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGorgon",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGrakata",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGram",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenGrinlok",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenImperator",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenJatKittag",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenKronen",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenKunai",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenLato",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenLatoVandal",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenMarelok",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenNikana",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenNukor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenOpticor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenOrthos",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenParis",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenRegorAxeShield",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSarpa",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenScindo",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSilvaAndAegis",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSimulor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSkana",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSobek",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSoma",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSonicor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenSpira",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenStradavar",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenTonkor",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenTwinGrakatas",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenTwinGremlins",
- "/Lotus/Upgrades/Skins/Halloween/HalloweenVasto",
- "/Lotus/Upgrades/Skins/Halos/PrototypeRaidHalo",
- "/Lotus/Upgrades/Skins/Hammer/GrnHammer",
- "/Lotus/Upgrades/Skins/Hammer/RhinoDeluxeHammer",
- "/Lotus/Upgrades/Skins/Hammer/SolsticeHeliocor",
- "/Lotus/Upgrades/Skins/Hammer/SpragHammerSkin",
- "/Lotus/Upgrades/Skins/Harkonar/HarkonarGLAPistol",
- "/Lotus/Upgrades/Skins/Harkonar/HarkonarGLARifle",
- "/Lotus/Upgrades/Skins/Harkonar/HarkonarGrnFlameSpear",
- "/Lotus/Upgrades/Skins/Harkonar/HarkonarGrnSpark",
- "/Lotus/Upgrades/Skins/Harlequin/HarlequinAgileAnims",
- "/Lotus/Upgrades/Skins/Harlequin/HarlequinHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/HarlequinHelmetAlt",
- "/Lotus/Upgrades/Skins/Harlequin/HarlequinNobleAnims",
- "/Lotus/Upgrades/Skins/Harlequin/MirageAltBHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/MirageAlternateSkin",
- "/Lotus/Upgrades/Skins/Harlequin/MirageDeluxeAgileAnims",
- "/Lotus/Upgrades/Skins/Harlequin/MirageDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/MirageDeluxeNobleAnims",
- "/Lotus/Upgrades/Skins/Harlequin/MirageDeluxeSkin",
- "/Lotus/Upgrades/Skins/Harlequin/MiragePrimeHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/MiragePrimeSkin",
- "/Lotus/Upgrades/Skins/Harlequin/MirageSkin",
- "/Lotus/Upgrades/Skins/Harlequin/MirageVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/MirageVoidShellSkin",
- "/Lotus/Upgrades/Skins/Harlequin/MirageXmasSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWKitsuneHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWKitsuneSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWMirageKuvaelHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWMirageKuvaelSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWMithraHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWMithraSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWMorgaineHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWMorgaineSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWRFourMirageGraxxHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWRFourMirageGraxxSkin",
- "/Lotus/Upgrades/Skins/Harlequin/SWRFourMirageJolliHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWRFourMirageSigynHelmet",
- "/Lotus/Upgrades/Skins/Harlequin/SWRFourMirageSigynSkin",
- "/Lotus/Upgrades/Skins/Harlequin/UnlockHarlequinAgile",
- "/Lotus/Upgrades/Skins/Harlequin/UnlockHarlequinNoble",
- "/Lotus/Upgrades/Skins/Harlequin/UnlockMirageDeluxeAgile",
- "/Lotus/Upgrades/Skins/Harlequin/UnlockMirageDeluxeNoble",
- "/Lotus/Upgrades/Skins/HeavyAxe/GrnAxe",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/ClawsHips",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DaggerHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DaggerLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DualDaggerLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DualDaggerStraight",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DualSwordHighLow",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DualSwordHips",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/DualSwordStraight",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GauntletsInPlace",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GlaiveInPlace",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GlaiveUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GreatSwordCrossed",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GreatSwordHips",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GreatSwordUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GunbladeHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GunbladeHipsR",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GunbladeLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/GunbladeUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/HalberdCrossed",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/HeavyHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/HeavyHipsR",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/HeavyLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/HeavyUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/KatanaCrossedL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/KatanaCrossedR",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/KatanaHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/LongKatanaUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/NunchakuCrossed",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/NunchakuHips",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/NunchakuLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/PunchKickInPlace",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/RapierBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/RapierHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SawHeavyUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/StaffCrossed",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/StaffLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/StaffStraight",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordHipsL",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordHipsR",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordShieldDefault",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordShieldDownward",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordShieldUpward",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordUpperBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/SwordWhipLowerBack",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/TonfaCrossed",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/TonfaHips",
- "/Lotus/Upgrades/Skins/HolsterCustomizations/TonfaUpperBack",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteAgileAnims",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteAltBHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteAltCHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteAltDHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteNobleAnims",
- "/Lotus/Upgrades/Skins/Hoplite/HopliteSkin",
- "/Lotus/Upgrades/Skins/Hoplite/StyanaxDeluxeAuxChest",
- "/Lotus/Upgrades/Skins/Hoplite/StyanaxDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/StyanaxDeluxeSkin",
- "/Lotus/Upgrades/Skins/Hoplite/StyanaxVoidshellHelmet",
- "/Lotus/Upgrades/Skins/Hoplite/StyanaxVoidshellSkin",
- "/Lotus/Upgrades/Skins/Hoplite/UnlockHopliteAgile",
- "/Lotus/Upgrades/Skins/Hoplite/UnlockHopliteNoble",
- "/Lotus/Upgrades/Skins/Horse/Effects/HorseCrownEphemeraAngry",
- "/Lotus/Upgrades/Skins/Horse/Effects/HorseCrownEphemeraFear",
- "/Lotus/Upgrades/Skins/Horse/Effects/HorseCrownEphemeraFlower",
- "/Lotus/Upgrades/Skins/Horse/Effects/HorseCrownEphemeraSnake",
- "/Lotus/Upgrades/Skins/Horse/Effects/HorseCrownEphemeraTeardrop",
- "/Lotus/Upgrades/Skins/Horse/ErsatzBodySkinA",
- "/Lotus/Upgrades/Skins/Horse/ErsatzBodySkinC",
- "/Lotus/Upgrades/Skins/Horse/ErsatzBodySkinDefault",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseHelmetA",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseHelmetB",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseHelmetC",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseHelmetD",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseSaddleA",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseSaddleB",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseSaddleC",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailA",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailB",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailC",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailD",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailDefault",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailDefaultA",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseTailDefaultC",
- "/Lotus/Upgrades/Skins/Horse/ErsatzHorseWingsA",
- "/Lotus/Upgrades/Skins/Horse/GaussDeluxeHorseHelmet",
- "/Lotus/Upgrades/Skins/Horse/GaussDeluxeHorseSaddle",
- "/Lotus/Upgrades/Skins/Horse/GaussDeluxeHorseTail",
- "/Lotus/Upgrades/Skins/Horse/HorseHelmetDrapery",
- "/Lotus/Upgrades/Skins/Horse/HorseSaddleDrapery",
- "/Lotus/Upgrades/Skins/Horse/HorseTailDrapery",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerA",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerB",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerBaroA",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerBaroB",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerC",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerD",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerE",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerF",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerG",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerH",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerI",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerInfested",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerJ",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerK",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerL",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerM",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerN",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerO",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerP",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerPromoA",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerPromoB",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerPromoC",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerPromoD",
- "/Lotus/Upgrades/Skins/Hoverboard/HoverboardStickerWolf",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidAgileAnims",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidDeluxeSpearGunSkin",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidDeluxeSuit",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidNobleAnims",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidPrimeSkin",
- "/Lotus/Upgrades/Skins/Hydroid/HydroidSkin",
- "/Lotus/Upgrades/Skins/Hydroid/SWKarkinosHelmet",
- "/Lotus/Upgrades/Skins/Hydroid/SWPoseidonHelmet",
- "/Lotus/Upgrades/Skins/Hydroid/SWPoseidonSkin",
- "/Lotus/Upgrades/Skins/Hydroid/UnlockHydroidAgile",
- "/Lotus/Upgrades/Skins/Hydroid/UnlockHydroidNoble",
- "/Lotus/Upgrades/Skins/IAHGames/IAHGamesBratonSkin",
- "/Lotus/Upgrades/Skins/Infestation/InfestationAgileAnims",
- "/Lotus/Upgrades/Skins/Infestation/InfestationAltHelmet",
- "/Lotus/Upgrades/Skins/Infestation/InfestationHelmet",
- "/Lotus/Upgrades/Skins/Infestation/InfestationNobleAnims",
- "/Lotus/Upgrades/Skins/Infestation/InfestationSkin",
- "/Lotus/Upgrades/Skins/Infestation/NidusAltHelmet",
- "/Lotus/Upgrades/Skins/Infestation/NidusAlternateSkin",
- "/Lotus/Upgrades/Skins/Infestation/NidusDeluxeClawsSkin",
- "/Lotus/Upgrades/Skins/Infestation/NidusDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Infestation/NidusDeluxeHipCloth",
- "/Lotus/Upgrades/Skins/Infestation/NidusDeluxeSkin",
- "/Lotus/Upgrades/Skins/Infestation/NidusPrimeHelmet",
- "/Lotus/Upgrades/Skins/Infestation/NidusPrimeSkin",
- "/Lotus/Upgrades/Skins/Infestation/NidusVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Infestation/NidusVoidShellSkin",
- "/Lotus/Upgrades/Skins/Infestation/SWKuvealScoungerHelmet",
- "/Lotus/Upgrades/Skins/Infestation/SWNidusKuvaelSkin",
- "/Lotus/Upgrades/Skins/Infestation/SWNightHunterHelmet",
- "/Lotus/Upgrades/Skins/Infestation/SWNightHunterSkin",
- "/Lotus/Upgrades/Skins/Infestation/SWTechnocystHelmet",
- "/Lotus/Upgrades/Skins/Infestation/SWTechnocystSkin",
- "/Lotus/Upgrades/Skins/Infestation/UnlockInfestationAgile",
- "/Lotus/Upgrades/Skins/Infestation/UnlockInfestationNoble",
- "/Lotus/Upgrades/Skins/IronFrame/HildrynDeluxeAxeSkin",
- "/Lotus/Upgrades/Skins/IronFrame/HildrynPrimeHelmet",
- "/Lotus/Upgrades/Skins/IronFrame/HildrynPrimeSkin",
- "/Lotus/Upgrades/Skins/IronFrame/IronFrameAgileAnims",
- "/Lotus/Upgrades/Skins/IronFrame/IronFrameHelmet",
- "/Lotus/Upgrades/Skins/IronFrame/IronFrameNobleAnims",
- "/Lotus/Upgrades/Skins/IronFrame/IronFrameSkin",
- "/Lotus/Upgrades/Skins/IronFrame/SWHildrynSigrunHelmet",
- "/Lotus/Upgrades/Skins/IronFrame/SWHildrynSigrunSkin",
- "/Lotus/Upgrades/Skins/IronFrame/ShieldAltHelmet",
- "/Lotus/Upgrades/Skins/IronFrame/ShieldDeluxeBlastSkin",
- "/Lotus/Upgrades/Skins/IronFrame/ShieldDeluxeBodySkin",
- "/Lotus/Upgrades/Skins/IronFrame/ShieldDeluxeHelmet",
- "/Lotus/Upgrades/Skins/IronFrame/UnlockIronFrameAgile",
- "/Lotus/Upgrades/Skins/IronFrame/UnlockIronFrameNoble",
- "/Lotus/Upgrades/Skins/Jade/JadeAgileAnims",
- "/Lotus/Upgrades/Skins/Jade/JadeHelmet",
- "/Lotus/Upgrades/Skins/Jade/JadeHelmetAlt",
- "/Lotus/Upgrades/Skins/Jade/JadeHelmetAltB",
- "/Lotus/Upgrades/Skins/Jade/JadeHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Jade/JadeHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Jade/JadeNobleAnims",
- "/Lotus/Upgrades/Skins/Jade/NyxAlternateSkin",
- "/Lotus/Upgrades/Skins/Jade/NyxDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Jade/NyxDeluxeSuit",
- "/Lotus/Upgrades/Skins/Jade/NyxNemesisHelmet",
- "/Lotus/Upgrades/Skins/Jade/NyxNemesisSuit",
- "/Lotus/Upgrades/Skins/Jade/NyxPrimeHelmet",
- "/Lotus/Upgrades/Skins/Jade/NyxPrimeSkin",
- "/Lotus/Upgrades/Skins/Jade/NyxSkin",
- "/Lotus/Upgrades/Skins/Jade/SWAmpulexHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWAscophiliaHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWAscophiliaSkin",
- "/Lotus/Upgrades/Skins/Jade/SWAureliaHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWAureliaSkin",
- "/Lotus/Upgrades/Skins/Jade/SWAuresHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWAuresSkin",
- "/Lotus/Upgrades/Skins/Jade/SWCarnifexHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWCarnifexSkin",
- "/Lotus/Upgrades/Skins/Jade/SWRFourNyxAthenaHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWRFourNyxAthenaSkin",
- "/Lotus/Upgrades/Skins/Jade/SWRSixNyxGraxxHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWRSixNyxGraxxSkin",
- "/Lotus/Upgrades/Skins/Jade/SWSaikouHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWSaikouSkin",
- "/Lotus/Upgrades/Skins/Jade/SWTechnopsycheHelmet",
- "/Lotus/Upgrades/Skins/Jade/SWTechnopsycheSkin",
- "/Lotus/Upgrades/Skins/Jade/UnlockJadeAgile",
- "/Lotus/Upgrades/Skins/Jade/UnlockJadeNoble",
- "/Lotus/Upgrades/Skins/KDrive/KDriveVelocipodRareSkin",
- "/Lotus/Upgrades/Skins/KDrive/KDriveVelocipodSkin",
- "/Lotus/Upgrades/Skins/KDrive/KDriveVelocipodUncommonSkin",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourAridArmLeftWithACUnit",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourAridArms",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourAridBackWithACUnit",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourAridFront",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourAridLegs",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourCorpusBack",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourDamagedArms",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourDamagedBack",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourDamagedLegs",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourStandardArms",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourStandardBack",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourStandardFront",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourStandardLegs",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourWinterArmLeft",
- "/Lotus/Upgrades/Skins/Kahl/KahlArmourWinterPack",
- "/Lotus/Upgrades/Skins/Kahl/KahlBody",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchA",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchB",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchC",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchD",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchE",
- "/Lotus/Upgrades/Skins/Kahl/KahlEyepatchF",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetCorpus",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetDamaged",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetDamagedWithMask",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetHood",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetKavaLich3A",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetMushroom",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetPith",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetStandard",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetTall",
- "/Lotus/Upgrades/Skins/Kahl/KahlHelmetWater",
- "/Lotus/Upgrades/Skins/Katana/AshNikana",
- "/Lotus/Upgrades/Skins/Katana/ExcaliburDeluxeNikana",
- "/Lotus/Upgrades/Skins/Katana/UmbraDaxNikana",
- "/Lotus/Upgrades/Skins/Katana/UngulataKatana",
- "/Lotus/Upgrades/Skins/KatanaSheaths/DragonKatanaSheathLightning",
- "/Lotus/Upgrades/Skins/KatanaSheaths/KatanaSheathLightning",
- "/Lotus/Upgrades/Skins/Khora/KhoraAgileAnims",
- "/Lotus/Upgrades/Skins/Khora/KhoraAltHelmet",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeAgileAnims",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeKavatSkin",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeNobleAnims",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeSuit",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeVenariSkin",
- "/Lotus/Upgrades/Skins/Khora/KhoraDeluxeWhipBladeSkin",
- "/Lotus/Upgrades/Skins/Khora/KhoraHelmet",
- "/Lotus/Upgrades/Skins/Khora/KhoraNobleAnims",
- "/Lotus/Upgrades/Skins/Khora/KhoraPrimeAltHelmet",
- "/Lotus/Upgrades/Skins/Khora/KhoraPrimeHelmet",
- "/Lotus/Upgrades/Skins/Khora/KhoraPrimeSkin",
- "/Lotus/Upgrades/Skins/Khora/KhoraSkin",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraFieraHelmet",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraGraxxHelmet",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraGraxxSkin",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraMithraHelmet",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraMithraSkin",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraOiranHelmet",
- "/Lotus/Upgrades/Skins/Khora/SWKhoraOiranSkin",
- "/Lotus/Upgrades/Skins/Khora/SWLaveauHelmet",
- "/Lotus/Upgrades/Skins/Khora/UnlockKhoraAgile",
- "/Lotus/Upgrades/Skins/Khora/UnlockKhoraDeluxeAgile",
- "/Lotus/Upgrades/Skins/Khora/UnlockKhoraDeluxeNoble",
- "/Lotus/Upgrades/Skins/Khora/UnlockKhoraNoble",
- "/Lotus/Upgrades/Skins/Khora/VenariPrimeSkin",
- "/Lotus/Upgrades/Skins/Khora/VenariSkin",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiAklato",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiBraton",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiKunai",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiLato",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiParis",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiSkana",
- "/Lotus/Upgrades/Skins/Kintsukuroi/KintsukuroiStaff",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/GrineerQueenArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/GrnAmphisKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/HelminthDeluxeArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorA",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorB",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorBJade",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorBaro",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorC",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorPrisma",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorStalker",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorTrinityDeluxe",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/KubrowArmorUmbra",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/Lunar2022KubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/NightwaveSeason5HarkaKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/PacifistKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/PrimeKubrowArmorA",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/TnTigrisKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/Twitch2021IfritKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Armor/WukongPrimeKubrowArmor",
- "/Lotus/Upgrades/Skins/Kubrows/Collars/KubrowCollarDefault",
- "/Lotus/Upgrades/Skins/Kubrows/Collars/KubrowCollarXmas",
- "/Lotus/Upgrades/Skins/Kubrows/Collars/PrimeKubrowCollarA",
- "/Lotus/Upgrades/Skins/Kubrows/Fur/ContestKubrowFur",
- "/Lotus/Upgrades/Skins/Kubrows/Fur/DaybreakKubrowFur",
- "/Lotus/Upgrades/Skins/Kubrows/Fur/SolsticeKubrowFur",
- "/Lotus/Upgrades/Skins/Leverian/NezhaLeverian/NezhaLeverianPolearm",
- "/Lotus/Upgrades/Skins/Liset/GrineerShip/LisetGrineerShipDefault",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeDefault",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeGrineerQueens",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinIfrit",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinNekrognos",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/LisetGyroscopeSkinPrimeTrader",
- "/Lotus/Upgrades/Skins/Liset/Gyroscope/SWXiphosLilieaeSkin",
- "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipDefault",
- "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinA",
- "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinB",
- "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinC",
- "/Lotus/Upgrades/Skins/Liset/ZarimanShip/LisetZarimanShipSkinD",
- "/Lotus/Upgrades/Skins/Liset/ConquestHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/DexLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/InarosLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkyDefault",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinDeluxe",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinGrineerQueens",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinInaros",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinPrimeTrader",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinSound",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinSplash",
- "/Lotus/Upgrades/Skins/Liset/LisetBlueSkySkinStalker",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinCamo",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinDefault",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinExotic",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinGrineerQueens",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinHalloween",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinInaros",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinIridos",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinNautilus",
- "/Lotus/Upgrades/Skins/Liset/LisetInsectSkinPrimeTrader",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemB",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemC",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemD",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinFlavourItemDefault",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinGrineerQueens",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinHalloween",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinJade",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinKaboom",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinKotora",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinObsidian",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinPrime",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinRelayEvent",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinSWROne",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinSWROneHellkite",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinSWRThreeMaltzurOculus",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinTwitchPrime",
- "/Lotus/Upgrades/Skins/Liset/LisetSkinVoidTrader",
- "/Lotus/Upgrades/Skins/Liset/MITWHoodOrnamentA",
- "/Lotus/Upgrades/Skins/Liset/MITWShipAttachmentItem",
- "/Lotus/Upgrades/Skins/Liset/MaduraiHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/MasteryHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/NaramonHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/NoraShipDefault",
- "/Lotus/Upgrades/Skins/Liset/SWHerulystLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/SWLilieaeSkin",
- "/Lotus/Upgrades/Skins/Liset/SWMantisVammatarSkin",
- "/Lotus/Upgrades/Skins/Liset/SWMithraLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/SWProtegeLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/SWVammatarLisetSkin",
- "/Lotus/Upgrades/Skins/Liset/UnairuHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/VazarinHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/ZenurikHoodOrnament",
- "/Lotus/Upgrades/Skins/Liset/ZephyrDeluxeShipSkin",
- "/Lotus/Upgrades/Skins/Loki/LokiAgileAnims",
- "/Lotus/Upgrades/Skins/Loki/LokiAltCloakA",
- "/Lotus/Upgrades/Skins/Loki/LokiAltCloakB",
- "/Lotus/Upgrades/Skins/Loki/LokiAlternateSkin",
- "/Lotus/Upgrades/Skins/Loki/LokiDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiDeluxeSuit",
- "/Lotus/Upgrades/Skins/Loki/LokiEnigmaHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiHelmetAlt",
- "/Lotus/Upgrades/Skins/Loki/LokiHelmetAltB",
- "/Lotus/Upgrades/Skins/Loki/LokiHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Loki/LokiHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Loki/LokiNobleAnims",
- "/Lotus/Upgrades/Skins/Loki/LokiPrimeHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiPrimeSkin",
- "/Lotus/Upgrades/Skins/Loki/LokiSkin",
- "/Lotus/Upgrades/Skins/Loki/LokiTwitchHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiTwitchSkin",
- "/Lotus/Upgrades/Skins/Loki/LokiVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Loki/LokiVoidShellSkin",
- "/Lotus/Upgrades/Skins/Loki/NintendoLoki",
- "/Lotus/Upgrades/Skins/Loki/NintendoLokitHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWErebusHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWErebusSkin",
- "/Lotus/Upgrades/Skins/Loki/SWIncubusHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWIncubusSkin",
- "/Lotus/Upgrades/Skins/Loki/SWJotunheimHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWJotunheimSkin",
- "/Lotus/Upgrades/Skins/Loki/SWKodamaHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWKodamaSkin",
- "/Lotus/Upgrades/Skins/Loki/SWLupuHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWRFiveLokiRogueHelmet",
- "/Lotus/Upgrades/Skins/Loki/SWRFourLokiErsatzHelmet",
- "/Lotus/Upgrades/Skins/Loki/UnlockLokiAgile",
- "/Lotus/Upgrades/Skins/Loki/UnlockLokiNoble",
- "/Lotus/Upgrades/Skins/Lotus/EidolonLotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/HalloweenLotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/LotusHelmet",
- "/Lotus/Upgrades/Skins/Lotus/LotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/NewWarLotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/SentientLotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/UnmaskedLotusSkin",
- "/Lotus/Upgrades/Skins/Lotus/XakuDeluxeLotusSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/LNY2024DragonSigil",
- "/Lotus/Upgrades/Skins/LunarNewYear/LNY2024Nukor",
- "/Lotus/Upgrades/Skins/LunarNewYear/LNY2024Ogris",
- "/Lotus/Upgrades/Skins/LunarNewYear/LNYHookSword",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2020AcceltraSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2020OrthosSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2020PyranaSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2022HeavyBladeSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2022IgnisSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2022Zarr",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2023CedoSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2023CernosSkin",
- "/Lotus/Upgrades/Skins/LunarNewYear/Lunar2023NagantakaSkin",
- "/Lotus/Upgrades/Skins/Lunaro/ArcataSkinA",
- "/Lotus/Upgrades/Skins/Mag/DiscordMag",
- "/Lotus/Upgrades/Skins/Mag/DiscordMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagAgileAnims",
- "/Lotus/Upgrades/Skins/Mag/MagAlternateSkin",
- "/Lotus/Upgrades/Skins/Mag/MagDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagDeluxeSkin",
- "/Lotus/Upgrades/Skins/Mag/MagDeluxeTonfaSkin",
- "/Lotus/Upgrades/Skins/Mag/MagHeirloomHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagHeirloomSkin",
- "/Lotus/Upgrades/Skins/Mag/MagHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagHelmetAlt",
- "/Lotus/Upgrades/Skins/Mag/MagHelmetAltB",
- "/Lotus/Upgrades/Skins/Mag/MagHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Mag/MagHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Mag/MagNobleAnims",
- "/Lotus/Upgrades/Skins/Mag/MagPrimeHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagPrimeSkin",
- "/Lotus/Upgrades/Skins/Mag/MagSkin",
- "/Lotus/Upgrades/Skins/Mag/MagVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Mag/MagVoidShellSkin",
- "/Lotus/Upgrades/Skins/Mag/NintendoMag",
- "/Lotus/Upgrades/Skins/Mag/NintendoMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWAnthroMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWCorpraMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWCorpraMagSkin",
- "/Lotus/Upgrades/Skins/Mag/SWFerroHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWFerroSkin",
- "/Lotus/Upgrades/Skins/Mag/SWGraxxMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWGraxxMagSkin",
- "/Lotus/Upgrades/Skins/Mag/SWInductionMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWMagCelestisHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWMagCelestisSkin",
- "/Lotus/Upgrades/Skins/Mag/SWROneMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWROneMagSkin",
- "/Lotus/Upgrades/Skins/Mag/SWRThreeAlataHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWRThreeAlataSkin",
- "/Lotus/Upgrades/Skins/Mag/SWRThreeDipoleSkin",
- "/Lotus/Upgrades/Skins/Mag/SWRThreeOrbitHelmet",
- "/Lotus/Upgrades/Skins/Mag/SWToroidalMagHelmet",
- "/Lotus/Upgrades/Skins/Mag/UnlockMagAgile",
- "/Lotus/Upgrades/Skins/Mag/UnlockMagNoble",
- "/Lotus/Upgrades/Skins/Magician/LimboDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Magician/LimboDeluxeSkin",
- "/Lotus/Upgrades/Skins/Magician/LimboImmortalSkin",
- "/Lotus/Upgrades/Skins/Magician/LimboPrimeHelmet",
- "/Lotus/Upgrades/Skins/Magician/LimboPrimeSkin",
- "/Lotus/Upgrades/Skins/Magician/LimboVoidshellHelmet",
- "/Lotus/Upgrades/Skins/Magician/LimboVoidshellSkin",
- "/Lotus/Upgrades/Skins/Magician/MagicianAgileAnims",
- "/Lotus/Upgrades/Skins/Magician/MagicianAltBHelmet",
- "/Lotus/Upgrades/Skins/Magician/MagicianAristeasHelmet",
- "/Lotus/Upgrades/Skins/Magician/MagicianHelmet",
- "/Lotus/Upgrades/Skins/Magician/MagicianNobleAnims",
- "/Lotus/Upgrades/Skins/Magician/MagicianSkin",
- "/Lotus/Upgrades/Skins/Magician/SWAureolusHelmet",
- "/Lotus/Upgrades/Skins/Magician/SWLimboGraxxHelmet",
- "/Lotus/Upgrades/Skins/Magician/SWLimboGraxxSkin",
- "/Lotus/Upgrades/Skins/Magician/SWVasionaHelmet",
- "/Lotus/Upgrades/Skins/Magician/SWVasionaSkin",
- "/Lotus/Upgrades/Skins/Magician/SWVenariHelmet",
- "/Lotus/Upgrades/Skins/Magician/SWVistyxioHelmet",
- "/Lotus/Upgrades/Skins/Magician/SWVistyxioSkin",
- "/Lotus/Upgrades/Skins/Magician/UnlockMagicianAgile",
- "/Lotus/Upgrades/Skins/Magician/UnlockMagicianNoble",
- "/Lotus/Upgrades/Skins/MeleeDangles/BaroInarosMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/BaroMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/CatenoPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/CephalonSugatraDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ChainTridentMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ChromaDeluxeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/CitrineSugatra",
- "/Lotus/Upgrades/Skins/MeleeDangles/CordsMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/CorpusMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ESGrnSugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/EmbolistMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/FireMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/GrnMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/GrnQueensMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/IceMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/InfShellSugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/InfestedMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/JadePatikaMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/KazeruPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/LNYBirdSugatra",
- "/Lotus/Upgrades/Skins/MeleeDangles/LNYCarpSugatra",
- "/Lotus/Upgrades/Skins/MeleeDangles/LimboDeluxeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/LotusPointMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/MoonWarfanSugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/NekrosDeluxeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/NikanaPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/Obsidian2SugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ObsidianSugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/PolearmFriendlyMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/PrimeDangleEMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/PrimeDangleF",
- "/Lotus/Upgrades/Skins/MeleeDangles/PrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/RazorMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/SarynDeluxeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ScrollingPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/SentSugatraNewWarDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/SugatraNintendo",
- "/Lotus/Upgrades/Skins/MeleeDangles/SurakaPrimeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/TennoCon2022SugatraMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/TennoMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/TnRailJackSugatra",
- "/Lotus/Upgrades/Skins/MeleeDangles/TnSugatraNewPlayerXpMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/TwitchPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/ValaPrimeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/VaubanDeluxeMeleeDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/WegameChinaKnotDangle",
- "/Lotus/Upgrades/Skins/MeleeDangles/XBoxSugatra2MeleeDangle",
- "/Lotus/Upgrades/Skins/Miscellaneous/HuntsmanSoma",
- "/Lotus/Upgrades/Skins/MoaPet/BaroMoaPetSkin",
- "/Lotus/Upgrades/Skins/MoaPet/MoaPetPersonalityA",
- "/Lotus/Upgrades/Skins/MoaPet/MoaPetPersonalityB",
- "/Lotus/Upgrades/Skins/MoaPet/MoaPetPersonalityC",
- "/Lotus/Upgrades/Skins/MoaPet/MoaPetPersonalityD",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingAgileAnims",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingAltHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingAltHelmetB",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingChamelionHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingChamelionSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingNobleAnims",
- "/Lotus/Upgrades/Skins/MonkeyKing/MonkeyKingSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWAumanHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWAumanSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWPiercingEyeHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWPiercingEyeSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWRFiveWukongXingzheHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWWukongMithraHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/SWWukongMithraSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/UnlockMonkeyKingAgile",
- "/Lotus/Upgrades/Skins/MonkeyKing/UnlockMonkeyKingNoble",
- "/Lotus/Upgrades/Skins/MonkeyKing/WukongDeluxeHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/WukongDeluxeSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/WukongDeluxeStaffSkin",
- "/Lotus/Upgrades/Skins/MonkeyKing/WukongPrimeHelmet",
- "/Lotus/Upgrades/Skins/MonkeyKing/WukongPrimeSkin",
- "/Lotus/Upgrades/Skins/Mustache/Stache",
- "/Lotus/Upgrades/Skins/Mustache/Stache02",
- "/Lotus/Upgrades/Skins/Mustache/Stache03",
- "/Lotus/Upgrades/Skins/Mustache/Stache04",
- "/Lotus/Upgrades/Skins/Mustache/Stache05",
- "/Lotus/Upgrades/Skins/Mustache/Stache06",
- "/Lotus/Upgrades/Skins/Mustache/Stache07",
- "/Lotus/Upgrades/Skins/Mustache/Stache08",
- "/Lotus/Upgrades/Skins/Mustache/Stache09",
- "/Lotus/Upgrades/Skins/Mustache/Stache10",
- "/Lotus/Upgrades/Skins/Necramech/MechWeapon/MechEventCortegeSkin",
- "/Lotus/Upgrades/Skins/Necramech/MechWeapon/MechEventMausolonSkin",
- "/Lotus/Upgrades/Skins/Necramech/MechWeapon/MechEventMorghaSkin",
- "/Lotus/Upgrades/Skins/Necramech/InfestedNecraMechHelmet",
- "/Lotus/Upgrades/Skins/Necramech/InfestedNecraMechSkin",
- "/Lotus/Upgrades/Skins/Necramech/NecraMechCHelmetA",
- "/Lotus/Upgrades/Skins/Necramech/NecraMechCHelmetB",
- "/Lotus/Upgrades/Skins/Necramech/NecraMechCSkin",
- "/Lotus/Upgrades/Skins/Necramech/NecramechSnakeHelmet",
- "/Lotus/Upgrades/Skins/Necramech/NecramechSnakeSkin",
- "/Lotus/Upgrades/Skins/Necramech/NecramechVoidRigDefaultHelmet",
- "/Lotus/Upgrades/Skins/Necramech/NecramechVoidRigDefaultSkin",
- "/Lotus/Upgrades/Skins/Necramech/TefilahIridosHelmet",
- "/Lotus/Upgrades/Skins/Necramech/TefilahIridosSkin",
- "/Lotus/Upgrades/Skins/Necramech/ThanomechVoidRigDefaultHelmet",
- "/Lotus/Upgrades/Skins/Necramech/ThanomechVoidRigDefaultSkin",
- "/Lotus/Upgrades/Skins/Necramech/VoidrigDOTDHelmet",
- "/Lotus/Upgrades/Skins/Necramech/VoidrigDOTDSkin",
- "/Lotus/Upgrades/Skins/Necramech/VoidrigDSChromaHelmet",
- "/Lotus/Upgrades/Skins/Necramech/VoidrigDSChromaSkin",
- "/Lotus/Upgrades/Skins/Necro/NecroAgileAnims",
- "/Lotus/Upgrades/Skins/Necro/NecroAraknidHelmet",
- "/Lotus/Upgrades/Skins/Necro/NecroDangles",
- "/Lotus/Upgrades/Skins/Necro/NecroHelmet",
- "/Lotus/Upgrades/Skins/Necro/NecroNobleAnims",
- "/Lotus/Upgrades/Skins/Necro/NecroShroudHelmet",
- "/Lotus/Upgrades/Skins/Necro/NekrosAlternateSkin",
- "/Lotus/Upgrades/Skins/Necro/NekrosDeluxeDangles",
- "/Lotus/Upgrades/Skins/Necro/NekrosDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Necro/NekrosDeluxeScytheSkin",
- "/Lotus/Upgrades/Skins/Necro/NekrosDeluxeSkin",
- "/Lotus/Upgrades/Skins/Necro/NekrosPrimeHelmet",
- "/Lotus/Upgrades/Skins/Necro/NekrosPrimeSkin",
- "/Lotus/Upgrades/Skins/Necro/NekrosSkin",
- "/Lotus/Upgrades/Skins/Necro/NekrosVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Necro/NekrosVoidShellSkin",
- "/Lotus/Upgrades/Skins/Necro/SWCharonHelmet",
- "/Lotus/Upgrades/Skins/Necro/SWNekrosAusirylystHelmet",
- "/Lotus/Upgrades/Skins/Necro/SWNekrosAusirylystSkin",
- "/Lotus/Upgrades/Skins/Necro/SWNekrosGraxxHelmet",
- "/Lotus/Upgrades/Skins/Necro/SWNekrosGraxxSkin",
- "/Lotus/Upgrades/Skins/Necro/SWNekrosIonHelmet",
- "/Lotus/Upgrades/Skins/Necro/SWRThreeLazarusHelmet",
- "/Lotus/Upgrades/Skins/Necro/SWVisceraNekrosAuxillaryScarf",
- "/Lotus/Upgrades/Skins/Necro/UnlockNecroAgile",
- "/Lotus/Upgrades/Skins/Necro/UnlockNecroNoble",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPBoSkin",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPBratonSkin",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPKunaiSkin",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPLatoSkin",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPParisSkin",
- "/Lotus/Upgrades/Skins/NewPlayerXP/NewPlayerXPSkanaSkin",
- "/Lotus/Upgrades/Skins/Nezha/NezhaAgileAnims",
- "/Lotus/Upgrades/Skins/Nezha/NezhaAlt2Helmet",
- "/Lotus/Upgrades/Skins/Nezha/NezhaAltHelmet",
- "/Lotus/Upgrades/Skins/Nezha/NezhaDeluxeDaggerSkin",
- "/Lotus/Upgrades/Skins/Nezha/NezhaDeluxeDualDaggerSkin",
- "/Lotus/Upgrades/Skins/Nezha/NezhaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Nezha/NezhaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Nezha/NezhaHelmet",
- "/Lotus/Upgrades/Skins/Nezha/NezhaNobleAnims",
- "/Lotus/Upgrades/Skins/Nezha/NezhaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Nezha/NezhaPrimeSkin",
- "/Lotus/Upgrades/Skins/Nezha/NezhaSkin",
- "/Lotus/Upgrades/Skins/Nezha/SWDevineHelmet",
- "/Lotus/Upgrades/Skins/Nezha/SWDevineSkin",
- "/Lotus/Upgrades/Skins/Nezha/SWDracunHelmet",
- "/Lotus/Upgrades/Skins/Nezha/SWDracunSkin",
- "/Lotus/Upgrades/Skins/Nezha/SWYakshaHelmet",
- "/Lotus/Upgrades/Skins/Nezha/SWYakshaSkin",
- "/Lotus/Upgrades/Skins/Nezha/UnlockNezhaAgile",
- "/Lotus/Upgrades/Skins/Nezha/UnlockNezhaNoble",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchBrakk",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchDualCleavers",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchGrinlok",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchJatKittag",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchMachete",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchMarelok",
- "/Lotus/Upgrades/Skins/Nightwatch/NightwatchTonkor",
- "/Lotus/Upgrades/Skins/Nightwave/CephPolearmSkin",
- "/Lotus/Upgrades/Skins/Nightwave/DayBreakGlaiveSkin",
- "/Lotus/Upgrades/Skins/Nightwave/DaybreakCedoSkin",
- "/Lotus/Upgrades/Skins/Nightwave/DaybreakGrnBannerScarf",
- "/Lotus/Upgrades/Skins/Nightwave/DaybreakNukorSkin",
- "/Lotus/Upgrades/Skins/Nightwave/InfHeavyClawsSkin",
- "/Lotus/Upgrades/Skins/Nightwave/InfTwoHandedKatanaSkin",
- "/Lotus/Upgrades/Skins/Ninja/AshAlternateSkin",
- "/Lotus/Upgrades/Skins/Ninja/AshDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Ninja/AshDeluxeSkin",
- "/Lotus/Upgrades/Skins/Ninja/AshPrimeHelmet",
- "/Lotus/Upgrades/Skins/Ninja/AshPrimeSkin",
- "/Lotus/Upgrades/Skins/Ninja/NinjaAgileAnims",
- "/Lotus/Upgrades/Skins/Ninja/NinjaAltCloakA",
- "/Lotus/Upgrades/Skins/Ninja/NinjaAltCloakB",
- "/Lotus/Upgrades/Skins/Ninja/NinjaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Ninja/NinjaDeluxeSuit",
- "/Lotus/Upgrades/Skins/Ninja/NinjaHelmet",
- "/Lotus/Upgrades/Skins/Ninja/NinjaHelmetAlt",
- "/Lotus/Upgrades/Skins/Ninja/NinjaHelmetAltB",
- "/Lotus/Upgrades/Skins/Ninja/NinjaHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Ninja/NinjaHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Ninja/NinjaNobleAnims",
- "/Lotus/Upgrades/Skins/Ninja/NinjaSkin",
- "/Lotus/Upgrades/Skins/Ninja/SWBaihuHelmet",
- "/Lotus/Upgrades/Skins/Ninja/SWBaihuSkin",
- "/Lotus/Upgrades/Skins/Ninja/SWIchneumonHelmet",
- "/Lotus/Upgrades/Skins/Ninja/SWIchneumonSkin",
- "/Lotus/Upgrades/Skins/Ninja/SWRSixAshCarabidHelmet",
- "/Lotus/Upgrades/Skins/Ninja/SWRyugaHelmet",
- "/Lotus/Upgrades/Skins/Ninja/SWRyugaSkin",
- "/Lotus/Upgrades/Skins/Ninja/SWTsukuyomiHelmet",
- "/Lotus/Upgrades/Skins/Ninja/SWTsukuyomiSkin",
- "/Lotus/Upgrades/Skins/Ninja/UnlockNinjaAgile",
- "/Lotus/Upgrades/Skins/Ninja/UnlockNinjaNoble",
- "/Lotus/Upgrades/Skins/Nvidia/NvidiaBratonSkin",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskAgileAnims",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskAlt2Helmet",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskAltHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskNobleAnims",
- "/Lotus/Upgrades/Skins/Odalisk/OdaliskSkin",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaDeluxeSkin",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaPrimeAltHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaPrimeHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaPrimeSkin",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/ProteaVoidShellSkin",
- "/Lotus/Upgrades/Skins/Odalisk/SWKollapsarHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/SWKollapsarSkin",
- "/Lotus/Upgrades/Skins/Odalisk/SWTechnochronHelmet",
- "/Lotus/Upgrades/Skins/Odalisk/SWTechnochronSkin",
- "/Lotus/Upgrades/Skins/Odalisk/UnlockOdaliskAgile",
- "/Lotus/Upgrades/Skins/Odalisk/UnlockOdaliskNoble",
- "/Lotus/Upgrades/Skins/Operator/Accessories/ArbitrationA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/ArbitrationB",
- "/Lotus/Upgrades/Skins/Operator/Accessories/AshLevarianTiara",
- "/Lotus/Upgrades/Skins/Operator/Accessories/BaroHorn",
- "/Lotus/Upgrades/Skins/Operator/Accessories/BaroMouthPieceA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/BaroTiara",
- "/Lotus/Upgrades/Skins/Operator/Accessories/BaroVisor",
- "/Lotus/Upgrades/Skins/Operator/Accessories/CircletA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/CircletLaurel",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EarpieceA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EarpieceB",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EarpieceBaroA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EarpieceBaroB",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EarpieceBaroC",
- "/Lotus/Upgrades/Skins/Operator/Accessories/ExcaliburDeluxeEarpiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/ExcaliburDeluxeEyepiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/ExcaliburDeluxeMouthPiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EyepieceA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EyepieceB",
- "/Lotus/Upgrades/Skins/Operator/Accessories/EyepieceC",
- "/Lotus/Upgrades/Skins/Operator/Accessories/NightWaveEarPieceA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/NightWaveEyePieceA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/NightWaveMaskA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/NoraEarpiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/OperatorNefAnyoMask",
- "/Lotus/Upgrades/Skins/Operator/Accessories/PiercingA",
- "/Lotus/Upgrades/Skins/Operator/Accessories/PrimeAccessoriesAFacial",
- "/Lotus/Upgrades/Skins/Operator/Accessories/PrimeAccessoriesBFacial",
- "/Lotus/Upgrades/Skins/Operator/Accessories/PrimeAccessoriesCEar",
- "/Lotus/Upgrades/Skins/Operator/Accessories/RevenantDeluxeCrown",
- "/Lotus/Upgrades/Skins/Operator/Accessories/RevenantDeluxeMask",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWAuresCrownFacialAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWAuresEarAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWBlazeOculusEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWCaeruleaVisorEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWCorailDiademFacialAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWGarasuEarAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWGarasuFacialAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWIryaEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWJotunheimEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWKatixEarAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWKiritsuneEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWKonvalystEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWLumisEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWOptimaEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWPapillonEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWPraesidiumFacialAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWScleraOculusEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWVuotoEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/SWYureilystEyeAcc",
- "/Lotus/Upgrades/Skins/Operator/Accessories/TempleDots",
- "/Lotus/Upgrades/Skins/Operator/Accessories/TempleHornDouble",
- "/Lotus/Upgrades/Skins/Operator/Accessories/TempleHornSingle",
- "/Lotus/Upgrades/Skins/Operator/Accessories/UmbraBlindfold",
- "/Lotus/Upgrades/Skins/Operator/Accessories/UmbraCirclet",
- "/Lotus/Upgrades/Skins/Operator/Accessories/UmbraEarpiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/UmbraTiara",
- "/Lotus/Upgrades/Skins/Operator/Accessories/VayasPrimeDiadem",
- "/Lotus/Upgrades/Skins/Operator/Accessories/VayasPrimeEarpiece",
- "/Lotus/Upgrades/Skins/Operator/Accessories/VayasPrimeMask",
- "/Lotus/Upgrades/Skins/Operator/Amp/DrifterAmpSkin",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/AdultOperatorAgileAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/AdultOperatorNobleAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/BaseOperatorAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/MaduraiAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/NaramonAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/UnairuAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/VazarinAnims",
- "/Lotus/Upgrades/Skins/Operator/AnimationSets/ZenurikAnims",
- "/Lotus/Upgrades/Skins/Operator/Armour/Apparatist/ApparatistArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Apparatist/ApparatistArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Apparatist/ApparatistArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Apparatist/ApparatistArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/GreaseWitch/GreaseArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/GreaseWitch/GreaseArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/GreaseWitch/GreaseArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/GreaseWitch/GreaseArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Mage/MageArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Mage/MageArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Mage/MageArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Mage/MageArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Monk/MonkArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Monk/MonkArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Monk/MonkArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Monk/MonkArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/OperatorPrimeArmour/OperatorPrimeArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/OperatorPrimeArmour/OperatorPrimeArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/OperatorPrimeArmour/OperatorPrimeArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/OperatorPrimeArmour/OperatorPrimeArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Seer/SeerArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Seer/SeerArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Seer/SeerArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Seer/SeerArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Smelter/SmelterArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Smelter/SmelterArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Smelter/SmelterArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Smelter/SmelterArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Technomancer/TechnomancerArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Technomancer/TechnomancerArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Technomancer/TechnomancerArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Technomancer/TechnomancerArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Armour/Teshin/TeshinArmourArms",
- "/Lotus/Upgrades/Skins/Operator/Armour/Teshin/TeshinArmourBody",
- "/Lotus/Upgrades/Skins/Operator/Armour/Teshin/TeshinArmourHead",
- "/Lotus/Upgrades/Skins/Operator/Armour/Teshin/TeshinArmourLegs",
- "/Lotus/Upgrades/Skins/Operator/Beards/BeardA",
- "/Lotus/Upgrades/Skins/Operator/Beards/BeardB",
- "/Lotus/Upgrades/Skins/Operator/Beards/BeardC",
- "/Lotus/Upgrades/Skins/Operator/Beards/BeardN",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultArabic",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultBase",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultC",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultChameleon",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDaxA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDaxB",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDeluxeA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDrifterB",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultDrifterGrineer",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultG",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultJ",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultK",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultNightSuit",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultPrimeA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultPrimeB",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultPrimeC",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitAdultPrimeD",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitArabic",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitB",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitC",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitChameleon",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitD",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitDaxB",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitInfestedA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitN",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitNightSuit",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitO",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitOutfit2A",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitPrimeA",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitPrimeC",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitPrimeD",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/BodySuitZephyrDeluxe",
- "/Lotus/Upgrades/Skins/Operator/BodySuits/NoBodySuit",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingA",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingB",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingC",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingD",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingE",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingF",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingG",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingH",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingI",
- "/Lotus/Upgrades/Skins/Operator/FacialMarkings/FacialMarkingJ",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairA",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairAdultN",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairAdultNightwave",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairAdultNightwaveB",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairB",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairC",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairD",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairE",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairG",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairH",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairI",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairJ",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairK",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairL",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairM",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairN",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairO",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairP",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairRBun",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairRBunBraid",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairRPonytail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairS",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairSLong",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairSShort",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairTBraid",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairTBun",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairTPonytail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairUOneBraid",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairUThreeBraid",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairUTwoBraid",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairVOne",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairVThree",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairVTwo",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairWDreadShortTail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairWDreadTail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairWFuzzyBall",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairXDreadShortTail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairXDreadTail",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairXFuzzyBall",
- "/Lotus/Upgrades/Skins/Operator/Hair/HairZ",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadA",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadB",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadC",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadD",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadE",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadF",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadG",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadH",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadI",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadJ",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadK",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadL",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultFemaleHeadM",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadA",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadB",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadC",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadD",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadE",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadF",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadG",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadH",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadI",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadJ",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadK",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadL",
- "/Lotus/Upgrades/Skins/Operator/Heads/AdultMaleHeadM",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadA",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadB",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadC",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadD",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadE",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadF",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadG",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadH",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadI",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadJ",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadK",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadL",
- "/Lotus/Upgrades/Skins/Operator/Heads/FemaleHeadM",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadA",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadB",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadC",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadD",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadE",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadF",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadG",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadH",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadI",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadJ",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadK",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadL",
- "/Lotus/Upgrades/Skins/Operator/Heads/MaleHeadM",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultArabic",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultC",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultChameleon",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDaxA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDaxB",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDeluxeA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDrifterB",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultDrifterGrineer",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultG",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultJ",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultK",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultPrimeB",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodAdultPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodArabic",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodB",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodC",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodChameleon",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodD",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodDaxB",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodDuviriAdultOperator",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodDuviriOperator",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodInfestedA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodLotusWisp",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodN",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodNorg",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodO",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodOutfit2A",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Hoods/HoodZephyrDeluxe",
- "/Lotus/Upgrades/Skins/Operator/Hoods/JaviExecutionHood",
- "/Lotus/Upgrades/Skins/Operator/Hoods/NoHood",
- "/Lotus/Upgrades/Skins/Operator/Hoods/UmbraScarfHood",
- "/Lotus/Upgrades/Skins/Operator/Hoods/WolfHood",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultArabic",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultBase",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultC",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultChameleon",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDaxA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDaxB",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDeluxeA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDrifterB",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultDrifterGrineer",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultG",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultJ",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultK",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultNightSuit",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultPrimeB",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsAdultPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsArabic",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsB",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsC",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsChameleon",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsD",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsDaxB",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsInfestedA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsN",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsNightSuit",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsO",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsOutfit2A",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Leggings/LeggingsZephyrDeluxe",
- "/Lotus/Upgrades/Skins/Operator/Leggings/NoLeggings",
- "/Lotus/Upgrades/Skins/Operator/Skirts/HipSocketB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/NoSkirt",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultArabic",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultC",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultDaxB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultG",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultJ",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultK",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultPrimeB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtAdultPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtArabic",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtDaxB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtDrifterGrineer",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtE",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtF",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtG",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtJ",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtK",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtN",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtO",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtPrimeB",
- "/Lotus/Upgrades/Skins/Operator/Skirts/SkirtPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/NoSleeves",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultArabic",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultBase",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultC",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultChameleon",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDaxA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDaxB",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDeluxeA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDrifterB",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultDrifterGrineer",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultG",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultJ",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultK",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultM2022Tennocon",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultNightSuit",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultPrimeB",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesAdultPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesArabic",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesB",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesC",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesChameleon",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesD",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesDaxB",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesDexOutfit",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesInfestedA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesM2022TennoCon",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesN",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesNightSuit",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesNovaEngineer",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesO",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesOutfit1A",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesOutfit2A",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesOutfit3A",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesPrimeA",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesPrimeC",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesPrimeD",
- "/Lotus/Upgrades/Skins/Operator/Sleeves/SleevesZephyrDeluxe",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooCorpusA",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooCorpusB",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooCorpusC",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooCorpusD",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooCorpusE",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriA",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriB",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriC",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriD",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriE",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriF",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooDuviriG",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGeode",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGeodeBlack",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGeodeGrey",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGrineerA",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGrineerB",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGrineerC",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGrineerD",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooGrineerE",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooLoveFlower",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooLoveFlowerB",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooLoveHeart",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooLoveRose",
- "/Lotus/Upgrades/Skins/Operator/Tattoos/TattooTennoG",
- "/Lotus/Upgrades/Skins/Operator/OperatorCustomization",
- "/Lotus/Upgrades/Skins/Ornate/OrnateArchSword",
- "/Lotus/Upgrades/Skins/Ornate/OrnateBallistica",
- "/Lotus/Upgrades/Skins/Ornate/OrnateGalatine",
- "/Lotus/Upgrades/Skins/Ornate/OrnateImperator",
- "/Lotus/Upgrades/Skins/Ornate/OrnateOrthos",
- "/Lotus/Upgrades/Skins/Ornate/OrnateTigris",
- "/Lotus/Upgrades/Skins/Ornate/OrnateVectis",
- "/Lotus/Upgrades/Skins/Ornate/TekeluAkmagnusSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluAkstilettoSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluAkvastoSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluBazaSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluFragorSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluGlaiveSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluGunsenSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluMagnusSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluNikanaSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluPantheraSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluRedeemerSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluStradavarSkin",
- "/Lotus/Upgrades/Skins/Ornate/TekeluVastoSkin",
- "/Lotus/Upgrades/Skins/Ostron/ExcaliburMask",
- "/Lotus/Upgrades/Skins/Ostron/GrineerMask",
- "/Lotus/Upgrades/Skins/Ostron/MagMask",
- "/Lotus/Upgrades/Skins/Ostron/RevenantMask",
- "/Lotus/Upgrades/Skins/Ostron/TrinityMask",
- "/Lotus/Upgrades/Skins/Ostron/VoltMask",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukDeluxeSkin",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukDeluxeSparring",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukImmortalSkin",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukPrimeHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/BaruukPrimeSkin",
- "/Lotus/Upgrades/Skins/Pacifist/PacifistAgileAnims",
- "/Lotus/Upgrades/Skins/Pacifist/PacifistAltHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/PacifistHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/PacifistNobleAnims",
- "/Lotus/Upgrades/Skins/Pacifist/PacifistSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukBotLSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukBotlHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukGraxxHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukGraxxSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukPeacemakerHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukPeacemakerSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukZamariuHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWBaruukZamariuSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWBedouinHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWBedouinSkin",
- "/Lotus/Upgrades/Skins/Pacifist/SWShiraanHelmet",
- "/Lotus/Upgrades/Skins/Pacifist/SWShiraanSkin",
- "/Lotus/Upgrades/Skins/Pacifist/UnlockPacifistAgile",
- "/Lotus/Upgrades/Skins/Pacifist/UnlockPacifistNoble",
- "/Lotus/Upgrades/Skins/Pagemaster/PagemasterAgileAnims",
- "/Lotus/Upgrades/Skins/Pagemaster/PagemasterAltHelmet",
- "/Lotus/Upgrades/Skins/Pagemaster/PagemasterHelmet",
- "/Lotus/Upgrades/Skins/Pagemaster/PagemasterNobleAnims",
- "/Lotus/Upgrades/Skins/Pagemaster/PagemasterSkin",
- "/Lotus/Upgrades/Skins/Pagemaster/UnlockPagemasterAgile",
- "/Lotus/Upgrades/Skins/Pagemaster/UnlockPagemasterNoble",
- "/Lotus/Upgrades/Skins/Paladin/OberonAlternateSkin",
- "/Lotus/Upgrades/Skins/Paladin/OberonPS4Alt2Helmet",
- "/Lotus/Upgrades/Skins/Paladin/OberonPS4Helmet",
- "/Lotus/Upgrades/Skins/Paladin/OberonPS4Skin",
- "/Lotus/Upgrades/Skins/Paladin/PaladinAgileAnims",
- "/Lotus/Upgrades/Skins/Paladin/PaladinDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Paladin/PaladinDeluxeSuit",
- "/Lotus/Upgrades/Skins/Paladin/PaladinHelmet",
- "/Lotus/Upgrades/Skins/Paladin/PaladinHelmetAlt",
- "/Lotus/Upgrades/Skins/Paladin/PaladinHelmetAltB",
- "/Lotus/Upgrades/Skins/Paladin/PaladinNobleAnims",
- "/Lotus/Upgrades/Skins/Paladin/PaladinPrimeHelmet",
- "/Lotus/Upgrades/Skins/Paladin/PaladinPrimeSkin",
- "/Lotus/Upgrades/Skins/Paladin/PaladinSkin",
- "/Lotus/Upgrades/Skins/Paladin/SWFeroshHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWOberonBotLHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWOberonBotLSkin",
- "/Lotus/Upgrades/Skins/Paladin/SWOberonYoukaiHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWOberonYoukaiSkin",
- "/Lotus/Upgrades/Skins/Paladin/SWRFiveOberonDestrierHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWTaurusHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWWendigoHelmet",
- "/Lotus/Upgrades/Skins/Paladin/SWWendigoSkin",
- "/Lotus/Upgrades/Skins/Paladin/UnlockPaladinAgile",
- "/Lotus/Upgrades/Skins/Paladin/UnlockPaladinNoble",
- "/Lotus/Upgrades/Skins/Parazon/TnRailjackDataKnife",
- "/Lotus/Upgrades/Skins/PaxDuviricus/KullervoTwoHandedSwordSkin",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusAgileAnims",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusAltHelmet",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusBodyBlades",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusHelmet",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusNobleAnims",
- "/Lotus/Upgrades/Skins/PaxDuviricus/PaxDuviricusSkin",
- "/Lotus/Upgrades/Skins/PaxDuviricus/UnlockPaxDuviricusAgile",
- "/Lotus/Upgrades/Skins/PaxDuviricus/UnlockPaxDuviricusNoble",
- "/Lotus/Upgrades/Skins/Pirate/HydroidAlternateSkin",
- "/Lotus/Upgrades/Skins/Pirate/HydroidPrimeDefaultHelmet",
- "/Lotus/Upgrades/Skins/Pirate/PirateAltBHelmet",
- "/Lotus/Upgrades/Skins/Pirate/PirateAltHelmet",
- "/Lotus/Upgrades/Skins/Pirate/PirateDefaultHelmet",
- "/Lotus/Upgrades/Skins/Pirate/SWGraxxHydroidHelmet",
- "/Lotus/Upgrades/Skins/Pirate/SWGraxxHydroidSkin",
- "/Lotus/Upgrades/Skins/Pirate/SWRorqualHelmet",
- "/Lotus/Upgrades/Skins/Polearm/SWOsirisPolearm",
- "/Lotus/Upgrades/Skins/Polearm/SWSkoposPolearm",
- "/Lotus/Upgrades/Skins/Polearm/SWUlceratedPolearm",
- "/Lotus/Upgrades/Skins/Priest/HarrowDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Priest/HarrowDeluxeSuit",
- "/Lotus/Upgrades/Skins/Priest/HarrowPrimeHelmet",
- "/Lotus/Upgrades/Skins/Priest/HarrowPrimeSkin",
- "/Lotus/Upgrades/Skins/Priest/PriestAgileAnims",
- "/Lotus/Upgrades/Skins/Priest/PriestAlt2Helmet",
- "/Lotus/Upgrades/Skins/Priest/PriestHelmet",
- "/Lotus/Upgrades/Skins/Priest/PriestHelmetAlt",
- "/Lotus/Upgrades/Skins/Priest/PriestNobleAnims",
- "/Lotus/Upgrades/Skins/Priest/PriestSkin",
- "/Lotus/Upgrades/Skins/Priest/SWAlgalystHelmet",
- "/Lotus/Upgrades/Skins/Priest/SWAlgalystSkin",
- "/Lotus/Upgrades/Skins/Priest/SWGraxxHarrowHelmet",
- "/Lotus/Upgrades/Skins/Priest/SWGraxxHarrowSkin",
- "/Lotus/Upgrades/Skins/Priest/SWHierophaHelmet",
- "/Lotus/Upgrades/Skins/Priest/SWVelesHelmet",
- "/Lotus/Upgrades/Skins/Priest/SWVelesSkin",
- "/Lotus/Upgrades/Skins/Priest/UnlockPriestAgile",
- "/Lotus/Upgrades/Skins/Priest/UnlockPriestNoble",
- "/Lotus/Upgrades/Skins/Promo/ChangYou/CYRubedoDrakgoonCamo",
- "/Lotus/Upgrades/Skins/Promo/ChangYou/CYRubedoGalatineCamo",
- "/Lotus/Upgrades/Skins/Promo/ChangYou/CYSingleStaffSkin",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/ExcaliburXBoneSkin",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/ExcaliburXBoneSkinHelmet",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeCarrier",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeCassowarSkin",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeDethcube",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeDexDakra",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeDexFuris",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeDualHeatSwords",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeDualKamas",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeFragor",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeGrakata",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeHeatDagger",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeHeatSword",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeInfestedWings",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeKama",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeLatron",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeRhinoHelmet",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeRhinoSkin",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeStealthArchwingSkin",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeTonkor",
- "/Lotus/Upgrades/Skins/Promo/Microsoft/JadeTwinGrakatas",
- "/Lotus/Upgrades/Skins/Promo/Nintendo/NintendoAklatoSkin",
- "/Lotus/Upgrades/Skins/Promo/Nintendo/NintendoSemiAutoSkin",
- "/Lotus/Upgrades/Skins/Promo/PCGamer/PCGamerDarkSwordDaggerHybridSkin",
- "/Lotus/Upgrades/Skins/Promo/RixtyMOL/RixtyMOLAklatoSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/CandyCaneEtherReaperSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/CandyCaneHateSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/CandyCaneReaperPrimeSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/CandyCaneScytheSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDAcceltraSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDCorvasSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDCycron",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDGammacorSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDSkiajatiSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDSuparna",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDVetalaRevenantArmorA",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDVetalaRevenantArmorC",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023DOTDVetalaRevenantArmorL",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/Halloween2023SOULGammacorSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumArcaPlasmorSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumAtomosSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumCycronSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumDualKeresSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumFulminSkin",
- "/Lotus/Upgrades/Skins/Promo/Seasonal/TennobaumGramSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/AkjagaraIridosSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/ExcaliburTwitchSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/ExcaliburTwitchSkinHelmet",
- "/Lotus/Upgrades/Skins/Promo/Twitch/LisetSkinTwitch",
- "/Lotus/Upgrades/Skins/Promo/Twitch/OgrisTwitchSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/PyranaTwitchSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/TigrisTwitchSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/Twitch2021AfurisSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/Twitch2021FurisSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/TwitchAnkyros",
- "/Lotus/Upgrades/Skins/Promo/Twitch/TwitchPentaSkin",
- "/Lotus/Upgrades/Skins/Promo/Twitch/TwitchRubicoSkin",
- "/Lotus/Upgrades/Skins/Promo/Void/AkvastosVoidSkin",
- "/Lotus/Upgrades/Skins/Promo/Void/AnkyrosVoidSkin",
- "/Lotus/Upgrades/Skins/Promo/Void/TigrisVoidSkin",
- "/Lotus/Upgrades/Skins/Promo/Void/VastoVoidSkin",
- "/Lotus/Upgrades/Skins/Promo/Warframe/PromoParis",
- "/Lotus/Upgrades/Skins/Promo/Warframe/ProtoGlaive",
- "/Lotus/Upgrades/Skins/Promo/WeGame/WeGameMacheteSkin",
- "/Lotus/Upgrades/Skins/PvP/Bows/PvPDaikyu",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPBraton",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPGorgon",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPGrinlok",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPKarak",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPLatron",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPOpticor",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPSoma",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPStrun",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPSybaris",
- "/Lotus/Upgrades/Skins/PvP/LongGuns/PvPTonkor",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPAckBrunt",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPDragonNikana",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPDualSkana",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPFurax",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPGlaive",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPJatKittag",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPKronen",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPNikana",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPSkana",
- "/Lotus/Upgrades/Skins/PvP/Melee/PvPTipedo",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPAkLex",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPAklato",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPAkstiletto",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPAkvasto",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPAngstrum",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPKraken",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPLato",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPLex",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPMarelok",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPTwinVipers",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPVasto",
- "/Lotus/Upgrades/Skins/PvP/Pistols/PvPViper",
- "/Lotus/Upgrades/Skins/RailJack/DefaultEngines",
- "/Lotus/Upgrades/Skins/RailJack/DefaultReactor",
- "/Lotus/Upgrades/Skins/RailJack/EnginesClanC",
- "/Lotus/Upgrades/Skins/RailJack/EnginesLavanA",
- "/Lotus/Upgrades/Skins/RailJack/EnginesLavanB",
- "/Lotus/Upgrades/Skins/RailJack/EnginesLavanC",
- "/Lotus/Upgrades/Skins/RailJack/EnginesVidarA",
- "/Lotus/Upgrades/Skins/RailJack/EnginesVidarB",
- "/Lotus/Upgrades/Skins/RailJack/EnginesVidarC",
- "/Lotus/Upgrades/Skins/RailJack/EnginesZektiA",
- "/Lotus/Upgrades/Skins/RailJack/EnginesZektiB",
- "/Lotus/Upgrades/Skins/RailJack/EnginesZektiC",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsClanA",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsClanB",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsClanC",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsDefault",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsLavanA",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsLavanB",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsLavanC",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsVidarA",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsVidarB",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsVidarC",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsZektiA",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsZektiB",
- "/Lotus/Upgrades/Skins/RailJack/HullMaterialsZektiC",
- "/Lotus/Upgrades/Skins/RailJack/NimbleEngines",
- "/Lotus/Upgrades/Skins/RailJack/RailjackAeronSkin",
- "/Lotus/Upgrades/Skins/RailJack/RailjackDefaultSkin",
- "/Lotus/Upgrades/Skins/RailJack/RailjackGhostSkin",
- "/Lotus/Upgrades/Skins/RailJack/RailjackWrasseSkin",
- "/Lotus/Upgrades/Skins/RailJack/ReactorClanA",
- "/Lotus/Upgrades/Skins/RailJack/ReactorClanB",
- "/Lotus/Upgrades/Skins/RailJack/ReactorClanC",
- "/Lotus/Upgrades/Skins/RailJack/ReactorLavanA",
- "/Lotus/Upgrades/Skins/RailJack/ReactorLavanB",
- "/Lotus/Upgrades/Skins/RailJack/ReactorLavanC",
- "/Lotus/Upgrades/Skins/RailJack/ReactorVidarA",
- "/Lotus/Upgrades/Skins/RailJack/ReactorVidarB",
- "/Lotus/Upgrades/Skins/RailJack/ReactorVidarC",
- "/Lotus/Upgrades/Skins/RailJack/ReactorZektiA",
- "/Lotus/Upgrades/Skins/RailJack/ReactorZektiB",
- "/Lotus/Upgrades/Skins/RailJack/ReactorZektiC",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayA",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayB",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayC",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayDefault",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayLavanA",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayLavanB",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayLavanC",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayVidarA",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayVidarB",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayVidarC",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayZektiA",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayZektiB",
- "/Lotus/Upgrades/Skins/RailJack/ShieldArrayZektiC",
- "/Lotus/Upgrades/Skins/RailJack/ThrustEngines",
- "/Lotus/Upgrades/Skins/Ranger/RangerAgileAnims",
- "/Lotus/Upgrades/Skins/Ranger/RangerAlt02Helmet",
- "/Lotus/Upgrades/Skins/Ranger/RangerAltCloakA",
- "/Lotus/Upgrades/Skins/Ranger/RangerAltCloakB",
- "/Lotus/Upgrades/Skins/Ranger/RangerAltHelmet",
- "/Lotus/Upgrades/Skins/Ranger/RangerHelmet",
- "/Lotus/Upgrades/Skins/Ranger/RangerNobleAnims",
- "/Lotus/Upgrades/Skins/Ranger/RangerSkin",
- "/Lotus/Upgrades/Skins/Ranger/UnlockRangerAgile",
- "/Lotus/Upgrades/Skins/Ranger/UnlockRangerNoble",
- "/Lotus/Upgrades/Skins/ReferralSeriesTwo/RubedoAkimboViperCamo",
- "/Lotus/Upgrades/Skins/ReferralSeriesTwo/RubedoDrakgoonCamo",
- "/Lotus/Upgrades/Skins/ReferralSeriesTwo/RubedoGalatineCamo",
- "/Lotus/Upgrades/Skins/ReferralSeriesTwo/RubedoViperCamo",
- "/Lotus/Upgrades/Skins/Revenant/RevenantAgileAnims",
- "/Lotus/Upgrades/Skins/Revenant/RevenantDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Revenant/RevenantDeluxeSkin",
- "/Lotus/Upgrades/Skins/Revenant/RevenantHelmet",
- "/Lotus/Upgrades/Skins/Revenant/RevenantHelmetAlt",
- "/Lotus/Upgrades/Skins/Revenant/RevenantNobleAnims",
- "/Lotus/Upgrades/Skins/Revenant/RevenantPrimeHelmet",
- "/Lotus/Upgrades/Skins/Revenant/RevenantPrimeSkin",
- "/Lotus/Upgrades/Skins/Revenant/RevenantSkin",
- "/Lotus/Upgrades/Skins/Revenant/SWAhrimanHelmet",
- "/Lotus/Upgrades/Skins/Revenant/SWAhrimanSkin",
- "/Lotus/Upgrades/Skins/Revenant/SWDraugenHelmet",
- "/Lotus/Upgrades/Skins/Revenant/SWDraugenSkin",
- "/Lotus/Upgrades/Skins/Revenant/SWImmortuosHelmet",
- "/Lotus/Upgrades/Skins/Revenant/SWRevenantWightHelmet",
- "/Lotus/Upgrades/Skins/Revenant/SWRevenantWightSkin",
- "/Lotus/Upgrades/Skins/Revenant/SWTenebrusHelmet",
- "/Lotus/Upgrades/Skins/Revenant/UnlockRevenantAgile",
- "/Lotus/Upgrades/Skins/Revenant/UnlockRevenantNoble",
- "/Lotus/Upgrades/Skins/Rhino/ChangYou/CYRhinoRubedoSkin",
- "/Lotus/Upgrades/Skins/Rhino/ChangYou/CYRhinoRubedoSkinHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoAgileAnims",
- "/Lotus/Upgrades/Skins/Rhino/RhinoAlternateSkin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoChameleonAHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoChameleonASkin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeSuit",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeV2AgileAnims",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeV2Helmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeV2NobleAnims",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeV2Skin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDeluxeV2Wings",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDexHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoDexSkin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoHelmetAlt",
- "/Lotus/Upgrades/Skins/Rhino/RhinoHelmetAltB",
- "/Lotus/Upgrades/Skins/Rhino/RhinoHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Rhino/RhinoHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Rhino/RhinoNobleAnims",
- "/Lotus/Upgrades/Skins/Rhino/RhinoPrimeHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoPrimeSkin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoRubedoSkin",
- "/Lotus/Upgrades/Skins/Rhino/RhinoRubedoSkinHelmet",
- "/Lotus/Upgrades/Skins/Rhino/RhinoSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWIonRhinoHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWIonRhinoSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWMastodonHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWMastodonSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWRFourRhinoGraxxHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWRFourRhinoGraxxSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWRFourRhinoVojnikSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWRhinoBotLHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWRhinoBotLSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWScarabSectHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWScarabSectSkin",
- "/Lotus/Upgrades/Skins/Rhino/SWTeutonicHelmet",
- "/Lotus/Upgrades/Skins/Rhino/SWWarlustHelmet",
- "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoAgile",
- "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoDeluxeV2Agile",
- "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoDeluxeV2Noble",
- "/Lotus/Upgrades/Skins/Rhino/UnlockRhinoNoble",
- "/Lotus/Upgrades/Skins/Runner/DeluxeAcceltraSkin",
- "/Lotus/Upgrades/Skins/Runner/GaussDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Runner/GaussDeluxeSkin",
- "/Lotus/Upgrades/Skins/Runner/GaussPrimeAltHelmet",
- "/Lotus/Upgrades/Skins/Runner/GaussPrimeHelmet",
- "/Lotus/Upgrades/Skins/Runner/GaussPrimeSkin",
- "/Lotus/Upgrades/Skins/Runner/RunnerAgileAnims",
- "/Lotus/Upgrades/Skins/Runner/RunnerAltHelmet",
- "/Lotus/Upgrades/Skins/Runner/RunnerHelmet",
- "/Lotus/Upgrades/Skins/Runner/RunnerNobleAnims",
- "/Lotus/Upgrades/Skins/Runner/RunnerSkin",
- "/Lotus/Upgrades/Skins/Runner/SWGaussAgitoHelmet",
- "/Lotus/Upgrades/Skins/Runner/SWGaussAgitoSkin",
- "/Lotus/Upgrades/Skins/Runner/SWGaussGraxxHelmet",
- "/Lotus/Upgrades/Skins/Runner/SWGaussGraxxSkin",
- "/Lotus/Upgrades/Skins/Runner/SWGaussNitrolystHelmet",
- "/Lotus/Upgrades/Skins/Runner/SWGaussNitrolystSkin",
- "/Lotus/Upgrades/Skins/Runner/UnlockRunnerAgile",
- "/Lotus/Upgrades/Skins/Runner/UnlockRunnerNoble",
- "/Lotus/Upgrades/Skins/Sandman/InarosDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Sandman/InarosDeluxeSkin",
- "/Lotus/Upgrades/Skins/Sandman/InarosDeluxeSword",
- "/Lotus/Upgrades/Skins/Sandman/InarosPrimeHelmet",
- "/Lotus/Upgrades/Skins/Sandman/InarosPrimeSkin",
- "/Lotus/Upgrades/Skins/Sandman/MummyAlt03Helmet",
- "/Lotus/Upgrades/Skins/Sandman/SWHorusHelmet",
- "/Lotus/Upgrades/Skins/Sandman/SWHorusSkin",
- "/Lotus/Upgrades/Skins/Sandman/SWKephriHelmet",
- "/Lotus/Upgrades/Skins/Sandman/SWOzymandiasHelmet",
- "/Lotus/Upgrades/Skins/Sandman/SWOzymandiasSkin",
- "/Lotus/Upgrades/Skins/Sandman/SandmanAgileAnims",
- "/Lotus/Upgrades/Skins/Sandman/SandmanAlt02Helmet",
- "/Lotus/Upgrades/Skins/Sandman/SandmanAltHelmet",
- "/Lotus/Upgrades/Skins/Sandman/SandmanHelmet",
- "/Lotus/Upgrades/Skins/Sandman/SandmanNobleAnims",
- "/Lotus/Upgrades/Skins/Sandman/SandmanSkin",
- "/Lotus/Upgrades/Skins/Sandman/UnlockSandmanAgile",
- "/Lotus/Upgrades/Skins/Sandman/UnlockSandmanNoble",
- "/Lotus/Upgrades/Skins/Saryn/SWAmalgamaHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWAmalgamaSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWBelladonnaHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWBotLSarynHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWBotLSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWIntegraHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWIntegraSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWNapellusHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWNapellusSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWNitasModaHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWNitasModaSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWRSixSarynGraxxHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWRSixSarynGraxxSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWSarynIonHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWSarynIonSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWSarynNighthunterHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWSarynNighthunterSkin",
- "/Lotus/Upgrades/Skins/Saryn/SWVelenosaHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SWVelenosaSkin",
- "/Lotus/Upgrades/Skins/Saryn/SarynChameleonBHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SarynChameleonBSkin",
- "/Lotus/Upgrades/Skins/Saryn/SarynDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SarynDeluxeSuit",
- "/Lotus/Upgrades/Skins/Saryn/SarynLunarNewYearHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SarynLunarNewYearSkin",
- "/Lotus/Upgrades/Skins/Saryn/SarynPrimeHelmet",
- "/Lotus/Upgrades/Skins/Saryn/SarynPrimeSkin",
- "/Lotus/Upgrades/Skins/Saryn/SarynSkin",
- "/Lotus/Upgrades/Skins/Scarves/AmazonOniSyandana",
- "/Lotus/Upgrades/Skins/Scarves/April2015Scarf",
- "/Lotus/Upgrades/Skins/Scarves/ArmScarf",
- "/Lotus/Upgrades/Skins/Scarves/AtlasDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/BaroCape",
- "/Lotus/Upgrades/Skins/Scarves/BaroCape2Scarf",
- "/Lotus/Upgrades/Skins/Scarves/BaroCape3Scarf",
- "/Lotus/Upgrades/Skins/Scarves/BaruukDeluxeCape",
- "/Lotus/Upgrades/Skins/Scarves/BillowingCape",
- "/Lotus/Upgrades/Skins/Scarves/BrassAndGoldScarf",
- "/Lotus/Upgrades/Skins/Scarves/CenturionCape",
- "/Lotus/Upgrades/Skins/Scarves/CephSyandana",
- "/Lotus/Upgrades/Skins/Scarves/ConclaveCape",
- "/Lotus/Upgrades/Skins/Scarves/CrpAladScarf",
- "/Lotus/Upgrades/Skins/Scarves/CrpCubinatorScarf",
- "/Lotus/Upgrades/Skins/Scarves/CrpMBundleSyandana",
- "/Lotus/Upgrades/Skins/Scarves/CrpModularScarf",
- "/Lotus/Upgrades/Skins/Scarves/DeimosSupporterFireFlyBlueScarf",
- "/Lotus/Upgrades/Skins/Scarves/DexScarf",
- "/Lotus/Upgrades/Skins/Scarves/DinoSpikeScarf",
- "/Lotus/Upgrades/Skins/Scarves/EmberDeluxeIISyandana",
- "/Lotus/Upgrades/Skins/Scarves/EmberDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/EnergyScarf",
- "/Lotus/Upgrades/Skins/Scarves/EnergyScarfVoidSkin",
- "/Lotus/Upgrades/Skins/Scarves/EquinoxDeluxeCape",
- "/Lotus/Upgrades/Skins/Scarves/ErosionCape",
- "/Lotus/Upgrades/Skins/Scarves/FireFlyScarf",
- "/Lotus/Upgrades/Skins/Scarves/FlameScarf",
- "/Lotus/Upgrades/Skins/Scarves/GarudaCape",
- "/Lotus/Upgrades/Skins/Scarves/GarudaDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/GaussDeluxeCape",
- "/Lotus/Upgrades/Skins/Scarves/GlassDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/GrineerTurbinesScarf",
- "/Lotus/Upgrades/Skins/Scarves/GrnAmphisScarf",
- "/Lotus/Upgrades/Skins/Scarves/GrnHoodedCape",
- "/Lotus/Upgrades/Skins/Scarves/GrnQueenScarf",
- "/Lotus/Upgrades/Skins/Scarves/GrnStrapsScarf",
- "/Lotus/Upgrades/Skins/Scarves/GrnTubeScarf",
- "/Lotus/Upgrades/Skins/Scarves/GrnVhCape",
- "/Lotus/Upgrades/Skins/Scarves/HalloweenErosionCape",
- "/Lotus/Upgrades/Skins/Scarves/HalloweenFireFlyScarf",
- "/Lotus/Upgrades/Skins/Scarves/HalloweenGrnBannerScarf",
- "/Lotus/Upgrades/Skins/Scarves/HalloweenKyropteraScarf",
- "/Lotus/Upgrades/Skins/Scarves/HildrynDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/HolidayTurtleNeckScarf",
- "/Lotus/Upgrades/Skins/Scarves/HornSkullScarf",
- "/Lotus/Upgrades/Skins/Scarves/HornSkullScarfDefault",
- "/Lotus/Upgrades/Skins/Scarves/HydroidDeluxeBlazers",
- "/Lotus/Upgrades/Skins/Scarves/IceSpikeCape",
- "/Lotus/Upgrades/Skins/Scarves/InarosDlxCape",
- "/Lotus/Upgrades/Skins/Scarves/InfBatCape",
- "/Lotus/Upgrades/Skins/Scarves/InfCoralSyandana",
- "/Lotus/Upgrades/Skins/Scarves/InfMembraneCape",
- "/Lotus/Upgrades/Skins/Scarves/InfScarfRibCage",
- "/Lotus/Upgrades/Skins/Scarves/InfTentacleScarf",
- "/Lotus/Upgrades/Skins/Scarves/InfestedFinsScarf",
- "/Lotus/Upgrades/Skins/Scarves/IvaraDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/IvaraPrimeCape",
- "/Lotus/Upgrades/Skins/Scarves/JadeBombyxScarf",
- "/Lotus/Upgrades/Skins/Scarves/JadeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/JadeTurtleNeckScarf",
- "/Lotus/Upgrades/Skins/Scarves/KazBaroCape",
- "/Lotus/Upgrades/Skins/Scarves/KazInfestedScarf",
- "/Lotus/Upgrades/Skins/Scarves/KhoraPrimeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/LimboDeluxeCape",
- "/Lotus/Upgrades/Skins/Scarves/LisetScarf",
- "/Lotus/Upgrades/Skins/Scarves/MagDeluxeScarf",
- "/Lotus/Upgrades/Skins/Scarves/MesaDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/MixerKyropteraScarf",
- "/Lotus/Upgrades/Skins/Scarves/NarmerEvolvingSyandanaACape",
- "/Lotus/Upgrades/Skins/Scarves/NarmerEvolvingSyandanaBCape",
- "/Lotus/Upgrades/Skins/Scarves/NarmerEvolvingSyandanaCCape",
- "/Lotus/Upgrades/Skins/Scarves/NefSyandanaScarf",
- "/Lotus/Upgrades/Skins/Scarves/NezhaDeluxeScarf",
- "/Lotus/Upgrades/Skins/Scarves/NezhaLeverianCape",
- "/Lotus/Upgrades/Skins/Scarves/NidusDeluxeScarf",
- "/Lotus/Upgrades/Skins/Scarves/NidusPrimeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/NintendoTurtleNeckScarf",
- "/Lotus/Upgrades/Skins/Scarves/NoruPrimeScarf",
- "/Lotus/Upgrades/Skins/Scarves/NovaDeluxeScarf",
- "/Lotus/Upgrades/Skins/Scarves/NovaIIDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/NyxDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/ObsidianAzureScarf",
- "/Lotus/Upgrades/Skins/Scarves/ObsidianCrowSyandana",
- "/Lotus/Upgrades/Skins/Scarves/ObsidianKyropteraScarf",
- "/Lotus/Upgrades/Skins/Scarves/ObsidianSamiaScarf",
- "/Lotus/Upgrades/Skins/Scarves/PS4ArmScarf",
- "/Lotus/Upgrades/Skins/Scarves/PS5Syandana",
- "/Lotus/Upgrades/Skins/Scarves/PacifistSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PaxDuviricusSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PriestScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeAkrabuSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeAltraScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeAviaSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeCapeEquinox",
- "/Lotus/Upgrades/Skins/Scarves/PrimeChromaCape",
- "/Lotus/Upgrades/Skins/Scarves/PrimeFlameScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeGrendelSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeInarosSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeLimboCape",
- "/Lotus/Upgrades/Skins/Scarves/PrimeNaveScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeOberonCape",
- "/Lotus/Upgrades/Skins/Scarves/PrimeOctaviaSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeRevenantCape",
- "/Lotus/Upgrades/Skins/Scarves/PrimeRhoptronSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeScarfAtlas",
- "/Lotus/Upgrades/Skins/Scarves/PrimeScarfF",
- "/Lotus/Upgrades/Skins/Scarves/PrimeScarfG",
- "/Lotus/Upgrades/Skins/Scarves/PrimeScarfV",
- "/Lotus/Upgrades/Skins/Scarves/PrimeSuratorSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeTwitchScarf",
- "/Lotus/Upgrades/Skins/Scarves/PrimeWispSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrimeWukongSyandana",
- "/Lotus/Upgrades/Skins/Scarves/PrismaRazorScarf",
- "/Lotus/Upgrades/Skins/Scarves/QuillCanistersSyandana",
- "/Lotus/Upgrades/Skins/Scarves/QuillCape",
- "/Lotus/Upgrades/Skins/Scarves/RazorScarf",
- "/Lotus/Upgrades/Skins/Scarves/RhinoDeluxeScarf",
- "/Lotus/Upgrades/Skins/Scarves/RubedoDinoSpikeScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWAkSuraScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWAlocanaSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWAlyaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWArcturusScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWArmalystSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWAropanexSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWBodoScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWBoltaraScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWChemtankSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWCoronaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWCovenantScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWCryonaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWDeruScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWDespotScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWDiablilloSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWDisconnectScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWDominusCape",
- "/Lotus/Upgrades/Skins/Scarves/SWDraugenSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWDueVolpiScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWEklisSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWEzrielSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWFeiSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWIcariusScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWIncubusScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWJotunheimMusic",
- "/Lotus/Upgrades/Skins/Scarves/SWJotunheimScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWKunshuScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWLaprosysSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWMaharliqaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWMithraScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWMushussuScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWNaruScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWNighthunterSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWOfficiumScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWPaxisScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWPistrisScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRSixSariScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRSixSpitefireScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRThreeAquirosScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRThreeJattukScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRThreeNsaruScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRaijiScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRanulystSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWRepalaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWRetrorolystSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWSarvaHarnessScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWScapulisScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSciathinScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWScyllaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSenvictisSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWSeraphimScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSetharSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWSetkaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWShirokuSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWShurihoshiScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSildargScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSolidaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWSovereignScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWStyxSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWSydekoScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWTenuiSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWTeploScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWTonacaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWTsujinasaSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SWValestiScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWZaikhyaScarf",
- "/Lotus/Upgrades/Skins/Scarves/SWZamariuSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SamiaTownsunSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SapientCape",
- "/Lotus/Upgrades/Skins/Scarves/SentSyandanaB",
- "/Lotus/Upgrades/Skins/Scarves/ShieldFrameCape",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeBaroCape",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeCenturionCape",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeGrnBannerScarf",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeGrnHoodedCape",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeNelumboCape",
- "/Lotus/Upgrades/Skins/Scarves/SolsticeU17TnoCapeScarf",
- "/Lotus/Upgrades/Skins/Scarves/StalkerCapeItem",
- "/Lotus/Upgrades/Skins/Scarves/StyanaxDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/SummerSolsticeCenturionCape",
- "/Lotus/Upgrades/Skins/Scarves/SummerSolsticeMaggorCape",
- "/Lotus/Upgrades/Skins/Scarves/SyndicateAHScarf",
- "/Lotus/Upgrades/Skins/Scarves/SyndicateCSScarf",
- "/Lotus/Upgrades/Skins/Scarves/SyndicateNLScarf",
- "/Lotus/Upgrades/Skins/Scarves/SyndicatePSScarf",
- "/Lotus/Upgrades/Skins/Scarves/SyndicateRVScarf",
- "/Lotus/Upgrades/Skins/Scarves/SyndicateSMScarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoAngleCapeScarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoCon2017Scarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoCon2020Scarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoCon2023Cape",
- "/Lotus/Upgrades/Skins/Scarves/TennoCon2024Scarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoConScarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoFeathersCapeScarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoLeafDotCapeScarf",
- "/Lotus/Upgrades/Skins/Scarves/TennoWolfBackpack",
- "/Lotus/Upgrades/Skins/Scarves/TitaniaDeluxeV2Cape",
- "/Lotus/Upgrades/Skins/Scarves/TitaniaPrimeShortSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TitaniaPrimeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnAlchemistSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnAshDeluxe2Syandana",
- "/Lotus/Upgrades/Skins/Scarves/TnBrokenFrameSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnCharityRibbonSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnConcreteSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnGlassSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnGuandaoScarf",
- "/Lotus/Upgrades/Skins/Scarves/TnGyreCape",
- "/Lotus/Upgrades/Skins/Scarves/TnKorahSyandanaDeluxe",
- "/Lotus/Upgrades/Skins/Scarves/TnLargeCape",
- "/Lotus/Upgrades/Skins/Scarves/TnLargeCapeTwitch",
- "/Lotus/Upgrades/Skins/Scarves/TnLargeCapeXbox",
- "/Lotus/Upgrades/Skins/Scarves/TnLefaucheuxSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnNewPlayerSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnOctaviaDeluxeCape",
- "/Lotus/Upgrades/Skins/Scarves/TnOdaliskSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnOniSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnPagemasterSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnPyraV2Syandana",
- "/Lotus/Upgrades/Skins/Scarves/TnRailjackSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnSmallBatteryCape",
- "/Lotus/Upgrades/Skins/Scarves/TnSparrowCape",
- "/Lotus/Upgrades/Skins/Scarves/TnStyanaxSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnSundialCape",
- "/Lotus/Upgrades/Skins/Scarves/TnVoltDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnWispDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TnWraitheSyandana",
- "/Lotus/Upgrades/Skins/Scarves/TurtleNeckScarf",
- "/Lotus/Upgrades/Skins/Scarves/Twitch2021Syandana",
- "/Lotus/Upgrades/Skins/Scarves/TwitchPrimeScarf",
- "/Lotus/Upgrades/Skins/Scarves/UmbraDaxSyandana",
- "/Lotus/Upgrades/Skins/Scarves/UruPrimeScarf",
- "/Lotus/Upgrades/Skins/Scarves/VTDinoSpikeScarf",
- "/Lotus/Upgrades/Skins/Scarves/VTHornSkullScarf",
- "/Lotus/Upgrades/Skins/Scarves/WraithTurbinesScarf",
- "/Lotus/Upgrades/Skins/Scarves/WukongDeluxeSyandana",
- "/Lotus/Upgrades/Skins/Scarves/YamakoPrimeScarf",
- "/Lotus/Upgrades/Skins/Scarves/YareliCape",
- "/Lotus/Upgrades/Skins/Sentient/CalibanAltHelmet",
- "/Lotus/Upgrades/Skins/Sentient/SWCalibanScionHelmet",
- "/Lotus/Upgrades/Skins/Sentient/SentientAgileAnims",
- "/Lotus/Upgrades/Skins/Sentient/SentientHelmet",
- "/Lotus/Upgrades/Skins/Sentient/SentientNobleAnims",
- "/Lotus/Upgrades/Skins/Sentient/SentientSkin",
- "/Lotus/Upgrades/Skins/Sentient/UnlockSentientAgile",
- "/Lotus/Upgrades/Skins/Sentient/UnlockSentientNoble",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/BaroPetMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/DethcubePrimeMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/GardenerMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/GaussSentinelMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/GunHeadMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/HeimtPrimeSentinelMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/HeliosDeluxeMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/HunhowMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/IctusMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/IctusPrimeMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/InfBatMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/InfNightWaveMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/InfestedMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/KavatPetMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/KubrowMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/LNYDragonMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/LotusMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/MechHeadMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/OrokinMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/ParrotMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/PrimeSentinelMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/PrismaMechHeadMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/ThanoTechMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/TnEmpyreanSocketMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/TnHydroidDlxSentMask",
- "/Lotus/Upgrades/Skins/Sentinels/Masks/TwitchSentHeadMask",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultCarrierPrimeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultCarrierSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultDethcubePrimeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultDethcubeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultDirigaSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultDjinnSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultHeliosPrimeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultHeliosSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultOxylusSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultShadePrismaSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultShadeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultTaxonSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultWyrmPrimeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/Defaults/DefaultWyrmSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/DesertTaxonSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/GaussSentinelSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/HeliosDeluxe",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/LNYDragonSentinelSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/LibrarianHelios",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/OwlSentinelSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/ThanotechSentinelSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Skins/TnHydroidDlxSentSkin",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/BaroPetTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/CapsuleTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/ColtekTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/DethcubePrimeTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/FishTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/GardenerTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/GaussSentinelTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/HeimtPrimeSentinelTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/HeliosDeluxeTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/IctusPrimeTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/IctusTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/InfBatTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/InfNightWaveTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/InfestedTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/KavatPetTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/LNYDragonTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/OrokinTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/ParrotTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/PrimeSentinelTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/PrismaFishTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/ThanoTechTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/TnEmpyreanSocketTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/TnHydroidDlxSentTail",
- "/Lotus/Upgrades/Skins/Sentinels/Tails/TwitchSentTail",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/BaroPetWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/ColtekWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/ColtekWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DethcubePrimeWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DethcubePrimeWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DiamondWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DiamondWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DomeWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/DomeWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/GardenerWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/GardenerWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/GardenerWingsStatic",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/GardenerWingsStaticRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/GaussSentinelWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/HeimtPrimeSentinelWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/HeliosDeluxeWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/IctusPrimeWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/IctusPrimeWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/IctusWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/IctusWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/InfBatWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/InfNightWaveWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/InfNightWaveWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/InfestedWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/InfestedWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/JetWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/JetWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/KavatPetWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/KavatPetWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/LNYDragonWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/OrokinWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/OrokinWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/ParrotWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/ParrotWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/PrimeSentinelWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/PrimeSentinelWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/PrismaJetWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/PrismaJetWingsRight",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/ThanoTechWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/TnEmpyreanSocketWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/TnHydroidDlxSentWings",
- "/Lotus/Upgrades/Skins/Sentinels/Wings/TwitchSentWings",
- "/Lotus/Upgrades/Skins/Sentinels/CarbuncleDethcubeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/GardenerDethcubeSkin",
- "/Lotus/Upgrades/Skins/Sentinels/NightwatchDirigaSkin",
- "/Lotus/Upgrades/Skins/Sentinels/ParrotCarrierSkin",
- "/Lotus/Upgrades/Skins/Sentinels/PersianDjinnSkin",
- "/Lotus/Upgrades/Skins/Sentinels/SpriteShadeSkin",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/CaviaRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/CaviaRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/CaviaRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/CaviaRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/CaviaRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/EntratiRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/EntratiRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/EntratiRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/EntratiRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/EntratiRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/HoldfastsRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/HoldfastsRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/HoldfastsRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/HoldfastsRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/HoldfastsRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/NecraloidRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/NecraloidRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/NecraloidRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/OstronRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/OstronRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/OstronRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/OstronRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/OstronRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/QuillsRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/QuillsRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/QuillsRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/QuillsRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/QuillsRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/SolarisRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/SolarisRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/SolarisRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/SolarisRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/SolarisRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VentkidsRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VentkidsRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VentkidsRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VentkidsRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VentkidsRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VoxRankFive",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VoxRankFour",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VoxRankOne",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VoxRankThree",
- "/Lotus/Upgrades/Skins/Sigils/Syndicate/VoxRankTwo",
- "/Lotus/Upgrades/Skins/Sigils/AllianceSigilBasic",
- "/Lotus/Upgrades/Skins/Sigils/ArchwingSigil",
- "/Lotus/Upgrades/Skins/Sigils/BansheeDeluxeSigil",
- "/Lotus/Upgrades/Skins/Sigils/BaroKavatSigil",
- "/Lotus/Upgrades/Skins/Sigils/BaroKubrowSigil",
- "/Lotus/Upgrades/Skins/Sigils/BladeAndGunSigil",
- "/Lotus/Upgrades/Skins/Sigils/BloodiedSigil",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilAladV",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilAmbulas",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilCaptainVor",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilHyenaPack",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilJackal",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilKelaDeThaym",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilLechKril",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilLephantis",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilLynx",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilNefAnyo",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilPhorid",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilRaptor",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilSargusRuk",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilTeralystBig",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilTeralystRain",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilTylRegor",
- "/Lotus/Upgrades/Skins/Sigils/BossSigilVayHek",
- "/Lotus/Upgrades/Skins/Sigils/CNYRoosterCYSigil",
- "/Lotus/Upgrades/Skins/Sigils/CNYRoosterPWSigil",
- "/Lotus/Upgrades/Skins/Sigils/ClanSigilBasic",
- "/Lotus/Upgrades/Skins/Sigils/ClanSigilBasicAdd",
- "/Lotus/Upgrades/Skins/Sigils/ClanSigilMaskedEffect",
- "/Lotus/Upgrades/Skins/Sigils/ClanSigilTwoTone",
- "/Lotus/Upgrades/Skins/Sigils/CollectorSigil",
- "/Lotus/Upgrades/Skins/Sigils/Community10YearAnniversarySigil",
- "/Lotus/Upgrades/Skins/Sigils/ConclaveTacAlertSigilA",
- "/Lotus/Upgrades/Skins/Sigils/ConqueraSigil",
- "/Lotus/Upgrades/Skins/Sigils/CorpusLichSigil",
- "/Lotus/Upgrades/Skins/Sigils/DanteSigil",
- "/Lotus/Upgrades/Skins/Sigils/DawnsEarlyLightSigil",
- "/Lotus/Upgrades/Skins/Sigils/DeathMarkSigilGrustrag",
- "/Lotus/Upgrades/Skins/Sigils/DeathMarkSigilStalker",
- "/Lotus/Upgrades/Skins/Sigils/DeathMarkSigilZanuka",
- "/Lotus/Upgrades/Skins/Sigils/DogDays2023ASigil",
- "/Lotus/Upgrades/Skins/Sigils/DogDays2023BSigil",
- "/Lotus/Upgrades/Skins/Sigils/DogDays2023CSigil",
- "/Lotus/Upgrades/Skins/Sigils/DogDaysSigil",
- "/Lotus/Upgrades/Skins/Sigils/DotD2016Sigil",
- "/Lotus/Upgrades/Skins/Sigils/DuvDragonSigil",
- "/Lotus/Upgrades/Skins/Sigils/EnergySigilA",
- "/Lotus/Upgrades/Skins/Sigils/EnergySigilB",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilAmalgam",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilAmbulas",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilCaviaBirdThree",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilCaviaFibonacci",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilCaviaTagfer",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilFalseProfit",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilIndex",
- "/Lotus/Upgrades/Skins/Sigils/EventSigilScarletSpear",
- "/Lotus/Upgrades/Skins/Sigils/FireSigil",
- "/Lotus/Upgrades/Skins/Sigils/FormaSigil",
- "/Lotus/Upgrades/Skins/Sigils/FortunaSigil",
- "/Lotus/Upgrades/Skins/Sigils/FounderSigilDisciple",
- "/Lotus/Upgrades/Skins/Sigils/FounderSigilGrandMaster",
- "/Lotus/Upgrades/Skins/Sigils/FounderSigilHunter",
- "/Lotus/Upgrades/Skins/Sigils/FounderSigilMaster",
- "/Lotus/Upgrades/Skins/Sigils/GeodeSigil",
- "/Lotus/Upgrades/Skins/Sigils/GlassmakerSigil",
- "/Lotus/Upgrades/Skins/Sigils/Halloween2020Sigil",
- "/Lotus/Upgrades/Skins/Sigils/HeirloomSigil",
- "/Lotus/Upgrades/Skins/Sigils/HolidaySigilSnowflake",
- "/Lotus/Upgrades/Skins/Sigils/HolidaySigilXmas2014A",
- "/Lotus/Upgrades/Skins/Sigils/HolidaySigilXmas2014B",
- "/Lotus/Upgrades/Skins/Sigils/HolidaySigilXmas2014C",
- "/Lotus/Upgrades/Skins/Sigils/HolidaySigilXmas2014D",
- "/Lotus/Upgrades/Skins/Sigils/HoundingKubrowSigil",
- "/Lotus/Upgrades/Skins/Sigils/InktoberSigil",
- "/Lotus/Upgrades/Skins/Sigils/KahlSupporterPackSigil",
- "/Lotus/Upgrades/Skins/Sigils/KelaEventSigil",
- "/Lotus/Upgrades/Skins/Sigils/KuvaLichSigil",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilA",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilB",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilC",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilD",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilE",
- "/Lotus/Upgrades/Skins/Sigils/LoginSigilF",
- "/Lotus/Upgrades/Skins/Sigils/LotusGuideSigil",
- "/Lotus/Upgrades/Skins/Sigils/LotusHeartSigil",
- "/Lotus/Upgrades/Skins/Sigils/MasterySigil",
- "/Lotus/Upgrades/Skins/Sigils/MasteryStoneSigil",
- "/Lotus/Upgrades/Skins/Sigils/MechEventSigil",
- "/Lotus/Upgrades/Skins/Sigils/MonquisCYSigil",
- "/Lotus/Upgrades/Skins/Sigils/MonquisSigil",
- "/Lotus/Upgrades/Skins/Sigils/NarmerEyeSigil",
- "/Lotus/Upgrades/Skins/Sigils/NecramechSigilSnake",
- "/Lotus/Upgrades/Skins/Sigils/NewWar2021Sigil",
- "/Lotus/Upgrades/Skins/Sigils/NoraSeasonTwoSigil",
- "/Lotus/Upgrades/Skins/Sigils/ObsidianIndraSigil",
- "/Lotus/Upgrades/Skins/Sigils/OpticorConclaveVariantSigil",
- "/Lotus/Upgrades/Skins/Sigils/OrbSigil",
- "/Lotus/Upgrades/Skins/Sigils/OstronCommunitySigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4CrowSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4FiveYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4FourYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4OneYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4RenownXSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4ThreeYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/PS4TwoYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/PrimeAccessSigilFive",
- "/Lotus/Upgrades/Skins/Sigils/PrimeAccessSigilLimbo",
- "/Lotus/Upgrades/Skins/Sigils/PrimeAccessSigilSaryn",
- "/Lotus/Upgrades/Skins/Sigils/PrimeTraderSigil",
- "/Lotus/Upgrades/Skins/Sigils/PrismaLotusFlamesSigil",
- "/Lotus/Upgrades/Skins/Sigils/PrismaLotusSigil",
- "/Lotus/Upgrades/Skins/Sigils/PrismaLotusVinesSigil",
- "/Lotus/Upgrades/Skins/Sigils/ProjectSinisterSigil",
- "/Lotus/Upgrades/Skins/Sigils/QTCC2023ConqueraSigil",
- "/Lotus/Upgrades/Skins/Sigils/RadioLegionSigil",
- "/Lotus/Upgrades/Skins/Sigils/RhinoDeluxeSigil",
- "/Lotus/Upgrades/Skins/Sigils/ScarSigil",
- "/Lotus/Upgrades/Skins/Sigils/SigilSnake",
- "/Lotus/Upgrades/Skins/Sigils/SigilTankAncient",
- "/Lotus/Upgrades/Skins/Sigils/SigilVideoContest",
- "/Lotus/Upgrades/Skins/Sigils/SomberStalkerSigil",
- "/Lotus/Upgrades/Skins/Sigils/SparkSigil",
- "/Lotus/Upgrades/Skins/Sigils/StarterPackASigil",
- "/Lotus/Upgrades/Skins/Sigils/StarterPackLotusSigil",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilArbitersOfHexisK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilCephalonSudaK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveL",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveM",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveN",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveO",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveP",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilConclaveQ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilNewLokaK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilPerrinSequenceK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilRedVeilK",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianA",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianB",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianC",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianD",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianE",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianF",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianG",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianH",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianI",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianJ",
- "/Lotus/Upgrades/Skins/Sigils/SyndicateSigilSteelMeridianK",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2016Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2017Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2018Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2019Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2020Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2021Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2022Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2023Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoCon2024Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoGenSigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoLive2015Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoLivePromoSigil",
- "/Lotus/Upgrades/Skins/Sigils/TennoVIP2024Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TeralystSigil",
- "/Lotus/Upgrades/Skins/Sigils/ThraxSigil",
- "/Lotus/Upgrades/Skins/Sigils/TranslatorSigil",
- "/Lotus/Upgrades/Skins/Sigils/TwitchNecraloidSigil",
- "/Lotus/Upgrades/Skins/Sigils/TwitchPrimeSigil",
- "/Lotus/Upgrades/Skins/Sigils/TwitchProminenceSigil",
- "/Lotus/Upgrades/Skins/Sigils/TwitchPromo2021Sigil",
- "/Lotus/Upgrades/Skins/Sigils/TwoToneSigil",
- "/Lotus/Upgrades/Skins/Sigils/VorDuviriSigil",
- "/Lotus/Upgrades/Skins/Sigils/WeGameNewYearDragonSigil",
- "/Lotus/Upgrades/Skins/Sigils/WeGameNewYearFreeTigerSigil",
- "/Lotus/Upgrades/Skins/Sigils/WeGameNewYearOxSigil",
- "/Lotus/Upgrades/Skins/Sigils/WeGameNewYearRabbitSigil",
- "/Lotus/Upgrades/Skins/Sigils/WeGameNewYearTigerSigil",
- "/Lotus/Upgrades/Skins/Sigils/WikiaSigil",
- "/Lotus/Upgrades/Skins/Sigils/Winter2016Sigil",
- "/Lotus/Upgrades/Skins/Sigils/WolfSigil",
- "/Lotus/Upgrades/Skins/Sigils/XBoneFourYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/XBoneJadeSigil",
- "/Lotus/Upgrades/Skins/Sigils/XBoneOneYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/XBoneThreeYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/XBoneTwoYearSigil",
- "/Lotus/Upgrades/Skins/Sigils/XboneJadeTwoSigil",
- "/Lotus/Upgrades/Skins/Sigils/YareliSigil",
- "/Lotus/Upgrades/Skins/Sigils/ZarimanSupporterPackSigil",
- "/Lotus/Upgrades/Skins/SolarisUnited/SUVentkidsBoomerang",
- "/Lotus/Upgrades/Skins/Sony/ExcaliburPSPlusSkin",
- "/Lotus/Upgrades/Skins/Sony/ExcaliburPSPlusSkinHelmet",
- "/Lotus/Upgrades/Skins/Sony/ObsidianAkmagnus",
- "/Lotus/Upgrades/Skins/Sony/ObsidianAttica",
- "/Lotus/Upgrades/Skins/Sony/ObsidianBoltor",
- "/Lotus/Upgrades/Skins/Sony/ObsidianColtekMask",
- "/Lotus/Upgrades/Skins/Sony/ObsidianCorinth",
- "/Lotus/Upgrades/Skins/Sony/ObsidianDexFuris",
- "/Lotus/Upgrades/Skins/Sony/ObsidianGalatine",
- "/Lotus/Upgrades/Skins/Sony/ObsidianGlaive",
- "/Lotus/Upgrades/Skins/Sony/ObsidianGorgon",
- "/Lotus/Upgrades/Skins/Sony/ObsidianGrattler",
- "/Lotus/Upgrades/Skins/Sony/ObsidianHek",
- "/Lotus/Upgrades/Skins/Sony/ObsidianHelios",
- "/Lotus/Upgrades/Skins/Sony/ObsidianMagnus",
- "/Lotus/Upgrades/Skins/Sony/ObsidianNikana",
- "/Lotus/Upgrades/Skins/Sony/ObsidianPennant",
- "/Lotus/Upgrades/Skins/Sony/ObsidianQuanta",
- "/Lotus/Upgrades/Skins/Sony/ObsidianScoliac",
- "/Lotus/Upgrades/Skins/Sony/ObsidianSerro",
- "/Lotus/Upgrades/Skins/Sony/ObsidianSilvaAndAegis",
- "/Lotus/Upgrades/Skins/Sony/ObsidianSonicor",
- "/Lotus/Upgrades/Skins/Sony/ObsidianSpira",
- "/Lotus/Upgrades/Skins/Sony/ObsidianStandardArchwingSkin",
- "/Lotus/Upgrades/Skins/Sony/ObsidianTwinVipers",
- "/Lotus/Upgrades/Skins/Sony/ObsidianViper",
- "/Lotus/Upgrades/Skins/Sony/ObsidianWyrm",
- "/Lotus/Upgrades/Skins/Sony/PS4Braton",
- "/Lotus/Upgrades/Skins/Sony/PS4Lato",
- "/Lotus/Upgrades/Skins/Sony/PS4Mk1Braton",
- "/Lotus/Upgrades/Skins/Sony/PS4Skana",
- "/Lotus/Upgrades/Skins/Sony/PS5OkinaSkin",
- "/Lotus/Upgrades/Skins/Sony/PS5TiberonSkin",
- "/Lotus/Upgrades/Skins/Starry/StarryAklato",
- "/Lotus/Upgrades/Skins/Starry/StarryBraton",
- "/Lotus/Upgrades/Skins/Starry/StarryKunai",
- "/Lotus/Upgrades/Skins/Starry/StarryLato",
- "/Lotus/Upgrades/Skins/Starry/StarryParis",
- "/Lotus/Upgrades/Skins/Starry/StarrySkana",
- "/Lotus/Upgrades/Skins/Starry/StarryStaff",
- "/Lotus/Upgrades/Skins/SteamEsteem/EsteemExcalibur",
- "/Lotus/Upgrades/Skins/SteamEsteem/EsteemExcaliburHelmet",
- "/Lotus/Upgrades/Skins/SteamEsteem/EsteemLex",
- "/Lotus/Upgrades/Skins/SteamEsteem/EsteemOrthos",
- "/Lotus/Upgrades/Skins/SteamEsteem/EsteemTigris",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Dagger/SWCrubbakDaggerSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWArashiGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWDogmaHeavyBladeSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWIonGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWKarvrGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWKilzorathGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWMagestyGalatineSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWMithraGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWMizarGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWSupremaGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/GreatSwords/SWTengokenGreatswordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Hammer/SWAxonnakHammerSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWKhatuunKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWKrtrimaKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWMinosKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWMithraKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWShinigamiKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Katana/SWUndercutterKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Machetes/SWKutherMachete",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Machetes/SWUdjyatMachete",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/JatKittagNoxiousHammerSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/OrthosMagestySkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWAphriaPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWDivaPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWIonPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWJatKittagOgunSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWJotunheimPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWKalynexPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWLahnssPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWLympharisPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Polearms/SWPhorcysPolearmSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Rapier/SWArashiRapierSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Rapier/SWFeritaRapierSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Rapier/SWNiDuhlRapierSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Staff/SWEklypsaStaffSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/DualSkanaInfestedSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/GalatineClaymireSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWAritSkanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWDeroSwordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWEisenSwordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWInsidiaSwordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWIonSwordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SWTengushenSwordSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Swords/SkanaInfestedSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Tonfa/SWBaGethTonfaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Tonfa/SWHadesTonfaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Tonfa/SWRThreeKronenAritSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Tonfa/SWYamexTonfaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/TwoHandKatana/SWArashiTwoHandedKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/TwoHandKatana/SWDogma",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/TwoHandKatana/SWKsaraTwoHandedKatanaSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Melee/Whip/SWWuushWhipSkin",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWGarasuEyeAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWIncognitoEyeAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWLumisEarAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWZenoriuEarAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWZenoriuEyeAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Operator/Accessories/SWZenoriuFacialAccessory",
- "/Lotus/Upgrades/Skins/SteamWorkshop/Primary/Opticor/SWMithraOpticorSkin",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerIgnisSkin",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeGorgon",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeGrakata",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeKesheg",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeQuartakk",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeStubba",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeTwinGrakatas",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeTwinRogga",
- "/Lotus/Upgrades/Skins/SummerSolstice/SummerSolsticeZarr",
- "/Lotus/Upgrades/Skins/Tengu/SWRFourZephyrMigisiHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWRThreeHagoromoHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWRThreeHagoromoSkin",
- "/Lotus/Upgrades/Skins/Tengu/SWRThreeMonsoonHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWRThreeSkeironHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWRThreeSkeironSkin",
- "/Lotus/Upgrades/Skins/Tengu/SWStrafeHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWStrafeSkin",
- "/Lotus/Upgrades/Skins/Tengu/SWZephyrBotLHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWZephyrBotLSkin",
- "/Lotus/Upgrades/Skins/Tengu/SWZephyrGraxxHelmet",
- "/Lotus/Upgrades/Skins/Tengu/SWZephyrGraxxSkin",
- "/Lotus/Upgrades/Skins/Tengu/TenguAgileAnims",
- "/Lotus/Upgrades/Skins/Tengu/TenguAltBHelmet",
- "/Lotus/Upgrades/Skins/Tengu/TenguAltHelmet",
- "/Lotus/Upgrades/Skins/Tengu/TenguDeluxeAgileAnims",
- "/Lotus/Upgrades/Skins/Tengu/TenguDeluxeNobleAnims",
- "/Lotus/Upgrades/Skins/Tengu/TenguHelmet",
- "/Lotus/Upgrades/Skins/Tengu/TenguNobleAnims",
- "/Lotus/Upgrades/Skins/Tengu/TenguSkin",
- "/Lotus/Upgrades/Skins/Tengu/UnlockTenguAgile",
- "/Lotus/Upgrades/Skins/Tengu/UnlockTenguDeluxeAgile",
- "/Lotus/Upgrades/Skins/Tengu/UnlockTenguDeluxeNoble",
- "/Lotus/Upgrades/Skins/Tengu/UnlockTenguNoble",
- "/Lotus/Upgrades/Skins/Tengu/ZephyrAlternateSkin",
- "/Lotus/Upgrades/Skins/Tengu/ZephyrDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Tengu/ZephyrDeluxeSkin",
- "/Lotus/Upgrades/Skins/Tengu/ZephyrPrimeAlternateSkin",
- "/Lotus/Upgrades/Skins/Tengu/ZephyrPrimeHelmet",
- "/Lotus/Upgrades/Skins/Tennocon2020Skins/DeimosSupporterPistolSkin",
- "/Lotus/Upgrades/Skins/Tennocon2020Skins/DeimosSupporterShotgunSkin",
- "/Lotus/Upgrades/Skins/Tennocon2020Skins/DeimosSupporterWhipSkin",
- "/Lotus/Upgrades/Skins/Tennogen/SWEzrielSwordSkin",
- "/Lotus/Upgrades/Skins/Tennogen/SWROneSyandanaItem",
- "/Lotus/Upgrades/Skins/Tennogen/SWROneSybaris",
- "/Lotus/Upgrades/Skins/TextureOverrides/Bronze",
- "/Lotus/Upgrades/Skins/TextureOverrides/Canvas",
- "/Lotus/Upgrades/Skins/TextureOverrides/CarPaint",
- "/Lotus/Upgrades/Skins/TextureOverrides/CarbonFiber",
- "/Lotus/Upgrades/Skins/TextureOverrides/CeramicBreak",
- "/Lotus/Upgrades/Skins/TextureOverrides/Circuits",
- "/Lotus/Upgrades/Skins/TextureOverrides/CloudyStone",
- "/Lotus/Upgrades/Skins/TextureOverrides/CremaMarble",
- "/Lotus/Upgrades/Skins/TextureOverrides/DamasSteel",
- "/Lotus/Upgrades/Skins/TextureOverrides/Droplets",
- "/Lotus/Upgrades/Skins/TextureOverrides/DuviriPattern",
- "/Lotus/Upgrades/Skins/TextureOverrides/Echo",
- "/Lotus/Upgrades/Skins/TextureOverrides/FrogSkin",
- "/Lotus/Upgrades/Skins/TextureOverrides/Frost",
- "/Lotus/Upgrades/Skins/TextureOverrides/Galvanized",
- "/Lotus/Upgrades/Skins/TextureOverrides/Glass",
- "/Lotus/Upgrades/Skins/TextureOverrides/GlossyPlastic",
- "/Lotus/Upgrades/Skins/TextureOverrides/GoldfishScale",
- "/Lotus/Upgrades/Skins/TextureOverrides/GrossFlesh",
- "/Lotus/Upgrades/Skins/TextureOverrides/IncompletePaintjob",
- "/Lotus/Upgrades/Skins/TextureOverrides/Intestine",
- "/Lotus/Upgrades/Skins/TextureOverrides/Ivory",
- "/Lotus/Upgrades/Skins/TextureOverrides/JasperStone",
- "/Lotus/Upgrades/Skins/TextureOverrides/LayeredStone",
- "/Lotus/Upgrades/Skins/TextureOverrides/LeatherPackMap",
- "/Lotus/Upgrades/Skins/TextureOverrides/LotusJacquard",
- "/Lotus/Upgrades/Skins/TextureOverrides/Madurai",
- "/Lotus/Upgrades/Skins/TextureOverrides/MarbleAlloy",
- "/Lotus/Upgrades/Skins/TextureOverrides/MarbleShell",
- "/Lotus/Upgrades/Skins/TextureOverrides/MattePaint",
- "/Lotus/Upgrades/Skins/TextureOverrides/MetalPolish",
- "/Lotus/Upgrades/Skins/TextureOverrides/Mirage",
- "/Lotus/Upgrades/Skins/TextureOverrides/Naramon",
- "/Lotus/Upgrades/Skins/TextureOverrides/PaintedMetal",
- "/Lotus/Upgrades/Skins/TextureOverrides/PatternWrapped",
- "/Lotus/Upgrades/Skins/TextureOverrides/PearlescentPlastic",
- "/Lotus/Upgrades/Skins/TextureOverrides/PerformanceFabric",
- "/Lotus/Upgrades/Skins/TextureOverrides/PlasticMembrane",
- "/Lotus/Upgrades/Skins/TextureOverrides/PorcelainCracked",
- "/Lotus/Upgrades/Skins/TextureOverrides/RoughMetal",
- "/Lotus/Upgrades/Skins/TextureOverrides/Rubber",
- "/Lotus/Upgrades/Skins/TextureOverrides/RubberWoven",
- "/Lotus/Upgrades/Skins/TextureOverrides/ScalesUniform",
- "/Lotus/Upgrades/Skins/TextureOverrides/Shark",
- "/Lotus/Upgrades/Skins/TextureOverrides/ShingledMetal",
- "/Lotus/Upgrades/Skins/TextureOverrides/SilkFabric",
- "/Lotus/Upgrades/Skins/TextureOverrides/SoftDots",
- "/Lotus/Upgrades/Skins/TextureOverrides/StackedWedge",
- "/Lotus/Upgrades/Skins/TextureOverrides/Stitched",
- "/Lotus/Upgrades/Skins/TextureOverrides/TechMetalDots",
- "/Lotus/Upgrades/Skins/TextureOverrides/Trypophobia",
- "/Lotus/Upgrades/Skins/TextureOverrides/Unairu",
- "/Lotus/Upgrades/Skins/TextureOverrides/Vazarin",
- "/Lotus/Upgrades/Skins/TextureOverrides/WoodBurned",
- "/Lotus/Upgrades/Skins/TextureOverrides/Zenurik",
- "/Lotus/Upgrades/Skins/TnHeavyShotgun/NintendoTnHeavyShotgunSkin",
- "/Lotus/Upgrades/Skins/Trapper/SWBonaparteHelmet",
- "/Lotus/Upgrades/Skins/Trapper/SWBonaparteSkin",
- "/Lotus/Upgrades/Skins/Trapper/SWGraxxVaubanHelmet",
- "/Lotus/Upgrades/Skins/Trapper/SWGraxxVaubanSkin",
- "/Lotus/Upgrades/Skins/Trapper/SWRFourVaubanChapelonHelmet",
- "/Lotus/Upgrades/Skins/Trapper/SWSuppressorHelmet",
- "/Lotus/Upgrades/Skins/Trapper/SWSuppressorSkin",
- "/Lotus/Upgrades/Skins/Trapper/TrapperAgileAnims",
- "/Lotus/Upgrades/Skins/Trapper/TrapperDefaultHelmet",
- "/Lotus/Upgrades/Skins/Trapper/TrapperHelmetAlt",
- "/Lotus/Upgrades/Skins/Trapper/TrapperHelmetAltB",
- "/Lotus/Upgrades/Skins/Trapper/TrapperHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Trapper/TrapperHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Trapper/TrapperHelmetSoldier",
- "/Lotus/Upgrades/Skins/Trapper/TrapperNobleAnims",
- "/Lotus/Upgrades/Skins/Trapper/TrapperPrimeSkin",
- "/Lotus/Upgrades/Skins/Trapper/TrapperSkin",
- "/Lotus/Upgrades/Skins/Trapper/UnlockTrapperAgile",
- "/Lotus/Upgrades/Skins/Trapper/UnlockTrapperNoble",
- "/Lotus/Upgrades/Skins/Trapper/VaubanAlternateSkin",
- "/Lotus/Upgrades/Skins/Trapper/VaubanDeluxeAxe",
- "/Lotus/Upgrades/Skins/Trapper/VaubanDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Trapper/VaubanDeluxeSkin",
- "/Lotus/Upgrades/Skins/Trapper/VaubanPrimeHelmet",
- "/Lotus/Upgrades/Skins/Trapper/VaubanVoidSkin",
- "/Lotus/Upgrades/Skins/Trapper/VaubanVoidSkinHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWAncyraHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWKnightessHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWKnightessSkin",
- "/Lotus/Upgrades/Skins/Trinity/SWNightingaleHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWNightingaleSkin",
- "/Lotus/Upgrades/Skins/Trinity/SWRFiveTrinityMessiahHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWTrinityBotLHelmet",
- "/Lotus/Upgrades/Skins/Trinity/SWTrinityBotLSkin",
- "/Lotus/Upgrades/Skins/Trinity/TrinityAgileAnims",
- "/Lotus/Upgrades/Skins/Trinity/TrinityAlternateSkin",
- "/Lotus/Upgrades/Skins/Trinity/TrinityDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Trinity/TrinityDeluxeSuit",
- "/Lotus/Upgrades/Skins/Trinity/TrinityHelmet",
- "/Lotus/Upgrades/Skins/Trinity/TrinityHelmetAlt",
- "/Lotus/Upgrades/Skins/Trinity/TrinityHelmetAltB",
- "/Lotus/Upgrades/Skins/Trinity/TrinityHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Trinity/TrinityHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Trinity/TrinityNobleAnims",
- "/Lotus/Upgrades/Skins/Trinity/TrinityPrimeHelmet",
- "/Lotus/Upgrades/Skins/Trinity/TrinityPrimeSkin",
- "/Lotus/Upgrades/Skins/Trinity/TrinitySkin",
- "/Lotus/Upgrades/Skins/Trinity/UnlockTrinityAgile",
- "/Lotus/Upgrades/Skins/Trinity/UnlockTrinityNoble",
- "/Lotus/Upgrades/Skins/Umbra/UmbraAltHelmet",
- "/Lotus/Upgrades/Skins/Umbra/UmbraDaxGlaive",
- "/Lotus/Upgrades/Skins/Umbra/UmbraSkin",
- "/Lotus/Upgrades/Skins/ValentinesDay/ValentinesArrow",
- "/Lotus/Upgrades/Skins/Voices/AdultOperatorVoiceAItem",
- "/Lotus/Upgrades/Skins/Voices/AdultOperatorVoiceBItem",
- "/Lotus/Upgrades/Skins/Voices/AdultOperatorVoiceCItem",
- "/Lotus/Upgrades/Skins/Voices/AdultOperatorVoiceDItem",
- "/Lotus/Upgrades/Skins/Voices/OperatorVoiceAItem",
- "/Lotus/Upgrades/Skins/Voices/OperatorVoiceBItem",
- "/Lotus/Upgrades/Skins/Voices/OperatorVoiceCItem",
- "/Lotus/Upgrades/Skins/Voices/OperatorVoiceDItem",
- "/Lotus/Upgrades/Skins/VoidTrader/AshLeverianLiosPistol",
- "/Lotus/Upgrades/Skins/VoidTrader/BaroArrow",
- "/Lotus/Upgrades/Skins/VoidTrader/BaroInarosPolearmSkin",
- "/Lotus/Upgrades/Skins/VoidTrader/BaroScytheMacheteSkin",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisBallasSword",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisLatronPistol",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisNikana",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisOdonataSkin",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisOpticor",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisSonicor",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisTiberon",
- "/Lotus/Upgrades/Skins/VoidTrader/ElixisTigris",
- "/Lotus/Upgrades/Skins/VoidTrader/PrismaArrow",
- "/Lotus/Upgrades/Skins/VoidTrader/VTBoar",
- "/Lotus/Upgrades/Skins/VoidTrader/VTExcaliburAvalonHelmet",
- "/Lotus/Upgrades/Skins/VoidTrader/VTExcaliburHelmet",
- "/Lotus/Upgrades/Skins/VoidTrader/VTExcaliburPendragonHelmet",
- "/Lotus/Upgrades/Skins/VoidTrader/VTExcaliburSkin",
- "/Lotus/Upgrades/Skins/VoidTrader/VTHalloweenDarkSword",
- "/Lotus/Upgrades/Skins/VoidTrader/VTQuanta",
- "/Lotus/Upgrades/Skins/VoidTrader/VTRedeemerSkin",
- "/Lotus/Upgrades/Skins/Volt/DiscordVolt",
- "/Lotus/Upgrades/Skins/Volt/DiscordVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/NintendoVolt",
- "/Lotus/Upgrades/Skins/Volt/NintendoVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWArresterVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWCapacitorHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWCapacitorSkin",
- "/Lotus/Upgrades/Skins/Volt/SWFulgursorHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWFulgursorSkin",
- "/Lotus/Upgrades/Skins/Volt/SWRFourVoltGraxxHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWRFourVoltGraxxSkin",
- "/Lotus/Upgrades/Skins/Volt/SWROneVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWROneVoltSkin",
- "/Lotus/Upgrades/Skins/Volt/SWRelayVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWTechnoshockHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWTechnoshockSkin",
- "/Lotus/Upgrades/Skins/Volt/SWThalesVoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWZenerHelmet",
- "/Lotus/Upgrades/Skins/Volt/SWZenerSkin",
- "/Lotus/Upgrades/Skins/Volt/UnlockVoltAgile",
- "/Lotus/Upgrades/Skins/Volt/UnlockVoltNoble",
- "/Lotus/Upgrades/Skins/Volt/VoltAgileAnims",
- "/Lotus/Upgrades/Skins/Volt/VoltAlternateSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltChameleonAHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltChameleonASkin",
- "/Lotus/Upgrades/Skins/Volt/VoltDeluxeBHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltDeluxeBSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltDeluxeMaceSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltDeluxeSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltHelmetAlt",
- "/Lotus/Upgrades/Skins/Volt/VoltHelmetAltB",
- "/Lotus/Upgrades/Skins/Volt/VoltHelmetAltBStatless",
- "/Lotus/Upgrades/Skins/Volt/VoltHelmetAltStatless",
- "/Lotus/Upgrades/Skins/Volt/VoltNobleAnims",
- "/Lotus/Upgrades/Skins/Volt/VoltPrimeHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltPrimeSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltSkin",
- "/Lotus/Upgrades/Skins/Volt/VoltTwitchHelmet",
- "/Lotus/Upgrades/Skins/Volt/VoltTwitchSkin",
- "/Lotus/Upgrades/Skins/Weapons/DSPistols/BroncoSpectre",
- "/Lotus/Upgrades/Skins/Weapons/DSPistols/FurisVekesk",
- "/Lotus/Upgrades/Skins/Weapons/DSPistols/LatoTekna",
- "/Lotus/Upgrades/Skins/Weapons/DSPistols/LexHammer",
- "/Lotus/Upgrades/Skins/Weapons/DualDaggers/TnMilitaryDualDaggerSkin",
- "/Lotus/Upgrades/Skins/Weapons/DualSword/DualRibbonKamasSkin",
- "/Lotus/Upgrades/Skins/Weapons/GreatSword/PS4BallasSword",
- "/Lotus/Upgrades/Skins/Weapons/GreatSword/SWGrimstoneCleaver",
- "/Lotus/Upgrades/Skins/Weapons/GreatSword/SWIBallasSword",
- "/Lotus/Upgrades/Skins/Weapons/GreatSword/SWObanakk",
- "/Lotus/Upgrades/Skins/Weapons/GreatSword/XB1BallasSword",
- "/Lotus/Upgrades/Skins/Weapons/Grimoire/GrimoireFantasySkin",
- "/Lotus/Upgrades/Skins/Weapons/Grimoire/GrimoireSciFiSkin",
- "/Lotus/Upgrades/Skins/Weapons/Hammers/NintendoFragor",
- "/Lotus/Upgrades/Skins/Weapons/Hammers/SolarisHammerSkinA",
- "/Lotus/Upgrades/Skins/Weapons/LongGuns/CorpusSpearGunSkin",
- "/Lotus/Upgrades/Skins/Weapons/LongGuns/HarrowDeluxeSpearGun",
- "/Lotus/Upgrades/Skins/Weapons/LongGuns/SolsticeBurston",
- "/Lotus/Upgrades/Skins/Weapons/LongGuns/VenkraSniperSkin",
- "/Lotus/Upgrades/Skins/Weapons/Machete/GrnGunStockClubSkin",
- "/Lotus/Upgrades/Skins/Weapons/Pistols/BillowingPistolSkin",
- "/Lotus/Upgrades/Skins/Weapons/Pistols/CeramicPistolSkin",
- "/Lotus/Upgrades/Skins/Weapons/Pistols/TnSubmachinegunDualPistolSkin",
- "/Lotus/Upgrades/Skins/Weapons/Pistols/TnSubmachinegunPistolSkin",
- "/Lotus/Upgrades/Skins/Weapons/Rapier/CrpRapierSkin",
- "/Lotus/Upgrades/Skins/Weapons/Rapier/TnLotusRapierSkin",
- "/Lotus/Upgrades/Skins/Weapons/Redeemer/RedeemerRelayFireSkin",
- "/Lotus/Upgrades/Skins/Weapons/Redeemer/RedeemerRelayWaterSkin",
- "/Lotus/Upgrades/Skins/Weapons/Redeemer/RedeemerTNWNarmerSkin",
- "/Lotus/Upgrades/Skins/Weapons/Redeemer/RedeemerTwitchSkin",
- "/Lotus/Upgrades/Skins/Weapons/Redeemer/TnSpikeGunbladeSkin",
- "/Lotus/Upgrades/Skins/Weapons/Rifle/SoaktronRifleSkin",
- "/Lotus/Upgrades/Skins/Weapons/Staff/TnRibbonStaffSkin",
- "/Lotus/Upgrades/Skins/Weapons/Staff/TrinityDeluxeBo",
- "/Lotus/Upgrades/Skins/Weapons/Throwable/TennoCon2024NinjaStarSkin",
- "/Lotus/Upgrades/Skins/Weapons/Tonfa/CeramicTonfaSkin",
- "/Lotus/Upgrades/Skins/Weapons/Tonfa/KronenTwitchSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/DrakgoonFlakCannonSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/DrakgoonFlakCannonSkinPrimaryProjectileSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/OgrisRocketLauncherSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/OgrisRocketLauncherSkinPrimaryProjectileSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/StahltaShockRifleSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/StahltaShockRifleSkinPrimaryProjectileSkin",
- "/Lotus/Upgrades/Skins/Weapons/UnrealTournament/StahltaShockRifleSkinSecondaryProjectileSkin",
- "/Lotus/Upgrades/Skins/Werewolf/UnlockWerewolfAgile",
- "/Lotus/Upgrades/Skins/Werewolf/UnlockWerewolfNoble",
- "/Lotus/Upgrades/Skins/Werewolf/VorunaVoidShellHelmet",
- "/Lotus/Upgrades/Skins/Werewolf/VorunaVoidShellSkin",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfAgileAnims",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfAltCloakA",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfAltCloakB",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfAltHelmet",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfHelmet",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfNobleAnims",
- "/Lotus/Upgrades/Skins/Werewolf/WerewolfSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeAcceltraSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeCorinthSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeGalatineSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeGaundaoSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeIgnisSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeLenzSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeSkiajatiSkin",
- "/Lotus/Upgrades/Skins/WinterSolstice/SolsticeTatsuSkin",
- "/Lotus/Upgrades/Skins/Wisp/DexWispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/DexWispSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWCelestisWispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWCelestisWispSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWCovenWispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWCovenWispSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWDamasHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWDelusionHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWDelusionSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWRaevuzHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWRaevuzSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWSycoraxWispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWSycoraxWispSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWWispGraxxHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWWispGraxxSkin",
- "/Lotus/Upgrades/Skins/Wisp/SWZamariuWispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/SWZamariuWispSkin",
- "/Lotus/Upgrades/Skins/Wisp/UnlockWispAgile",
- "/Lotus/Upgrades/Skins/Wisp/UnlockWispNoble",
- "/Lotus/Upgrades/Skins/Wisp/WispAgileAnims",
- "/Lotus/Upgrades/Skins/Wisp/WispAltHelmet",
- "/Lotus/Upgrades/Skins/Wisp/WispAlternateSkin",
- "/Lotus/Upgrades/Skins/Wisp/WispDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Wisp/WispDeluxeSkin",
- "/Lotus/Upgrades/Skins/Wisp/WispHelmet",
- "/Lotus/Upgrades/Skins/Wisp/WispNobleAnims",
- "/Lotus/Upgrades/Skins/Wisp/WispPrimeDefaultCape",
- "/Lotus/Upgrades/Skins/Wisp/WispPrimeHelmet",
- "/Lotus/Upgrades/Skins/Wisp/WispPrimeSkin",
- "/Lotus/Upgrades/Skins/Wisp/WispSkin",
- "/Lotus/Upgrades/Skins/Wraith/ReaperHelmet",
- "/Lotus/Upgrades/Skins/Wraith/ReaperSkin",
- "/Lotus/Upgrades/Skins/Wraith/SWSevagothEzrielHelmet",
- "/Lotus/Upgrades/Skins/Wraith/SWSevagothEzrielReaperHelmet",
- "/Lotus/Upgrades/Skins/Wraith/SWSevagothEzrielReaperSkin",
- "/Lotus/Upgrades/Skins/Wraith/SWSevagothEzrielSkin",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeArmRightArmor",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeHelmet",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeRopeAnchor",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeShadowClawsSkin",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeShadowHelmet",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeShadowSkin",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDeluxeSkin",
- "/Lotus/Upgrades/Skins/Wraith/SevagothDlxWeaponSkin",
- "/Lotus/Upgrades/Skins/Wraith/UnlockWraithAgile",
- "/Lotus/Upgrades/Skins/Wraith/UnlockWraithNoble",
- "/Lotus/Upgrades/Skins/Wraith/WraithAgileAnims",
- "/Lotus/Upgrades/Skins/Wraith/WraithAltHelmet",
- "/Lotus/Upgrades/Skins/Wraith/WraithHelmet",
- "/Lotus/Upgrades/Skins/Wraith/WraithNobleAnims",
- "/Lotus/Upgrades/Skins/Wraith/WraithSkin",
- "/Lotus/Upgrades/Skins/Yareli/SWBatomorphaHelmet",
- "/Lotus/Upgrades/Skins/Yareli/UnlockYareliAgile",
- "/Lotus/Upgrades/Skins/Yareli/UnlockYareliNoble",
- "/Lotus/Upgrades/Skins/Yareli/YareliAgileAnims",
- "/Lotus/Upgrades/Skins/Yareli/YareliAltHelmet",
- "/Lotus/Upgrades/Skins/Yareli/YareliHelmet",
- "/Lotus/Upgrades/Skins/Yareli/YareliNobleAnims",
- "/Lotus/Upgrades/Skins/Yareli/YareliSkin",
- "/Lotus/Upgrades/Skins/YinYang/EquinoxDeluxeHelmet",
- "/Lotus/Upgrades/Skins/YinYang/EquinoxDeluxeSkin",
- "/Lotus/Upgrades/Skins/YinYang/EquinoxDeluxeSwordShieldSkin",
- "/Lotus/Upgrades/Skins/YinYang/EquinoxPrimeHelmet",
- "/Lotus/Upgrades/Skins/YinYang/EquinoxPrimeSkin",
- "/Lotus/Upgrades/Skins/YinYang/YinYangSkin"
-]
From be5a2716093270ac6659ae9277071d9d27b1f334 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Wed, 19 Jun 2024 10:32:16 +0200
Subject: [PATCH 25/38] feat: handle costs of recipes (#329)
---
.../api/claimCompletedRecipeController.ts | 51 ++++++++++++++-----
src/services/itemDataService.ts | 3 +-
src/services/recipeService.ts | 50 ++++--------------
3 files changed, 48 insertions(+), 56 deletions(-)
diff --git a/src/controllers/api/claimCompletedRecipeController.ts b/src/controllers/api/claimCompletedRecipeController.ts
index 43abc899..cd8aa3c4 100644
--- a/src/controllers/api/claimCompletedRecipeController.ts
+++ b/src/controllers/api/claimCompletedRecipeController.ts
@@ -3,11 +3,11 @@
import { RequestHandler } from "express";
import { logger } from "@/src/utils/logger";
-import { getItemByBlueprint } from "@/src/services/itemDataService";
+import { getRecipe } from "@/src/services/itemDataService";
import { IOid } from "@/src/types/commonTypes";
import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { getAccountIdForRequest } from "@/src/services/loginService";
-import { getInventory, updateCurrency, addItem } from "@/src/services/inventoryService";
+import { getInventory, updateCurrency, addItem, addMiscItems, addRecipes } from "@/src/services/inventoryService";
export interface IClaimCompletedRecipeRequest {
RecipeIds: IOid[];
@@ -37,28 +37,51 @@ export const claimCompletedRecipeController: RequestHandler = async (req, res) =
inventory.PendingRecipes.pull(pendingRecipe._id);
await inventory.save();
- const buildable = getItemByBlueprint(pendingRecipe.ItemType);
- if (!buildable) {
+ const recipe = getRecipe(pendingRecipe.ItemType);
+ if (!recipe) {
logger.error(`no completed item found for recipe ${pendingRecipe._id}`);
throw new Error(`no completed item found for recipe ${pendingRecipe._id}`);
}
if (req.query.cancel) {
- // TODO: Refund items
- res.json({});
+ const currencyChanges = await updateCurrency(recipe.buildPrice * -1, false, accountId);
+
+ const inventory = await getInventory(accountId);
+ addMiscItems(inventory, recipe.ingredients);
+ await inventory.save();
+
+ // Not a bug: In the specific case of cancelling a recipe, InventoryChanges are expected to be the root.
+ res.json({
+ ...currencyChanges,
+ MiscItems: recipe.ingredients
+ });
} else {
- logger.debug("Claiming Recipe", { buildable, pendingRecipe });
- if (buildable.consumeOnUse) {
- // TODO: Remove one instance of this recipe, and include that in InventoryChanges.
+ logger.debug("Claiming Recipe", { recipe, pendingRecipe });
+ let InventoryChanges = {};
+ if (recipe.consumeOnUse) {
+ const recipeChanges = [
+ {
+ ItemType: pendingRecipe.ItemType,
+ ItemCount: -1
+ }
+ ];
+
+ InventoryChanges = { ...InventoryChanges, Recipes: recipeChanges };
+
+ const inventory = await getInventory(accountId);
+ addRecipes(inventory, recipeChanges);
+ await inventory.save();
}
- let currencyChanges = {};
- if (req.query.rush && buildable.skipBuildTimePrice) {
- currencyChanges = await updateCurrency(buildable.skipBuildTimePrice, true, accountId);
+ if (req.query.rush) {
+ InventoryChanges = {
+ ...InventoryChanges,
+ ...(await updateCurrency(recipe.skipBuildTimePrice, true, accountId))
+ };
}
res.json({
InventoryChanges: {
- ...currencyChanges,
- ...(await addItem(accountId, buildable.resultType, buildable.num)).InventoryChanges
+ ...InventoryChanges,
+ ...(await addItem(accountId, recipe.resultType, recipe.num)).InventoryChanges
}
});
}
diff --git a/src/services/itemDataService.ts b/src/services/itemDataService.ts
index 694a766f..890cde2a 100644
--- a/src/services/itemDataService.ts
+++ b/src/services/itemDataService.ts
@@ -97,8 +97,7 @@ export const blueprintNames = Object.fromEntries(
.map(name => [name, craftNames[name]])
);
-// Gets a recipe by its uniqueName
-export const getItemByBlueprint = (uniqueName: string): IRecipe | undefined => {
+export const getRecipe = (uniqueName: string): IRecipe | undefined => {
return ExportRecipes[uniqueName];
};
diff --git a/src/services/recipeService.ts b/src/services/recipeService.ts
index c9d315bd..8594def4 100644
--- a/src/services/recipeService.ts
+++ b/src/services/recipeService.ts
@@ -1,60 +1,30 @@
import { unixTimesInMs } from "@/src/constants/timeConstants";
-import { getInventory } from "@/src/services/inventoryService";
-import { getItemByBlueprint } from "@/src/services/itemDataService";
+import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
+import { getRecipe } from "@/src/services/itemDataService";
import { logger } from "@/src/utils/logger";
import { Types } from "mongoose";
-export interface IResource {
- uniqueName: string;
- count: number;
-}
-
-// export const updateResources = async (accountId: string, components: IResource[]) => {
-// const inventory = await getInventory(accountId);
-
-// for (const component of components) {
-// const category = getItemCategoryByUniqueName(component.uniqueName) as keyof typeof inventory;
-// //validate category
-
-// console.log(component.uniqueName);
-// console.log("cate", category);
-
-// const invItem = inventory[category];
-// console.log("invItem", invItem);
-
-// inventory["MiscItems"];
-// }
-// };
-
export const startRecipe = async (recipeName: string, accountId: string) => {
- const recipe = getItemByBlueprint(recipeName);
+ const recipe = getRecipe(recipeName);
if (!recipe) {
logger.error(`unknown recipe ${recipeName}`);
throw new Error(`unknown recipe ${recipeName}`);
}
- const componentsNeeded = recipe.ingredients.map(component => ({
- uniqueName: component.ItemType,
- count: component.ItemCount
+ await updateCurrency(recipe.buildPrice, false, accountId);
+
+ const ingredientsInverse = recipe.ingredients.map(component => ({
+ ItemType: component.ItemType,
+ ItemCount: component.ItemCount * -1
}));
- if (!componentsNeeded) {
- logger.error(`recipe ${recipeName} has no components`);
- throw new Error(`recipe ${recipeName} has no components`);
- }
+ const inventory = await getInventory(accountId);
+ addMiscItems(inventory, ingredientsInverse);
- //TODO: consume components used
- //await updateResources(accountId, componentsNeeded);
-
- if (!recipe.buildTime) {
- logger.error(`recipe ${recipeName} has no build time`);
- throw new Error(`recipe ${recipeName} has no build time`);
- }
//buildtime is in seconds
const completionDate = new Date(Date.now() + recipe.buildTime * unixTimesInMs.second);
- const inventory = await getInventory(accountId);
inventory.PendingRecipes.push({
ItemType: recipeName,
CompletionDate: completionDate,
From 1bbdfb030cb6967e297e1f594cc7a8b1045e4b1b Mon Sep 17 00:00:00 2001
From: Sainan
Date: Wed, 19 Jun 2024 10:33:11 +0200
Subject: [PATCH 26/38] feat: implement selling of recipes (#328)
---
src/controllers/api/sellController.ts | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/controllers/api/sellController.ts b/src/controllers/api/sellController.ts
index b240475b..a2a36228 100644
--- a/src/controllers/api/sellController.ts
+++ b/src/controllers/api/sellController.ts
@@ -1,7 +1,7 @@
import { RequestHandler } from "express";
import { ISellRequest } from "@/src/types/sellTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
-import { getInventory, addMods } from "@/src/services/inventoryService";
+import { getInventory, addMods, addRecipes } from "@/src/services/inventoryService";
export const sellController: RequestHandler = async (req, res) => {
const payload: ISellRequest = JSON.parse(req.body.toString());
@@ -39,8 +39,14 @@ export const sellController: RequestHandler = async (req, res) => {
});
}
if (payload.Items.Recipes) {
- // TODO
- // Note: sellItem.String is a uniqueName in this case
+ const recipeChanges = [];
+ for (const sellItem of payload.Items.Recipes) {
+ recipeChanges.push({
+ ItemType: sellItem.String,
+ ItemCount: sellItem.Count * -1
+ });
+ }
+ addRecipes(inventory, recipeChanges);
}
if (payload.Items.Upgrades) {
payload.Items.Upgrades.forEach(sellItem => {
From f1237d562d291046c72b76b9275731f941995640 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Wed, 19 Jun 2024 10:33:56 +0200
Subject: [PATCH 27/38] feat: implement stepSequencers.php (#327)
---
src/controllers/api/stepSequencersController.ts | 14 ++++++++++++++
src/routes/api.ts | 2 ++
src/types/inventoryTypes/inventoryTypes.ts | 2 +-
3 files changed, 17 insertions(+), 1 deletion(-)
create mode 100644 src/controllers/api/stepSequencersController.ts
diff --git a/src/controllers/api/stepSequencersController.ts b/src/controllers/api/stepSequencersController.ts
new file mode 100644
index 00000000..45ea01ba
--- /dev/null
+++ b/src/controllers/api/stepSequencersController.ts
@@ -0,0 +1,14 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getInventory } from "@/src/services/inventoryService";
+import { IStepSequencer } from "@/src/types/inventoryTypes/inventoryTypes";
+
+export const stepSequencersController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const inventory = await getInventory(accountId);
+ const stepSequencer = JSON.parse(req.body.toString()) as IStepSequencer;
+ delete stepSequencer.ItemId;
+ const stepSequencerIndex = inventory.StepSequencers.push(stepSequencer);
+ const changedInventory = await inventory.save();
+ res.json(changedInventory.StepSequencers[stepSequencerIndex - 1]); // unsure about the expected response format, but it seems anything works.
+};
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 35eaaa43..15192fe8 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -50,6 +50,7 @@ import { setSupportedSyndicateController } from "@/src/controllers/api/setSuppor
import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
import { startRecipeController } from "@/src/controllers/api/startRecipeController";
+import { stepSequencersController } from "@/src/controllers/api/stepSequencersController";
import { surveysController } from "@/src/controllers/api/surveysController";
import { syndicateSacrificeController } from "../controllers/api/syndicateSacrificeController";
import { trainingResultController } from "@/src/controllers/api/trainingResultController";
@@ -117,6 +118,7 @@ apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
apiRouter.post("/shipDecorations.php", shipDecorationsController);
apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
apiRouter.post("/startRecipe.php", startRecipeController);
+apiRouter.post("/stepSequencers.php", stepSequencersController);
apiRouter.post("/syndicateSacrifice.php", syndicateSacrificeController);
apiRouter.post("/trainingResult.php", trainingResultController);
apiRouter.post("/updateChallengeProgress.php", updateChallengeProgressController);
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index 1abd4cd8..a8f30308 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -831,7 +831,7 @@ export interface IStepSequencer {
NotePacks: INotePacks;
FingerPrint: string;
Name: string;
- ItemId: IOid;
+ ItemId?: IOid;
}
export interface INotePacks {
From 1fe8351dca08ef3cf20e25db23ac4e63c71af394 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Wed, 19 Jun 2024 17:46:12 +0200
Subject: [PATCH 28/38] feat: handle purchasing of archwing, archgun, &
archmelee (#326)
---
src/models/inventoryModels/inventoryModel.ts | 53 ++++++-----
src/services/inventoryService.ts | 99 +++++++++++---------
src/types/inventoryTypes/inventoryTypes.ts | 1 +
3 files changed, 88 insertions(+), 65 deletions(-)
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index 90c4c844..2dc26ef8 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -197,29 +197,32 @@ ArchonCrystalUpgradeSchema.set("toJSON", {
}
});
-const EquipmentSchema = new Schema({
- ItemType: String,
- Configs: [ItemConfigSchema],
- UpgradeVer: Number,
- XP: Number,
- Features: Number,
- Polarized: Number,
- Polarity: [polaritySchema],
- FocusLens: String,
- ModSlotPurchases: Number,
- CustomizationSlotPurchases: Number,
- UpgradeType: String,
- UpgradeFingerprint: String,
- ItemName: String,
- InfestationDate: Date,
- InfestationDays: Number,
- InfestationType: String,
- ModularParts: [String],
- UnlockLevel: Number,
- Expiry: Date,
- SkillTree: String,
- ArchonCrystalUpgrades: { type: [ArchonCrystalUpgradeSchema], default: undefined }
-});
+const EquipmentSchema = new Schema(
+ {
+ ItemType: String,
+ Configs: [ItemConfigSchema],
+ UpgradeVer: Number,
+ XP: Number,
+ Features: Number,
+ Polarized: Number,
+ Polarity: [polaritySchema],
+ FocusLens: String,
+ ModSlotPurchases: Number,
+ CustomizationSlotPurchases: Number,
+ UpgradeType: String,
+ UpgradeFingerprint: String,
+ ItemName: String,
+ InfestationDate: Date,
+ InfestationDays: Number,
+ InfestationType: String,
+ ModularParts: { type: [String], default: undefined },
+ UnlockLevel: Number,
+ Expiry: Date,
+ SkillTree: String,
+ ArchonCrystalUpgrades: { type: [ArchonCrystalUpgradeSchema], default: undefined }
+ },
+ { id: false }
+);
EquipmentSchema.virtual("ItemId").get(function () {
return { $oid: this._id.toString() } satisfies IOid;
@@ -955,6 +958,10 @@ type InventoryDocumentProps = {
Sentinels: Types.DocumentArray;
Horses: Types.DocumentArray;
PendingRecipes: Types.DocumentArray;
+ SpaceSuits: Types.DocumentArray;
+ SpaceGuns: Types.DocumentArray;
+ SpaceMelee: Types.DocumentArray;
+ SentinelWeapons: Types.DocumentArray;
};
// eslint-disable-next-line @typescript-eslint/ban-types
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index c7861130..36bda69e 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -92,33 +92,51 @@ export const addItem = async (
// Path-based duck typing
switch (typeName.substr(1).split("/")[1]) {
case "Powersuits":
- if (typeName.includes("EntratiMech")) {
- const mechSuit = await addMechSuit(typeName, accountId);
- await updateSlots(accountId, InventorySlot.MECHSUITS, 0, 1);
- logger.debug("mech suit", mechSuit);
- return {
- InventoryChanges: {
- MechBin: {
- count: 1,
- platinum: 0,
- Slots: -1
- },
- MechSuits: [mechSuit]
- }
- };
- }
- const suit = await addPowerSuit(typeName, accountId);
- await updateSlots(accountId, InventorySlot.SUITS, 0, 1);
- return {
- InventoryChanges: {
- SuitBin: {
- count: 1,
- platinum: 0,
- Slots: -1
- },
- Suits: [suit]
+ switch (typeName.substr(1).split("/")[2]) {
+ default: {
+ const suit = await addPowerSuit(typeName, accountId);
+ await updateSlots(accountId, InventorySlot.SUITS, 0, 1);
+ return {
+ InventoryChanges: {
+ SuitBin: {
+ count: 1,
+ platinum: 0,
+ Slots: -1
+ },
+ Suits: [suit]
+ }
+ };
}
- };
+ case "Archwing": {
+ const spaceSuit = await addSpaceSuit(typeName, accountId);
+ await updateSlots(accountId, InventorySlot.SPACESUITS, 0, 1);
+ return {
+ InventoryChanges: {
+ SpaceSuitBin: {
+ count: 1,
+ platinum: 0,
+ Slots: -1
+ },
+ SpaceSuits: [spaceSuit]
+ }
+ };
+ }
+ case "EntratiMech": {
+ const mechSuit = await addMechSuit(typeName, accountId);
+ await updateSlots(accountId, InventorySlot.MECHSUITS, 0, 1);
+ return {
+ InventoryChanges: {
+ MechBin: {
+ count: 1,
+ platinum: 0,
+ Slots: -1
+ },
+ MechSuits: [mechSuit]
+ }
+ };
+ }
+ }
+ break;
case "Weapons":
const weaponType = getWeaponType(typeName);
const weapon = await addWeapon(weaponType, typeName, accountId);
@@ -277,6 +295,13 @@ export const addSpecialItem = async (itemName: string, accountId: string) => {
return changedInventory.SpecialItems[specialItemIndex - 1].toJSON();
};
+export const addSpaceSuit = async (spacesuitName: string, accountId: string) => {
+ const inventory = await getInventory(accountId);
+ const suitIndex = inventory.SpaceSuits.push({ ItemType: spacesuitName, Configs: [], UpgradeVer: 101, XP: 0 });
+ const changedInventory = await inventory.save();
+ return changedInventory.SpaceSuits[suitIndex - 1].toJSON();
+};
+
export const updateSlots = async (accountId: string, slotName: SlotNames, slotAmount: number, extraAmount: number) => {
const inventory = await getInventory(accountId);
@@ -391,22 +416,12 @@ export const addWeapon = async (
): Promise => {
const inventory = await getInventory(accountId);
- let weaponIndex;
- switch (weaponType) {
- case "LongGuns":
- case "Pistols":
- case "Melee":
- case "OperatorAmps":
- weaponIndex = inventory[weaponType].push({
- ItemType: weaponName,
- Configs: [],
- XP: 0,
- ModularParts: modularParts
- });
- break;
- default:
- throw new Error("unknown weapon type: " + weaponType);
- }
+ const weaponIndex = inventory[weaponType].push({
+ ItemType: weaponName,
+ Configs: [],
+ XP: 0,
+ ModularParts: modularParts
+ });
const changedInventory = await inventory.save();
return changedInventory[weaponType][weaponIndex - 1].toJSON();
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index a8f30308..28423edb 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -358,6 +358,7 @@ export interface ICombat {
export enum InventorySlot {
SUITS = "SuitBin",
WEAPONS = "WeaponBin",
+ SPACESUITS = "SpaceSuitBin",
MECHSUITS = "MechBin",
PVE_LOADOUTS = "PveBonusLoadoutBin",
SENTINELS = "SentinelBin"
From 2f9ac5dc7b619c3593892f0ff3c4e7c8f11b0add Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 11:45:45 +0200
Subject: [PATCH 29/38] chore: update typescript plugins for eslint (#335)
---
package-lock.json | 467 +++++-------------
package.json | 4 +-
src/services/missionInventoryUpdateService.ts | 2 +-
3 files changed, 118 insertions(+), 355 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index e12a07ef..0725994e 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -22,8 +22,8 @@
"@tsconfig/node20": "^1.0.0",
"@types/express": "^4.17.20",
"@types/morgan": "^1.9.7",
- "@typescript-eslint/eslint-plugin": "^6.9.0",
- "@typescript-eslint/parser": "^6.2.0",
+ "@typescript-eslint/eslint-plugin": "^7.13.1",
+ "@typescript-eslint/parser": "^7.13.1",
"eslint": "^8.56.0",
"eslint-plugin-prettier": "^5.1.3",
"morgan": "^1.10.0",
@@ -364,12 +364,6 @@
"@types/send": "*"
}
},
- "node_modules/@types/json-schema": {
- "version": "7.0.14",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.14.tgz",
- "integrity": "sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw==",
- "dev": true
- },
"node_modules/@types/mime": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz",
@@ -403,12 +397,6 @@
"integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==",
"dev": true
},
- "node_modules/@types/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-MMzuxN3GdFwskAnb6fz0orFvhfqi752yjaXylr0Rp4oDg5H0Zn1IuyRhDVvYOwAXoJirx2xuS16I3WjxnAIHiQ==",
- "dev": true
- },
"node_modules/@types/send": {
"version": "0.17.1",
"resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz",
@@ -460,33 +448,31 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.9.0.tgz",
- "integrity": "sha512-lgX7F0azQwRPB7t7WAyeHWVfW1YJ9NIgd9mvGhfQpRY56X6AVf8mwM8Wol+0z4liE7XX3QOt8MN1rUKCfSjRIA==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.13.1.tgz",
+ "integrity": "sha512-kZqi+WZQaZfPKnsflLJQCz6Ze9FFSMfXrrIOcyargekQxG37ES7DJNpJUE9Q/X5n3yTIP/WPutVNzgknQ7biLg==",
"dev": true,
"dependencies": {
- "@eslint-community/regexpp": "^4.5.1",
- "@typescript-eslint/scope-manager": "6.9.0",
- "@typescript-eslint/type-utils": "6.9.0",
- "@typescript-eslint/utils": "6.9.0",
- "@typescript-eslint/visitor-keys": "6.9.0",
- "debug": "^4.3.4",
+ "@eslint-community/regexpp": "^4.10.0",
+ "@typescript-eslint/scope-manager": "7.13.1",
+ "@typescript-eslint/type-utils": "7.13.1",
+ "@typescript-eslint/utils": "7.13.1",
+ "@typescript-eslint/visitor-keys": "7.13.1",
"graphemer": "^1.4.0",
- "ignore": "^5.2.4",
+ "ignore": "^5.3.1",
"natural-compare": "^1.4.0",
- "semver": "^7.5.4",
- "ts-api-utils": "^1.0.1"
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha",
- "eslint": "^7.0.0 || ^8.0.0"
+ "@typescript-eslint/parser": "^7.0.0",
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -494,97 +480,27 @@
}
}
},
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.9.0.tgz",
- "integrity": "sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "@typescript-eslint/visitor-keys": "6.9.0"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz",
- "integrity": "sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==",
- "dev": true,
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz",
- "integrity": "sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "dev": true,
- "dependencies": {
- "ms": "2.1.2"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
"node_modules/@typescript-eslint/parser": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.2.0.tgz",
- "integrity": "sha512-igVYOqtiK/UsvKAmmloQAruAdUHihsOCvplJpplPZ+3h4aDkC/UKZZNKgB6h93ayuYLuEymU3h8nF1xMRbh37g==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.13.1.tgz",
+ "integrity": "sha512-1ELDPlnLvDQ5ybTSrMhRTFDfOQEOXNM+eP+3HT/Yq7ruWpciQw+Avi73pdEbA4SooCawEWo3dtYbF68gN7Ed1A==",
"dev": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "6.2.0",
- "@typescript-eslint/types": "6.2.0",
- "@typescript-eslint/typescript-estree": "6.2.0",
- "@typescript-eslint/visitor-keys": "6.2.0",
+ "@typescript-eslint/scope-manager": "7.13.1",
+ "@typescript-eslint/types": "7.13.1",
+ "@typescript-eslint/typescript-estree": "7.13.1",
+ "@typescript-eslint/visitor-keys": "7.13.1",
"debug": "^4.3.4"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^7.0.0 || ^8.0.0"
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -593,9 +509,9 @@
}
},
"node_modules/@typescript-eslint/parser/node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz",
+ "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==",
"dev": true,
"dependencies": {
"ms": "2.1.2"
@@ -616,16 +532,16 @@
"dev": true
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.2.0.tgz",
- "integrity": "sha512-1ZMNVgm5nnHURU8ZSJ3snsHzpFeNK84rdZjluEVBGNu7jDymfqceB3kdIZ6A4xCfEFFhRIB6rF8q/JIqJd2R0Q==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.13.1.tgz",
+ "integrity": "sha512-adbXNVEs6GmbzaCpymHQ0MB6E4TqoiVbC0iqG3uijR8ZYfpAXMGttouQzF4Oat3P2GxDVIrg7bMI/P65LiQZdg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.2.0",
- "@typescript-eslint/visitor-keys": "6.2.0"
+ "@typescript-eslint/types": "7.13.1",
+ "@typescript-eslint/visitor-keys": "7.13.1"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -633,25 +549,25 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.9.0.tgz",
- "integrity": "sha512-XXeahmfbpuhVbhSOROIzJ+b13krFmgtc4GlEuu1WBT+RpyGPIA4Y/eGnXzjbDj5gZLzpAXO/sj+IF/x2GtTMjQ==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.13.1.tgz",
+ "integrity": "sha512-aWDbLu1s9bmgPGXSzNCxELu+0+HQOapV/y+60gPXafR8e2g1Bifxzevaa+4L2ytCWm+CHqpELq4CSoN9ELiwCg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "6.9.0",
- "@typescript-eslint/utils": "6.9.0",
+ "@typescript-eslint/typescript-estree": "7.13.1",
+ "@typescript-eslint/utils": "7.13.1",
"debug": "^4.3.4",
- "ts-api-utils": "^1.0.1"
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^7.0.0 || ^8.0.0"
+ "eslint": "^8.56.0"
},
"peerDependenciesMeta": {
"typescript": {
@@ -659,67 +575,10 @@
}
}
},
- "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz",
- "integrity": "sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==",
- "dev": true,
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.0.tgz",
- "integrity": "sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "@typescript-eslint/visitor-keys": "6.9.0",
- "debug": "^4.3.4",
- "globby": "^11.1.0",
- "is-glob": "^4.0.3",
- "semver": "^7.5.4",
- "ts-api-utils": "^1.0.1"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz",
- "integrity": "sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
"node_modules/@typescript-eslint/type-utils/node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz",
+ "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==",
"dev": true,
"dependencies": {
"ms": "2.1.2"
@@ -740,12 +599,12 @@
"dev": true
},
"node_modules/@typescript-eslint/types": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.2.0.tgz",
- "integrity": "sha512-1nRRaDlp/XYJQLvkQJG5F3uBTno5SHPT7XVcJ5n1/k2WfNI28nJsvLakxwZRNY5spuatEKO7d5nZWsQpkqXwBA==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.13.1.tgz",
+ "integrity": "sha512-7K7HMcSQIAND6RBL4kDl24sG/xKM13cA85dc7JnmQXw2cBDngg7c19B++JzvJHRG3zG36n9j1i451GBzRuHchw==",
"dev": true,
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -753,21 +612,22 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.2.0.tgz",
- "integrity": "sha512-Mts6+3HQMSM+LZCglsc2yMIny37IhUgp1Qe8yJUYVyO6rHP7/vN0vajKu3JvHCBIy8TSiKddJ/Zwu80jhnGj1w==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.13.1.tgz",
+ "integrity": "sha512-uxNr51CMV7npU1BxZzYjoVz9iyjckBduFBP0S5sLlh1tXYzHzgZ3BR9SVsNed+LmwKrmnqN3Kdl5t7eZ5TS1Yw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.2.0",
- "@typescript-eslint/visitor-keys": "6.2.0",
+ "@typescript-eslint/types": "7.13.1",
+ "@typescript-eslint/visitor-keys": "7.13.1",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
- "semver": "^7.5.4",
- "ts-api-utils": "^1.0.1"
+ "minimatch": "^9.0.4",
+ "semver": "^7.6.0",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -779,10 +639,19 @@
}
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "version": "4.3.5",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz",
+ "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==",
"dev": true,
"dependencies": {
"ms": "2.1.2"
@@ -796,6 +665,21 @@
}
}
},
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
+ "version": "9.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
+ "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/@typescript-eslint/typescript-estree/node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -803,138 +687,38 @@
"dev": true
},
"node_modules/@typescript-eslint/utils": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.9.0.tgz",
- "integrity": "sha512-5Wf+Jsqya7WcCO8me504FBigeQKVLAMPmUzYgDbWchINNh1KJbxCgVya3EQ2MjvJMVeXl3pofRmprqX6mfQkjQ==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.13.1.tgz",
+ "integrity": "sha512-h5MzFBD5a/Gh/fvNdp9pTfqJAbuQC4sCN2WzuXme71lqFJsZtLbjxfSk4r3p02WIArOF9N94pdsLiGutpDbrXQ==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
- "@types/json-schema": "^7.0.12",
- "@types/semver": "^7.5.0",
- "@typescript-eslint/scope-manager": "6.9.0",
- "@typescript-eslint/types": "6.9.0",
- "@typescript-eslint/typescript-estree": "6.9.0",
- "semver": "^7.5.4"
+ "@typescript-eslint/scope-manager": "7.13.1",
+ "@typescript-eslint/types": "7.13.1",
+ "@typescript-eslint/typescript-estree": "7.13.1"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "eslint": "^7.0.0 || ^8.0.0"
+ "eslint": "^8.56.0"
}
},
- "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/scope-manager": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.9.0.tgz",
- "integrity": "sha512-1R8A9Mc39n4pCCz9o79qRO31HGNDvC7UhPhv26TovDsWPBDx+Sg3rOZdCELIA3ZmNoWAuxaMOT7aWtGRSYkQxw==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "@typescript-eslint/visitor-keys": "6.9.0"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/types": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.9.0.tgz",
- "integrity": "sha512-+KB0lbkpxBkBSiVCuQvduqMJy+I1FyDbdwSpM3IoBS7APl4Bu15lStPjgBIdykdRqQNYqYNMa8Kuidax6phaEw==",
- "dev": true,
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/typescript-estree": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.9.0.tgz",
- "integrity": "sha512-NJM2BnJFZBEAbCfBP00zONKXvMqihZCrmwCaik0UhLr0vAgb6oguXxLX1k00oQyD+vZZ+CJn3kocvv2yxm4awQ==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "@typescript-eslint/visitor-keys": "6.9.0",
- "debug": "^4.3.4",
- "globby": "^11.1.0",
- "is-glob": "^4.0.3",
- "semver": "^7.5.4",
- "ts-api-utils": "^1.0.1"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/@typescript-eslint/visitor-keys": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.9.0.tgz",
- "integrity": "sha512-dGtAfqjV6RFOtIP8I0B4ZTBRrlTT8NHHlZZSchQx3qReaoDeXhYM++M4So2AgFK9ZB0emRPA6JI1HkafzA2Ibg==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/types": "6.9.0",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^16.0.0 || >=18.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/debug": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
- "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
- "dev": true,
- "dependencies": {
- "ms": "2.1.2"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.2.0.tgz",
- "integrity": "sha512-QbaYUQVKKo9bgCzpjz45llCfwakyoxHetIy8CAvYCtd16Zu1KrpzNHofwF8kGkpPOxZB2o6kz+0nqH8ZkIzuoQ==",
+ "version": "7.13.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.13.1.tgz",
+ "integrity": "sha512-k/Bfne7lrP7hcb7m9zSsgcBmo+8eicqqfNAJ7uUY+jkTFpKeH2FSkWpFRtimBxgkyvqfu9jTPRbYOvud6isdXA==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "6.2.0",
- "eslint-visitor-keys": "^3.4.1"
+ "@typescript-eslint/types": "7.13.1",
+ "eslint-visitor-keys": "^3.4.3"
},
"engines": {
- "node": "^16.0.0 || >=18.0.0"
+ "node": "^18.18.0 || >=20.0.0"
},
"funding": {
"type": "opencollective",
@@ -1848,9 +1632,9 @@
"dev": true
},
"node_modules/fast-glob": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz",
- "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"dev": true,
"dependencies": {
"@nodelib/fs.stat": "^2.0.2",
@@ -2245,9 +2029,9 @@
}
},
"node_modules/ignore": {
- "version": "5.2.4",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
- "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==",
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
+ "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
"dev": true,
"engines": {
"node": ">= 4"
@@ -2496,18 +2280,6 @@
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
},
- "node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/make-error": {
"version": "1.3.6",
"resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz",
@@ -2550,12 +2322,12 @@
}
},
"node_modules/micromatch": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz",
- "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz",
+ "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==",
"dev": true,
"dependencies": {
- "braces": "^3.0.2",
+ "braces": "^3.0.3",
"picomatch": "^2.3.1"
},
"engines": {
@@ -3261,13 +3033,10 @@
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "version": "7.6.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
+ "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==",
"dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
"bin": {
"semver": "bin/semver.js"
},
@@ -3658,12 +3427,12 @@
}
},
"node_modules/ts-api-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.1.tgz",
- "integrity": "sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==",
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
+ "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
"dev": true,
"engines": {
- "node": ">=16.13.0"
+ "node": ">=16"
},
"peerDependencies": {
"typescript": ">=4.2.0"
@@ -4061,12 +3830,6 @@
"node": ">=10"
}
},
- "node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"node_modules/yargs": {
"version": "16.2.0",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
diff --git a/package.json b/package.json
index 473d3cdc..0acdfc73 100644
--- a/package.json
+++ b/package.json
@@ -26,8 +26,8 @@
"@tsconfig/node20": "^1.0.0",
"@types/express": "^4.17.20",
"@types/morgan": "^1.9.7",
- "@typescript-eslint/eslint-plugin": "^6.9.0",
- "@typescript-eslint/parser": "^6.2.0",
+ "@typescript-eslint/eslint-plugin": "^7.13.1",
+ "@typescript-eslint/parser": "^7.13.1",
"eslint": "^8.56.0",
"eslint-plugin-prettier": "^5.1.3",
"morgan": "^1.10.0",
diff --git a/src/services/missionInventoryUpdateService.ts b/src/services/missionInventoryUpdateService.ts
index 5936adbe..aadcd4ae 100644
--- a/src/services/missionInventoryUpdateService.ts
+++ b/src/services/missionInventoryUpdateService.ts
@@ -174,7 +174,7 @@ const itemCheck = (
};
for (const key of Object.keys(rewardCheck) as IInventoryFieldType[]) {
if (rewardCheck[key]) {
- addRewardResponse(InventoryChanges, MissionRewards, name, rewardCheck[key]!, key);
+ addRewardResponse(InventoryChanges, MissionRewards, name, rewardCheck[key], key);
return true;
}
}
From f9414dcf84fb392a5bc279644cbfa48c4a165229 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 11:46:08 +0200
Subject: [PATCH 30/38] fix: switching to drifter doesn't save (#334)
---
src/services/saveLoadoutService.ts | 4 ++++
src/types/inventoryTypes/inventoryTypes.ts | 2 +-
src/types/saveLoadoutTypes.ts | 1 +
3 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/services/saveLoadoutService.ts b/src/services/saveLoadoutService.ts
index 502a0e63..9ff6e523 100644
--- a/src/services/saveLoadoutService.ts
+++ b/src/services/saveLoadoutService.ts
@@ -171,6 +171,10 @@ export const handleInventoryItemConfigChange = async (
inventory.EquippedGear = equipment as string[];
break;
}
+ case "UseAdultOperatorLoadout": {
+ inventory.UseAdultOperatorLoadout = equipment as boolean;
+ break;
+ }
default: {
logger.error(`category not implemented: ${equipmentName}`, { config: equipment });
}
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index 28423edb..d538a7a2 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -239,7 +239,7 @@ export interface IInventoryResponse {
CrewMembers: ICrewMember[];
AdultOperatorLoadOuts: IOperatorConfigClient[];
LotusCustomization: ILotusCustomization;
- UseAdultOperatorLoadout: boolean;
+ UseAdultOperatorLoadout?: boolean;
DailyAffiliationZariman: number;
NemesisAbandonedRewards: string[];
DailyAffiliationKahl: number;
diff --git a/src/types/saveLoadoutTypes.ts b/src/types/saveLoadoutTypes.ts
index 4f434eef..9121aadf 100644
--- a/src/types/saveLoadoutTypes.ts
+++ b/src/types/saveLoadoutTypes.ts
@@ -33,6 +33,7 @@ export interface ISaveLoadoutRequest {
CurrentLoadOutIds: IOid[];
ValidNewLoadoutId: string;
EquippedGear: string[];
+ UseAdultOperatorLoadout: boolean;
}
export interface ISaveLoadoutRequestNoUpgradeVer extends Omit {}
From 722a9aba5b8d0e1b5fa89fba549d19c8f28ae791 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 11:47:21 +0200
Subject: [PATCH 31/38] improve: suppress no-misued-promises when declaring
RequestHandler (#332)
---
src/controllers/api/addFriendImageController.ts | 1 +
src/controllers/api/createGuildController.ts | 1 +
src/controllers/api/focusController.ts | 1 +
src/controllers/api/getGuildController.ts | 1 +
src/controllers/api/getGuildDojoController.ts | 1 +
src/controllers/api/hostSessionController.ts | 1 +
src/controllers/api/infestedFoundryController.ts | 1 +
src/controllers/api/inventoryController.ts | 6 +++---
src/controllers/api/logoutController.ts | 1 +
src/controllers/api/modularWeaponCraftingController.ts | 1 +
src/controllers/api/nameWeaponController.ts | 1 +
src/controllers/api/purchaseController.ts | 5 +++--
src/controllers/api/sellController.ts | 1 +
src/controllers/api/setBootLocationController.ts | 1 +
src/controllers/api/setSupportedSyndicateController.ts | 1 +
src/controllers/api/startDojoRecipeController.ts | 1 +
src/controllers/api/stepSequencersController.ts | 1 +
src/controllers/api/syndicateSacrificeController.ts | 1 +
src/controllers/api/updateChallengeProgressController.ts | 1 +
src/controllers/api/upgradesController.ts | 1 +
src/controllers/custom/updateConfigDataController.ts | 1 +
src/controllers/stats/viewController.ts | 1 +
src/routes/cache.ts | 1 +
23 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/src/controllers/api/addFriendImageController.ts b/src/controllers/api/addFriendImageController.ts
index 979bb9fb..6c9a2370 100644
--- a/src/controllers/api/addFriendImageController.ts
+++ b/src/controllers/api/addFriendImageController.ts
@@ -4,6 +4,7 @@ import { IUpdateGlyphRequest } from "@/src/types/requestTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { getInventory } from "@/src/services/inventoryService";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const addFriendImageController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const json = getJSONfromString(req.body.toString()) as IUpdateGlyphRequest;
diff --git a/src/controllers/api/createGuildController.ts b/src/controllers/api/createGuildController.ts
index f0f56f1b..9499e308 100644
--- a/src/controllers/api/createGuildController.ts
+++ b/src/controllers/api/createGuildController.ts
@@ -5,6 +5,7 @@ import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
import { Guild } from "@/src/models/guildModel";
import { ICreateGuildRequest } from "@/src/types/guildTypes";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const createGuildController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const payload: ICreateGuildRequest = getJSONfromString(req.body.toString());
diff --git a/src/controllers/api/focusController.ts b/src/controllers/api/focusController.ts
index b2ac53f6..e13b6057 100644
--- a/src/controllers/api/focusController.ts
+++ b/src/controllers/api/focusController.ts
@@ -5,6 +5,7 @@ import { IMiscItem, TFocusPolarity } from "@/src/types/inventoryTypes/inventoryT
import { logger } from "@/src/utils/logger";
import baseFocusPointCosts from "@/static/json/baseFocusPointCosts.json";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const focusController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
switch (req.query.op) {
diff --git a/src/controllers/api/getGuildController.ts b/src/controllers/api/getGuildController.ts
index d112f996..076e5934 100644
--- a/src/controllers/api/getGuildController.ts
+++ b/src/controllers/api/getGuildController.ts
@@ -4,6 +4,7 @@ import { Guild } from "@/src/models/guildModel";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { toOid } from "@/src/helpers/inventoryHelpers";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const getGuildController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await Inventory.findOne({ accountOwnerId: accountId });
diff --git a/src/controllers/api/getGuildDojoController.ts b/src/controllers/api/getGuildDojoController.ts
index a220bb7e..af60b492 100644
--- a/src/controllers/api/getGuildDojoController.ts
+++ b/src/controllers/api/getGuildDojoController.ts
@@ -4,6 +4,7 @@ import { Guild } from "@/src/models/guildModel";
import { IDojoClient, IDojoComponentClient } from "@/src/types/guildTypes";
import { toOid, toMongoDate } from "@/src/helpers/inventoryHelpers";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const getGuildDojoController: RequestHandler = async (req, res) => {
const guildId = req.query.guildId as string;
diff --git a/src/controllers/api/hostSessionController.ts b/src/controllers/api/hostSessionController.ts
index 1745d994..94ca633a 100644
--- a/src/controllers/api/hostSessionController.ts
+++ b/src/controllers/api/hostSessionController.ts
@@ -4,6 +4,7 @@ import { createNewSession } from "@/src/managers/sessionManager";
import { logger } from "@/src/utils/logger";
import { ISession } from "@/src/types/session";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const hostSessionController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const hostSessionRequest = JSON.parse(req.body as string) as ISession;
diff --git a/src/controllers/api/infestedFoundryController.ts b/src/controllers/api/infestedFoundryController.ts
index 26b98803..85c50921 100644
--- a/src/controllers/api/infestedFoundryController.ts
+++ b/src/controllers/api/infestedFoundryController.ts
@@ -4,6 +4,7 @@ import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { getInventory, addMiscItems } from "@/src/services/inventoryService";
import { IOid } from "@/src/types/commonTypes";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const infestedFoundryController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const payload = getJSONfromString(req.body.toString());
diff --git a/src/controllers/api/inventoryController.ts b/src/controllers/api/inventoryController.ts
index b2738bf8..03383df8 100644
--- a/src/controllers/api/inventoryController.ts
+++ b/src/controllers/api/inventoryController.ts
@@ -1,15 +1,15 @@
-/* eslint-disable @typescript-eslint/no-misused-promises */
+import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { toInventoryResponse } from "@/src/helpers/inventoryHelpers";
import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
-import { Request, RequestHandler, Response } from "express";
import { config } from "@/src/services/configService";
import allMissions from "@/static/fixed_responses/allMissions.json";
import { ILoadoutDatabase } from "@/src/types/saveLoadoutTypes";
import { IShipInventory } from "@/src/types/inventoryTypes/inventoryTypes";
import { ExportCustoms, ExportFlavour, ExportKeys, ExportResources } from "warframe-public-export-plus";
-const inventoryController: RequestHandler = async (request: Request, response: Response) => {
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
+const inventoryController: RequestHandler = async (request, response) => {
let accountId;
try {
accountId = await getAccountIdForRequest(request);
diff --git a/src/controllers/api/logoutController.ts b/src/controllers/api/logoutController.ts
index 735014d4..a6faa008 100644
--- a/src/controllers/api/logoutController.ts
+++ b/src/controllers/api/logoutController.ts
@@ -2,6 +2,7 @@ import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { Account } from "@/src/models/loginModel";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const logoutController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const account = await Account.findOne({ _id: accountId });
diff --git a/src/controllers/api/modularWeaponCraftingController.ts b/src/controllers/api/modularWeaponCraftingController.ts
index c1cd7bc8..09244764 100644
--- a/src/controllers/api/modularWeaponCraftingController.ts
+++ b/src/controllers/api/modularWeaponCraftingController.ts
@@ -18,6 +18,7 @@ interface IModularCraftRequest {
Parts: string[];
}
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const modularWeaponCraftingController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const data: IModularCraftRequest = getJSONfromString(req.body.toString());
diff --git a/src/controllers/api/nameWeaponController.ts b/src/controllers/api/nameWeaponController.ts
index 7543cbc4..c32f0fe8 100644
--- a/src/controllers/api/nameWeaponController.ts
+++ b/src/controllers/api/nameWeaponController.ts
@@ -8,6 +8,7 @@ interface INameWeaponRequest {
ItemName: string;
}
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const nameWeaponController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await getInventory(accountId);
diff --git a/src/controllers/api/purchaseController.ts b/src/controllers/api/purchaseController.ts
index cf32a95d..9e8bcb45 100644
--- a/src/controllers/api/purchaseController.ts
+++ b/src/controllers/api/purchaseController.ts
@@ -1,9 +1,10 @@
+import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { toPurchaseRequest } from "@/src/helpers/purchaseHelpers";
import { handlePurchase } from "@/src/services/purchaseService";
-import { Request, Response } from "express";
-export const purchaseController = async (req: Request, res: Response) => {
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
+export const purchaseController: RequestHandler = async (req, res) => {
const purchaseRequest = toPurchaseRequest(JSON.parse(String(req.body)));
const accountId = await getAccountIdForRequest(req);
const response = await handlePurchase(purchaseRequest, accountId);
diff --git a/src/controllers/api/sellController.ts b/src/controllers/api/sellController.ts
index a2a36228..f242ccba 100644
--- a/src/controllers/api/sellController.ts
+++ b/src/controllers/api/sellController.ts
@@ -3,6 +3,7 @@ import { ISellRequest } from "@/src/types/sellTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { getInventory, addMods, addRecipes } from "@/src/services/inventoryService";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const sellController: RequestHandler = async (req, res) => {
const payload: ISellRequest = JSON.parse(req.body.toString());
const accountId = await getAccountIdForRequest(req);
diff --git a/src/controllers/api/setBootLocationController.ts b/src/controllers/api/setBootLocationController.ts
index 599044a0..a91f63a1 100644
--- a/src/controllers/api/setBootLocationController.ts
+++ b/src/controllers/api/setBootLocationController.ts
@@ -3,6 +3,7 @@ import { getAccountIdForRequest } from "@/src/services/loginService";
import { getPersonalRooms } from "@/src/services/personalRoomsService";
import { TBootLocation } from "@/src/types/shipTypes";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const setBootLocationController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const personalRooms = await getPersonalRooms(accountId);
diff --git a/src/controllers/api/setSupportedSyndicateController.ts b/src/controllers/api/setSupportedSyndicateController.ts
index e22b659f..619fb44c 100644
--- a/src/controllers/api/setSupportedSyndicateController.ts
+++ b/src/controllers/api/setSupportedSyndicateController.ts
@@ -2,6 +2,7 @@ import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { getInventory } from "@/src/services/inventoryService";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const setSupportedSyndicateController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await getInventory(accountId);
diff --git a/src/controllers/api/startDojoRecipeController.ts b/src/controllers/api/startDojoRecipeController.ts
index 8b4104ac..a278f31c 100644
--- a/src/controllers/api/startDojoRecipeController.ts
+++ b/src/controllers/api/startDojoRecipeController.ts
@@ -8,6 +8,7 @@ interface IStartDojoRecipeRequest {
Revision: number;
}
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const startDojoRecipeController: RequestHandler = async (req, res) => {
const guild = await getGuildForRequest(req);
// At this point, we know that a member of the guild is making this request. Assuming they are allowed to start a build.
diff --git a/src/controllers/api/stepSequencersController.ts b/src/controllers/api/stepSequencersController.ts
index 45ea01ba..bb963b92 100644
--- a/src/controllers/api/stepSequencersController.ts
+++ b/src/controllers/api/stepSequencersController.ts
@@ -3,6 +3,7 @@ import { getAccountIdForRequest } from "@/src/services/loginService";
import { getInventory } from "@/src/services/inventoryService";
import { IStepSequencer } from "@/src/types/inventoryTypes/inventoryTypes";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const stepSequencersController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await getInventory(accountId);
diff --git a/src/controllers/api/syndicateSacrificeController.ts b/src/controllers/api/syndicateSacrificeController.ts
index e6ee04b9..d67f68b5 100644
--- a/src/controllers/api/syndicateSacrificeController.ts
+++ b/src/controllers/api/syndicateSacrificeController.ts
@@ -3,6 +3,7 @@ import { syndicateSacrifice } from "@/src/services/inventoryService";
import { ISyndicateSacrifice } from "@/src/types/syndicateTypes";
import { RequestHandler } from "express";
import { getAccountIdForRequest } from "@/src/services/loginService";
+
// eslint-disable-next-line @typescript-eslint/no-misused-promises
const syndicateSacrificeController: RequestHandler = async (request, response) => {
const accountId = await getAccountIdForRequest(request);
diff --git a/src/controllers/api/updateChallengeProgressController.ts b/src/controllers/api/updateChallengeProgressController.ts
index e41880e6..bc91f9d3 100644
--- a/src/controllers/api/updateChallengeProgressController.ts
+++ b/src/controllers/api/updateChallengeProgressController.ts
@@ -4,6 +4,7 @@ import { getAccountIdForRequest } from "@/src/services/loginService";
import { updateChallengeProgress } from "@/src/services/inventoryService";
import { IUpdateChallengeProgressRequest } from "@/src/types/requestTypes";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const updateChallengeProgressController: RequestHandler = async (req, res) => {
const payload: IUpdateChallengeProgressRequest = getJSONfromString(req.body.toString());
const accountId = await getAccountIdForRequest(req);
diff --git a/src/controllers/api/upgradesController.ts b/src/controllers/api/upgradesController.ts
index 25b548e6..e2f7f052 100644
--- a/src/controllers/api/upgradesController.ts
+++ b/src/controllers/api/upgradesController.ts
@@ -5,6 +5,7 @@ import { IMiscItem, TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTy
import { getAccountIdForRequest } from "@/src/services/loginService";
import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
export const upgradesController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const payload = JSON.parse(req.body.toString()) as IUpgradesRequest;
diff --git a/src/controllers/custom/updateConfigDataController.ts b/src/controllers/custom/updateConfigDataController.ts
index b7521a1a..8a23cd1b 100644
--- a/src/controllers/custom/updateConfigDataController.ts
+++ b/src/controllers/custom/updateConfigDataController.ts
@@ -1,6 +1,7 @@
import { RequestHandler } from "express";
import { updateConfig } from "@/src/services/configService";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const updateConfigDataController: RequestHandler = async (req, res) => {
await updateConfig(req.body.toString());
res.end();
diff --git a/src/controllers/stats/viewController.ts b/src/controllers/stats/viewController.ts
index 03372433..3d6b9e20 100644
--- a/src/controllers/stats/viewController.ts
+++ b/src/controllers/stats/viewController.ts
@@ -6,6 +6,7 @@ import { config } from "@/src/services/configService";
import view from "@/static/fixed_responses/view.json";
import allScans from "@/static/fixed_responses/allScans.json";
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
const viewController: RequestHandler = async (req, res) => {
const accountId = await getAccountIdForRequest(req);
const inventory = await Inventory.findOne({ accountOwnerId: accountId });
diff --git a/src/routes/cache.ts b/src/routes/cache.ts
index adc69b2a..5c1df0d6 100644
--- a/src/routes/cache.ts
+++ b/src/routes/cache.ts
@@ -16,6 +16,7 @@ cacheRouter.get(/^\/origin\/[a-zA-Z0-9]+\/[0-9]+\/H\.Cache\.bin.*$/, (_req, res)
res.sendFile(`static/data/H.Cache_${buildConfig.version}.bin`, { root: "./" });
});
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
cacheRouter.get(/\.bk2!/, async (req, res) => {
try {
const dir = req.path.substr(0, req.path.lastIndexOf("/"));
From c9d4712565ba53a43bffb840369775e285e08d8f Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 11:48:12 +0200
Subject: [PATCH 32/38] fix: miscellaneous inaccuracies (#330)
Co-authored-by: Sainan
---
src/models/inventoryModels/inventoryModel.ts | 23 +++++++++++---------
src/types/inventoryTypes/inventoryTypes.ts | 2 +-
static/webui/script.js | 5 +----
3 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index 2dc26ef8..aed24800 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -161,14 +161,17 @@ const ItemConfigSchema = new Schema(
facial: colorSchema,
syancol: colorSchema,
Upgrades: [String],
- Songs: [
- {
- m: String,
- b: String,
- p: String,
- s: String
- }
- ],
+ Songs: {
+ type: [
+ {
+ m: String,
+ b: String,
+ p: String,
+ s: String
+ }
+ ],
+ default: undefined
+ },
Name: String,
AbilityOverride: abilityOverrideSchema,
PvpUpgrades: [String],
@@ -888,7 +891,7 @@ const inventorySchema = new Schema(
ChallengesFixVersion: Number,
PlayedParkourTutorial: Boolean,
SubscribedToEmailsPersonalized: Number,
- LastInventorySync: Schema.Types.Mixed,
+ LastInventorySync: Schema.Types.Mixed, // this should be Schema.Types.ObjectId, but older inventories may break with that.
ActiveLandscapeTraps: [Schema.Types.Mixed],
RepVotes: [Schema.Types.Mixed],
LeagueTickets: [Schema.Types.Mixed],
@@ -914,7 +917,7 @@ const inventorySchema = new Schema(
//Grustag three
DeathSquadable: Boolean
},
- { timestamps: { createdAt: "Created", updatedAt: "LastInventorySync" } }
+ { timestamps: { createdAt: "Created" } }
);
inventorySchema.set("toJSON", {
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index d538a7a2..1a201888 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -170,7 +170,7 @@ export interface IInventoryResponse {
SpectreLoadouts: ISpectreLoadout[];
SentinelWeapons: IEquipmentDatabase[];
Sentinels: IEquipmentDatabase[];
- EmailItems: ITypeXPItem[];
+ EmailItems: ITypeCount[];
CompletedSyndicates: string[];
FocusXP: IFocusXP;
Wishlist: string[];
diff --git a/static/webui/script.js b/static/webui/script.js
index bc1e8758..0090d427 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -109,10 +109,7 @@ window.itemListPromise = new Promise(resolve => {
items.forEach(item => {
if (item.uniqueName in data.badItems) {
item.name += " (Imposter)";
- } else if (
- item.uniqueName.substr(0, 18) != "/Lotus/Types/Game/" &&
- item.uniqueName.substr(0, 18) != "/Lotus/StoreItems/"
- ) {
+ } else if (item.uniqueName.substr(0, 18) != "/Lotus/Types/Game/") {
const option = document.createElement("option");
option.setAttribute("data-key", item.uniqueName);
option.value = item.name;
From f0bb281f550d5ba66bbd4fa5abeedbccb072643e Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 13:05:07 +0200
Subject: [PATCH 33/38] feat: implement incarnon genesis installation,
challenges & skill tree (#333)
---
src/controllers/api/evolveWeaponController.ts | 42 +++++++++++++++++++
.../api/setWeaponSkillTreeController.ts | 24 +++++++++++
src/controllers/api/upgradesController.ts | 8 ++--
src/models/inventoryModels/inventoryModel.ts | 14 ++++++-
src/routes/api.ts | 4 ++
src/services/inventoryService.ts | 16 +++++++
.../inventoryTypes/commonInventoryTypes.ts | 7 ++++
src/types/inventoryTypes/inventoryTypes.ts | 8 +++-
src/types/requestTypes.ts | 2 +
9 files changed, 118 insertions(+), 7 deletions(-)
create mode 100644 src/controllers/api/evolveWeaponController.ts
create mode 100644 src/controllers/api/setWeaponSkillTreeController.ts
diff --git a/src/controllers/api/evolveWeaponController.ts b/src/controllers/api/evolveWeaponController.ts
new file mode 100644
index 00000000..fea82844
--- /dev/null
+++ b/src/controllers/api/evolveWeaponController.ts
@@ -0,0 +1,42 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getInventory } from "@/src/services/inventoryService";
+import { getJSONfromString } from "@/src/helpers/stringHelpers";
+import { WeaponTypeInternal } from "@/src/services/itemDataService";
+import { EquipmentFeatures } from "@/src/types/inventoryTypes/commonInventoryTypes";
+
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
+export const evolveWeaponController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const inventory = await getInventory(accountId);
+ const payload = getJSONfromString(req.body.toString()) as IEvolveWeaponRequest;
+ console.assert(payload.Action == "EWA_INSTALL");
+
+ // TODO: We should remove the Genesis item & its resources, but currently we don't know these "recipes".
+
+ const item = inventory[payload.Category].find(item => item._id.toString() == (req.query.ItemId as string))!;
+ item.Features ??= 0;
+ item.Features |= EquipmentFeatures.INCARNON_GENESIS;
+
+ item.SkillTree = "0";
+
+ inventory.EvolutionProgress ??= [];
+ if (!inventory.EvolutionProgress.find(entry => entry.ItemType == payload.EvoType)) {
+ inventory.EvolutionProgress.push({
+ Progress: 0,
+ Rank: 1,
+ ItemType: payload.EvoType
+ });
+ }
+
+ await inventory.save();
+ res.end();
+};
+
+interface IEvolveWeaponRequest {
+ Action: "EWA_INSTALL";
+ Category: WeaponTypeInternal;
+ Recipe: string; // e.g. "/Lotus/Types/Items/MiscItems/IncarnonAdapters/UnlockerBlueprints/DespairIncarnonBlueprint"
+ UninstallRecipe: "";
+ EvoType: string; // e.g. "/Lotus/Weapons/Tenno/ThrowingWeapons/StalkerKunai"
+}
diff --git a/src/controllers/api/setWeaponSkillTreeController.ts b/src/controllers/api/setWeaponSkillTreeController.ts
new file mode 100644
index 00000000..b3b0be6f
--- /dev/null
+++ b/src/controllers/api/setWeaponSkillTreeController.ts
@@ -0,0 +1,24 @@
+import { RequestHandler } from "express";
+import { getAccountIdForRequest } from "@/src/services/loginService";
+import { getInventory } from "@/src/services/inventoryService";
+import { getJSONfromString } from "@/src/helpers/stringHelpers";
+import { WeaponTypeInternal } from "@/src/services/itemDataService";
+
+// eslint-disable-next-line @typescript-eslint/no-misused-promises
+export const setWeaponSkillTreeController: RequestHandler = async (req, res) => {
+ const accountId = await getAccountIdForRequest(req);
+ const inventory = await getInventory(accountId);
+ const payload = getJSONfromString(req.body.toString()) as ISetWeaponSkillTreeRequest;
+
+ const item = inventory[req.query.Category as WeaponTypeInternal].find(
+ item => item._id.toString() == (req.query.ItemId as string)
+ )!;
+ item.SkillTree = payload.SkillTree;
+
+ await inventory.save();
+ res.end();
+};
+
+interface ISetWeaponSkillTreeRequest {
+ SkillTree: string;
+}
diff --git a/src/controllers/api/upgradesController.ts b/src/controllers/api/upgradesController.ts
index e2f7f052..9d89da70 100644
--- a/src/controllers/api/upgradesController.ts
+++ b/src/controllers/api/upgradesController.ts
@@ -1,6 +1,6 @@
import { RequestHandler } from "express";
import { IUpgradesRequest } from "@/src/types/requestTypes";
-import { FocusSchool, IEquipmentDatabase } from "@/src/types/inventoryTypes/commonInventoryTypes";
+import { FocusSchool, IEquipmentDatabase, EquipmentFeatures } from "@/src/types/inventoryTypes/commonInventoryTypes";
import { IMiscItem, TEquipmentKey } from "@/src/types/inventoryTypes/inventoryTypes";
import { getAccountIdForRequest } from "@/src/services/loginService";
import { addMiscItems, getInventory, updateCurrency } from "@/src/services/inventoryService";
@@ -32,7 +32,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
- item.Features |= 1;
+ item.Features |= EquipmentFeatures.DOUBLE_CAPACITY;
break;
}
}
@@ -42,7 +42,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
- item.Features |= 2;
+ item.Features |= EquipmentFeatures.UTILITY_SLOT;
break;
}
}
@@ -53,7 +53,7 @@ export const upgradesController: RequestHandler = async (req, res) => {
for (const item of inventory[payload.ItemCategory as TEquipmentKey] as IEquipmentDatabase[]) {
if (item._id.toString() == payload.ItemId.$oid) {
item.Features ??= 0;
- item.Features |= 32;
+ item.Features |= EquipmentFeatures.ARCANE_SLOT;
break;
}
}
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index aed24800..4ef0d856 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -35,7 +35,8 @@ import {
ITauntHistory,
IPeriodicMissionCompletionDatabase,
IPeriodicMissionCompletionResponse,
- ILoreFragmentScan
+ ILoreFragmentScan,
+ IEvolutionProgress
} from "../../types/inventoryTypes/inventoryTypes";
import { IOid } from "../../types/commonTypes";
import {
@@ -562,6 +563,15 @@ const loreFragmentScansSchema = new Schema(
{ _id: false }
);
+const evolutionProgressSchema = new Schema(
+ {
+ Progress: Number,
+ Rank: Number,
+ ItemType: String
+ },
+ { _id: false }
+);
+
const inventorySchema = new Schema(
{
accountOwnerId: Schema.Types.ObjectId,
@@ -881,7 +891,7 @@ const inventorySchema = new Schema(
//Progress+Rank+ItemType(ZarimanPumpShotgun)
//https://warframe.fandom.com/wiki/Incarnon
- EvolutionProgress: [Schema.Types.Mixed],
+ EvolutionProgress: { type: [evolutionProgressSchema], default: undefined },
//Unknown and system
DuviriInfo: DuviriInfoSchema,
diff --git a/src/routes/api.ts b/src/routes/api.ts
index 15192fe8..bf7440de 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -7,6 +7,7 @@ import { createGuildController } from "@/src/controllers/api/createGuildControll
import { deleteSessionController } from "@/src/controllers/api/deleteSessionController";
import { dojoController } from "@/src/controllers/api/dojoController";
import { dronesController } from "@/src/controllers/api/dronesController";
+import { evolveWeaponController } from "@/src/controllers/api/evolveWeaponController";
import { findSessionsController } from "@/src/controllers/api/findSessionsController";
import { focusController } from "@/src/controllers/api/focusController";
import { genericUpdateController } from "@/src/controllers/api/genericUpdateController";
@@ -47,6 +48,7 @@ import { setActiveShipController } from "@/src/controllers/api/setActiveShipCont
import { setBootLocationController } from "@/src/controllers/api/setBootLocationController";
import { setShipCustomizationsController } from "@/src/controllers/api/setShipCustomizationsController";
import { setSupportedSyndicateController } from "@/src/controllers/api/setSupportedSyndicateController";
+import { setWeaponSkillTreeController } from "../controllers/api/setWeaponSkillTreeController";
import { shipDecorationsController } from "@/src/controllers/api/shipDecorationsController";
import { startDojoRecipeController } from "@/src/controllers/api/startDojoRecipeController";
import { startRecipeController } from "@/src/controllers/api/startRecipeController";
@@ -97,6 +99,7 @@ apiRouter.post("/addFriendImage.php", addFriendImageController);
apiRouter.post("/artifacts.php", artifactsController);
apiRouter.post("/claimCompletedRecipe.php", claimCompletedRecipeController);
apiRouter.post("/createGuild.php", createGuildController);
+apiRouter.post("/evolveWeapon.php", evolveWeaponController);
apiRouter.post("/findSessions.php", findSessionsController);
apiRouter.post("/focus.php", focusController);
apiRouter.post("/genericUpdate.php", genericUpdateController);
@@ -115,6 +118,7 @@ apiRouter.post("/rerollRandomMod.php", rerollRandomModController);
apiRouter.post("/saveLoadout.php", saveLoadoutController);
apiRouter.post("/sell.php", sellController);
apiRouter.post("/setShipCustomizations.php", setShipCustomizationsController);
+apiRouter.post("/setWeaponSkillTree.php", setWeaponSkillTreeController);
apiRouter.post("/shipDecorations.php", shipDecorationsController);
apiRouter.post("/startDojoRecipe.php", startDojoRecipeController);
apiRouter.post("/startRecipe.php", startRecipeController);
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index 36bda69e..b29a5241 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -629,6 +629,22 @@ export const missionInventoryUpdate = async (data: IMissionInventoryUpdateReques
// Gear XP
gearKeys.forEach(key => addGearExpByCategory(inventory, data[key], key));
+ // Incarnon Challenges
+ if (data.EvolutionProgress) {
+ for (const evoProgress of data.EvolutionProgress) {
+ const entry = inventory.EvolutionProgress
+ ? inventory.EvolutionProgress.find(entry => entry.ItemType == evoProgress.ItemType)
+ : undefined;
+ if (entry) {
+ entry.Progress = evoProgress.Progress;
+ entry.Rank = evoProgress.Rank;
+ } else {
+ inventory.EvolutionProgress ??= [];
+ inventory.EvolutionProgress.push(evoProgress);
+ }
+ }
+ }
+
// other
addMods(inventory, RawUpgrades);
addMiscItems(inventory, MiscItems);
diff --git a/src/types/inventoryTypes/commonInventoryTypes.ts b/src/types/inventoryTypes/commonInventoryTypes.ts
index aadc1b62..2c434311 100644
--- a/src/types/inventoryTypes/commonInventoryTypes.ts
+++ b/src/types/inventoryTypes/commonInventoryTypes.ts
@@ -82,6 +82,13 @@ export interface IEquipmentClient extends Omit {
ItemId: IOid;
}
+export enum EquipmentFeatures {
+ DOUBLE_CAPACITY = 1,
+ UTILITY_SLOT = 2,
+ ARCANE_SLOT = 32,
+ INCARNON_GENESIS = 512
+}
+
export interface IEquipmentDatabase {
ItemType: string;
ItemName?: string;
diff --git a/src/types/inventoryTypes/inventoryTypes.ts b/src/types/inventoryTypes/inventoryTypes.ts
index 1a201888..1555799b 100644
--- a/src/types/inventoryTypes/inventoryTypes.ts
+++ b/src/types/inventoryTypes/inventoryTypes.ts
@@ -246,7 +246,7 @@ export interface IInventoryResponse {
LastInventorySync: IOid;
NextRefill: IMongoDate;
ActiveLandscapeTraps: any[];
- EvolutionProgress: any[];
+ EvolutionProgress?: IEvolutionProgress[];
RepVotes: any[];
LeagueTickets: any[];
Quests: any[];
@@ -867,3 +867,9 @@ export interface IWebFlags {
Anniversary2021: boolean;
HitDownloadBtn: IMongoDate;
}
+
+export interface IEvolutionProgress {
+ Progress: number;
+ Rank: number;
+ ItemType: string;
+}
diff --git a/src/types/requestTypes.ts b/src/types/requestTypes.ts
index 6dc35b76..ce7ea1e0 100644
--- a/src/types/requestTypes.ts
+++ b/src/types/requestTypes.ts
@@ -5,6 +5,7 @@ import {
IChallengeProgress,
IConsumable,
ICrewShipSalvagedWeaponSkin,
+ IEvolutionProgress,
IMiscItem,
IMission,
IRawUpgrade,
@@ -53,6 +54,7 @@ export interface IMissionInventoryUpdateRequest {
RewardInfo?: IMissionInventoryUpdateRequestRewardInfo;
FusionPoints?: number;
Missions?: IMission;
+ EvolutionProgress?: IEvolutionProgress[];
}
export interface IMissionInventoryUpdateRequestRewardInfo {
From 7c47c9f1e42cff84156faa92c1aab86e35a7c2e8 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 13:29:48 +0200
Subject: [PATCH 34/38] fix: not being able to talk to Nakak in Cetus (#336)
---
.../api/getVendorInfoController.ts | 7 +
src/routes/api.ts | 2 +
static/fixed_responses/getVendorInfo.json | 301 ++++++++++++++++++
3 files changed, 310 insertions(+)
create mode 100644 src/controllers/api/getVendorInfoController.ts
create mode 100644 static/fixed_responses/getVendorInfo.json
diff --git a/src/controllers/api/getVendorInfoController.ts b/src/controllers/api/getVendorInfoController.ts
new file mode 100644
index 00000000..cd442318
--- /dev/null
+++ b/src/controllers/api/getVendorInfoController.ts
@@ -0,0 +1,7 @@
+import { RequestHandler } from "express";
+import getVendorInfoResponse from "@/static/fixed_responses/getVendorInfo.json";
+
+export const getVendorInfoController: RequestHandler = (req, res) => {
+ console.assert(req.query.vendor == "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest");
+ res.json(getVendorInfoResponse);
+};
diff --git a/src/routes/api.ts b/src/routes/api.ts
index bf7440de..8bdddd78 100644
--- a/src/routes/api.ts
+++ b/src/routes/api.ts
@@ -21,6 +21,7 @@ import { getGuildLogController } from "../controllers/api/getGuildLogController"
import { getIgnoredUsersController } from "@/src/controllers/api/getIgnoredUsersController";
import { getNewRewardSeedController } from "@/src/controllers/api/getNewRewardSeedController";
import { getShipController } from "@/src/controllers/api/getShipController";
+import { getVendorInfoController } from "@/src/controllers/api/getVendorInfoController";
import { guildTechController } from "../controllers/api/guildTechController";
import { hostSessionController } from "@/src/controllers/api/hostSessionController";
import { hubController } from "@/src/controllers/api/hubController";
@@ -77,6 +78,7 @@ apiRouter.get("/getGuildLog.php", getGuildLogController);
apiRouter.get("/getIgnoredUsers.php", getIgnoredUsersController);
apiRouter.get("/getNewRewardSeed.php", getNewRewardSeedController);
apiRouter.get("/getShip.php", getShipController);
+apiRouter.get("/getVendorInfo.php", getVendorInfoController);
apiRouter.get("/hub", hubController);
apiRouter.get("/hubInstances", hubInstancesController);
apiRouter.get("/inbox.php", inboxController);
diff --git a/static/fixed_responses/getVendorInfo.json b/static/fixed_responses/getVendorInfo.json
new file mode 100644
index 00000000..85aa7eac
--- /dev/null
+++ b/static/fixed_responses/getVendorInfo.json
@@ -0,0 +1,301 @@
+{
+ "VendorInfo": {
+ "_id": {
+ "$oid": "598a090d9a4a313746fd1f24"
+ },
+ "TypeName": "/Lotus/Types/Game/VendorManifests/Ostron/MaskSalesmanManifest",
+ "ItemManifest": [
+ {
+ "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/RevenantMask",
+ "ItemPrices": [
+ {
+ "ItemCount": 1,
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "63ed01ef4c37f93d0b797674"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumper",
+ "ItemPrices": [
+ {
+ "ItemCount": 2,
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
+ "ItemCount": 10,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/NistlebrushItem",
+ "ItemCount": 10,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
+ "ItemCount": 32,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "63ed01ef4c37f93d0b797675"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumperMedium",
+ "ItemPrices": [
+ {
+ "ItemCount": 4,
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonGemBCutAItem",
+ "ItemCount": 24,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishAPartItem",
+ "ItemCount": 18,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
+ "ItemCount": 27,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_1",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "63ed01ef4c37f93d0b797676"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Types/Items/ShipDecos/Plushies/PlushyThumperLarge",
+ "ItemPrices": [
+ {
+ "ItemCount": 6,
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/CetusWispItem",
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonGemACutAItem",
+ "ItemCount": 35,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothCommonFishAPartItem",
+ "ItemCount": 95,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/NistlebrushItem",
+ "ItemCount": 60,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "63ed01ef4c37f93d0b797677"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Types/Recipes/SynthicatorRecipes/FlareBlueBlueprint",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishBPartItem",
+ "ItemCount": 10,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishCPartItem",
+ "ItemCount": 10,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a1"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Types/Recipes/SynthicatorRecipes/FlareRedBlueprint",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
+ "ItemCount": 37,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/BothUncommonFishAPartItem",
+ "ItemCount": 7,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a2"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/VoltMask",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreBAlloyBItem",
+ "ItemCount": 34,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/GrokdrulItem",
+ "ItemCount": 17,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a3"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/MagMask",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishBPartItem",
+ "ItemCount": 16,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/ForestRodentPartItem",
+ "ItemCount": 5,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a4"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/ExcaliburMask",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/BirdOfPreyPartItem",
+ "ItemCount": 5,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Gameplay/Eidolon/Resources/GrokdrulItem",
+ "ItemCount": 20,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_0",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a5"
+ }
+ },
+ {
+ "StoreItem": "/Lotus/StoreItems/Upgrades/Skins/Ostron/GrineerMask",
+ "ItemPrices": [
+ {
+ "ItemType": "/Lotus/Types/Items/Fish/Eidolon/FishParts/DayCommonFishBPartItem",
+ "ItemCount": 20,
+ "ProductCategory": "MiscItems"
+ },
+ {
+ "ItemType": "/Lotus/Types/Items/Gems/Eidolon/CommonOreAAlloyAItem",
+ "ItemCount": 31,
+ "ProductCategory": "MiscItems"
+ }
+ ],
+ "Bin": "BIN_1",
+ "QuantityMultiplier": 1,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ },
+ "AllowMultipurchase": true,
+ "Id": {
+ "$oid": "6651291214e90115b91b50a6"
+ }
+ }
+ ],
+ "PropertyTextHash": "6AACA376DA34B35B5C16F1B40DBC017D",
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999000000"
+ }
+ }
+ }
+}
From 5597db67615e32d2852d70278d42fa34322f4178 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 16:35:24 +0200
Subject: [PATCH 35/38] fix: not being able to buy incarnon bundles (#337)
---
src/services/inventoryService.ts | 22 +++++++++--
src/services/purchaseService.ts | 66 +++++++++++++++++++++++++-------
src/types/purchaseTypes.ts | 20 +---------
3 files changed, 72 insertions(+), 36 deletions(-)
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index b29a5241..efd291cc 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -2,7 +2,7 @@ import { Inventory } from "@/src/models/inventoryModels/inventoryModel";
import new_inventory from "@/static/fixed_responses/postTutorialInventory.json";
import { config } from "@/src/services/configService";
import { Types } from "mongoose";
-import { SlotNames } from "@/src/types/purchaseTypes";
+import { SlotNames, IInventoryChanges } from "@/src/types/purchaseTypes";
import {
IChallengeProgress,
IConsumable,
@@ -26,7 +26,7 @@ import { logger } from "@/src/utils/logger";
import { WeaponTypeInternal, getWeaponType, getExalted } from "@/src/services/itemDataService";
import { ISyndicateSacrifice, ISyndicateSacrificeResponse } from "../types/syndicateTypes";
import { IEquipmentClient } from "../types/inventoryTypes/commonInventoryTypes";
-import { ExportRecipes } from "warframe-public-export-plus";
+import { ExportRecipes, ExportResources } from "warframe-public-export-plus";
export const createInventory = async (
accountOwnerId: Types.ObjectId,
@@ -70,7 +70,7 @@ export const addItem = async (
accountId: string,
typeName: string,
quantity: number = 1
-): Promise<{ InventoryChanges: object }> => {
+): Promise<{ InventoryChanges: IInventoryChanges }> => {
// Strict typing
if (typeName in ExportRecipes) {
const inventory = await getInventory(accountId);
@@ -88,6 +88,22 @@ export const addItem = async (
}
};
}
+ if (typeName in ExportResources) {
+ const inventory = await getInventory(accountId);
+ const miscItemChanges = [
+ {
+ ItemType: typeName,
+ ItemCount: quantity
+ } satisfies IMiscItem
+ ];
+ addMiscItems(inventory, miscItemChanges);
+ await inventory.save();
+ return {
+ InventoryChanges: {
+ MiscItems: miscItemChanges
+ }
+ };
+ }
// Path-based duck typing
switch (typeName.substr(1).split("/")[1]) {
diff --git a/src/services/purchaseService.ts b/src/services/purchaseService.ts
index 0f96055c..9fb4a675 100644
--- a/src/services/purchaseService.ts
+++ b/src/services/purchaseService.ts
@@ -1,7 +1,7 @@
import { parseSlotPurchaseName } from "@/src/helpers/purchaseHelpers";
import { getSubstringFromKeyword } from "@/src/helpers/stringHelpers";
import { addItem, addBooster, updateCurrency, updateSlots } from "@/src/services/inventoryService";
-import { IPurchaseRequest, SlotPurchase } from "@/src/types/purchaseTypes";
+import { IPurchaseRequest, SlotPurchase, IInventoryChanges, IBinChanges } from "@/src/types/purchaseTypes";
import { logger } from "@/src/utils/logger";
import { ExportBundles, TRarity } from "warframe-public-export-plus";
@@ -46,12 +46,37 @@ export const handlePurchase = async (purchaseRequest: IPurchaseRequest, accountI
return purchaseResponse;
};
+const addInventoryChanges = (InventoryChanges: IInventoryChanges, delta: IInventoryChanges): void => {
+ for (const key in delta) {
+ if (!(key in InventoryChanges)) {
+ InventoryChanges[key] = delta[key];
+ } else if (Array.isArray(delta[key])) {
+ const left = InventoryChanges[key] as object[];
+ const right = delta[key] as object[];
+ for (const item of right) {
+ left.push(item);
+ }
+ } else {
+ console.assert(key.substring(-3) == "Bin");
+ const left = InventoryChanges[key] as IBinChanges;
+ const right = delta[key] as IBinChanges;
+ left.count += right.count;
+ left.platinum += right.platinum;
+ left.Slots += right.Slots;
+ if (right.Extra) {
+ left.Extra ??= 0;
+ left.Extra += right.Extra;
+ }
+ }
+ }
+};
+
const handleStoreItemAcquisition = async (
storeItemName: string,
accountId: string,
quantity: number,
durability: TRarity
-): Promise<{ InventoryChanges: object }> => {
+): Promise<{ InventoryChanges: IInventoryChanges }> => {
let purchaseResponse = {
InventoryChanges: {}
};
@@ -60,15 +85,17 @@ const handleStoreItemAcquisition = async (
const bundle = ExportBundles[storeItemName];
logger.debug("acquiring bundle", bundle);
for (const component of bundle.components) {
- purchaseResponse = {
- ...purchaseResponse,
- ...(await handleStoreItemAcquisition(
- component.typeName,
- accountId,
- component.purchaseQuantity,
- component.durability
- ))
- };
+ addInventoryChanges(
+ purchaseResponse.InventoryChanges,
+ (
+ await handleStoreItemAcquisition(
+ component.typeName,
+ accountId,
+ component.purchaseQuantity,
+ component.durability
+ )
+ ).InventoryChanges
+ );
}
} else {
const storeCategory = getStoreItemCategory(storeItemName);
@@ -106,7 +133,10 @@ export const slotPurchaseNameToSlotName: SlotPurchase = {
// // new slot above base = extra + 1 and slots +1
// // new frame = slots -1
// // number of frames = extra - slots + 2
-const handleSlotPurchase = async (slotPurchaseNameFull: string, accountId: string) => {
+const handleSlotPurchase = async (
+ slotPurchaseNameFull: string,
+ accountId: string
+): Promise<{ InventoryChanges: IInventoryChanges }> => {
logger.debug(`slot name ${slotPurchaseNameFull}`);
const slotPurchaseName = parseSlotPurchaseName(
slotPurchaseNameFull.substring(slotPurchaseNameFull.lastIndexOf("/") + 1)
@@ -133,7 +163,11 @@ const handleSlotPurchase = async (slotPurchaseNameFull: string, accountId: strin
};
//TODO: change to getInventory, apply changes then save at the end
-const handleTypesPurchase = async (typesName: string, accountId: string, quantity: number) => {
+const handleTypesPurchase = async (
+ typesName: string,
+ accountId: string,
+ quantity: number
+): Promise<{ InventoryChanges: IInventoryChanges }> => {
const typeCategory = getStoreItemTypesCategory(typesName);
logger.debug(`type category ${typeCategory}`);
switch (typeCategory) {
@@ -158,7 +192,11 @@ const boosterDuration: Record = {
LEGENDARY: 90 * 86400
};
-const handleBoostersPurchase = async (boosterStoreName: string, accountId: string, durability: TRarity) => {
+const handleBoostersPurchase = async (
+ boosterStoreName: string,
+ accountId: string,
+ durability: TRarity
+): Promise<{ InventoryChanges: IInventoryChanges }> => {
const ItemType = boosterStoreName.replace("StoreItem", "");
if (!boosterCollection.find(x => x == ItemType)) {
logger.error(`unknown booster type: ${ItemType}`);
diff --git a/src/types/purchaseTypes.ts b/src/types/purchaseTypes.ts
index db143470..0d04114e 100644
--- a/src/types/purchaseTypes.ts
+++ b/src/types/purchaseTypes.ts
@@ -1,6 +1,3 @@
-import { IFlavourItem } from "@/src/types/inventoryTypes/inventoryTypes";
-import { IEquipmentClient } from "./inventoryTypes/commonInventoryTypes";
-
export interface IPurchaseRequest {
PurchaseParams: IPurchaseParams;
buildLabel: string;
@@ -17,22 +14,7 @@ export interface IPurchaseParams {
ExpectedPrice: number;
}
-export interface IPurchaseResponse {
- InventoryChanges: {
- SuitBin?: IBinChanges;
- WeaponBin?: IBinChanges;
- MechBin?: IBinChanges;
- MechSuits?: IEquipmentClient[];
- Suits?: IEquipmentClient[];
- LongGuns?: IEquipmentClient[];
- Pistols?: IEquipmentClient[];
- Melee?: IEquipmentClient[];
- PremiumCredits?: number;
- PremiumCreditsFree?: number;
- RegularCredits?: number;
- FlavourItems?: IFlavourItem[];
- };
-}
+export type IInventoryChanges = Record;
export type IBinChanges = {
count: number;
From c415fdd9ffe7d6ed046775aa80f1592fd5258b0c Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 21:22:01 +0200
Subject: [PATCH 36/38] feat(webui): acquiring gear items via "Add Items"
(#340)
---
.../custom/getItemListsController.ts | 18 +++++++++++++++---
static/webui/script.js | 11 ++++++-----
2 files changed, 21 insertions(+), 8 deletions(-)
diff --git a/src/controllers/custom/getItemListsController.ts b/src/controllers/custom/getItemListsController.ts
index 574ec8d7..1f9417bf 100644
--- a/src/controllers/custom/getItemListsController.ts
+++ b/src/controllers/custom/getItemListsController.ts
@@ -1,7 +1,13 @@
import { RequestHandler } from "express";
import { MinItem, items, getEnglishString } from "@/src/services/itemDataService";
import badItems from "@/static/json/exclude-mods.json";
-import { ExportArcanes, ExportResources, ExportWarframes, ExportWeapons } from "warframe-public-export-plus";
+import {
+ ExportArcanes,
+ ExportGear,
+ ExportResources,
+ ExportWarframes,
+ ExportWeapons
+} from "warframe-public-export-plus";
interface ListedItem {
uniqueName: string;
@@ -31,7 +37,7 @@ const getItemListsController: RequestHandler = (_req, res) => {
});
} else if (!item.excludeFromCodex) {
miscitems.push({
- uniqueName,
+ uniqueName: "MiscItems:" + uniqueName,
name: getEnglishString(item.name)
});
}
@@ -39,7 +45,13 @@ const getItemListsController: RequestHandler = (_req, res) => {
}
for (const [uniqueName, item] of Object.entries(ExportResources)) {
miscitems.push({
- uniqueName,
+ uniqueName: "MiscItems:" + uniqueName,
+ name: getEnglishString(item.name)
+ });
+ }
+ for (const [uniqueName, item] of Object.entries(ExportGear)) {
+ miscitems.push({
+ uniqueName: "Consumables:" + uniqueName,
name: getEnglishString(item.name)
});
}
diff --git a/static/webui/script.js b/static/webui/script.js
index 0090d427..f7d79962 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -512,17 +512,18 @@ function disposeOfItems(category, type, count) {
}
function doAcquireMiscItems() {
- const uniqueName = getKey(document.getElementById("miscitem-type"));
- if (!uniqueName) {
+ const data = getKey(document.getElementById("miscitem-type"));
+ if (!data) {
$("#miscitem-type").addClass("is-invalid").focus();
return;
}
+ const [category, uniqueName] = data.split(":");
revalidateAuthz(() => {
$.post({
url: "/api/missionInventoryUpdate.php?" + window.authz,
contentType: "text/plain",
data: JSON.stringify({
- MiscItems: [
+ [category]: [
{
ItemType: uniqueName,
ItemCount: parseInt($("#miscitem-count").val())
@@ -535,8 +536,8 @@ function doAcquireMiscItems() {
});
}
-$("#miscitem-name").on("input", () => {
- $("#miscitem-name").removeClass("is-invalid");
+$("#miscitem-type").on("input", () => {
+ $("#miscitem-type").removeClass("is-invalid");
});
function doAcquireRiven() {
From 8ee6f1a04b2d54c17fec7262f1e74a1a6ea9c647 Mon Sep 17 00:00:00 2001
From: Sainan
Date: Thu, 20 Jun 2024 22:27:32 +0200
Subject: [PATCH 37/38] feat: implement k-drive crafting (#339)
---
src/controllers/api/modularWeaponCraftingController.ts | 9 +++++----
src/models/inventoryModels/inventoryModel.ts | 1 +
src/services/inventoryService.ts | 2 +-
3 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/controllers/api/modularWeaponCraftingController.ts b/src/controllers/api/modularWeaponCraftingController.ts
index 09244764..91768e3a 100644
--- a/src/controllers/api/modularWeaponCraftingController.ts
+++ b/src/controllers/api/modularWeaponCraftingController.ts
@@ -4,13 +4,14 @@ import { getJSONfromString } from "@/src/helpers/stringHelpers";
import { WeaponTypeInternal } from "@/src/services/itemDataService";
import { getInventory, updateCurrency, addWeapon, addMiscItems } from "@/src/services/inventoryService";
-const modularWeaponTypes: Record = {
+const modularWeaponTypes: Record = {
"/Lotus/Weapons/SolarisUnited/Primary/LotusModularPrimaryBeam": "LongGuns",
"/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondary": "Pistols",
"/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryBeam": "Pistols",
"/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondaryShotgun": "Pistols",
"/Lotus/Weapons/Ostron/Melee/LotusModularWeapon": "Melee",
- "/Lotus/Weapons/Sentients/OperatorAmplifiers/OperatorAmpWeapon": "OperatorAmps"
+ "/Lotus/Weapons/Sentients/OperatorAmplifiers/OperatorAmpWeapon": "OperatorAmps",
+ "/Lotus/Types/Vehicles/Hoverboard/HoverboardSuit": "Hoverboards"
};
interface IModularCraftRequest {
@@ -30,8 +31,8 @@ export const modularWeaponCraftingController: RequestHandler = async (req, res)
// Give weapon
const weapon = await addWeapon(category, data.WeaponType, accountId, data.Parts);
- // Remove 4000 credits
- const currencyChanges = await updateCurrency(4000, false, accountId);
+ // Remove credits
+ const currencyChanges = await updateCurrency(category == "Hoverboards" ? 5000 : 4000, false, accountId);
// Remove parts
const miscItemChanges = [];
diff --git a/src/models/inventoryModels/inventoryModel.ts b/src/models/inventoryModels/inventoryModel.ts
index 4ef0d856..39a45024 100644
--- a/src/models/inventoryModels/inventoryModel.ts
+++ b/src/models/inventoryModels/inventoryModel.ts
@@ -975,6 +975,7 @@ type InventoryDocumentProps = {
SpaceGuns: Types.DocumentArray;
SpaceMelee: Types.DocumentArray;
SentinelWeapons: Types.DocumentArray;
+ Hoverboards: Types.DocumentArray;
};
// eslint-disable-next-line @typescript-eslint/ban-types
diff --git a/src/services/inventoryService.ts b/src/services/inventoryService.ts
index efd291cc..12e1fbca 100644
--- a/src/services/inventoryService.ts
+++ b/src/services/inventoryService.ts
@@ -425,7 +425,7 @@ export const syndicateSacrifice = async (
};
export const addWeapon = async (
- weaponType: WeaponTypeInternal,
+ weaponType: WeaponTypeInternal | "Hoverboards",
weaponName: string,
accountId: string,
modularParts: string[] | undefined = undefined
From 56f9be9725d09c93aa810182fcfe9556bc7750ab Mon Sep 17 00:00:00 2001
From: Sainan
Date: Fri, 21 Jun 2024 18:24:21 +0200
Subject: [PATCH 38/38] fix: view "Today's Special" (#342)
---
static/fixed_responses/modularWeaponSale.json | 66 ++++++++++++-------
1 file changed, 41 insertions(+), 25 deletions(-)
diff --git a/static/fixed_responses/modularWeaponSale.json b/static/fixed_responses/modularWeaponSale.json
index d6033439..6d5bd172 100644
--- a/static/fixed_responses/modularWeaponSale.json
+++ b/static/fixed_responses/modularWeaponSale.json
@@ -2,66 +2,82 @@
"SaleInfos": [
{
"Name": "Ostron",
- "Expiry": { "$date": { "$numberLong": "1683586800000" } },
- "Revision": 3045,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999900000"
+ }
+ },
+ "Revision": 3453,
"Weapons": [
{
"ItemType": "/Lotus/Weapons/Ostron/Melee/LotusModularWeapon",
- "PremiumPrice": 171,
+ "PremiumPrice": 162,
"ModularParts": [
"/Lotus/Weapons/Ostron/Melee/ModularMelee01/Handle/HandleFive",
- "/Lotus/Weapons/Ostron/Melee/ModularMelee01/Tip/TipSix",
- "/Lotus/Weapons/Ostron/Melee/ModularMelee01/Balance/BalanceDamageICritII"
+ "/Lotus/Weapons/Ostron/Melee/ModularMelee01/Tip/TipFour",
+ "/Lotus/Weapons/Ostron/Melee/ModularMelee01/Balance/BalanceSpeedICritII"
]
}
]
},
{
"Name": "SolarisUnitedHoverboard",
- "Expiry": { "$date": { "$numberLong": "1683586800000" } },
- "Revision": 1650,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999900000"
+ }
+ },
+ "Revision": 2058,
"Weapons": [
{
"ItemType": "/Lotus/Types/Vehicles/Hoverboard/HoverboardSuit",
"PremiumPrice": 51,
"ModularParts": [
- "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusC/HoverboardCorpusCDeck",
- "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusC/HoverboardCorpusCEngine",
- "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusB/HoverboardCorpusBFront",
- "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusC/HoverboardCorpusCJet"
+ "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardSolarisA/HoverboardSolarisADeck",
+ "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusA/HoverboardCorpusAEngine",
+ "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardSolarisA/HoverboardSolarisAFront",
+ "/Lotus/Types/Vehicles/Hoverboard/HoverboardParts/PartComponents/HoverboardCorpusB/HoverboardCorpusBJet"
]
}
]
},
{
"Name": "SolarisUnitedMoaPet",
- "Expiry": { "$date": { "$numberLong": "1683586800000" } },
- "Revision": 1650,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999900000"
+ }
+ },
+ "Revision": 2058,
"Weapons": [
{
"ItemType": "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetPowerSuit",
- "PremiumPrice": 175,
+ "PremiumPrice": 180,
"ModularParts": [
- "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetLegC",
- "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetHeadOloro",
- "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetEngineKrisys",
- "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetPayloadThermocor"
+ "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetLegB",
+ "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetHeadPara",
+ "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetEngineArcotek",
+ "/Lotus/Types/Friendly/Pets/MoaPets/MoaPetParts/MoaPetPayloadMunitron"
]
}
]
},
{
"Name": "SolarisUnitedKitGun",
- "Expiry": { "$date": { "$numberLong": "1683586800000" } },
- "Revision": 1650,
+ "Expiry": {
+ "$date": {
+ "$numberLong": "9999999900000"
+ }
+ },
+ "Revision": 2058,
"Weapons": [
{
- "ItemType": "/Lotus/Weapons/SolarisUnited/Primary/LotusModularPrimaryBeam",
- "PremiumPrice": 157,
+ "ItemType": "/Lotus/Weapons/SolarisUnited/Secondary/LotusModularSecondary",
+ "PremiumPrice": 184,
"ModularParts": [
- "/Lotus/Weapons/SolarisUnited/Primary/SUModularPrimarySet1/Handles/SUModularPrimaryHandleAPart",
- "/Lotus/Weapons/SolarisUnited/Secondary/SUModularSecondarySet1/Barrel/SUModularSecondaryBarrelDPart",
- "/Lotus/Weapons/SolarisUnited/Secondary/SUModularSecondarySet1/Clip/SUModularCritIReloadIIClipPart"
+ "/Lotus/Weapons/SolarisUnited/Secondary/SUModularSecondarySet1/Handle/SUModularSecondaryHandleCPart",
+ "/Lotus/Weapons/SolarisUnited/Secondary/SUModularSecondarySet1/Barrel/SUModularSecondaryBarrelBPart",
+ "/Lotus/Weapons/SolarisUnited/Secondary/SUModularSecondarySet1/Clip/SUModularStatIReloadIIClipPart"
]
}
]