Thanks for following along! This is a tagged release (2022.523.0). For more information check out the osu! changelog page and dev blog.
Editor
Automatically adjust per-hit object slider velocity in osu!catch editor (#18156 by @ekrctb)
Previously, the path of a juice stream was restricted by the current slider velocity. With this change, the slider velocity of a juice stream is automatically adjusted so a steeper path (faster movement) is possible. This should be more intuitive to mappers.
osu.2022-05-23.at.07.20.54.mp4
Note that slider velocity is shown on the timeline in osu!catch, but has no meaning. In the future it will likely be hidden.
Add first pieces of editor timing UI (#18339 by @peppy)
This is a first step towards the timing experience I'm looking to implement. Currently this only adds a metronome display and some basic buttons. The "tap to beat" button akin to stable will be added in a future revision.
osu.Game.Tests.2022-05-20.at.08.25.05.mp4
Note that currently the metronome tracks the beatmap not the current timing point, which is a bit weird given where it's sitting in the UI. Will also revise this going forward. For now enjoy the new visuals!
osu.2022-05-20.at.08.27.21.mp4
Framework
- Support matching by both base and localised text in
SearchContainer
(ppy/osu-framework#5174 by @maromalo) - Fix
TextInputSource
reactivating when changing focus betweenTextBox
es (ppy/osu-framework#5150 by @Susko3) - Sync iOS template projects inline with latest changes (ppy/osu-framework#5173 by @frenzibyte)
- Bust CI cache on CodeAnalysis ruleset changes (ppy/osu-framework#5185 by @smoogipoo)
- Fix back-to-front X delta parsing in
KeyCombination.FromScrollDelta
(ppy/osu-framework#5184 by @frenzibyte) - Fix unsafe file writes in multiple framework components (ppy/osu-framework#5178 by @peppy)
- File writes will now use a temporary file to ensure half-written files can't get left over in a place they could cause errors on next startup.
- Move
CreateFileSafely
implement to non-virtual to avoid potential misuse (ppy/osu-framework#5189 by @peppy)
Gameplay
Adjust HP drain and recoveries to closer match osu-stable (#18340 by @smoogipoo)
I've gone through the osu-stable implementation once again and found a few areas of improvement.
Firstly, minimum health targets have been adjusted. The original values weren't taken from stable, but rather "what feels ok". As it turns out, all of osu+catch+mania use the same HP targets, albeit mania doesn't have HP drain.
Secondly, HP increase numbers (per hit) have been adjusted to line up better. From the very start of implementation of HP drain, lazer's Meh
judgements decreased HP. I can't find any reason for this, so I take it as my misunderstanding at the time that 50s decrease HP in stable, but this is not the case.
Additionally, misses are also quite harsh on stable and quite lenient on lazer. I've tried to make misses a little bit more harsh while hopefully not impacting lower-HP values too much.
It's still not perfect and definitely doesn't match osu-stable, but feels better at higher HP values. I'm still interested in trying to keep it simple before resorting to outright porting osu-stable's implementation across; interpolation, multipliers, and all.
Gameplay (osu!)
Fix compatibility issues with legacy Catmull sliders (#18321 by @smoogipoo)
A very small handful of beatmaps used catmull sliders with multiple segments. in osu-stable, this was handled differently to our expectations. A workaround has been added to ensure sliders keep the same (ugly) catmull shape for any such beatmaps.
Multiplayer
Add ability to show the free mod selection overlay using hotkeys (#18348 by @maromalo)
Key binding can be customised via settings, but is the same binding also used at song select.
Fix spectating a multiplayer room not always starting audio (#18353 by @frenzibyte)
This fixes a common issue where when starting multiplayer spectator, the game would freeze even though players were actively playing.
Platform
Add support for horizontal scrolling via Shift
key (ppy/osu-framework#5188 by @Susko3)
This worked on apple platforms as it is implemented by the OS, but is a per application implementation on windows/linux. It should now work everywhere. You can test this at the mod select screen.
Smaller changes
- Enable proper mouse support for osu! on iPadOS (#18265 by @frenzibyte)
- Revert realm to previous release to fix iOS crashes (#18310 by @peppy)
- Fix horizontal scrolling being inverted on non-Apple platforms (ppy/osu-framework#5179 by @Susko3)
Song Select
- Fix song select potentially displaying BPM range with equal min/max values (#18345 by @frenzibyte)
Testing
- Fix incorrect usage of
new Guid()
(ppy/osu-framework#5182 by @peppy) - Fix
WaveformTestBeatmap
s potentially providing disposed track (#18343 by @frenzibyte)
Tooling / Code Quality
- Add ruleset context to sentry error reports (#18300 by @peppy)
- Push tagged releases to Sentry (#18304 by @ThePooN)
- Add sentry tags for operating system and processor count (#18309 by @peppy)
- Package .json files in nupkg output (#18319 by @smoogipoo)
- Add
new Guid
bannedsymbols rule (#18322 by @peppy) - Bust CI cache on CodeAnalysis ruleset changes (#18329 by @smoogipoo)
- Delete and ignore rider's
misc.xml
(#18333 by @peppy) - Fix Android project failing to build on CI (ppy/osu-framework#5181 by @smoogipoo)
- Delete and ignore rider's
misc.xml
(ppy/osu-framework#5187 by @frenzibyte) - Add
enum
to snap method as alternative to multiple nested invocations (#18236 by @peppy) - Update framework (#18347 by @peppy)
- Update unsafe file write usages to use new safer method (#18302 by @peppy)
Tournament
Fix tournament user statistic population potentially using wrong ruleset (#18364 by @peppy)
It was incorrect for any non-osu! rulesets. Note that this fix will only apply to newly populated beatmaps. You may need to remove the populated statistics from your bracket.json
if you have already run it.
UI
- Add drawable channel caching to new chat overlay (#18246 by @jai-x)
- Fix sheared button borders getting too bright after click (#18356 by @bdach)
UX
Improve the first run progress button to show loading and completion status (#18311 by @peppy)
osu.2022-05-17.at.06.22.39.mp4
Add first run screen for importing from previous installation (#18313 by @peppy)
This builds on the the existing "import beatmaps" button - which did a kind-of-okay job at importing beatmaps - into a fully fledged screen which allows locating a previous osu! installation and also importing things which aren't beatmaps.
osu.2022-05-17.at.09.01.16.mp4
Add ability to search settings using localised keywords (#18299 by @smoogipoo)
Using the new behaviour exposed by the framework now allows searching any filterable views using the currently selected language, in addition to english.
Smaller changes
- Adjust difficulty multiplier pop in/out transition on mod overlay (#18289 by @bdach)
- The previous version was supposed to scale from the centre, but it turned out making this happen with ongoing UI changes wasn't so simple. So a new transition style was imagined.
- Fix toolbar potentially being in incorrect state after exiting the first run setup (#18335 by @peppy)
- It was possible that after exiting the first run overlay the toolbar would be hidden even though it should be visible. To keep things simple and also ensure this can't happen, the overlay will first return the main menu to the large osu! logo (where the toolbar is already hidden) before displaying.
Full Changelog: 2022.515.0...2022.523.0