summaryrefslogtreecommitdiff
path: root/apps/plugins/puzzles/help/rect.c
blob: fa1da622e2311e1699dcadffd40615967114918f (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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
/* auto-generated by genhelp.sh */
/* DO NOT EDIT! */
const char help_text[] = 
"#Chapter 8: Rectangles "
"\n"
"You have a grid of squares, with numbers written in some (but "
"not all) of the squares. Your task is to subdivide the grid into "
"rectangles of various sizes, such that (a) every rectangle contains "
"exactly one numbered square, and (b) the area of each rectangle is "
"equal to the number written in its numbered square. "
"\n"
"Credit for this game goes to the Japanese puzzle magazine Nikoli [3] "
"; I've also seen a Palm implementation at Puzzle Palace [4]. Unlike "
"Puzzle Palace's implementation, my version automatically generates "
"random grids of any size you like. The quality of puzzle design is "
"therefore not quite as good as hand-crafted puzzles would be, but on "
"the plus side you get an inexhaustible supply of puzzles tailored to "
"your own specification. "
"\n"
"[3] http://www.nikoli.co.jp/en/puzzles/shikaku.html (beware of "
"Flash) "
"\n"
"[4] "
"https://web.archive.org/web/20041024001459/http://www.puzzle.gr.jp/puzzle/sikaku/palm/index.html.en "
"\n"
"\n#8.1 Rectangles controls "
"\n"
"This game is played with the mouse or cursor keys. "
"\n"
"Left-click any edge to toggle it on or off, or left-click and "
"drag to draw an entire rectangle (or line) on the grid in one go "
"(removing any existing edges within that rectangle). Right-clicking "
"and dragging will allow you to erase the contents of a rectangle "
"without affecting its edges. "
"\n"
"Alternatively, use the cursor keys to move the position indicator "
"around the board. Pressing the return key then allows you to use the "
"cursor keys to drag a rectangle out from that position, and pressing "
"the return key again completes the rectangle. Using the space bar "
"instead of the return key allows you to erase the contents of a "
"rectangle without affecting its edges, as above. Pressing escape "
"cancels a drag. "
"\n"
"When a rectangle of the correct size is completed, it will be "
"shaded. "
"\n"
"(All the actions described in section 2.1 are also available.) "
"\n"
"\n#8.2 Rectangles parameters "
"\n"
"These parameters are available from the `Custom...' option on the "
"`Type' menu. "
"\n"
"_Width_, _Height_ "
"\n"
"Size of grid, in squares. "
"\n"
"_Expansion factor_ "
"\n"
"This is a mechanism for changing the type of grids generated by "
"the program. Some people prefer a grid containing a few large "
"rectangles to one containing many small ones. So you can ask "
"Rectangles to essentially generate a _smaller_ grid than the "
"size you specified, and then to expand it by adding rows and "
"columns. "
"\n"
"The default expansion factor of zero means that Rectangles will "
"simply generate a grid of the size you ask for, and do nothing "
"further. If you set an expansion factor of (say) 0.5, it means "
"that each dimension of the grid will be expanded to half again "
"as big after generation. In other words, the initial grid will "
"be 2/3 the size in each dimension, and will be expanded to its "
"full size without adding any more rectangles. "
"\n"
"Setting an expansion factor of around 0.5 tends to make the "
"game more difficult, and also (in my experience) rewards a "
"less deductive and more intuitive playing style. If you set it "
"_too_ high, though, the game simply cannot generate more than a "
"few rectangles to cover the entire grid, and the game becomes "
"trivial. "
"\n"
"_Ensure unique solution_ "
"\n"
"Normally, Rectangles will make sure that the puzzles it presents "
"have only one solution. Puzzles with ambiguous sections can be "
"more difficult and more subtle, so if you like you can turn off "
"this feature and risk having ambiguous puzzles. Also, finding "
"_all_ the possible solutions can be an additional challenge for "
"an advanced player. Turning off this option can also speed up "
"puzzle generation. "
"\n"
;
const char quick_help_text[] = "Divide the grid into rectangles with areas equal to the numbers.";