1
0
mirror of https://github.com/ppy/osu.git synced 2025-01-26 16:12:54 +08:00
Commit Graph

66450 Commits

Author SHA1 Message Date
Dan Balasescu
fa93f70913
Merge pull request #27729 from bdach/yet-another-taiko-score-conversion-fiasco
Fix taiko legacy score simulator not including swell tick score gain into bonus portion
2024-03-26 13:26:18 +09:00
Dan Balasescu
99a5eb9968
Merge pull request #27728 from bdach/discord-cannot-send-secrets-with-buttons
Fix discord RPC errors in multiplayer
2024-03-26 12:58:49 +09:00
Bartłomiej Dach
73926592b9
Bump legacy score version to recalculate all scores 2024-03-25 19:27:38 +01:00
Bartłomiej Dach
6266af8a56
Fix taiko legacy score simulator not including swell tick score gain into bonus portion
Reported in https://discord.com/channels/188630481301012481/1097318920991559880/1221836384038551613.

Example score: https://osu.ppy.sh/scores/1855965185

The cause of the overestimation was an error in taiko's score simulator.
In lazer taiko, swell ticks don't give any score anymore, while they did
in stable.

For all intents and purposes, swell ticks can be considered "bonus"
objects that "don't give any actual bonus score". Which is to say,
during simulation of a legacy score swell ticks hit should be treated
as bonus, because if they aren't, then otherwise they will be treated
essentially as *normal hits*, meaning that they will be included in
the *accuracy* portion of score, which breaks all sorts of follow-up
assumptions:

- The accuracy portion of the best possible total score becomes
  overinflated in comparison to reality, while the combo portion of
  that maximum score becomes underestimated.

- Because the affected score has low accuracy, the estimated accuracy
  portion of the score (as given by maximmum accuracy portion of score
  times the actual numerical accuracy of the score) is also low.

- However, the next step is estimating the combo portion, which is done
  by taking legacy total score, subtracting the aforementioned
  estimation for accuracy total score from that, and then dividing
  the result by the maximum achievable combo score on the map. Because
  most of actual "combo" score from swell ticks was "moved" into the
  accuracy portion due to the aforementioned error, the maximum
  achievable combo score becomes so small that the estimated combo
  portion exceeds 1.

Instead, this change makes it so that gains from swell ticks are treated
as "bonus", which means that they are excluded from the accuracy portion
of score and instead count into the bonus portion of score, bringing the
scores concerned more in line with expectations - although due to
pessimistic assumptions in the simulation of the swell itself,
the conversion will still overestimate total score for affected scores,
just not by *that* much.
2024-03-25 19:09:38 +01:00
Bartłomiej Dach
53c3aec3c3
Fix discord RPC errors in multiplayer
Reproduction steps:

1. Go to multiplayer
2. Create a room
3. Play a map to completion
4. Wait for "secrets cannot currently be sent with buttons" error
   messages

The fix is to clear the buttons since they're the less important ones.
2024-03-25 18:05:00 +01:00
Bartłomiej Dach
a398754a27
Merge all presence methods into one
I'm about to make them interdependent (and it's discord's fault),
so it doesn't really make sense to make them separate at this point
I don't think. And it felt weird anyway.
2024-03-25 18:00:42 +01:00
Bartłomiej Dach
e95f29cf4b
Rename updatePresence() => schedulePresenceUpdate()
The method doesn't actually update anything by itself, and I want to
free up the `updatePresence()` name for the actual update.
2024-03-25 17:57:13 +01:00
Bartłomiej Dach
3db88fbcea
Use less confusing message format when logging discord errors
The "code" is a number, so it looked weird when put in the middle
without any nearby punctuation. Example:

	An error occurred with Discord RPC Client: 5005 secrets cannot currently be sent with buttons
