Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Available: UNIVERSAL GAMING ENGINE

245 views
Skip to first unread message

JM

unread,
Dec 10, 1998, 3:00:00 AM12/10/98
to
I’d like to announce the immediate availability of a universal board gaming
engine: a Windows program capable of playing Chess, Checkers, Othello, and
other board games from data scripts that define their rules. These scripts
use a LISP-ish grammar and are user-editable text files, so it is possible
to add new games or change existing ones. The language is flexible -- to
date over 300 different game variants and puzzles have been written – and
can also specify all the GUI features. The program supports n-player,
perfect-information games with a variety of goals and any board topology.
Puzzles, such as the 8 Queens problem, may be implemented simply as
one-player games.

History

As part of my research into AI at Cornell University in the 80’s I completed
my first chess computer program, implemented in LISP on a time-share system.
At the same time, I also was working on an engine/parser (Macintosh/Pascal)
that would host any text-adventure style game. This latter project was
finished about 1990 (but never released), while my chess program was
completely rewritten in C on Sun workstations and then ported to Mac and
Windows platforms. After a reasonably good performance at an ACM
computer-chess tournament, I looked for further directions to take my chess
program and, remembering my universal adventure engine, produced a working
universal board game program on the Mac that proved the concept. Then I
spent a year collecting rules to thousands of abstract board games in order
to define a much more robust rules grammar. Using everything I learned I
began a rewrite of the board gaming engine in C++ about three years ago. Two
years ago a fellow computer-chess researcher joined me in the ongoing
programming. The project was recently completed.

How It Works

Rules files let the game author define the board (shape/size/links), the
pieces (how they move), and the object(s) of the game. There are *no* hints
whatsoever encoded as to how to play well. Instead, the program derives an
evaluation function that takes into account how the pieces move and the
board structure. The program uses general game strategy, such as giving a
bonus to the side having more moves (greater mobility). It also looks
carefully at the goals of the game in order to work towards them. To figure
out what moves can be played, the program has a macro-savvy preprocessor and
multi-pass compiler to compile the moving rules into an internal assembly
language. Generating moves is merely a matter of running this compiled code
on a virtual machine (similar to how a Java interpreter works). The program
employs all the typical search techniques found in modern, brute-force,
chess programs: alpha-beta pruning, selectivity, move-ordering,
transposition (hash) tables, etc.

How To Obtain It

CD-ROM copies of this program, Zillions of Games, are available for purchase
from this website:
http://www.zillions-of-games.com
including the implementations of hundreds of game variants. Other features
include Internet/LAN play, game navigation/saving/loading/printing, and
board editing.

Jeff Mallett
December 10, 1998


Christoffer Karlsson

unread,
Dec 16, 1998, 3:00:00 AM12/16/98
to
JM <in...@zillions-of-games.com> wrote:

> I'd like to announce the immediate availability of a universal board gaming
> engine: a Windows program capable of playing Chess, Checkers, Othello, and
> other board games from data scripts that define their rules. These scripts
> use a LISP-ish grammar and are user-editable text files, so it is possible
> to add new games or change existing ones. The language is flexible -- to
> date over 300 different game variants and puzzles have been written – and
> can also specify all the GUI features. The program supports n-player,
> perfect-information games with a variety of goals and any board topology.
> Puzzles, such as the 8 Queens problem, may be implemented simply as
> one-player games.

Sounds very interesting, any chance we might see a Macintosh version in
the future?

--
Christoffer Karlsson
Macintosh Software Developer

JM

unread,
Dec 16, 1998, 3:00:00 AM12/16/98
to
>> I'd like to announce the immediate availability of a universal board
gaming
>> engine: a Windows program capable of playing Chess, Checkers, Othello,
and
>> other board games from data scripts that define their rules. These
scripts
>> use a LISP-ish grammar and are user-editable text files, so it is
possible
>> to add new games or change existing ones. The language is flexible -- to
>> date over 300 different game variants and puzzles have been written – and
>> can also specify all the GUI features. The program supports n-player,
>> perfect-information games with a variety of goals and any board topology.
>> Puzzles, such as the 8 Queens problem, may be implemented simply as
>> one-player games.
>
>Sounds very interesting, any chance we might see a Macintosh version in
>the future?

>


>Christoffer Karlsson
>Macintosh Software Developer

Unfortunately, that depends entirely on sales of the Windows product, as
I've put everything I have into making the Windows version. The original
working prototype was only on the Mac, but the rewrite was intended to be
cross-platform. I used the Cross-Platform Development Edition for Macintosh
to achieve this, which seemed like the ideal code-maintenance solution
...until Microsoft pulled the plug on that product part way through our
development! Microsoft hasn't supported cross-development in the last two
releases of VC++. So, the answer is don't hold your breath for a Mac
version. If Zillions becomes successful, then we'll have the resources to
port it to the Mac, which I would really love to do.

Jeff Mallett
Windows Softwa...er, #3 on the MacTech "Programmers Challenge" All-Time List
----------------------------------------------------------------------------
-----------------
Zillions of Games -- universal gaming engine
http://www.zillions-of-games.com

0 new messages