Hinversi is my own version of Reversi or Othello, a board game. It was written from the beginning thinking on modularity, to ease the process of changing and improving the AI engine.


2009-08-15 I'm moving the hinversi site to sourceforge. New versions will be placed only there.

2008-05-22 Version 0.8.2 released. Added an experimental interface for using with CGIs. Swapped the coordinate notation. Updated autotools configuration.

2007-03-30 Version 0.8.1 released. Little change in the build process, so compiling without check will also work.

2007-03-26 Version 0.8.0 released. Now is hinversi internatinalized and speaks english, german and portuguese. Added also a new AI-Engine: ElMatador. It is stronger than Neo, and also faster. This release have also a man page, a tiny check suite and a better command line parsing, using getopt.

2004-06-25: First related project to hinversi. An othello applet for Gnome and WindowMaker. Take a look at gai-othello, written by Jonas Aaberg.

What is Reversi/Othello

(Extracted from gtkboard-othello)

Two players take turns in placing balls of either color. The objective is to get as many balls of your color as possible.

When you place a ball in such a way that two of your balls sandwich one or more of the opponent's balls along a line (horizontal, vertical, or diagonal), then the sandwiched balls change to your color. You must move in such a way that at least one switch happens.

(From Iagno)

The object of Iagnoothello is to flip as many of your opponent's tiles to your color as possible without your opponent flipping your tiles. This is done by trapping your opponent's tiles between two tiles of your own color.

The board starts with four tiles arranged in a box on the middle of the board. The tiles have the same color at each corner. Black goes first and places a tile on the board such that it traps white's tiles between two of black's tiles. When black places a tile on the board all of white's tiles between black's newly placed tile and another black tile, in a horizontal, vertical, or diagonal row, are flipped over and become black. When there is tile trapped between two tiles, of an identical color in the same row, the player captures tiles until another tile of the player's color is encountered in. The player can only take tiles that are a direct result of the placing a tile on the board. Once a tile is placed on the board the player cannot remove it and place the tile somewhere else. If a player cannot move they forfeit their turn. The game ends when it is no longer possible for either player to move.


(Extracted from gtkboard-othello)

The number of balls of either color at a given time is, paradoxically, a very poor indicator of who has the advantage. This is because balls can flip color en masse and wildly, especially during the last few moves.

Indeed, in the beginning you should try to minimize the number of balls you have. The key is mobility. You must strive to maximize your number of legal moves so that you can try to force your opponent into making bad moves.

The corners are key squares, because corner balls never flip. If your opponent blunders into giving you a corner before the final stages of the game, you are practically assured of a win.


Hinversi Screenshot

Old Versions:

0.7.2: Reorganized everything using the GNU autotools. Now just "./configure && make && make install". Tested unter Linux i386 + AMD64, Solaris (Sparc) and cygwin.

0.7.1: This version introduces a new "uninstall" target. You can compile and run without installing. This version also fixes a bug in the hinversi-cli, caused by the optimisation. Now it is possible to play agains the computer again.

0.7: released with many improvements. Neo should be faster, Neo now adapt the search depth during the game. I also added some more heuristics to Neo, so it should be now more dificult to beat him. It is also splitet in an othello library and a simple CLI-program, so you can use it too make your own GUI-othello ;-).

0.5: with a strong Alpha-Beta player engine called Neo :).

0.3: with a simple AI-Implementation.

0.2.1: first Bug free (?) release.

Related projects

gai-othello, an othello applet using hinversi as back end, written by Jonas Aaberg

2003-2010 © Asturio Kee

Valid HTML 4.01 Strict Valid CSS!