osu-tools icon indicating copy to clipboard operation
osu-tools copied to clipboard

Implemented functionality to calculate all local scores using Realm

Open Givikap120 opened this issue 1 year ago • 9 comments

Now Profile page will have a switch that can change mode of calculation to local. Local mode has additional setting menu. As local mode doesn't have deltas - ExtendedProfileScore was divided into two: ProfileScore and ExtendedProfileScore, where only second has delta display. Calculation of 50k scores will be slow, that's why new caching algorithm was implemented. This caching will be also used in BeatmapLeaderboardScreen, what will speed-up calculation of leaderboard on long maps in around 10 times.

Thanks to dani211e for "calculation from Realm" function

Givikap120 avatar Aug 13 '24 17:08 Givikap120

image Parenthesis are useless imo (+ the wording could be better, "for example" and "anyway" isn't wording you should use in a context like this.) Scorev1'd scores and unsubmitted scores should be combined into one option. If you do decide to keep it, fix the wording, something like "Only calculate highest legacy score". I don't get why RX is excluded? Autopilot I understand, but RX is a very weird choice since it is handled in PP now.

As well, the calculation seems to fail for me. Not sure why, no error message.

Natelytle avatar Aug 13 '24 19:08 Natelytle

image Parenthesis are useless imo (+ the wording could be better, "for example" and "anyway" isn't wording you should use in a context like this.) Scorev1'd scores and unsubmitted scores should be combined into one option. If you do decide to keep it, fix the wording, something like "Only calculate highest legacy score". I don't get why RX is excluded? Autopilot I understand, but RX is a very weird choice since it is handled in PP now.

As well, the calculation seems to fail for me. Not sure why, no error message.

Scorev1-ed scores are submitted (as well as scores on graveyard maps are submitted too). So it doesn't makes sense to filter-out those scores if we ignore not submitted scores. RX is excluded because RX was overweight with CSR, making my #1 unranked score to be 300pp on 8 star with RX. But that's silly reason, ye, I should probably remove it. Also >14 star unranked maps was excluded in the code because aspire map sliderend miss penalty is super bad. Don't sure should I keep this or no. And your screenshot seems to have old text, scorev1-ning option name is "Enable Scorev1 score overwrite for legacy scores". About linux - idk how to deal with it. I will let StanR to look into this issue.

Givikap120 avatar Aug 14 '24 08:08 Givikap120

What is the use-case of this - why compute from local scores rather than online profile?

smoogipoo avatar Aug 15 '24 07:08 smoogipoo

What is the use-case of this - why compute from local scores rather than online profile?

The idea is to be able to compute more scores per profile since API is limited to 100 only and database dumps are limited to top 10k players

stanriders avatar Aug 15 '24 08:08 stanriders

What is the use-case of this - why compute from local scores rather than online profile?

  • checking your real profile with CSR is pretty much impossible now (if you're not 4 digit and higher) - this thing fixes it
  • also it's useful for players who often play graveryard maps and have a lot of top plays on them (example - Plasma, Lolu)
  • + players like me, who have a lot of RA scores - I can finally see where they should be
  • it's just funny in general to see different statistics like "amount of 200pp plays you have" or "how much pp you would have only on unranked maps"
  • in future I will also add mod filter, so you will be able to calculate your top plays only for NM for example
  • precedent for having Realm access, meaning that you now can have simulate score on lazer beatmap without having jump through hoops with exporting it back to stable. Also it means proper search in the simulate menu. Also it means you can use beatmaps directly from lazer, without having to download it into local storage, costing time and space.

I hope this is enough reasons to understand why this PR is useful

Givikap120 avatar Aug 15 '24 09:08 Givikap120

Selecting maps from lazer instead of having to bother with .osu files? yes please merge this that'd be sooo useful

minisbett avatar Aug 31 '24 01:08 minisbett

Selecting maps from lazer instead of having to bother with .osu files? yes please merge this that'd be sooo useful

This is not what it does. It's only allowing you to calculate already existing scores from your lazer scores database. You can also just use beatmap ids instead of .osu files already

stanriders avatar Aug 31 '24 08:08 stanriders

Selecting maps from lazer instead of having to bother with .osu files? yes please merge this that'd be sooo useful

This is not what it does. It's only allowing you to calculate already existing scores from your lazer scores database. You can also just use beatmap ids instead of .osu files already

Oh, it sounded like there's a proper selection for a beatmap with a search function instead of having to find the beatmap id, but seems like i misunderstood that

minisbett avatar Aug 31 '24 09:08 minisbett

Selecting maps from lazer instead of having to bother with .osu files? yes please merge this that'd be sooo useful

This is not what it does. It's only allowing you to calculate already existing scores from your lazer scores database. You can also just use beatmap ids instead of .osu files already

Oh, it sounded like there's a proper selection for a beatmap with a search function instead of having to find the beatmap id, but seems like i misunderstood that

If Realm Access of this PR is merged - then making proper selection for a beatmap is 10 times easier as it's the main problem that's stopping search in lazer db.

Givikap120 avatar Aug 31 '24 10:08 Givikap120