Multiplayer network problems go unnoticed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
widelands |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
If there are network problems, desyncs, or alike problems in a networked multiplayer game, a notification is put to chat window but apart from that, the game continues as before, AI takes over the tribe of the player that dropped out.
This is a problem:
1: The whole message might go unnoticed, if the attention of the host is elsewhere.
2: Even if this is noted, it usually takes a dozen seconds or so (wallclock time; many games run >1x speed) before the game is saved, and then reloaded. During that time, the AI aggressively modifies the economy of the tribe towards its own way. The resuming player then has a false impression of the state of hist tribe, and might later find his economy to be crippled, as the AI dismantled buildings he assumed to still be there.
Possible fix:
In multiplayer, whenever a player (not observer) leaves, the game is paused and there is a pop-up offering a pause->save->return to lobby and assign-
Related branches
- GunChleoc: Approve
-
Diff: 600 lines (+401/-29)12 files modifiedsrc/network/gamehost.cc (+49/-2)
src/network/gamehost.h (+2/-0)
src/network/network_gaming_messages.cc (+1/-0)
src/ui_basic/unique_window.cc (+3/-2)
src/wui/CMakeLists.txt (+4/-0)
src/wui/game_client_disconnected.cc (+178/-0)
src/wui/game_client_disconnected.h (+62/-0)
src/wui/game_exit_confirm_box.cc (+43/-0)
src/wui/game_exit_confirm_box.h (+41/-0)
src/wui/game_options_menu.cc (+2/-25)
src/wui/interactive_gamebase.cc (+13/-0)
src/wui/interactive_gamebase.h (+3/-0)
tags: | added: multiplayer network savegame |
Changed in widelands: | |
status: | New → Confirmed |
tags: | added: desync |
Changed in widelands: | |
status: | Confirmed → In Progress |
assignee: | nobody → Notabilis (notabilis27) |
Changed in widelands: | |
status: | In Progress → Fix Committed |
milestone: | none → build20-rc1 |
For me it should be like message: "you can continue a game with AI or save and exit" It will be just fine for most people :) Restarting the game always takes lots of time.