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

42229 Commits

Author SHA1 Message Date
Joseph Madamba
b309aad895 Fix noticeable masking artifact of beatmap cards when already downloaded
Had a similar fix before seeing https://github.com/ppy/osu/pull/20743#discussion_r994955470, but using that diff instead so co-authoring.

Co-Authored-By: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2024-03-13 22:36:52 -07:00
Dan Balasescu
b431bb1176
Resolve post-merge issues 2024-03-14 12:24:12 +09:00
Dan Balasescu
0beaa8e8c5
Merge branch 'master' into tcm-resume 2024-03-14 12:22:46 +09:00
Dan Balasescu
789a9f4dfa
Initial redesign following flyte's design 2024-03-14 11:38:16 +09:00
Dean Herbert
a47ccb8edd
Merge pull request #27600 from bdach/dont-die-on-audio-in-video-check
Fix audio in video check crashing on unexpected failures
2024-03-14 10:28:45 +08:00
Bartłomiej Dach
d32f19b546
Fix first word bold not applying correctly after first language change
Closes https://github.com/ppy/osu/issues/27549.

I'm not entirely sure why the old solution failed exactly, but also
think it's unimportant because I think past me was an idiot and was
playing stupid games with the juggling of indices between two callbacks
with no ordering guarantees and expecting not to win stupid prizes.

I'm not sure this requires any follow-up reconsiderations of that entire
text flow API, but if opinions differ, I'll re-examine.
2024-03-13 15:18:20 +01:00
Bartłomiej Dach
20c760835a
Fix audio in video check crashing on unexpected failures 2024-03-13 13:55:49 +01:00
Joseph Madamba
e2e99fc5cc Rearrange rankings overlay tabs to match web 2024-03-12 21:15:59 -07:00
Dean Herbert
a4a433b92a
Remember login by default
Kinda what is expected from a user's perspective
2024-03-12 20:14:50 +08:00
Dean Herbert
5b2dd95fd6
Merge pull request #27586 from bdach/ignore-directory-zip-entries
Fix exports containing zero byte files after import from specific ZIP archives
2024-03-12 17:18:39 +08:00
Bartłomiej Dach
83e47b3c4c
Fix exports containing zero byte files after import from specific ZIP archives
Closes https://github.com/ppy/osu/issues/27540.

As it turns out, some ZIP archivers (like 7zip) will decide to add fake
entries for directories, and some (like windows zipfolders) won't.
The "directory" entries aren't really properly supported using any
actual data or attributes, they're detected by sharpcompress basically
by heuristics:

    ab5535eba3/src/SharpCompress/Common/Zip/Headers/ZipFileEntry.cs (L19-L31)

When importing into realm we have thus far presumed that these directory
entries will not be a thing. Having them be a thing breaks multiple
things, like:

- When importing from ZIPs with separate directory entries, a separate
  `RealmFile` is created for a directory entry even though it doesn't
  represent a real file
- As a result, when re-exporting a model with files imported from such
  an archive, a zero-byte file would be created because to the database
  it looks like it was originally a zero-byte file.

If you want to have fun, google "zip empty directories". You'll see
a whole gamut of languages, libraries, and developers stepping on this
rake. Yet another episode of underspecced mistakes from decades ago
that were somebody's "good idea" but continue to wreak havoc forevermore
because now there are two competing conventions you can't just pick one.
2024-03-12 09:06:24 +01:00
Dean Herbert
83052fe1d9
Downgrade realm to work around crashes on latest release
See https://github.com/ppy/osu/issues/27577.
2024-03-12 15:41:50 +08:00
Bartłomiej Dach
f30dfcb728
Fix ruleset medals not displaying due to deserialisation failure
🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦🤦

Reported in
https://discord.com/channels/188630481301012481/188630652340404224/1216812697589518386.
2024-03-11 21:34:10 +01:00
Bartłomiej Dach
9bc55be515
Merge pull request #27564 from EVAST9919/editor-blueprint-gradient
Fix incorrect gradient application in `TimelineHitObjectBlueprint`
2024-03-11 16:02:05 +01:00
Bartłomiej Dach
09179f99c0
Merge branch 'master' into wrap-beatmap-listing-filters 2024-03-11 14:59:48 +01:00
Bartłomiej Dach
e5e7c8f268
Wrap beatmap listing filter names too
While we're here fixing...

Addresses
https://github.com/ppy/osu/discussions/15452#discussioncomment-2734237.
2024-03-11 14:58:28 +01:00
Andrei Zavatski
6ecef33fd7 Fic incorrect ExtendableCircle gradient 2024-03-10 22:45:29 +03:00
Andrei Zavatski
549a8d678e Reduce allocations in ControlPointList 2024-03-09 20:50:54 +03:00
Dean Herbert
31739be499
Update resources 2024-03-09 20:48:57 +08:00
Dean Herbert
b8a362fcb6
Simplify assignment by using an auto property 2024-03-09 20:17:27 +08:00
Andrei Zavatski
58b6acde10 Further simplify tooltip text creation 2024-03-09 14:10:32 +03:00
Andrei Zavatski
dd36942508 Reduce allocations in DrawableFlag tooltip 2024-03-09 13:58:05 +03:00
Andrei Zavatski
26c97ef733 Fix WikiPanelContainer causing poor performance 2024-03-09 00:51:33 +03:00
Joseph Madamba
db1c59475b Wrap beatmap listing filters and match web spacing 2024-03-08 12:13:54 -08:00
Dean Herbert
612bc66e86
Merge pull request #27535 from nekodex/argon-hitsounds
Add support for argon hitsounds
2024-03-09 01:47:35 +08:00
Jamie Taylor
27d78fdb08
Add fallback to find spinner samples without a bank prefix 2024-03-09 01:10:28 +09:00
Jamie Taylor
ad842b60f5
Add support for Argon hitsounds 2024-03-08 21:43:18 +09:00
Bartłomiej Dach
44d0dc6113
Fix 1px flashlight gaps when gameplay scaling mode is active
Closes https://github.com/ppy/osu/issues/27522.

Concerns mostly taiko and catch.

Not much of a proper fix rather than a workaround but it is what it is.
I tried a few other things, including setting `MaskingSmoothness = 0` on
the scaling container itself, to no avail.
2024-03-08 11:07:30 +01:00
Dean Herbert
c9b4c684e5
Merge pull request #27403 from Gabixel/increase-modselect-initial-scroll
Change initial scroll effect to mod columns
2024-03-08 14:00:40 +08:00
Dean Herbert
5e7d9ea04a
Adjust scroll speed back to original 2024-03-08 13:59:04 +08:00
Dean Herbert
d9cc619693
Merge branch 'master' into argon-pp-counter 2024-03-08 10:32:16 +08:00
Dean Herbert
9286398633
Move naming migrations to more correct place 2024-03-08 10:26:08 +08:00
Dean Herbert
0ebb12f67f
Move skinnable interface specification to non-abstract classes 2024-03-08 10:23:46 +08:00
Dean Herbert
ae2ef8ee1e
Fix typo in wireframe description 2024-03-08 10:19:00 +08:00
Dean Herbert
f2753ef7a2
Decrease size of pp display relative to accuracy 2024-03-08 09:41:38 +08:00
Dean Herbert
87b4406bdc
Pad at minimum three digits for argon pp display 2024-03-08 09:41:28 +08:00
Dan Balasescu
ca92a31cf9
Fix missing event unbinds 2024-03-07 21:10:11 +09:00
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