These are our instructions
as we train in the finer points of Dark Reign, a sophisticated computer
game developed by a Brisbane-based company, Auran,
and one which has reached platinum status. A game of this magnitude requires
some very clever programming which was carried out by three University of
Queensland graduates, Matthew Versluys, Carl Chimes and Andrew Payne. But
Matthew informs us that they also made extensive use of mathematics including
vector geometry, algebra, heuristics, a small amount of statistics, and
a large amount of logic.
We thought it would
be fun to focus here on a small element of the game and talk about the underlying
maths.
Imagine we are playing
Dark Reign and our mission objective is to destroy a Training Facility.
We will attack with Cyborg Infantry, (carrying massive shoulder mounted
rail guns), Tachyon Tanks (large heavily armed tanks carrying powerful tachyon
cannons) and a sky Fortress (a floating platform, carrying plasma cannons).
As we attack, the computer
must keep a record of our hits and decide when the Training Facility is
destroyed. To accomplish this the Training Facility is assigned a health
status that is reduced by each hit. For example, the Training Facility’s
health status might be 30 units, with a Cyborg reducing it by 5 units, a
Tachyon Tank reducing it by 10 units and a Sky Fortress by 15 units. The
computer keeps a record of the Training Facility’s current state of health
and updates this when a direct hit occurs. Mathematically, we must model
all attacks that lead to a bombardment of 30 units and thus annihilation.

The picture with 30
units represents the initial state (Health of 30 units) and the picture
without the people represents the accepting state (Health 0 unit, facility
destroyed). The other pictures show intermediate states. Arrows indicate
the outcome of a particular input (a hit by a particular fighter).
We use the diagram to
construct an association scheme, or a mapping. The current state Si is linked
with the current input Ij and associated with the next state Sk Mathematically
we write this as a function:

For instance, if the
current Health State is down to 25 units, and a Tachyon Tank hits it, the
health status is reduced by 10 to the next state of 15 units. In terms of
a mapping:
This information
is then summarised in the following annotated next
state table: