1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 08:37:24 +08:00
Commit Graph

42191 Commits

Author SHA1 Message Date
Bartłomiej Dach
fba44e67a0
Merge pull request #27214 from Givikap120/freemod_mapinfo_fix
Fix mod selection in online-play rooms not accounting for mods of selected item
2024-03-07 12:45:14 +01:00
Bartłomiej Dach
3d8fdc52a4
Merge pull request #27501 from turbedi/throw_helper
Use ThrowHelper methods in more places
2024-03-07 11:36:21 +01:00
Bartłomiej Dach
e99030c515
Merge pull request #27516 from frenzibyte/editor-screen-selector
Change editor screen switcher control design and behaviour to act like a button
2024-03-07 11:04:18 +01:00
Bartłomiej Dach
644553d5b4
Merge branch 'master' into freemod_mapinfo_fix 2024-03-07 09:24:44 +01:00
Dan Balasescu
1cafb09977
Increase border thickness 2024-03-07 17:22:38 +09:00
Joseph Madamba
c36232bc02 Fix results screen accuracy circle not showing correctly for failed S with no flair 2024-03-07 00:10:30 -08:00
Dan Balasescu
e0fe33a7a7
Merge pull request #27513 from bdach/osu-score-conversion-bad-very-not-good
Fix osu! standardised score estimation algorithm violating basic invariants
2024-03-07 17:05:32 +09:00
Salman Ahmed
0fe139a189 Adjust editor screen switcher control design and behaviour 2024-03-07 08:20:46 +03:00
Salman Ahmed
336a6180e5 Expose TRANSITION_LENGTH from tab control 2024-03-07 08:20:20 +03:00
Bartłomiej Dach
aa3cd402ca
Fix broken english 2024-03-06 21:30:31 +01:00
Bartłomiej Dach
3121cf81e6
Bump score version 2024-03-06 21:30:09 +01:00
Dean Herbert
13f7480d79
Merge branch 'master' into sb-lifetime-improvements 2024-03-06 19:27:40 +08:00
Dean Herbert
5b6703ec0d
Move optimisation to isolated method 2024-03-06 19:25:13 +08:00
Dean Herbert
29a37e3585
Merge pull request #27491 from bdach/f-rank-appearance
Update F rank badge colours to match latest designs
2024-03-06 18:55:20 +08:00
Bartłomiej Dach
08609e19d6
Fix osu! standardised score estimation algorithm violating basic invariants
As it turns out, the "lower" and "upper" estimates of the combo portion
of the score being converted were misnomers. In selected cases
(scores with high accuracy but combo being lower than max by more than
a few objects) the janky score-based math could overestimate the count
of remaining objects in a map. For instance, in one case the numbers
worked out something like this:

- Accuracy: practically 100%
- Max combo on beatmap: 571x
- Max combo for score: 551x

The score-based estimation attempts to extract a "remaining object
count" from score, by doing something along of sqrt(571^2 - 551^2). That
comes out to _almost 150_. Which leads to the estimation overshooting
the total max combo count on the beatmap by some hundred objects.

To curtail this nonsense, enforce some basic invariants:

- Neither estimate is allowed to exceed maximum achievable
- Ensure that lower estimate is really lower and upper is really upper
  by just looking at the values and making sure that is so rather than
  just saying that it is.
