#2373 closed defect (fixed)
[PATCH] Confirm user resignation on exit game.
Reported by: | scythetwirler | Owned by: | Michael |
---|---|---|---|
Priority: | Must Have | Milestone: | Alpha 16 |
Component: | UI & Simulation | Keywords: | |
Cc: | Patch: |
Description
Many players are not aware that exiting does not include resigning, and thus, many games are effectively "abandoned". Clicking "Exit" should bring up a dialog with "Confirm resignation".
Attachments (9)
Change History (33)
comment:1 by , 10 years ago
Keywords: | simple added |
---|
by , 10 years ago
Attachment: | resignation.patch added |
---|
comment:3 by , 10 years ago
boeseRaupe, the problem is that quitting does NOT resign. So in a multiplayer game, the game is won by nobody, which means there is no score update.
by , 10 years ago
Attachment: | resignation_v2.patch added |
---|
Exit is possible only after the game is over; reordered menu.
comment:5 by , 10 years ago
Keywords: | patch review added |
---|---|
Owner: | set to |
Summary: | Confirm user resignation on exit game. → [PATCH] Confirm user resignation on exit game. |
follow-up: 7 comment:6 by , 10 years ago
Keywords: | reviewed added; review removed |
---|
Patch looks good to me and in my opinion can be committed.
comment:7 by , 10 years ago
Replying to Josh:
Patch looks good to me and in my opinion can be committed.
:) Any other opinions ?
comment:8 by , 10 years ago
I understand the problem this patch is trying to fix, but it doesn't seem like the right solution. Isn't it still possible to close the game with Alt-F4 or in windowed mode, clicking e.g. the 'X' button? That won't trigger a resign, but the player is gone nonetheless. It should be possible to exit via the menus without resigning too, maybe I'm having connection problems and need a reboot, but I intend to rejoin.
The problem you want to solve, I think, is players who are gone from the game but aren't returning. It's not something that can be solved through their UI, because they might simply lose internet access or have a crash on their end. I think that should be handled somehow, maybe with a timeout.
The multiplayer exit dialog is misleading though, maybe it can be rephrased to explain the difference between exit with or without resigning?
comment:9 by , 10 years ago
How about clicking exit brings up a choice, "You are exiting the game, will you return later?", then have options "No, I want to resign" and "Yes, I will return"
comment:12 by , 10 years ago
Keywords: | reviewed removed |
---|
by , 10 years ago
Attachment: | resignation_v3_WIP.patch added |
---|
Problem left with resign and then quit
comment:13 by , 10 years ago
What does the patch do in a MP game:
- add question after quit like historic_bruno suggested
- starts an timeout if a player leaves the game (currently 15 seconds for testing).
What should be added in addition:
- pause MP game when a player leaves and let the remaining players vote if the pause should last during the timeout or not.
by , 10 years ago
Attachment: | resignation_v3.2.patch added |
---|
Fixed bug with more than 2 players; thx to leper for testing and help.
comment:14 by , 10 years ago
With a quick read-through the patch looks alright, but what exactly would be the point of a timeout? If the player just disconnected it shouldn't ever mark the player as resigned (which would confuse the leaderboard ranking system). In my opinion they should remain in the "active" state until only one connected player is left or the end of the game is reached. In the case of only one remaining player, the remaining player should be asked if they would like to wait for the other player to rejoin or if they would like to quit. In the case that the game ends, the disconnected player should just be marked as in the "disconnected" state before data is sent to the multiplayer server.
comment:15 by , 10 years ago
Because there seems to be the need for more discussion about how to handle players which do not rejoin, I split the patch into two parts.
resignation_v4.patch just adds the confirmation question which historic_bruno suggested. (onlay GUI changes)
For the rest I opend a new ticket: #2400
comment:16 by , 10 years ago
Keywords: | review added |
---|
by , 10 years ago
Attachment: | resignation_v5.patch added |
---|
Moved Engine.EndGame?() to timer instead of leaveGame.
by , 10 years ago
Attachment: | resignation_v6.patch added |
---|
Moved timer back to leaveGame. Timer is not executed after SwitchGuiPage()
comment:17 by , 10 years ago
There might be a problem with the patch, if the player exits the game during the timeout because then the Timer would not be called.
Perhaps we should try to make the Engie send the Message before the game is exited an remove the timer...
by , 10 years ago
Attachment: | resignation_v7.patch added |
---|
Now without timer because fixed problem with messages are not send when game ends.
comment:19 by , 10 years ago
Keywords: | review removed |
---|
I would like to apologize for having left this here so long, the patch looks fine technically. I will test and commit the patch as soon as I have a clean SVN to apply it on.
comment:20 by , 10 years ago
Keywords: | review added; game exit resign removed |
---|
follow-up: 23 comment:22 by , 10 years ago
Keywords: | simple patch review removed |
---|
Thanks for the patch, hope to see more. =)
comment:23 by , 10 years ago
Replying to Josh:
Thanks for the patch, hope to see more. =)
I would like to do some more stuff but at the moment I have no time to do it. :/
More information was added to the question.