2024-03-25 17:54:20 +01:00
Dan Balasescu
a1be45234c
Merge pull request #27708 from 64ArthurAraujo/verify-video-resolution
Add verify check for too high video resolution
2024-03-25 15:14:46 +09:00
Arthur Araujo
8a05fecad5 Fix formatting issue 2024-03-23 23:28:55 -03:00
Arthur Araujo
eb93827204 Add missing copyright header 2024-03-23 23:11:13 -03:00
Arthur Araujo
6fbe1a5b8d Add video resolution check 2024-03-23 19:22:47 -03:00
Dan Balasescu
77660e57ea
Merge pull request #27692 from bdach/artist-sort-uses-title-as-tiebreaker
Use title as tiebreaker when sorting beatmap carousel by artist
2024-03-22 17:15:40 +09:00
Bartłomiej Dach
a1880e89c2
Use title as tiebreaker when sorting beatmap carousel by artist
Closes https://github.com/ppy/osu/issues/27548.

Reference: e53980dd76/osu!/GameplayElements/Beatmaps/BeatmapTreeManager.cs#L341-L347
2024-03-22 08:41:10 +01:00
Bartłomiej Dach
e2df098184
Add failing test case for desired artist sort behaviour 2024-03-22 08:41:08 +01:00
Salman Ahmed
b9b9ef671e
Merge pull request #27418 from huoyaoyuan/convert-path-string-new
Make slider path parsing more friendly with spans
2024-03-22 05:35:20 +03:00
Salman Ahmed
1efa08a1b8
Merge branch 'master' into convert-path-string-new 2024-03-22 05:15:04 +03:00
Dean Herbert
970e45ff24
Merge pull request #26937 from frenzibyte/fix-osu-logo-blocking-load
Stop blocking player load when hovering over osu! logo
2024-03-21 21:52:25 +08:00
Bartłomiej Dach
3e764ae4f0
Merge pull request #27639 from 64ArthurAraujo/verify-unused-audio-at-end
Add verify checks to unused audio at the end
2024-03-21 12:19:53 +01:00
Bartłomiej Dach
983385bafc
Merge pull request #27677 from smoogipoo/fix-catch-banana-fail
Fix catch banana shower judgement causing fail when at 0 HP
2024-03-21 11:23:51 +01:00
Dean Herbert
c081cc7d77
Merge pull request #27681 from smoogipoo/add-deployed-build-attribute
Warn about not using an official "deployed" build
2024-03-21 14:13:40 +08:00
Dean Herbert
b99b0337cf
Adjust text slightly 2024-03-21 13:06:25 +08:00
Dean Herbert
0589924dc6
Merge pull request #27079 from smoogipoo/tcm-resume
Add delayed resume for taiko/catch/mania
2024-03-21 12:48:53 +08:00
Dean Herbert
ef693ffbb6
Merge pull request #27676 from bdach/add-logging-on-metadata-discard
Add extended logging when discarding online metadata lookup results
2024-03-21 12:23:19 +08:00
Dean Herbert
55d66d4615
Add sounds to countdown 2024-03-21 11:45:48 +08:00
Dean Herbert
a07d5115bf
Update resources 2024-03-21 11:42:22 +08:00
Dan Balasescu
ac7fca10d6
Warn about not using an official "deployed" build 2024-03-21 00:47:45 +09:00
Dan Balasescu
bf5640049a
Fix banana showers causing fails when hp is at 0 2024-03-20 17:31:33 +09:00
Dan Balasescu
66ace02e58
Add test for banana shower fail 2024-03-20 17:31:11 +09:00
Dan Balasescu
c78e203df5
Fix infinite health processor loop when no top-level objects
This is unlikely to occur in actual gameplay, but occurs in the
follow-up test.
2024-03-20 17:30:37 +09:00
Bartłomiej Dach
1f343b7545
Add extended logging when discarding online metadata lookup results
Related to: https://github.com/ppy/osu/issues/27674

