This otherwise off-topic discussion is meant to illustrate the kind of thinking needed to define new, similar-but-broader problem domains, given an existing, well defined domain. Some (several) years ago I bought a 3d chess set. It had a set of rules with it that were "International Chess Federation" approved. Not long after, I was given a set as a gift. It, too, had a set of rules ... Chess Federation approved. The rules were different. One of them had a special set of rules for changing levels (boards), and the other had a (you guessed it) different set of rules -- including special board markup -- for changing board levels. The only thing these rules had in common regarding board levels was the basic technique: the idea of a "trap door" between levels. Clearly, two different "Chess Federations" were involved, or they just didn't take the domain seriously. I was young enough to take it seriously, so ... what do you have to know about chess that allows you to transform the game into three dimensions and still have a meaningful game? I decided that there was a fundamental geometry to the game, and all I had to do was discover it. So, I defined the distance between the *centers* of squares as "one" (1). Forget the lines that bound the squares -- they're just a holding grid. From this it was simple to define the length of the move of every piece. * Rook, multiples of 1 * Bishop, multiples of SQRT(2) * Pawn, multiples of 1, with captures being SQRT(2) [and may not move backward] * King, either 1 or SQRT(2) [castling is special case] [and not into check] * Queen, multiples of either 1 or SQRT(2) * Knight, SQRT(5) (note, Kt does not "jump over" other pieces, it moves between) With this information, the transformation is fairly straight forward. However, the King and Queen moves are often described as being one square (Q=multiples) "in any direction" -- and this becomes important. When you add the third dimension, you find that a new direction is available, giving a new move whose length is SQRT(3). This move is "diagonally from one corner of a cube to the opposite, non-coplanar corner." It forms the hypotenuse of a triangle whose one leg is (1) and whose other leg is SQRT(2). I hesitate to use the term "hyper diagonal," but it is shorter. So, for the King and Queen, we add the one/multiple of SQRT(3) to their repertoire. Arguably, this move could be added as a Pawn capture direction. In my first iteration, I didn't do that. Now eliminate the "trap door" idea. Any piece may move in any plane provided its move complies with the basic geometry. The only problem is for the Pawn: is "down" considered "backward" in the context of the "Pawns may not move backward" clause? I decided that if a move permitted a Pawn to return to its square of origin, then that move had to be considered "backward" in this context. So Pawns can only move forward and/or up. Oops. The "other side of the board" is now "the farthest rank on the opposite board." So Pawns of one color move forward/up, the others move forward/down. Testing the new geometry was easy -- and I was rewarded in finding that the same "rules of thumb" that define the moves can still be applied. Bishops still remain on their color of origin. Knights still change color with every move, and the "over one, up two/over two, up one" method still works. However, the amount of firepower required to mate seems to have increased. The Queen picks up power -- out of proportion to the other pieces, making it more valuable. The approach taken by the other examples was basically "add layered instances of the existing paradigm" while mine was "figure out the underlying paradigm and extend it logically." I wonder which of these would be harder to represent in software? -- GarryHamilton ---- See http://www.chessvariants.com/3d.dir/startrek.html for StarTrek variant ---- I once saw a 3D chess set that was rather nice, but the rules said "pieces move just like normal chess, but with 3D freedom". Very ambiguous. Ordinary chess is great; if you really want a more complex game you should try the GameOfGo. -- DavidPlumpton