Thanks for following along! This is a tagged release (2022.821.0). For more information check out the osu! changelog page and dev blog.
Code Quality
- Refactor
APIAccess
main loop to read better (#19707 by @peppy) - Fix naming of depth stencil function function type (ppy/osu-framework#5357 by @smoogipoo)
- Move all usage of
GameplayClock
toIGameplayClock
(#19775 by @peppy)- As a first step towards tidying up the structure of clocks in gameplay usages, I want to remove all usage of
GameplayClock
via DI. The next step would be to attempt to removeGameplayClock
itself.
- As a first step towards tidying up the structure of clocks in gameplay usages, I want to remove all usage of
- Remove
FrameStableClock
(and redirect usages toFrameStabilityContainer
) (#19776 by @peppy) - Tidy up and document
FrameStabilityContainer
(#19777 by @peppy) - Add
LocalisableString.IsNullOrEmpty
andLocalisableString.IsNullOrWhiteSpace
(ppy/osu-framework#5364 by @smoogipoo) - Remove all remaining usage of
GameplayClock
(#19779 by @peppy) - Split
OffsetCorrectionClock
out ofMasterGameplayClockContainer
(#19836 by @peppy)
Database
Fix re-importing existing collections not correctly adding new items (#19801 by @peppy)
Smaller changes
- Add
LastUpdate
field to track the time of local changes (#19530 by @peppy)- Not displayed anywhere yet, but will allow for better ordering of locally edited beatmaps in the future.
Difficulty Calculation (osu!)
- Add slider bonus to Flashlight skill (#15666 by @MBmasher)
- osu! performance points balancing pass (#19001 by @stanriders)
- Clamp effective miss count to maximum amount of possible breaks (#19804 by @stanriders)
Difficulty Calculation (osu!mania)
Editor
Fix slider ticks playing back at infinite rate while making changes to a slider in the editor (#19800 by @peppy)
19800.mp4
Add ability to merge hit objects in osu! editor to create sliders (#19782 by @OliBomby)
I added a feature to the osu editor which lets you merge multiple objects into one big slider. You can use it by selecting multiple sliders and then pressing the 'Merge selection' in the context menu or pressing Ctrl+Shift+M.
osu._kQZrlMjKvD.mp4
Fix taiko blueprints displaying incorrectly for drum rolls (#19832 by @peppy)
19832.mp4
Smaller changes
- Make clock position transfer more reliable when track is stopped (ppy/osu-framework#5362 by @peppy)
- Fix some editor setup screen changes not triggering the "save changes" dialog (#19547 by @peppy)
- Fix taiko drum rolls with zero length being placeable in editor (#19831 by @peppy)
- Fix flipping a slider sometimes changing the curve type from "Perfect" to "Bezier" (#19865 by @OliBomby)
- fixes #19824
Framework
- Add validation on circular progress properties (ppy/osu-framework#5349 by @smoogipoo)
- Refactor exceptions thrown from vertex buffer construction (ppy/osu-framework#5350 by @smoogipoo)
- Remove GL reference from
DepthInfo
(ppy/osu-framework#5352 by @smoogipoo) - Add some missing rendering enums' values (ppy/osu-framework#5353 by @Flutterish)
- Add stencil support for renderers (ppy/osu-framework#5351 by @Flutterish)
- Fix performing a
Seek
on decouplable clock while coupled and stopped not updating theCurrentTime
(ppy/osu-framework#5355 by @peppy)- Noticed while using this clock to implement a higher-level beatmap clock osu! side.
- Add ability to push arbitrary projection matrix to
IRenderer
(ppy/osu-framework#5354 by @Flutterish) - Add
CompositeComponent
marker class (ppy/osu-framework#5363 by @peppy)
Gameplay
Adjust various mod multipliers to avoid competition with normal scores (#19715 by @peppy)
While we have leaderboards still showing all mods next to each other, we've decided to devalue new (lazer-first) mods which are seen as making the game easier. The multipliers decided here are placeholder and mainly meant to reduce competition of unworthy scores that were previously showing at the top of the leaderboards. We will continue to adjust these (and make them dynamic based on settings) going forward.
- Relax
1.0x
→0.1x
- Autopilot
1.0x
→0.1x
- Magnetised
1.0x
→0.5x
- Adaptive Speed
1.0x
→0.5x
- Difficulty Adjust
1.0x
→0.5x
- Constant Speed
1.0x
→0.9x
Leaderboards will be re-processed over the coming week.
Skip song intro on quick restart (#19594 by @BlauFx)
Same as what you are used to in osu!(stable).
19594.mp4
Localisation
- Add missing localisation for settings enums (#19646 by @its5Q)
- Add localisation support for beatmap editor setup (#19693 by @its5Q)
Reliability
- Guard against pixel count attempting to be decremented (ppy/osu-framework#5347 by @peppy)
- Fix
TabControl
causing a crash if current value is not found in tabs (ppy/osu-framework#5348 by @peppy)
Song Select
Testing
- Update interactive visual test runs to use development directory (#19717 by @peppy)
- Use local httpbin instance on CI runs (ppy/osu-framework#5356 by @smoogipoo)
- Fix div-by-zero in
SongProgress
when no object duration could be calculated (#19768 by @peppy) - Update some clock tests to use constraint-based assertions (#19773 by @peppy)
- Fix running
TestScenePlayerLoader
interactively leaving volume in a bad state (#19796 by @peppy) - Fix flaky quick retry test (#19815 by @smoogipoo)
- Refactor some tests (#19817 by @peppy)
- Fix some backwards asserts (#19833 by @smoogipoo)
- Update
TestSceneLeadIn
to use new assert style (#19838 by @peppy)
Tooling
- Generate and upload symbol packages to nuget (ppy/osu-framework#5346 by @smoogipoo)
- Version realm files for debug executions (#19586 by @peppy)
- To make it easier for developers to test out pull requests which bump the realm schema version, realm files are now stored with the schema version in the filename.
- Fix possible null reference inspection (#19708 by @smoogipoo)
- Upgrade LocalisationAnalyser and disable warning (#19827 by @smoogipoo)
- Sourcelink improvements (ppy/osu-framework#5365 by @smoogipoo)
- Ensure appveyor discovers .snupkg files (ppy/osu-framework#5367 by @smoogipoo)
UI
Tweak intro sequence timings when osu! theme song is disabled (#19812 by @peppy)
This change has the music track start at its preview point, and also fade in at a more correct timing. Only noticeable if you have the "osu! theme music" disabled.
19812.mp4
Smaller changes
- Fix avatar potentially not loading in
LoginOverlay
due to misordered events (#19706 by @peppy) - Fix playlist overlay showing new imports when they don't match collection filter (#19718 by @peppy)
- Fix images not being displayed in comments (#19746 by @bastianpedersen)
- Add samples for text selection (ppy/osu-resources#208 by @nekodex)
- Can't here these yet, will arrive in the next release!
UX
Reorganise global bindings and split out overlay bindings to make things easier to find (#19661 by @peppy)
Before:
After:
Add keybind for showing own profile (#19657 by @novialriptide)
Defaults to Ctrl
+P
New Contributors
- @bastianpedersen made their first contribution in #19746
- @BlauFx made their first contribution in #19594
- @OliBomby made their first contribution in #19782
Full Changelog: 2022.810.2...2022.821.0