mirror of
https://github.com/ppy/osu.git
synced 2025-03-14 05:47:20 +08:00
added acc bonus for low AR
and slight balancing
This commit is contained in:
parent
ab47d39d0d
commit
333bfd2490
@ -24,7 +24,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
{
|
||||
public const double DIFFICULTY_MULTIPLIER = 0.067;
|
||||
public const double SUM_POWER = 1.1;
|
||||
public const double FL_SUM_POWER = 1.6;
|
||||
public const double FL_SUM_POWER = 1.4;
|
||||
public override int Version => 20220902;
|
||||
|
||||
public OsuDifficultyCalculator(IRulesetInfo ruleset, IWorkingBeatmap beatmap)
|
||||
|
@ -221,9 +221,15 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
if (score.Mods.Any(m => m is OsuModBlinds))
|
||||
accuracyValue *= 1.14;
|
||||
|
||||
// It's stupid so i removed it, it's better just to increase FL coef
|
||||
//if (score.Mods.Any(m => m is OsuModFlashlight))
|
||||
// accuracyValue *= 1.02;
|
||||
if (score.Mods.Any(m => m is OsuModFlashlight))
|
||||
accuracyValue *= 1.02;
|
||||
|
||||
// Visual indication bonus
|
||||
double visualIndicationBonus = 1.0 + 0.1 * logistic((8.0 - attributes.ApproachRate) / 6);
|
||||
|
||||
accuracyValue *= visualIndicationBonus;
|
||||
if (score.Mods.Any(h => h is OsuModHidden))
|
||||
accuracyValue *= visualIndicationBonus;
|
||||
|
||||
return accuracyValue;
|
||||
}
|
||||
@ -397,5 +403,6 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
}
|
||||
|
||||
private static double softmin(double a, double b, double power = Math.E) => a * b / Math.Log(Math.Pow(power, a) + Math.Pow(power, b), power);
|
||||
private static double logistic(double x) => 1 / (1 + Math.Exp(-x));
|
||||
}
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
hasHiddenMod = mods.Any(m => m is OsuModHidden);
|
||||
}
|
||||
|
||||
private double skillMultiplier => 0.052;
|
||||
private double skillMultiplier => 0.054;
|
||||
private double strainDecayBase => 0.15;
|
||||
|
||||
private double currentStrain;
|
||||
|
@ -16,7 +16,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
public class ReadingLowAR : GraphSkill
|
||||
{
|
||||
private readonly List<double> difficulties = new List<double>();
|
||||
private double skillMultiplier => 1.1;
|
||||
private double skillMultiplier => 1.08;
|
||||
private double aimComponentMultiplier => 0.7;
|
||||
|
||||
public ReadingLowAR(Mod[] mods)
|
||||
@ -95,7 +95,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
}
|
||||
|
||||
private double currentStrain;
|
||||
private double skillMultiplier => 5;
|
||||
private double skillMultiplier => 4.9;
|
||||
|
||||
protected override double CalculateInitialStrain(double time, DifficultyHitObject current) => currentStrain * StrainDecay(time - current.Previous(0).StartTime);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user