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

Restore taiko accuracy to ScoreV2 values #25887

Merged
merged 4 commits into from
Dec 20, 2023

Conversation

smoogipoo
Copy link
Contributor

@smoogipoo smoogipoo commented Dec 19, 2023

This has been brought up as an inconsistency several times:

Note that this doesn't fix the accuracy circle/grade issue - that's an issue for all rulesets.

@peppy peppy merged commit 831c273 into ppy:master Dec 20, 2023
13 of 17 checks passed
@bdach
Copy link
Collaborator

bdach commented Dec 20, 2023

What does this mean for server-side usages of Judgement.ToNumericResult()?

https://github.com/ppy/osu-queue-score-statistics/blob/6d91b7738ad7adba513c86c382fb83b261dae5d6/osu.Server.Queues.ScoreStatisticsProcessor/Commands/Queue/ImportHighScoresCommand.cs#L652
https://github.com/ppy/osu-queue-score-statistics/blob/6d91b7738ad7adba513c86c382fb83b261dae5d6/osu.Server.Queues.ScoreStatisticsProcessor/Commands/Queue/ImportHighScoresCommand.cs#L741-L742

It appears that the import high scores command relies on the method to calculate accuracy, which will presumably be wrong for taiko scores now?

Isn't this the same sort of problem that we had with adding an AffectsCombo flag to Judgement, which implies that it is now necessary to construct all judgements on a beatmap to calculate the accuracy of a score correctly?

Also I'm not even sure why Judgement.ToNumericResult() isn't even so much as obsoleted if it's gonna be wrong for one ruleset out of four. It's a footgun in the making as soon as one of us forgets it's not supposed to be used anymore.

@smoogipoo
Copy link
Contributor Author

because of course there'd be something that references the raw values, why wouldn't there be...

@bdach
Copy link
Collaborator

bdach commented Dec 20, 2023

Well to be more constructive than the above, I think this is possibly salvageable if the method has a signature of GetNumericResultFor(HitResult) rather than accepting the judgement. Then the server-side usages can just construct the requisite score processor and go through that.

The Judgement.ToNumericResult() point still stands tho. Method should not be exposed outwardly as static on Judgement anymore if it's not universally valid.

@smoogipoo
Copy link
Contributor Author

Perhaps it's time to bite the bullet and not expose it publicly...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

osu!taiko "Good"s give less accuracy/score compared to osu!stable
3 participants