Game Designer’s Notes #8: Preventing never-ending games

Courtesy of Amos Kwok

Everyone knows that one game that takes twenty five hours to play, and every hour is another hour of pain. Two quintessential classics come to mind: Risk and Monopoly. Both games are both monotonous and never-ending.

At which point, most people just quit the game.

We know no one wants games like that, so how do you keep a game interesting, and within a reasonable time frame?

Well, by setting parameters for time.

This mechanic, or idea, is the single most implemented mechanic I’ve seen in abundance. The fun thing is, everyone implements it differently. I’ll talk about a few “basic” ones today.

Set rounds. Some games literally put a cap on the game’s time by setting a specific number of rounds. This is the case of the drafting game 7 Wonders: there are only (ever) 18 rounds. This basically forces the game to take, at most, 30 minutes to finish.

Have a game “clock”. This isn’t an actual clock; rather, it’s a mechanic that tracks the progress of something in a game, and once that’s completed, the game is over. Carcassonne, a tile placement game, demonstrates that well. Once every tile has been placed, the game ends. This means, of course, that no matter what anyone does (short of table flipping), the game will end.

Set an endgame condition. Create a set of requirements that, once fulfilled, will trigger game end. These conditions have to be fulfilled by the players; there is no “clock” in this version. This creates another type of inevitability: one where everyone wants the game to end, but only when the odds are in their favour. This is the case of Race for the Galaxy, where the game ends once any player has placed 12 cards.

And that’s how you end a game. Fast.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at

%d bloggers like this: