Col's Othello Player
About the GameOthello, also known as Reversi, is a simple game played on an 8x8 square grid (rather like a chess board) between two players; one with black counters and the other with white counters. Each player takes it in turn (if possible) to play a counter of their colour on a blank square on the board in such a way that it joins up with another counter of the same colour either horizontally, vertically or diagonally (or some combination of the three) with at least one opponent counter directly inbetween. Those opponent counters are then flipped so that they become the same colour as those of the player who played the move. The side then swaps. The game is over when neither player has any legal moves, or the board is full. The player with most counters on the board, wins.
See this Wikipedia page for a more complete explanation of this game, here described as Reversi. The rules are identical.
DownloadDownload the latest version of my Othello player (Windows only):
Col's Othello v1.0 (.zip, 66k)
Note - this version has been compiled on 32-bit Windows Vista using Visual C++ 9.0 Express Edition. I accept no responsibility for the code with the exception of its ability (or otherwise) to play good games of Othello.
How does it work?The Othello engine is based around a simple alpha-beta minimax search based on bitboards. This method is very popular in computer chess (see my engine Beowulf), but I have no idea if it is as popular within the Othello world. It seems to be by far the fastest way to generate and perform moves in a game with such a complex move procedure.
What stage is this project at?The Engine is functional, but at a very early-stage and only uses the most basic of algorithms right now. I plan to improve it soon, not only making the engine itself much stronger, but also adding extra GUI facilities such as game clocks and the ability to play timed games.. Watch this space!
Can you add this feature?If you have any suggestions, please let me know at the usual email address (see below).