osu icon indicating copy to clipboard operation
osu copied to clipboard

Enhance Rank Display: Showing Maximum and Minimum Achievable Ranks

Open normalid-awa opened this issue 1 year ago • 5 comments

I've added a feature to the rank display component that allows displaying the maximum and minimum ranks. It works similar to the accuracy display, where we have a maximum and minimum value shown for accuracy. I implemented this feature in the rank display, so now it can show both the minimum-achievable and maximum-achievable ranks.

In order to enable the rank display component to utilize this functionality, I have added two new properties, MinimumRank and MaximumRank, to the ScoreProcessor class.

sorry for the bad English :(

Preview:

https://github.com/ppy/osu/assets/52519933/703f2ebe-be98-41d4-afdc-613e51c2d631

https://github.com/ppy/osu/assets/52519933/03b8ab61-8a50-40c4-8057-f21f761f1276

Even though the new Osu! update has been implementing the rank display update but I think it's good to implement the max. and min. achievable rank display. Just like how the accuracy did.It allows players to actually see what rank they can if they mess up at the following or what rank they can achieve if they get all perfectly.

normalid-awa avatar Jun 26 '24 10:06 normalid-awa

Would you mind explaining what is going on with https://github.com/ppy/osu/pull/28583 getting closed and then this getting opened?

bdach avatar Jun 26 '24 10:06 bdach

Would you mind explaining what is going on with #28583 getting closed and then this getting opened?

I'm sorry for that, my repo master branch get out of sync and I don't know how to fix it. So that I deleted my repo, but I don't know it will cause the pr getting close, so I copy all the change and make a new pr

normalid-awa avatar Jun 26 '24 10:06 normalid-awa

Please read https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

bdach avatar Jun 26 '24 10:06 bdach

Please read https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork

It seems that my master branch is currently ahead of the osu! branch. But I accidentally merged my feature branch into the master branch, and it appears that the action to undo was not explicitly outlined in the documentation. sorry again for causing confusion.

normalid-awa avatar Jun 26 '24 10:06 normalid-awa

+        private Bindable<ScoreRank> rankBinding = new Bindable<ScoreRank>();

this binding was added to the rank display component, as they handle the rank display update.

normalid-awa avatar Jun 27 '24 13:06 normalid-awa

I get notifications for any change you make, there's no need to request review, it's adding more noise to my end.

frenzibyte avatar Jul 10 '24 09:07 frenzibyte

I get notifications for any change you make, there's no need to request review, it's adding more noise to my end.

sorry for that, I didn't know the changes can trigger the notification

normalid-awa avatar Jul 10 '24 10:07 normalid-awa

Please do not merge master branch, it adds unnecessary noise to our notification inbox.

frenzibyte avatar Jul 20 '24 16:07 frenzibyte

I've took another round on this PR, moving the special logic of minimum rank to OsuScoreProcessor and simplifying it there. While it's still wrong as pointed out by https://github.com/ppy/osu/pull/28614#discussion_r1686117423, I don't think it's that noticable since it only matters for the very last seconds of the beatmap where all that's left is the tail of a slider or the bonus ticks of a spinner, and I've made sure that the rank still promotes to S/SS when the player completes the beatmap and there's an outro playing.

If that's still not convincing enough to move this PR forward then I'll mark it off my inbox.

frenzibyte avatar Oct 24 '24 21:10 frenzibyte