Vetka Puzzle
Original game from GAMOS (see http://www.gamos.ru/eng/games/branch.htm) features nice tileset, animation, timekeeping, scoretable and other small features which make a game a game. GAMOS also sells very similar game NetWalk.
Is the solution unique? My first guess was “of course not”. I thought there are
many ways to rotate tiles to end up with different trees. For example swastika
shaped tree (3x3) allows 2 different assemblies. But after playing several
games I found out that all of them had unique solution, especially those that
did not have “+” shaped tile in it. I tried to build 2 different trees which
differ only by rotations of some tiles and does not contain “+” shaped tiles,
but failed.
So, my second guess was that such trees can be reconstructed in a
unique way. Then I tried to prove this and was trying to until one day computer
generated a puzzle for me that allowed 2 different solutions. 8 tiles in upper
right corner can be rotated to produce different tree. This tree can be reduced
to 4x4 tree, which leaves me with a question: what is the smallest possible
tree (with no “+” tiles) that allows 2 solutions? Is there such 3x3 tree? 3x4?
I programmed this puzzle during the period when I believed my second guess is correct. As a result I detect end of game in the following way: I generate tree and then I keep count on the number of turns for each tile. (Scrambling is done by performing random number of turns on each tile.) I assume that tree is reconsructed when each tile returns to its original position. This leads to unfortunate consequences that one day you will build a tree and this will not be detected by the program. This means that you were extremely lucky and found a tree which allows at least two solutions and you've just found “another” one.
Another obvious variant is to use hexagonal tiles instead of square ones. This one I have implemented. I call it Vetka6X. It is more difficult than original Vetka. I do not know if there are any commercial implementetions of this puzzle.
There is one more tileset that covers the plane -- triangles. My original estimate is that since there are only 4 types of tiles and this includes empty tile and Y-shaped tile (both of which are not affected by rotations), this variant will not be very challenging. But I will definitely try to implement it one day and check this hypothesis.
Plane can be tiled by regular polygons only in three different ways, so, no more variants of this type are possible. However, if we move from regular euclidean plane to non-euclidean plane, we arrive to infinity of possibilities. Non-euclidean plane allows infinitely many tilings by regular polygons, giving infinitely many variants of Vetka puzzle. Creating user interface for displaying and manipulating figures in non-euclidean plane is a challenge. It is not impossible and there are implemetations with usefull applications (lookup “Hyperbolic Tree” with your favorite search engine for an example).