Dying earlier than I actually failed in a failed replay
Type
Game behaviour
Bug description
I played this map with the classic mod enabled in osu!lazer, and died at around the end of the map. I saved the replay and then tried to rewatch it, but I die way earlier than I did in the actual play. When I import the replay into stable, I don't die and the replay finishes as it should
replay.osr.zip (zipped cause github wont let me upload .osr)
Screenshots or videos
https://github.com/ppy/osu/assets/58487401/cdbd9b46-c0fb-4d88-9468-5ca726180e29
Version
2023.717.0-lazer
Logs
i have gotten the same issue
The replay in the OP has now flipped, as in it now does not fail at all.
Not sure how to handle both cases, e.g. handling both failing before exhausting frames, and also not failing before frames run out (there are instances of both). There's also the part wherein lazer stops recording replay frames at import time rather than immediately on fail, which means that the fail could be indeterminately delayed from where it should be if it's based on running out of frames.
Related: https://github.com/ppy/osu/issues/20857#issuecomment-1493714911
@ppy/team-client any opinions how to handle this?
The replay in the OP has now flipped, as in it now does not fail at all.
The OP says their play doesn't fail on stable, what's that about? Is it so close to the end of the beatmap that stable isn't able to determine that it was a fail?
There's also the part wherein lazer stops recording replay frames at import time rather than immediately on fail, which means that the fail could be indeterminately delayed from where it should be if it's based on running out of frames.
It would be great if we could "mark" a fail using a replay frame, for new replays. But the case where it's delayed should only be milliseconds, as far as I understand.
The OP says their play doesn't fail on stable, what's that about?
I'm not sure but given the title is "dying earlier than I actually failed", I presume the replay should fail at some point.
The OP says their play doesn't fail on stable, what's that about?
I'm not sure but given the title is "dying earlier than I actually failed", I presume the replay should fail at some point.
It’s supposed to fail at the part where my cursor freezes (1:00 in the replay)
Also, re: this:
But the case where it's delayed should only be milliseconds, as far as I understand.
I don't think it's milliseconds in case of a failed replay because in that case there's the whole fail animation playing out. And sure, it does slow down track, so it's probably seconds at most, but yeah.
I think the next sane step would be to just do what stable does – allow fails after frame exhaustion – and ignore the edge case – of the map potentially reaching completion before the fail occurs – to handle the majority scenario.
I don't think it's milliseconds in case of a failed replay because in that case there's the whole fail animation playing out. And sure, it does slow down track, so it's probably seconds at most, but yeah.
Yeah I'm aware of this, assumed it would end up being under a second due to the slowdown, but I guess maybe not.
The replay in the OP has now flipped, as in it now does not fail at all.
I only now realise that it's likely the act of exporting the replay here that made the replay not-fail, since the fail state was not yet even stored to replays at this time. See OP of https://github.com/ppy/osu/pull/33670#issue-3140167741.