ppy / osu-web

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

Popular frontpage maps should only consider favorites with at least one play #7010

Open Ephemeralis opened 3 years ago

Ephemeralis commented 3 years ago

Popular maps currently require nothing but raw favorites. It is possible for a map to reach the frontpage very easily purely from song choice alone without needing to have anybody actually play the map.

Favorites should only be counted towards popular status if the user has at least played the map once. While this doesn't outright fix the problem completely, it does give other maps that are actually being played more room to fight against maps with popular song choices.

nanaya commented 3 years ago

Is it actually a problem? Current top popular maps seem to have over 20k plays each :thinking:

peppy commented 3 years ago

Also I'm not sure I understand. Aren't popular song choices more likely to see plays in general? Looking at the current list, this looks to roughly correlate. Has this come up multiple times / is there precedence for this needing to be changed?

Ephemeralis commented 3 years ago

Also I'm not sure I understand. Aren't popular song choices more likely to see plays in general?

They are, and the issue doesn't need to be confounded further by popular maps overtly representing song choice over the contents of the beatmap itself (which is what allowing no-play favorites to count towards achieves).

Requiring at least 1 play before a favorite counts towards popular at least assures that the user has actually seen the beatmap in question.

peppy commented 3 years ago

So this is just based off what you think might be happening? No empirical evidence?

Ephemeralis commented 3 years ago

https://osu.ppy.sh/beatmapsets/1278695#taiko/2656372 has been ranked for 7 days and accrued 159 favorites. It is an osu!taiko map, with a playerbase that represents roughly 0.9% of the total community. It has 26k plays. It is a remix of a track from a popular vtuber by a popular artist. Read some of the top comments on this one's listing. Additionally, compare this to any sample of any other osu!taiko map ranked within the past year.

https://osu.ppy.sh/beatmapsets/1222831#osu/2543595 has been ranked for 5 days and accrued 454 favorites. It is an osu! map with a playerbase that represents roughly 92.8% of the total community. It has nearly 50k~ plays. It is a track from a popular vtuber from the same agency as the track listed above.

Both are listed in the popular section currently.

You should be able to make some reasonable guesses as to what is going on here. Population percentages are pulled straight from user profiles denoting what modes they "main" in. It is reasonable to assume that it is ending up where it is because of song choice primarily.

nanaya commented 3 years ago

1278695 has 64 ratings (24th most ranked), 1222831 has 136 ratings (5th most ranked). Those doesn't seem too bad? (out of 239 beatmapsets which got ranked by users around same time period)

We could also just switch to use ratings which I think requires playing the beatmap first...

Ephemeralis commented 3 years ago

What would the listing look like at the moment if it was based off user rating?

nanaya commented 3 years ago
+----------+---------------+
| count(*) | beatmapset_id |
+----------+---------------+
|      184 |       1291109 |
|      167 |       1064743 |
|      145 |       1264537 |
|      138 |       1001825 |
|      136 |       1222831 |
|      133 |       1291596 |
|      131 |       1313511 |
|      117 |        894666 |
|      114 |       1135418 |
|      106 |       1173332 |
|      105 |       1255845 |
Ephemeralis commented 3 years ago

That seems much more indicative (to me) of what the listing should be showing overall. Moving to that might not be a bad idea - IF it only counts positive ratings (>5).

Could also possibly adjust the view depending on the user's main playmode? Or have the popular widget split into ones for each playmode.

nanaya commented 3 years ago

excluding low ratings kills the database so I don't think that will happen. or maybe not because mysql was just confused.

+----------+---------------+
| count(*) | beatmapset_id |
+----------+---------------+
|      167 |       1291109 |
|      153 |       1064743 |
|      139 |       1264537 |
|      135 |       1001825 |
|      131 |       1222831 |
|      127 |       1291596 |
|      117 |       1313511 |
|      113 |        894666 |
|      107 |       1135418 |
|      104 |       1255845 |
peppy commented 3 years ago

Wait hold on a second. Taiko has a player base of 0.9% of the community? Where are you pulling these stats from, because that sounds completely wrong. Also given it has half the play count of the beatmap with the top playcount in the popular listing (along with other beatmaps in there having equal playcount) does the community share even matter? People are playing the map and taiko, whether you like it or not?

Ephemeralis commented 3 years ago

Playmode from profiles (which isn't a perfect representation, obviously) re: stats. Wouldn't get hung up on it too much. Taiko has always been the smallest gamemode since its inception and likely always will be.

It seems kind of backwards to have a high visibility display for popular beatmaps that doesn't actually require users to play the beatmap in question. There's nothing stopping mass groups of people from favoriting potentially any new beatmap onto the front page with seconds of effort if they could be bothered to organize themselves and instantly giving something a lot exposure.

If you're okay with the notion, feel free to close the issue.

NoffyNoffeh commented 3 years ago

As a note before the discussion is closed, it seems to me like it'd be better to address #5514 , #6016 , #6017 if the issue is with a taiko map ending up here. The feature basically doesn't exist for other game modes when it's always standard dominated.