Game Rules: The board consists of three concentric squares with the faces of each square connected by four intersecting lines as shown in figure 2. Each intersection is a space on the board that can be occupied by one piece from either player.

This game belongs to a category of games referred to as the windmills. In this game a mill (short for windmill) is three pieces from either player in a row. When a player makes a mill, the player must remove one of their opponent's pieces from any space on the board that is not also in a mill. There are two possible ways of winning states: either the opponent has only 2 pieces remaining on the board, or the opponent has no moves available. The game has three distinct phases of play, populate, fight, and flight. Populate and fight always occur. Flight might or might not depending on how the victor wins the game. The rules for mills as described above are applicable for all phases of the game.

Each player starts the game in the populate phase. During this phase the players take turns placing each of their nine pieces onto empty spaces on the board. Red always goes first. Players are not allowed to move a piece that has already been placed on the board. When both players have placed all of their pieces on the board, both players enter thefight phase of the game.

During the fight phase of the game players take turns moving one of their own pieces to a vacant adjacent space. Game play at this point is according to each player's winning strategy. A player might try to block all of the opponent's moves, or attempt to build mills and remove all of the opponent's pieces.

When a player has only three pieces remaining on the board, the player with three pieces and only that player enters the flight phase. During this phase a player can move to any open space on the board even if it is on the opposite side of the board.

Use the left sidebar menu to navigate on the module contents. You can use the online multiplayer game to practice your skills against your friends, and then download the all Java version and run the complete game on your machine. Follow the exercises to enhance the game algorithm and its performance, while developing your programming and AI skills.