Haskell library for creating simple deterministic games, such as tic-tac-toe. The engine requires a minimal set of actions related to the game, and then will run the game until a terminal state is reached.
- S0: The initial state (s)
- Player(s): Specifies which player has the move in the state
- Action(s): Returns a legal move in the state (a)
- Result(s, a): The transition model, which determines the result of a move
- Terminal-test(s): true if game is over, false otherwise
- Utility(s, p): A utility function to determine the numeric value for a game that ends in a terminal state (s) for player (p).
See the MockGame and associated spec for an example on how to build a simple game using the game engine.
Install dependencies
$ cabal install
Run tests
$ cabal test