Skip to content
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

Change miss penalty curve for speed and aim pp awarded in the osu! ruleset #11147

Merged
merged 7 commits into from
Dec 14, 2020

Conversation

Xexxar
Copy link
Contributor

@Xexxar Xexxar commented Dec 11, 2020

Hello! This change is part of my goal of revitalizing the existing pp system in an effort to keep the competitive scene alive. This is the third (and final) hotfix I plan to create a MR for. I have future plans to look at star rating, but for now, the sum of all three of my proposals will serve as a good refresh for the competitive scene.

The Problem
Currently in PP, there exists a curve for miss count and for combo. Though the combo curve is problematic too, the focus of this MR is on the penalty for misses. Currently, the implementation is:

            // Penalize misses exponentially. This mainly fixes tag4 maps and the likes until a per-hitobject solution is available
            aimValue *= Math.Pow(0.97, countMiss);

which I believe the comment speaks for itself as to how old this implementation is. The problem with this implementation is that it simply reduces pp by a function of missCount, completely ignoring the number of objects in the map. 3 misses on a 100 note map certainly deserve to be penalized harder than 3 misses on a 1000 note map.

Proposal
I have created a new curve that scales much more dynamically with object count. No matter how many objects, the curve will automatically reduce pp by 3% for having any number of misses, and from there scales depending on the number of total objects in the map. The curve can be viewed below. The l slider is the number of objects, and the X-axis is the number of misses. Visible is the existing curve in green and the new curve in purple.

Curves: https://www.desmos.com/calculator/rshij9757a

The goal of this change is to penalize misses on short maps more, while reducing the impact of having more than 1 misses on longer maps. This way, plays that are 3000 notes where someone accidently wiffed a stream do not lose 1 - .97^5 pp. The purpose for defaulting a 3% penalty for missing is to encourage S-ranks and discourage players from accepting 1 miss plays.

Results
Below are profiles featuring all 3 of my MR's (AR11 Nerf, Speed Accuracy Change, and this).

Aetrna: https://cdn.discordapp.com/attachments/105047038915256320/786695258650050590/aetrna.txt
Vaxei: https://cdn.discordapp.com/attachments/105047038915256320/786695327482642503/vaxei.txt
Whitecat: https://cdn.discordapp.com/attachments/105047038915256320/786695344078979083/whitecat.txt
Chocomint: https://cdn.discordapp.com/attachments/105047038915256320/786696195149266985/chocomint.txt
Badeu: https://cdn.discordapp.com/attachments/105047038915256320/786696339568197663/badeu.txt
idke: https://cdn.discordapp.com/attachments/105047038915256320/786696491929436200/idke.txt
mrekk: https://cdn.discordapp.com/attachments/105047038915256320/786697229695320075/mrekk.txt
ryuk: https://cdn.discordapp.com/attachments/105047038915256320/786697263274524713/ryuk.txt

This MR is a little shorter, if there are reqs for more information or details, please feel free to comment. Thanks for reading.

Copy link
Contributor

@smoogipoo smoogipoo left a comment

Choose a reason for hiding this comment

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

Minor codestyle / CI nits.

Looks well-reasoned otherwise.

Copy link
Contributor

@smoogipoo smoogipoo left a comment

Choose a reason for hiding this comment

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

CI fixes

@Xexxar
Copy link
Contributor Author

Xexxar commented Dec 11, 2020

merged in that change to add Math.Pow(countmiss, .75) to speedPP multiplier. Vals look relatively the same, though maps like Aetrna's play on sidetracked day are +80, not +40, which I like more anyway.

EDIT: rebalanced the .75 to .875

Copy link
Contributor

@smoogipoo smoogipoo left a comment

Choose a reason for hiding this comment

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

A little bit of discussion happened in discord and it seems fine now.

@smoogipoo smoogipoo merged commit 66f43e5 into ppy:master Dec 14, 2020
@Xexxar Xexxar deleted the miss-penalty-curve branch May 2, 2023 23:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants