Escape-sprowe / README.md
README.md
Raw

Escape-sprowe

Final Project for CS4233. A controller for the states and players of "Escape"

The objective of the game is to have all the player's pieces escape the board. Configuration files are read in before each match, dynamically building the board and rules as described.

Boards can be either finite or infinite in size, with the grid layout being either square or hexagonal. Furthermore, certain board spaces can be empty, have obstacles, or act as exits.

Players are assigned pieces according to the config file, and pieces can have varying types and rules of their own. This includes varying movements distances, movement types (linear, diagonal, etc.), the ability to cross obstacles, and the ability to capture enemy pieces.

On a given player's turn, they designate a piece and intended location and the controller determines if there exists a path to said location, accounting for the attributes of the selected piece. This process repeats until all of a player's pieces have escaped, been captured, or a defined turn limit has been reached.