What is Omok?

Omok, or 오목, is the korean name of a board game which is also known as Gomoku (jap.) or simply Five in a Row. It is typically played on a Go board with the black and white Go stones. Black typically starts and players alternate in placing a stone of their color on an empty intersection. The winner is the first player who forms a row of five stones horizontally, vertically, or diagonally. Since it was shown that the beginning player can force a win when these rules are used, a number of slightly changed rules are in use today which prohibit certain moves, sometimes only for black, to keep the game interesting.

I was introduced to Omok by Heeseung when I wanted to convince her to play Go with me. Of course I have played the game before, but I have never considered it a "serious game" - for me it was more like tic-tac-toe. However, when I played it with Heeseung I realized that it is an interesting game that I wanted to continue to play with her, possibly even when we are not together. The problem was that I couldn't find an online-playable version of the game which was free software.

My Implementation

So I started to implement it myself. The game is written in C using the GTK+ widget toolkit. The code is released under the terms of the GNU GPL. Below you can see a screenshot of the game. The game is not finished yet, there are even GUI elements, i.e., the rules settings, which do not have any effect on the gameplay. However, the basic version of the game is playable online.

The source of the game can be downloaded here.