GGTL is a library designed to make it easier to program games in C. It provides an AI that is able to play most 2 player strategic games. Nim, Tic-Tac-Toe, Reversi (aka Othello), Connect-4, and Chess are all examples of games that can all be implemented using GGTL.
| Tags | Scientific/Engineering Artificial Intelligence Games/Entertainment Turn Based Strategy Software Development Libraries |
|---|---|
| Licenses | GPL |
| Operating Systems | OS Independent |
| Implementation | C |
Recent releases


Changes: "clock()" is used as a fallback for sub-second timing if "gettimeofday()" is not found. An internal typedef was dropped, and a header declaration for a function that didn't exist was removed. Some build system refactoring was done.


Changes: The horrible new getter/setter interface introduced in 2.1.2 has been removed. There are explicit ggtl_set_float() and ggtl_get_float() functions instead now.


Changes: Allows sub-millisecond precision for iterative searches. Deprecates the MSEC option in favour of the new TIME option; this takes a double-precision value in seconds, allowing for sub-millisecond precision when doing iterative searches. Introduces new ggtl_getval() and ggtl_setval() functions capable of setting/getting double-precision values.


Changes: Documentation and build improvements are the core features of this release. Recursive make is no more, and a new tutorial has been added (ggtltut), showing how to create a simple Tic-Tac-Toe game.


Changes: You no longer need to make a copy of each state for games where a move can reliably be undone in place. Support for a clone_state() callback to simplify the semantics of the move() callback. More flexible caching functions and reuse of container nodes. Some documentation improvements.
- All comments
Recent commentsG2F3, a related project in Eiffel
I recently was made aware of G2F3 (http://freshmeat.net/projects/g2f3/), a project related to GGTL implemented in Eiffel.
Re: Debian packages available
Ok, I've added a Debian link to your branch. Please do this yourself in
the future.
Thanks,
Jeff
Debian packages available
There are now Debian packages available. http://brautaset.org/projects/ (http://brautaset.org/projects/) has the details.
Along the same lines...
I recently discovered gtkboard (http://freshmeat.net/projects/gtkboard), a project that also implements game-tree search. I've only looked briefly at it, but it seems very interesting. It takes a different approach than GGTL in that instead of programmers calling GGTL functions from their game, games using gtkboard are implemented as modules that are called from the main program.
Feedback request
This software is my BSc project. It would be very helpful for me when writing up my report to know what people think about it. Comments from people who have tried it would be of particular interest, but all feedback welcome. Email to fb@brautaset.org if you don't want to post here.