From 46bb1cd8e8f89ded5953dcb6db2941a34eec93ad Mon Sep 17 00:00:00 2001 From: FatBoy-DOTC Date: Sun, 30 Jul 2023 14:05:28 -0500 Subject: [PATCH] tweak roll ranges, fix r8 loot bug --- src/engine/devcmd/cmds/simulateBootyCmd.java | 11 +++++++---- src/engine/loot/LootManager.java | 5 +++-- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/engine/devcmd/cmds/simulateBootyCmd.java b/src/engine/devcmd/cmds/simulateBootyCmd.java index e946c3a6..ac51788e 100644 --- a/src/engine/devcmd/cmds/simulateBootyCmd.java +++ b/src/engine/devcmd/cmds/simulateBootyCmd.java @@ -68,9 +68,12 @@ public class simulateBootyCmd extends AbstractDevCmd { case Mob: Mob mob = (Mob) target; output += "Name: " + mob.getName() + newline; - int minRollRange = mob.getLevel() + 0 + mob.getParentZone().minLvl; - int maxRollRange = (mob.getLevel() * 2) + 120 + (mob.getParentZone().maxLvl * 2); - output += "Roll Range: " + minRollRange + " - " + maxRollRange + newline; + int max = (int)(4.882 * mob.level + 127.0); + if(max > 320){ + max = 320; + } + int min = (int)(4.469 * mob.level - 3.469); + output += "Roll Range: " + min + " - " + max + newline; output += "Special Loot:" + newline; if (mob.bootySet != 0) { for (BootySetEntry entry : NPCManager._bootySetMap.get(mob.bootySet)) { @@ -87,7 +90,7 @@ public class simulateBootyCmd extends AbstractDevCmd { ArrayList Offerings = new ArrayList(); ArrayList OtherDrops = new ArrayList(); int failures = 0; - for (int i = 0; i < 1; ++i) { + for (int i = 0; i < 100; ++i) { try { mob.loadInventory(); diff --git a/src/engine/loot/LootManager.java b/src/engine/loot/LootManager.java index 04cef78b..40e9c3ca 100644 --- a/src/engine/loot/LootManager.java +++ b/src/engine/loot/LootManager.java @@ -175,7 +175,7 @@ public class LootManager { if(mobLevel > 65){ mobLevel = 65; } - int max = (int)(4.882 * mobLevel + 121.0); + int max = (int)(5.882 * mobLevel + 127.0); if(max > 320){ max = 320; } @@ -235,7 +235,8 @@ public class LootManager { } } public static void RollForGlass(Mob mob){ - if (ThreadLocalRandom.current().nextInt(101) > 99) { + int glassRoll = ThreadLocalRandom.current().nextInt(100) + 1; + if (glassRoll >= 99 - mob.getRank()){ int roll2 = TableRoll(mob.level); if (itemTables.get(126).getRowForRange(roll2) == null) { return;