The aim of this project was to develop a robust multi-user, multi-game, secure networked server engine for the game ‘Hex’ with a graphical user interface for Human players and several AI players.
Hex is a game played between two people, based on players taking turns. The aim of this project is to implement a user interface and game engine to run this game and add artificial intelligence and networking capabilities. Player decisions can either come from a remote human player or a remote AI program. Remote AI's will utilise a separate computer to make faster and better decisions. The interface allows users to contribute their own AI playing agents (e.g. to compare different AIs and have a competition between AIs as the game objective).
Objectives include: 1.Implementing a ‘Hex’ Game Engine which can represent the game and rules of Hex, for any size of board and to securely store game data in a database 2.Create a robust, secure server that can be left running on the internet/cloud platform playing many concurrent games with a uniform API allowing users to create their own GUI’s or AI players (completely language and platform independent) 3.Human players require a GUI to register, login and play games, with a clear and intuitive user interface that can run cross-platform (Windows, MacOS, Linux) 4.Multiple different AI players to determine which AI’s can accurately choose good moves. Different languages should be used for the AI players to demonstrate that the uniform API is language independent