G2F3 (Generic Game Framework in eiFFel) aims to simplify the development of two player zero sum strategy games by separating game specific code from reusable generic code. So far, abstract board games are best supported. This software is written using GNU SmartEiffel. The package comes with six example games.
|Tags||Games/Entertainment Turn Based Strategy Software Development Libraries Application Frameworks|
|Implementation||C Eiffel C++|
Release Notes: Mark Steere's abstract strategy game Tanbo has been added to the examples. Some of the board games can now be compiled for different board sizes. Three bugs have been fixed: one that caused weak computer moves in "Breakthgrough" and two memory related bugs. Several improvements and additions to the core code were made. This release requires a recent development snapshot of SmartEiffel-2.2.
Release Notes: The computer opponents in the Breakthrough game play much more strongly. The implementation of heuristic move ordering (history table) has been cleaned up with the result of some API simplifications. General code cleanups, minor bugfixes, and some adaptions to SmartEiffel-2.2-beta have taken place.
Release Notes: The Node Explorer now works again. This is a useful tool with a GTK interface that allows the developer to easily test the code for move generation, move application, and node evaluation. Minor bugfixes, code cleanups, and documentation updates were made.
Release Notes: GTK-2 is now supported as the GUI toolkit. FLTK is still supported, but the GTK GUIs look much better. Better animation of movement and various fixes and improvements have been made. The documentation was updated and the structure of the source directory was reorganized. SmartEiffel-2.1 should now be used to compile the sample games.
Release Notes: The game tree search algorithms can now exploit History Heuristics (improved move ordering) as described by Jonathan Schaeffer. The evaluation function for the Breakthrough game has been refined (the computer is gradually playing intelligently). There have been documentation updates.