The History Game: Game Building Tool

Project Proposal by Martin Stacey


The History Game: Game Building Tool

Software

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

Covers

Development of special purpose programming environments, interpreters for rule-based languages, some GUI building

Skills Required

Programming, some interest in gaming

Challenge

Conceptual ???? Technical ?? Programming ????

Brief Description

The History Game (idea borrowed from Civilization™): You are a leader of a nomadic tribe at the dawn of history. Your mission is to guide your people to greatness, as your society grows, develops and meets other competing tribes in trade and war. You have to respond to famines, epidemics, climate changes, invasions and technological developments in your quest to achieve ultimate world domination….

The world's tribes develop and interact in different ways though time. A large part of the game is executing sets of rules for development over time, interactions between societies, and responding to random events. Programming and modifying these rules is a fascinating but complex and time-consuming job; it is an incremental task, first for building a first usable version of the game and then exploring variations.

The objective of the project is to develop a shell for the execution of rules governing the development of history according to the decisions of the players (human and machine) and the random geographical and social events they have to deal with, along with a user-friendly interactive game development tool for specifying the different sorts of rules that the shell needs to run. The design decisions involved in the project include considering what types of rules the History Game requires, working out what common structures they have, and designing effective ways to program each type of rule. The project should include a demonstration of the effectiveness of the game shell and the game building tool, but need not include a full-scale game implementation.


Back to