Missing link x widget
/usr/games/xmlink [-geometry [{width}][x{height}][{+-}{xoff}[{+-}{yoff}]]] [-display [{host}]:[{vs}]] [-[no]mono] [-[no]{reverse|rv}] [-{foreground|fg} {color}] [-{background|bg} {color}] [-tile {color}] [-face{0|1|2|3|4|5|6|7} {color}] [-{border|bd} {color}] [-[no]install] [-picture {filename}] [-delay msecs] [-[no]sound] [-bumpSound {filename}] [-moveSound {filename}] [-{font|fn} {fontname}] [-tiles {int}] [-faces {int}] [-[no]orient] [-[no]middle] [-base {int}] [-userName {string}] [-scoreFile {filename}] [-scores] [-version]
Ideal's The Missing Link, a 4x4 puzzle, riding on the wave of Rubik's Cube craze. There are many variations on this theme, including the "6x6" puzzle and Babylon Tower. What makes the Missing Link a harder puzzle to solve is that the 2 center positions rotate together.
Press "mouse-left" button to move a tile. Release "mouse-left" button in the same row would move the tile towards the space (unless there is no space in that row). Release on a different row will move the tiles up or down.
Click "mouse-right", or press "Z" or "z" keys, to randomize the puzzle (this must be done first to set a new record).
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 "C" or "c" keys to clear the puzzle.
"S" or "s" keys to start the auto-solver. Only works on mxn where m = 4 and n = 4.
Press "O" or "o" keys to toggle the orient mode. Slightly more challenging on (default is off).
Press "M" or "m" keys to toggle the middle mode. All the middle tiles rotate together. This is considerably more challenging on (default is on).
Press ">" or "." keys to speed up the movement of tiles.
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 Missing Link as:
8 Up
^
4< >6 Left, Right
v
2 Down
Use the shift key and the up or down arrow keys to rotate all the tiles.
Use the control key and the keypad or arrow keys to reduce or enlarge the complexity of the puzzle.
The title is in the following format (non-motif version):
xmlink: <row>x<column> {norm|ind<control of movement of middle tiles>} @ (<Number of moves>/{<Record number of moves> <user name>|"NEVER noaccess"|"practice"}) - <Comment>
Movement of middle tiles are either move together or independent.
If there is no record of the current puzzle, it displays "NEVER noaccess".
-geometry {+|-}X{+|-}Y
This option sets the initial position of the missing link window (resource name "geometry").
-display host:dpy
This option specifies the X server to contact.
-[no]mono
This option allows you to display the missing link window on a color screen as if it were monochrome (resource name "mono").
-[no]{reverse|rv}
This option allows you to see the missing link window in reverse video (resource name "reverseVideo").
-{foreground|fg} color
This option specifies the foreground of the missing link window (resource name "foreground").
-{background|bg} color
This option specifies the background of the missing link window (resource name "background").
-tile color
This option specifies the tile color of the tiles in the missing link window (resource name "tileColor").
-face{0|1|2|3|4|5|6|7} <color>
This option allows you to change the color of a face (resource name "faceColorN"). In mono-mode, color is represented as the first letter of the color name. The 0th face is the last face face on missing link because I wanted that one to remain white by default when there are more or less faces.
-{border|bd} color
This option specifies the border color of the tiles in the missing link window (resource name "orderColor").
-[no]install
This option specifies if the colormap should be installed or not (resource name "install").
-picture filename
This option specifies the file for the picture (resource name "picture").
-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 sliding of (resource name "bumpSound").
-moveSound filename
This option specifies the file for the move sound for the twisting of the puzzle (resource name "moveSound").
-{font|fn} fontname
This option specifies the font that will be used (resource name "font").
-tiles <int>
This option allows you to change the number of links in a row (resource name "tiles").
-faces <int>
This option allows you to change the number of faces in column (resource name "faces").
-[no]orient
This option allows you to access the orient mode (resource name "orient").
-[no]middle
This option allows you to access the middle mode (resource name "middle").
-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 xmlink you have.
You must randomize the puzzle before a record is set, otherwise an assumption of cheating is made if it is solved after a get.
Here is the format for the xmlink configuration, starting position, and the movement of its pieces.
tiles: 1-8 <number of tiles in a row>
faces: 1-8 <number of tiles in a column>
middle: 0-1 <0 false, 1 true; if 1 then middle moves as one unit>
orient: 0-1 <0 false, 1 true; if 1 then chain linked in order>
moves: 0-MAXINT <total number of moves>
startingPosition: <array of tile positions where 0 is the empty space>
This is then followed by the moves, starting from 1.
move #: <direction> <tile> <shift>
Direction is represented as 0 up, 1 right, 2 down, and 3 left.
Tile is the column of tile.
Shift is represented as 0 or 1, 1 if the whole puzzle is moved at once (here Tile does not matter), 0 if not. The xmlink record keeper does not count a control move as a move, but here we do.
L. E. Horden, Sliding Piece Puzzles (Recreations in Mathematics Series), Oxford University Press 1986, Plate X.
you are about to find the solution: The Missing Link, Ideal Toy Corporation, 1981.
James G Nourse, The Simple Solutions to Cubic Puzzles, Bantam Books, New York, November 1981, pp 16-23.
\*R Copyright 1994-2009, David A. Bagley
Send bugs (or their reports, or fixes) to the author:
David A. Bagley, <[email protected]>
The latest version is currently at:
http://www.tux.org/~bagleyd/puzzles.html
ftp://ibiblio.org/pub/Linux/games/strategy