Include sliders in accuracy pp if slider head accuracy is in use
Existed originally at https://github.com/ppy/osu/pull/25722 but slider judgment decisions were premature at the time; as far as I'm aware, that's not the case anymore.
In cases where slider accuracy is used, accuracy pp should be adjusted to include sliders too. This should be fine to merge as-is as the change is purely on pp and no changes to diff calc attributes are required.
This isn't the only change required for slider accuracy to be accounted for, however the remaining ones require difficulty calculation changes (i.e extra attributes) so I'm leaving those out until we're at a point that those can be facilitated.
@bdach The linked PR was closed for being premature. Could we be assured now that slider mechanics won't be changing?
I'm not aware of any complaints about slider mechanics after the changes we've applied over the course of December so I suppose I don't see any reason that they'd be changed.
Note that I'm not saying that this is going to merge imminently - we've still got work to do to stabilise infra. Review was requested just to ensure you (as in the pp committee) are on board with the change.
As requested, some data to showcase the changes:
| Beatmap ID | master total PP | PR total PP | master accuracy PP | PR accuracy PP |
|---|---|---|---|---|
| 1893461 | 201.48 | 214.14 | 60.64 | 72.92 |
| 1892257 | 326.38 | 337.46 | 103.30 | 114.02 |
| 3718752 | 227.68 | 244.01 | 77.61 | 93.26 |
| 1537566 | 647.73 | 661.44 | 203.26 | 216.56 |
| 1256809 | 493.05 | 493.05 | 130.86 | 130.86 |
This shows that accuracy PP caps out as expected.
@apollo-dw would you mind confirming that you still approve this PR?
Good to go on my end 👍
@smoogipoo this one is good to go
!diffcalc
Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/9303393736
Diffcalc failure looks to be because of outdated master:
2024-05-30T17:23:20.7103922Z execution-9303393736-9659-1-verify-1 | /tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/Models/Beatmap.cs(47,13): error CS0117: 'LegacyBeatmapConversionDifficultyInfo' does not contain a definition for 'DrainRate' [/tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/osu.Server.Queues.ScoreStatisticsProcessor.csproj]
2024-05-30T17:23:20.7117650Z execution-9303393736-9659-1-verify-1 | /tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/Models/Beatmap.cs(48,13): error CS0117: 'LegacyBeatmapConversionDifficultyInfo' does not contain a definition for 'ApproachRate' [/tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/osu.Server.Queues.ScoreStatisticsProcessor.csproj]
2024-05-30T17:23:20.7121806Z execution-9303393736-9659-1-verify-1 | /tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/Helpers/LegacyDatabaseHelper.cs(83,17): warning CS0162: Unreachable code detected [/tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/osu.Server.Queues.ScoreStatisticsProcessor.csproj]
2024-05-30T17:23:20.7126117Z execution-9303393736-9659-1-verify-1 | /tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/Models/SoloScore.cs(112,17): error CS0117: 'ScoreInfo' does not contain a definition for 'Ranked' [/tmp/tmp.3uZQZH05Qn/osu-queue-score-statistics/osu.Server.Queues.ScoreStatisticsProcessor/osu.Server.Queues.ScoreStatisticsProcessor.csproj]
2024-05-30T17:23:20.7209999Z execution-9303393736-9659-1-verify-1 |
2024-05-30T17:23:20.7210796Z execution-9303393736-9659-1-verify-1 | The build failed. Fix the build errors and run again.
Merging master again and re-running:
!diffcalc
Target: https://github.com/ppy/osu/pull/27063 Spreadsheet: https://docs.google.com/spreadsheets/d/150RFYxVH1aRQ1wh5NOp2tqYiPjuK1fdUtZGMvpmlgZs/edit
@smoogipoo I believe this is good to go, since this PR affects the performance calculator only?
EDIT: NVM just noticed this is on "pending review"
!diffcalc
Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/9950229982
!diffcalc
Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/9985739398
!diffcalc
Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/10002753749
!diffcalc
Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/10004491429