ppy / osu

rhythm is just a *click* away!
https://osu.ppy.sh
MIT License
15.14k stars 2.25k forks source link

`HitResult`s with the same name show across two columns in beatmap rankings #29911

Open peppy opened 2 weeks ago

peppy commented 2 weeks ago

Discussed in https://github.com/ppy/osu/discussions/29904

Originally posted by **424ever** September 18, 2024 When looking at the scores on [this map](https://osu.ppy.sh/beatmapsets/847776#osu/1772923) in game, there are 2 columns labeled as "Slider End". I think these should be combined into a single column. ![image](https://github.com/user-attachments/assets/10dfe2b2-fa10-4c85-b2ec-a9a00e22611e) There is (currently) only one score which uses the left column, which was set on Lazer with the Classic mod. ![image](https://github.com/user-attachments/assets/a9f73333-714a-4c9b-affa-e4bf14329b0e)

This is awkward as hell to attempt to fix.

Relevant code:

https://github.com/ppy/osu/blob/998b5fdc12122a538dadbd3b7afcda868eb3bdda/osu.Game.Rulesets.Osu/OsuRuleset.cs#L296-L298

https://github.com/ppy/osu/blob/e887f93eca53131304d345517b798421fe363829/osu.Game/Overlays/BeatmapSet/Scores/ScoreTable.cs#L104-L130

Could group by localisable string base string, but it makes things very fiddly (currently it's pre-checking stats across all scores to be displayed, so it kinda has to happen before that). Would want a second opinion before attempting this.

bdach commented 1 week ago

Not sure it helps, but for reference this is how judgement counter handles the exact same problem right now:

https://github.com/ppy/osu/blob/cf9f8c7f660f703c1a905eb9c61d8f4a355f251e/osu.Game/Screens/Play/HUD/JudgementCounter/JudgementCountController.cs#L34-L36

peppy commented 5 days ago

Not sure it helps, but for reference this is how judgement counter handles the exact same problem right now

Yeah I found this in passing, but still a bit of a pain to implement.