mirror of
https://github.com/ppy/osu.git
synced 2026-05-26 08:10:35 +08:00
Adjust speed deviation scaling to be more harsh on low end (#36554)
This should buff raw speed plays like Ivaxa Violation, at the same time undoing part of the buff on the lower end scores like Save Me NM Moved part of the multiplier out of the Pow to be more intuitive (it multiplies the 20 by Pow(difficulty/4), so it's more clear that it would be equal to 1 on difficulty = 4) The scaling itself was adjusted to be more similar to live (so buffs/nerfs on 98% acc remains +- the same through the difficulty curve)
This commit is contained in:
committed by
GitHub
Unverified
parent
8be9317475
commit
e9974ba43d
@@ -256,8 +256,8 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
speedValue *= speedHighDeviationMultiplier;
|
||||
|
||||
// An effective hit window is created based on the speed SR. The higher the speed difficulty, the shorter the hit window.
|
||||
// For example, a speed SR of 3.0 leads to an effective hit window of 20ms, which is OD 10.
|
||||
double effectiveHitWindow = Math.Sqrt(30 * 60 / attributes.SpeedDifficulty);
|
||||
// For example, a speed SR of 4.0 leads to an effective hit window of 20ms, which is OD 10.
|
||||
double effectiveHitWindow = 20 * Math.Pow(4 / attributes.SpeedDifficulty, 0.35);
|
||||
|
||||
// Find the proportion of 300s on speed notes assuming the hit window was the effective hit window.
|
||||
double effectiveAccuracy = DifficultyCalculationUtils.Erf(effectiveHitWindow / (double)speedDeviation);
|
||||
|
||||
Reference in New Issue
Block a user