diff --git a/osu.Game/Database/StandardisedScoreMigrationTools.cs b/osu.Game/Database/StandardisedScoreMigrationTools.cs index c38dd0e9cf..dfc2f8fb62 100644 --- a/osu.Game/Database/StandardisedScoreMigrationTools.cs +++ b/osu.Game/Database/StandardisedScoreMigrationTools.cs @@ -316,11 +316,11 @@ namespace osu.Game.Database 1.2 * (newLowerStrippedV3 + newUpperStrippedV3) / 2 ); - double newComboScoreProportion = (strippedV3 / maxStrippedV3) * score.Accuracy; + double newComboScoreProportion = (strippedV3 / maxStrippedV3); return (long)Math.Round(( - 700000 * newComboScoreProportion * score.Accuracy - + 300000 * Math.Pow(score.Accuracy, 8) + 500000 * newComboScoreProportion * score.Accuracy + + 500000 * Math.Pow(score.Accuracy, 5) + bonusProportion) * modMultiplier); case 1: diff --git a/osu.Game/Rulesets/Scoring/ScoreProcessor.cs b/osu.Game/Rulesets/Scoring/ScoreProcessor.cs index 514630b351..adf8e318d3 100644 --- a/osu.Game/Rulesets/Scoring/ScoreProcessor.cs +++ b/osu.Game/Rulesets/Scoring/ScoreProcessor.cs @@ -301,7 +301,7 @@ namespace osu.Game.Rulesets.Scoring protected virtual double GetBonusScoreChange(JudgementResult result) => Judgement.ToNumericResult(result.Type); - protected virtual double GetComboScoreChange(JudgementResult result) => Judgement.ToNumericResult(result.Type) * Math.Pow(result.ComboAfterJudgement, COMBO_EXPONENT); + protected virtual double GetComboScoreChange(JudgementResult result) => Judgement.ToNumericResult(result.Judgement.MaxResult) * Math.Pow(result.ComboAfterJudgement, COMBO_EXPONENT); protected virtual void ApplyScoreChange(JudgementResult result) { @@ -325,8 +325,8 @@ namespace osu.Game.Rulesets.Scoring protected virtual double ComputeTotalScore(double comboProgress, double accuracyProgress, double bonusPortion) { - return 700000 * Accuracy.Value * comboProgress + - 300000 * Math.Pow(Accuracy.Value, 8) * accuracyProgress + + return 500000 * Accuracy.Value * comboProgress + + 500000 * Math.Pow(Accuracy.Value, 5) * accuracyProgress + bonusPortion; }