From 3d1f757d1e7a15b7331a85ee663594c7a6093b90 Mon Sep 17 00:00:00 2001 From: Archangel Date: Mon, 13 Oct 2025 15:19:49 +0200 Subject: [PATCH] Fix index going out of range on probability object array --- .../Utils/Collections/ProbabilityObjectArray.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Libraries/SPTarkov.Server.Core/Utils/Collections/ProbabilityObjectArray.cs b/Libraries/SPTarkov.Server.Core/Utils/Collections/ProbabilityObjectArray.cs index 670de92c..3ef05bfe 100644 --- a/Libraries/SPTarkov.Server.Core/Utils/Collections/ProbabilityObjectArray.cs +++ b/Libraries/SPTarkov.Server.Core/Utils/Collections/ProbabilityObjectArray.cs @@ -159,7 +159,13 @@ public class ProbabilityObjectArray : List> for (var i = 0; i < itemCountToDraw; i++) { var rand = Random.Shared.NextDouble(); - var randomIndex = cumulativeProbabilities.FindIndex(probability => probability > rand); + var randomIndex = cumulativeProbabilities.FindIndex(probability => probability >= rand); + + if (randomIndex == -1) + { + continue; + } + results.Add(this[randomIndex].Key); }