Project Proposal by Martin Stacey


Interface for playing a strategy board game

Software

Java or C++ or Smalltalk or another object oriented or functional language with good GUI facilities

Covers

GUI building, HCI

Skills Required

Programming, some interest in HCI, understanding draughts or other game

Challenge

Conceptual ? Technical ??? Programming ???

Brief Description

Programs for playing games by computer (either against a program or against a human opponent somewhere else) benefit from good interfaces.

Your challenge is to develop a good graphical user interface for draughts or another board game. The system should be able to act as an interface to a game playing program or a program to support two human players playing over the net. It should support the making of moves both by direct manipulation and by by typing on the keyboard. Features it might include are replays of the last N moves, indications of all the possible moves, and indications of possible sequences of moves.

For any game, the success of the game mechanics part of the project will depend most of all on coming up with a good way to represent game states and moves. This is easy for Othello, a bit harder for draughts, and more challenging (but doable, if you're clever) for Chinese Chequers.

Extension

A system for playing the game against another player using a different computer. This would get you into a challenging network programming project. This might work best if the players could each run their interfaces in a web browser.

A program to play the game would be a different project.


Back to