forum

Sort by Online Rank [invalid]

posted
Total Posts
11
This is a feature request. Feature requests can be voted up by supporters.
Current Priority: +0
Topic Starter
ferailo9
So, let's say I have 1 map I have a C in, and I'm #1.
I also have, like 50 SSs in songs I'm #200 in.

I do a beatmap search by rank, and I can't find the one I'm #1 in.
Why not just do a Online Rank map search?





Sorry if this has been suggested like a million times...
mattyu007
You mean find out all the rank #1's you have online? I believe this is not possible due to the strain it causes on the database, although I might be wrong...
Derekku
I think peppy has already stated before that he won't add a 'sort by rank' category. But, there's a request topic to show #1's (and possibly more), so you can support that instead~

viewtopic.php?f=4&t=12793
Topic Starter
ferailo9
I meant, like when you're actually playing the game, and...

Well, screenshot works better than words...

Sorting the beatmaps by your highest online rank, as opposed to letter grade.
Like the normal:
SteRRuM

There's no more to say xD.
anonymous_old
viewtopic.php?f=30&t=3085

I coulda sworn there are more duplicates...
Daru
Hm, well...
The problem is sever load, so instead of simply suggesting this, perhaps we should start discussing ways to make it possible?

For instance, limiting the sorting only to maps played in the past few days or so, or updating itself only when #1's-#6's for that particular player are changed. These will update themselves, since it is unlikely that a player will have so many top #6 scores to put too much load on the server. Also, maps where a player failed to make the top #6 (or #100 or whatever) will be saved locally, and brought up under a different section. Since you cannot go up in ranking, only down, these will not have to be updated constantly, but only when browsing through them, as you would normally. It will not be %100 accurate, but accurate enough for a player to know which songs he ranked high or low in.
Topic Starter
ferailo9
Hm? A normal search (like the one I pointed at in the screenshot) uses the osu! server?
Daru
No, but obtaining ranking information does.
That's why you cannot see online rankings while offline; osu queries the server for the information. To sort by rank would require all ranking information from all maps to be sent at once. Multiply that by everyone who's sorting by ranking, as well as the rest of the people just getting ranking information for their song, and you'll have a problem.
peppy
It would mean your position in a song would need to be stored in a separate place.

Updating:
Every time someone gets a new high score on a beatmap, every position would need to be updated to reflect its new value. This can mean up to 20,000 values changing.

Consider that there are over 8million high scores, and 5-20 score submissions per second, and your brain will start to hurt.

Querying:

The reason I will (still) say no for now is because position information is NOT stored but calculated dynamically by checking an index on the beatmap_id and score, sorting descending and counting rows. This table is over 2gb. It is a lot of data to query.

For a user with 2,000 beatmaps, and an average position of 200 on each map, this is querying 400,000 rows just to get updated position information on connect. Keep in mind how volatile this information is, so it needs to be updated frequently. There are around 2-5 connections/beatmap info requests per second. This means 800k-2million row index scans per second.

Not that I'm saying this isi impossible, but it will need serious thought and optimisation - something which requires my time and I have more important priorities at the moment.
theowest
How does the situation for this look now?

Would it be easier if it estimated a grouping between online ranking 1-40, 40-100, 100-1000 and everything beyond 1000?


I've got something better: p/1606885#p1606885
Please sign in to reply.

New reply