mirror of
https://github.com/ppy/osu.git
synced 2026-05-18 12:00:22 +08:00
Make reading and flashlight pp to be LP summed (#36464)
Right now they're summed normally what opens a problem that FL rewards too much pp when combined with reading map, since you're memorizing FL anyway. Co-authored-by: James Wilson <tsunyoku@gmail.com>
This commit is contained in:
committed by
GitHub
Unverified
parent
ae43d3e3b1
commit
ea87e82a91
@@ -110,8 +110,9 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
double baseSpeedPerformance = HarmonicSkill.DifficultyToPerformance(speedRating);
|
||||
double baseReadingPerformance = HarmonicSkill.DifficultyToPerformance(readingRating);
|
||||
double baseFlashlightPerformance = Flashlight.DifficultyToPerformance(flashlightRating);
|
||||
double baseCognitionPerformance = DifficultyCalculationUtils.Norm(2, baseReadingPerformance, baseFlashlightPerformance);
|
||||
|
||||
double basePerformance = DifficultyCalculationUtils.Norm(OsuPerformanceCalculator.PERFORMANCE_NORM_EXPONENT, baseAimPerformance, baseSpeedPerformance, baseReadingPerformance, baseFlashlightPerformance);
|
||||
double basePerformance = DifficultyCalculationUtils.Norm(OsuPerformanceCalculator.PERFORMANCE_NORM_EXPONENT, baseAimPerformance, baseSpeedPerformance, baseCognitionPerformance);
|
||||
|
||||
double starRating = calculateStarRating(basePerformance);
|
||||
|
||||
|
||||
@@ -145,10 +145,12 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
||||
double aimValue = computeAimValue(score, osuAttributes);
|
||||
double speedValue = computeSpeedValue(score, osuAttributes);
|
||||
double accuracyValue = computeAccuracyValue(score, osuAttributes);
|
||||
double flashlightValue = computeFlashlightValue(score, osuAttributes);
|
||||
double readingValue = computeReadingValue(osuAttributes);
|
||||
|
||||
double totalValue = DifficultyCalculationUtils.Norm(PERFORMANCE_NORM_EXPONENT, aimValue, speedValue, accuracyValue, readingValue, flashlightValue) * multiplier;
|
||||
double readingValue = computeReadingValue(osuAttributes);
|
||||
double flashlightValue = computeFlashlightValue(score, osuAttributes);
|
||||
double cognitionValue = DifficultyCalculationUtils.Norm(2, readingValue, flashlightValue);
|
||||
|
||||
double totalValue = DifficultyCalculationUtils.Norm(PERFORMANCE_NORM_EXPONENT, aimValue, speedValue, accuracyValue, cognitionValue) * multiplier;
|
||||
|
||||
return new OsuPerformanceAttributes
|
||||
{
|
||||
|
||||
@@ -20,7 +20,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty.Skills
|
||||
{
|
||||
}
|
||||
|
||||
private double skillMultiplier => 0.05512;
|
||||
private double skillMultiplier => 0.056;
|
||||
private double strainDecayBase => 0.15;
|
||||
|
||||
private double currentStrain;
|
||||
|
||||
Reference in New Issue
Block a user