Tic-tac-toe game written in Python3 using the pygame library and minimax algorithm.
Make sure you have installed the pygame library
pip3 install pygame
To run the game simply do
python3 main.py
LMB - move to position
R - restart the game when ended
In turn based games each player desires to pick the move that gives them an advantage. Each available move has a value associated with it, therefore there is a player that is maximizing and one that is minimizing. The algorithm goes back and forth between the two players, where the maximizing player is trying to pick the move with the maximum score, but the score for each available move is determined by the minimizing player trying to pick the move with the minimum score. This repeats until there's no more available moves or once an end state is reached.