From 14a4a3ba532db92218265df4cc905b0293b990ce Mon Sep 17 00:00:00 2001 From: SwiftXP <230956466+swiftxp-hub@users.noreply.github.com> Date: Mon, 10 Nov 2025 22:41:53 +0100 Subject: [PATCH 1/3] Only integers were used for the calculation for keys, which meant that only 1 or 0 could be the result. At least one value must be a double for the calculation to result in a double. --- Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs index a30409f0..27cce0d6 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs @@ -616,8 +616,8 @@ public class ItemHelper( else if (item.Upd.Key?.NumberOfUsages > 0 && itemDetails.Properties?.MaximumNumberOfUsage > 0) { // keys - keys count upwards, not down like everything else - var maxNumOfUsages = itemDetails.Properties.MaximumNumberOfUsage; - result = (maxNumOfUsages ?? 0 - item.Upd.Key.NumberOfUsages) / maxNumOfUsages ?? 0; + var maxNumOfUsages = itemDetails.Properties.MaximumNumberOfUsage ?? 0d; + result = (maxNumOfUsages - item.Upd.Key.NumberOfUsages) / maxNumOfUsages ?? 0; } else if (item.Upd.Resource?.UnitsConsumed > 0) // Item is less than 100% usage { From 964aad016bfb68e2c262ea019f69936a16ff2a41 Mon Sep 17 00:00:00 2001 From: SwiftXP <230956466+swiftxp-hub@users.noreply.github.com> Date: Mon, 10 Nov 2025 23:36:36 +0100 Subject: [PATCH 2/3] Little code refactorings. --- Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs b/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs index 27cce0d6..a18c9e68 100644 --- a/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs +++ b/Libraries/SPTarkov.Server.Core/Helpers/ItemHelper.cs @@ -616,8 +616,8 @@ public class ItemHelper( else if (item.Upd.Key?.NumberOfUsages > 0 && itemDetails.Properties?.MaximumNumberOfUsage > 0) { // keys - keys count upwards, not down like everything else - var maxNumOfUsages = itemDetails.Properties.MaximumNumberOfUsage ?? 0d; - result = (maxNumOfUsages - item.Upd.Key.NumberOfUsages) / maxNumOfUsages ?? 0; + double maxNumOfUsages = itemDetails.Properties.MaximumNumberOfUsage.GetValueOrDefault(0); + result = (maxNumOfUsages - item.Upd.Key.NumberOfUsages!.Value) / maxNumOfUsages; } else if (item.Upd.Resource?.UnitsConsumed > 0) // Item is less than 100% usage { From 1356f1fa6040e4a40fbf20bebb96788b71c0700b Mon Sep 17 00:00:00 2001 From: SwiftXP <230956466+swiftxp-hub@users.noreply.github.com> Date: Mon, 10 Nov 2025 23:54:24 +0100 Subject: [PATCH 3/3] Forgot csharpier. --- Build.props | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Build.props b/Build.props index 758a093c..8fedd051 100644 --- a/Build.props +++ b/Build.props @@ -5,9 +5,7 @@ a12b34 0000000000 LOCAL - - - + $(SptVersion)-$(SptBuildType)+$(SptCommit).$(SptBuildTime) $(SptVersion) $(SptVersion)