X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/6ae3730169b0c020d90fe20ace77262d19d26a2b..a3631c72fe1013ab8fa71b8ec91b82e433193ab4:/puzzles.but diff --git a/puzzles.but b/puzzles.but index cb6a9c1..657c255 100644 --- a/puzzles.but +++ b/puzzles.but @@ -382,6 +382,64 @@ The only parameters available from the \q{Custom...} option on the self-explanatory. +\C{twiddle} \i{Twiddle} + +\cfg{winhelp-topic}{games.twiddle} + +Twiddle is a tile-rearrangement puzzle, visually similar to Sixteen +(see \k{sixteen}): you are given a grid of square tiles, each +containing a number, and your aim is to arrange the numbers into +ascending order. + +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. + +I first saw this type of puzzle in the GameCube game \q{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. + +\H{twiddle-controls} \I{controls, for Twiddle}Twiddle controls + +To play Twiddle, click the mouse in the centre of the square group +you wish to rotate. In the basic mode, you rotate a 2\by\.2 square, +which means you have to click at a corner point where four tiles +meet. + +In more advanced modes you might be rotating 3\by\.3 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. + +Clicking with the left mouse button rotates the group anticlockwise. +Clicking with the right button rotates it clockwise. + +(All the actions described in \k{common-actions} are also available.) + +\H{twiddle-parameters} \I{parameters, for Twiddle}Twiddle parameters + +Twiddle provides several configuration options via the \q{Custom} +option on the \q{Type} menu: + +\b You can configure the width and height of the puzzle grid. + +\b You can configure the size of square block that rotates at a time. + +\b 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. + +\b You can configure whether the orientation of tiles matters. If +you ask for an orientable puzzle, each tile will have a yellow bar +along the side that should be at the top, and a green bar along the +side that should be at the bottom. To remind you of which way round +things go, there will be coloured bars by the sides of the grid. +Line up matching colours horizontally to complete the puzzle. + + \C{rectangles} \i{Rectangles} \cfg{winhelp-topic}{games.rectangles} @@ -583,6 +641,73 @@ rows, into which the main grid is divided. (The size of a block is the inverse of this: for example, if you select 2 columns and 3 rows, each actual block will have 3 columns and 2 rows.) +You can also configure the type of symmetry shown in the generated +puzzles. More symmetry makes the puzzles look prettier but may also +make them easier, since the symmetry constraints can force more +clues than necessary to be present. Completely asymmetric puzzles +have the freedom to contain as few clues as possible. + +Finally, you can configure the difficulty of the generated puzzles. +Difficulty levels are judged by the complexity of the techniques of +deduction required to solve the puzzle: each level requires a mode +of reasoning which was not necessary in the previous one. In +particular, on difficulty levels \q{Trivial} and \q{Basic} there +will be a square you can fill in with a single number at all times, +whereas at \q{Intermediate} level and beyond you will have to make +partial deductions about the \e{set} of squares a number could be in +(or the set of numbers that could be in a square). None of the +difficulty levels generated by this program ever requires making a +guess and backtracking if it turns out to be wrong. + +Generating difficult puzzles is itself difficult: if you select +\q{Intermediate} or \q{Advanced} difficulty, Solo may have to make +many attempts at generating a puzzle before it finds one hard enough +for you. Be prepared to wait, especially if you have also configured +a large puzzle size. + +\H{solo-cmdline} \I{command line, for Solo}Additional command-line +configuration + +The symmetry and difficulty parameters (described in +\k{solo-parameters}) are not mentioned by default in the game ID +(see \k{common-id}). So if (for example) you set your symmetry to +4-way rotational and your difficulty to \q{Advanced}, and then you +generate a 3\by\.4 grid, then the game ID will simply say +\c{3x4:}\e{numbers}. This means that if you send the game ID to +another player and they paste it into their copy of Solo, their game +will not be automatically configured to use the same symmetry and +difficulty settings in any subsequent grids it generates. (I don't +think the average person examining a single grid sent to them by +another player would want their configuration modified to that +extent.) + +If you are specifying a game ID or game parameters on the command +line (see \k{common-cmdline}) and you do want to configure the +symmetry, you can do it by suffixing additional text to the +parameters: + +\b \cq{m4} for 4-way mirror symmetry + +\b \cq{r4} for 4-way rotational symmetry + +\b \cq{r2} for 2-way rotational symmetry + +\b \cq{a} for no symmetry at all (stands for \q{asymmetric}) + +\b \cq{dt} for Trivial difficulty level + +\b \cq{db} for Basic difficulty level + +\b \cq{di} for Intermediate difficulty level + +\b \cq{da} for Advanced difficulty level + +So, for example, you can make Solo generate asymmetric 3x4 grids by +running \cq{solo 3x4a}, or 4-way rotationally symmetric 2x3 grids by +running \cq{solo 2x3r4}, or \q{Advanced}-level 2x3 grids by running +\cq{solo 2x3da}. + + \A{licence} \I{MIT licence}\ii{Licence} This software is \i{copyright} 2004-2005 Simon Tatham.