Skip to content

Commit a4abcb3

Browse files
bdachpeppy
authored andcommitted
Fix incorrect standardised score estimation on selected beatmaps
1 parent d5b9243 commit a4abcb3

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

osu.Game/Database/StandardisedScoreMigrationTools.cs

+11
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,17 @@ private static long convertFromLegacyTotalScore(ScoreInfo score, Ruleset ruleset
365365
+ bonusProportion) * modMultiplier);
366366
}
367367

368+
// see similar check above.
369+
// if there is no legacy combo score, all combo conversion operations below
370+
// are either pointless or wildly wrong.
371+
if (maximumLegacyComboScore + maximumLegacyBonusScore == 0)
372+
{
373+
return (long)Math.Round((
374+
500000 * comboProportion // as above, zero if mods result in zero multiplier, one otherwise
375+
+ 500000 * Math.Pow(score.Accuracy, 5)
376+
+ bonusProportion) * modMultiplier);
377+
}
378+
368379
// Assumptions:
369380
// - sliders and slider ticks are uniformly distributed in the beatmap, and thus can be ignored without losing much precision.
370381
// We thus consider a map of hit-circles only, which gives objectCount == maximumCombo.

0 commit comments

Comments
 (0)