XOCT(6)
NAME
xoct - Octahedron X widget
SYNOPSIS
/usr/games/xoct [-geometry
[{width}][x{height}][{+-}{xoff}[{+-}{yoff}]]] [-display
[{host}]:[{vs}]] [-mono] [-{foreground|fg} <color>]
[-{background|bg} <color>] [-{border|bd} <color>]
[-face{0|1|2|3|4|5|6|7} <color>] [-{size <int> | sticky}]
[-{mode <int> | both}] [-[no]orient] [-[no]practice]
[-username {string}]
DESCRIPTION
The original puzzle has 9 triangles per face (size = 3)
and has period 4 turning (i.e. the face or points turn
with 90 degree intervals). The puzzle was designed by Uwe
Meffert and called the Magic Octahedron (or Star Puzzler).
The puzzle was not widely distributed but not exactly
rare. This puzzle has some analogies to the Rubik's Cube
and the solving techniques are the same to that of the
Pyraminx. Christoph's Magic Jewel is similar except there
are no trivial corners to solve. This has 2^22*12! or
2,009,078,326,886,400 different combinations.
Uwe Meffert also noticed that there could be an alternate
twisting for the octahedron where it has period 3 turning
(i.e. faces turn with 120 degree intervals).
One is able to simulate a Trajber's Octahedron (period 3
turning and sticky mode). Also one is able to simulate
one with variant turning (period 4 turning and sticky
mode).
FEATURES
Press "mouse-left" button to move a piece. Release
"mouse-left" button on a piece on the same face and in the
same row (but not an adjacent piece or the move is ambigu-
ous). The pieces will then turn towards where the mouse
button was released.
Press "mouse-center", or press "P" or "p" keys to toggle
the practice mode (in practice mode the record should say
"practice"). One must double click on "mouse-center" if
the puzzle is being worked on. This is good for learning
moves and experimenting.
Click "mouse-right", or press "R" or "r" keys to randomize
(this must be done first to set a new record). One must
double click on "mouse-right" if the puzzle is being
worked on.
Press "I" or "i" keys to increase the number of "octas".
Press "D" or "d" keys to decrease the number of "octas".
Press "O" or "o" keys to toggle the orient mode. One has
to orient the faces in orient mode, besides getting all
the faces to be the same color. To do this one has to get
the lines to be oriented in the same direction, this only
matters with center "octas", if at all (i.e. those
"octas" not on a corner or edge). This does add complex-
ity so there are 2 sets of records.
Press "3", "4", "B", or "b" keys (not the keypad 3, 4) to
change modes to Period 3, Period 4, or Both.
Press "Y" or "y" to toggle sticky mode (increase/decrease
is disabled here if sticky mode is on).
"Sticky" and "Period 3" turning allows only the faces to
turn. It is as if the middle cut of the three cuts did
not exist.
"Sticky" and "Period 4" turning allows only the points to
turn, it is as if the middle cut of the three cuts did not
exist.
Beware, the "Sticky" mode is a hack and much could be done
to improve its look.
"S" or "s" keys reserved for the auto-solver (unimple-
mented).
Press "U" or "u" keys to undo move.
Press "G" or "g" keys to get a saved puzzle.
Press "W" or "w" keys to write or save a puzzle.
Press "Q", "q", or "CTRL-C" keys to kill program.
Use the key pad, "R" keys, or arrow keys to move without
mouse clicks.
Key pad is defined for Pyraminx as:
/ Counterclockwise
7 8 9 Upper Left, Up, Upper Right
^
4<5>6 Left, Clockwise, Right
v
1 2 3 Lower Left, Down, Lower Right
Use the shift keys to access "Period 4" turns from "Both"
mode, otherwise it assumes "Period 3" turning. Points
turn in "Period 4" and faces turn in "Period 3".
Use the control key and the left mouse button, keypad, or
arrow keys to move the whole octahedron. This is not
recorded as a turn.
The title is in the following format (non-motif version):
xoct.{3|4|both<turning modes>}:
{1|2|3|4|5|6|sticky<number of "octas" per edge>} @
(<Number of moves>/{<Record number of moves> <user-
name>|"NEVER noaccess"|"practice"}) - <Comment>
If there is no record of the current puzzle, it displays
"NEVER noaccess".
OPTIONS
-geometry {+|-}X{+|-}Y
This option sets the initial position of the octa-
hedron window (resource name "geometry").
-display host:dpy
This option specifies the X server to contact.
-mono This option allows you to access the mono mode on
a color monitor (resource name "mono").
-{foreground|fg} color
This option specifies the foreground of the octa-
hedron window (resource name "foreground").
-{background|bg} color
This option specifies the background of the octa-
hedron window (resource name "background").
-{border|bd} color
This option specifies the border color of the
octas in the octhahedoron window (resource name
"borderColor").
-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 faces are ordered top to bottom
and left to right. If you has two colors that
begin with the same letter you should have one in
uppercase and one in lowercase to distinguish them
in mono-mode. You can change the colors of the
faces to make a stupid octahedron (i.e. all White
or in mono-mode all "W"). Unfortunately, it will
not normally say its solved when its randomized.
This would be cheating.
-size <<int>>
This option allows you to change the number of
octas on a edge (resource name "size").
-sticky This option allows you to set the sticky mode
(resource name "sticky").
-mode <<int>>
This option allows you to set the turning mode
(resource name "mode").
-both This option allows you to set the turning mode to
both period 3 and period 4 (resource name "mode"
set at 5).
-[no]orient
This option allows you to access the orient mode
(resource name "orient").
-[no]practice
This option allows you to access the practice mode
(resource name "practice"). -username string This
option specifies the user name for any records
made or else it will get your login name (resource
name "userName").
SAVE FORMAT
The format is not standard. The reason for this is that
this is simple and I do not know what the standard is.
Octahedron with default colors, not randomized:
0 R Red
3 1 M B Magenta, Blue
2 W White
4 O Orange
7 5 Y P Yellow, Pink
6 G Green
size: 1-6 <number of triangles in the same orienta-
tion as the face per row>
mode: 3-5 <period 3 turning, period 4 turning, or
both (5)>
orient: 0-1 <0 false, 1 true; if 1 then lines on
"octas" to be oriented>
sticky: 0-1 <0 false, 1 true; if 1 then some
"octas" move together>
practice: 0-1 <0 false, 1 true>
moves: 0-MAXINT <total number of moves>
startingPosition: <2 dimensional array of face
"octa" position, each face has size * size "octas",
if orient mode then orientation number follows face
number numbered clockwise from 0 to 11, where 0 is
up>
This is then followed by the moves, starting from 1.
move #: <face> <position> <direction> <control>
Each turn is with respect to a face and position.
Position is 0 to size * size - 1. Position 0 is the tri-
angle furthest from the center, increasing clockwise.
Direction is represented as 0 up, 1 upper right, 2 right,
3 lower right, 4 down, 5 lower left, 6 left, 7 upper left,
9 clockwise, and 15 counterclockwise.
Control is represented as 0 or 1, 1 if the whole octahe-
dron is moved at once (here position does not matter), 0
if not. The xoct record keeper does not count a control
move as a move, but here we do.
Caution: the program may crash on corrupted input.
REFERENCES
Beyond Rubik's Cube: spheres, pyramids, dodecahedrons and
God knows what else by Douglas R. Hofstadter, Scientific
American, July 1982, pp 16-31.
Magic Cubes 1996 Catalog of Dr. Christoph Bandelow.
SEE ALSO
X(1) xrubik(6) xskewb(6) xdino(6) xpyraminx(6)
xmball(6) xmlink(6) xpanex(6) xcubes(6) xtriangles(6)
xhexagons(6) xabacus(1)
COPYRIGHTS
(R) Copyright 1994-97, David Albert Bagley
BUG REPORTS AND PROGRAM UPDATES
Send bugs (or their reports, or fixes) to the author
David Albert Bagley, lt;bagleyd@bigfoot.com
The most updated source could be found on ftp.x.org under
/contrib/games/puzzles.