summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles/help/twiddle.c
blob: a1684a66547f3b71c29d3416aba518ac2497e8b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/* auto-generated by genhelp.sh */
/* DO NOT EDIT! */
const char help_text[] = 
"#Chapter 7: Twiddle "
"\n"
"Twiddle is a tile-rearrangement puzzle, visually similar to Sixteen "
"(see chapter 6): you are given a grid of square tiles, each "
"containing a number, and your aim is to arrange the numbers into "
"ascending order. "
"\n"
"In basic Twiddle, your move is to rotate a square group of four "
"tiles about their common centre. (Orientation is not significant "
"in the basic puzzle, although you can select it.) On more advanced "
"settings, you can rotate a larger square group of tiles. "
"\n"
"I first saw this type of puzzle in the GameCube game `Metroid "
"Prime 2'. In the Main Gyro Chamber in that game, there is a puzzle "
"you solve to unlock a door, which is a special case of Twiddle. I "
"developed this game as a generalisation of that puzzle. "
"\n"
"\n#7.1 Twiddle controls "
"\n"
"To play Twiddle, click the mouse in the centre of the square group "
"you wish to rotate. In the basic mode, you rotate a 2x2 square, "
"which means you have to click at a corner point where four tiles "
"meet. "
"\n"
"In more advanced modes you might be rotating 3x3 or even more at a "
"time; if the size of the square is odd then you simply click in the "
"centre tile of the square you want to rotate. "
"\n"
"Clicking with the left mouse button rotates the group anticlockwise. "
"Clicking with the right button rotates it clockwise. "
"\n"
"You can also move an outline square around the grid with the cursor "
"keys; the square is the size above (2x2 by default, or larger). "
"Pressing the return key or space bar will rotate the current square "
"anticlockwise or clockwise respectively. "
"\n"
"(All the actions described in section 2.1 are also available.) "
"\n"
"\n#7.2 Twiddle parameters "
"\n"
"Twiddle provides several configuration options via the `Custom' "
"option on the `Type' menu: "
"\n"
"- You can configure the width and height of the puzzle grid. "
"\n"
"- You can configure the size of square block that rotates at a "
"time. "
"\n"
"- You can ask for every square in the grid to be distinguishable "
"(the default), or you can ask for a simplified puzzle in which "
"there are groups of identical numbers. In the simplified puzzle "
"your aim is just to arrange all the 1s into the first row, all "
"the 2s into the second row, and so on. "
"\n"
"- You can configure whether the orientation of tiles matters. If "
"you ask for an orientable puzzle, each tile will have a triangle "
"drawn in it. All the triangles must be pointing upwards to "
"complete the puzzle. "
"\n"
"- You can ask for a limited shuffling operation to be performed "
"on the grid. By default, Twiddle will shuffle the grid so much "
"that any arrangement is about as probable as any other. You can "
"override this by requesting a precise number of shuffling moves "
"to be performed. Typically your aim is then to determine the "
"precise set of shuffling moves and invert them exactly, so that "
"you answer (say) a four-move shuffle with a four-move solution. "
"Note that the more moves you ask for, the more likely it is that "
"solutions shorter than the target length will turn out to be "
"possible. "
"\n"
;
const char quick_help_text[] = "Rotate the tiles around themselves to arrange them into order.";