From a421bd7e4c4a2080172bc9dd4273629bc441b101 Mon Sep 17 00:00:00 2001 From: nossr50 Date: Fri, 25 Jan 2019 01:36:14 -0800 Subject: [PATCH] Fixing the RNG display calculations for RetroMode I temporarily disabled the output for graceful roll in the stats, will be turning that on again in the morning. --- .../nossr50/commands/skills/AcrobaticsCommand.java | 10 ++++++---- .../java/com/gmail/nossr50/config/AdvancedConfig.java | 4 ++-- .../gmail/nossr50/util/random/RandomChanceUtil.java | 6 +++--- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java b/src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java index 82ffa5cb9..016da4ac1 100644 --- a/src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java +++ b/src/main/java/com/gmail/nossr50/commands/skills/AcrobaticsCommand.java @@ -71,15 +71,17 @@ public class AcrobaticsCommand extends SkillCommand { graceChance = RandomChanceUtil.getRandomChanceExecutionChance(grace_rcs); //damageThreshold = AdvancedConfig.getInstance().getRollDamageThreshold(); + String rollStrings[] = getAbilityDisplayValues(SkillActivationType.RANDOM_LINEAR_100_SCALE_WITH_CAP, player, SubSkillType.MINING_DOUBLE_DROPS); + //Format double rollChanceLucky = rollChance * 1.333D; double graceChanceLucky = graceChance * 1.333D; - messages.add(getStatMessage(SubSkillType.ACROBATICS_ROLL, String.valueOf(rollChance)) - + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", String.valueOf(rollChanceLucky)) : "")); + messages.add(getStatMessage(SubSkillType.ACROBATICS_ROLL, rollStrings[0]) + + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", rollStrings[1]) : "")); - messages.add(getStatMessage(true, false, SubSkillType.ACROBATICS_ROLL, String.valueOf(graceChance)) - + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", String.valueOf(graceChanceLucky)) : "")); + /*messages.add(getStatMessage(true, false, SubSkillType.ACROBATICS_ROLL, String.valueOf(graceChance)) + + (isLucky ? LocaleLoader.getString("Perks.Lucky.Bonus", String.valueOf(graceChanceLucky)) : ""));*/ } } diff --git a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java index 8fad0958d..ab48994f9 100644 --- a/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java +++ b/src/main/java/com/gmail/nossr50/config/AdvancedConfig.java @@ -720,8 +720,8 @@ public class AdvancedConfig extends AutoUpdateConfigLoader { public double getMaximumProbability(SubSkillType subSkillType) { double maximumProbability = config.getDouble(subSkillType.getAdvConfigAddress() + ".ChanceMax", 100.0D); - if(mcMMO.isRetroModeEnabled()) - maximumProbability *= 10; // It seems weird but our formulas need this + /*if(mcMMO.isRetroModeEnabled()) + maximumProbability *= 10; // It seems weird but our formulas need this*/ return maximumProbability; } diff --git a/src/main/java/com/gmail/nossr50/util/random/RandomChanceUtil.java b/src/main/java/com/gmail/nossr50/util/random/RandomChanceUtil.java index 21ffe64a4..dac472ae9 100644 --- a/src/main/java/com/gmail/nossr50/util/random/RandomChanceUtil.java +++ b/src/main/java/com/gmail/nossr50/util/random/RandomChanceUtil.java @@ -154,10 +154,10 @@ public class RandomChanceUtil * * @return the chance of success from 0-100 (100 = guaranteed) */ - private static int getChanceOfSuccess(double x, double y, double z) + private static int getChanceOfSuccess(double skillLevel, double maxProbability, double maxLevel) { //return (int) (x / (y / LINEAR_CURVE_VAR)); - return (int) (y * (x/z)); + return (int) (maxProbability * (skillLevel/maxLevel)); // max probability * (weight/maxlevel) = chance of success } @@ -170,7 +170,7 @@ public class RandomChanceUtil public static double getRandomChanceExecutionSuccess(Player player, SubSkillType subSkillType, boolean hasCap) { RandomChanceSkill rcs = new RandomChanceSkill(player, subSkillType, hasCap); - return getRandomChanceExecutionChance(rcs); + return calculateChanceOfSuccess(rcs); } public static double getRandomStaticChanceExecutionSuccess(Player player, SubSkillType subSkillType)