Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Game freezes on disconnected player's commander dying #4262

Open
Zzooouhh opened this issue Dec 17, 2017 · 8 comments
Open

Game freezes on disconnected player's commander dying #4262

Zzooouhh opened this issue Dec 17, 2017 · 8 comments
Labels
bug Bugs and errors server

Comments

@Zzooouhh
Copy link
Contributor

Zzooouhh commented Dec 17, 2017

This is related to the more general issue of disconnected (not conceded!) players' permanents persisting on the battlefield which I'm sure was reported here at least once before. Just for clarity's sake: If a player loses connection, his board "folds in" like during a game loss, but the permanents are still there and interact with other players/permanents as normal. A Null Rod owned by a disconnected player still shuts down activated abilities of artifacts, etc.

Arguably the most commonly seen and egregious part of this issue however happens in EDH games: if such a player has his commander persist on the board this way and the commander is forced to change zones somehow after the disconnect happens (typically if killed by a Wrath of God effect), the game lingers on forever as it waits for the now-unavailable player to make the decision to move the commander to the command zone. The player can't even time-out, since the game already seems to consider him "gone".

Since the whole disconnect-persist issue is most certainly a complex matter to solve, I'd love to see at least this part sorted out for now - perhaps there could be a new "player.choose" method for commander zone-changing that has a built-in time limit? If it times out, it'd move the commander to the command zone automatically.

@JayDi85
Copy link
Member

JayDi85 commented Dec 17, 2017

If user disconnected then he can reconnect and resume game. There are must be timeout for every user's interaction.

@JayDi85 JayDi85 added server bug Bugs and errors labels Dec 17, 2017
@Zzooouhh
Copy link
Contributor Author

Zzooouhh commented Dec 17, 2017

Sometimes the user can reconnect and proceed with his normal actions, true. But other times, his board just folds down in a similar way as when a player concedes or dies, except you can see a tiny sliver of a scrollbar just right of his picture and stats table (life, library etc.) - this is presumably the client trying to fit in the remaining permanents into the miniscule space. If the user reconnects afterwards, he is always forced into spectator mode. Haven't quite noticed any specific cause why and when this happens.

@derlhurgoyf
Copy link

I've seen above behaviour also for players who conceded the game. Even then the permanents wouldn't disappear. Strangely enough in one game with Omen Machine, nobody could draw cards, but it also wouldn't trigger during draw to play the top card.
This is somewhat serious, as in the last week I haven't been able to complete ANY multiplayer match.

@JayDi85
Copy link
Member

JayDi85 commented Feb 3, 2018

Freeze on player's concede was fixed on next v3 release.

@LevelX2
Copy link
Contributor

LevelX2 commented Jun 9, 2018

Fixed a bug now, that the commander in the command zone was not removed from the game, if a player left a multiplayer commander game. Maybe this caused a part of the problems.

@Zzooouhh
Copy link
Contributor Author

Zzooouhh commented Jul 3, 2018

As of Xmage 1.4.30V6 this issue still persists. Just had an opponent's Brago commander stick around in a 4 man EDH game after he got disconnected.

@Zerrisx
Copy link

Zerrisx commented Jul 8, 2020

Possibly related issue:

#4413

@JayDi85
Copy link
Member

JayDi85 commented Jul 29, 2020

Possible reason: disconnected user connected to server but miss game start event due to bad connection (e.g. he can't see game window, try to play another game and server can't remove it from old game -- cause it active). Another possible reason: player ignore the game.

Possible solution: add active/disconnected status per game (ping or last active), not per server. Bonus: xmage can drop players who ignore the game (no need to wait 20 mins timer out).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Bugs and errors server
Projects
None yet
Development

No branches or pull requests

5 participants