Skip to content

Implemented Games

Raluca D. Gaina edited this page Jul 28, 2020 · 7 revisions

There are currently 7 games implemented in the framework, varying from very simple test games (Tic Tac Toe) to complex strategy games (Pandemic), as well as different challenges for AI players. All implemented games can be found in the games package, each registered in the games.GameType class; this class allows specifying properties for each game, so that games with a specific property can be automatically listed for experiments (e.g. users could run AI players on all games with the "cooperative" tag). We highlight next some particularities of the games currently implemented in the framework.

Players alternate placing their symbol in a NxN grid until one player completes a line, column or diagonal and wins the game; if all cells in the grid get filled up without a winner, the game is a draw.

This is the simplest game included in the framework, meant to be used as a quick reference for the minimum requirements to get a game up and running. Its implementation makes use of mostly default concepts and components, but it implements a scoring heuristic and a custom GUI for an easier interaction given the specific game mechanics.

Each card represents a character, which in turn consists of a value and a unique effect. At the start of the game, each player holds one card. A second card is drawn at the beginning of each turn. Given the two cards in a player's hand, they choose one to be played. Card effects can target other players and may exclude them from the remaining game. After the last card of the deck has been drawn, the player with the highest valued card wins the current round. The first player who has won 5 rounds wins the game.

The game features partial observability (opponent cards), asymmetric and changing player roles as well as a point system over multiple rounds.

The game consists of numbered and action cards. Numbered cards are of one of four colours and can only be played in case either the colour or the number matches the newest card on the discard pile. Action cards shake up the game by letting players draw additional cards, choosing the next colour to be played and reversing the turn order. A player wins after gaining a number of points over several rounds (computed as the sum of all other player's card values).

Similarly to Love Letter, Uno is played multiple rounds during which the winning player of each round scores points. This game has the potential to be the longest game in the framework since players need to draw new cards in case they cannot play any card.

Each player has a body, which consists of four organs, one of each colour, plus a wild one. The organs can be: infected, when an opponent player plays a virus card on it; vaccinated, when the player plays a medicine on the organ; immunised if two medicine cards are placed on the organ; or destroyed if the opponents place two consecutive virus on the organ. The winner is the first player who builds a human body, while avoiding opponents from infecting it, destroying it, or stealing the player's organs. The game features partial observability, with the draw pile and opponents' cards being hidden.

Players try to avoid drawing an exploding kitten card while collecting other useful cards. Each card gives a player access to unique actions which shake up the game-state, e.g. selecting the player taking a turn next and shuffling the deck.

In contrast to previous games, Exploding Kittens features an action stack in which players have the chance to react to cards played by other players using a Nope card. A Nope card cancels the most recent effect, but can itself be cancelled by another Nope card. The turn order and action stack are realised by extending base-classes of the framework.

The board is represented by a train of multiple compartments with two levels each. A player controls a bandit with a unique special ability. Their goal is to collect money while traversing the compartments and avoiding the sheriff.

The game consists of several rounds, each with a planning and an execution phase. During the planning phase, players take turns in playing action cards from a random set and thereby create a stack of actions. In the subsequent execution phase, the stack is processed by asking each player how to use the current action. Those actions can move the player's character along the compartments, interact with neighbouring players, or collect money. The game ends after all rounds are played, the player with the most money being the winner.

This processing scheme forces players to adapt their pre-planned strategy according to all the moves that have been played already, in an interesting case of partial observability/non-determinism: the opponents' type of action may be known (sometimes completely hidden in a round), but not the way in which it will be executed. Additionally, the unique abilities create asymmetric game-play where the overall strategy should be adapted to the bandit's ability.

Pandemic is a complex cooperative board game for 2 to 4 players. The board represents a map of the world, where the major cities are connected by a graph structure. The game starts with four diseases breaking out in the world and the objective of the players is to cure all diseases, which keep spreading after each player's turn. At the beginning of the game, each player is assigned a unique role with special abilities and cards that can be used for travelling between cities, building research stations or curing diseases. If the players do not treat the diseases, they quickly spread to more cities leading to outbreaks. All players lose if they run out of cards in the draw deck, if too many outbreaks occur or if the disease spread too much. Special event cards are available to the players, which can be played anytime (even outside the player's turn). In each turn, the player can play up to 4 consecutive actions, with a changing action space (e.g. moving to a new city may result in new actions that the player can do there).

To handle event cards and actions that require consent or reactions from other players, a reaction system has been implemented, so that a player can be asked to return an action when needed. Pandemic also features partial observability, as the draw deck and the infection deck are not visible. This game employs the tree-structured rule system for handling its main game loop.

Clone this wiki locally