2024-03-06 11:40:10 +01:00
Dan Balasescu
d8003ab8e8
Merge pull request #27489 from bdach/fix-catch-pp-mismatch
Fix catch pp calculator not matching live with respect to miss handling
2024-03-06 19:39:20 +09:00
Bartłomiej Dach
b740481eaf
Merge pull request #27504 from peppy/replay-state-sanity-1
Never set `waitingOnFrames` if a replay is not attached
2024-03-06 09:51:09 +01:00
Bartłomiej Dach
53fffc6a75
Remove unused using directives 2024-03-06 07:57:59 +01:00
Dean Herbert
06c7483347
Merge branch 'master' into update-framework 2024-03-06 12:36:05 +08:00
Dean Herbert
85364d25dc
Merge pull request #27276 from bdach/medals
Add flow for displaying achieved medals
2024-03-06 12:31:55 +08:00
Dean Herbert
3a224211aa
Update various packages which shouldn't cause issues 2024-03-06 12:17:00 +08:00
Dean Herbert
4c7678225e
Update framework 2024-03-06 12:13:41 +08:00
Dean Herbert
0696e7de52
Update ImageSharp usages 2024-03-06 12:13:12 +08:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Dean Herbert
6455c0583b
Update usage of CircularProgress.Current 2024-03-06 12:13:10 +08:00
Dean Herbert
65ce4ca390
Never set waitingOnFrames if a replay is not attached 2024-03-06 04:37:11 +08:00
Dean Herbert
57daaa7fed
Add logging for GameplayClockContainer starting or stopping 2024-03-06 04:37:11 +08:00
Bartłomiej Dach
09c6c5d79b
Merge pull request #27497 from frenzibyte/mod-select-overlay-fix-ux
Fix mod select overlay settings order not always matching mod panels
2024-03-05 19:40:13 +01:00
Bartłomiej Dach
429fa8dfae
Merge pull request #27242 from Susko3/log-global-statistics
Log `GlobalStatistics` when exporting logs from settings
2024-03-05 19:32:54 +01:00
Bartłomiej Dach
e6f1a722cb
Remove unused field and commented-out code 2024-03-05 18:49:19 +01:00
Berkan Diler
d0f7ab3316 Revert some changes 2024-03-05 17:18:59 +01:00
Berkan Diler
6fabbe2616 Use new ToDictionary() overload without delegates 2024-03-05 10:27:12 +01:00
Berkan Diler
5965db4fd7 Use ArgumentException.ThrowIfNullOrEmpty throw helper 2024-03-05 10:20:57 +01:00
Berkan Diler
a891303484 Use ArgumentOutOfRangeException throw helper methods 2024-03-05 10:20:30 +01:00
Berkan Diler
9bac60a98f Use ArgumentNullException.ThrowIfNull in more places 2024-03-05 10:19:47 +01:00
Berkan Diler
43841e210d Use ObjectDisposedException.ThrowIf throw helper 2024-03-05 09:58:46 +01:00
Salman Ahmed
49b3e81e8a Migrate DefaultPerformancePointsCounter and rename it 2024-03-05 04:35:39 +03:00
Salman Ahmed
0cbcfcecdc Integrate "Argon" performance points counter with HUD layout 2024-03-05 03:58:43 +03:00
Salman Ahmed
d7f1e50d66 Add "Argon" performance points counter 2024-03-05 03:34:29 +03:00
Salman Ahmed
3ee57cdfba Refactor performance points test scene to support skinning 2024-03-05 03:34:25 +03:00
Salman Ahmed
92f455f199 Abstractify performance points calculation to a base class 2024-03-05 03:33:48 +03:00
Salman Ahmed
9543908c7a Fix mod select overlay settings order not always matching panels order 2024-03-04 23:36:45 +03:00
Bartłomiej Dach
6080c14dd5
Update F rank badge colours to match latest designs 2024-03-04 14:47:49 +01:00
Bartłomiej Dach
dcd6b02809
Fix incorrect implementation of GetCountMiss() for catch 2024-03-04 11:49:12 +01:00
Dan Balasescu
6635d9be04
Add countdown display 2024-03-04 16:50:24 +09:00
Dan Balasescu
bce3bd55e5
Fix catch by moving cursor-specific handling local 2024-03-04 16:08:17 +09:00
Dan Balasescu
5bd037fe8f
Merge branch 'master' into catch-fail-on-banana 2024-03-04 13:13:26 +09:00
Salman Ahmed
85f131d2f8 Fix "unranked explaination" tooltip text using incorrect translation key 2024-03-02 22:45:15 +03:00
Andrei Zavatski
77b3055978 Improve sb sprite end time guessing 2024-03-01 22:30:44 +03:00
Salman Ahmed
17e167cc1e
Merge branch 'master' into hide-beatmap-details 2024-03-01 16:21:03 +03:00
Dean Herbert
c6201ea5de
Remove unused ruleset parameter when testing beatmap in editor 2024-03-01 20:28:52 +08:00
Dan Balasescu
14519b9982
Merge pull request #27426 from peppy/disallow-backwards-seeks-gameplay
Fix gameplay seeking backwards for a single frame for some users
2024-03-01 20:08:23 +09:00
Dean Herbert
963c0af814
Fix beatmap information still showing when testing a beatmap 2024-03-01 16:43:47 +08:00
Dean Herbert
19ed78eef5
Log backwards seeks to sentry 2024-03-01 12:40:05 +08:00
cdwcgt
4ad8bbb9e2
remove useless DrawablePool 2024-03-01 13:20:37 +09:00
Dean Herbert
00527da27d
When discord is set to privacy mode, don't show beatmap being edited 2024-03-01 11:42:35 +08:00
Dean Herbert
91483bdc2f
Merge pull request #27001 from Susko3/windows-file-uri-association
Associate with files and URIs on windows
2024-03-01 11:26:44 +08:00
Dean Herbert
4b3a5bde28
Merge pull request #27424 from frenzibyte/taiko-slider-storyboard
Hide osu!taiko scroller when the beatmap has storyboard
2024-03-01 10:49:12 +08:00
Andrei Zavatski
eb0933c3a5 Fix allocations in EffectPointVisualisation 2024-02-29 20:35:20 +03:00
Dean Herbert
cc8b838bd4
Add comprehensive log output to help figure out problematic clocks 2024-02-29 23:05:28 +08:00
Dean Herbert
4184a5c1ef
Add flag to allow backwards seeks in tests 2024-02-29 23:05:28 +08:00
Huo Yaoyuan
a11e63b184 Make the code more clear 2024-02-29 20:02:04 +08:00
Dean Herbert
3a780e2b67
Add logging when workaround is hit 2024-02-29 18:27:50 +08:00
Dean Herbert
3355764a68
"Fix" tests 2024-02-29 18:21:44 +08:00
Bartłomiej Dach
9a40a4f700
Merge branch 'master' into convert-path-string-new 2024-02-29 08:51:04 +01:00
Bartłomiej Dach
ee2dac35e0
Merge branch 'master' into taiko-slider-storyboard 2024-02-29 08:50:58 +01:00
Dean Herbert
76e8aee9cc
Disallow backwards seeks during frame stable operation when a replay is not attached 2024-02-29 14:15:32 +08:00
Dean Herbert
f44aadaaa8
Merge pull request #27331 from bdach/statistics-updates-in-multi
Show user statistics updates on multiplayer and playlists results screens
2024-02-29 12:26:48 +08:00
Dean Herbert
5c404d0f61
Merge pull request #27361 from bdach/difficulty-peppy-stars-zero-osu
Fix incorrect standardised score estimation on selected beatmaps in osu! ruleset
2024-02-29 11:45:53 +08:00
Huo Yaoyuan
f28f19ed7e
Fix method indent size
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2024-02-29 10:47:16 +08:00
Salman Ahmed
7f5f3804f1 Expose beatmap storyboard as part of GameplayState 2024-02-29 05:39:36 +03:00
Salman Ahmed
a7a758400c
Merge branch 'master' into fix-wireframe 2024-02-29 01:56:50 +03:00
Salman Ahmed
8f97f0503f Move away from Solo namespace 2024-02-29 01:21:17 +03:00
Salman Ahmed
de48c51715 Apply renaming in remaining usages 2024-02-29 01:11:08 +03:00
Salman Ahmed
c3a7e99849 Remove unnecessary max operation 2024-02-29 01:01:55 +03:00
Salman Ahmed
4a4ef91bc9 Simplify active mods computation
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-02-29 00:42:52 +03:00
Salman Ahmed
92eb206b49
Merge branch 'master' into spectator-remove-back-button 2024-02-29 00:12:24 +03:00
Joseph Madamba
5ca6e8c68a Fix some NRT changes 2024-02-28 11:03:09 -08:00
Bartłomiej Dach
a5948d38ac
Merge pull request #27380 from frenzibyte/fix-advanced-stats-display
Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps
2024-02-28 18:02:48 +01:00
Huo Yaoyuan
e86ebd6cdb Fix formatting 2024-02-29 00:24:24 +08:00
Huo Yaoyuan
470d2be2e1 The overhead of LINQ is not ignorable 2024-02-29 00:07:00 +08:00
Bartłomiej Dach
6a3a7cca58
Merge branch 'master' into adjust-carousel-padding 2024-02-28 16:00:43 +01:00
Bartłomiej Dach
c10ba6ece9
Fix right mouse scroll clamping not going along well with padding
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2024-02-28 15:59:22 +01:00
Huo Yaoyuan
bcb91f348d Use ArrayPool instead of stackalloc 2024-02-28 22:51:36 +08:00
Huo Yaoyuan
fe34577ee2 Update parsing. 2024-02-28 22:42:08 +08:00
Huo Yaoyuan
4bff54d35d Add ToString on PathControlPoint for debugging 2024-02-28 22:37:14 +08:00
Bartłomiej Dach
9902dad4c6
Merge branch 'master' into log-global-statistics 2024-02-28 15:09:24 +01:00
Huo Yaoyuan
f49aa4d815 Parse points and segments for path string 2024-02-28 22:01:39 +08:00
Bartłomiej Dach
ce994a7a73
Fix wireframe misalignment in argon accuracy counter
- Closes https://github.com/ppy/osu/issues/27385.
- Supersedes / closes https://github.com/ppy/osu/pull/27392.
2024-02-28 13:42:45 +01:00
Bartłomiej Dach
3fb2662d74
Update framework
Mainly for the sake of https://github.com/ppy/osu-framework/pull/6196.
2024-02-28 12:05:33 +01:00
Joseph Madamba
6e03384c6b Apply NRT to SoloSpectatorPlayer 2024-02-28 00:01:16 -08:00
Joseph Madamba
8e462fbb38 Apply NRT to touched files 2024-02-27 23:58:28 -08:00
Joseph Madamba
dee57c7e72 Refactor test to only allow init of actions 2024-02-27 23:24:16 -08:00
Joseph Madamba
351160f94e Move back/quit button from bottom left to fail overlay when spectating 2024-02-27 23:24:16 -08:00
Dean Herbert
31f667224f
Merge branch 'master' into medals 2024-02-28 13:48:57 +08:00
Salman Ahmed
d83aeb73e4 Fix menu cursor tracing rotation while override by gameplay cursor 2024-02-28 01:02:36 +03:00
Bartłomiej Dach
2889cf39d7
Merge pull request #27391 from smoogipoo/high-performance-session-redux
Use high performance session during gameplay
2024-02-27 16:28:04 +01:00
Gabriel Del Nero
09dee50372
Change initial scroll animation to mod columns
Starting from the end (which should be fine with the current number of columns, even on different/wider screen resolutions), and with a custom decay value when it reaches zero offset.
2024-02-27 15:35:51 +01:00
Dean Herbert
189c680555
Add basic xmldoc on interface type 2024-02-27 20:46:25 +08:00
Dan Balasescu
069b400dd0
Move manager to desktop game 2024-02-27 19:36:03 +09:00
Dan Balasescu
dc3b41865c
Add logging 2024-02-27 19:17:34 +09:00
Dan Balasescu
f2d52fbaa2
Make class not overrideable 2024-02-27 17:33:24 +09:00
Dean Herbert
7f0a552b86
Merge pull request #27366 from EVAST9919/mod-overlay-performnce
Reduce allocations when `ModSelectOverlay` is visible
2024-02-27 08:54:18 +08:00
Salman Ahmed
3f9fbb9318 Introduce the concept of ActiveMods in mod select overlay and rewrite once more 2024-02-26 22:25:06 +03:00
Salman Ahmed
2b73d816a7 Bring back mod setting tracker in BeatmapAttributesDisplay 2024-02-26 22:24:45 +03:00
Bartłomiej Dach
3833f2cfa7
Merge pull request #27393 from peppy/main-menu-key-delay
Fix main menu eating keys if user presses too fast
2024-02-26 16:22:27 +01:00
Dean Herbert
fe59a3b9be
Merge branch 'master' into medals 2024-02-26 22:49:55 +08:00
Dean Herbert
4c6e8a606f
Fix main menu eating keys if user presses too fast 2024-02-26 22:24:39 +08:00
Dan Balasescu
bfb5098238
Use high performance session during gameplay 2024-02-26 22:32:48 +09:00
Dean Herbert
c686dfd361
Apply safeties for AudioFilter usage around drawables which go non-present 2024-02-26 21:22:25 +08:00
Dean Herbert
7a96cf1289
Expose AudioFilter.IsAttached publicly 2024-02-26 21:15:44 +08:00
Dan Balasescu
3e9425fdf2
Adjust API of HighPerformanceSession + rename 2024-02-26 22:12:46 +09:00
Bartłomiej Dach
09b420a083
Merge pull request #27234 from brandondong/delete_none_message
Add feedback to delete button even when no-op
2024-02-26 13:13:53 +01:00
Bartłomiej Dach
119a373285
Merge pull request #27389 from peppy/menu-hotkeys
Allow better menu navigation using same hotkey to progress to destination
2024-02-26 12:31:22 +01:00
Bartłomiej Dach
46ec477191
Merge pull request #27386 from peppy/fix-use-current-distance-snap
Fix "Use current" snap not working
2024-02-26 12:30:35 +01:00
Dean Herbert
8e336610d0
Add xmldoc explaining Ruleset bindable's usage 2024-02-26 18:31:40 +08:00
Bartłomiej Dach
353485a707
Merge branch 'master' into flashlight-playfield-based-size- 2024-02-26 10:55:06 +01:00
Bartłomiej Dach
115d82664b
Assert proportional scaling rather than assume average
Because if scaling is ever actually non-proportional then this should be
somewhat loud.

