Go
Go is an old board game from Asia, but is played all over the world with varying rules.
This version of Go is more or less equal to the one described here, with some simplfications mostly in the area of calculating the
score. Please have a look at that or some other Go page for a good explanation of the rules.
What follows below is a very short but complete description of the rules used by Internet Go.
Placing a stone
- The intersection where you place your stone must be empty
- The stone you place must have access to a free intersection after any stones that lose
their last free access when you've placed your stone have been removed.
- At no time is a board state that has already appeared allowed. This prevents infinite loops
of recurring board states and forces the game forward.
Removing stones
A stone with no access to a free intersection is removed. Access to a free intersection is defined
as either having a free intersection adjacent, or being adjacent to another stone of the same color
that has access to a free intersection. Adjacent in this context does not include diagonals, only
straight angles (left,right,above,below).
Score
Score is calculated as follows:
- Each stone equals one point.
- A free intersection connected by other free intersections to stones of only one color
is worth one point for the player that has surrounded it.
Application usage
Connecting
When starting the game, it will connect to my MUSCLE server, eiman.mine.nu:2960. Before the game
is connected, the inputs in the main window will be disabled. If the server is down, they will not be enabled and you should send me an email so I can fix it.
Starting a game
Enter a name for the game and press "Create game". The game will now open a new Go window
and other players will see the game in their game list.
Joining a game
Select the game you want to join and press "Join game".
There are, hopefully, always a number of AI games available so you always have someone
to play against. If there isn't, and no such games show up in a little while (they could be busy
playing againt someone else..), please send me an email at mikael@eiman.tv and I'll see what's up.
Suggesting a move for the opponent
If you're feeling helpful, you can right-click any intersection to mark it with a blue circle. This can
be used to suggest a move for your opponent, for example.
Author
Mikael Eiman. Please email comments, requests and bug reports to
mikael@eiman.tv.
External code
- This game uses the MUSCLE library for it's networking needs. Very handy, easy to use and great all-round. Thanks!
- The AI is a thin MUSCLE layer applied to the GNU Go AI. If you'd like the code for the AI client (darn messy and a pain to compile, so I didn't include it with the other code), send me an email! Thus my GNU obligations have been fulfilled.
Changes and download
Version 0.1:
* Initial version