ppy / osu

rhythm is just a *click* away!
https://osu.ppy.sh
MIT License
15.32k stars 2.28k forks source link

Null or failed scores count toward total clears and accuracy in playlists #27411

Closed spdragon0 closed 8 months ago

spdragon0 commented 8 months ago

Type

Game behaviour

Bug description

Possibly related: https://github.com/ppy/osu/issues/18657

These scores are submitted, but they are not visible as the game returns a null exception. However, they count as clearing the map and will affect the total accuracy for that playlist. I don't know if score is affected. I encountered this in two different osu!catch playlists, but it didn't seem to occur at all in a slightly older one. Steps:

  1. Play a playlist and submit a score (so that your name appears on the leaderboard)
  2. "Play" a second map in that playlist but fail or quit early
  3. Leave and re-enter the playlist (the stats should be affected) Opening the affected beatmap leaderboard does not display the wrong score, as expected, but a network error occurs (see below).

Edit: I can't reliably reproduce my problem, so maybe I'll still need to look into it.

Screenshots or videos

No response

Version

2024.219.0

Logs

From runtime.log (score is successfully submitted after quitting early): 2024-02-27 19:10:20 [verbose]: 📺 OsuScreenStack#257(depth:4) suspended Playlists#347 (waiting on PlayerLoader#655) 2024-02-27 19:10:20 [verbose]: 📺 OsuScreenStack#257(depth:5) loading PlayerLoader#655 2024-02-27 19:10:20 [verbose]: 📺 OsuScreenStack#257(depth:5) entered PlayerLoader#655 2024-02-27 19:10:20 [verbose]: 📺 BackgroundScreenStack#311(depth:2) loading BackgroundScreenBeatmap#272 2024-02-27 19:10:20 [verbose]: 📺 BackgroundScreenStack#311(depth:2) suspended BackgroundScreenDefault#588 (waiting on BackgroundScreenBeatmap#272) 2024-02-27 19:10:20 [verbose]: 📺 BackgroundScreenStack#311(depth:2) entered BackgroundScreenBeatmap#272 2024-02-27 19:10:21 [verbose]: Score submission token retrieved (189298427) 2024-02-27 19:10:22 [verbose]: 📺 BackgroundScreenStack#311(depth:1) exit from BackgroundScreenBeatmap#272 2024-02-27 19:10:22 [verbose]: 📺 BackgroundScreenStack#311(depth:1) resume to BackgroundScreenDefault#588 2024-02-27 19:10:22 [verbose]: 📺 OsuScreenStack#257(depth:4) exit from PlayerLoader#655 2024-02-27 19:10:22 [verbose]: 📺 OsuScreenStack#257(depth:4) resume to Playlists#347

From network.log: 2024-02-27 19:10:21 [verbose]: Performing request osu.Game.Online.Rooms.CreateRoomScoreRequest 2024-02-27 19:10:21 [verbose]: Request to https://osu.ppy.sh/api/v2/rooms/582017/playlist/5293569/scores successfully completed! 2024-02-27 19:10:21 [verbose]: CreateRoomScoreRequest finished with response size of 118 bytes

From network.log (after score submission, now trying to access the invalid score after re-entry): 2024-02-27 19:03:04 [verbose]: Performing request osu.Game.Online.Rooms.ShowPlaylistUserScoreRequest 2024-02-27 19:03:04 [verbose]: Request to https://assets.ppy.sh/beatmaps/2040231/covers/cover@2x.jpg?1708627876 successfully completed! 2024-02-27 19:03:04 [verbose]: Request to https://osu.ppy.sh/api/v2/rooms/582017/playlist/5293569/scores/users/7299865 failed with System.Net.WebException: NotFound. 2024-02-27 19:03:04 [verbose]: Response was: {"error":null} 2024-02-27 19:03:04 [verbose]: Failing request osu.Game.Online.Rooms.ShowPlaylistUserScoreRequest (osu.Game.Online.API.APIException: Exception of type 'osu.Game.Online.API.APIException' was thrown. 2024-02-27 19:03:04 [verbose]: ---> System.Net.WebException: NotFound 2024-02-27 19:03:04 [verbose]: --- End of inner exception stack trace ---)

frenzibyte commented 8 months ago

That is expected response from the API. The client is behaving correctly by showing the "No records yet!" placeholder, with no side errors showing up as a notification or being reported to us.