Timeout?

9:29 pm Game Design, Gaming, My Games, Polls

So, I’m writing a web-based game, and I would like to know how people feel about timing out people who have disconnected. The game is a turn-based strategy game with moderately fast play, on the order of every 30 seconds to 1 minute, comparable to Reversi/Othello (Havannah, to be specific.) In particular, I’m not sure where to set the threshholds for a given person timing out.

My plan is to have three threshholds. If you’re playing a game, and someone disconnects, it’s generally for one of two reasons: their connection failed, or they’re quitting to avoid losing. On the one hand, I have spotty wifi at home, and I frequently lose connection for several minutes at a time, and I wouldn’t want to be counted a loser and a poor sport while I waited on my DSL modem to stop sucking. On the other hand, sitting around waiting for someone you don’t know is frequently the suck, and many people do quit to get out of a loss.

So, I’m setting the upper threshhold at 20 minutes. No matter what, if they log off and stay gone for 20 minutes, the game is discarded, and called in favor of the person still online. However, obviously I don’t want people to have to wait around for 20 minutes, so I need to set a lower threshhold. That threshhold will be the point at which someone gets to choose what to do. If I’m gone a little over the lower threshhold, the system will say to the other player “do you want to call it a tie, save it for later, or claim a disconnect win?” If it’s someone who doesn’t know me, they shouldn’t be forced to wait, and should have the option of calling it a tie if the game isn’t very far in, or if I’ve obviously been having connection trouble. However, they should also be able to claim a disconnect win if they smell a jerk.

It would be nice if they could call a tie or a save very early, much earlier than would be appropriate for calling a quitter loss, so the other two threshholds are those two issues seperately. The lowest threshhold is the “save or tie” threshhold, and it should be fairly fast. Someone can choose to ignore it if they want. The next threshhold is the “you quit to cheat” threshhold, and it should be at least somewhat patient. At the 20 minute line, the system will call it, no matter what.
So, the question is, how long should those two lower timeouts be? Twenty minutes is obviously far too long for either. On the balance, ten seconds obviously isn’t long enough; most people can’t reconnect that fast, and we need to be accomodating of people’s computers rebooting, of modem reconnect cycles, of DSL reconnect cycles, and so on.

I’m going to set a range of options. If you don’t see the time you want, feel free to add it; I’ll be using the distribution of answers, not just the most popular, so it’ll still count.
[?php jal_democracy(6); ?]

[?php jal_democracy(7); ?]

4 Responses

  1. bodicea Says:

    Interesting polls. I definitely hate waiting for players to make their move, especially when it’s a simple decision like passing their turn to me because it’s obvious that I pwned them.

    O: )

    Btw, i came here frm ur comment in my blog.

  2. stonecypher Says:

    I just find it funny that there are five more votes on the first poll than the second.

  3. Brandon Says:

    Have you considered providing an evaluation function to measure the strength of the board from each player’s perspective? Based on that metric and the turn number of the game you should be able to just “do the right thing” whenever someone disconnects, often without even prompting the other player.

  4. stonecypher Says:

    Well, it’s an interesting thought, but you need to remember that just because someone’s losing doesn’t mean they know they’re losing. As such, we might end up making people angry because they don’t know that they weren’t in a position to continue, and as such feel cheated out of a game.

    To wit, such an algorithm would also be extremely difficult to devise, and the number of boards clearly on one or the other side of the line probably isn’t high enough to justify such mandatory handling.

Leave a Comment

Your comment

You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.