Hello there,
My Tic-Tac-Toe variation is easy to compile. If you are testing on linux, then decompress
the zip file into your desired directory. There should be a file named Makefile. If so, hit
make. This will compile the code and generate an executable named ttt. You can run examples
in the follow fashion:
./ttt 9letterboardhere
Game boards must be 9 characters long. Each cell can be represented by a variety of characters:
X = x,X,1
O = o,O,0
Blank = ' ' <- space,- <- dash
For example, the board...
OXO
X X
OXO
could be written these different types of ways:
"OXOX XOXO"
0101-1010
oXox-xOXO
To run:
./ttt "OXOX XOXO"
./ttt 0101-1010
./ttt oXox-xOXO
All will give the same output.
--
If you are on Windows, an executable is provided under the name ttt-win32.exe. It is run in the
same fashion through a command prompt.
===== Extra Information =====
************
* The Code *
************
- main.cpp -> 81 lines
* This contains the main() function, the starting point for the program.
- game.h -> 102 lines
* Contains class definitions and function prototypes. There is also a definition switch that will
enable more comprehensive output when boards are printed. Uncomment and recompile if desired.
- game.cpp -> 252 lines
* Contains all member functions for cNode and cBoard.
- minimax.cpp -> 152 lines
* This file has our search algorithm, our static evaluator/utility function, and tree generating code.
- readme.txt -> 107 lines
* Contains information relevent to the compilation and execution of this program.
Toal Lines: 694
*********
* Notes *
*********
- If you run a blank board, the algorithm will take a -long- time and use a large amount of memory.
- Using two or more filled spaces reduces the time and memory usage dramatically
- The board is numbered 0-8 internally as follows
0|1|2
-----
3|4|5
-----
6|7|8
*****************************
* Viewing The Source Online *
*****************************
- If, like me, you like to look at code with keyword highlighting and such, please view the source at:
http:**************************
* Questions and Comments *
**************************
Please send all feedback to Nick Cash at cashn@uni.edu. Thanks! :)