# xhexagons

## SYNOPSIS

           /usr/games/xhexagons                                         [-geometry
           [{width}][x{height}][{+-}{xoff}[{+-}{yoff}]]]                 [-display
           [{host}]:[{vs}]]   [-[no]mono]   [-[no]{reverse|rv}]  [-{foreground|fg}
           {color}] [-{background|bg} {color}]  [-tile  {color}]  [-text  {color}]
           [-delay  msecs] [-[no]sound] [-bumpSound {filename}] [-{font|fn} {font-
           name}]  [-size{x|y}  {int}]  [-[no]corners]  [-base  {int}]  [-userName
           {string}] [-scoreFile {filename}] [-scores] [-version]

## DESCRIPTION

           A  sliding  tile puzzle.  A hexagonal version of the 15 puzzle.  The 17
           puzzle was conceived of by Alwin Vietor and marketed in 1885 in Germany
           as  "Trilemma"  with  round  pieces.  Sam Cornwell rediscovered this in
           1989 with "Clockblocks" of  which  12  were  numbered  using  hexagonal
           pieces.   Also  he  produced a smaller 12 block puzzle with 9 that were
           numbered called "Ninefield".  Also Bernhard Wiezorke came up  with  the
           similar  17  puzzle,  "Hexafax,  the New Fifteen Puzzle", in 1991 and a
           smaller 11 piece "Counterfax" of which 8 were numbered.

## FEATURES

           If in corners mode: Press "mouse-left" button  to  move  a  tile,  then
           release  "mouse-left"  button on a space.  It will not move if blocked.
           One can only move one tile at a time. The only tiles that can be  moved
           are the tile(s) next to both spaces.
           If  in  nocorners  mode: Click "mouse-left" button to move a tile.  One
           can move more than one tile at a time and one  is  not  constrained  by
           parity.

           Click "mouse-right" button, or press "C" or "c" keys, to clear the puz-
           zle.

           Press "R" or "r" keys to read a saved puzzle.

           Press "W" or "w" keys to save (write) a puzzle.

           Press "U" or "u" keys to undo a move.

           Press "E" or "e" keys to redo a move.

           Press "Z" or "z" keys to randomize the puzzle.  New records can only be
           set from a cleared state.

           "S" or "s" keys reserved for the auto-solver (not implemented).

           Press "O" or "o" keys to toggle corners mode.  (Default is on).

           Press "<" or "," keys to slow down the movement of tiles.

           Press "@" key to toggle the sound.

           Press "Esc" key to hide program.

           Press "Q", "q", or "CTRL-C" keys to kill program.

           Use the key pad or arrow keys to move without the mouse.
           Key pad is defined for Hexagons as:
           7   9   Upper Left, Upper Right

             ^

           4< >6   Left, Right

             v

           1   3   Lower Left, Lower Right

           The control key allows you to change the complexity of xhexagons.  Hold
           down control key and use the keypad or arrow keys to reduce or  enlarge
           puzzle complexity.

           The title is in the following format (non-motif version):
                  xhexagons: <size> @ (<Number of moves>/{<Record number of moves>
                  <user name>|"NEVER noaccess"}) - <Comment>
           If there is no record of the current puzzle, it displays  "NEVER  noac-
           cess".

## OPTIONS

           -geometry {+|-}X{+|-}Y
                   This  option  sets  the initial position of the hexagons window
                   (resource name "geometry").

           -display host:dpy
                   This option specifies the X server to contact.

           -[no]mono
                   This option allows you to display  the  hexagons  window  on  a
                   color screen as if it were monochrome (resource name "mono").

           -[no]{reverse|rv}
                   This  option  allows  you to see the hexagons window in reverse
                   video (resource name "reverseVideo").

           -{foreground|fg} color
                   This option specifies the foreground  of  the  hexagons  window
                   (resource name "foreground").

           -{background|bg} color
                   This  option  specifies  the  background of the hexagons window
                   (resource name "background").

           -tile color
                   This option specifies the  tile  color  of  the  tiles  in  the
                   hexagons window (resource name "tileColor").

           -text color
                   This  option  specifies  the  text  color  of  the tiles in the
                   hexagons window (resource name "textColor").  -delay msecs This
                   option  specifies the number of milliseconds it takes to move a
                   tile or a group  of  tiles  one  space  (1-50)  (resource  name
                   "delay").

           -[no]sound
                   This  option specifies if a sliding tile should make a sound or
                   not (resource name "sound").

           -bumpSound filename
                   This option specifies the file for the bump sound for the slid-
                   ing of the tiles (resource name "bumpSound").

           -{font|fn} ontname
                   This option specifies the font that will be used (resource name
                   "font").

           -size{x|y} <int>
                   This option allows you to change the number of  hexagons  in  a
                   row or column (resource names "sizeX", "sizeY").

           -corners
                   This  option specifies the mode where movement is very restric-
                   tive (resource name "corners").

           -nocorners
                   This option specifies the mode  where  movement  is  very  easy
                   (resource name
                    "corners").

           -base int
                   This  option  specifies  the  base  used  (default  is base 10)
                   (resource name "base").

           -userName string
                   This option specifies the user name for  any  records  made  or
                   else it will get your login name (resource name "userName").

           -scoreFile filename
                   Specify an alternative score file (resource name "scoreFile").

           -scores This option lists all the recorded scores and then exits.

           -version
                   This option tells you what version of xhexagons you have.

## RECORDS

           You  must  randomize  the  puzzle  before a record is set, otherwise an
           assumption of cheating is made if it is solved after a get.

## SAVE FORMAT

           Here is the format for the xhexagons configuration, starting  position,
           and the movement of its pieces.

                  corners: 0-1 <0 false, 1 true; if 0 then hexagon corners are all
                  snipped>
                  sizeX: 1-10 <number of columns of tiles>
                  sizeY: 1-10 <number of rows of tiles>
                  moves: 0-MAXINT <total number of moves>

                  startingPosition: <array of tile positions where 0 is the  empty
                  space for the HIGH hexagon and -1 is the empty space for the LOW
                  hexagon (if present)>

           This is then followed by the moves, starting from 1.
                  move #: <direction>
           Direction is represented as 0 upper right, 1 right, 2  lower  right,  3
           lower left, 4 left, and 5 upper left.

## REFERENCES

           Dieter  Gebhardt,  "From Trilemma to Counterfax", CFF 53, October 2000,
           pp 8-10.

           Sam Cornwell, "Ninefield: a Sliding Block Puzzle", CFF 57, March  2002,
           pp 4-5.

           Dieter Gebhardt, "Ninefield Revisited", CFF 58, July 2002, p 21.

           Bernhard Wiezorke, "Hexafax, the New Fifteen Puzzle" brochure

## SEE ALSO

           X(1),   xcubes(6),  xtriangles(6),  xmlink(6),  xbarrel(6),  xpanex(6),
           xmball(6), xpyraminx(6), xoct(6), xrubik(6), xskewb(6), xdino(6), xaba-
           cus(6)

## COPYRIGHTS

           (R) Copyright 1994-2010, David A. Bagley

## BUG REPORTS AND PROGRAM UPDATES

           Send bugs (or their reports, or fixes) to the author:
                  David A. Bagley, <bagleyd@tux.org>

           The latest version is currently at:
                  http://www.tux.org/~bagleyd/puzzles.html
                  ftp://ibiblio.org/pub/Linux/games/strategy

    V7.6.4                            22 Oct 2010                      HEXAGONS(6)