SYNOPSIS

xbomb [-hexagon|-square|-triangle] [-1|-2|-3] [-hiscore]

OPTIONS

-hiscore

command line option displays the current hi-score table without starting the game.

-hexagon|-square|-triangle

Selects the type of grid to use when starting the game.

-1|-2|-3

Selects the level to use when starting the game.

The standard X window options also apply to this program.

DESCRIPTION

A game of logical deduction against the clock. The purpose of the game is to find the location of the hidden bombs in a grid. Each of the locations in the grid is initially covered, by uncovering a locations, a number or a bomb will be revealed underneath. If a bomb is revealed then the game is finished. A number indicates the number of adjacent locations that contain bombs. Locations that have not been uncovered but are thought to contain bombs can be marked as such so that they can be identified.

There is a choice of hexagonal, square or triangular units that make up the grid, the level of difficulty increasing as the number of sides decreases. In all cases the grids are of the same size and contain the same number of bombs for the same levels.

There are three levels to the game:

Easy

8 by 8 grid with 10 bombs.

Medium

16 by 16 grid with 40 bombs.

Difficult

30 by 16 grid with 99 bombs.

A high score table is maintained for each of the levels for each of the grid types, storing the username, the time to complete the puzzle and the date that it was finished.

MOUSE OPERATION

The game is played with the mouse, with all three buttons having different actions.

LeftButton

Uncover the current location if it is hidden or uncover all surrounding locations marked as not containing bombs if the square is already uncovered. The first selection made in a game is always a 'safe' square.

MiddleButton

Uncover all surrounding locations that are not marked as containing a bomb.

RightButton

Mark the current grid location as having a hidden bomb (toggle).

KEYSTROKES

There are a number of keystroke shortcuts for the game:

123

Select level 1, 2 or 3 for the next game.

s

Start a new game.

q

Quit the program.

h

Print the high-scores.

HorControl-H

Use the grid of hexagons for the next game.

SorControl-S

Use the grid of squares for the next game.

TorControl-T

Use the grid of triangles for the next game.

X RESOURCES

The name of the class used is XBomb, the widget hierarchy used is (Widget-Class:name):

XBomb Form:form Command:start MenuButton:menu SimpleMenu:levelmenushell smeBSBObject:Easy smeBSBObject:Medium smeBSBObject:Difficult MenuButton:menu SimpleMenu:typemenushell smeBSBObject:Hexagon smeBSBObject:Square smeBSBObject:Triangle Command:hiscore Command:quit Core:grid Command:clock Command:uxb

The extra resources that are available for the grid are:

grid.bomb

The colour of the bombs - default black.

grid.bombreal

The colour of the real bombs - default red.

grid.bombmark

The colour of the bombs that are marked by the user - default orange.

grid.number

The colour of the number '1' when drawn in the grid - default navy blue.

grid.number2

The colour of the number '2' when drawn in the grid - default dark green.

grid.number3

The colour of the number '3' when drawn in the grid - default dark red. The other numbers up to 12 also have their own resources.

grid.hidden

The colour of the hidden squares - default grey50.

grid.correct

The colour of the squares that were correctly guessed - default green

grid.font

The font that is used for the number in the grid - default lucidasans-24

BUGS

None known.

AUTHOR

Andrew M. Bishop.