------------------------------------------------------------------------------

                                   ATOM-4

                                     by
                                 H. S. Teoh

                                  Dec 2002

------------------------------------------------------------------------------


INTRODUCTION

Atom-4 is a 2-player color manipulation game played with spherical pieces on a
board divided into equilateral triangles. The player who first makes a row of
4 pieces of the right color wins.


RULES

Pieces may be placed only on the vertices of the triangular game board
divisions, and only if touching two other pieces which themselves are adjacent
to each other (i.e., it must form an equilateral triangle with two adjacent
pieces already on the board). Theoretically, the board is unlimited in size;
practically, we limit it to 16 vertices across and 16 rows down.

Pieces have 8 different colors in total, grouped into 4 groups:
- black
- red, green, and blue (the primary, or "additive", colors)
- yellow, cyan, and purple (the secondary, or "subtractive", colors)
- white

Black and white are also called "propagators" (explained below).

The first player plays additive colors, and must make a row of 4 whites. White
is the "goal piece" of the first player.  Similarly, the second player plays
subtractive colors, and must make a row of 4 blacks. Black is the "goal piece"
of the second player. 

Since neither player can play their goal pieces directly, they need to combine
the colors they play in order to form their goal pieces on the game board,
indirectly. Whenever an additive or subtractive piece is put on the board, it
changes the color of pieces surrounding it. The color changes are illustrated
by the following color wheel:

		      red   yellow
		         \ /
		 purple --*-- green
		         / \
		     blue   cyan

1) If the neighbouring piece has an adjacent color on the wheel, it does not
  change. For example, if red is placed next to yellow or purple, the yellow
  or purple remains the same.

2) If the neighbouring piece has a color 60 degrees away on the wheel, then
  it changes to the color in between. For example, if red is placed next to
  green, the green turns into a yellow. If a red is placed next to a blue,
  the blue turns purple.

3) If the neighbouring piece has the opposite color on the wheel, then it
  changes to either white or black, depending on what type of color the new
  piece is. If the new piece is an additive piece, the neighbour becomes
  white; if it is a subtractive piece, the neighbour becomes black. For
  example, if a red is placed next to a cyan, the cyan turns white; but if
  a cyan is placed next to the red, the red turns black.

4) If the new piece is additive and the neighbouring piece is black, then the
  black changes to the same color as the new piece. Similarly, if the new
  piece is subtractive and the neighbouring piece is white, then the white
  changes to the same color as the new piece.

5) If the new piece is additive and the neighbouring piece is white, then the
  white does not change, but the color change effect "propagates" through the
  white to the piece behind the white. That piece then changes as though the
  new piece had been placed next to it. If it is also white, then the effect
  continues propagating in the same direction, in a straight line, until it
  reaches a non-white piece, and then changes that non-white piece as though
  the new piece was placed next to it. If an empty spot is reached before a
  non-white piece, then nothing happens. Because of this effect, white pieces
  are also called "additive propagators".

6) Similarly, if the new piece is subtractive and the neighbouring piece is
  black, the color change effect propagates in the direction of the black
  until it reaches a non-black piece, which then changes as though the new
  piece had been placed next to it. Nothing happens if an empty spot is
  reached before a non-black piece. Hence, black pieces are also called
  "subtractive propagators".

(Another way to understand the color changes is treat colors as red, green,
and blue combinations. Additive colors always try to "add" themselves to their
neighbours: red + green = yellow (red & green together); red + cyan (green &
blue) = white. Subtractive colors try to remove their complement color from
their neighbours. For example, the complement of yellow (red & green) is blue;
so yellow tries to remove blue from its neighbours. Hence, when yellow (red &
green) is placed next to cyan (green & blue), the cyan turns green (loses the
blue component). Similarly, when cyan (green & blue) is placed next to white
(red & green & blue), it removes its complement, red, from the white; so the
white becomes cyan as well. In other words, additive colors behave like
colored light, whilst subtractive colors behave like colored paint.)

The initial state of the board consists of two pieces, green and purple, in
the middle of the board, touching each other. The first player then plays a
red, the second player plays a yellow, and then the first player plays a
green, and so on, taking turns, going clockwise around the color wheel. The
first person to make a row of 4 propagators wins.

If the game is played in multiple rounds, the second player may start first on
the second round, using a subtractive piece, and then the first player with
the next color clockwise on the color wheel, and so on. The starting
configuration always consists of two pieces, one 30 degrees counterclockwise
from the starting color on the color wheel, and the other 60 degrees
clockwise; each touching the other in the center of the board.


GAME STRATEGY CONSIDERATIONS

1) Notice that in order to get from additive colors to white, the first player
  must form secondary colors and then add their complements; but the second
  player already plays secondary colors. So the first player can make use of
  the pieces played by the second player to make whites, which is faster than
  building whites from scratch. Similarly, the second player plays subtractive
  pieces and must first form primary colors and then add the complements to
  make black; but the first player already plays primary colors, which can be
  exploited to make blacks.

  This also means that when playing a piece, one should be careful not to
  give too much advantage to the other player by providing material to make
  propagators (black or white).

2) Propagators (blacks or whites) are useful for changing colors of pieces
  already blocked from direct access because they are surrounded by other
  pieces. Using propagators, you can create more propagators from such
  "buried" pieces. Strategic positioning of propagators that allow you to
  reach these "internal" pieces is key to winning the game. On the other hand,
  one should also be aware that the opponent can destroy such exposed
  propagators easily.

3) Since it is relatively easy for one's opponent to prevent one from winning
  by changing the color of a piece intended to be the 4th propagator in the
  row of 4, the good strategy is to devise a way to have at least two
  different pieces that can serve as a 4th piece in the row. Another good
  strategy is to bury the prospective 4th piece with other non-essential
  pieces so that the opponent cannot easily change its color, and have
  multiple propagator paths to it. Then if the opponent blocks one propagator
  path, another one is available to reach it.

4) It is very useful to anticipate the color of one's subsequent piece, and
  plan accordingly. For example, if the first player is playing a red, and
  there are no cyans around, it is useful to place the red next to blue
  pieces, because they form purple which can be complemented by the green on
  the next turn. If they are placed next to green pieces, the result is
  yellow, which cannot be used until 2 turns later.


COPYRIGHT

This game concept and its accompanying software implementation thereof is
copyrighted 2002-2003 by Hwei Sheng Teoh <hsteoh@debian.org>.

This software is licensed under the General Public License. The terms and
conditions of this license can be found in the COPYRIGHT file shipped with
the source code. If you are using a Debian GNU/Linux system, the license
may be found in /usr/share/common-licenses/GPL-2. A copy of the license may
also be obtained from the Free Software Foundation website, at:
	http://www.gnu.org/licenses/gpl.txt

