Up: 3 Programs Left: 3.5 Pythagorus' Haven

# 3.6 Go4it

Go is a strategy game from the orient. The rules to play are very simple yet it turns out to be a very difficult game. The game it traditionally played on a board of squares but the rules of the game do not specifically deal with the geometry of the board so there is no problem with playing Go on a board with different geometry. The program "go4it" displays the boards of some new Go variants and allows the users to play on them.

These new boards are three and four dimensional (euclidean geometry) so it is very important to be able to get lots of different views of the board to know what is going on in the game. One of the goals of this project is to promote higher dimensional thinking by providing lots of problems in higher dimensions.

The designs of the new boards try to keep the game as close to the original as possible. The essentials kept were:
• there are as few corners as possible
• each vertex or place has at most 4 nieghbours
• locally (at each vertex) the geometry is the same except or course near the edges--for instance in the original a vertex has neighbours above and below, to the right and left of it

As the dimension of the board goes up in a certain sense the game should be easier since there are more symetries to be exploited than in the 2 dimensional board. So the player who understands the board the best should have a great advantage in the game.

The board descriptions:

### the normal board

• a square structure like graph paper
• has 4 corners
• board sizes of 4,9,16,25,36,49,64,81,100... vertices (in practice only 36=6x6,81=9x9,121=11x11,169=13x13, and 361=19x19 are played with the small boards used for beginners)

### my boards (the pictures are a bit dated)

board 1 (picture of 26 vertex board)
• 3D
• a tetrahedral structure like the molecular structure of a diamond
• has 6 corners--vertices with only 2 nieghbours
• board sizes of 26, 68, 140, 250... vertices
board 2 (picture of 21 vertex board)
• 3D
• a cross structure (locally looks like a cross)
• has 8 corners
• board sizes of 21, 91, 251, 537... vertices
board 3 (picture of 22 vertex board)
• 4D
• a hypertetrahedral structure -- analogue of tetrahedral structure
• has 10 corners
• board sizes of 22, 113, 368, 919... vertices
board 4 (picture of 45 vertex board)
• 4D
• a hypercross structure --analogue of cross structure
• has 16 corners
• boards sizes of 45,321,1029,3289... vertices

Right now I find the most playable board is the tetrahedral board. The four dimensional boards are very confusing because of the huge number of lines on the screen. In a later version I'll have to work on the interface to hide some of the information to make it possibly to focus on one thing at a time. (the hypertetrahedral board that is left with right angles also is playable at the second level).

You can look at the program and hopefully try out a couple of the boards. It's not well documented but it works! go.tar.gz (10.5 K -- Aug 8 version) contains everything you need unless of course it doesn't compile on your machine. (Of course you must gunzip go.tar.gz then tar xvf go.tar and then make). It's written in C with XLIB and it has perspective, depth cueing, and a reasonable interface. It uses a Pixmap so it is pretty smooth unless you're on a 486SL 25 running linux. If anyone wants to cannibalize the code for other projects I don't mind at all. The only thing that has changed from the previous version is that it is not such a CPU hog. I may work on a better interface since I understand the XEvent stuff better... Colour is nice but a 3 button mouse is a must unless you want to rewrite the interface!

 home Contents