Boxes
Dots and Boxes is a classic old-school pencil and paper game where the
goal is to complete more boxes than your opponent.
Note this is old, buggy and incomplete. Email me if you're interested
in any of this.
- Referee program.
- Sample player.
- Interface.
Installation
- Select which GTK you have (or none at all).
- Select curses.
- known successes: debian i386-linux (all).
- known problems: sparc-solaris (curses).
Then hopefully it's just a case of:
%make
External players
FIXME: columns are lower case letters.
The file format used to communicate with external player programs is
as follows:
- The first line is a pair of integers representing the width and
height of the game board (in boxes).
- The second line is a pair of integers denoting the current
scores of the player to go next and the other player, respectively.
- The following lines indicate moves already made in the game, in
an undefined order.
An FIXME example is available.
The program should print a move (as specified above) to it's standard
output.
To Do
- limits of board are 12 and 50, so interface-console works.
- figure out a simple autoconf / automake setup that detects if
curses / GTK x is present.
- when interface.c is regenerated, nix reference to config.h and
support.h
- write a minimax player in Haskell (cf dabble).
- fix GTK2 interface.
- curses bug: stderr/stdout (?) output in scrambled
order. strategic flushing required...
- GTK: setup board option, about window.
- GTK: undo/redo: who gets a go after the undo?
- RXVT bug: the bold attribute doesn't work for the
ACS_HLINE character (works under xterm).
- GTK: this interface must be invoked with "human" as the first
player. TODO: get it working with various player combinations.
- add intermediate and expert players
- hack or drop the haskell players
- get program v program working
- fixup setup board - who goes next?
- adopt dabble-style input files
- expand this README
- test curses/gtk on more platforms (alpha, sparc)
- merge andrewt's mod's
- straighten out array indices.
- GNU-ify things
- automake?
- test "make install"
- tweak install instructions
References
Legal
Boxes is licenced under the GPL, with explicit permission
granted to link against the libraries it requires (viz a potentially
proprietary CURSES implementation). Some code was stolen lock-stock from
the GNU
Classpath project. Be kind to it.
Boxes.
Copyright (C) 2002 Peter Gammie (peteg at unsw dot edu dot au)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
« back
Peter Gammie
Last modified: Tue Feb 10 23:21:05 CET 2004