osu/osu.Game/Scoring
Bartłomiej Dach 03a279a48d
Use hash rather than online ID as primary lookup key when presenting score
Something I ran into when investigating
https://github.com/ppy/osu/issues/28169.

If there are two scores with the same online ID available in the
database - for instance, one being recorded locally, and one recorded by
spectator server, of one single play - the lookup code would use online
ID first to find the score and pick any first one that matched. This
could lead to the wrong replay being refetched and presented / exported.

(In the case of the aforementioned issue, I was confused as to whether
after restarting spectator server midway through a play and importing
the replay saved by spectator server after the restart, I was seeing a
complete replay with no dropped frames, even though there was nothing in
the code that prevented the frame drop. It turns out that I was getting
presented the locally recorded replay instead all along.)

Instead, jiggle the fallback preference to use hash first.
2024-05-14 11:16:50 +02:00
..
Legacy Merge branch 'master' into pre-mod-multiplier-score 2024-05-08 13:39:44 +02:00
HitResultDisplayStatistic.cs
IScoreInfo.cs Delete `ScoreInfo.HasReplay` as no longer needed 2023-10-27 12:39:54 +02:00
LegacyDatabasedScore.cs
RankingTier.cs
Score.cs Revert nullability enable in `Score` (and related changes) 2023-06-24 15:35:07 +02:00
ScoreImporter.cs Look up users by ID if available when importing scores 2024-05-06 13:24:34 +02:00
ScoreInfo.cs Add `ScoreInfo.TotalScoreWithoutMods` 2024-04-17 08:51:53 +02:00
ScoreInfoExtensions.cs Make `ScoreInfo.BeatmapInfo` nullable 2023-07-04 14:50:34 +09:00
ScoreManager.cs Use hash rather than online ID as primary lookup key when presenting score 2024-05-14 11:16:50 +02:00
ScoreModelDownloader.cs
ScoreRank.cs Disable inconsistent naming in some fields of `ScoreRank` 2024-05-01 17:22:10 +03:00