IgeNiaI/Q-Zandronum

Shootable switches sometimes work wrongly in coop

Closed this issue · 1 comments

This problem appeared in Sigil 1 and 2 in coop: sometimes I shoot a switch that opens a door, the door is drawn as open, but I can't pass or shoot through it, like if there is invisible wall. If shootable switch is still available, shooting it again helps (and door opening animation is showing again), but if the switch is not available (closed by a cover), the door remains impassable. The bug appears in about 10% cases, more frequently when I shoot switches with shotgun.

This is the consequence of "unlagged world". It's a feature that makes the game feel like there is no ping to the server. When you activate some switch on client, it immediately does the action attached to that switch, without waiting for server response. The problem is that sometimes client and server disagree on whether the switch was triggered or not. So the client does the action, opens or closes some door, but it doesn't happen on server, leading to the issue you described. Good news is that if that happens, and the switch is now closed on client, it is just visual. The switch is still open on server and you can still shoot it again.

It is possible to improve the synchronization between client and server, but it's really complicated and I don't have time and will to do that.