1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-24 13:22:55 +08:00
Commit Graph

68280 Commits

Author SHA1 Message Date
Dan Balasescu
64399e9dd9
Refactor pattern generation to not require ManiaBeatmap 2024-03-28 22:32:27 +09:00
Dan Balasescu
5febd40bd9
Add HP and AR to LegacyBeatmapConversionDifficultyInfo 2024-03-28 22:30:39 +09:00
Bartłomiej Dach
21201e616d
Merge pull request #27723 from 64ArthurAraujo/editor-fix-reverse-selection
Fix reverse selection not updating new combo location
2024-03-28 11:25:17 +01:00
Bartłomiej Dach
2f786ffc32
Simplify implementation 2024-03-28 10:12:27 +01:00
Bartłomiej Dach
a9cbabf711
Simplify tests 2024-03-28 10:05:26 +01:00
Dan Balasescu
4a8e0eddd0
Merge pull request #27739 from Susko3/use-invariant-culture-in-skin-parsing
Fix `SkinImporter` not using invariant culture when parsing skins without `skin.ini`
2024-03-28 09:52:16 +09:00
Susko3
53900d5472 Fix tests failing locally due to not using invariant culture 2024-03-27 18:56:26 +01:00
Arthur Araujo
60c93d2c6d Add reverse pattern visual tests 2024-03-27 08:22:51 -03:00
Dan Balasescu
4490dbf896
Update diffcalc workflow 2024-03-27 13:37:47 +09:00
Dan Balasescu
600098d845
Fix bulbs on Catmull sliders 2024-03-27 04:05:04 +09:00
Bartłomiej Dach
6ef54321c4
Merge pull request #26707 from peppy/beat-sync-container-early-adjust
Adjust `BeatSyncContainer`'s early animate offset based on source's rate
2024-03-26 18:43:25 +01:00
Bartłomiej Dach
0b29a762b8
Add precautionary guard to avoid potential div-by-zero
Probably wouldn't happen outside of tests, but I'd rather not find out
next release.
2024-03-26 17:36:40 +01:00
Dean Herbert
e02ad6cf94
Fix test regression 2024-03-26 23:38:34 +08:00
Dean Herbert
2120f54f13
Merge pull request #27733 from smoogipoo/fix-linux-startup-exception
Fix NVAPI startup exception on non-Windows platforms
2024-03-26 23:28:29 +08:00
Arthur Araujo
01a72d5afa Fix combo not reversing properly depending on the order of selection 2024-03-26 12:10:40 -03:00
Dan Balasescu
4c1a1b54be
Fix NVAPI startup exception on non-Windows platforms 2024-03-27 00:07:51 +09:00
Dean Herbert
a5f15a119e
Apply rate adjust fix in all cases rather than specifically for Clock.Rate == 1 2024-03-26 22:51:54 +08:00
Bartłomiej Dach
02b98671b8
Merge pull request #27722 from peppy/shared-menu-content
Add ability to schedule and rotate main menu content
2024-03-26 15:40:01 +01:00
Dean Herbert
eae8e243c6
Merge branch 'master' into beat-sync-container-early-adjust 2024-03-26 21:31:33 +08:00
Dean Herbert
b4ccbc68e4
Fix failing test 2024-03-26 21:20:22 +08:00
Bartłomiej Dach
bc1ffb0b6e
Merge branch 'master' into shared-menu-content 2024-03-26 13:47:44 +01:00
Bartłomiej Dach
dee88573a7
Fix test failure in visual browser
I'm not sure why it's failing headless and I'm not particularly
interested in finding that out right now.
2024-03-26 13:46:35 +01:00
Dean Herbert
e77d4c8cfa
Remove unnecessary Math.Max 2024-03-26 20:28:03 +08:00
Dean Herbert
fd649edaba
Also don't rotate images during a drag operation 2024-03-26 20:21:48 +08:00
Dean Herbert
9474156df4
Improve equality implementations 2024-03-26 20:21:12 +08:00
Bartłomiej Dach
d0ee0cc085
Merge pull request #27635 from vladfrangu/feat/support-filtering-for-multiple-types
Support filtering for multiple statuses when searching beatmaps in the map picker
2024-03-26 13:00:51 +01:00
Bartłomiej Dach
56dc6bb192
Merge branch 'master' into feat/support-filtering-for-multiple-types 2024-03-26 12:39:51 +01:00
Bartłomiej Dach
e52d51cd0a
Update OptionalSet implementation to intersect across multiple filters rather than union 2024-03-26 12:32:03 +01:00
Bartłomiej Dach
c24eb066dc
Update tests to match new expected behaviour
Co-authored-by: Vlad Frangu <me@vladfrangu.dev>
2024-03-26 12:19:55 +01:00
Bartłomiej Dach
fcfb9d6db5
Merge pull request #27683 from 64ArthurAraujo/verify-abnormal-difficulty-settings
Add verify checks for abnormal difficulty settings
2024-03-26 11:40:23 +01:00
Bartłomiej Dach
b74f8dba41
Merge branch 'master' into verify-abnormal-difficulty-settings 2024-03-26 11:13:16 +01:00
Bartłomiej Dach
1866b4b6b1
Refactor abstract check to reduce duplication 2024-03-26 11:13:03 +01:00
Bartłomiej Dach
e7cf1ab4df
Add checks for taiko drain rate 2024-03-26 10:58:39 +01:00
Bartłomiej Dach
8fb308c192
Add failing test coverage for checking taiko HP too
I was wrong, taiko uses HP (to calculate miss penalty).
2024-03-26 10:57:20 +01:00
Bartłomiej Dach
9b923b1909
Fix code quality issues 2024-03-26 10:55:49 +01:00
Arthur Araujo
10683de578 Use order of new combo flags instead of StartTime 2024-03-26 04:59:47 -03:00
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
Bartłomiej Dach
4979305b2d
Ensure TryDisableCustomRulesetsCausing() never actually crashes itself 2024-03-25 11:34:29 +01:00
Bartłomiej Dach
fb08d6816b
Only attempt to disable rulesets when decidedly crashing out 2024-03-25 11:33:15 +01:00
Arthur Araujo
78037fa477 Handle new combo on HandleReverse 2024-03-25 04:19:14 -03:00
Dean Herbert
bb9fa52fda
Fix displayIndex not being correctly set to -1 after last expiry date 2024-03-25 14:53:05 +08:00
Dean Herbert
057f86dd14
Add handling of expiration 2024-03-25 14:31:05 +08: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