Dean Herbert
dda96d7106
Rename JudgementPiece
to TextJudgementPiece
2024-01-25 19:31:57 +09:00
Dean Herbert
8aea6e07c3
Change slider end miss colour to gray
2024-01-25 19:31:57 +09:00
Mike Will
a264ac9f38
Change name and description of force
parameter in SetArbitraryDivisor
2024-01-25 05:12:54 -05:00
Bartłomiej Dach
088397b0c3
Merge pull request #26699 from peppy/fix-log-save-failure
...
Add retry loop to avoid log export failing occasionally on windows
2024-01-25 09:51:14 +01:00
Bartłomiej Dach
3e13fb87f2
Merge pull request #26700 from peppy/accuracy-circle-crash
...
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
2024-01-25 09:32:47 +01:00
Dean Herbert
cc341b4119
Adjust beatmap carousel padding to avoid scrollbar disappearing underneath logo
2024-01-25 15:21:19 +09:00
Dean Herbert
45b4edcd23
Merge pull request #26697 from LeNitrous/add/scaled-screenshot
...
Crop screenshots to scaling container
2024-01-25 15:03:56 +09:00
Dean Herbert
37e370e654
Fix crash at results screen when hidden is enabled and S rank becomes A due to miss
...
Closes https://github.com/ppy/osu/issues/26692 .
2024-01-25 15:02:44 +09:00
Dean Herbert
69e822f3c5
Refactor crop logic slightly
2024-01-25 14:30:26 +09:00
Dean Herbert
85927e0682
Move configuration retrieval to non-bindable inline for readability
2024-01-25 14:22:27 +09:00
Dean Herbert
0cbba7e011
Apply NRT to ScreenshotManager
2024-01-25 14:18:20 +09:00
Dean Herbert
d2990170d0
Add retry loop to avoid log export failing occasionally on windows
...
Closes https://github.com/ppy/osu/issues/26693 .
2024-01-25 13:53:36 +09:00
Nitrous
b20051fd55
offset crop rectangle to scaling container
2024-01-25 10:35:41 +08:00
Nitrous
30e335233d
Crop screenshot image to scaling container.
2024-01-25 09:27:10 +08:00
Andrei Zavatski
7811968582
Fix ArgonScoreCounter is still using localisation
2024-01-25 03:28:02 +03:00
Mike Will
9e1c242713
Prevent custom divisor ranges from halting preset cycling
...
A custom divisor like 24 or 32 will result in a range containing
many divisors that are already in the `Common` and `Triplets` presets.
When this happens, it can become impossible to cycle between presets,
because the preset can only be changed if the new divisor isn't already
contained within the current preset's range.
2024-01-24 18:31:39 -05:00
Andrei Zavatski
67010fcd03
Reduce allocation overhead in ScoreCounter
2024-01-24 23:45:07 +03:00
Bartłomiej Dach
e3eb7a8b42
Support verification via clicking link from e-mail
2024-01-24 21:35:58 +01:00
Bartłomiej Dach
62a0c236bc
Split out raw websocket logic from conjoined notifications client contrivance
2024-01-24 21:35:30 +01:00
Bartłomiej Dach
602c3bc2d9
Hook up reissue request
2024-01-24 21:35:21 +01:00
Bartłomiej Dach
445a7450e0
Implement verification from within client
2024-01-24 21:35:20 +01:00
Chandler Stowell
d2775680e6
use stack to pass action state when applying hit results
...
this removes closure allocations
2024-01-24 13:13:45 -05:00
Bartłomiej Dach
ddc2bbeb9b
Add session_verified
attribute to /me
response
2024-01-24 14:24:33 +01:00
Bartłomiej Dach
7b47215657
Split /me
request from /users
requests
...
Them being together always bothered me and led to the abject failure
that is `APIUser` and its sprawl. Now that I'm about to add a flag that
is unique to `/me` for verification purposes, I'm not repeating the
errors of the past by adding yet another flag to `APIUser` that is never
present outside of a single usage context.
2024-01-24 14:22:57 +01:00
Bartłomiej Dach
7c140408ea
Add request structures for verification endpoints
2024-01-24 13:53:40 +01:00
Dean Herbert
b272d34960
Merge pull request #26630 from peppy/s-rank-change
...
Change S rank to require no miss
2024-01-24 13:27:40 +09:00
Bartłomiej Dach
5d26afc531
Fix OsuGameTestScene
not clearing second auth factor
2024-01-23 17:00:16 +01:00
Bartłomiej Dach
2cfaa1c103
Merge branch 'master' into 2fa
2024-01-23 16:51:23 +01:00
Bartłomiej Dach
871683a3dc
Merge pull request #26674 from peppy/use-better-enumerator
...
Reduce enumerator overhead in `GameplayLeaderboard`
2024-01-23 16:31:17 +01:00
Bartłomiej Dach
0486c77a74
Merge pull request #26680 from peppy/fix-now-playing-centering
...
Fix now playing beatmap backgrounds not being correctly centred
2024-01-23 16:17:34 +01:00
Bartłomiej Dach
6c169e3156
Do not reprocess ranks for custom rulesets
...
Chances are that because we've broken rank API, it would utterly fail
for all custom rulesets anyhow.
2024-01-23 12:59:36 +01:00
Bartłomiej Dach
cb87d6ce50
Move transferal of LegacyTotalScore
back to original spot
...
This subtle detail was messing with server-side score import flows.
Server-side, legacy total score will *already* be in `LegacyTotalScore`
from the start, and `TotalScore` will be zero until recomputed via
`StandardisedScoreMigrationTools.UpdateFromLegacy()` - so in that
context, attempting to move it across is incorrect.
2024-01-23 12:42:57 +01:00
Dean Herbert
0cf90677e6
Apply more correct visual offset adjustment
...
Co-authored-by: Walavouchey <36758269+Walavouchey@users.noreply.github.com>
2024-01-23 19:16:55 +09:00
Dean Herbert
c8cd7ebe6c
Fix now playing beatmap backgrounds not being correctly centred
...
https://github.com/ppy/osu/discussions/26679
2024-01-23 17:30:00 +09:00
Andrei Zavatski
da992ccc55
Implement per-axis triangles clamping
2024-01-23 04:54:27 +03:00
Bartłomiej Dach
4d253ebf3c
Remove redundant assertion
...
It does look pretty dumb to be checking if something is `null` *after
calling an instance method on it*...
2024-01-22 22:01:03 +01:00
Bartłomiej Dach
fdd499a485
Fix rank background processing not working (and not bumping score version)
2024-01-22 21:34:28 +01:00
Dean Herbert
02bb506cce
Avoid using .Children
for enumeration in other locations
2024-01-23 05:32:11 +09:00
Dean Herbert
069af13aaf
Reduce enumerator overhead in GameplayLeaderboard
2024-01-23 05:31:53 +09:00
Bartłomiej Dach
24be6d92ce
Expand xmldoc
2024-01-22 21:13:59 +01:00
Bartłomiej Dach
cdd6e71d01
Remove legacy computation of accuracy & ranks
2024-01-22 20:52:54 +01:00
Bartłomiej Dach
217cbf684b
Remove superfluous recomputation of accuracy
2024-01-22 20:52:54 +01:00
Bartłomiej Dach
db4849442e
Unify legacy total score / accuracy / rank recomputation flows
2024-01-22 20:52:51 +01:00
Bartłomiej Dach
2958631c5d
Use lazer accuracy & rank implementations across the board
2024-01-22 20:30:16 +01:00
Bartłomiej Dach
aa8eee0796
Move maximum statistics population to LegacyScoreDecoder
2024-01-22 20:01:24 +01:00
Bartłomiej Dach
45dc9de1e0
Remove remnant of old implementation of showing "A due to misses"
2024-01-22 19:58:11 +01:00
Bartłomiej Dach
cb8ec48717
Make RankFromScore()
's dictionary param readonly
...
Just to make sure nobody tries any "funny" business.
2024-01-22 19:56:30 +01:00
Bartłomiej Dach
5bae9074aa
Merge branch 'master' into s-rank-change
2024-01-22 19:54:53 +01:00
Bartłomiej Dach
4cd1573a4c
Merge pull request #26612 from peppy/fix-back-sample-playback
...
Fix back sound being too loud when exiting many screens
2024-01-22 16:18:32 +01:00
Bartłomiej Dach
3cf83e7106
Merge pull request #26667 from peppy/fix-star-fountains
...
Fix star fountains sometimes resetting visually
2024-01-22 16:13:55 +01:00
Bartłomiej Dach
43fa89ebcd
Merge branch 'master' into fix-back-sample-playback
2024-01-22 15:36:32 +01:00
Bartłomiej Dach
9aa7c7f591
Revert incorrect removal of exitConfirmed
flag
...
Removing it meant that it was _literally impossible_ to exit
multiplayer.
2024-01-22 15:35:03 +01:00
Bartłomiej Dach
b85a861175
Merge pull request #26668 from peppy/adjust-tick-end-misses
...
Adjust slider tick / end miss animations to be less busy
2024-01-22 15:03:33 +01:00
Bartłomiej Dach
49c117793c
Merge pull request #26609 from peppy/fix-per-ruleset-hud-positioning
...
Fix gameplay elements not correctly offsetting to avoid per-ruleset skin layout
2024-01-22 15:00:03 +01:00
smallketchup82
2305a53a02
Remove max combo reading & remove unnecessary commas
2024-01-22 08:59:37 -05:00
Bartłomiej Dach
95435ecd13
Merge pull request #26591 from peppy/offset-awareness
...
Show offset explanation tooltip on settings offset adjust slider bar
2024-01-22 14:59:31 +01:00
Bartłomiej Dach
17d05b0fdf
Fix non-miss drawable judgements fading out instantly on triangles skin
...
`else if` proves to be insidious once again.
2024-01-22 14:23:46 +01:00
Bartłomiej Dach
b8dd78eec8
Merge branch 'master' into fix-per-ruleset-hud-positioning
2024-01-22 13:55:56 +01:00
Dean Herbert
15df6b1da1
Revert keyboard seek speed change
2024-01-22 21:47:38 +09:00
Bartłomiej Dach
99d3fcc326
Fix crash if ruleset components container is not present
2024-01-22 13:45:55 +01:00
Dean Herbert
83f9118b22
Adjust results screen to handle S->A rank adjustment when misses are present
2024-01-22 21:43:32 +09:00
Dean Herbert
644e7d6fe6
Add migration
2024-01-22 21:43:32 +09:00
Dean Herbert
4eba3b5d70
Move BackgroundDataStoreProcessor
to better namespace
2024-01-22 21:43:32 +09:00
Dean Herbert
c8521b49cd
Change S rank to require no miss
2024-01-22 21:43:32 +09:00
Bartłomiej Dach
7f31070b87
Merge pull request #26648 from peppy/fix-followpoint-pooling
...
Fix `FollowPointConnection` pool filling up when follow points are hidden
2024-01-22 13:31:43 +01:00
Bartłomiej Dach
0d6c681275
Merge pull request #26649 from peppy/fix-more-allocations
...
Remove `FillFlow` overhead of argon counters
2024-01-22 12:57:16 +01:00
Bartłomiej Dach
c8053a8077
Merge pull request #26600 from peppy/frame-stable-catchup-zoom
...
Change frame stable catch-up method to allow for much faster sync
2024-01-22 11:29:15 +01:00
Bartłomiej Dach
b7f0102461
Merge pull request #26662 from peppy/fix-player-crash
...
Fix potential null reference in player screen transition handling
2024-01-22 11:07:16 +01:00
Dean Herbert
47e9846315
Adjust slider tick / end miss animations to be less busy
2024-01-22 18:48:48 +09:00
Bartłomiej Dach
77ef12ebb0
Merge branch 'master' into frame-stable-catchup-zoom
2024-01-22 10:37:06 +01:00
Bartłomiej Dach
daa9279a23
Merge pull request #26607 from peppy/replay-seek-single-frame
...
Add ability to step forward/backwards single frames when watching replays
2024-01-22 10:36:13 +01:00
Dean Herbert
319af2d0c6
Merge branch 'master' into fix-storyboard-sprites-3
2024-01-22 18:03:24 +09:00
Dean Herbert
cd551b1abd
Fix star fountains sometimes resetting visually
...
Addresses https://github.com/ppy/osu/discussions/26622 .
2024-01-22 18:01:21 +09:00
Dean Herbert
993e733fce
Merge pull request #26598 from frenzibyte/fix-storyboard-sprites-2
...
Remove handling for non-legacy texture lookup paths in `LegacySkin`
2024-01-22 17:50:55 +09:00
Bartłomiej Dach
1ac682e2c9
Merge branch 'master' into replay-seek-single-frame
2024-01-22 09:36:15 +01:00
Bartłomiej Dach
af5e6700af
Merge pull request #26606 from peppy/frame-stable-update-while-paused
...
Allow seeking while paused
2024-01-22 09:35:52 +01:00
Dean Herbert
3dd18c777a
Remove a couple more overrides
2024-01-22 17:00:35 +09:00
Dean Herbert
f6fa965252
Merge pull request #26661 from frenzibyte/fix-mouse-blueprint
...
Fix blueprint container not handling right clicks correctly while moving a blueprint
2024-01-22 16:53:54 +09:00
Bartłomiej Dach
cd9cb7d6c8
Merge branch 'master' into frame-stable-update-while-paused
2024-01-22 08:52:15 +01:00
Bartłomiej Dach
493d495992
Merge pull request #26605 from peppy/simplify-gameplay-pause
...
Simplify gameplay pause sequence
2024-01-22 08:49:08 +01:00
Dean Herbert
62965549e7
Merge pull request #26660 from EVAST9919/carousel-alloc
...
Reduce allocation overhead in `BeatmapCarousel`
2024-01-22 16:47:28 +09:00
Dean Herbert
3e5fe66e58
Fix potential null reference in player screen transition handling
...
See https://github.com/ppy/osu/actions/runs/7607677219/job/20715418536?pr=26660 .
2024-01-22 16:37:56 +09:00
Dean Herbert
1f0ad5cff2
Apply same fix in more places
2024-01-22 15:56:16 +09:00
Dean Herbert
74f05a5c4b
Use container itself rather than ScrollContent
2024-01-22 15:54:24 +09:00
Salman Ahmed
2bd9cd5d34
Fix blueprint container not handling right clicks correctly while moveing an element
2024-01-22 04:39:08 +03:00
Andrei Zavatski
cec4f670d1
Reduce allocation overhead in BeatmapCarousel
2024-01-22 03:12:23 +03:00
Dean Herbert
3b7a47aded
Merge branch 'master' into update-framework
2024-01-21 13:49:44 +09:00
Dean Herbert
02369139b3
Remove FillFlow
overhead of argon counters
2024-01-21 13:22:58 +09:00
Andrei Zavatski
1393f52b2b
Rename Masking to ClampToDrawable
2024-01-21 05:20:42 +03:00
Dean Herbert
a69fd8198d
Update framework and other nuget packages
...
- Moq held back because dicks
- NUnit held back because large API changes (trivial but effort)
- SignalR held back due to api deprecations
2024-01-21 11:00:53 +09:00
Andrei Zavatski
e003ecb593
Change default masking value to true
2024-01-21 04:57:48 +03:00
Dean Herbert
2dedead1d1
Allow debug instances to coexist alongside release instances
2024-01-21 10:56:55 +09:00
Dean Herbert
1999e772f6
Fix FollowPointConnection
pool filling up when follow points are hidden
...
Closes https://github.com/ppy/osu/issues/26642 .
I think this applied to all pooling cases here.
2024-01-21 10:31:27 +09:00
Andrei Zavatski
6ba3546be5
Enable masking in RoundedButton
2024-01-21 02:28:14 +03:00
Andrei Zavatski
60f7b4ea2f
Enable masking in DrawableRank
2024-01-21 02:25:29 +03:00
Andrei Zavatski
421ae73715
Enable masking in DrawableCarouselBeatmap
2024-01-21 02:21:09 +03:00
Andrei Zavatski
087d0f03a4
Enable masking in toolbar
2024-01-21 02:15:48 +03:00
Andrei Zavatski
a3703d657a
Enable masking in popup dialog
2024-01-21 02:12:49 +03:00
Andrei Zavatski
3ad3b052df
Enable masking is osu logo
2024-01-21 02:10:36 +03:00
Andrei Zavatski
45effdb6df
Remove local vertex batching from triangles backgrounds
2024-01-20 08:41:34 +03:00
Joseph Madamba
3eeefd5b7e
Fix changelog stream user count only accounting for latest build
2024-01-18 16:15:52 -08:00
Dean Herbert
0383bdf6a1
Add bindings for stepping backward/forward
2024-01-18 20:38:25 +09:00
Dean Herbert
c50534c819
Move seek/step logic into ReplayPlayer
2024-01-18 20:38:15 +09:00
Salman Ahmed
b97c3ac9ee
Fix revert-to-default button appearing on disabled settings regardless of value
2024-01-18 14:24:49 +03:00
Dean Herbert
8c4af58109
Keep replay controls expanded by default
2024-01-18 20:13:32 +09:00
Dean Herbert
60e972cd15
Add ability to step forward/backwards single frames
2024-01-18 20:13:32 +09:00
Dean Herbert
dafff26d0e
Tidy up implementation of PlaybackSettings
2024-01-18 20:13:32 +09:00
Dean Herbert
e73910571f
Allow FrameStabilityContainer
to continue updating while paused during replay playback
2024-01-18 20:13:28 +09:00
Dean Herbert
2afa4c7e1c
Remove redundant RequiresChildrenUpdate
usage
...
We are already manually calling `base.UpdateSubTree` when we need to.
Changing this flag is doing nothing and just adds to the complexity of
the implementation.
2024-01-18 20:13:28 +09:00
Andrei Zavatski
4532a409d2
Fix ConstrainedIconContainer always using masking
2024-01-18 20:13:27 +09:00
Dean Herbert
c4e9bcd140
Remove test guarantee of audio time not advancing
2024-01-18 20:06:53 +09:00
Dean Herbert
82e7643df5
Update IPC usages
...
Of note, I've disabled IPC on visual test runners as we generally don't
use IPC in these cases. Having it set means that the game will not open
while visual tests are open, which has been a complaint from devs in the
past.
2024-01-18 19:45:36 +09:00
Bartłomiej Dach
2be989b9f5
Merge pull request #26542 from peppy/non-touch-fade-button
...
Fade hold-for-menu button out completely on non-touch devices
2024-01-18 11:27:50 +01:00
Dean Herbert
c9945b41c1
Remove rounding of slider velocity (when applied as scroll speed)
...
This affects both osu!taiko and osu!mania.
Closes https://github.com/ppy/osu/issues/25862 .
2024-01-18 18:37:44 +09:00
smallketchup82
5c70c786b4
Fix extended tooltip content still being shown despite ShowExtendedTooltip being false
2024-01-18 03:18:44 -05:00
Dean Herbert
fd9c7184e4
Only play back sample once when traversing up multiple screens in stack
2024-01-18 16:31:33 +09:00
Dean Herbert
ef0b5c9406
Stop playing back samples for nested screens in multiplayer
...
I'd argue this sounds better.
2024-01-18 16:31:20 +09:00
Dean Herbert
a756942f4d
Merge branch 'master' into fix-storyboard-sprites-2
2024-01-18 16:07:02 +09:00
Dean Herbert
ee3de9c522
Fix gameplay elements not correcly offsetting to avoid per-ruleset skin layout
...
Closes https://github.com/ppy/osu/issues/26601 .
2024-01-18 15:44:27 +09:00
Dean Herbert
8ab8c90e33
Remove "pause rate adjust" flow
2024-01-18 14:21:02 +09:00
Dean Herbert
799c74cfe5
Simplify gameplay pause sequence
2024-01-18 14:17:19 +09:00
Dean Herbert
c362a93a36
Change frame stable catch-up method to allow for much faster sync
2024-01-18 14:01:37 +09:00
Andrei Zavatski
42e4c933d3
Fix ConstrainedIconContainer always using masking
2024-01-18 04:06:02 +03:00
smallketchup82
060ea1d4fd
Switch from using a constructor argument to using a public field for ShowExtendedTooltip
2024-01-17 14:04:13 -05:00
smallketchup82
9a6541356e
Refactor the extended tooltip variables to be more descriptive
2024-01-17 13:31:23 -05:00
Salman Ahmed
06da7f74de
Merge branch 'master' into fix-storyboard-sprites-2
2024-01-17 18:43:25 +03:00
Dean Herbert
e260e75fac
Merge pull request #26594 from frenzibyte/fix-storyboard-sprites-1
...
Change legacy beatmap skins to not handle `@2x` textures (to match stable)
2024-01-18 00:40:29 +09:00
Salman Ahmed
5597b48882
Fix storyboard animations stripping path directory on skin lookup
2024-01-17 18:39:48 +03:00
smallketchup82
b6422bc8bd
Apply suggested changes
...
- Change difficultyicon mods parameter docstring to be more professional
- Add a parameter for controlling whether the difficulty statistics show or not. Defaults to false
- Round the BPM in the tooltip to make sure it displays correctly
2024-01-17 09:07:17 -05:00
Bartłomiej Dach
b718897b30
Merge pull request #26593 from peppy/rolling-counter-unstick
...
Change rolling counters to use quicker easing types
2024-01-17 14:37:52 +01:00
Salman Ahmed
e54d20ea93
Remove ancient osu-resources lookup path from legacy skin textures
2024-01-17 16:33:14 +03:00
Bartłomiej Dach
d335c01553
Merge pull request #26589 from peppy/key-binding-overlay-ordering
...
Change key overlay to use the ordering provided by rulesets
2024-01-17 13:37:26 +01:00
Dean Herbert
6a8a45bb13
Merge pull request #26585 from frenzibyte/fix-editor-ux
...
Fix timing point changes not applying after selecting another one
2024-01-17 19:53:35 +09:00
Bartłomiej Dach
5cb17bcacf
Merge pull request #26502 from frenzibyte/prevent-submission-with-invalid-mods
...
Add guard against submitting score with invalid mod instances
2024-01-17 11:39:32 +01:00
Dean Herbert
0ddd89a5b8
Merge pull request #26579 from bdach/accuracy-rank-lazer-score-reimport
...
Fix incorrect accuracy and rank population when decoding lazer replays
2024-01-17 19:33:26 +09:00
Salman Ahmed
98c65f36c9
Disable high resolution texture lookup for legacy beatmap skins to match stable
2024-01-17 12:56:29 +03:00
Salman Ahmed
5ad2918a75
Allow disabling high resolution texture lookups in LegacySkin
2024-01-17 12:56:29 +03:00
Dean Herbert
456a8e6e82
Merge pull request #26549 from bdach/hit-error-meter-pooling-bad
...
Fix `ColourHitErrorMeter` not loading pooled drawables ahead of time
2024-01-17 18:43:47 +09:00
Dean Herbert
a66ddc7813
Change rolling counters to use quicker easing types
2024-01-17 18:18:53 +09:00
Dean Herbert
cc7be137bc
Show tooltip on global offset adjust slider bar
2024-01-17 17:57:49 +09:00
Dean Herbert
123e36a999
Change display text for beatmap audio offset adjust to make more sense
2024-01-17 17:51:46 +09:00
Dean Herbert
45e52854ca
Change key overlay to use the ordering provided by rulesets
...
osu!mania already goes out of its way to order things correctly.
Arguably, osu!taiko just did it wrong.
2024-01-17 17:37:38 +09:00
Dean Herbert
ee18123fc2
Merge pull request #26340 from stanriders/user-rank-card
...
Add user card with global/country ranks to login overlay
2024-01-17 17:22:33 +09:00
Dean Herbert
c1c2e61723
Merge pull request #26446 from LeNitrous/add/replay-playback-controls
...
Add replay playback controls
2024-01-17 17:06:15 +09:00
Dean Herbert
353df2f312
Fix one more incorrect bindable flow and simplify string setters
2024-01-17 17:00:56 +09:00
Dean Herbert
66c7a29e79
Add comment about messy methods
2024-01-17 16:57:22 +09:00
Dean Herbert
fe06402951
Fix incorrect bindable usage
2024-01-17 16:50:48 +09:00
Dean Herbert
e97b31d82e
Fix test failures
2024-01-17 16:40:45 +09:00
Dean Herbert
e7732caaf7
Make PlayerSettingsOverlay
's api more stringent
2024-01-17 15:13:59 +09:00
Dean Herbert
2788bd912e
Add tooltips and localisation
2024-01-17 15:12:33 +09:00
Dean Herbert
e53989faeb
Change replay playback adjustment to skew frequency, not tempo
2024-01-17 15:02:42 +09:00
Dean Herbert
042e852a3e
Adjust playback speed range to allow slower minimum speed
2024-01-17 15:02:42 +09:00
Dean Herbert
42f64c2c44
Move load procedure to async method and simplify code
2024-01-17 15:02:42 +09:00
Salman Ahmed
23e5167cb5
Merge branch 'master' into drag-volume-controls
2024-01-17 08:37:34 +03:00
Salman Ahmed
1790a5df03
Remove redundant value to appease CI
2024-01-17 08:29:55 +03:00
Salman Ahmed
46429c5074
Schedule control point switch for settings modifications to apply first
2024-01-17 08:15:01 +03:00
Dean Herbert
9cde04c30c
Change drag adjustments to be linear (and account for partial deltas)
2024-01-17 14:12:12 +09:00
Dean Herbert
68fb1b8663
Merge pull request #26573 from EVAST9919/leaderboard-glow-remove
...
Fix multiple issues with `GlowingSpriteText`
2024-01-17 13:17:03 +09:00
Bartłomiej Dach
17b9d842ab
Fix incorrect accuracy and rank population when decoding lazer replays
...
Closes https://github.com/ppy/osu/issues/24061 .
The gist of this change is that if the `LegacyReplaySoloScoreInfo`
bolt-on is present in the replay, then it can (and is) used to recompute
the accuracy, and rank is computed based on that.
This was the missing part of
https://github.com/ppy/osu/issues/24061#issuecomment-1888438151 .
The accuracy would change on import before that because the encode
process is _lossy_ if the `LegacyReplaySoloScoreInfo` bolt-on is not
used, as the legacy format only has 6 fields for encoding judgement
counts, and some judgements that affect accuracy in lazer do not fit
into that.
Note that this _only_ fixes _relatively_ new lazer scores looking wrong
after reimport.
- Very old lazer scores, i.e. ones that don't have the
`LegacyReplaySoloScoreInfo` bolt-on, obviously can't use it
to repopulate. There's really not much good that can be done there,
so the stable pathways are used as a fallback that always works.
- For stable replays, `ScoreImporter` recalculates the accuracy of
the score _again_ in
15a5fd7e4c/osu.Game/Scoring/ScoreImporter.cs (L106-L110)
as `StandardisedScoreMigrationTools.UpdateFromLegacy()` recomputes
_both_ total score and accuracy.
This makes a _semblance_ of sense as it attempts to make the accuracy
of stable and lazer replays comparable. In most cases it also won't
matter, as the only ruleset where accuracy changed between the legacy
implementation and current lazer accuracy is mania.
But it is also an inaccurate process (as, again, some of the required
data is not in the replay, namely judgement counts of ticks
and so on).
For whatever's worth, a similar thing happens server-side in
106c2948db/osu.Server.Queues.ScoreStatisticsProcessor/Commands/Queue/BatchInserter.cs (L319)
- However, _ranks_ of stable scores will still use the local stable
reimplementation of ranks, i.e. a 1-miss stable score in osu! ruleset
will be an A rather than an S. See importer:
106c2948db/osu.Server.Queues.ScoreStatisticsProcessor/Commands/Queue/BatchInserter.cs (L237)
(it's the same method which is renamed
to `PopulateLegacyAccuracyAndRank()` in this commit).
That is all a bit of a mess honestly, but I'm not sure where to even
begin there...
2024-01-16 22:38:53 +01:00
Bartłomiej Dach
a9d086c119
Fix touch device not always activating when it should
...
See https://github.com/ppy/osu/discussions/26574
2024-01-16 17:12:40 +01:00
Andrei Zavatski
dfdf700560
Don't use glowing text in ScoreComponentLabel
2024-01-16 17:43:17 +03:00
Andrei Zavatski
7920e93fa9
Rework GlowingSpriteText
2024-01-16 17:43:16 +03:00
Salman Ahmed
90da39c65d
Fix helper method returning incorrect result
2024-01-16 14:27:30 +03:00
Bartłomiej Dach
c27f01dc14
Merge pull request #26565 from peppy/fix-leaderboard-display
...
Fix some elements not showing on leaderboard scores when almost off-screen
2024-01-16 11:30:52 +01:00
Bartłomiej Dach
cde0c0b2ee
Merge pull request #26561 from peppy/fix-catch-banana-health-bar
...
Fix argon health bar showing "miss" bar for bananas
2024-01-16 11:04:38 +01:00
Bartłomiej Dach
a3b7943e7d
Merge pull request #26560 from peppy/fix-skin-loss
...
Fix skin potentially being lost when opening and closing skin editor rapidly
2024-01-16 10:16:30 +01:00
Bartłomiej Dach
805a9b56ec
Merge pull request #26557 from peppy/fix-silver-s-ss
...
Fix silver S/SS not being awarded correctly
2024-01-16 10:03:20 +01:00
Dean Herbert
ee26329353
Fix some elements not showing on leaderboard scores when almost off-screen
2024-01-16 16:44:50 +09:00
Dean Herbert
cdc6621f33
Allow adjusting volume controls via a drag
2024-01-16 16:37:05 +09:00
Dean Herbert
2be8d66d4c
Fix argon health bar showing "miss" bar for bananas
2024-01-16 15:52:18 +09:00
Dean Herbert
57a6025a2c
Add helper method to bypass judgement woes
2024-01-16 15:52:05 +09:00
Dean Herbert
cd02d00c03
Fix skin potentially being lost when opening and closing skin editor rapidly
2024-01-16 15:23:07 +09:00
Dean Herbert
451ba1c861
Ensure PresentGameplay
doesn't get stuck in loop if no beatmaps available
2024-01-16 15:13:08 +09:00
Dean Herbert
34905b2052
Apply NRT to new classes
2024-01-16 14:17:21 +09:00
Dean Herbert
e75f113a06
Update resources
2024-01-16 14:14:04 +09:00
Dean Herbert
1fd85b79db
Merge branch 'master' into argon-health-rework
2024-01-16 13:35:29 +09:00
Dean Herbert
902a5436f3
Fix silver S/SS not being awarded correctly
2024-01-16 13:21:15 +09:00
Bartłomiej Dach
97e08f5071
Fix ColourHitErrorMeter
not loading pooled drawables ahead of time
2024-01-15 21:40:07 +01:00
Bartłomiej Dach
40f612435d
Merge pull request #26178 from felipemarins/mod-search-text-box-select-all
...
Make mod search box text be selected when a new mod is selected/deselected
2024-01-15 20:08:02 +01:00
Bartłomiej Dach
744cb8e10c
Merge pull request #26538 from peppy/save-multiplayer-filter-mode
...
Remember multiplayer room filter mode
2024-01-15 19:53:50 +01:00
Bartłomiej Dach
a41108057f
Merge pull request #26287 from wooster0/no-scores-yet
...
Don't leave scores screen empty if no scores are present yet
2024-01-15 19:49:20 +01:00
Bartłomiej Dach
c5a276a7de
Merge pull request #26543 from peppy/offset-toast-limit
...
Only display offset toast when in local gameplay
2024-01-15 19:19:21 +01:00
Bartłomiej Dach
4d39c91972
Merge pull request #26449 from peppy/playlist-room-buttons
...
Allow interacting with playlist item buttons when not selected
2024-01-15 19:12:01 +01:00
Bartłomiej Dach
c46615839d
Only select all text in mod search text box if enter press selected anything
2024-01-15 19:09:50 +01:00
Andrei Zavatski
8661edfc2f
Organize consts better
2024-01-15 21:07:12 +03:00
Bartłomiej Dach
9d2c82452c
Revert "simplify the code even more"
...
This reverts commit 9bc9db9138
.
2024-01-15 18:47:49 +01:00
Andrei Zavatski
c406135487
Merge branch 'master' into argon-health-rework
2024-01-15 20:40:19 +03:00
Bartłomiej Dach
64e94a8b6c
Merge pull request #26544 from peppy/fix-background-dim-failure
...
Fix background dim occasionally getting in a bad state when exiting gameplay
2024-01-15 15:16:37 +01:00
Bartłomiej Dach
c5351bd14d
Fix back-to-front set
2024-01-15 14:20:07 +01:00
Bartłomiej Dach
664035c796
Merge pull request #26546 from peppy/judgement-pooler
...
Fix judgement pooling not working correctly in osu!taiko and osu!mania
2024-01-15 14:02:52 +01:00
Bartłomiej Dach
d206acac63
Merge pull request #26540 from peppy/fix-double-counters
...
De-dupe displayed hits in judgement counter
2024-01-15 14:02:11 +01:00
Bartłomiej Dach
fe8540b441
Merge pull request #26541 from peppy/fix-collection-dropdown-crash
...
Fix collection dropdown crashing when all collections are deleted at once
2024-01-15 13:28:00 +01:00
Bartłomiej Dach
cd9b6656ba
Merge pull request #26536 from peppy/cache-fonts
...
Fix gameplay counter textures not being cached ahead of time
2024-01-15 13:11:40 +01:00
Salman Ahmed
d346dd0650
Fix TestModReinstantiation
failing due to custom mod being used
2024-01-15 15:01:13 +03:00
Salman Ahmed
1d7b63e204
Move checking logic inside ModUtils
and somewhat optimise
2024-01-15 14:58:59 +03:00
wooster0
9bc9db9138
simplify the code even more
2024-01-15 20:58:43 +09:00
Dean Herbert
6b844ed8b6
Split out judgement pooling concepts from OsuPlayfield
for reuse
2024-01-15 20:50:09 +09:00
Bartłomiej Dach
6dee2860d2
Merge branch 'master' into fix-multiplayer-mods-cheesing
2024-01-15 12:19:29 +01:00
StanR
e3989c854d
Change LoginPanel
to use LocalUser.Status
for the dropdown
2024-01-15 16:57:22 +06:00
StanR
b86c883a5d
Merge branch 'master' into user-rank-card
2024-01-15 16:37:48 +06:00
Bartłomiej Dach
9da3aeb28b
Merge pull request #26492 from frenzibyte/fix-system-mods-selected-on-free-mods-overlay
...
Fix touch device mod getting selected as a free mod in playlists
2024-01-15 11:29:37 +01:00
Dean Herbert
8e32780888
Fix background dim occasionally getting in a bad state when exiting gameplay
2024-01-15 19:21:19 +09:00
Dean Herbert
a3b63391fa
Merge pull request #26356 from stanriders/global-user-statistics
...
Add `Statistics` bindable to `IAPIProvider` and update it from `SoloStatisticsWatcher`
2024-01-15 18:43:35 +09:00
Dean Herbert
0aa8a20d57
Fix regression in interaction when panels are not selectable
2024-01-15 18:34:32 +09:00
Dean Herbert
2a2a4c416e
Only display offset toast when in local gameplay
2024-01-15 18:17:49 +09:00
Dean Herbert
52f8348ee3
Fade hold-for-menu button out completely on non-touch devices
2024-01-15 17:55:37 +09:00
Dean Herbert
0a522d260b
Fix collection dropdown crashing when all collections are deleted at once
2024-01-15 17:10:30 +09:00
Dean Herbert
e6453853c2
De-dupe displayed hits in judgement counter
2024-01-15 16:02:59 +09:00
Felipe Marins
d8962ddff8
Select all when pressing enter instead of every mod selection change
2024-01-15 03:22:52 -03:00
Dean Herbert
6940579b9e
Remember multiplayer room filter mode
...
As proposed in https://github.com/ppy/osu/discussions/26218 .
2024-01-15 14:30:34 +09:00
Dean Herbert
a6c309b61a
Add more keywords
2024-01-15 14:12:39 +09:00
Dean Herbert
cd20561843
Adjust text slightly
2024-01-15 14:12:10 +09:00
Dean Herbert
093001438c
Merge branch 'master' into add-minimise-on-focus-loss-setting
2024-01-15 14:05:25 +09:00
Dean Herbert
0b5cc8fb10
Fix gameplay counter textures not being cached ahead of time
...
Part of https://github.com/ppy/osu/issues/26535 .
2024-01-15 14:01:21 +09:00
smallketchup82
d2efa2e56a
peppy said he prefers the version without pipes so ill remove the pipes
2024-01-14 15:47:50 -05:00
Susko3
47b385c552
Move toolbar button padding to a const
2024-01-14 21:13:00 +01:00
Susko3
724b4c9507
Expand click target of toolbar buttons and clock
2024-01-14 21:09:49 +01:00
Bartłomiej Dach
e3ffea1b12
Merge pull request #26528 from peppy/update-framework
...
Update framework
2024-01-14 15:18:14 +01:00
Dean Herbert
4c6c849d26
Merge pull request #26522 from bdach/slider-tick-display
...
Show "slider end" statistic next to slider ticks on results screen (and use correct colour)
2024-01-14 23:17:40 +09:00
Dean Herbert
a8b301c618
Merge pull request #26526 from bdach/fix-date-display-failing
...
Fix date failing to display on leaderboard for some scores with weird datetimes
2024-01-14 22:56:32 +09:00
Salman Ahmed
13060c8698
Merge branch 'master' into slider-tick-display
2024-01-14 16:35:34 +03:00
Dean Herbert
fb4f8d0834
Update framework
2024-01-14 22:31:48 +09:00
Bartłomiej Dach
baf3867e17
Fix date failing to display on leaderboard for some scores with weird datetimes
...
Addresses https://github.com/ppy/osu/discussions/26517 .
The score reported has a datetime of 0001/1/1 05:00:00 AM.
Bit of a dodge fix but maybe fine?
2024-01-14 13:52:39 +01:00
Bartłomiej Dach
1cd7656f33
Reorder hit results so that SliderTailHit
is next to SmallTickHit
...
This addresses https://github.com/ppy/osu/discussions/26507 .
2024-01-14 09:33:04 +01:00
Bartłomiej Dach
eecd868d66
Use darker blue for SliderTailHit
result
2024-01-14 09:24:50 +01:00
Bartłomiej Dach
b7d74fda88
Revert "Keep editor in frame stable mode when possible"
2024-01-14 09:10:39 +01:00
Dean Herbert
68496f7a0e
Fix scores not showing up on leaderboards during gameplay
2024-01-14 15:13:20 +09:00
Salman Ahmed
0c02062780
Add guard against starting gameplay with invalid mod instances
...
Move guard to `Player` instead
2024-01-13 16:25:02 +03:00
Salman Ahmed
c514550dfa
Fix multiplayer potentially selecting mods of wrong ruleset when starting match
2024-01-13 11:17:08 +03:00
Salman Ahmed
aebf246f62
Change select all mod buttons to check ValidForSelection
instead of directly checking system mods
2024-01-13 09:43:50 +03:00
Salman Ahmed
c476843a83
Mark system mods as invalid for selection in mod select overlay
2024-01-13 09:43:20 +03:00
Dean Herbert
3d3f58c252
Merge pull request #26486 from peppy/update-framework
...
Update framework
2024-01-13 15:19:49 +09:00
Dean Herbert
0934cff501
Workaround implementation oversight
...
See https://github.com/ppy/osu-framework/pull/6130 .
2024-01-13 15:19:02 +09:00
Dean Herbert
98fe9f32d8
Merge pull request #26484 from bdach/only-validate-playback-rate-when-submitting
...
Only validate playback rate when in submission context
2024-01-13 12:10:55 +09:00
Dean Herbert
58ade18c06
Update framework
2024-01-13 04:53:26 +09:00
Bartłomiej Dach
6572fa4378
Only validate playback rate when in submission context
...
Temporary workaround for https://github.com/ppy/osu/issues/26404 .
It appears that some audio files do not behave well with BASS, leading
BASS to report a contradictory state of affairs (i.e. a track that is
in playing state but also not progressing). This appears to be related
to seeking specifically, therefore only enable the validation of
playback rate in the most sensitive contexts, namely when any sort of
score submission is involved.
2024-01-12 14:59:15 +01:00
Dean Herbert
02975b9498
Merge pull request #26471 from bdach/fix-incorrect-difficulty-peppy-stars
...
Fix incorrect score conversion on selected beatmaps due to incorrect `difficultyPeppyStars` rounding
2024-01-12 22:34:54 +09:00
Andrei Zavatski
c1e4e51a5f
Add comment explaining negative container padding
2024-01-12 15:34:07 +03:00
Andrei Zavatski
8d4ba6d466
Remove PathPadding property
2024-01-12 15:30:19 +03:00
Bartłomiej Dach
593ca9f84f
Merge pull request #26468 from frenzibyte/fix-skin-parsing
...
Fix mania skin array decoder not handling malformed entries rigorously
2024-01-12 12:52:02 +01:00
Nitrous
ccbba8a00b
Avoid NRE due to a beatmap loading with no hit objects.
2024-01-12 17:19:59 +08:00
Nitrous
c545a9c242
remove extra new line
2024-01-12 15:13:38 +08:00
Nitrous
c404628113
move creation of PlaybackSettings
to ReplayPlayer
2024-01-12 15:12:02 +08:00
Andrei Zavatski
e861661037
Remove invalidations in update
...
oops
2024-01-12 03:03:41 +03:00
Andrei Zavatski
101a26a53e
Update start and end progress in one go
2024-01-12 02:54:07 +03:00
Andrei Zavatski
bbb36da323
Don't pass start and end progress to the background
2024-01-11 18:58:40 +03:00
Andrei Zavatski
d75bf55c58
CI fixes
2024-01-11 18:28:00 +03:00
Andrei Zavatski
f1db7db259
Implement ArgonHealthDisplayBar
2024-01-11 17:52:34 +03:00
Andrei Zavatski
90ab306a96
Implement ArgonHealthDisplayBackground
2024-01-11 17:52:33 +03:00
Bartłomiej Dach
b65d3baa8a
Merge branch 'master' into health-less-value-changed
2024-01-11 10:33:08 +01:00
Bartłomiej Dach
7c9adc7ad3
Fix incorrect score conversion on selected beatmaps due to incorrect difficultyPeppyStars
rounding
...
Fixes issue that occurs on *about* 246 beatmaps and was first described
by me on discord:
https://discord.com/channels/188630481301012481/188630652340404224/1154367700378865715
and then rediscovered again during work on
https://github.com/ppy/osu/pull/26405 :
https://gist.github.com/bdach/414d5289f65b0399fa8f9732245a4f7c#venenog-on-ultmate-end-by-blacky-overdose-631
It so happens that in stable, due to .NET Framework internals, float
math would be performed using x87 registers and opcodes.
.NET (Core) however uses SSE instructions on 32- and 64-bit words.
x87 registers are _80 bits_ wide. Which is notably wider than _both_
float and double. Therefore, on a significant number of beatmaps,
the rounding would not produce correct values due to insufficient
precision.
See following gist for corroboration of the above:
https://gist.github.com/bdach/dcde58d5a3607b0408faa3aa2b67bf10
Thus, to crudely - but, seemingly accurately, after checking across
all ranked maps - emulate this, use `decimal`, which is slow, but has
bigger precision than `double`. The single known exception beatmap
in whose case this results in an incorrect result is
https://osu.ppy.sh/beatmapsets/1156087#osu/2625853
which is considered an "acceptable casualty" of sorts.
Doing this requires some fooling of the compiler / runtime (see second
inline comment in new method). To corroborate that this is required,
you can try the following code snippet:
Console.WriteLine(string.Join(' ', BitConverter.GetBytes(1.3f).Select(x => x.ToString("X2"))));
Console.WriteLine(string.Join(' ', BitConverter.GetBytes(1.3).Select(x => x.ToString("X2"))));
Console.WriteLine();
decimal d1 = (decimal)1.3f;
decimal d2 = (decimal)1.3;
decimal d3 = (decimal)(double)1.3f;
Console.WriteLine(string.Join(' ', decimal.GetBits(d1).SelectMany(BitConverter.GetBytes).Select(x => x.ToString("X2"))));
Console.WriteLine(string.Join(' ', decimal.GetBits(d2).SelectMany(BitConverter.GetBytes).Select(x => x.ToString("X2"))));
Console.WriteLine(string.Join(' ', decimal.GetBits(d3).SelectMany(BitConverter.GetBytes).Select(x => x.ToString("X2"))));
which will print
66 66 A6 3F
CD CC CC CC CC CC F4 3F
0D 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00
0D 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00
8C 5D 89 FB 3B 76 00 00 00 00 00 00 00 00 0E 00
Note that despite `d1` being converted from a less-precise floating-
-point value than `d2`, it still is represented 100% accurately as
a decimal number.
After applying this change, recomputation of legacy scoring attributes
for *all* rulesets will be required.
2024-01-10 19:30:18 +01:00
Dean Herbert
5d6f767dbd
Reduce excessive Color4
allocations during path colour updates
2024-01-11 00:31:39 +09:00
Salman Ahmed
7ca4d85441
Remove unnecessary AllowThousands
flag
...
The flag is there to match `float.Parse` behaviour, but it's too illogical and unnecessary to have it.
2024-01-10 17:48:48 +03:00
Salman Ahmed
698ae66a49
Fix mania skin array decoder not handling malformed entries rigorously
2024-01-10 17:41:58 +03:00
Dean Herbert
49d13cda6b
Fix failing test by setting health on source of truth
2024-01-10 23:09:43 +09:00
Dean Herbert
91677158a0
Update framework
2024-01-10 22:33:00 +09:00
Dean Herbert
f912a1ba31
Merge branch 'master' into health-less-value-changed
2024-01-10 18:03:34 +09:00
Dean Herbert
a4c9e9f84d
Merge pull request #26405 from bdach/catch-scoring
...
Adjust catch scoring to match stable score V2
2024-01-10 01:28:56 +09:00
Bartłomiej Dach
8e133ed3ab
Merge pull request #26422 from peppy/allocs-off-the-charts
...
Preliminary fixes for off-the-charts allocations
2024-01-09 16:06:24 +01:00
Bartłomiej Dach
00a4c055b3
Merge branch 'master' into catch-scoring
2024-01-09 15:49:37 +01:00
Dean Herbert
eec9b6806a
Merge pull request #26434 from bdach/mania-conversion-accuracy
...
Fix mania score conversion using score V1 accuracy
2024-01-09 23:48:07 +09:00
Nitrous
484e9e8ee6
Fix binding order of IsPaused
bindable and disable playback controls in spectator mode.
2024-01-09 22:09:20 +08:00
Bartłomiej Dach
a25223597b
Merge pull request #26456 from peppy/fix-missing-validation
...
Fix `SettingsToolboxGroup` allocating excessively due to missing cache validation
2024-01-09 14:36:14 +01:00
Bartłomiej Dach
8110c995dd
Merge branch 'master' into allocs-off-the-charts
2024-01-09 14:11:00 +01:00
Bartłomiej Dach
92ba770314
Fix missing wireframe behind percent sign on accuracy counter
2024-01-09 14:00:58 +01:00
Bartłomiej Dach
77bf6e3244
Fix missing wireframe behind "x" sign on combo counter display
2024-01-09 13:59:27 +01:00
Bartłomiej Dach
393d101bc2
Merge branch 'master' into realm-cleanup-overheads-fix
2024-01-09 13:35:22 +01:00
wooster0
8ad697ff4c
apply some suggestions/corrections
2024-01-09 21:28:46 +09:00
Dean Herbert
4110adc4c0
Fix missing wireframe on argon combo counter
2024-01-09 20:16:28 +09:00
Bartłomiej Dach
a8a70be04a
Reference property via nameof
rather than hardcoding
2024-01-09 11:49:42 +01:00
Dean Herbert
8324b75fa4
Merge pull request #26437 from bdach/song-select-logo-crash
...
Fix crash when clicking osu! logo in song select immediately after exiting
2024-01-09 19:40:19 +09:00
Bartłomiej Dach
cac0b0de6d
Remove unused using directive
2024-01-09 11:38:01 +01:00
Bartłomiej Dach
66b3945cd6
Move current screen check to better place
2024-01-09 10:44:30 +01:00
Dean Herbert
6ac1c799bd
Fix SettingsToolboxGroup
allocating excessively due to missing cache validation
2024-01-09 18:34:20 +09:00
Dean Herbert
9c7e555237
Fix initial animation not playing correctly
2024-01-09 18:27:37 +09:00
Dean Herbert
80892f3167
Fix misses not displaying properly
2024-01-09 18:18:11 +09:00
Dean Herbert
b6505ba063
Reduce colour tween overhead and mark other calls of concern
2024-01-09 18:16:54 +09:00
Dean Herbert
12a59eb34c
Remove vertex update overheads
2024-01-09 17:35:01 +09:00
Nitrous
c081ca2145
Make field to a local.
2024-01-09 16:30:48 +08:00
Dean Herbert
b3533d270c
Remove delegate overhead of HealthBarValue
/GlowBarValue
2024-01-09 17:20:49 +09:00
Nitrous
63961ea276
use RepeatingButtonBehavior
for seek buttons
2024-01-09 16:08:29 +08:00
Dean Herbert
d83b8dbdaf
Refactor ArgonHealthDisplay
to user interpolation and less bindable events
2024-01-09 16:50:27 +09:00
Dean Herbert
1837b31f9b
Remove usage of HealthDisplay.BindValueChanged
...
Health updates very often when using HP drain. Let's avoid bindable overheads.
2024-01-09 16:38:05 +09:00
Nitrous
bdecac6d79
Inverse check.
2024-01-09 15:19:54 +08:00
Nitrous
99c7685495
use GameplayClock.IsPaused
bindable instead of polling in Update
2024-01-09 15:18:21 +08:00
Dean Herbert
19d1fff536
Use native query to avoid huge overheads when cleaning up realm files
2024-01-09 15:37:29 +09:00
Dean Herbert
f376bb5ec7
Merge pull request #26441 from Joehuu/fix-wiki-main-page-layout
...
Fix wiki main page not displaying custom layout
2024-01-09 14:51:49 +09:00
Dean Herbert
1f6e1cbe56
Allow interacting with playlist item buttons when not selected
2024-01-09 14:45:21 +09:00
Dean Herbert
765d41faa9
Change second occurrence of debug.assert with early return for fallback safety
2024-01-09 14:07:48 +09:00
Dean Herbert
3f5899dae0
Fix incorrect implementation of wireframe digits
2024-01-09 14:07:48 +09:00
Nitrous
afa808695b
Make resolved properties nullable.
2024-01-09 12:48:11 +08:00
Dean Herbert
6f8a3e15d8
Merge pull request #26382 from peppy/editor-more-frame-stable
...
Keep editor in frame stable mode when possible
2024-01-09 13:25:03 +09:00
Nitrous
2e041823a1
Perform null check on gameplay state.
2024-01-09 12:24:09 +08:00
Nitrous
bb2b7d3c31
Add playback controls.
2024-01-09 12:23:01 +08:00
Dean Herbert
743411d7c6
Merge pull request #26440 from bdach/incorrect-combo-proportion
...
Fix score conversion incorrectly assuming zero combo score in certain cases
2024-01-09 13:21:30 +09:00
Dean Herbert
3cdc3b5786
Merge branch 'master' into fix-wiki-main-page-layout
2024-01-09 13:14:36 +09:00
Dean Herbert
172fe53099
Use better method of ignore case comparison
2024-01-09 13:13:32 +09:00
Dean Herbert
06447e95aa
Merge pull request #26439 from bdach/do-not-attempt-score-upgrade-for-custom-rulesets
...
Do not attempt to recalculate non-legacy scores or scores set on custom rulesets
2024-01-09 13:08:31 +09:00
Joseph Madamba
d6ba7a9c6e
Centralise INDEX_PATH
to WikiOverlay
2024-01-08 14:28:16 -08:00
Joseph Madamba
58619f1684
Fix wiki main page not displaying custom layout
2024-01-08 14:16:05 -08:00
Bartłomiej Dach
4f7dcb3a50
Do not attempt to recalculate non-legacy scores or scores set on custom rulesets
...
Addresses discussions such as https://github.com/ppy/osu/discussions/26407
or https://github.com/ppy/osu/discussions/25914 wherein:
- the game would attempt to convert scores for custom rulesets, which
makes no sense, especially so when they're not there,
- the game would also "recalculate" lazer scores, but that was never the
intention or was never supported; the game would just increment the
score version on those but still include them in the converted tally.
2024-01-08 22:47:13 +01:00
Bartłomiej Dach
aa83b84bb2
Fix Cinema mod being compatible with mods that can force failure
...
Addresses
https://github.com/ppy/osu/pull/26080#issuecomment-1868833214 .
2024-01-08 22:34:41 +01:00
Bartłomiej Dach
67df7b33fb
Add failing test coverage for not attempting to upgrade custom ruleset scores
2024-01-08 22:10:08 +01:00
Bartłomiej Dach
58db39ec32
Fix crash when clicking osu! logo in song select immediately after exiting
...
Closes https://github.com/ppy/osu/issues/26415 .
The crash report with incomplete log was backwards, the exit comes
first. Sentry events and the reproducing test in
8a87301c55
confirm this.
2024-01-08 21:37:25 +01:00
Bartłomiej Dach
c4ac53002c
Remove loop in combo score loss estimation calculation
2024-01-08 19:49:22 +01:00
Bartłomiej Dach
70ba5dd0d3
Merge pull request #26385 from peppy/carousel-thing
...
Fix beatmap carousel not preloading panels when off-screen
2024-01-08 19:37:34 +01:00
Dean Herbert
51bd32bf7e
Restore comment regarding usage of MinBy
2024-01-09 01:08:47 +09:00
Dean Herbert
e77d203a24
Refactor delayed load logic to hopefully read better
2024-01-09 01:08:17 +09:00
Bartłomiej Dach
8c82bb006c
Fix mania score conversion using score V1 accuracy
...
Partially addresses https://github.com/ppy/osu/discussions/26416
As pointed out in the discussion thread above, the total score
conversion process for mania was using accuracy directly from the
replay. In mania accuracy is calculated differently in score V1 than in
score V2, which meant that scores coming from stable were treated more
favourably (due to weighting GREAT and PERFECT equally).
To fix, recompute accuracy locally and use that for the accuracy
portion.
Note that this will still not be (and cannot be made) 100% accurate, as
in stable score V2, as well as in lazer, hold notes are *two*
judgements, not one as in stable score V1, meaning that full and correct
score statistics are not available without playing back the replay.
The effects of the change can be previewed on the following spreadsheet:
https://docs.google.com/spreadsheets/d/1wxD4UwLjwcr7n9y5Yq7EN0lgiLBN93kpd4gBnAlG-E0/edit#gid=1711190356
Top 5 changed scores with replays:
| score | master | this PR | replay |
| :------------------------------------------------------------------------------------------------------------------------------- | ------: | ------: | ------: |
| [Outlasted on Uwa!! So Holiday by toby fox [[4K] easy] (0.71\*)](https://osu.ppy.sh/scores/mania/460404716 ) | 935,917 | 927,269 | 920,579 |
| [ag0 on Emotional Uplifting Orchestral by bradbreeck [[4K] Rocket's Normal] (0.76\*)](https://osu.ppy.sh/scores/mania/453133066 ) | 921,636 | 913,535 | 875,549 |
| [rlarkgus on Zen Zen Zense by Gom (HoneyWorks) [[5K] Normal] (1.68\*)](https://osu.ppy.sh/scores/mania/458368312 ) | 934,340 | 926,787 | 918,855 |
| [YuJJun on Harumachi Clover by R3 Music Box [4K Catastrophe] (1.80\*)](https://osu.ppy.sh/scores/mania/548215786 ) | 918,606 | 911,111 | 885,454 |
| [Fritte on 45-byou by respon feat. Hatsune Miku & Megpoid [[5K] Normal] (1.52\*)](https://osu.ppy.sh/scores/mania/516079410 ) | 900,024 | 892,569 | 907,456 |
2024-01-08 16:38:43 +01:00
Bartłomiej Dach
5337d999b5
Merge branch 'master' into disable-intro-track-pause
2024-01-08 12:54:37 +01:00
Bartłomiej Dach
b6ce57b777
Use override that was intended to steer global track control rather than local sets
2024-01-08 12:54:16 +01:00
Bartłomiej Dach
50eba9ebdb
Reduce code duplication in test
2024-01-08 12:52:14 +01:00
Bartłomiej Dach
3e9d222d67
Merge pull request #26409 from peppy/overall-ranking-overlap
...
Fix overall ranking text overlapping at some aspect ratios
2024-01-08 12:29:42 +01:00
Bartłomiej Dach
7b663a27bd
Fix score conversion incorrectly assuming zero combo score in certain cases
2024-01-08 10:47:22 +01:00
Dean Herbert
dc31c66f62
Return null on font lookup failure instead of asserting
...
Fallback weirdness.
2024-01-07 20:41:58 +09:00
Dean Herbert
16ea7f9b77
Avoid completely unnecessary string allocations in ArgonCounterTextComponent
2024-01-07 14:31:22 +09:00
Dean Herbert
9d9e6fcfdb
Remove LINQ calls in hot paths
2024-01-07 14:31:22 +09:00
Dean Herbert
b809d4c068
Remove delegate overhead from argon health display's animation updates
2024-01-07 14:31:22 +09:00
Dean Herbert
d3710f0bfd
Remove scores from song select leaderboard when leaving the screen
2024-01-06 20:53:20 +09:00
Dean Herbert
14a43375a7
Fix overall ranking text overlapping at some aspect ratios
...
Can't confirm on the actual ranking screen due to stuff not working.
Maybe it'll work tomorrow.
Closes https://github.com/ppy/osu/issues/26341 .
2024-01-06 20:25:07 +09:00
Bartłomiej Dach
ea7078fab5
Implement approximate score conversion algorithm matching score V2
2024-01-05 20:46:11 +01:00
Bartłomiej Dach
8295ad1feb
Change catch scoring to match score V2
2024-01-05 20:46:11 +01:00
Zachary
091241634c
Make IntroScreen set AllowTrackControl
to false instead
2024-01-05 23:55:17 +10:00
Dean Herbert
fbc40ffc65
Merge pull request #26381 from Joehuu/flash-ongoing-operations-dialog
...
Flash blocking ongoing operations dialog when trying to force quit
2024-01-05 18:34:06 +09:00
Dean Herbert
e9289cfbe7
Reduce precision of audio balance adjustments during slider sliding
2024-01-05 02:26:30 +09:00
Dean Herbert
5b55ca6692
Cache legacy skin character glyph lookups to reduce string allocations
2024-01-05 02:26:30 +09:00
Dean Herbert
91bb3f6c57
Cache argon character glyph lookups to reduce string allocations
2024-01-05 01:24:00 +09:00
Zachary
9b734bac25
Allow track control after intro screen finishes.
2024-01-05 01:14:34 +10:00
Dean Herbert
35b9940c4e
Merge pull request #26140 from CaffeeLake/multiplier1x
...
Fix mod score multiplier rounding to 1.00x with specific mod combinations
2024-01-04 19:26:49 +09:00
Dean Herbert
81c6fd5589
Load items closer to the centre of the screen as a priority
2024-01-04 19:25:12 +09:00
Dean Herbert
adac3b65ce
Fix beatmap carousel not preloading panels when off-screen
2024-01-04 19:25:12 +09:00
Dean Herbert
b12011d501
Avoid rank updates after failing
2024-01-04 17:13:24 +09:00
Dean Herbert
a4dee1a01a
Don't unset Disabled
on rank (never actually disabled?)
2024-01-04 17:13:24 +09:00
Dean Herbert
705f25e4b9
Make ScoreProcessor.Rank
read-only
2024-01-04 17:13:24 +09:00
Dean Herbert
0bbc27e380
Add a gameplay configuration flag to disable fail animation
2024-01-04 17:13:24 +09:00
Dean Herbert
f0aeeeea96
...in a safer way
2024-01-04 17:13:21 +09:00
Dean Herbert
df99a37254
Fix another realm null inspection
2024-01-04 17:11:40 +09:00
Dean Herbert
0f11743fff
Merge pull request #26379 from wooster0/chat
...
Make chat command names case-insensitive
2024-01-04 16:17:42 +09:00
Dean Herbert
65c29b4f09
Make editor remain frame stable during normal playback
2024-01-04 15:47:16 +09:00
Joseph Madamba
ea714c86d4
Fix potential null reference with flash sample when exiting rapidly
...
Fixes `TestForceExitWithOperationInProgress()`.
2024-01-03 22:30:46 -08:00
Joseph Madamba
cd9bf0c753
Flash blocking ongoing operations dialog when trying to force quit
2024-01-03 22:30:46 -08:00
wooster0
cf5f0a2bdc
Make chat commands case-insensitive
...
Would be nice if I accidentally have caps lock enabled and write "/HELP" it still works.
2024-01-04 15:06:10 +09:00
wooster0
659118c043
Fix wiki link path inconsistencies
...
If I access https://osu.ppy.sh/wiki/en/MAIN_PAGE or use any other
capitalization my browser always redirects me to
https://osu.ppy.sh/wiki/en/Main_page so I think Main_page is the
correct capitalization.
This might slightly reduce loading time? No idea though. Probably
negligible if so.
2024-01-04 12:20:51 +09:00
wooster0
2c64db0628
Use already existing message placeholder + localized string
2024-01-04 12:15:48 +09:00
CaffeeLake
c7b0a7ff69
Merge branch 'master' into multiplier1x
2024-01-04 05:04:23 +09:00
StanR
e240443c46
Update LocalUser
statistics, add test
2024-01-03 18:15:32 +06:00
StanR
7262fef67f
Add comments
2024-01-03 17:39:48 +06:00
CaffeeLake
8482d731c3
Merge branch 'master' into multiplier1x
2024-01-03 20:24:45 +09:00
Bartłomiej Dach
04147eb689
Fix lack of correct default value spec
2024-01-03 11:46:28 +01:00
StanR
d34f30f6ad
Add Statistics
bindable to IAPIProvider
and update it from SoloStatisticsWatcher
2024-01-03 14:37:57 +06:00
StanR
3df7430d2e
Bind UserRankPanel
values to Statistics
bindable in APIAccess
2024-01-03 14:32:32 +06:00
Bartłomiej Dach
e686a6a1dd
Fix player submission test intermittent failures due to audio playback discrepancy logic kicking in
...
See https://github.com/ppy/osu/actions/runs/7384457927/job/20087439457#step:5:133 .
2024-01-03 09:17:01 +01:00
Dean Herbert
bdfaa4b583
Fix crash when dragging rotation control in editor with both mouse buttons
...
Closes https://github.com/ppy/osu/issues/26325 .
2024-01-03 13:34:50 +09:00
Dean Herbert
18820e60b3
Merge pull request #26337 from bdach/persist-user-status-to-config
...
Store user online state in config for next launch
2024-01-03 13:21:31 +09:00
Dean Herbert
e4ba7b81b0
Merge pull request #26343 from adryzz/fix-discord-multiplayer-presence
...
update the current activity when the multiplayer room updates
2024-01-03 13:10:56 +09:00
Dean Herbert
4e7b1e1190
Merge pull request #26333 from bdach/retry-perfect-unobserved-error
...
Fix possible double score submission when auto-retrying via perfect mod
2024-01-03 13:02:38 +09:00
CaffeeLake
79ef032182
Merge branch 'master' into multiplier1x
2024-01-03 07:40:02 +09:00
StanR
c4be6fa974
Fix code quality, add new cards to the test scene
2024-01-03 00:37:24 +06:00
Lena
17656e9b9c
update the current activity when the multiplayer room updates
2024-01-02 18:38:25 +01:00
Dean Herbert
16c7c14602
Merge pull request #26332 from bdach/more-score-conversion-fail
...
Fix standardised score conversion failing for some taiko scores due to overestimating accuracy portion
2024-01-03 01:48:28 +09:00
StanR
5eaf5fca2a
Add user card with global/country ranks for login overlay
2024-01-02 20:33:36 +06:00
Bartłomiej Dach
09b2a4e3b4
Fix users blipping online briefly before their online status is known
2024-01-02 14:07:59 +01:00
Bartłomiej Dach
d4e917448d
Fix login panel dropdown forcing user online
...
It was sort of assuming that the user can't be anything but online when
opening, thus forcing the status to online via the immediately-run value
change callback.
2024-01-02 14:07:04 +01:00
Bartłomiej Dach
f9f03ebc0f
Store user online state in config for next launch
...
Closes remainder of https://github.com/ppy/osu/issues/12635 .
2024-01-02 14:04:40 +01:00
Dean Herbert
05d9aeefbc
Merge pull request #26248 from smoogipoo/slider-tail-judgement
...
Increase slider tails' worth to 150 points (up from 30)
2024-01-02 20:50:34 +09:00
Bartłomiej Dach
3c5e9ac9a9
Fix possible double score submission when auto-retrying via perfect mod
...
Closes https://github.com/ppy/osu/issues/26035 .
`submitOnFailOrQuit()`, as the name suggests, can be called both when
the player has failed, or when the player screen is being exited from.
Notably, when perfect mod with auto-retry is active, the two happen
almost simultaneously.
This double call exposes a data race in `submitScore()` concerning the
handling of `scoreSubmissionSource`. The race could be experimentally
confirmed by applying the following patch:
diff --git a/osu.Game/Screens/Play/SubmittingPlayer.cs b/osu.Game/Screens/Play/SubmittingPlayer.cs
index 83adf1f960..76dd29bbdb 100644
--- a/osu.Game/Screens/Play/SubmittingPlayer.cs
+++ b/osu.Game/Screens/Play/SubmittingPlayer.cs
@@ -228,6 +228,7 @@ private Task submitScore(Score score)
return Task.CompletedTask;
}
+ Logger.Log($"{nameof(scoreSubmissionSource)} is {(scoreSubmissionSource == null ? "null" : "not null")}");
if (scoreSubmissionSource != null)
return scoreSubmissionSource.Task;
@@ -237,6 +238,7 @@ private Task submitScore(Score score)
Logger.Log($"Beginning score submission (token:{token.Value})...");
+ Logger.Log($"creating new {nameof(scoreSubmissionSource)}");
scoreSubmissionSource = new TaskCompletionSource<bool>();
var request = CreateSubmissionRequest(score, token.Value);
which would result in the following log output:
[runtime] 2024-01-02 09:54:13 [verbose]: scoreSubmissionSource is null
[runtime] 2024-01-02 09:54:13 [verbose]: scoreSubmissionSource is null
[runtime] 2024-01-02 09:54:13 [verbose]: Beginning score submission (token:36780)...
[runtime] 2024-01-02 09:54:13 [verbose]: creating new scoreSubmissionSource
[runtime] 2024-01-02 09:54:13 [verbose]: Beginning score submission (token:36780)...
[runtime] 2024-01-02 09:54:13 [verbose]: creating new scoreSubmissionSource
[network] 2024-01-02 09:54:13 [verbose]: Performing request osu.Game.Online.Solo.SubmitSoloScoreRequest
[network] 2024-01-02 09:54:14 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/869310/solo/scores/36780 successfully completed!
[network] 2024-01-02 09:54:14 [verbose]: SubmitSoloScoreRequest finished with response size of 639 bytes
[network] 2024-01-02 09:54:14 [verbose]: Performing request osu.Game.Online.Solo.SubmitSoloScoreRequest
[runtime] 2024-01-02 09:54:14 [verbose]: Score submission completed! (token:36780 id:20247)
[network] 2024-01-02 09:54:14 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/869310/solo/scores/36780 successfully completed!
[network] 2024-01-02 09:54:14 [verbose]: SubmitSoloScoreRequest finished with response size of 639 bytes
[runtime] 2024-01-02 09:54:14 [error]: An unhandled error has occurred.
[runtime] 2024-01-02 09:54:14 [error]: System.InvalidOperationException: An attempt was made to transition a task to a final state when it had already completed.
[runtime] 2024-01-02 09:54:14 [error]: at osu.Game.Screens.Play.SubmittingPlayer.<>c__DisplayClass30_0.<submitScore>b__0(MultiplayerScore s) in /home/dachb/Documents/opensource/osu/osu.Game/Screens/Play/SubmittingPlayer.cs:line 250
The intention of the submission logic was to only ever create one
`scoreSubmissionSource`, and then reuse this one if a redundant
submission request was made. However, because of the temporal proximity
of fail and quit in this particular case, combined with the fact that
the calls to `submitScore()` are taking place on TPL threads, means that
there is a read-write data race on `scoreSubmissionSource`, wherein the
source can be actually created twice.
This leads to two concurrent score submission requests, which, upon
completion, attempt to transition only _the second_
`scoreSubmissionSource` to a final state (this is because the API
success/failure request callbacks capture `this`, i.e. the entire
`SubmittingPlayer` instance, rather than the `scoreSubmissionSource`
reference specifically).
To fix, ensure correct synchronisation on the read-write critical
section, which should prevent the `scoreSubmissionSource` from being
created multiple times.
2024-01-02 10:55:52 +01:00
Bartłomiej Dach
b0cfea4916
Fix standardised score conversion failing for some taiko scores due to overestimating accuracy portion
...
Standardised score conversion would return a negative total score for
https://osu.ppy.sh/scores/taiko/182230346 .
The underlying reason for this is that the estimation of the accuracy
portion for a score can be above the actual accuracy portion in the
taiko ruleset.
When calculating the maximum accuracy portion achievable,
`TaikoLegacyScoreSimulator` will include the extra 300 points from
a double hit on a strong hit, per strong hit. However, this double hit
is not factored into accuracy.
Both of the aforementioned facts mean that in taiko
maximumLegacyAccuracyScore * score.Accuracy
- which normally in other rulesets can be used pretty reliably as the
exact number of points gained from the accuracy portion - is an
estimate in the case of taiko, and an _upper_ estimate at that,
because it implicitly assumes that the user has also hit
`score.Accuracy` percent of all double hits possible in the beatmap. If
this assumption is not upheld, then the user will have earned _less_
points than that from the accuracy portion, which means that the combo
proportion estimate will go below zero.
It is possible that this has happened on other scores before, but did
not result in the total score going negative as the accuracy portion
gained would have counteracted the effect of that due to being larger in
magnitude than the score loss incurred from the negative combo
portion. In the case of the score in question this was not the case due
to very low accuracy _and_ very low max combo.
2024-01-02 10:11:49 +01:00
Dean Herbert
94531807e4
Make slider ends show on results screen again
2024-01-02 17:01:32 +09:00
iilwy
fbedcb29e4
Merge branch 'master' into fix-precision
2024-01-01 10:42:15 -06:00
CaffeeLake
ad4b5f6ded
Fix: floating point errors
...
Signed-off-by: CaffeeLake <PascalCoffeeLake@gmail.com>
2024-01-01 08:32:21 +09:00
Salman Ahmed
34acb435b8
Merge branch 'master' into multiplier1x
2023-12-31 16:48:00 +03:00
wooster0
0c85fd496f
Don't leave scores screen empty if no scores are present yet
...
Addresses https://github.com/ppy/osu/discussions/23787
I originally wanted to set `allowShowingResults` to false if there are
no results but because this involves an API request to fetch the scores
that would mean all the scores would have to be fetched all at once so
that it knows whether to hide or show the "View results" button on a
beatmap.
Because that would slow things down and be very inefficient, this still
allows the user to view the scores screen but if there aren't any
scores, it shows a text, which I think is at least for now better than
nothing.
As for the testing of this, I wasn't sure how to not generate scores
only for one specific test so I opted into not using `SetUpSteps` and
doing it that way.
2023-12-31 22:42:32 +09:00
Dean Herbert
e10733834b
Merge pull request #26201 from iminlikewithyou/menu-button-tweaks
...
Adjust menu buttons
2023-12-31 16:58:55 +09:00
Dean Herbert
68b1455257
Merge pull request #26267 from frenzibyte/fix-audio-offset-adjust-control
...
Fix suggested value in audio offset adjust control being opposite in signs
2023-12-31 16:32:13 +09:00
iminlikewithyou
5ae5d7f92d
change floor to round
2023-12-30 23:59:47 -06:00
Salman Ahmed
4dc11c4c48
Update existing code to use helper method
2023-12-31 05:18:07 +03:00
Salman Ahmed
7cfb786b1a
Add helper method for properly formatting score multiplier in ModUtils
2023-12-31 05:17:34 +03:00
Gabriel Del Nero
922b6ccb83
Use FontAwesome
solid heart icon instead of OsuIcon
's
2023-12-31 00:36:55 +01:00
iminlikewithyou
45f6c78314
Merge branch 'master' of https://github.com/ppy/osu into menu-button-tweaks
2023-12-30 12:58:10 -06:00
iminlikewithyou
452f201f06
use margins isntead of moving the position of the sprite
2023-12-30 12:56:38 -06:00
Salman Ahmed
e6fe631625
Fix suggested value in audio offset adjust control being opposite in signs
2023-12-30 21:34:37 +03:00
Salman Ahmed
cc89390ea8
Expose SuggestedOffset
bindable for testing purposes
2023-12-30 21:33:03 +03:00
CaffeeLake
bca0600482
Use 0.99x or 1.01x
...
Signed-off-by: CaffeeLake <PascalCoffeeLake@gmail.com>
2023-12-31 00:47:09 +09:00
Dan Balasescu
807443b648
Add HitResult.SliderTailHit
2023-12-30 10:38:47 +09:00
Dean Herbert
0fa4cd5dfe
Merge pull request #26225 from peppy/new-menu-tips
...
Add some new menu tips (and reword some others)
2023-12-29 22:27:47 +09:00
Dean Herbert
61c46b78bd
Update MenuTip.cs
...
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2023-12-29 22:24:16 +09:00
Dean Herbert
9f0fe6c6ca
Fix common typos
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-12-29 22:20:29 +09:00
Dean Herbert
d00b7c9cdf
Add some new menu tips (and reword some others)
2023-12-29 22:14:51 +09:00
Bartłomiej Dach
f80f6a8c5b
Merge pull request #26207 from frenzibyte/fix-dropdown-colour
...
Fix dropdown colour not updating correctly on enabled state changes
2023-12-29 14:07:09 +01:00
Bartłomiej Dach
17753b8235
Remove opaque background from toolbar user button
...
Would close https://github.com/ppy/osu/issues/26223 , and generally seems
more consistent with the rest of toolbar anyhow?
2023-12-29 13:49:11 +01:00
Dean Herbert
490c584982
Merge pull request #26222 from bdach/i-cannot-into-offsets
...
Fix global audio offset suggestion feature not taking previous offset value into account
2023-12-29 21:14:52 +09:00
Dean Herbert
2b81f4f557
Merge pull request #26221 from bdach/system-title-only-on-top-level-menu
...
Do not display system title in inital menu state
2023-12-29 21:13:40 +09:00
Bartłomiej Dach
cdcb3ef4aa
Fix global audio offset suggestion feature not taking previous offset value into account
...
See https://osu.ppy.sh/comments/2989193 etc.
2023-12-29 12:20:58 +01:00
Dan Balasescu
9548818a1b
Merge pull request #26220 from bdach/no-version-manager-on-deployed-builds
...
Do not show main menu version display on deployed builds
2023-12-29 19:54:30 +09:00
Bartłomiej Dach
db78d73fa5
Do not display system title in inital menu state
...
Addresses https://github.com/ppy/osu/discussions/26199 .
2023-12-29 11:50:30 +01:00
Bartłomiej Dach
25fa76a1b2
Do not show main menu version display on deployed builds
...
See https://discord.com/channels/188630481301012481/188630652340404224/1190028102525530202 .
2023-12-29 11:14:28 +01:00
Bartłomiej Dach
99cddb6317
Use alternative workaround
2023-12-29 11:07:45 +01:00
Bartłomiej Dach
cd1f6b46c4
Fix crash after changing audio track in editor
...
Closes https://github.com/ppy/osu/issues/26213 .
Reproduction scenario: switch audio track in editor after timeline
loads.
Happens because `beatmap.Value.Track.Length` is 0 immediately after a
track switch, until BASS computes the actual track length on the audio
thread.
Yes this is a hack. No I have no better immediate ideas how to address
this otherwise.
2023-12-29 10:37:36 +01:00
Dan Balasescu
a6313c4ee8
Expose Mod.UsesDefaultConfiguration
2023-12-29 17:16:16 +09:00
Salman Ahmed
c147ec0a98
Update dropdown disabled state to match with other components
2023-12-29 05:31:13 +03:00
Salman Ahmed
150bf67064
Fix dropdown colour not updating correctly on enabled state changes
2023-12-29 05:30:50 +03:00
Nitrous
c68a850325
Make menu tip about mod select more up to date.
2023-12-29 08:51:54 +08:00
iminlikewithyou
51d26d2d71
make the hover scale bigger
...
as a consequence, the rotation needs to be tweaked to be lower
2023-12-28 17:20:44 -06:00
iminlikewithyou
f1f1221e0e
move text left to be visually centered in the skewed rectangle
2023-12-28 17:18:41 -06:00
iminlikewithyou
4760c6aaee
move icon upwards to be visually centered
2023-12-28 17:17:24 -06:00
iminlikewithyou
637119f7d4
increase the base size of button icons
2023-12-28 17:15:23 -06:00
Bartłomiej Dach
7a10e132ea
Fix crash when retrieval of system title image fails
...
Closes https://github.com/ppy/osu/issues/26194 .
2023-12-28 20:39:13 +01:00
Dean Herbert
8e3fe090f3
Merge pull request #26169 from bdach/universal-offset-from-session-plays
...
Implement automatic suggestion of global audio offset based on last plays
2023-12-28 22:57:30 +09:00
Dean Herbert
1de3e3771f
Merge pull request #26187 from peppy/dialog-overlay-design-update
...
Update popup dialog design
2023-12-28 22:39:42 +09:00
Bartłomiej Dach
93c7ebdae3
Remove unused using
2023-12-28 14:30:11 +01:00
Bartłomiej Dach
6d124513e7
Fix test failures due to player bailing early after failing to load beatmap
2023-12-28 14:15:15 +01:00
Bartłomiej Dach
619b0cc69b
Fix code quality inspection
2023-12-28 14:12:28 +01:00
Bartłomiej Dach
6718de01ec
Suggest audio adjust after one play
2023-12-28 14:11:08 +01:00
Bartłomiej Dach
e6f1d7db44
Move SessionAverageHitErrorTracker
to more general namespace
2023-12-28 14:10:03 +01:00
Bartłomiej Dach
24a80da83f
Merge branch 'master' into universal-offset-from-session-plays
2023-12-28 14:07:46 +01:00
Bartłomiej Dach
e0279920b6
Merge pull request #26189 from peppy/fix-escape-key-spectator-fail
...
Fix using "Back" binding at spectator fail screen not working
2023-12-28 13:23:38 +01:00
Dean Herbert
f8347288c1
Add padding around text in dialogs
2023-12-28 20:29:56 +09:00
Bartłomiej Dach
a9c7131d47
Merge pull request #26184 from peppy/spectate-from-context-menu
...
Allow entering spectator mode from context menu on user panels
2023-12-28 12:24:29 +01:00
Dean Herbert
e1a376c0a7
Fix using "Back" binding at spectator fail screen not working
2023-12-28 20:14:18 +09:00
Bartłomiej Dach
0fc86a07cb
Merge pull request #26177 from peppy/fix-leaderboard-tab-ordering
...
Fix song select leaderboard tab ordering not matching stable
2023-12-28 12:02:46 +01:00
Dean Herbert
91af94086c
Remove offset wizard button for now
2023-12-28 20:02:08 +09:00
Dean Herbert
b7f3c83514
Expose the ability to update global offset from the player loader screen
2023-12-28 20:01:34 +09:00
Dean Herbert
28e220ca50
Update popup dialog design
...
Had to be done. I hated the old ones so much.
As usual, disclaimer that this is an iterative design and will probably
be replaced in the future.
2023-12-28 19:04:35 +09:00
Dean Herbert
22eced3300
Show local user in online users
2023-12-28 17:40:07 +09:00
Dean Herbert
2ec9343868
Add the ability to spectate a user by right clicking their user panel
2023-12-28 17:35:10 +09:00
Dean Herbert
bd0e2b4dde
Remove disclaimer screen completely
2023-12-28 17:21:29 +09:00
Dean Herbert
7dc50b9baf
Don't dismiss on hover, and allow dismissing via click
2023-12-28 17:20:01 +09:00
Dean Herbert
1f2339244e
Add supporter display to main menu
2023-12-28 17:20:01 +09:00
Dean Herbert
b19f72481b
Fade out quickly on game exit sequence
2023-12-28 17:19:41 +09:00
Dean Herbert
0ad6ac8b2a
Remove unused variable
2023-12-28 16:48:17 +09:00
Dean Herbert
932d03a4f8
Make toggle more immediately hide/show tips
2023-12-28 16:21:19 +09:00
Dean Herbert
222459d921
Add background and improve layout
2023-12-28 16:16:27 +09:00
Dean Herbert
a1867afbb4
Move menu tips to main menu
...
In preparation for removing the disclaimer screen.
2023-12-28 16:06:08 +09:00
rushiiMachine
75b9d0fe66
Make flashlight scale with playfield
...
When the playfield is shrunk with mods such as BarrelRoll, flashlight does not account for this, making it significantly easier to play. This makes it scale along with the playfield.
2023-12-27 23:02:45 -08:00
Dean Herbert
be3fc45da5
Merge branch 'master' into system-title-basic
2023-12-28 15:19:33 +09:00
Dean Herbert
6684987289
Reduce refresh interval slightly
2023-12-28 15:19:09 +09:00
Dean Herbert
0ea62d0c5d
Add initial additive blending on fade in
2023-12-28 15:16:42 +09:00
Dean Herbert
972234b1e5
Move re-schedule inside continuation
2023-12-28 15:12:44 +09:00
Dean Herbert
481a251786
Use HandleLink
to allow potentially opening wiki or otherwise
2023-12-28 15:11:02 +09:00
Dean Herbert
289e0f00f9
Add flash on click
2023-12-28 15:10:47 +09:00
Dean Herbert
c70e7d340d
Adjust animation and add delay to URL open
2023-12-28 15:10:47 +09:00
Dean Herbert
93a8afe96e
Add very simple cache-busting (30 minutes)
2023-12-28 14:40:10 +09:00
Dean Herbert
ffc8778d67
Fix song select leaderboard tab ordering not matching stable
2023-12-28 14:13:35 +09:00
Dean Herbert
f8d6b8e347
Adjust toolbar animations / layering to feel better
2023-12-28 14:10:52 +09:00
Felipe Marins
dce9204731
Select search box text on ModSelectOverlay when mod selection changes
2023-12-28 00:10:44 -03:00
Felipe Marins
cbfcda7929
Expose SelectAll()
method on ShearedSearchTextBox
2023-12-28 00:10:01 -03:00
Bartłomiej Dach
ef39759813
More code quality inspections
2023-12-28 00:18:20 +01:00
Bartłomiej Dach
10106e20c7
Merge pull request #26162 from Gabixel/alternate-daycore-with-classic-hotkey
...
Cycle between Daycore and Half Time mod when using classic hotkeys style
2023-12-28 00:16:51 +01:00
rushiiMachine
0c8b551c66
SkinEditor lifetime fix & show gameplay
...
If the SkinEditor was created already but not finished initializing, wait for it to initialize before handling a screen change, which could possibly null the skin editor. Additionally, in the case the skin editor is already loaded but hidden, make sure to show gameplay.
2023-12-27 14:49:42 -08:00
Bartłomiej Dach
ac449131ed
CodeFileSanity does not like records in standalone files
2023-12-27 23:47:37 +01:00
Bartłomiej Dach
a3f720bc62
Retrieve system title from online source
2023-12-27 23:37:39 +01:00
Bartłomiej Dach
d9299a8a55
Implement visual appearance of "system title" message in main menu
2023-12-27 23:07:17 +01:00
Bartłomiej Dach
160342ceed
Implement automatic suggestion of audio offset based on last plays
2023-12-27 21:14:37 +01:00
Bartłomiej Dach
f51b5f5487
Add components to track average hit errors across session
2023-12-27 20:44:59 +01:00
Dean Herbert
cf5e3e8863
Breathe some colour and life into the toolbar
2023-12-28 04:12:55 +09:00
Dean Herbert
92c4c20a51
Adjust paddings and fills of toolbar buttons
2023-12-28 03:43:38 +09:00
Dean Herbert
70aa067eb1
Adjust gradient visibility and transition
2023-12-28 03:23:04 +09:00
Bartłomiej Dach
1b7af989ec
Migrate BeatmapOffsetControl
to use session static directly
2023-12-27 19:19:27 +01:00
Bartłomiej Dach
d4423d4933
Store last set score to a SessionStatic
2023-12-27 19:13:42 +01:00
Dean Herbert
1f55ef211e
Rearrange buttons
2023-12-28 03:11:27 +09:00
Dean Herbert
5f7f1f771d
Reword tooltip text for dashboard
2023-12-28 03:09:20 +09:00
Dean Herbert
655528a537
Update resources
2023-12-28 03:04:13 +09:00
Bartłomiej Dach
89e2b6358a
Remove hexacons
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
53766285ce
Remove remaining hexacons usages
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
288ac930e4
Use new icons in editor
...
Some that exist on figma are purposefully not used due to an editorial
request from @peppy.
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
2857322a8b
Use new icons in settings
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
c45477bd1f
Use new icons in main menu wherever feasible
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
28d9145a4c
Add more spacing to toolbar icons
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
69baabee62
Replace hexacons in toolbar with new icons
2023-12-27 17:42:18 +01:00
Bartłomiej Dach
45143a6c17
Implement new icon store
2023-12-27 17:42:17 +01:00
Susko3
a6bed04e50
Update confine mode settings checkbox to match the new ConfineMouseTracker
logic
...
Not too happy with the duplicated logic, but settings can't depend on `ConfineMouseTracker`
for testability reasons.
2023-12-27 16:54:01 +01:00
Susko3
0fde9cd6ae
Override confine mouse mode only when clicking outside the window would minimise it
2023-12-27 16:50:25 +01:00
Susko3
c9de6a383d
Add settings checkbox for MinimiseOnFocusLossInFullscreen
...
Shown only on desktop platforms in fullscreen.
"alt-tab" keyword also matches "alt" and "tab".
2023-12-27 16:21:54 +01:00
Gabriel
28a552f7b9
Merge branch 'ppy:master' into alternate-daycore-with-classic-hotkey
2023-12-27 15:12:13 +01:00
Bartłomiej Dach
13333f7575
Make room for OsuIcon
to accept new icons
2023-12-27 15:04:28 +01:00
Gabriel Del Nero
14b37db3dd
Make ModDaycore
sequential for ModHalfTime
2023-12-27 14:35:19 +01:00
Dean Herbert
1233533fb9
Update framework
2023-12-27 22:14:15 +09:00
Bartłomiej Dach
e9f350e763
Merge pull request #26147 from peppy/settings-expanded
...
Always show settings section text on buttons
2023-12-27 09:17:56 +01:00
Dean Herbert
768e10d55f
Adjust NotificationOverlay
fades to match
2023-12-27 13:50:47 +09:00
Dean Herbert
81ba46216f
Speed up fades in transition to avoid ugliness
2023-12-27 13:49:00 +09:00
Dean Herbert
901674a130
Move back button inside sidebar to fix weird animation
2023-12-27 13:39:13 +09:00
Dean Herbert
8cd240fbec
Reduce size and fix alignment of back button
2023-12-27 13:20:19 +09:00
rushiiMachine
85a768d0c8
Don't reuse results delay const
2023-12-26 12:46:50 -08:00
rushiiMachine
1d4db3b7a9
Fix SkinEditorOverlay
freezing when ReplayPlayer
screen exits early
...
Originally when popping in, the ReplayPlayer was loaded first (if previous screen was MainMenu), and afterwards the SkinEditor component was loaded asynchronously. However, if the ReplayPlayer screen exits quickly (like in the event the beatmap has no objects), the skin editor component has not finished initializing (this is before it was even added to the component tree, so it's still not marked `Visible`), then the screen exiting will cause `OsuGame` to call SetTarget(newScreen) -> setTarget(...) which sees that the cached `skinEditor` is not visible yet, and hides/nulls the field. This is the point where LoadComponentAsync(editor, ...) finishes, and the callback sees that the cached skinEditor field is now different (null) than the one that was loaded, and never adds it to the component tree. This occurrence is unhandled and as such the SkinEditorOverlay never hides itself, consuming all input infinitely.
This PR changes the loading to start loading the ReplayPlayer *after* the SkinEditor has been loaded and added to the component tree.
Additionally, this lowers the exit delay for ReplayPlayer and changes the "no hit objects" notification to not be an error since it's a controlled exit.
2023-12-26 12:22:00 -08:00
Bartłomiej Dach
af47f9fd70
Fix sidebar button text becoming masked away during fadeout
2023-12-26 20:24:43 +01:00
Bartłomiej Dach
c107bfcd31
Fix TestSceneSideOverlays
test failure
2023-12-26 20:09:34 +01:00
Bartłomiej Dach
668ce937a8
Merge pull request #26138 from peppy/fix-audio-rate-playback-not-fail
...
Bail from score submission if audio playback rate is too far from reality
2023-12-26 19:13:46 +01:00
Dean Herbert
5d0b524794
Adjust back button to match style better
2023-12-27 02:54:24 +09:00
Dean Herbert
8e13f65c5d
Adjust hover effect slightly
2023-12-27 02:46:21 +09:00
Dean Herbert
5b1deb7c4b
Give buttons a touch of padding to make click effect feel better
2023-12-27 02:40:50 +09:00
Dean Herbert
5de8307918
Reduce width of sidebar buttons
2023-12-27 02:38:23 +09:00
Dean Herbert
9a1a97180d
Change settings overlay to always show expanded buttons
2023-12-27 02:33:17 +09:00
Dean Herbert
58476d5429
Allow ExpandingContainer
to not auto expand on hover
2023-12-27 02:33:02 +09:00
Dean Herbert
c55458e49c
Remove pointless intermediary class
2023-12-27 02:32:47 +09:00
Dean Herbert
d70fddb6fd
Fix elapsed time being counted twice on first frame
2023-12-27 00:11:22 +09:00
Dean Herbert
03e2463b06
Add test coverage and refactor to better handle equality edge case
2023-12-26 21:21:08 +09:00
Dean Herbert
1f2f749db6
Fix selection not being retained in control point list when undoing / redoing
2023-12-26 21:04:42 +09:00
Dean Herbert
f2c0e7cf2e
Fix editor's control point list refreshing multiple times for a single change
2023-12-26 21:04:42 +09:00
Bartłomiej Dach
b1a26acdd0
Merge pull request #26136 from peppy/add-waveform-visual-offset
...
Add visual offset to better align editor waveforms with expectations
2023-12-26 12:57:13 +01:00
Nathan
6269c79c17
Merge branch 'master' into fix-rewind-backtracking
2023-12-26 03:10:00 -08:00