Also use the absolute value to prevent funny things happening if/when
someone does negative scale.
2024-02-26 10:53:04 +01:00
Dean Herbert
8962be2ed5
Allow better menu navigation using same hotkey to progress to destination
As touched on in https://github.com/ppy/osu/discussions/27102.

You can now use:

- `L L L` to get to playlists
- `M M M` to get to multiplayer
- `S` to get to settings
2024-02-26 17:24:04 +08:00
Dean Herbert
9a46e738bd
Fix inspections 2024-02-26 15:45:29 +08:00
Dean Herbert
4c744ccb69
Fix "Use current" snap not working
Regressed with https://github.com/ppy/osu/pull/27249.

I was suspicious of this specific operation at the time but didn't test properly.
2024-02-26 14:11:54 +08:00
Dean Herbert
4421ff975b
Add local function to perform iteration to better explain the "why" 2024-02-26 09:04:39 +08:00
Salman Ahmed
5c049feca1 Fix advanced stats in beatmap info overlay showing "key count" on non-mania beatmaps 2024-02-25 21:18:15 +03:00
Andrei Zavatski
9e3defebda Remove unused using 2024-02-25 19:05:40 +03:00
Andrei Zavatski
c3fa97d062 Reduce allocations in HitObjectLifetimeEntry 2024-02-25 18:02:42 +03:00
Andrei Zavatski
f948f8ee5c Fix HUDOverlay allocations 2024-02-25 17:59:20 +03:00
Andrei Zavatski
081aa84718 Simplify last footer button selection 2024-02-25 10:36:15 +03:00
Dean Herbert
e8d2abc4f7
Merge pull request #27364 from EVAST9919/spinner-alloc
Reduce osu spinner allocations
2024-02-25 09:36:02 +08:00
Andrei Zavatski
6d2187e079 Reduce allocations in ModSelectOverlay 2024-02-24 22:58:23 +03:00
Andrei Zavatski
3b53ed3c3a Reduce allocations in ModColumn 2024-02-24 22:44:58 +03:00
Andrei Zavatski
1fb19e7129 Reduce allocations in DrawableSpinner 2024-02-24 20:18:30 +03:00
Dan Balasescu
006416057b
Merge pull request #27144 from cdwcgt/allow-muted-ranked
Allow pp for muted mod for any combination of settings
2024-02-25 00:31:37 +09:00
Bartłomiej Dach
f6ceedc7a6
Inline last version which touched ranks when checking for upgrade 2024-02-24 13:55:44 +01:00
Bartłomiej Dach
4bc92a263f
Bump score version 2024-02-24 13:20:42 +01:00
Bartłomiej Dach
e80b08c46f
Fix incorrect standardised score estimation on selected beatmaps 2024-02-24 09:56:58 +01:00
Dean Herbert
05f0b4796c
Merge pull request #27344 from bdach/editor-combo-colours-rotate
Fix editor displaying combo colours in effectively incorrect order
2024-02-24 10:44:02 +08:00
Salman Ahmed
d4bc3090e7 Fix incorrect conflict resolution 2024-02-23 18:42:07 +03:00
Salman Ahmed
618819ba9f Merge branch 'master' into freemod_mapinfo_fix 2024-02-23 18:34:41 +03:00
Salman Ahmed
c1db9d7819 Add test coverage 2024-02-23 18:16:44 +03:00
Bartłomiej Dach
869f0a82de
Use hashset for faster lookup 2024-02-23 15:38:52 +01:00
Salman Ahmed
fdc0636554 General code cleanup 2024-02-23 17:31:54 +03:00
Salman Ahmed
9ce07a96b2 Rewrite mods flow and remove RoomBeatmapAttributesDisplay 2024-02-23 17:30:13 +03:00
Salman Ahmed
323d7f8e2d Change BeatmapAttributesDisplay retrieval to proper method 2024-02-23 16:59:43 +03:00
Salman Ahmed
918577d530 Compute required mods list once per update 2024-02-23 16:53:41 +03:00
Bartłomiej Dach
f86b7f0702
Enable NRT in EditorBeatmapSkin 2024-02-23 14:52:44 +01:00
Salman Ahmed
f94cd4483c Avoid relying on game-wide ruleset bindable 2024-02-23 16:50:33 +03:00
Salman Ahmed
ae9c58be30 Remove "multiplayer" references from subclass and move to appropriate place 2024-02-23 16:50:33 +03:00
Bartłomiej Dach
d1d32fc16c
Fix editor displaying combo colours in effectively incorrect order
Addresses https://github.com/ppy/osu/discussions/27316.

Stable lies about the first combo colour being first; in the `.osu`
file it is actually second. It does a thing in editor itself to correct
for this.

    https://github.com/peppy/osu-stable-reference/blob/master/osu!/GameModes/Edit/Forms/SongSetup.cs#L233-L234
2024-02-23 14:49:46 +01:00
Dean Herbert
157819c199
Materialise realm collection hashes during song select search process
Without this, there's a large overhead to do a realm-live `Contains`
search when a collection is selected.

This may also help considerably alleviate
https://github.com/ppy/osu/discussions/27298#discussioncomment-8552508
as we will be performing the native realm search much less.
2024-02-23 11:41:27 +08:00
Brandon
6c8204f9a3 Update delete collections message when none 2024-02-22 19:40:02 -08:00