-
Notifications
You must be signed in to change notification settings - Fork 79
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
remove relevant legacy mods masking #216
base: master
Are you sure you want to change the base?
Conversation
If there's any actual reason for the masking I'm overseeing (everything works, so I'm not sure what I could oversee) we can of course re-evaluate how this could be implemented. I saw smoogi suggesting some extra parameter, but I'm not sure how methodically correct it is to filter out mods like HD in the first place if they affect PP, as that value is much rather a focus than the SR is. |
We should instead filter mods by Implementation should be exactly the same as https://github.com/ppy/osu-queue-score-statistics/blob/02e1373442c394c9ca42c4c0a3520bfe3bdb18ce/osu.Server.Queues.ScoreStatisticsProcessor/Processors/ScorePerformanceProcessor.cs#L171-L183 Also, the mapping from DC -> HT should be able to be removed. |
I think it might be more handy to not filter the mods instead of only including ranked mods / mod combinations. osu-tools is by far most used for PP development, and whenever a new mod(-configuration) is considered for development it'd mean you need to explicitly add exceptions for that. I still think it's methodically more correct to just throw all mods into it and have it handle whatever mods the PP code already considers for, instead of constraining it to only include ranked mod combinations/configurations. |
Hmmm... I'm a little bit skeptical because this is also used when you're batching data, like via Just to hint at my thought process, I was initially going to respond with:
|
The other part of my comment still needs to be addressed though. This isn't enough to support lazer-first scores for as long as they're being remapped through Likely what you should do is restore the deleted method and keep the mapping only for what looks to be the single path using online attributes (and thus can be implemented locally)::
|
Currently, the legacy mods are masked to only include "relevant" mods. By the current code, "relevant" is defined as in having an affect on the star rating. This causes trouble because some mods, whilst not changing the star rating, affect PP. Mods like hidden, who are crucial to include, are simply ignored.
This currently causes trouble with usage in combination with the website https://pp.huismetbenen.nl/ that is a key element in PP development. The maintainer currently runs a "fixed" version locally, although managing it is troublesome. Helix has tried PRing this before in #209 but I decided to pick it up in a separate PR to address it properly.
Instead, I decided to remove it completely since there's no hurt in inputting mods that don't affect PP into the calculator. It'd also mean that if changes happen, eg. HD affecting star rating through the introduction of a proper reading skill, there's no extra effort in having to keep osu-tools up with it.
Here's a simple example to see the change (example score is mrekk's save me, which is 1665pp):
Before
dotnet run -- simulate osu 1256809 -m HD -m DT -c 4292 -G 85 -M 1
→ 1,577ppdotnet run -- simulate osu 1256809 -m DT -c 4292 -G 85 -M 1
→ 1,577ppAfter
dotnet run -- simulate osu 1256809 -m HD -m DT -c 4292 -G 85 -M 1
→ 1,644ppdotnet run -- simulate osu 1256809 -m DT -c 4292 -G 85 -M 1
→ 1,577ppYou can safely ignore the 1pp difference, that's normal due to the 1665pp being calculated through osu-performance and having tiny decimal differences on some scores.