The package will be written mainly in Java and there will be different kind of game-styles.
A GUI Application and a Terminal ASCII version will provide support for networked games and local games vs booth AI-players and other human players. An Applet version will finally be created to allow local games (including AI-players) to be played in a web-browser. Support for a "server only" application will exist so that the applet can also use networking if someone are willing to provide a server.
Open source means that Tick-Tack-Toe-3D is FREE an that the source-code is available to anyone who wants it. But more on that on SourceForge.
One interesting aspect of this package for the OpenSource community is to develop good AI-players. Since the basic Look-A-Head increases exponentially with aprox: 64^(level) this is a far from trivial task. The package will therefore allow and encourage people to try to write there own AI-players. To maximize the potential of the AI-player there will be an interface towards a pre-compiled AI-player allowing the AI to be written in C/C++ or any other language.
Tick-Tack-Toe-3D is getting close to a beta release. Current features are include in the GUI application. No actuall work will probably be done on the applet or the text version before the beta release of the application.
- Local "Human vs Human" games works perfect(!).
- Networked "Human vs Human" games works fairly well, timeout handling could be imporved tough.
- Three built in AI players available, one is VERY slow and rather useless.
If you have a java capable browser you can try out the applet here. The applet is currently out-dated but it shows some of the capabilities. Note that the applet will probably NOT work with Netscapes built in java interpreter. However if you download the plugin from sun it should work.
Known bugs and limitations
Below are listed some of the most obvious bugs and limitations. They are marked with 1-5 depending on how difficult they are. This is a rough estimate of how likely they are to be to fixed.
- (4) Errors and other messages are not handled in a satisfactory manner.
- (2) Windows are "un-closable" on most systems.
- (5) There is a problem with the implementation of java.awt.TextField on MacOS X that cause it to behave badly.