8000 Use proportion of difficult sliders to better estimate sliderbreaks on classic accuracy scores by TextAdventurer12 · Pull Request #31234 · ppy/osu · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Use proportion of difficult sliders to better estimate sliderbreaks on classic accuracy scores #31234

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 19 commits into from
May 12, 2025

Conversation

TextAdventurer12
Copy link
Contributor
@TextAdventurer12 TextAdventurer12 commented Dec 22, 2024

Works out individual top weighted strain count for hitcircles and sliders, and then multiplies countmiss by 1 + the proportion of top weighted strain on sliders to account for misses on sliders sliderbreaks. This assumes that the player breaks equally on difficult hitcircles and sliders, which is the most fair assumption in my opinion.
The number of sliderbreaks is then scaled with combo, to account for the fact that higher combo scores have less places for sliderbreaks to hide in.

Spinners are handled incorrectly (they're included in the hitcircle strain count) but because spinners are 0 difficulty anyways there is negligible values impact, so making a better solution would probably be more effort than it's worth.
TopWeightedSliderFactor may be infinity on maps with no circles. This doesn't have any adverse values effects, because estimatedSliderbreaks is capped at countMeh + countOk, but I'm unsure if it's going to cause any other weirdness.
This probably wants some form of miss penalty or effectiveMissCount adjustment, because currently every affected score is losing.
Sliderbreaks may be double dipped, as it uses effectiveMisscount + estimatedSliderbreaks, while effectiveMissCount may already contain some estimated sliderbreaks. I'm not really sure of a good way to resolve this, and a little doubtful that resolving it would have any significant effect.

@tsunyoku tsunyoku self-requested a review January 7, 2025 14:16
tsunyoku
tsunyoku previously approved these changes Jan 9, 2025
@peppy peppy deleted the branch ppy:pp-dev February 26, 2025 16:18
@peppy peppy closed this Feb 26, 2025
@tsunyoku tsunyoku reopened this Mar 3, 2025
@tsunyoku tsunyoku force-pushed the match-my-freak-sliders branch from 6ac1067 to b259e8d Compare March 7, 2025 21:56
@pull-request-size pull-request-size bot added size/L and removed size/M labels Mar 7, 2025
@tsunyoku tsunyoku requested review from a team March 7, 2025 21:59
@tsunyoku
Copy link
Member
tsunyoku commented Mar 7, 2025

I've updated this branch to the latest pp-dev, performed some clean-ups and also added missing attribute IDs for the new difficulty attributes.

@tsunyoku tsunyoku moved this from In Progress to Pending Review in Difficulty calculation changes Mar 7, 2025
@stanriders
Copy link
Member

!diffcalc
RULESET=osu
OSU_A=https://github.com/ppy/osu/tree/pp-dev
OSU_B=#31234

Copy link

Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/14682429178

@pull-request-size pull-request-size bot added size/M and removed size/L labels Apr 27, 2025
@tsunyoku tsunyoku force-pushed the match-my-freak-sliders branch from 61da19c to 6ac1067 Compare May 1, 2025 11:11
@tsunyoku tsunyoku force-pushed the match-my-freak-sliders branch from 6ac1067 to 4c08c14 Compare May 1, 2025 11:22
@pull-request-size pull-request-size bot added size/L and removed size/M labels May 1, 2025
@tsunyoku tsunyoku force-pushed the match-my-freak-sliders branch from 4c08c14 to 9dacc57 Compare May 1, 2025 11:24
@tsunyoku tsunyoku force-pushed the match-my-freak-sliders branch from 9dacc57 to 1bbb3f9 Compare May 1, 2025 11:25
@pull-request-size pull-request-size bot added size/M and removed size/L labels May 1, 2025
@tsunyoku
Copy link
Member
tsunyoku commented May 1, 2025

I've fixed up the compilation errors caused by dodgy rebases/merging. Please be careful with pushing your changes up in future.

@tsunyoku
Copy link
Member
tsunyoku commented May 1, 2025

!diffcalc
RULESET=osu
OSU_A=https://github.com/ppy/osu/tree/pp-dev
OSU_B=#31234

Copy link
github-actions bot commented May 1, 2025

Difficulty calculation failed: https://github.com/ppy/osu/actions/runs/14774814568

@tsunyoku
Copy link
Member
tsunyoku commented May 6, 2025

!diffcalc
RULESET=osu
OSU_A=https://github.com/ppy/osu/tree/pp-dev
OSU_B=#31234

Copy link
github-actions bot commented May 6, 2025

@tsunyoku
Copy link
Member
tsunyoku commented May 7, 2025

Copy link
github-actions bot commented May 7, 2025

@tsunyoku
Copy link
Member
tsunyoku commented May 8, 2025

Copy link
github-actions bot commented May 9, 2025

@tsunyoku
Copy link
Member
tsunyoku commented May 9, 2025

Copy link
github-actions bot commented May 9, 2025

Copy link
Member
@stanriders stanriders left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Still kinda hate this solution, but we don't really have any alternatives (except nuking stable) so it'll do

@tsunyoku tsunyoku merged commit 3165b14 into ppy:pp-dev May 12, 2025
4 of 9 checks passed
@github-project-automation github-project-automation bot moved this from Pending Review to Pending Deploy in Difficulty calculation changes May 12, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Pending Deploy
Development

Successfully merging this pull request may close these issues.

5 participants
0