From d970ce9574803f005528d80684cdc39fc6a32ce8 Mon Sep 17 00:00:00 2001 From: VoltPrime Date: Mon, 17 Nov 2025 07:13:13 -0500 Subject: [PATCH] Ensure unique ID for attached upgrades in U7-U8 --- src/controllers/api/upgradesController.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/controllers/api/upgradesController.ts b/src/controllers/api/upgradesController.ts index 8531c7e9..568a7cf4 100644 --- a/src/controllers/api/upgradesController.ts +++ b/src/controllers/api/upgradesController.ts @@ -107,10 +107,11 @@ export const upgradesController: RequestHandler = async (req, res) => { // Handle swapping mod to a different slot arr[arr.indexOf(upgrade.ItemId.$id)] = ""; } - arr[upgrade.Slot - 1] = upgrade.ItemId.$id; // We need to convert RawUpgrade into Upgrade once it's attached const rawUpgrade = inventory.RawUpgrades.find(x => x.ItemType == upgrade.ItemType); if (rawUpgrade) { + const newId = new Types.ObjectId().toString(); + arr[upgrade.Slot - 1] = newId; addMods(inventory, [ { ItemType: upgrade.ItemType, @@ -120,8 +121,10 @@ export const upgradesController: RequestHandler = async (req, res) => { inventory.Upgrades.push({ UpgradeFingerprint: `{"lvl":0}`, ItemType: upgrade.ItemType, - _id: upgrade.ItemId.$id + _id: newId }); + } else { + arr[upgrade.Slot - 1] = upgrade.ItemId.$id; } } });