Skip to content

niklasrb/NDTicTacToe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is supposed to be an implementation of an N^D TicTacToe Game. Meaning D dimensions and N rows in each dimension.

The playing field is implemented in the Grid class, which is a fancy wrapper for an std::vector of SpaceStates {X, O, empty}. 
Access is controlled by the Position class, which converts indices from [1-N,..,1-N] (length D) to the index in the vector.
Since hardcoding the winning positions is quite difficult for N^D TicTacToe, the field is checked by going through all possible cornerpieces and checking the diagonals that originate from them to be of the same SpaceState (!= empty0
This is helped by the Direction class, which is used internally

To play there are abstract Player and Observer classes, to implement any kind of player (Human, Network, Heuristic AI, Neural Network AI,...)

Heuristic AI is a simple AI that goes along the game tree and evaluates using a meh heuristic.

NeuralNetworkAI is a simple AI that uses a Neural Network implementation to generate a move.

About

N^D TicTacToe

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published