The topic of timed games comes up now and again because different people like to play Dominion at different speeds. I thought I would lay out an example of where I would start to think about implementing a clock and see what others think.
There would be two options for playing a timed game, "Minutes per player" and "Clock runs continuously".
+ Play a timed game
o Minutes per player
x 5 (default for 4-6 players)
x 15 (default for 2-3 players)
o Clock runs continuously
x Yes (default)
"Minutes per player" with "Clock runs continuously" checked to "Yes" is pretty straightforward. It's a straight clock that starts counting down when a player needs to make a decision (e.g. start of turn) and ends when the next player needs to make a decision (e.g. start of next player's turn).
Setting "Clock runs continuously" to "No" would implement delays for when the player is interacting with the client. In particular,
(1) The clock would not run during animations. To make this even among players, animation speed for all players at the table is set to the slowest speed preference among the players.
(2) A fixed amount of time (e.g. 1 second) is added to the clock each time a player makes a decision that advances his turn and requires an interaction with the client. For example, playing Peddler adds 1 second. Playing Pawn adds 1 second then clicking the Action/Buy option adds another 1 second. Checking what's in the trash or right-clicking on a card to read its text would not add time to the clock.
What happens if the clock runs out for a player?
The player loses. In two player games, the game ends. In 3+ player games, the timed-out player becomes a spectator and a bot takes their place. No matter the score of the bot, the timed-out player gets last place. [Alternative: The timed-out player becomes a spectator and the game continues among the remaining players. The timed-out player gets last place.]
What happens if a player disconnects?
The clock keeps running.
What about reactions, Envoy, Contraband, etc.?
Following the rules of Dominion, play is sequential, so clocks stop and start as players need to make a decision. For example A plays Witch. A's clock stops, B's clock starts. B reveals Moat. B's clock stops, C is skipped (no Moat in hand and client does not allow for pretending so there is no decision for C to make). D's clock starts. D reveals Moat. D's clock stops, A's clock starts. A continues with the turn.
Why set 5 and 15 minutes to be the default?
For a two player game, 15 minutes per player gives 30 minutes per game. Same with 5 minutes per player in a 6 player game. This lines up with the physical box's "30 minutes or less" estimation about time to play. Defaulting to less time per player in games with more players also makes sense because you can think during others' turns.
What about the inactivity time-out that's already implemented in games?
For timed games, there would be no inactivity time-out, only a clock hitting 0 time-out.
So, what do you think?