ppy / osu-web

the browser-facing portion of osu!
https://osu.ppy.sh
GNU Affero General Public License v3.0
955 stars 378 forks source link

Display max combo on beatmap page (and API) #10566

Open tsunyoku opened 9 months ago

tsunyoku commented 9 months ago

This was introduced in order to decrease storage usage by graveyarded beatmaps alongside per-mod difficulty calculation, but max combo is arguably far more important (discord bots, tournaments, etc.)

Creating an issue to track this so we can hopefully have max combo included on graveyarded beatmaps again.

peppy commented 9 months ago

Are you able to explain what max combo is used for in the context of tournaments / bots? I'm lacking context.

Put another way, if it's such an important stat, why has no one asked for it on the website?

tsunyoku commented 9 months ago

In tournament context, many tournaments have spreadsheets for pooling and will use the API to populate the data for the pool. As for bots, most bots will display max combo when someone requests a score or beatmap embed - a lot of these bots will do difficulty calculation themselves and thus have the max combo already in the case of scores, but most bots will rely on the API when it's purely a beatmap request.

A beatmap example from owo (the largest osu! discord bot currently): image

A score example from owo: image

I suppose some of these can be deemed as minor cases (and there's definitely other cases I've forgotten about), but they are used often enough that if these start to behave incorrectly it will be pretty bad UX in a lot of places. It's generally already intuitive from my standpoint as a developer that a core statistic such as max combo may sometimes just not exist?

I can't speak for the masses, but personally speaking, the reason I was never bothered about a map's max combo being displayed on the website is because the leaderboard is usually a good enough gauge for that information - most maps will have at least one full combo, so it usually suffices as a measure for determining max combo (especially as website will highlight green for a perfect combo) - although graveyarded beatmaps lack leaderboards.

Max combo of a beatmap is a really important metric to a lot of users especially in the context of scores, and while it is less important on graveyarded beatmaps as they are less commonly seen on average - they are super common within tournament pools, which I would say is the scene which will most suffer with the current state of things.

peppy commented 9 months ago

I've renamed this issue to better track the proposal. I think we'll want to add this both on the beatmap page and the API if we're going to make it an official stat.

peppy commented 9 months ago

@ppy/team-web in the process, we'll likely want to change the existing lookup of max_combo to use the osu_beatmaps table (a new column), and disable it for converts.

peppy commented 9 months ago

I'll self-assign this until the database and diffcalc changes have been applied in completion.

Rekunan commented 9 months ago

May I ask that future similar changes to the API be properly communicated/announced? I don't see any mention of this in past web changelogs (which has a section for API).

Tunnelbliick commented 9 months ago

May I ask that future similar changes to the API be properly communicated/announced? I don't see any mention of this in past web changelogs (which has a section for API).

I second this, having a BREAKING CHANGE or just DEPRECATION Warning for stuff like this should be mandatory.

peppy commented 9 months ago

May I ask that future similar changes to the API be properly communicated/announced? I don't see any mention of this in past web changelogs (which has a section for API).

This was not an intended change. It will return within a month.

Sorry if you were depending on this but it was never intended to (or known to have been) visible for graveyarded beatmaps. We didn't know it was exposed until all data was removed.

If it was intended to be public facing, it would have been announced.

Rekunan commented 9 months ago

I think it's still important to announce just in case, similar to how there are PR's in the changelog for removing unintended bugs/features.

peppy commented 9 months ago

I'm sorry but I am not able to announce all infrastructure changes publicly. It's not feasible and a waste of my time.

Please drop this and wait for a proper fix, thank you.

Going to lock this pending a fix as no further input is required.