From 6cccaa79de7ef1c31130c358e76f58af3f2767bc Mon Sep 17 00:00:00 2001 From: Tooze Date: Mon, 6 Jul 2026 13:15:21 +0000 Subject: [PATCH] Improved combat level brackets for hostile random events --- Server/src/main/content/global/ame/RandomEventNPC.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Server/src/main/content/global/ame/RandomEventNPC.kt b/Server/src/main/content/global/ame/RandomEventNPC.kt index b4da55bb3..e31b5f36d 100644 --- a/Server/src/main/content/global/ame/RandomEventNPC.kt +++ b/Server/src/main/content/global/ame/RandomEventNPC.kt @@ -39,6 +39,7 @@ abstract class RandomEventNPC(id: Int) : NPC(id) { var finalized = false var timerPaused = false var ticksLeft = secondsToTicks(180) + private val combatBracket = intArrayOf(10, 20, 40, 60, 90) open fun create(player: Player, loot: WeightBasedTable? = null, type: String = ""): RandomEventNPC { val event = this::class.createInstance() @@ -144,7 +145,7 @@ abstract class RandomEventNPC(id: Int) : NPC(id) { } fun idForCombatLevel(ids: List, player: Player): Int { - val index = min(ids.size, ceil(player.properties.currentCombatLevel / 20.0).toInt()) - 1 + val index = combatBracket.indexOfFirst { player.properties.currentCombatLevel <= it }.takeIf { it != -1 }?: ids.lastIndex return ids[index] }