From 0af16732b81a39ba6347bb6c036fe6a5b5a71800 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 6 Dec 2023 13:38:46 +0900 Subject: [PATCH 1/4] Change default slider velocity to 1.4 This is the default in osu!stable and plays better than 1.0. --- osu.Game/Beatmaps/BeatmapDifficulty.cs | 2 +- osu.Game/Screens/Edit/Setup/DifficultySection.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/osu.Game/Beatmaps/BeatmapDifficulty.cs b/osu.Game/Beatmaps/BeatmapDifficulty.cs index 217f3b89a4..ac2267380d 100644 --- a/osu.Game/Beatmaps/BeatmapDifficulty.cs +++ b/osu.Game/Beatmaps/BeatmapDifficulty.cs @@ -18,7 +18,7 @@ namespace osu.Game.Beatmaps public float OverallDifficulty { get; set; } = IBeatmapDifficultyInfo.DEFAULT_DIFFICULTY; public float ApproachRate { get; set; } = IBeatmapDifficultyInfo.DEFAULT_DIFFICULTY; - public double SliderMultiplier { get; set; } = 1; + public double SliderMultiplier { get; set; } = 1.4; public double SliderTickRate { get; set; } = 1; public BeatmapDifficulty() diff --git a/osu.Game/Screens/Edit/Setup/DifficultySection.cs b/osu.Game/Screens/Edit/Setup/DifficultySection.cs index 1915b0cfd1..8028df6c0f 100644 --- a/osu.Game/Screens/Edit/Setup/DifficultySection.cs +++ b/osu.Game/Screens/Edit/Setup/DifficultySection.cs @@ -88,7 +88,7 @@ namespace osu.Game.Screens.Edit.Setup Description = EditorSetupStrings.BaseVelocityDescription, Current = new BindableDouble(Beatmap.Difficulty.SliderMultiplier) { - Default = 1, + Default = 1.4, MinValue = 0.4, MaxValue = 3.6, Precision = 0.01f, From f9dd5bd828fc6f2df9677141649da5733eade565 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 6 Dec 2023 13:39:59 +0900 Subject: [PATCH 2/4] Remove unused constant --- osu.Game.Rulesets.Taiko/Beatmaps/TaikoBeatmapConverter.cs | 5 ----- 1 file changed, 5 deletions(-) diff --git a/osu.Game.Rulesets.Taiko/Beatmaps/TaikoBeatmapConverter.cs b/osu.Game.Rulesets.Taiko/Beatmaps/TaikoBeatmapConverter.cs index 2551321ff2..b9d65d2631 100644 --- a/osu.Game.Rulesets.Taiko/Beatmaps/TaikoBeatmapConverter.cs +++ b/osu.Game.Rulesets.Taiko/Beatmaps/TaikoBeatmapConverter.cs @@ -31,11 +31,6 @@ namespace osu.Game.Rulesets.Taiko.Beatmaps /// private const float osu_base_scoring_distance = 100; - /// - /// Drum roll distance that results in a duration of 1 speed-adjusted beat length. - /// - private const float taiko_base_distance = 100; - private readonly bool isForCurrentRuleset; public TaikoBeatmapConverter(IBeatmap beatmap, Ruleset ruleset) From 79826dee58b62c72f19352a03bd3da4db829f725 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 6 Dec 2023 13:50:10 +0900 Subject: [PATCH 3/4] Fix tests which were relying on `SliderMultiplier==1` --- osu.Game.Rulesets.Catch.Tests/TestSceneHyperDash.cs | 6 +++++- osu.Game.Rulesets.Osu.Tests/TestSceneSliderInput.cs | 6 +++++- .../Gameplay/TestSceneDrawableScrollingRuleset.cs | 12 +++++++++++- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/osu.Game.Rulesets.Catch.Tests/TestSceneHyperDash.cs b/osu.Game.Rulesets.Catch.Tests/TestSceneHyperDash.cs index 3c222662f5..8c179fe9a9 100644 --- a/osu.Game.Rulesets.Catch.Tests/TestSceneHyperDash.cs +++ b/osu.Game.Rulesets.Catch.Tests/TestSceneHyperDash.cs @@ -63,7 +63,11 @@ namespace osu.Game.Rulesets.Catch.Tests BeatmapInfo = { Ruleset = ruleset, - Difficulty = new BeatmapDifficulty { CircleSize = 3.6f } + Difficulty = new BeatmapDifficulty + { + CircleSize = 3.6f, + SliderMultiplier = 1, + }, } }; diff --git a/osu.Game.Rulesets.Osu.Tests/TestSceneSliderInput.cs b/osu.Game.Rulesets.Osu.Tests/TestSceneSliderInput.cs index d6a030ba64..716d2e0756 100644 --- a/osu.Game.Rulesets.Osu.Tests/TestSceneSliderInput.cs +++ b/osu.Game.Rulesets.Osu.Tests/TestSceneSliderInput.cs @@ -507,7 +507,11 @@ namespace osu.Game.Rulesets.Osu.Tests HitObjects = { slider }, BeatmapInfo = { - Difficulty = new BeatmapDifficulty { SliderTickRate = tickRate ?? 3 }, + Difficulty = new BeatmapDifficulty + { + SliderTickRate = tickRate ?? 3, + SliderMultiplier = 1, + }, Ruleset = new OsuRuleset().RulesetInfo, }, ControlPointInfo = cpi, diff --git a/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs b/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs index 4c898feb48..697fb787e6 100644 --- a/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs +++ b/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs @@ -251,7 +251,17 @@ namespace osu.Game.Tests.Visual.Gameplay /// The . private IBeatmap createBeatmap(Func createAction = null) { - var beatmap = new Beatmap { BeatmapInfo = { Ruleset = new OsuRuleset().RulesetInfo } }; + var beatmap = new Beatmap + { + BeatmapInfo = + { + Difficulty = new BeatmapDifficulty + { + SliderMultiplier = 1 + }, + Ruleset = new OsuRuleset().RulesetInfo + } + }; for (int i = 0; i < 10; i++) { From 43dc9082571901919914e43cbce34dd3db8ec89c Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Wed, 6 Dec 2023 15:59:29 +0900 Subject: [PATCH 4/4] Fix test value getting clobbered due to stupid stuff Don't even ask. Just smile and nod. --- .../Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs b/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs index 697fb787e6..e4d39bb6de 100644 --- a/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs +++ b/osu.Game.Tests/Visual/Gameplay/TestSceneDrawableScrollingRuleset.cs @@ -198,7 +198,7 @@ namespace osu.Game.Tests.Visual.Gameplay { var beatmap = createBeatmap(); beatmap.ControlPointInfo.Add(0, new TimingControlPoint { BeatLength = time_range }); - beatmap.Difficulty.SliderMultiplier = 2; + beatmap.BeatmapInfo.Difficulty.SliderMultiplier = 2; createTest(beatmap); AddStep("adjust time range", () => drawableRuleset.TimeRange.Value = 2000); @@ -237,7 +237,7 @@ namespace osu.Game.Tests.Visual.Gameplay }); private void assertPosition(int index, float relativeY) => AddAssert($"hitobject {index} at {relativeY}", - () => Precision.AlmostEquals(getDrawableHitObject(index)?.DrawPosition.Y ?? -1, yScale * relativeY)); + () => getDrawableHitObject(index)?.DrawPosition.Y / yScale ?? -1, () => Is.EqualTo(relativeY).Within(Precision.FLOAT_EPSILON)); private void setTime(double time) {