ppy / osu-stable-issues

Report critical osu-stable issues here
61 stars 11 forks source link

Failed scores counted as passes sometimes in multiplayer #350

Open chayleaf opened 4 years ago

chayleaf commented 4 years ago

I don't know how to reproduce it, but I've won multiple multiplayer rounds when everyone failed but my fail didn't count. The gamemode is osu!taiko, not sure if it matters in std and other modes.

Beyley commented 4 years ago

I can confirm that it has happened to me on std, have no idea how to reproduce it though

peppy commented 4 years ago

did everyone fail around the same point in the beatmap? sounds like latency meaning that one person is failing slightly after everyone else, at which point bancho will decide the last man standing is the winner?

chayleaf commented 4 years ago

In taiko the players fail at the same time, so it might be possible. However, I can't say for sure if it always happens for one player at a time. Besides, the fail should still be shown at the results screen even if bancho temporarily decides the player is a winner at some point.

Beyley commented 4 years ago

perhaps Bancho stops caring about fails once it decides a winner

peppy commented 4 years ago

@pavlukivan you can say that, sure, but the only way to fix such a case is to delay the fail for x seconds and hope all fails are received from all clients. if one user lags it could still fail.

chayleaf commented 4 years ago

doesn't the client already show "waiting for other players" at the end of the map?

mangomizer commented 3 years ago

Just bumping this up because I have made some observations.

For the osu!taiko gamemode, (in most cases I have observed) one can pass a map on multi lobby as long as they have a sliver of HP at the end of the map. For example, they can just hit the last note of the map and the game still counts it as a pass.

There are times when players have 0-50% HP and fail, but this is quite rare (but this would be correct behaviour).

If a player has exactly 0HP at the end of a map, it always counts as a fail.