mirror of
https://github.com/ppy/osu.git
synced 2026-05-27 03:39:53 +08:00
Move TD difficulty reduction to Aim (#36476)
This commit is contained in:
@@ -31,9 +31,6 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
|
||||
double aimRating = CalculateDifficultyRating(aimDifficultyValue);
|
||||
|
||||
if (mods.Any(m => m is OsuModTouchDevice))
|
||||
aimRating = Math.Pow(aimRating, 0.8);
|
||||
|
||||
if (mods.Any(m => m is OsuModRelax))
|
||||
aimRating *= 0.9;
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ using osu.Game.Rulesets.Mods;
|
||||
using osu.Game.Rulesets.Osu.Difficulty.Evaluators;
|
||||
using osu.Game.Rulesets.Osu.Difficulty.Preprocessing;
|
||||
using osu.Game.Rulesets.Osu.Difficulty.Utils;
|
||||
using osu.Game.Rulesets.Osu.Mods;
|
||||
using osu.Game.Rulesets.Osu.Objects;
|
||||
|
||||
namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
@@ -50,11 +51,20 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
double decayAim = strainDecayAim(((OsuDifficultyHitObject)current).AdjustedDeltaTime);
|
||||
double decaySpeed = strainDecaySpeed(((OsuDifficultyHitObject)current).AdjustedDeltaTime);
|
||||
|
||||
double aimDifficulty = AimEvaluator.EvaluateDifficultyOf(current, IncludeSliders);
|
||||
double speedDifficulty = SpeedAimEvaluator.EvaluateDifficultyOf(current);
|
||||
|
||||
if (Mods.Any(m => m is OsuModTouchDevice))
|
||||
{
|
||||
aimDifficulty = Math.Pow(aimDifficulty, 0.8);
|
||||
speedDifficulty = Math.Pow(speedDifficulty, 0.95);
|
||||
}
|
||||
|
||||
currentAimStrain *= decayAim;
|
||||
currentAimStrain += AimEvaluator.EvaluateDifficultyOf(current, IncludeSliders) * (1 - decayAim) * skillMultiplierAim;
|
||||
currentAimStrain += aimDifficulty * (1 - decayAim) * skillMultiplierAim;
|
||||
|
||||
currentSpeedStrain *= decaySpeed;
|
||||
currentSpeedStrain += SpeedAimEvaluator.EvaluateDifficultyOf(current) * (1 - decaySpeed) * skillMultiplierSpeed;
|
||||
currentSpeedStrain += speedDifficulty * (1 - decaySpeed) * skillMultiplierSpeed;
|
||||
|
||||
double totalStrain = DifficultyCalculationUtils.Norm(meanExponent, currentAimStrain, currentSpeedStrain);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user