Replay playback accuracy issue (osu!)
Type
Game behaviour
Bug description
As can be seen, two results appeared in a replay, One is to break combos, and the other is not.
After the playback is completed, there will also be scores that do not match the previous ones.
Screenshots or videos
oh no, "This video is too big.", So I can only provide a playback file, and the situation described appears around 500x to 600x in a combo. Hu_Xiaobox playing TUYU - Itsuka Otona ni Nareru to Ii ne. (Len) [pnky_s Hard] (2023-05-31_22-35).zip I can't compress a 110mb video into a 20mb one.
Version
2023.513.0-osulazer
Logs
In that replay, the combo break at 572 seems to be a quick sequence of key presses that if not timed correctly causes a slider break. Replays currently round the double value of the ReplayFrame.Time value to an integer value.
https://github.com/ppy/osu/blob/8063d50369336072cb8527c0d643beb894e639a7/osu.Game/Scoring/Legacy/LegacyScoreEncoder.cs#L137
As a consequence of it needing very tight timing I can get it to not slider break (most of the time) by watching the replay while the game doesn't have focus. (forcing 60hz update rate)
Regardless of game frame rate, we enforce frame stable playback which should mean this cannot happen.
Most likely cause of this issue is with slider head movement. The keypress happens when the slider head has moved away from the cursor so a sliderbreak happens.
No idea how this didn't sliderbreak during gameplay though.
But since slider head movement doesn't exist anymore, I think it's fine to close this issue.
Let's close as fixed by slider head movement removal (https://github.com/ppy/osu/pull/24810)