Up: 3 Programs | ||
Left: 3.5 Pythagorus' Haven |
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: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: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 |