Relevant log output for that particular case:

	[network] 2024-03-20 07:25:30 [verbose]: Performing request osu.Game.Online.API.Requests.GetBeatmapRequest
	[network] 2024-03-20 07:25:30 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/lookup successfully completed!
	[network] 2024-03-20 07:25:30 [verbose]: GetBeatmapRequest finished with response size of 3,170 bytes
	[database] 2024-03-20 07:25:30 [verbose]: [4fe02] [APIBeatmapMetadataSource] Online retrieval mapped Tsukiyama Sae - Hana Saku Iro wa Koi no Gotoshi (Log Off Now) [Destiny] to 744883 / 1613507.
	[database] 2024-03-20 07:25:30 [verbose]: Discarding metadata lookup result due to mismatching online ID (expected: 1570982 actual: 1613507)
	[network] 2024-03-20 07:25:30 [verbose]: Performing request osu.Game.Online.API.Requests.GetBeatmapRequest
	[network] 2024-03-20 07:25:30 [verbose]: Request to https://dev.ppy.sh/api/v2/beatmaps/lookup successfully completed!
	[network] 2024-03-20 07:25:30 [verbose]: GetBeatmapRequest finished with response size of 2,924 bytes
	[database] 2024-03-20 07:25:30 [verbose]: [4fe02] [APIBeatmapMetadataSource] Online retrieval mapped Tsukiyama Sae - Hana Saku Iro wa Koi no Gotoshi (Log Off Now) [Easy] to 744883 / 1570982.
	[database] 2024-03-20 07:25:30 [verbose]: Discarding metadata lookup result due to mismatching online ID (expected: 1613507 actual: 1570982)

Note that the online IDs are swapped.
2024-03-20 08:28:11 +01:00
Bartłomiej Dach
8ee391530f
Merge pull request #27675 from peppy/remove-breadcrumb-control
Remove unused `ScreenBreadcrumbControl`
2024-03-20 08:02:36 +01:00
Dean Herbert
1f70019009
Merge pull request #27630 from EVAST9919/editor-performance
Improve editor performance for maps with many control points
2024-03-20 13:20:21 +08:00
Salman Ahmed
0d6daef42b
Merge branch 'master' into remove-breadcrumb-control 2024-03-20 08:11:03 +03:00
Salman Ahmed
773daee50b
Merge pull request #27443 from jvyden/discord-rpc-invites
Support Discord game invites in multiplayer lobbies
2024-03-20 08:05:53 +03:00
Dean Herbert
fd509c82f5
Adjust code structure slightly 2024-03-20 12:52:54 +08:00
Salman Ahmed
5f86b5a2fa Use DI correctly 2024-03-20 07:36:15 +03:00
Salman Ahmed
b11ae1c571 Organise code, still hook up to RoomChanged to update room privacy mode, and use SkipIdenticalPresence + scheduling to avoid potential rate-limits 2024-03-20 07:28:01 +03:00
Dean Herbert
d83a53fc94
Remove unused ScreenBreadcrumbControl
See https://github.com/ppy/osu-framework/pull/6218#discussion_r1529932798.
2024-03-20 12:10:05 +08:00
jvyden
1a08dbaa2b
Fix code style 2024-03-19 17:03:30 -04:00
jvyden
4305c3db5b
Show login overlay when joining room while not logged in 2024-03-19 16:15:22 -04:00
jvyden
c71daba4f6
Improve logging of RPC
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2024-03-19 16:05:13 -04:00
jvyden
0ecfa580d7
Move room code from activity code, prevent duplicate RPC updates 2024-03-19 16:03:37 -04:00
jvyden
808d6e0943
Prevent potential threading issues 2024-03-19 16:02:06 -04:00
jvyden
f851716a47
Merge branch 'master' into discord-rpc-invites 2024-03-19 15:29:52 -04:00
Bartłomiej Dach
e4418547fe
Document GetLastObjectTime() exception on empty beatmap 2024-03-19 19:19:07 +01:00
Bartłomiej Dach
2b83e6bc4c
Fix check crash on empty beatmap 2024-03-19 19:17:22 +01:00
Bartłomiej Dach
0211ae12ad
Add failing test case for crash on empty beatmap 2024-03-19 19:16:33 +01:00
Dean Herbert
0de5ca8d2d
Update incorrect xmldoc 2024-03-20 01:26:39 +08:00
Dean Herbert
35df381717
Merge branch 'master' into tcm-resume 2024-03-20 01:25:40 +08:00