For this course, your project is to write an AI program that can play the game Nevo. At the end of class there will be a tournament among the AI programs, and the team with the winning programs wins extra credit points.
To the best of my knowledge, this game is no longer being produced, and is very difficult to find. Consequently, you do not need to buy the game, but you may want to build your own board to play it and discover good strategies. I have also written a 2-player version that uses a textual output of the board.
nevo_2p.tar.gz - Gzip, tar'd source code in C that implements a standalone version of the game (C source code).
nevo_ai.tar.gz - Gzip, tar'd source code in C that implements a standalone AI player for the game.
Game Manager
The game manager is a program designed to act as an interface between two AI programs. Rather than manually input moves to the AI programs, I ask that your program conforms to the I/O specs of the game manager. This allows programs to directly communicate and greatly speeds up the time it takes to run the tournament.
nevo_manager.tar.gz - Gzip, tar'd source code in C for a game manager that will automate gameplay between AI programs. Use the "dumbclient" code in this project as a base to write your own program.
My AI nevo code: nevo_smart.tar.gz is my AI playing program if you want to take a look and see how I implemented it. It is designed to run with the game manager.
Game Rules
The game rules are explained in this pdf file: nevo.pdf. Comment: In retrospect, the second rule change described in the pdf file is bad since it allows a fixed sequence of moves guaranteed to win or tie. This was exploited by one of the teams!