1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 09:17:51 +08:00

Remove rounding of slider velocity multiplier on juice streams

Compare: https://github.com/ppy/osu/pull/26616

This came up elsewhere, namely in
https://github.com/ppy/osu/pull/28277#issuecomment-2133505958.

As it turns out, at least one beatmap among those whose scores had
unexpected changes in total score, namely
https://osu.ppy.sh/beatmapsets/971028#fruits/2062131, was using slider
velocity multipliers that were not a multiple of 0.01 (the specific
value used was 0.225x). This meant that due to the rounding applied to
`SliderVelocityMultiplierBindable` via `Precision`, the raw value was
being incorrectly rounded, resulting in incorrect conversion.

The "direct" change that revealed this is most likely
https://github.com/ppy/osu-framework/pull/6249, by the virtue of
shuffling the `BindableNumber` rounding code around and accidentally
changing midpoint rounding semantics in the process. But it was not
at fault here, as rounding was just as wrong before that change
as after in this specific context.
This commit is contained in:
Bartłomiej Dach 2024-05-28 13:07:13 +02:00
parent 96af0e1ec3
commit a3b8493751
No known key found for this signature in database

View File

@ -29,7 +29,6 @@ namespace osu.Game.Rulesets.Catch.Objects
public BindableNumber<double> SliderVelocityMultiplierBindable { get; } = new BindableDouble(1) public BindableNumber<double> SliderVelocityMultiplierBindable { get; } = new BindableDouble(1)
{ {
Precision = 0.01,
MinValue = 0.1, MinValue = 0.1,
MaxValue = 10 MaxValue = 10
}; };