diff --git a/apps/plugins/puzzles/SOURCES b/apps/plugins/puzzles/SOURCES index 1f2894fabc..f190daffb1 100644 --- a/apps/plugins/puzzles/SOURCES +++ b/apps/plugins/puzzles/SOURCES @@ -1,6 +1,7 @@ rockbox.c rbwrappers.c rbmalloc.c +lz4tiny.c src/combi.c src/divvy.c diff --git a/apps/plugins/puzzles/compress.c b/apps/plugins/puzzles/compress.c new file mode 100644 index 0000000000..cddb41bfdc --- /dev/null +++ b/apps/plugins/puzzles/compress.c @@ -0,0 +1,70 @@ +/* This program compresses the help content found in help/ to standard + * output. Do not directly compile or use this program, instead it + * will be automatically used by genhelp.sh */ + +#include +#include +#include +#include +#include +#include "help.h" + +char *compress(const char *in, int inlen, int *rc, int *minsz, int *minlev) +{ + int maxsz = LZ4_compressBound(inlen); + unsigned char *outbuf = malloc(maxsz); + *minsz = 9999999; + *minlev = 0; + + for(int i = LZ4HC_CLEVEL_MIN; i < LZ4HC_CLEVEL_MAX; ++i) + { + *rc = LZ4_compress_HC(help_text, outbuf, inlen, maxsz, i); + if(!*rc) + { + fprintf(stderr, "compress failed\n"); + return NULL; + } + if(*rc < *minsz) + { + *minsz = *rc; + *minlev = i; + } + } + *rc = LZ4_compress_HC(help_text, outbuf, inlen, maxsz, *minlev); + return outbuf; +} + +void dump_bytes(unsigned char *buf, int len) +{ + int i = 0; + while(i < len) + { + int stop = i + 10; + for(;i < stop && i < len; ++i) + { + printf("0x%02x, ", buf[i]); + } + printf("\n"); + } +} + +int main() +{ + int inlen = strlen(help_text) + 1, len; + int minsz, minlev; + unsigned char *outbuf = compress(help_text, inlen, &len, &minsz, &minlev); + + printf("/* auto-generated on " __DATE__ " by genhelp.sh */\n"); + printf("/* orig %d comp %d ratio %g level %d saved %d */\n", inlen, minsz, (double)minsz / inlen, minlev, inlen - minsz); + printf("/* DO NOT EDIT! */\n\n"); + printf("#include \"help.h\"\n"); + printf("const char help_text[] = {\n"); + + dump_bytes(outbuf, len); + free(outbuf); + + printf("};\n"); + printf("const unsigned short help_text_len = %d;\n", inlen); + + return 0; +} diff --git a/apps/plugins/puzzles/genhelp.sh b/apps/plugins/puzzles/genhelp.sh index 293c58bd2b..1d4dac794b 100755 --- a/apps/plugins/puzzles/genhelp.sh +++ b/apps/plugins/puzzles/genhelp.sh @@ -3,6 +3,8 @@ # # expects halibut to be installed in $PATH: # http://www.chiark.greenend.org.uk/~sgtatham/halibut +# +# also requires host CC and lz4 library to be available halibut --text src/puzzles.but @@ -48,5 +50,14 @@ cat puzzles.txt | awk 'BEGIN { file = "none"; } } ' +# now compress +for f in help/* +do + echo "Compressing: "$f + gcc compress.c $f -llz4 -o compress -O0 + ./compress > $f.tmp + mv $f.tmp $f +done + # generate quick help from gamedesc.txt cat src/gamedesc.txt | awk -F ":" '{print "const char quick_help_text[] = \""$5"\";" >> "help/"$1".c" }' diff --git a/apps/plugins/puzzles/help.h b/apps/plugins/puzzles/help.h index 90c90dcd7f..e9580ad69a 100644 --- a/apps/plugins/puzzles/help.h +++ b/apps/plugins/puzzles/help.h @@ -1,4 +1,4 @@ /* defined in help/ */ -extern const char help_text[]; -extern const char quick_help_text[]; +extern const char help_text[], quick_help_text[]; +extern const unsigned short help_text_len, quick_help_text_len; diff --git a/apps/plugins/puzzles/help/blackbox.c b/apps/plugins/puzzles/help/blackbox.c index 359dd61220..e3233810d1 100644 --- a/apps/plugins/puzzles/help/blackbox.c +++ b/apps/plugins/puzzles/help/blackbox.c @@ -1,150 +1,324 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 5427 comp 3142 ratio 0.578957 level 11 saved 2285 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 19: Black Box " -"\n" -"A number of balls are hidden in a rectangular arena. You have to " -"deduce the positions of the balls by firing lasers positioned at the " -"edges of the arena and observing how their beams are deflected. " -"\n" -"Beams will travel straight from their origin until they hit the " -"opposite side of the arena (at which point they emerge), unless " -"affected by balls in one of the following ways: " -"\n" -"- A beam that hits a ball head-on is absorbed and will never re-\n" -"emerge. This includes beams that meet a ball on the first rank " -"of the arena. " -"\n" -"- A beam with a ball in its front-left square and no ball ahead of " -"it gets deflected 90 degrees to the right. " -"\n" -"- A beam with a ball in its front-right square and no ball ahead " -"of it gets similarly deflected to the left. " -"\n" -"- A beam that would re-emerge from its entry location is " -"considered to be `reflected'. " -"\n" -"- A beam which would get deflected before entering the arena by a " -"ball to the front-left or front-right of its entry point is also " -"considered to be `reflected'. " -"\n" -"Beams that are reflected appear as a `R'; beams that hit balls head-\n" -"on appear as `H'. Otherwise, a number appears at the firing point " -"and the location where the beam emerges (this number is unique to " -"that shot). " -"\n" -"You can place guesses as to the location of the balls, based on the " -"entry and exit patterns of the beams; once you have placed enough " -"balls a button appears enabling you to have your guesses checked. " -"\n" -"Here is a diagram showing how the positions of balls can create each " -"of the beam behaviours shown above: " -"\n" -"1RHR----\n" -"|..O.O...|\n" -"2........3\n" -"|........|\n" -"|........|\n" -"3........|\n" -"|......O.|\n" -"H........|\n" -"|.....O..|\n" -"12-RR---\n" -"\n" -"As shown, it is possible for a beam to receive multiple reflections " -"before re-emerging (see turn 3). Similarly, a beam may be reflected " -"(possibly more than once) before receiving a hit (the `H' on the " -"left side of the example). " -"\n" -"Note that any layout with more than 4 balls may have a non-unique " -"solution. The following diagram illustrates this; if you know the " -"board contains 5 balls, it is impossible to determine where the " -"fifth ball is (possible positions marked with an x): " -"\n" -"--------\n" -"|........|\n" -"|........|\n" -"|..O..O..|\n" -"|...xx...|\n" -"|...xx...|\n" -"|..O..O..|\n" -"|........|\n" -"|........|\n" -"--------\n" -"\n" -"For this reason, when you have your guesses checked, the game " -"will check that your solution _produces the same results_ as the " -"computer's, rather than that your solution is identical to the " -"computer's. So in the above example, you could put the fifth ball at " -"_any_ of the locations marked with an x, and you would still win. " -"\n" -"Black Box was contributed to this collection by James Harvey. " -"\n" -"\n#19.1 Black Box controls " -"\n" -"To fire a laser beam, left-click in a square around the edge of " -"the arena. The results will be displayed immediately. Clicking or " -"holding the left button on one of these squares will highlight the " -"current go (or a previous go) to confirm the exit point for that " -"laser, if applicable. " -"\n" -"To guess the location of a ball, left-click within the arena and a " -"black circle will appear marking the guess; click again to remove " -"the guessed ball. " -"\n" -"Locations in the arena may be locked against modification by right-\n" -"clicking; whole rows and columns may be similarly locked by right-\n" -"clicking in the laser square above/below that column, or to the " -"left/right of that row. " -"\n" -"The cursor keys may also be used to move around the grid. Pressing " -"the Enter key will fire a laser or add a new ball-location guess, " -"and pressing Space will lock a cell, row, or column. " -"\n" -"When an appropriate number of balls have been guessed, a button will " -"appear at the top-left corner of the grid; clicking that (with mouse " -"or cursor) will check your guesses. " -"\n" -"If you click the `check' button and your guesses are not correct, " -"the game will show you the minimum information necessary to " -"demonstrate this to you, so you can try again. If your ball " -"positions are not consistent with the beam paths you already know " -"about, one beam path will be circled to indicate that it proves you " -"wrong. If your positions match all the existing beam paths but are " -"still wrong, one new beam path will be revealed (written in red) " -"which is not consistent with your current guesses. " -"\n" -"If you decide to give up completely, you can select Solve to reveal " -"the actual ball positions. At this point, correctly-placed balls " -"will be displayed as filled black circles, incorrectly-placed balls " -"as filled black circles with red crosses, and missing balls as " -"filled red circles. In addition, a red circle marks any laser you " -"had already fired which is not consistent with your ball layout " -"(just as when you press the `check' button), and red text marks " -"any laser you _could_ have fired in order to distinguish your ball " -"layout from the correct one. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#19.2 Black Box parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. There are 2 x _Width_ x _Height_ lasers " -"per grid, two per row and two per column. " -"\n" -"_No. of balls_ " -"\n" -"Number of balls to place in the grid. This can be a single " -"number, or a range (separated with a hyphen, like `2-6'), " -"and determines the number of balls to place on the grid. " -"The `reveal' button is only enabled if you have guessed an " -"appropriate number of balls; a guess using a different number " -"to the original solution is still acceptable, if all the beam " -"inputs and outputs match. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x36, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x39, 0x3a, 0x20, 0x42, 0x6c, 0x61, 0x63, 0x6b, +0x20, 0x42, 0x6f, 0x78, 0x20, 0x0a, 0x41, 0x20, 0x6e, 0x75, +0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x62, 0x61, +0x6c, 0x6c, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, 0x68, 0x69, +0x64, 0x64, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x20, +0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, +0x72, 0x1c, 0x00, 0xf0, 0x18, 0x6e, 0x61, 0x2e, 0x20, 0x59, +0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x74, 0x6f, +0x20, 0x64, 0x65, 0x64, 0x75, 0x63, 0x65, 0x20, 0x74, 0x68, +0x65, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, +0x73, 0x20, 0x6f, 0x66, 0x11, 0x00, 0x03, 0x51, 0x00, 0xf5, +0x01, 0x62, 0x79, 0x20, 0x66, 0x69, 0x72, 0x69, 0x6e, 0x67, +0x20, 0x6c, 0x61, 0x73, 0x65, 0x72, 0x73, 0x28, 0x00, 0x51, +0x65, 0x64, 0x20, 0x61, 0x74, 0x29, 0x00, 0x44, 0x65, 0x64, +0x67, 0x65, 0x36, 0x00, 0x02, 0x65, 0x00, 0xb0, 0x20, 0x61, +0x6e, 0x64, 0x20, 0x6f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x3a, +0x00, 0x30, 0x68, 0x6f, 0x77, 0x1c, 0x00, 0x72, 0x69, 0x72, +0x20, 0x62, 0x65, 0x61, 0x6d, 0xa5, 0x00, 0xd1, 0x64, 0x65, +0x66, 0x6c, 0x65, 0x63, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x0a, +0x42, 0x16, 0x00, 0xf3, 0x0a, 0x77, 0x69, 0x6c, 0x6c, 0x20, +0x74, 0x72, 0x61, 0x76, 0x65, 0x6c, 0x20, 0x73, 0x74, 0x72, +0x61, 0x69, 0x67, 0x68, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x3c, 0x00, 0xc0, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x20, +0x75, 0x6e, 0x74, 0x69, 0x6c, 0x13, 0x00, 0x42, 0x79, 0x20, +0x68, 0x69, 0x81, 0x00, 0x21, 0x6f, 0x70, 0x95, 0x00, 0x6a, +0x65, 0x20, 0x73, 0x69, 0x64, 0x65, 0x89, 0x00, 0xf2, 0x00, +0x28, 0x61, 0x74, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, +0x70, 0x6f, 0x69, 0x6e, 0x74, 0x38, 0x00, 0xf1, 0x04, 0x65, +0x6d, 0x65, 0x72, 0x67, 0x65, 0x29, 0x2c, 0x20, 0x75, 0x6e, +0x6c, 0x65, 0x73, 0x73, 0x20, 0x61, 0x66, 0x66, 0x8b, 0x00, +0x32, 0x20, 0x62, 0x79, 0xf6, 0x00, 0x00, 0x3c, 0x01, 0x25, +0x6f, 0x6e, 0x4b, 0x00, 0x60, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, +0x77, 0xca, 0x00, 0xa0, 0x77, 0x61, 0x79, 0x73, 0x3a, 0x20, +0x0a, 0x2d, 0x20, 0x41, 0xcb, 0x00, 0x00, 0x9a, 0x00, 0x20, +0x61, 0x74, 0x87, 0x00, 0x31, 0x73, 0x20, 0x61, 0x3a, 0x00, +0xf0, 0x05, 0x20, 0x68, 0x65, 0x61, 0x64, 0x2d, 0x6f, 0x6e, +0x20, 0x69, 0x73, 0x20, 0x61, 0x62, 0x73, 0x6f, 0x72, 0x62, +0x65, 0x64, 0x0d, 0x01, 0x02, 0xdd, 0x00, 0xa2, 0x6e, 0x65, +0x76, 0x65, 0x72, 0x20, 0x72, 0x65, 0x2d, 0x0a, 0x82, 0x00, +0x50, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x6d, 0x00, 0x62, 0x63, +0x6c, 0x75, 0x64, 0x65, 0x73, 0x1e, 0x01, 0x02, 0x54, 0x00, +0x44, 0x6d, 0x65, 0x65, 0x74, 0x54, 0x00, 0x22, 0x6f, 0x6e, +0x86, 0x00, 0x99, 0x69, 0x72, 0x73, 0x74, 0x20, 0x72, 0x61, +0x6e, 0x6b, 0xe3, 0x00, 0x17, 0x2e, 0x8f, 0x00, 0x43, 0x77, +0x69, 0x74, 0x68, 0x36, 0x00, 0x00, 0xc3, 0x00, 0x30, 0x69, +0x74, 0x73, 0x41, 0x01, 0xe1, 0x6e, 0x74, 0x2d, 0x6c, 0x65, +0x66, 0x74, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x8f, +0x00, 0x22, 0x6e, 0x6f, 0x25, 0x00, 0x10, 0x61, 0xb0, 0x00, +0x00, 0x4f, 0x00, 0x76, 0x69, 0x74, 0x20, 0x67, 0x65, 0x74, +0x73, 0x97, 0x01, 0xe1, 0x20, 0x39, 0x30, 0x20, 0x64, 0x65, +0x67, 0x72, 0x65, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x6f, 0x00, +0x10, 0x72, 0x92, 0x01, 0x0f, 0x6f, 0x00, 0x12, 0x00, 0x2a, +0x00, 0x0f, 0x70, 0x00, 0x13, 0x96, 0x73, 0x69, 0x6d, 0x69, +0x6c, 0x61, 0x72, 0x6c, 0x79, 0x7a, 0x00, 0x04, 0x6f, 0x00, +0x00, 0xb4, 0x00, 0x1c, 0x2e, 0x6c, 0x01, 0x50, 0x77, 0x6f, +0x75, 0x6c, 0x64, 0x43, 0x01, 0x02, 0x42, 0x01, 0x01, 0x20, +0x02, 0x01, 0x79, 0x00, 0xc2, 0x65, 0x6e, 0x74, 0x72, 0x79, +0x20, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x80, 0x01, 0x30, +0x63, 0x6f, 0x6e, 0x10, 0x02, 0x12, 0x72, 0x52, 0x00, 0x54, +0x62, 0x65, 0x20, 0x60, 0x72, 0x63, 0x00, 0x17, 0x27, 0x58, +0x00, 0x02, 0x1f, 0x02, 0x02, 0x59, 0x00, 0x00, 0x94, 0x00, +0x07, 0x89, 0x00, 0x60, 0x62, 0x65, 0x66, 0x6f, 0x72, 0x65, +0x5b, 0x00, 0x10, 0x65, 0x02, 0x03, 0x07, 0x57, 0x02, 0x23, +0x62, 0x79, 0xf8, 0x00, 0x03, 0xad, 0x00, 0x08, 0x67, 0x01, +0x29, 0x6f, 0x72, 0x06, 0x01, 0x26, 0x6f, 0x66, 0xa0, 0x00, +0x02, 0x85, 0x02, 0x01, 0x1d, 0x02, 0x3f, 0x6c, 0x73, 0x6f, +0xa2, 0x00, 0x0d, 0x15, 0x42, 0x0f, 0x02, 0x01, 0x32, 0x03, +0x15, 0x72, 0x98, 0x00, 0x40, 0x61, 0x70, 0x70, 0x65, 0xd0, +0x03, 0x00, 0x76, 0x02, 0x42, 0x60, 0x52, 0x27, 0x3b, 0x39, +0x02, 0x05, 0x8d, 0x02, 0x02, 0xc4, 0x02, 0x02, 0x8b, 0x02, +0x37, 0x0a, 0x6f, 0x6e, 0x2f, 0x00, 0xf3, 0x02, 0x60, 0x48, +0x27, 0x2e, 0x20, 0x4f, 0x74, 0x68, 0x65, 0x72, 0x77, 0x69, +0x73, 0x65, 0x2c, 0x20, 0x61, 0x40, 0x04, 0x03, 0x23, 0x00, +0x13, 0x73, 0xd2, 0x03, 0x03, 0xf2, 0x03, 0x02, 0xae, 0x00, +0x00, 0xc0, 0x01, 0x00, 0x15, 0x00, 0x06, 0x5c, 0x01, 0x41, +0x77, 0x68, 0x65, 0x72, 0x34, 0x04, 0x01, 0x78, 0x00, 0x03, +0x4e, 0x03, 0x73, 0x73, 0x20, 0x28, 0x74, 0x68, 0x69, 0x73, +0x51, 0x00, 0x00, 0xe3, 0x00, 0x50, 0x75, 0x6e, 0x69, 0x71, +0x75, 0x66, 0x04, 0x02, 0x99, 0x00, 0x80, 0x73, 0x68, 0x6f, +0x74, 0x29, 0x2e, 0x20, 0x0a, 0x7f, 0x04, 0xf0, 0x04, 0x63, +0x61, 0x6e, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, 0x67, +0x75, 0x65, 0x73, 0x73, 0x65, 0x73, 0x20, 0x61, 0x66, 0x02, +0x09, 0x67, 0x00, 0x09, 0x87, 0x04, 0x73, 0x2c, 0x20, 0x62, +0x61, 0x73, 0x65, 0x64, 0x0b, 0x03, 0x02, 0x4d, 0x01, 0x01, +0x99, 0x00, 0xb5, 0x65, 0x78, 0x69, 0x74, 0x20, 0x70, 0x61, +0x74, 0x74, 0x65, 0x72, 0xba, 0x04, 0x02, 0x0f, 0x01, 0x83, +0x3b, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0x20, 0x79, 0xee, 0x04, +0x02, 0x70, 0x00, 0x84, 0x64, 0x20, 0x65, 0x6e, 0x6f, 0x75, +0x67, 0x68, 0x2e, 0x05, 0x55, 0x20, 0x62, 0x75, 0x74, 0x74, +0x23, 0x01, 0x00, 0xa6, 0x01, 0x61, 0x61, 0x62, 0x6c, 0x69, +0x6e, 0x67, 0x37, 0x00, 0x20, 0x74, 0x6f, 0x3a, 0x00, 0x01, +0x43, 0x00, 0x15, 0x72, 0xa9, 0x00, 0x51, 0x63, 0x68, 0x65, +0x63, 0x6b, 0xb6, 0x04, 0x10, 0x48, 0x06, 0x01, 0x10, 0x69, +0x45, 0x00, 0x70, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, +0xe3, 0x00, 0x13, 0x77, 0xf0, 0x04, 0x0a, 0x53, 0x05, 0x05, +0xa0, 0x05, 0x01, 0xfa, 0x00, 0xb8, 0x63, 0x72, 0x65, 0x61, +0x74, 0x65, 0x20, 0x65, 0x61, 0x63, 0x68, 0xb2, 0x00, 0xb1, +0x20, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x75, 0x72, +0x73, 0x4a, 0x00, 0xf3, 0x11, 0x6e, 0x20, 0x61, 0x62, 0x6f, +0x76, 0x65, 0x3a, 0x20, 0x0a, 0x31, 0x52, 0x48, 0x52, 0x2d, +0x2d, 0x2d, 0x2d, 0x0a, 0x7c, 0x2e, 0x2e, 0x4f, 0x2e, 0x4f, +0x2e, 0x2e, 0x2e, 0x7c, 0x0a, 0x32, 0x2e, 0x01, 0x00, 0x34, +0x33, 0x0a, 0x7c, 0x0b, 0x00, 0x18, 0x7c, 0x0b, 0x00, 0x1d, +0x33, 0x16, 0x00, 0x5c, 0x4f, 0x2e, 0x7c, 0x0a, 0x48, 0x16, +0x00, 0x10, 0x4f, 0x0b, 0x00, 0x50, 0x31, 0x32, 0x2d, 0x52, +0x52, 0x61, 0x00, 0x23, 0x0a, 0x41, 0x7c, 0x00, 0x10, 0x2c, +0xa2, 0x03, 0x11, 0x69, 0xee, 0x05, 0x40, 0x73, 0x69, 0x62, +0x6c, 0x04, 0x05, 0x33, 0x72, 0x20, 0x61, 0x89, 0x03, 0x10, +0x6f, 0x57, 0x06, 0xc4, 0x65, 0x69, 0x76, 0x65, 0x20, 0x6d, +0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x9d, 0x02, 0x01, 0xed, +0x00, 0x03, 0x37, 0x03, 0x05, 0xa5, 0x03, 0x00, 0x12, 0x01, +0xf4, 0x00, 0x28, 0x73, 0x65, 0x65, 0x20, 0x74, 0x75, 0x72, +0x6e, 0x20, 0x33, 0x29, 0x2e, 0x20, 0x53, 0xf5, 0x03, 0x14, +0x2c, 0x53, 0x00, 0x58, 0x6d, 0x61, 0x79, 0x20, 0x62, 0xe3, +0x02, 0x13, 0x28, 0x79, 0x00, 0x41, 0x79, 0x20, 0x6d, 0x6f, +0x6d, 0x02, 0x21, 0x61, 0x6e, 0xd0, 0x01, 0x13, 0x29, 0x5e, +0x00, 0x02, 0x82, 0x00, 0x01, 0x5e, 0x06, 0x10, 0x61, 0xf4, +0x02, 0x00, 0x7e, 0x02, 0x10, 0x65, 0xe0, 0x02, 0x35, 0x20, +0x6f, 0x6e, 0x3e, 0x04, 0x09, 0x10, 0x06, 0x70, 0x65, 0x78, +0x61, 0x6d, 0x70, 0x6c, 0x65, 0x83, 0x02, 0x43, 0x4e, 0x6f, +0x74, 0x65, 0x58, 0x03, 0x91, 0x6e, 0x79, 0x20, 0x6c, 0x61, +0x79, 0x6f, 0x75, 0x74, 0xcd, 0x04, 0x07, 0x6d, 0x00, 0x12, +0x34, 0xb1, 0x01, 0x00, 0x9a, 0x00, 0x01, 0x06, 0x02, 0x00, +0x2c, 0x03, 0x33, 0x6f, 0x6e, 0x2d, 0xd5, 0x02, 0x40, 0x73, +0x6f, 0x6c, 0x75, 0xed, 0x00, 0x38, 0x2e, 0x20, 0x54, 0x20, +0x06, 0x05, 0x0a, 0x02, 0x40, 0x69, 0x6c, 0x6c, 0x75, 0xc4, +0x06, 0x40, 0x74, 0x65, 0x73, 0x20, 0x17, 0x03, 0x41, 0x3b, +0x20, 0x69, 0x66, 0x54, 0x02, 0x23, 0x6b, 0x6e, 0x1c, 0x02, +0x50, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x02, 0x04, 0x72, 0x74, +0x61, 0x69, 0x6e, 0x73, 0x20, 0x35, 0x6f, 0x00, 0x04, 0x77, +0x01, 0x23, 0x69, 0x6d, 0x00, 0x01, 0x03, 0xa6, 0x07, 0x77, +0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x7b, 0x03, 0x53, +0x66, 0x69, 0x66, 0x74, 0x68, 0x7b, 0x05, 0x15, 0x73, 0x2f, +0x01, 0x08, 0x74, 0x02, 0x63, 0x6d, 0x61, 0x72, 0x6b, 0x65, +0x64, 0xa5, 0x05, 0x40, 0x6e, 0x20, 0x78, 0x29, 0xb9, 0x06, +0x03, 0x01, 0x00, 0x0f, 0x34, 0x02, 0x04, 0x11, 0x7c, 0x10, +0x02, 0x14, 0x4f, 0x16, 0x00, 0x37, 0x78, 0x78, 0x2e, 0x0b, +0x00, 0x0e, 0x21, 0x00, 0x0e, 0x42, 0x00, 0x06, 0x61, 0x00, +0x51, 0x0a, 0x46, 0x6f, 0x72, 0x20, 0x12, 0x04, 0x70, 0x72, +0x65, 0x61, 0x73, 0x6f, 0x6e, 0x2c, 0xbc, 0x00, 0x10, 0x6e, +0x04, 0x01, 0x0f, 0x55, 0x03, 0x07, 0x11, 0x2c, 0xda, 0x00, +0x41, 0x67, 0x61, 0x6d, 0x65, 0x30, 0x07, 0x02, 0x17, 0x00, +0x01, 0xa9, 0x01, 0x01, 0x2f, 0x00, 0x05, 0x76, 0x01, 0x50, +0x20, 0x5f, 0x70, 0x72, 0x6f, 0xb9, 0x08, 0x11, 0x73, 0x31, +0x00, 0x30, 0x73, 0x61, 0x6d, 0x10, 0x02, 0x82, 0x73, 0x75, +0x6c, 0x74, 0x73, 0x5f, 0x20, 0x61, 0x15, 0x00, 0xe0, 0x63, +0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, 0x27, 0x73, 0x2c, +0x20, 0x72, 0x61, 0xf3, 0x04, 0x02, 0xd8, 0x01, 0x0e, 0x4e, +0x00, 0x01, 0x70, 0x01, 0x70, 0x64, 0x65, 0x6e, 0x74, 0x69, +0x63, 0x61, 0xd0, 0x05, 0x0b, 0x3f, 0x00, 0x61, 0x2e, 0x20, +0x53, 0x6f, 0x20, 0x69, 0x55, 0x02, 0x01, 0x91, 0x03, 0x05, +0x4a, 0x02, 0x11, 0x2c, 0xcd, 0x00, 0x11, 0x63, 0x38, 0x06, +0x3b, 0x70, 0x75, 0x74, 0x96, 0x01, 0x00, 0x4b, 0x05, 0x89, +0x5f, 0x61, 0x6e, 0x79, 0x5f, 0x20, 0x6f, 0x66, 0xd8, 0x04, +0x0e, 0x99, 0x01, 0x10, 0x2c, 0xca, 0x04, 0x00, 0x4d, 0x00, +0x03, 0x85, 0x06, 0x20, 0x73, 0x74, 0xfd, 0x00, 0x66, 0x77, +0x69, 0x6e, 0x2e, 0x20, 0x0a, 0xed, 0x09, 0x31, 0x77, 0x61, +0x73, 0x2f, 0x02, 0x45, 0x72, 0x69, 0x62, 0x75, 0x26, 0x07, +0x01, 0xe7, 0x06, 0x13, 0x6c, 0x7a, 0x03, 0x00, 0x96, 0x06, +0xf6, 0x06, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x48, 0x61, +0x72, 0x76, 0x65, 0x79, 0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x31, +0x39, 0x2e, 0x31, 0x33, 0x0a, 0x02, 0x42, 0x00, 0xa0, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x54, 0x6f, 0x20, 0x66, 0x69, 0x9f, +0x07, 0x01, 0xd9, 0x09, 0x02, 0x9b, 0x09, 0x11, 0x2c, 0x37, +0x03, 0x61, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x40, 0x0a, +0x05, 0xc4, 0x07, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0xee, +0x09, 0x0b, 0x81, 0x08, 0x24, 0x54, 0x68, 0x80, 0x01, 0x02, +0xc6, 0x09, 0x00, 0xcb, 0x03, 0xf0, 0x09, 0x64, 0x69, 0x73, +0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x20, 0x69, 0x6d, 0x6d, +0x65, 0x64, 0x69, 0x61, 0x74, 0x65, 0x6c, 0x79, 0x2e, 0x20, +0x43, 0x5b, 0x00, 0x30, 0x69, 0x6e, 0x67, 0x26, 0x07, 0x75, +0x68, 0x6f, 0x6c, 0x64, 0x69, 0x6e, 0x67, 0xaf, 0x03, 0x04, +0x8d, 0x05, 0x18, 0x6f, 0x7d, 0x09, 0x23, 0x73, 0x65, 0x84, +0x00, 0x03, 0x5b, 0x00, 0x50, 0x68, 0x69, 0x67, 0x68, 0x6c, +0x59, 0x07, 0x02, 0xa7, 0x01, 0xb1, 0x75, 0x72, 0x72, 0x65, +0x6e, 0x74, 0x20, 0x67, 0x6f, 0x20, 0x28, 0xa1, 0x04, 0x30, +0x70, 0x72, 0x65, 0x43, 0x05, 0x71, 0x73, 0x20, 0x67, 0x6f, +0x29, 0x20, 0x74, 0x63, 0x07, 0x31, 0x66, 0x69, 0x72, 0x43, +0x0a, 0x01, 0x2c, 0x06, 0x02, 0xd4, 0x06, 0x00, 0xce, 0x04, +0x01, 0x0a, 0x02, 0x02, 0xfc, 0x00, 0x40, 0x2c, 0x20, 0x69, +0x66, 0x03, 0x06, 0x80, 0x6c, 0x69, 0x63, 0x61, 0x62, 0x6c, +0x65, 0x2e, 0x1d, 0x01, 0x02, 0x9c, 0x02, 0x0c, 0x92, 0x06, +0x03, 0xf6, 0x07, 0x08, 0x28, 0x01, 0x01, 0xc8, 0x01, 0x2a, +0x69, 0x6e, 0xfd, 0x0a, 0x00, 0x28, 0x00, 0x01, 0x74, 0x01, +0x52, 0x63, 0x69, 0x72, 0x63, 0x6c, 0xcf, 0x02, 0x03, 0x65, +0x06, 0x01, 0xff, 0x01, 0x02, 0xf7, 0x00, 0x03, 0xff, 0x06, +0x22, 0x3b, 0x20, 0x49, 0x00, 0x52, 0x61, 0x67, 0x61, 0x69, +0x6e, 0x5e, 0x05, 0x46, 0x6d, 0x6f, 0x76, 0x65, 0x21, 0x00, +0x21, 0x65, 0x64, 0x76, 0x00, 0x45, 0x2e, 0x20, 0x0a, 0x4c, +0x45, 0x02, 0x08, 0x72, 0x00, 0x04, 0x3f, 0x05, 0x20, 0x6c, +0x6f, 0x46, 0x03, 0x02, 0x48, 0x00, 0xb3, 0x73, 0x74, 0x20, +0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x63, 0x61, 0x1c, 0x02, +0x02, 0xc0, 0x09, 0x33, 0x2d, 0x0a, 0x63, 0x83, 0x01, 0x50, +0x3b, 0x20, 0x77, 0x68, 0x6f, 0xbb, 0x05, 0x30, 0x6f, 0x77, +0x73, 0xb4, 0x00, 0x00, 0x4a, 0x02, 0x43, 0x75, 0x6d, 0x6e, +0x73, 0x4e, 0x00, 0x06, 0x9b, 0x09, 0x04, 0x58, 0x00, 0x0e, +0x43, 0x00, 0x03, 0x86, 0x00, 0x02, 0x46, 0x01, 0x02, 0xa8, +0x01, 0x03, 0x25, 0x03, 0x61, 0x2f, 0x62, 0x65, 0x6c, 0x6f, +0x77, 0x64, 0x01, 0x03, 0x58, 0x00, 0x48, 0x2c, 0x20, 0x6f, +0x72, 0xdb, 0x09, 0x14, 0x2f, 0x1f, 0x09, 0x01, 0x25, 0x00, +0x00, 0x86, 0x00, 0x00, 0x78, 0x01, 0x02, 0xd4, 0x01, 0x71, +0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x8b, 0x00, 0x00, +0x2b, 0x09, 0x01, 0x1d, 0x09, 0x22, 0x75, 0x73, 0xf6, 0x02, +0x39, 0x6d, 0x6f, 0x76, 0x91, 0x02, 0xb4, 0x67, 0x72, 0x69, +0x64, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0x57, 0x01, +0x41, 0x45, 0x6e, 0x74, 0x65, 0x42, 0x00, 0x01, 0x79, 0x01, +0x0a, 0xe8, 0x02, 0x00, 0x27, 0x02, 0x20, 0x64, 0x64, 0xcf, +0x05, 0x21, 0x65, 0x77, 0x57, 0x01, 0x14, 0x2d, 0xe0, 0x01, +0x02, 0x6d, 0x01, 0x02, 0x8e, 0x03, 0x14, 0x70, 0x4f, 0x00, +0x43, 0x53, 0x70, 0x61, 0x63, 0xc0, 0x01, 0x20, 0x6c, 0x6f, +0xa5, 0x01, 0x60, 0x20, 0x63, 0x65, 0x6c, 0x6c, 0x2c, 0xb0, +0x00, 0x00, 0xd2, 0x00, 0x02, 0xdd, 0x00, 0x00, 0xaa, 0x03, +0x10, 0x57, 0xdf, 0x04, 0x11, 0x61, 0x4b, 0x08, 0x40, 0x72, +0x6f, 0x70, 0x72, 0xf1, 0x02, 0x0c, 0x9e, 0x0d, 0x02, 0xfa, +0x04, 0x44, 0x62, 0x65, 0x65, 0x6e, 0xd8, 0x01, 0x15, 0x2c, +0x83, 0x08, 0x08, 0x23, 0x02, 0x04, 0x87, 0x09, 0x32, 0x74, +0x6f, 0x70, 0x53, 0x0a, 0x41, 0x63, 0x6f, 0x72, 0x6e, 0x48, +0x00, 0x05, 0xf1, 0x00, 0x24, 0x3b, 0x20, 0x84, 0x01, 0x02, +0x3f, 0x01, 0x13, 0x28, 0xbf, 0x06, 0x63, 0x75, 0x73, 0x65, +0x20, 0x6f, 0x72, 0x44, 0x01, 0x17, 0x29, 0x47, 0x05, 0x09, +0x71, 0x05, 0x41, 0x2e, 0x20, 0x0a, 0x49, 0x90, 0x06, 0x03, +0x7a, 0x02, 0x01, 0x3c, 0x07, 0x01, 0x27, 0x00, 0x15, 0x27, +0x12, 0x09, 0x28, 0x6e, 0x64, 0x33, 0x00, 0x02, 0xb5, 0x0d, +0x21, 0x6e, 0x6f, 0x8c, 0x00, 0x00, 0x55, 0x0e, 0x0b, 0xac, +0x05, 0x01, 0x36, 0x08, 0x00, 0x31, 0x00, 0x01, 0x17, 0x00, +0xe2, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x20, 0x69, +0x6e, 0x66, 0x6f, 0x72, 0x6d, 0x5d, 0x01, 0x92, 0x6e, 0x65, +0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0xd2, 0x06, 0x32, +0x6d, 0x6f, 0x6e, 0x21, 0x07, 0x02, 0xc6, 0x04, 0x20, 0x74, +0x6f, 0x3d, 0x00, 0x63, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x79, +0x21, 0x0a, 0x01, 0xe3, 0x09, 0x20, 0x67, 0x61, 0x07, 0x05, +0x02, 0xad, 0x00, 0x11, 0x72, 0x46, 0x01, 0x05, 0xe2, 0x06, +0x05, 0x93, 0x00, 0x02, 0x48, 0x0b, 0x42, 0x73, 0x74, 0x65, +0x6e, 0xc6, 0x07, 0x05, 0x52, 0x09, 0x00, 0x19, 0x0a, 0x21, +0x68, 0x73, 0x51, 0x00, 0x71, 0x61, 0x6c, 0x72, 0x65, 0x61, +0x64, 0x79, 0x80, 0x07, 0x00, 0xa2, 0x02, 0x67, 0x75, 0x74, +0x2c, 0x20, 0x6f, 0x6e, 0x27, 0x00, 0x04, 0xb9, 0x04, 0x02, +0xb2, 0x03, 0x02, 0x6a, 0x02, 0x64, 0x69, 0x6e, 0x64, 0x69, +0x63, 0x61, 0x2c, 0x08, 0x00, 0x3d, 0x04, 0x52, 0x72, 0x6f, +0x76, 0x65, 0x73, 0xab, 0x05, 0x45, 0x72, 0x6f, 0x6e, 0x67, +0x9a, 0x00, 0x09, 0x77, 0x07, 0x74, 0x74, 0x63, 0x68, 0x20, +0x61, 0x6c, 0x6c, 0x74, 0x04, 0x58, 0x73, 0x74, 0x69, 0x6e, +0x67, 0x90, 0x00, 0x21, 0x62, 0x75, 0xd1, 0x0b, 0x02, 0xe8, +0x05, 0x02, 0x49, 0x00, 0x01, 0x8d, 0x00, 0x01, 0x92, 0x02, +0x0e, 0x91, 0x00, 0x60, 0x72, 0x65, 0x76, 0x65, 0x61, 0x6c, +0x14, 0x09, 0x52, 0x77, 0x72, 0x69, 0x74, 0x74, 0xda, 0x0f, +0x43, 0x72, 0x65, 0x64, 0x29, 0xba, 0x0c, 0x2f, 0x69, 0x73, +0x05, 0x01, 0x01, 0x01, 0x97, 0x00, 0x04, 0x20, 0x05, 0x0e, +0xf8, 0x01, 0x51, 0x64, 0x65, 0x63, 0x69, 0x64, 0x5d, 0x08, +0x10, 0x67, 0xc8, 0x09, 0x21, 0x75, 0x70, 0xf2, 0x06, 0x20, +0x6c, 0x65, 0xa6, 0x05, 0x15, 0x2c, 0x83, 0x01, 0x20, 0x73, +0x65, 0x5b, 0x06, 0x41, 0x20, 0x53, 0x6f, 0x6c, 0x2f, 0x10, +0x03, 0x8b, 0x00, 0x02, 0x79, 0x04, 0x5b, 0x63, 0x74, 0x75, +0x61, 0x6c, 0x92, 0x01, 0x41, 0x2e, 0x20, 0x41, 0x74, 0xd0, +0x01, 0x02, 0x67, 0x05, 0x14, 0x2c, 0x2d, 0x02, 0x32, 0x6c, +0x79, 0x2d, 0x7f, 0x0b, 0x02, 0x08, 0x03, 0x0e, 0x25, 0x06, +0x00, 0xb6, 0x07, 0x69, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, +0x38, 0x05, 0x00, 0x10, 0x09, 0x1f, 0x6e, 0x44, 0x00, 0x03, +0x0f, 0x32, 0x00, 0x05, 0x02, 0xfd, 0x00, 0x00, 0x53, 0x0d, +0x63, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0xd0, 0x03, 0x21, +0x6d, 0x69, 0xcf, 0x03, 0x0c, 0x3c, 0x00, 0x00, 0x29, 0x00, +0x04, 0x3a, 0x00, 0x40, 0x2e, 0x20, 0x49, 0x6e, 0x1b, 0x04, +0x01, 0xcb, 0x00, 0x37, 0x2c, 0x20, 0x61, 0x1c, 0x00, 0x01, +0xb4, 0x05, 0x10, 0x73, 0x2e, 0x0a, 0x02, 0x45, 0x04, 0x03, +0xc7, 0x08, 0x14, 0x64, 0x57, 0x02, 0x01, 0x62, 0x04, 0x1f, +0x64, 0x90, 0x01, 0x0a, 0x06, 0xc1, 0x02, 0x04, 0x71, 0x0a, +0x85, 0x28, 0x6a, 0x75, 0x73, 0x74, 0x20, 0x61, 0x73, 0x19, +0x09, 0x02, 0x75, 0x04, 0x0f, 0x8d, 0x03, 0x00, 0x12, 0x29, +0xc4, 0x00, 0x01, 0x28, 0x0e, 0x3f, 0x65, 0x78, 0x74, 0x8e, +0x00, 0x02, 0x11, 0x5f, 0x89, 0x08, 0x11, 0x5f, 0x63, 0x04, +0x02, 0x8f, 0x00, 0x01, 0xc5, 0x10, 0x41, 0x72, 0x64, 0x65, +0x72, 0x71, 0x03, 0x02, 0x87, 0x02, 0x3d, 0x75, 0x69, 0x73, +0x8a, 0x00, 0x06, 0x65, 0x11, 0x04, 0xaf, 0x01, 0x30, 0x20, +0x6f, 0x6e, 0x05, 0x07, 0x33, 0x28, 0x41, 0x6c, 0xec, 0x01, +0x03, 0xd9, 0x0b, 0x72, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, +0x62, 0x5b, 0x00, 0x13, 0x73, 0x75, 0x08, 0x30, 0x32, 0x2e, +0x31, 0xce, 0x02, 0x02, 0xa7, 0x05, 0x51, 0x61, 0x76, 0x61, +0x69, 0x6c, 0x44, 0x07, 0x13, 0x29, 0x7d, 0x08, 0x17, 0x32, +0x7d, 0x08, 0x50, 0x70, 0x61, 0x72, 0x61, 0x6d, 0xcc, 0x0a, +0x00, 0x7f, 0x08, 0x00, 0xdb, 0x07, 0x06, 0x12, 0x00, 0x01, +0xcd, 0x03, 0x06, 0x3f, 0x00, 0x06, 0x93, 0x00, 0xe2, 0x60, +0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, +0x20, 0x6f, 0x70, 0x87, 0x07, 0x12, 0x6e, 0x1a, 0x00, 0xf0, +0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, +0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, +0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x59, 0x06, 0x60, 0x5f, +0x20, 0x0a, 0x53, 0x69, 0x7a, 0x46, 0x08, 0x00, 0x30, 0x05, +0x00, 0xb2, 0x00, 0x04, 0x48, 0x08, 0x01, 0xb0, 0x08, 0x21, +0x72, 0x65, 0x71, 0x00, 0x43, 0x32, 0x20, 0x78, 0x20, 0x3a, +0x00, 0x25, 0x20, 0x78, 0x3b, 0x00, 0x05, 0xeb, 0x12, 0x20, +0x65, 0x72, 0x3d, 0x00, 0x00, 0x98, 0x0a, 0x20, 0x77, 0x6f, +0x0e, 0x00, 0x00, 0xf6, 0x05, 0x00, 0x8b, 0x01, 0x03, 0x10, +0x00, 0x07, 0xfe, 0x05, 0x45, 0x5f, 0x4e, 0x6f, 0x2e, 0xe8, +0x05, 0x4b, 0x5f, 0x20, 0x0a, 0x4e, 0xfa, 0x05, 0x23, 0x74, +0x6f, 0xf1, 0x0e, 0x25, 0x69, 0x6e, 0xc4, 0x05, 0x01, 0xff, +0x11, 0x02, 0x13, 0x0e, 0x10, 0x62, 0xa0, 0x06, 0x00, 0xa1, +0x02, 0x14, 0x6c, 0x35, 0x06, 0x11, 0x2c, 0xa9, 0x06, 0x00, +0xef, 0x11, 0x20, 0x67, 0x65, 0x3f, 0x0d, 0x00, 0x2a, 0x01, +0x15, 0x74, 0x36, 0x0a, 0xf2, 0x04, 0x20, 0x68, 0x79, 0x70, +0x68, 0x65, 0x6e, 0x2c, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, +0x60, 0x32, 0x2d, 0x36, 0x27, 0x25, 0x02, 0x05, 0x2c, 0x0c, +0x03, 0x1c, 0x0b, 0x1f, 0x6e, 0x88, 0x00, 0x05, 0x19, 0x6f, +0x88, 0x00, 0x00, 0x4f, 0x01, 0x02, 0xdd, 0x03, 0x02, 0x74, +0x02, 0x02, 0x16, 0x0b, 0x42, 0x6f, 0x6e, 0x6c, 0x79, 0x13, +0x0f, 0x00, 0xf3, 0x01, 0x14, 0x66, 0xbd, 0x0b, 0x05, 0x96, +0x08, 0x0f, 0xef, 0x06, 0x0c, 0x33, 0x3b, 0x20, 0x61, 0x46, +0x09, 0x10, 0x75, 0xdb, 0x00, 0x01, 0x29, 0x0f, 0x30, 0x66, +0x66, 0x65, 0x91, 0x04, 0x02, 0x2b, 0x00, 0x04, 0x10, 0x08, +0x03, 0xdb, 0x13, 0x28, 0x61, 0x6c, 0x94, 0x0b, 0x03, 0x1f, +0x05, 0x60, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x83, 0x00, +0x02, 0xa6, 0x09, 0x26, 0x6c, 0x6c, 0xdf, 0x05, 0x62, 0x69, +0x6e, 0x70, 0x75, 0x74, 0x73, 0x6d, 0x14, 0x21, 0x75, 0x74, +0x0c, 0x00, 0x90, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x20, +0x0a, 0x00, +}; +const unsigned short help_text_len = 5427; const char quick_help_text[] = "Find the hidden balls in the box by bouncing laser beams off them."; diff --git a/apps/plugins/puzzles/help/bridges.c b/apps/plugins/puzzles/help/bridges.c index 6a7f301f1a..ae270b4f18 100644 --- a/apps/plugins/puzzles/help/bridges.c +++ b/apps/plugins/puzzles/help/bridges.c @@ -1,144 +1,321 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 5211 comp 3117 ratio 0.598158 level 11 saved 2094 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 26: Bridges " -"\n" -"You have a set of islands distributed across the playing area. " -"Each island contains a number. Your aim is to connect the islands " -"together with bridges, in such a way that: " -"\n" -"- Bridges run horizontally or vertically. " -"\n" -"- The number of bridges terminating at any island is equal to the " -"number written in that island. " -"\n" -"- Two bridges may run in parallel between the same two islands, " -"but no more than two may do so. " -"\n" -"- No bridge crosses another bridge. " -"\n" -"- All the islands are connected together. " -"\n" -"There are some configurable alternative modes, which involve " -"changing the parallel-bridge limit to something other than 2, and " -"introducing the additional constraint that no sequence of bridges " -"may form a loop from one island back to the same island. The rules " -"stated above are the default ones. " -"\n" -"Credit for this puzzle goes to Nikoli [12]. " -"\n" -"Bridges was contributed to this collection by James Harvey. " -"\n" -"[12] http://www.nikoli.co.jp/en/puzzles/hashiwokakero.html (beware " -"of Flash) " -"\n" -"\n#26.1 Bridges controls " -"\n" -"To place a bridge between two islands, click the mouse down on one " -"island and drag it towards the other. You do not need to drag all " -"the way to the other island; you only need to move the mouse far " -"enough for the intended bridge direction to be unambiguous. (So you " -"can keep the mouse near the starting island and conveniently throw " -"bridges out from it in many directions.) " -"\n" -"Doing this again when a bridge is already present will add another " -"parallel bridge. If there are already as many bridges between the " -"two islands as permitted by the current game rules (i.e. two by " -"default), the same dragging action will remove all of them. " -"\n" -"If you want to remind yourself that two islands definitely _do not_ " -"have a bridge between them, you can right-drag between them in the " -"same way to draw a `non-bridge' marker. " -"\n" -"If you think you have finished with an island (i.e. you have placed " -"all its bridges and are confident that they are in the right " -"places), you can mark the island as finished by left-clicking on it. " -"This will highlight it and all the bridges connected to it, and you " -"will be prevented from accidentally modifying any of those bridges " -"in future. Left-clicking again on a highlighted island will unmark " -"it and restore your ability to modify it. " -"\n" -"You can also use the cursor keys to move around the grid: if " -"possible the cursor will always move orthogonally, otherwise it " -"will move towards the nearest island to the indicated direction. " -"Holding Control and pressing a cursor key will lay a bridge in that " -"direction (if available); Shift and a cursor key will lay a `non-\n" -"bridge' marker. Pressing the return key followed by a cursor key " -"will also lay a bridge in that direction. " -"\n" -"You can mark an island as finished by pressing the space bar or by " -"pressing the return key twice. " -"\n" -"By pressing a number key, you can jump to the nearest island with " -"that number. Letters `a', ..., `f' count as 10, ..., 15 and `0' as " -"16. " -"\n" -"Violations of the puzzle rules will be marked in red: " -"\n" -"- An island with too many bridges will be highlighted in red. " -"\n" -"- An island with too few bridges will be highlighted in red if it " -"is definitely an error (as opposed to merely not being finished " -"yet): if adding enough bridges would involve having to cross " -"another bridge or remove a non-bridge marker, or if the island " -"has been highlighted as complete. " -"\n" -"- A group of islands and bridges may be highlighted in red if it " -"is a closed subset of the puzzle with no way to connect it to " -"the rest of the islands. For example, if you directly connect " -"two 1s together with a bridge and they are not the only two " -"islands on the grid, they will light up red to indicate that " -"such a group cannot be contained in any valid solution. " -"\n" -"- If you have selected the (non-default) option to disallow loops " -"in the solution, a group of bridges which forms a loop will be " -"highlighted. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#26.2 Bridges parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Difficulty level of puzzle. " -"\n" -"_Allow loops_ " -"\n" -"This is set by default. If cleared, puzzles will be generated in " -"such a way that they are always soluble without creating a loop, " -"and solutions which do involve a loop will be disallowed. " -"\n" -"_Max. bridges per direction_ " -"\n" -"Maximum number of bridges in any particular direction. The " -"default is 2, but you can change it to 1, 3 or 4. In general, " -"fewer is easier. " -"\n" -"_%age of island squares_ " -"\n" -"Gives a rough percentage of islands the generator will try and " -"lay before finishing the puzzle. Certain layouts will not manage " -"to lay enough islands; this is an upper bound. " -"\n" -"_Expansion factor (%age)_ " -"\n" -"The grid generator works by picking an existing island at random " -"(after first creating an initial island somewhere). It then " -"decides on a direction (at random), and then works out how far " -"it could extend before creating another island. This parameter " -"determines how likely it is to extend as far as it can, rather " -"than choosing somewhere closer. " -"\n" -"High expansion factors usually mean easier puzzles with fewer " -"possible islands; low expansion factors can create lots of " -"tightly-packed islands. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x4a, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x36, 0x3a, 0x20, 0x42, 0x72, 0x69, 0x64, 0x67, +0x65, 0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, +0x66, 0x20, 0x69, 0x73, 0x6c, 0x61, 0x6e, 0x64, 0x73, 0x20, +0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, +0x64, 0x20, 0x61, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x74, +0x68, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, +0x20, 0x61, 0x72, 0x65, 0x61, 0x2e, 0x20, 0x45, 0x61, 0x63, +0x68, 0x32, 0x00, 0xf0, 0x13, 0x20, 0x63, 0x6f, 0x6e, 0x74, +0x61, 0x69, 0x6e, 0x73, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, +0x62, 0x65, 0x72, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, +0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x22, +0x00, 0x40, 0x6e, 0x65, 0x63, 0x74, 0x48, 0x00, 0x05, 0x67, +0x00, 0xf2, 0x00, 0x74, 0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, +0x72, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x62, 0x98, 0x00, +0xf5, 0x09, 0x2c, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x75, 0x63, +0x68, 0x20, 0x61, 0x20, 0x77, 0x61, 0x79, 0x20, 0x74, 0x68, +0x61, 0x74, 0x3a, 0x20, 0x0a, 0x2d, 0xb8, 0x00, 0x90, 0x72, +0x75, 0x6e, 0x20, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x74, 0x00, +0xd0, 0x6c, 0x6c, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x76, 0x65, +0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0x10, 0x2e, 0x2b, 0x00, +0x33, 0x54, 0x68, 0x65, 0x88, 0x00, 0x00, 0xd6, 0x00, 0x13, +0x62, 0x39, 0x00, 0x81, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, +0x61, 0x74, 0xc3, 0x00, 0x53, 0x74, 0x20, 0x61, 0x6e, 0x79, +0x8a, 0x00, 0x00, 0xa3, 0x00, 0x50, 0x65, 0x71, 0x75, 0x61, +0x6c, 0xa9, 0x00, 0x16, 0x74, 0x3c, 0x00, 0xa1, 0x77, 0x72, +0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x86, 0x00, +0x03, 0x2e, 0x00, 0x02, 0x62, 0x00, 0x25, 0x77, 0x6f, 0x58, +0x00, 0x61, 0x6d, 0x61, 0x79, 0x20, 0x72, 0x75, 0x27, 0x00, +0xf1, 0x01, 0x70, 0x61, 0x72, 0x61, 0x6c, 0x6c, 0x65, 0x6c, +0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x4e, 0x00, +0x84, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x74, 0x77, 0x6f, 0xf8, +0x00, 0xd0, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6e, 0x6f, +0x20, 0x6d, 0x6f, 0x72, 0x65, 0x5a, 0x00, 0x10, 0x6e, 0x1e, +0x00, 0x01, 0x47, 0x00, 0x51, 0x64, 0x6f, 0x20, 0x73, 0x6f, +0x61, 0x00, 0x14, 0x4e, 0x60, 0x00, 0x11, 0x20, 0x80, 0x01, +0x60, 0x65, 0x73, 0x20, 0x61, 0x6e, 0x6f, 0x2d, 0x01, 0x03, +0x17, 0x00, 0x01, 0x25, 0x00, 0x38, 0x41, 0x6c, 0x6c, 0x51, +0x01, 0x00, 0x99, 0x01, 0x04, 0x69, 0x01, 0x25, 0x65, 0x64, +0x5f, 0x01, 0x81, 0x2e, 0x20, 0x0a, 0x54, 0x68, 0x65, 0x72, +0x65, 0x1f, 0x00, 0x31, 0x73, 0x6f, 0x6d, 0x24, 0x00, 0xf0, +0x00, 0x66, 0x69, 0x67, 0x75, 0x72, 0x61, 0x62, 0x6c, 0x65, +0x20, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x17, 0x01, 0x60, 0x76, +0x65, 0x20, 0x6d, 0x6f, 0x64, 0x82, 0x01, 0x30, 0x77, 0x68, +0x69, 0xdc, 0x01, 0xc0, 0x6e, 0x76, 0x6f, 0x6c, 0x76, 0x65, +0x20, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x35, 0x01, 0x35, 0x74, +0x68, 0x65, 0xe2, 0x00, 0x13, 0x2d, 0x9e, 0x00, 0x81, 0x6c, +0x69, 0x6d, 0x69, 0x74, 0x20, 0x74, 0x6f, 0x59, 0x00, 0x20, +0x74, 0x68, 0x27, 0x00, 0x01, 0xa7, 0x00, 0x02, 0xd8, 0x00, +0x31, 0x32, 0x2c, 0x20, 0x60, 0x01, 0x74, 0x6e, 0x74, 0x72, +0x6f, 0x64, 0x75, 0x63, 0x45, 0x00, 0xa0, 0x61, 0x64, 0x64, +0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x8b, 0x00, 0x70, +0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x32, 0x00, 0x01, +0x17, 0x01, 0xb9, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, +0x65, 0x20, 0x6f, 0x66, 0x64, 0x01, 0xf4, 0x05, 0x66, 0x6f, +0x72, 0x6d, 0x20, 0x61, 0x20, 0x6c, 0x6f, 0x6f, 0x70, 0x20, +0x66, 0x72, 0x6f, 0x6d, 0x20, 0x6f, 0x6e, 0x65, 0xc2, 0x01, +0x75, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x74, 0x6f, 0x70, 0x01, +0x04, 0xac, 0x01, 0x01, 0x0b, 0x02, 0x91, 0x72, 0x75, 0x6c, +0x65, 0x73, 0x20, 0x73, 0x74, 0x61, 0xd0, 0x02, 0x31, 0x62, +0x6f, 0x76, 0x0b, 0x01, 0x01, 0x2c, 0x00, 0x70, 0x64, 0x65, +0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, 0x00, 0xd0, 0x73, 0x2e, +0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x20, 0x66, +0x6f, 0xc0, 0x00, 0xd1, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, +0x7a, 0x6c, 0x65, 0x20, 0x67, 0x6f, 0x65, 0xc5, 0x02, 0xe4, +0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x20, 0x5b, 0x31, 0x32, +0x5d, 0x2e, 0x20, 0x0a, 0x91, 0x02, 0x30, 0x77, 0x61, 0x73, +0xc7, 0x00, 0x04, 0x32, 0x03, 0x02, 0x87, 0x00, 0x10, 0x69, +0x14, 0x00, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0xe8, 0x00, 0xf0, +0x00, 0x20, 0x62, 0x79, 0x20, 0x4a, 0x61, 0x6d, 0x65, 0x73, +0x20, 0x48, 0x61, 0x72, 0x76, 0x65, 0xa5, 0x02, 0x00, 0x44, +0x00, 0xd1, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, +0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5b, 0x00, 0xa2, 0x2e, 0x63, +0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x7a, 0x00, +0xf1, 0x0c, 0x73, 0x2f, 0x68, 0x61, 0x73, 0x68, 0x69, 0x77, +0x6f, 0x6b, 0x61, 0x6b, 0x65, 0x72, 0x6f, 0x2e, 0x68, 0x74, +0x6d, 0x6c, 0x20, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0x1f, +0x01, 0xe3, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x20, 0x0a, +0x0a, 0x23, 0x32, 0x36, 0x2e, 0x31, 0x23, 0x03, 0x03, 0x8e, +0x00, 0x70, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x6f, 0xb6, +0x03, 0x43, 0x63, 0x65, 0x20, 0x61, 0x4b, 0x01, 0x04, 0x9a, +0x02, 0x0a, 0x91, 0x02, 0x30, 0x63, 0x6c, 0x69, 0x40, 0x01, +0x10, 0x68, 0x02, 0x02, 0xb7, 0x75, 0x73, 0x65, 0x20, 0x64, +0x6f, 0x77, 0x6e, 0x20, 0x6f, 0x6e, 0x62, 0x01, 0x01, 0xc8, +0x01, 0x51, 0x64, 0x72, 0x61, 0x67, 0x20, 0xef, 0x01, 0x41, +0x77, 0x61, 0x72, 0x64, 0x15, 0x04, 0x00, 0xee, 0x01, 0x03, +0xef, 0x03, 0x00, 0xbe, 0x02, 0x61, 0x6e, 0x6f, 0x74, 0x20, +0x6e, 0x65, 0x05, 0x01, 0x02, 0x2e, 0x00, 0x12, 0x61, 0xa3, +0x02, 0x02, 0xcb, 0x03, 0x16, 0x6f, 0x32, 0x00, 0x03, 0x57, +0x00, 0xa5, 0x3b, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6f, 0x6e, +0x6c, 0x79, 0x37, 0x00, 0x47, 0x6d, 0x6f, 0x76, 0x65, 0x8b, +0x00, 0xa3, 0x66, 0x61, 0x72, 0x20, 0x65, 0x6e, 0x6f, 0x75, +0x67, 0x68, 0x97, 0x01, 0x10, 0x65, 0x4f, 0x02, 0x54, 0x65, +0x6e, 0x64, 0x65, 0x64, 0xd3, 0x00, 0x32, 0x64, 0x69, 0x72, +0x68, 0x01, 0x00, 0x3f, 0x00, 0xf1, 0x04, 0x62, 0x65, 0x20, +0x75, 0x6e, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, +0x73, 0x2e, 0x20, 0x28, 0x53, 0x6f, 0x64, 0x00, 0x87, 0x63, +0x61, 0x6e, 0x20, 0x6b, 0x65, 0x65, 0x70, 0x5b, 0x00, 0x31, +0x6e, 0x65, 0x61, 0x51, 0x00, 0x00, 0x1b, 0x02, 0x10, 0x72, +0x17, 0x04, 0x04, 0xec, 0x00, 0x03, 0xd3, 0x04, 0x80, 0x76, +0x65, 0x6e, 0x69, 0x65, 0x6e, 0x74, 0x6c, 0x85, 0x04, 0x35, +0x72, 0x6f, 0x77, 0x8d, 0x02, 0x32, 0x6f, 0x75, 0x74, 0x81, +0x02, 0x20, 0x69, 0x74, 0xf5, 0x03, 0x46, 0x6d, 0x61, 0x6e, +0x79, 0x84, 0x00, 0xa2, 0x73, 0x2e, 0x29, 0x20, 0x0a, 0x44, +0x6f, 0x69, 0x6e, 0x67, 0x06, 0x02, 0xa6, 0x61, 0x67, 0x61, +0x69, 0x6e, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x84, 0x01, 0x00, +0x17, 0x00, 0xf0, 0x04, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, +0x20, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x20, 0x77, +0x69, 0x6c, 0x6c, 0x18, 0x03, 0x04, 0xe7, 0x03, 0x05, 0x69, +0x03, 0x05, 0xf0, 0x03, 0x44, 0x49, 0x66, 0x20, 0x74, 0xc7, +0x03, 0x05, 0x3f, 0x00, 0x21, 0x61, 0x73, 0x7f, 0x00, 0x04, +0x9b, 0x00, 0x07, 0x78, 0x04, 0x09, 0x73, 0x04, 0x00, 0x28, +0x00, 0x10, 0x70, 0xff, 0x04, 0x20, 0x74, 0x74, 0x37, 0x01, +0x11, 0x79, 0x20, 0x00, 0x40, 0x63, 0x75, 0x72, 0x72, 0x7b, +0x00, 0x34, 0x67, 0x61, 0x6d, 0x24, 0x03, 0x51, 0x28, 0x69, +0x2e, 0x65, 0x2e, 0x39, 0x00, 0x24, 0x62, 0x79, 0x1c, 0x03, +0x25, 0x29, 0x2c, 0x56, 0x03, 0x01, 0xd3, 0x01, 0x11, 0x67, +0x40, 0x05, 0x01, 0xec, 0x00, 0x02, 0xb6, 0x00, 0x20, 0x72, +0x65, 0xb3, 0x01, 0x01, 0xea, 0x01, 0x11, 0x6f, 0xa4, 0x00, +0x61, 0x6d, 0x2e, 0x20, 0x0a, 0x49, 0x66, 0x76, 0x01, 0x30, +0x77, 0x61, 0x6e, 0x2f, 0x02, 0x00, 0x24, 0x00, 0x30, 0x69, +0x6e, 0x64, 0x13, 0x00, 0x51, 0x72, 0x73, 0x65, 0x6c, 0x66, +0xec, 0x03, 0x08, 0xa1, 0x00, 0x00, 0x6d, 0x00, 0x92, 0x69, +0x6e, 0x69, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x5f, 0x48, 0x02, +0x10, 0x5f, 0x9d, 0x06, 0x0e, 0xb9, 0x02, 0x01, 0x61, 0x00, +0x15, 0x2c, 0xd3, 0x01, 0x60, 0x72, 0x69, 0x67, 0x68, 0x74, +0x2d, 0x98, 0x00, 0x09, 0x21, 0x00, 0x25, 0x20, 0x69, 0x7c, +0x05, 0x01, 0x7c, 0x02, 0x03, 0x90, 0x02, 0x83, 0x77, 0x20, +0x61, 0x20, 0x60, 0x6e, 0x6f, 0x6e, 0xbe, 0x04, 0x86, 0x27, +0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x72, 0xb0, 0x00, 0x00, +0xc2, 0x04, 0x34, 0x6b, 0x20, 0x79, 0x1a, 0x07, 0x00, 0x94, +0x00, 0x42, 0x73, 0x68, 0x65, 0x64, 0xa2, 0x06, 0x23, 0x61, +0x6e, 0xaf, 0x00, 0x02, 0x28, 0x01, 0x05, 0x27, 0x00, 0x02, +0x63, 0x03, 0x11, 0x64, 0x02, 0x01, 0x35, 0x69, 0x74, 0x73, +0x8d, 0x01, 0x01, 0x4b, 0x02, 0x13, 0x72, 0x6f, 0x05, 0x22, +0x64, 0x65, 0xe3, 0x04, 0x01, 0x03, 0x07, 0x10, 0x79, 0x18, +0x00, 0x03, 0xa4, 0x00, 0x02, 0xc3, 0x00, 0x02, 0x44, 0x00, +0x25, 0x73, 0x29, 0xda, 0x00, 0x01, 0x9b, 0x00, 0x07, 0xde, +0x05, 0x33, 0x20, 0x61, 0x73, 0x8f, 0x00, 0x02, 0xc2, 0x01, +0x51, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0xb8, 0x03, 0x01, 0x74, +0x05, 0x40, 0x6e, 0x20, 0x69, 0x74, 0xee, 0x04, 0x22, 0x69, +0x73, 0x95, 0x01, 0x51, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x59, +0x00, 0x20, 0x69, 0x74, 0x89, 0x00, 0x04, 0x89, 0x03, 0x04, +0x9d, 0x00, 0x09, 0x28, 0x06, 0x31, 0x20, 0x69, 0x74, 0xa9, +0x05, 0x02, 0xb3, 0x01, 0x20, 0x69, 0x6c, 0xc0, 0x06, 0x00, +0x9a, 0x02, 0x62, 0x76, 0x65, 0x6e, 0x74, 0x65, 0x64, 0xec, +0x02, 0x62, 0x61, 0x63, 0x63, 0x69, 0x64, 0x65, 0x73, 0x07, +0x00, 0x28, 0x06, 0x22, 0x69, 0x66, 0x0c, 0x08, 0x22, 0x6e, +0x79, 0xf6, 0x01, 0x25, 0x6f, 0x73, 0x5c, 0x00, 0x00, 0xd9, +0x00, 0x98, 0x66, 0x75, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x20, +0x4c, 0xa7, 0x00, 0x01, 0x0d, 0x03, 0x01, 0x59, 0x04, 0x16, +0x61, 0xa1, 0x00, 0x23, 0x65, 0x64, 0xe2, 0x00, 0x02, 0x7a, +0x00, 0x20, 0x75, 0x6e, 0xf9, 0x00, 0x04, 0xb6, 0x00, 0x40, +0x72, 0x65, 0x73, 0x74, 0x26, 0x07, 0x11, 0x79, 0x4e, 0x08, +0x50, 0x62, 0x69, 0x6c, 0x69, 0x74, 0xcc, 0x01, 0x03, 0x81, +0x00, 0x01, 0xf4, 0x00, 0x23, 0x0a, 0x59, 0x31, 0x01, 0x84, +0x61, 0x6c, 0x73, 0x6f, 0x20, 0x75, 0x73, 0x65, 0xdd, 0x02, +0x85, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x73, 0x55, +0x04, 0x61, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1f, 0x00, +0xf8, 0x01, 0x67, 0x72, 0x69, 0x64, 0x3a, 0x20, 0x69, 0x66, +0x20, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x35, 0x00, +0x03, 0x8c, 0x03, 0x52, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x39, +0x00, 0x80, 0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e, +0xfc, 0x00, 0x12, 0x2c, 0xc0, 0x04, 0x62, 0x77, 0x69, 0x73, +0x65, 0x20, 0x69, 0xb8, 0x03, 0x01, 0x25, 0x00, 0x07, 0x15, +0x05, 0x02, 0x5a, 0x04, 0x24, 0x65, 0x73, 0x32, 0x08, 0x04, +0xf9, 0x04, 0x50, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x85, 0x06, +0x06, 0x2e, 0x04, 0x60, 0x2e, 0x20, 0x48, 0x6f, 0x6c, 0x64, +0x1b, 0x01, 0x12, 0x43, 0xb4, 0x05, 0x00, 0xf6, 0x00, 0x01, +0x15, 0x04, 0x11, 0x73, 0x30, 0x01, 0x07, 0xc8, 0x00, 0x02, +0x6b, 0x00, 0x35, 0x6c, 0x61, 0x79, 0x13, 0x03, 0x04, 0x99, +0x08, 0x07, 0x01, 0x05, 0x90, 0x28, 0x69, 0x66, 0x20, 0x61, +0x76, 0x61, 0x69, 0x6c, 0xdb, 0x07, 0x71, 0x29, 0x3b, 0x20, +0x53, 0x68, 0x69, 0x66, 0x4a, 0x01, 0x0f, 0x4b, 0x00, 0x03, +0x04, 0x0f, 0x03, 0x1c, 0x0a, 0x10, 0x03, 0x13, 0x50, 0x82, +0x00, 0x02, 0xa1, 0x02, 0x40, 0x65, 0x74, 0x75, 0x72, 0x3e, +0x05, 0x00, 0x84, 0x07, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x82, +0x02, 0x0e, 0x52, 0x00, 0x01, 0x82, 0x01, 0x0f, 0xa2, 0x00, +0x0c, 0x00, 0xb0, 0x01, 0x08, 0xe1, 0x02, 0x2f, 0x61, 0x6e, +0xe0, 0x02, 0x04, 0x18, 0x70, 0x82, 0x00, 0x20, 0x73, 0x70, +0xc4, 0x06, 0x66, 0x62, 0x61, 0x72, 0x20, 0x6f, 0x72, 0x1d, +0x00, 0x0e, 0x9f, 0x00, 0x50, 0x74, 0x77, 0x69, 0x63, 0x65, +0x9b, 0x07, 0x06, 0x23, 0x00, 0x04, 0x93, 0x0a, 0x01, 0xa7, +0x00, 0x06, 0x5e, 0x03, 0x7e, 0x6a, 0x75, 0x6d, 0x70, 0x20, +0x74, 0x6f, 0xae, 0x01, 0x02, 0xec, 0x03, 0x01, 0xb6, 0x00, +0x05, 0xcc, 0x0a, 0xf0, 0x0c, 0x4c, 0x65, 0x74, 0x74, 0x65, +0x72, 0x73, 0x20, 0x60, 0x61, 0x27, 0x2c, 0x20, 0x2e, 0x2e, +0x2e, 0x2c, 0x20, 0x60, 0x66, 0x27, 0x20, 0x63, 0x6f, 0x75, +0x6e, 0x74, 0xb7, 0x00, 0x23, 0x31, 0x30, 0x16, 0x00, 0x21, +0x31, 0x35, 0x6b, 0x01, 0x31, 0x60, 0x30, 0x27, 0x17, 0x00, +0x91, 0x36, 0x2e, 0x20, 0x0a, 0x56, 0x69, 0x6f, 0x6c, 0x61, +0x18, 0x06, 0x03, 0x1d, 0x05, 0x02, 0x54, 0x08, 0x03, 0x71, +0x05, 0x04, 0x6d, 0x03, 0x02, 0x78, 0x01, 0x10, 0x64, 0x2f, +0x01, 0x41, 0x72, 0x65, 0x64, 0x3a, 0xdc, 0x09, 0x1a, 0x6e, +0x90, 0x00, 0x27, 0x6f, 0x6f, 0xea, 0x05, 0x06, 0x3a, 0x00, +0x06, 0x48, 0x03, 0x05, 0x3f, 0x00, 0x1f, 0x2e, 0x3f, 0x00, +0x04, 0x3f, 0x66, 0x65, 0x77, 0x3e, 0x00, 0x10, 0x31, 0x20, +0x69, 0x66, 0xd8, 0x06, 0x08, 0x93, 0x05, 0x00, 0xa6, 0x01, +0xf3, 0x00, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x20, 0x28, 0x61, +0x73, 0x20, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0xac, 0x07, 0x51, +0x65, 0x72, 0x65, 0x6c, 0x79, 0xf6, 0x07, 0x56, 0x62, 0x65, +0x69, 0x6e, 0x67, 0xc2, 0x01, 0x41, 0x79, 0x65, 0x74, 0x29, +0x61, 0x03, 0x20, 0x61, 0x64, 0xdf, 0x02, 0x03, 0xc3, 0x07, +0x06, 0x80, 0x00, 0x44, 0x6f, 0x75, 0x6c, 0x64, 0x62, 0x0a, +0x00, 0x45, 0x05, 0x01, 0xcd, 0x01, 0x11, 0x6f, 0xed, 0x0a, +0x0b, 0xeb, 0x0a, 0x00, 0x7f, 0x03, 0x05, 0x64, 0x06, 0x16, +0x20, 0xbd, 0x05, 0x03, 0xac, 0x02, 0x10, 0x2c, 0x1f, 0x00, +0x28, 0x69, 0x66, 0x2a, 0x05, 0x20, 0x68, 0x61, 0x09, 0x07, +0x29, 0x65, 0x6e, 0xde, 0x00, 0x01, 0xa5, 0x09, 0x53, 0x6d, +0x70, 0x6c, 0x65, 0x74, 0x3c, 0x0b, 0x66, 0x20, 0x67, 0x72, +0x6f, 0x75, 0x70, 0xf7, 0x0c, 0x01, 0xb0, 0x05, 0x08, 0x71, +0x0a, 0x0f, 0x20, 0x01, 0x0c, 0x00, 0x00, 0x03, 0x11, 0x6c, +0x09, 0x01, 0x6a, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0xe0, +0x01, 0x02, 0x77, 0x01, 0x20, 0x6e, 0x6f, 0x7d, 0x06, 0x07, +0x00, 0x0d, 0x02, 0x3e, 0x09, 0x03, 0xb7, 0x02, 0x10, 0x73, +0x34, 0x00, 0x08, 0xc1, 0x0b, 0x90, 0x2e, 0x20, 0x46, 0x6f, +0x72, 0x20, 0x65, 0x78, 0x61, 0xa8, 0x00, 0x31, 0x2c, 0x20, +0x69, 0x94, 0x06, 0x03, 0x3c, 0x03, 0x23, 0x6c, 0x79, 0x44, +0x00, 0x02, 0x38, 0x07, 0x1b, 0x31, 0x3f, 0x0d, 0x05, 0x73, +0x03, 0x00, 0xc6, 0x00, 0x06, 0x63, 0x06, 0x21, 0x6e, 0x6f, +0x70, 0x06, 0x01, 0x62, 0x09, 0x09, 0x70, 0x07, 0x25, 0x6f, +0x6e, 0x08, 0x05, 0x00, 0xe0, 0x07, 0x04, 0xc2, 0x03, 0x02, +0x33, 0x06, 0x41, 0x75, 0x70, 0x20, 0x72, 0xe1, 0x01, 0x05, +0xb3, 0x04, 0x01, 0x10, 0x03, 0x03, 0x97, 0x0d, 0x02, 0x39, +0x01, 0x00, 0x46, 0x03, 0x02, 0xf8, 0x01, 0x04, 0xfe, 0x0d, +0x01, 0x23, 0x01, 0x01, 0x11, 0x06, 0xa3, 0x76, 0x61, 0x6c, +0x69, 0x64, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0xf3, 0x03, 0x46, +0x2d, 0x20, 0x49, 0x66, 0x2f, 0x07, 0x30, 0x73, 0x65, 0x6c, +0x7a, 0x06, 0x02, 0x8a, 0x05, 0x10, 0x28, 0xd2, 0x01, 0x04, +0x6b, 0x08, 0x33, 0x20, 0x6f, 0x70, 0xc8, 0x09, 0x00, 0x84, +0x0e, 0x10, 0x61, 0x6c, 0x04, 0x01, 0xf0, 0x0b, 0x13, 0x73, +0x2c, 0x07, 0x05, 0x54, 0x00, 0x14, 0x2c, 0x87, 0x00, 0x07, +0x25, 0x0c, 0x02, 0xb7, 0x0c, 0x01, 0x27, 0x0c, 0x13, 0x73, +0x28, 0x0c, 0x0e, 0xe8, 0x02, 0x01, 0x1f, 0x03, 0x13, 0x28, +0x39, 0x0d, 0x03, 0xc7, 0x08, 0x00, 0xeb, 0x02, 0x52, 0x73, +0x63, 0x72, 0x69, 0x62, 0xc2, 0x00, 0x13, 0x73, 0x4c, 0x05, +0x33, 0x32, 0x2e, 0x31, 0x6c, 0x09, 0x26, 0x73, 0x6f, 0x55, +0x05, 0x14, 0x2e, 0x6f, 0x0b, 0x14, 0x32, 0x6f, 0x0b, 0x01, +0xab, 0x09, 0x20, 0x6d, 0x65, 0x22, 0x04, 0x01, 0x6a, 0x0d, +0x26, 0x73, 0x65, 0x12, 0x00, 0x01, 0x94, 0x0d, 0x06, 0x3d, +0x00, 0x01, 0x4b, 0x07, 0x01, 0x7a, 0x00, 0xb3, 0x60, 0x43, +0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0xf5, +0x00, 0x04, 0x93, 0x01, 0x40, 0x60, 0x54, 0x79, 0x70, 0x8a, +0x05, 0xf0, 0x03, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, +0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, +0x65, 0xc0, 0x00, 0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, +0xfd, 0x0b, 0x00, 0xbc, 0x01, 0x02, 0xb0, 0x00, 0x20, 0x71, +0x75, 0xc0, 0x04, 0x00, 0x2d, 0x00, 0xd5, 0x44, 0x69, 0x66, +0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x20, 0x0a, +0x0d, 0x00, 0x00, 0x2d, 0x08, 0x20, 0x76, 0x65, 0x9e, 0x09, +0x03, 0x9d, 0x02, 0x00, 0x2b, 0x00, 0x16, 0x41, 0x5d, 0x01, +0x31, 0x5f, 0x20, 0x0a, 0x39, 0x08, 0x20, 0x69, 0x73, 0x09, +0x10, 0x07, 0xfb, 0x09, 0x01, 0x75, 0x0a, 0x20, 0x63, 0x6c, +0x1f, 0x05, 0x21, 0x64, 0x2c, 0x3c, 0x00, 0x08, 0xb4, 0x04, +0x50, 0x67, 0x65, 0x6e, 0x65, 0x72, 0xcf, 0x06, 0x0a, 0xb2, +0x0f, 0x0a, 0xe5, 0x08, 0x03, 0x48, 0x07, 0x01, 0xb9, 0x01, +0x13, 0x62, 0x17, 0x03, 0x00, 0x40, 0x0b, 0x31, 0x63, 0x72, +0x65, 0x8a, 0x0f, 0x03, 0xa9, 0x01, 0x00, 0x7f, 0x08, 0x06, +0x32, 0x02, 0x04, 0xcb, 0x01, 0x24, 0x64, 0x6f, 0x23, 0x04, +0x0b, 0xd0, 0x01, 0x05, 0x1e, 0x02, 0x01, 0xcf, 0x01, 0x53, +0x5f, 0x4d, 0x61, 0x78, 0x2e, 0x06, 0x02, 0x01, 0xe8, 0x0a, +0x06, 0x6f, 0x06, 0xae, 0x5f, 0x20, 0x0a, 0x4d, 0x61, 0x78, +0x69, 0x6d, 0x75, 0x6d, 0x11, 0x10, 0x03, 0xae, 0x02, 0x00, +0xad, 0x01, 0x10, 0x74, 0x28, 0x01, 0x28, 0x61, 0x72, 0xa7, +0x06, 0x15, 0x54, 0x1e, 0x0e, 0x01, 0xed, 0x03, 0x11, 0x32, +0xb6, 0x0f, 0x04, 0x3f, 0x06, 0x02, 0x14, 0x0f, 0x13, 0x65, +0xce, 0x03, 0x40, 0x31, 0x2c, 0x20, 0x33, 0x86, 0x04, 0x53, +0x34, 0x2e, 0x20, 0x49, 0x6e, 0x17, 0x01, 0x20, 0x6c, 0x2c, +0x70, 0x05, 0x21, 0x65, 0x72, 0x5c, 0x10, 0x31, 0x61, 0x73, +0x69, 0x65, 0x0a, 0x56, 0x5f, 0x25, 0x61, 0x67, 0x65, 0x72, +0x04, 0x03, 0xba, 0x01, 0x00, 0x80, 0x01, 0x40, 0x47, 0x69, +0x76, 0x65, 0xb5, 0x02, 0x10, 0x72, 0x26, 0x05, 0x00, 0xc3, +0x00, 0x48, 0x63, 0x65, 0x6e, 0x74, 0x2d, 0x00, 0x01, 0x59, +0x08, 0x05, 0x74, 0x01, 0x04, 0xa5, 0x08, 0x31, 0x74, 0x72, +0x79, 0x39, 0x01, 0x11, 0x6c, 0xae, 0x04, 0x34, 0x66, 0x6f, +0x72, 0xb3, 0x0a, 0x03, 0x1c, 0x07, 0x05, 0xf0, 0x01, 0x30, +0x43, 0x65, 0x72, 0xa3, 0x03, 0x00, 0x29, 0x00, 0x32, 0x6f, +0x75, 0x74, 0xc4, 0x01, 0x00, 0x1d, 0x04, 0x00, 0x54, 0x06, +0x00, 0x67, 0x00, 0x11, 0x74, 0xb8, 0x07, 0x03, 0xa6, 0x05, +0x04, 0x72, 0x00, 0x32, 0x3b, 0x20, 0x74, 0x17, 0x02, 0x00, +0x00, 0x06, 0x30, 0x75, 0x70, 0x70, 0x92, 0x05, 0x31, 0x6f, +0x75, 0x6e, 0x73, 0x01, 0x60, 0x45, 0x78, 0x70, 0x61, 0x6e, +0x73, 0xb7, 0x02, 0x40, 0x66, 0x61, 0x63, 0x74, 0x1a, 0x06, +0x00, 0xdc, 0x00, 0x10, 0x29, 0x4b, 0x02, 0x03, 0x57, 0x04, +0x08, 0xac, 0x00, 0x41, 0x6f, 0x72, 0x6b, 0x73, 0xb8, 0x07, +0x02, 0x08, 0x0a, 0x01, 0x50, 0x06, 0x39, 0x78, 0x69, 0x73, +0x74, 0x0d, 0xc0, 0x74, 0x20, 0x72, 0x61, 0x6e, 0x64, 0x6f, +0x6d, 0x20, 0x28, 0x61, 0x66, 0xac, 0x12, 0x48, 0x66, 0x69, +0x72, 0x73, 0x28, 0x02, 0x20, 0x6e, 0x20, 0x8e, 0x06, 0x33, +0x69, 0x61, 0x6c, 0x32, 0x00, 0x01, 0x72, 0x10, 0x10, 0x77, +0x12, 0x0d, 0x41, 0x29, 0x2e, 0x20, 0x49, 0x72, 0x02, 0x40, +0x6e, 0x20, 0x64, 0x65, 0xa6, 0x0a, 0x11, 0x73, 0x63, 0x0a, +0x08, 0x17, 0x09, 0x05, 0x5e, 0x00, 0x24, 0x29, 0x2c, 0x21, +0x05, 0x11, 0x6e, 0x97, 0x00, 0x02, 0xce, 0x0d, 0x30, 0x68, +0x6f, 0x77, 0x69, 0x0e, 0x00, 0xd0, 0x01, 0x11, 0x63, 0x9a, +0x06, 0x20, 0x65, 0x78, 0x63, 0x0e, 0x03, 0x54, 0x01, 0x08, +0x85, 0x00, 0x08, 0xbd, 0x0e, 0x01, 0x70, 0x0b, 0x07, 0xff, +0x03, 0x32, 0x20, 0x64, 0x65, 0x64, 0x12, 0x21, 0x65, 0x73, +0x52, 0x00, 0x50, 0x6c, 0x69, 0x6b, 0x65, 0x6c, 0xa5, 0x0a, +0x02, 0x04, 0x13, 0x04, 0x55, 0x00, 0x21, 0x61, 0x73, 0x6c, +0x00, 0x21, 0x61, 0x73, 0x6f, 0x00, 0x66, 0x61, 0x6e, 0x2c, +0x20, 0x72, 0x61, 0x33, 0x11, 0x40, 0x63, 0x68, 0x6f, 0x6f, +0xb8, 0x08, 0x06, 0xdf, 0x00, 0x01, 0x67, 0x06, 0x01, 0x40, +0x02, 0x6b, 0x48, 0x69, 0x67, 0x68, 0x20, 0x65, 0x7a, 0x01, +0x52, 0x73, 0x20, 0x75, 0x73, 0x75, 0x96, 0x0b, 0x33, 0x65, +0x61, 0x6e, 0x6d, 0x02, 0x07, 0xad, 0x03, 0x22, 0x74, 0x68, +0x8a, 0x02, 0x05, 0xeb, 0x0a, 0x06, 0xdf, 0x01, 0x3e, 0x6c, +0x6f, 0x77, 0x4f, 0x00, 0x02, 0xe0, 0x02, 0x20, 0x72, 0x65, +0xf6, 0x05, 0x32, 0x6c, 0x6f, 0x74, 0xb8, 0x08, 0x00, 0x7b, +0x04, 0x75, 0x6c, 0x79, 0x2d, 0x70, 0x61, 0x63, 0x6b, 0xb0, +0x0b, 0x50, 0x73, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 5211; const char quick_help_text[] = "Connect all the islands with a network of bridges."; diff --git a/apps/plugins/puzzles/help/cube.c b/apps/plugins/puzzles/help/cube.c index 86ffbb681d..32e8dfdddf 100644 --- a/apps/plugins/puzzles/help/cube.c +++ b/apps/plugins/puzzles/help/cube.c @@ -1,58 +1,154 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2051 comp 1450 ratio 0.706972 level 11 saved 601 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 4: Cube " -"\n" -"This is another one I originally saw as a web game. This one was a " -"Java game [2], by Paul Scott. You have a grid of 16 squares, six of " -"which are blue; on one square rests a cube. Your move is to use the " -"arrow keys to roll the cube through 90 degrees so that it moves to " -"an adjacent square. If you roll the cube on to a blue square, the " -"blue square is picked up on one face of the cube; if you roll a blue " -"face of the cube on to a non-blue square, the blueness is put down " -"again. (In general, whenever you roll the cube, the two faces that " -"come into contact swap colours.) Your job is to get all six blue " -"squares on to the six faces of the cube at the same time. Count your " -"moves and try to do it in as few as possible. " -"\n" -"Unlike the original Java game, my version has an additional feature: " -"once you've mastered the game with a cube rolling on a square grid, " -"you can change to a triangular grid and roll any of a tetrahedron, " -"an octahedron or an icosahedron. " -"\n" -"[2] http://www3.sympatico.ca/paulscott/cube/cube.htm " -"\n" -"\n#4.1 Cube controls " -"\n" -"This game can be played with either the keyboard or the mouse. " -"\n" -"Left-clicking anywhere on the window will move the cube (or other " -"solid) towards the mouse pointer. " -"\n" -"The arrow keys can also used to roll the cube on its square grid in " -"the four cardinal directions. On the triangular grids, the mapping " -"of arrow keys to directions is more approximate. Vertical movement " -"is disallowed where it doesn't make sense. The four keys surrounding " -"the arrow keys on the numeric keypad (`7', `9', `1', `3') can be " -"used for diagonal movement. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#4.2 Cube parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Type of solid_ " -"\n" -"Selects the solid to roll (and hence the shape of the grid): " -"tetrahedron, cube, octahedron, or icosahedron. " -"\n" -"_Width / top_, _Height / bottom_ " -"\n" -"On a square grid, horizontal and vertical dimensions. On a " -"triangular grid, the number of triangles on the top and bottom " -"rows respectively. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x37, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x34, 0x3a, 0x20, 0x43, 0x75, 0x62, 0x65, 0x20, 0x0a, +0x54, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x20, 0x61, 0x6e, +0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x6f, 0x6e, 0x65, 0x20, +0x49, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, +0x6c, 0x79, 0x20, 0x73, 0x61, 0x77, 0x20, 0x61, 0x73, 0x20, +0x61, 0x20, 0x77, 0x65, 0x62, 0x20, 0x67, 0x61, 0x6d, 0x65, +0x2e, 0x20, 0x34, 0x00, 0x01, 0x29, 0x00, 0x11, 0x77, 0x19, +0x00, 0x41, 0x4a, 0x61, 0x76, 0x61, 0x1a, 0x00, 0xf0, 0x28, +0x20, 0x5b, 0x32, 0x5d, 0x2c, 0x20, 0x62, 0x79, 0x20, 0x50, +0x61, 0x75, 0x6c, 0x20, 0x53, 0x63, 0x6f, 0x74, 0x74, 0x2e, +0x20, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, +0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, +0x31, 0x36, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, +0x2c, 0x20, 0x73, 0x69, 0x78, 0x13, 0x00, 0xf0, 0x03, 0x77, +0x68, 0x69, 0x63, 0x68, 0x20, 0x61, 0x72, 0x65, 0x20, 0x62, +0x6c, 0x75, 0x65, 0x3b, 0x20, 0x6f, 0x6e, 0x61, 0x00, 0x03, +0x27, 0x00, 0x50, 0x20, 0x72, 0x65, 0x73, 0x74, 0x6a, 0x00, +0x41, 0x63, 0x75, 0x62, 0x65, 0x52, 0x00, 0x60, 0x72, 0x20, +0x6d, 0x6f, 0x76, 0x65, 0xb8, 0x00, 0xf1, 0x05, 0x74, 0x6f, +0x20, 0x75, 0x73, 0x65, 0x20, 0x74, 0x68, 0x65, 0x20, 0x61, +0x72, 0x72, 0x6f, 0x77, 0x20, 0x6b, 0x65, 0x79, 0x16, 0x00, +0x40, 0x72, 0x6f, 0x6c, 0x6c, 0x17, 0x00, 0x00, 0x35, 0x00, +0x00, 0x20, 0x00, 0xf1, 0x0c, 0x72, 0x6f, 0x75, 0x67, 0x68, +0x20, 0x39, 0x30, 0x20, 0x64, 0x65, 0x67, 0x72, 0x65, 0x65, +0x73, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, +0x69, 0x74, 0x4d, 0x00, 0x01, 0x35, 0x00, 0xb3, 0x61, 0x6e, +0x20, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x7c, +0x00, 0x8b, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x79, 0x6f, 0x75, +0x50, 0x00, 0x21, 0x6f, 0x6e, 0x2f, 0x00, 0x00, 0xae, 0x00, +0x04, 0xa6, 0x00, 0x10, 0x2c, 0x1e, 0x00, 0x07, 0x11, 0x00, +0x01, 0x9f, 0x00, 0x94, 0x70, 0x69, 0x63, 0x6b, 0x65, 0x64, +0x20, 0x75, 0x70, 0xd2, 0x00, 0x75, 0x66, 0x61, 0x63, 0x65, +0x20, 0x6f, 0x66, 0x4a, 0x00, 0x36, 0x3b, 0x20, 0x69, 0x60, +0x00, 0x02, 0x51, 0x00, 0x05, 0x25, 0x00, 0x0e, 0x6f, 0x00, +0x4f, 0x6e, 0x6f, 0x6e, 0x2d, 0x73, 0x00, 0x02, 0x41, 0x6e, +0x65, 0x73, 0x73, 0x70, 0x00, 0xfd, 0x15, 0x75, 0x74, 0x20, +0x64, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x67, 0x61, 0x69, 0x6e, +0x2e, 0x20, 0x28, 0x49, 0x6e, 0x20, 0x67, 0x65, 0x6e, 0x65, +0x72, 0x61, 0x6c, 0x2c, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x65, +0x76, 0x65, 0x72, 0xd0, 0x00, 0x03, 0x49, 0x00, 0x31, 0x74, +0x77, 0x6f, 0x7b, 0x00, 0x12, 0x73, 0x19, 0x01, 0xf2, 0x11, +0x63, 0x6f, 0x6d, 0x65, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x20, 0x73, 0x77, +0x61, 0x70, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x73, +0x2e, 0x29, 0x89, 0x01, 0x33, 0x6a, 0x6f, 0x62, 0x88, 0x01, +0x70, 0x67, 0x65, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0xd3, 0x01, +0x08, 0x07, 0x01, 0x12, 0x73, 0xbe, 0x00, 0x00, 0x62, 0x00, +0x00, 0x1b, 0x00, 0x02, 0x62, 0x00, 0x09, 0xde, 0x00, 0x22, +0x61, 0x74, 0x1d, 0x00, 0x00, 0x43, 0x02, 0x20, 0x74, 0x69, +0x62, 0x02, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x79, +0xe9, 0x01, 0x00, 0x9f, 0x02, 0x50, 0x64, 0x20, 0x74, 0x72, +0x79, 0x48, 0x00, 0x20, 0x64, 0x6f, 0xb3, 0x01, 0x20, 0x69, +0x6e, 0x96, 0x02, 0x21, 0x66, 0x65, 0x9d, 0x02, 0xf1, 0x01, +0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, 0x20, +0x0a, 0x55, 0x6e, 0x6c, 0x69, 0x6b, 0x10, 0x02, 0x05, 0xc5, +0x02, 0x06, 0xa1, 0x02, 0xf2, 0x01, 0x2c, 0x20, 0x6d, 0x79, +0x20, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x68, +0x61, 0x73, 0xf0, 0x01, 0x50, 0x64, 0x69, 0x74, 0x69, 0x6f, +0x28, 0x00, 0xd0, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, +0x3a, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0x7e, 0x00, 0xc0, 0x27, +0x76, 0x65, 0x20, 0x6d, 0x61, 0x73, 0x74, 0x65, 0x72, 0x65, +0x64, 0x53, 0x00, 0x02, 0xe6, 0x02, 0x43, 0x77, 0x69, 0x74, +0x68, 0x8d, 0x02, 0x01, 0x46, 0x01, 0x30, 0x69, 0x6e, 0x67, +0xe3, 0x00, 0x13, 0x61, 0xf0, 0x00, 0x01, 0xe7, 0x02, 0x11, +0x2c, 0x64, 0x01, 0xa2, 0x63, 0x61, 0x6e, 0x20, 0x63, 0x68, +0x61, 0x6e, 0x67, 0x65, 0xbf, 0x01, 0xa1, 0x74, 0x72, 0x69, +0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x25, 0x00, 0x00, +0xd6, 0x00, 0x03, 0xf8, 0x01, 0x50, 0x6e, 0x79, 0x20, 0x6f, +0x66, 0x22, 0x00, 0xb0, 0x65, 0x74, 0x72, 0x61, 0x68, 0x65, +0x64, 0x72, 0x6f, 0x6e, 0x2c, 0x9e, 0x00, 0x33, 0x6f, 0x63, +0x74, 0x0f, 0x00, 0x30, 0x20, 0x6f, 0x72, 0x11, 0x00, 0x43, +0x69, 0x63, 0x6f, 0x73, 0x12, 0x00, 0xf0, 0x16, 0x2e, 0x20, +0x0a, 0x5b, 0x32, 0x5d, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, +0x2f, 0x2f, 0x77, 0x77, 0x77, 0x33, 0x2e, 0x73, 0x79, 0x6d, +0x70, 0x61, 0x74, 0x69, 0x63, 0x6f, 0x2e, 0x63, 0x61, 0x2f, +0x70, 0x61, 0x75, 0x6c, 0x73, 0x85, 0x03, 0x10, 0x2f, 0xab, +0x00, 0x11, 0x2f, 0x3d, 0x03, 0xa1, 0x68, 0x74, 0x6d, 0x20, +0x0a, 0x0a, 0x23, 0x34, 0x2e, 0x31, 0x00, 0x04, 0x01, 0xda, +0x01, 0x42, 0x72, 0x6f, 0x6c, 0x73, 0x09, 0x04, 0x01, 0xe0, +0x00, 0x01, 0xb6, 0x00, 0x92, 0x62, 0x65, 0x20, 0x70, 0x6c, +0x61, 0x79, 0x65, 0x64, 0xee, 0x00, 0x20, 0x65, 0x69, 0x1d, +0x04, 0x00, 0x03, 0x01, 0x00, 0x60, 0x03, 0x72, 0x62, 0x6f, +0x61, 0x72, 0x64, 0x20, 0x6f, 0x10, 0x00, 0x40, 0x6d, 0x6f, +0x75, 0x73, 0x79, 0x01, 0xd0, 0x4c, 0x65, 0x66, 0x74, 0x2d, +0x63, 0x6c, 0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0xd1, 0x00, +0x42, 0x77, 0x68, 0x65, 0x72, 0xba, 0x02, 0x10, 0x68, 0x34, +0x01, 0x91, 0x6e, 0x64, 0x6f, 0x77, 0x20, 0x77, 0x69, 0x6c, +0x6c, 0xd2, 0x01, 0x06, 0xfd, 0x01, 0x42, 0x28, 0x6f, 0x72, +0x20, 0x7b, 0x04, 0xe6, 0x73, 0x6f, 0x6c, 0x69, 0x64, 0x29, +0x20, 0x74, 0x6f, 0x77, 0x61, 0x72, 0x64, 0x73, 0x5d, 0x00, +0xca, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x2e, +0x20, 0x0a, 0x54, 0xe7, 0x03, 0x10, 0x63, 0xc0, 0x01, 0x20, +0x6c, 0x73, 0x03, 0x04, 0x00, 0xa1, 0x01, 0x1e, 0x6f, 0xa5, +0x03, 0x38, 0x69, 0x74, 0x73, 0x97, 0x01, 0x22, 0x20, 0x69, +0x8f, 0x00, 0x10, 0x66, 0x5a, 0x02, 0x41, 0x63, 0x61, 0x72, +0x64, 0x20, 0x02, 0x50, 0x64, 0x69, 0x72, 0x65, 0x63, 0x04, +0x02, 0x41, 0x73, 0x2e, 0x20, 0x4f, 0x21, 0x00, 0x0c, 0xaa, +0x01, 0x22, 0x73, 0x2c, 0x8f, 0x00, 0x31, 0x61, 0x70, 0x70, +0xee, 0x01, 0x1a, 0x66, 0x6d, 0x04, 0x06, 0x42, 0x00, 0x01, +0x85, 0x03, 0xf2, 0x0a, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x61, +0x70, 0x70, 0x72, 0x6f, 0x78, 0x69, 0x6d, 0x61, 0x74, 0x65, +0x2e, 0x20, 0x56, 0x65, 0x72, 0x74, 0x69, 0x63, 0x61, 0xfc, +0x00, 0x40, 0x6d, 0x65, 0x6e, 0x74, 0x27, 0x00, 0xb2, 0x64, +0x69, 0x73, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x20, +0x2c, 0x01, 0x10, 0x69, 0xbc, 0x03, 0xe0, 0x65, 0x73, 0x6e, +0x27, 0x74, 0x20, 0x6d, 0x61, 0x6b, 0x65, 0x20, 0x73, 0x65, +0x6e, 0x5b, 0x01, 0x13, 0x54, 0xb1, 0x00, 0x02, 0x6e, 0x00, +0xbb, 0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x69, +0x6e, 0x67, 0xf6, 0x04, 0x04, 0x6c, 0x01, 0x70, 0x6e, 0x75, +0x6d, 0x65, 0x72, 0x69, 0x63, 0x14, 0x00, 0xc0, 0x70, 0x61, +0x64, 0x20, 0x28, 0x60, 0x37, 0x27, 0x2c, 0x20, 0x60, 0x39, +0x05, 0x00, 0x10, 0x31, 0x05, 0x00, 0x33, 0x33, 0x27, 0x29, +0xe4, 0x01, 0x02, 0x38, 0x01, 0xa7, 0x66, 0x6f, 0x72, 0x20, +0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0xa1, 0x00, 0x53, 0x2e, +0x20, 0x0a, 0x28, 0x41, 0x4d, 0x01, 0x13, 0x61, 0xdb, 0x00, +0x81, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x47, +0x01, 0x12, 0x73, 0xf1, 0x00, 0x40, 0x20, 0x32, 0x2e, 0x31, +0xb8, 0x05, 0x02, 0x88, 0x01, 0x60, 0x61, 0x76, 0x61, 0x69, +0x6c, 0x61, 0x8a, 0x03, 0x12, 0x29, 0x67, 0x02, 0x12, 0x32, +0x67, 0x02, 0xa1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, +0x65, 0x72, 0x73, 0xc4, 0x01, 0x18, 0x73, 0x12, 0x00, 0x00, +0x3e, 0x00, 0x06, 0x39, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, +0x6d, 0x76, 0x00, 0xe0, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, +0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x6c, 0x00, +0x04, 0xe1, 0x00, 0xf0, 0x03, 0x60, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, +0x54, 0x79, 0x70, 0x2e, 0x05, 0x02, 0x40, 0x02, 0x91, 0x5f, +0x20, 0x0a, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x41, 0x02, +0x01, 0x14, 0x00, 0x06, 0x1a, 0x02, 0x10, 0x28, 0x71, 0x03, +0x52, 0x68, 0x65, 0x6e, 0x63, 0x65, 0x1d, 0x00, 0x33, 0x68, +0x61, 0x70, 0x68, 0x05, 0x02, 0x1f, 0x02, 0x29, 0x29, 0x3a, +0x81, 0x03, 0x02, 0x1b, 0x05, 0x07, 0x84, 0x03, 0x4b, 0x2c, +0x20, 0x6f, 0x72, 0x82, 0x03, 0xfd, 0x14, 0x5f, 0x57, 0x69, +0x64, 0x74, 0x68, 0x20, 0x2f, 0x20, 0x74, 0x6f, 0x70, 0x5f, +0x2c, 0x20, 0x5f, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, +0x2f, 0x20, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x5f, 0x20, +0x0a, 0x4f, 0x1b, 0x04, 0x50, 0x68, 0x6f, 0x72, 0x69, 0x7a, +0x53, 0x05, 0x11, 0x6c, 0x02, 0x04, 0x14, 0x76, 0x1d, 0x02, +0x64, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x88, 0x02, 0x0e, +0x30, 0x04, 0x14, 0x2c, 0xdf, 0x01, 0x10, 0x62, 0xa9, 0x07, +0x13, 0x66, 0x1f, 0x00, 0x24, 0x6c, 0x65, 0xfa, 0x01, 0x00, +0x84, 0x00, 0x00, 0x52, 0x00, 0x03, 0x7c, 0x00, 0x50, 0x20, +0x72, 0x6f, 0x77, 0x73, 0x3c, 0x07, 0xd0, 0x70, 0x65, 0x63, +0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2051; const char quick_help_text[] = "Pick up all the blue squares by rolling the cube over them."; diff --git a/apps/plugins/puzzles/help/dominosa.c b/apps/plugins/puzzles/help/dominosa.c index e9387250ba..2acf9056d1 100644 --- a/apps/plugins/puzzles/help/dominosa.c +++ b/apps/plugins/puzzles/help/dominosa.c @@ -1,62 +1,164 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2276 comp 1548 ratio 0.680141 level 11 saved 728 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 17: Dominosa " -"\n" -"A normal set of dominoes - that is, one instance of every " -"(unordered) pair of numbers from 0 to 6 - has been arranged " -"irregularly into a rectangle; then the number in each square has " -"been written down and the dominoes themselves removed. Your task is " -"to reconstruct the pattern by arranging the set of dominoes to match " -"the provided array of numbers. " -"\n" -"This puzzle is widely credited to O. S. Adler, and takes part of its " -"name from those initials. " -"\n" -"\n#17.1 Dominosa controls " -"\n" -"Left-clicking between any two adjacent numbers places a domino " -"covering them, or removes one if it is already present. Trying to " -"place a domino which overlaps existing dominoes will remove the ones " -"it overlaps. " -"\n" -"Right-clicking between two adjacent numbers draws a line between " -"them, which you can use to remind yourself that you know those two " -"numbers are _not_ covered by a single domino. Right-clicking again " -"removes the line. " -"\n" -"You can also use the cursor keys to move a cursor around the grid. " -"When the cursor is half way between two adjacent numbers, pressing " -"the return key will place a domino covering those numbers, or " -"pressing the space bar will lay a line between the two squares. " -"Repeating either action removes the domino or line. " -"\n" -"Pressing a number key will highlight all occurrences of that number. " -"Pressing that number again will clear the highlighting. Up to two " -"different numbers can be highlighted at any given time. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#17.2 Dominosa parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Maximum number on dominoes_ " -"\n" -"Controls the size of the puzzle, by controlling the size of the " -"set of dominoes used to make it. Dominoes with numbers going " -"up to N will give rise to an (N+2) x (N+1) rectangle; so, in " -"particular, the default value of 6 gives an 8x7 grid. " -"\n" -"_Ensure unique solution_ " -"\n" -"Normally, Dominosa will make sure that the puzzles it presents " -"have only one solution. Puzzles with ambiguous sections can be " -"more difficult and sometimes more subtle, so if you like you " -"can turn off this feature. 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" -; + +#include "help.h" +const char help_text[] = { +0xf1, 0x19, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x37, 0x3a, 0x20, 0x44, 0x6f, 0x6d, 0x69, 0x6e, +0x6f, 0x73, 0x61, 0x20, 0x0a, 0x41, 0x20, 0x6e, 0x6f, 0x72, +0x6d, 0x61, 0x6c, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, +0x20, 0x64, 0x1a, 0x00, 0xf0, 0x0b, 0x65, 0x73, 0x20, 0x2d, +0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x73, 0x2c, 0x20, +0x6f, 0x6e, 0x65, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, +0x63, 0x65, 0x24, 0x00, 0xf0, 0x07, 0x65, 0x76, 0x65, 0x72, +0x79, 0x20, 0x28, 0x75, 0x6e, 0x6f, 0x72, 0x64, 0x65, 0x72, +0x65, 0x64, 0x29, 0x20, 0x70, 0x61, 0x69, 0x72, 0x1a, 0x00, +0xf0, 0x3b, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, +0x66, 0x72, 0x6f, 0x6d, 0x20, 0x30, 0x20, 0x74, 0x6f, 0x20, +0x36, 0x20, 0x2d, 0x20, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, +0x65, 0x6e, 0x20, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, +0x64, 0x20, 0x69, 0x72, 0x72, 0x65, 0x67, 0x75, 0x6c, 0x61, +0x72, 0x6c, 0x79, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, +0x20, 0x72, 0x65, 0x63, 0x74, 0x61, 0x6e, 0x67, 0x6c, 0x65, +0x3b, 0x20, 0x74, 0x68, 0x65, 0x6e, 0x05, 0x00, 0x03, 0x4f, +0x00, 0xf6, 0x00, 0x20, 0x69, 0x6e, 0x20, 0x65, 0x61, 0x63, +0x68, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x4f, 0x00, +0xf0, 0x01, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, +0x64, 0x6f, 0x77, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x34, 0x00, +0x05, 0xc1, 0x00, 0x00, 0x0d, 0x00, 0xf0, 0x11, 0x6d, 0x73, +0x65, 0x6c, 0x76, 0x65, 0x73, 0x20, 0x72, 0x65, 0x6d, 0x6f, +0x76, 0x65, 0x64, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, +0x74, 0x61, 0x73, 0x6b, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, +0x75, 0x00, 0x81, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x75, 0x63, +0x74, 0x3d, 0x00, 0xa3, 0x70, 0x61, 0x74, 0x74, 0x65, 0x72, +0x6e, 0x20, 0x62, 0x79, 0xac, 0x00, 0x30, 0x69, 0x6e, 0x67, +0x19, 0x00, 0x0b, 0x1e, 0x01, 0x01, 0x3c, 0x00, 0x52, 0x6d, +0x61, 0x74, 0x63, 0x68, 0x36, 0x00, 0x71, 0x72, 0x6f, 0x76, +0x69, 0x64, 0x65, 0x64, 0x34, 0x00, 0x17, 0x79, 0x08, 0x01, +0xe0, 0x2e, 0x20, 0x0a, 0x54, 0x68, 0x69, 0x73, 0x20, 0x70, +0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x74, 0x00, 0xf0, 0x00, 0x77, +0x69, 0x64, 0x65, 0x6c, 0x79, 0x20, 0x63, 0x72, 0x65, 0x64, +0x69, 0x74, 0x65, 0x64, 0x48, 0x00, 0xc2, 0x4f, 0x2e, 0x20, +0x53, 0x2e, 0x20, 0x41, 0x64, 0x6c, 0x65, 0x72, 0x2c, 0xc6, +0x00, 0x81, 0x61, 0x6b, 0x65, 0x73, 0x20, 0x70, 0x61, 0x72, +0x73, 0x00, 0x82, 0x69, 0x74, 0x73, 0x20, 0x6e, 0x61, 0x6d, +0x65, 0x54, 0x01, 0x40, 0x74, 0x68, 0x6f, 0x73, 0x8d, 0x01, +0x50, 0x69, 0x74, 0x69, 0x61, 0x6c, 0x60, 0x00, 0x66, 0x0a, +0x23, 0x31, 0x37, 0x2e, 0x31, 0xd1, 0x01, 0xf0, 0x05, 0x63, +0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x4c, +0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xc5, +0x00, 0x41, 0x62, 0x65, 0x74, 0x77, 0x83, 0x01, 0xf5, 0x00, +0x6e, 0x79, 0x20, 0x74, 0x77, 0x6f, 0x20, 0x61, 0x64, 0x6a, +0x61, 0x63, 0x65, 0x6e, 0x74, 0xb3, 0x01, 0x83, 0x70, 0x6c, +0x61, 0x63, 0x65, 0x73, 0x20, 0x61, 0xe4, 0x00, 0x63, 0x20, +0x63, 0x6f, 0x76, 0x65, 0x72, 0xff, 0x00, 0x53, 0x6d, 0x2c, +0x20, 0x6f, 0x72, 0x46, 0x01, 0x12, 0x73, 0x0f, 0x02, 0x00, +0x99, 0x00, 0x00, 0xd1, 0x00, 0xf1, 0x05, 0x61, 0x6c, 0x72, +0x65, 0x61, 0x64, 0x79, 0x20, 0x70, 0x72, 0x65, 0x73, 0x65, +0x6e, 0x74, 0x2e, 0x20, 0x54, 0x72, 0x79, 0x36, 0x00, 0x12, +0x6f, 0x52, 0x00, 0x06, 0x51, 0x00, 0x60, 0x77, 0x68, 0x69, +0x63, 0x68, 0x20, 0x56, 0x00, 0xd6, 0x6c, 0x61, 0x70, 0x73, +0x20, 0x65, 0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x54, +0x01, 0x43, 0x77, 0x69, 0x6c, 0x6c, 0x65, 0x00, 0x00, 0x75, +0x00, 0x00, 0x68, 0x00, 0x44, 0x73, 0x20, 0x69, 0x74, 0x33, +0x00, 0x00, 0xee, 0x00, 0x4e, 0x52, 0x69, 0x67, 0x68, 0xd5, +0x00, 0x0f, 0xd1, 0x00, 0x03, 0x40, 0x64, 0x72, 0x61, 0x77, +0xd0, 0x00, 0x44, 0x6c, 0x69, 0x6e, 0x65, 0x2a, 0x00, 0x02, +0xcd, 0x00, 0x03, 0x8b, 0x00, 0xb2, 0x79, 0x6f, 0x75, 0x20, +0x63, 0x61, 0x6e, 0x20, 0x75, 0x73, 0x65, 0x0c, 0x02, 0x40, +0x6d, 0x69, 0x6e, 0x64, 0x16, 0x00, 0x51, 0x72, 0x73, 0x65, +0x6c, 0x66, 0xff, 0x02, 0x01, 0x24, 0x00, 0x42, 0x6b, 0x6e, +0x6f, 0x77, 0x79, 0x01, 0x00, 0x69, 0x00, 0x05, 0x60, 0x00, +0x00, 0x8b, 0x02, 0x52, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x2b, +0x01, 0x21, 0x65, 0x64, 0x36, 0x02, 0x64, 0x20, 0x73, 0x69, +0x6e, 0x67, 0x6c, 0x87, 0x02, 0x2b, 0x2e, 0x20, 0xb2, 0x00, +0x52, 0x61, 0x67, 0x61, 0x69, 0x6e, 0xe5, 0x00, 0x02, 0xa3, +0x02, 0x01, 0x9f, 0x00, 0x43, 0x2e, 0x20, 0x0a, 0x59, 0x8d, +0x00, 0x72, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x75, 0x73, 0x02, +0x01, 0xa1, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, +0x65, 0x79, 0x72, 0x02, 0x01, 0x1a, 0x01, 0x14, 0x61, 0x16, +0x00, 0x43, 0x61, 0x72, 0x6f, 0x75, 0xf4, 0x02, 0xa7, 0x67, +0x72, 0x69, 0x64, 0x2e, 0x20, 0x57, 0x68, 0x65, 0x6e, 0x37, +0x00, 0x00, 0x9e, 0x01, 0x8f, 0x68, 0x61, 0x6c, 0x66, 0x20, +0x77, 0x61, 0x79, 0x2a, 0x01, 0x0a, 0x11, 0x2c, 0xbd, 0x01, +0x14, 0x73, 0xeb, 0x02, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, +0x6e, 0x75, 0x00, 0x01, 0x92, 0x01, 0x02, 0xc7, 0x01, 0x0e, +0x18, 0x02, 0x02, 0x12, 0x01, 0x06, 0x44, 0x00, 0x2a, 0x6f, +0x72, 0x47, 0x00, 0x20, 0x73, 0x70, 0x37, 0x00, 0x32, 0x62, +0x61, 0x72, 0x46, 0x00, 0x3e, 0x6c, 0x61, 0x79, 0x8c, 0x01, +0x01, 0x51, 0x01, 0x03, 0xd7, 0x03, 0x81, 0x73, 0x2e, 0x20, +0x52, 0x65, 0x70, 0x65, 0x61, 0x14, 0x02, 0xc9, 0x65, 0x69, +0x74, 0x68, 0x65, 0x72, 0x20, 0x61, 0x63, 0x74, 0x69, 0x6f, +0x2f, 0x01, 0x04, 0x86, 0x00, 0x24, 0x6f, 0x72, 0x39, 0x01, +0x14, 0x50, 0x75, 0x00, 0x13, 0x61, 0x8c, 0x00, 0x06, 0xba, +0x00, 0x50, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x80, 0x01, 0xe0, +0x20, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, +0x72, 0x65, 0x6e, 0x63, 0xc3, 0x02, 0x01, 0xdf, 0x01, 0x04, +0x02, 0x01, 0x24, 0x2e, 0x20, 0x45, 0x00, 0x08, 0x16, 0x00, +0x02, 0xac, 0x01, 0x02, 0x4a, 0x00, 0x50, 0x63, 0x6c, 0x65, +0x61, 0x72, 0x80, 0x00, 0x05, 0x54, 0x00, 0x00, 0xa7, 0x00, +0x71, 0x2e, 0x20, 0x55, 0x70, 0x20, 0x74, 0x6f, 0xc5, 0x00, +0x67, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x56, 0x01, 0x01, +0xce, 0x01, 0x17, 0x62, 0x31, 0x00, 0x00, 0x20, 0x04, 0x11, +0x74, 0x80, 0x03, 0x30, 0x67, 0x69, 0x76, 0xff, 0x00, 0x20, +0x69, 0x6d, 0xc0, 0x00, 0x40, 0x28, 0x41, 0x6c, 0x6c, 0x5a, +0x00, 0x03, 0xed, 0x00, 0xb0, 0x73, 0x20, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xf8, 0x04, 0x22, 0x73, +0x65, 0x03, 0x01, 0x30, 0x32, 0x2e, 0x31, 0x71, 0x02, 0x02, +0x1f, 0x02, 0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, +0x6c, 0x65, 0x2e, 0x29, 0x01, 0x04, 0x15, 0x32, 0x01, 0x04, +0x00, 0x38, 0x04, 0x70, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, +0x73, 0x7d, 0x04, 0x34, 0x65, 0x73, 0x65, 0x12, 0x00, 0x03, +0xb4, 0x02, 0x05, 0x3e, 0x00, 0x05, 0x52, 0x04, 0xf1, 0x01, +0x65, 0x20, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, +0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x71, 0x00, 0x22, 0x6f, +0x6e, 0x1a, 0x00, 0xf4, 0x06, 0x54, 0x79, 0x70, 0x65, 0x27, +0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x4d, +0x61, 0x78, 0x69, 0x6d, 0x75, 0x6d, 0x22, 0x01, 0x25, 0x6f, +0x6e, 0xbe, 0x03, 0x43, 0x5f, 0x20, 0x0a, 0x43, 0x7b, 0x04, +0x02, 0xff, 0x01, 0x32, 0x69, 0x7a, 0x65, 0x67, 0x01, 0x13, +0x65, 0xff, 0x04, 0x44, 0x2c, 0x20, 0x62, 0x79, 0x9f, 0x04, +0x4a, 0x6c, 0x69, 0x6e, 0x67, 0x27, 0x00, 0x0e, 0x64, 0x05, +0x00, 0x06, 0x03, 0x12, 0x64, 0x69, 0x05, 0x86, 0x6b, 0x65, +0x20, 0x69, 0x74, 0x2e, 0x20, 0x44, 0x2a, 0x04, 0x25, 0x74, +0x68, 0x68, 0x01, 0x20, 0x67, 0x6f, 0x4d, 0x00, 0x11, 0x75, +0x8a, 0x01, 0x11, 0x4e, 0xaf, 0x01, 0x01, 0x61, 0x01, 0x32, +0x20, 0x72, 0x69, 0xd8, 0x03, 0xa0, 0x61, 0x6e, 0x20, 0x28, +0x4e, 0x2b, 0x32, 0x29, 0x20, 0x78, 0x08, 0x00, 0x28, 0x31, +0x29, 0x6a, 0x06, 0x61, 0x73, 0x6f, 0x2c, 0x20, 0x69, 0x6e, +0x6c, 0x05, 0x20, 0x69, 0x63, 0x90, 0x06, 0x12, 0x2c, 0x65, +0x02, 0xb1, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x76, +0x61, 0x6c, 0x75, 0x9f, 0x00, 0x11, 0x36, 0x53, 0x00, 0x10, +0x73, 0x4c, 0x00, 0x33, 0x38, 0x78, 0x37, 0x70, 0x03, 0xf0, +0x05, 0x0a, 0x5f, 0x45, 0x6e, 0x73, 0x75, 0x72, 0x65, 0x20, +0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x73, 0x6f, 0x6c, +0x75, 0x3c, 0x01, 0x41, 0x5f, 0x20, 0x0a, 0x4e, 0x54, 0x07, +0x35, 0x6c, 0x79, 0x2c, 0x98, 0x01, 0x01, 0x99, 0x00, 0x02, +0xcb, 0x00, 0x00, 0x34, 0x00, 0x01, 0x69, 0x02, 0x06, 0x1d, +0x01, 0x01, 0xe9, 0x04, 0x04, 0x44, 0x05, 0x00, 0xb7, 0x03, +0x10, 0x76, 0xff, 0x04, 0x56, 0x6c, 0x79, 0x20, 0x6f, 0x6e, +0x58, 0x00, 0x30, 0x2e, 0x20, 0x50, 0x2c, 0x00, 0x04, 0x00, +0x01, 0x94, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, 0x75, +0x73, 0x25, 0x02, 0x05, 0x73, 0x02, 0x41, 0x6d, 0x6f, 0x72, +0x65, 0x91, 0x02, 0x00, 0xd4, 0x00, 0x11, 0x74, 0x54, 0x06, +0x40, 0x73, 0x6f, 0x6d, 0x65, 0x71, 0x02, 0x12, 0x73, 0x1d, +0x00, 0x40, 0x73, 0x75, 0x62, 0x74, 0x92, 0x01, 0x51, 0x73, +0x6f, 0x20, 0x69, 0x66, 0xe5, 0x04, 0x45, 0x6c, 0x69, 0x6b, +0x65, 0x12, 0x05, 0x01, 0x01, 0x04, 0x50, 0x6f, 0x66, 0x66, +0x20, 0x74, 0xbe, 0x06, 0xb0, 0x66, 0x65, 0x61, 0x74, 0x75, +0x72, 0x65, 0x2e, 0x20, 0x41, 0x6c, 0x30, 0x01, 0x40, 0x66, +0x69, 0x6e, 0x64, 0x72, 0x01, 0x52, 0x5f, 0x61, 0x6c, 0x6c, +0x5f, 0xc3, 0x00, 0x62, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, +0xaa, 0x00, 0x09, 0x8a, 0x00, 0x00, 0xd1, 0x04, 0x30, 0x64, +0x64, 0x69, 0x14, 0x00, 0xf2, 0x01, 0x61, 0x6c, 0x20, 0x63, +0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x20, 0x66, +0x6f, 0x72, 0x1c, 0x00, 0x10, 0x76, 0x54, 0x08, 0x10, 0x64, +0x64, 0x04, 0x10, 0x79, 0x88, 0x03, 0x75, 0x54, 0x75, 0x72, +0x6e, 0x69, 0x6e, 0x67, 0x7c, 0x00, 0x03, 0x8e, 0x02, 0x06, +0x1a, 0x05, 0x84, 0x73, 0x70, 0x65, 0x65, 0x64, 0x20, 0x75, +0x70, 0x53, 0x07, 0xe0, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, +0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2276; const char quick_help_text[] = "Tile the rectangle with a full set of dominoes."; diff --git a/apps/plugins/puzzles/help/fifteen.c b/apps/plugins/puzzles/help/fifteen.c index dfe7ed11da..e38e435820 100644 --- a/apps/plugins/puzzles/help/fifteen.c +++ b/apps/plugins/puzzles/help/fifteen.c @@ -1,38 +1,103 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1248 comp 937 ratio 0.750801 level 5 saved 311 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 5: Fifteen " -"\n" -"The old ones are the best: this is the good old `15-puzzle' with " -"sliding tiles. You have a 4x4 square grid; 15 squares contain " -"numbered tiles, and the sixteenth is empty. Your move is to choose a " -"tile next to the empty space, and slide it into the space. The aim " -"is to end up with the tiles in numerical order, with the space in " -"the bottom right (so that the top row reads 1,2,3,4 and the bottom " -"row reads 13,14,15,_space_). " -"\n" -"\n#5.1 Fifteen controls " -"\n" -"This game can be controlled with the mouse or the keyboard. " -"\n" -"A left-click with the mouse in the row or column containing the " -"empty space will move as many tiles as necessary to move the space " -"to the mouse pointer. " -"\n" -"The arrow keys will move a tile adjacent to the space in the " -"direction indicated (moving the space in the _opposite_ direction). " -"\n" -"Pressing `h' will make a suggested move. Pressing `h' enough times " -"will solve the game, but it may scramble your progress while doing " -"so. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#5.2 Fifteen parameters " -"\n" -"The only options available from the `Custom...' option on the `Type' " -"menu are _Width_ and _Height_, which are self-explanatory. (Once " -"you've changed these, it's not a `15-puzzle' any more, of course!) " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf1, 0x28, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x35, 0x3a, 0x20, 0x46, 0x69, 0x66, 0x74, 0x65, 0x65, +0x6e, 0x20, 0x0a, 0x54, 0x68, 0x65, 0x20, 0x6f, 0x6c, 0x64, +0x20, 0x6f, 0x6e, 0x65, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, +0x74, 0x68, 0x65, 0x20, 0x62, 0x65, 0x73, 0x74, 0x3a, 0x20, +0x74, 0x68, 0x69, 0x73, 0x20, 0x69, 0x73, 0x12, 0x00, 0x41, +0x67, 0x6f, 0x6f, 0x64, 0x28, 0x00, 0xf0, 0x23, 0x60, 0x31, +0x35, 0x2d, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x27, 0x20, +0x77, 0x69, 0x74, 0x68, 0x20, 0x73, 0x6c, 0x69, 0x64, 0x69, +0x6e, 0x67, 0x20, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x2e, 0x20, +0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x61, +0x20, 0x34, 0x78, 0x34, 0x20, 0x73, 0x71, 0x75, 0x55, 0x00, +0x83, 0x67, 0x72, 0x69, 0x64, 0x3b, 0x20, 0x31, 0x35, 0x10, +0x00, 0xf2, 0x03, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, +0x69, 0x6e, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, +0x64, 0x3f, 0x00, 0x51, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x70, +0x00, 0x30, 0x73, 0x69, 0x78, 0xa0, 0x00, 0x20, 0x74, 0x68, +0x81, 0x00, 0x51, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x5b, 0x00, +0x61, 0x72, 0x20, 0x6d, 0x6f, 0x76, 0x65, 0x95, 0x00, 0x70, +0x6f, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, 0x69, 0x00, 0x00, +0x3c, 0x00, 0x50, 0x20, 0x6e, 0x65, 0x78, 0x74, 0x16, 0x00, +0x00, 0x3e, 0x00, 0x01, 0x31, 0x00, 0x62, 0x20, 0x73, 0x70, +0x61, 0x63, 0x65, 0x53, 0x00, 0x00, 0xa5, 0x00, 0x73, 0x65, +0x20, 0x69, 0x74, 0x20, 0x69, 0x6e, 0x23, 0x00, 0x01, 0x1d, +0x00, 0x20, 0x2e, 0x20, 0xff, 0x00, 0x33, 0x61, 0x69, 0x6d, +0x52, 0x00, 0x62, 0x65, 0x6e, 0x64, 0x20, 0x75, 0x70, 0xd8, +0x00, 0x00, 0x25, 0x00, 0x01, 0x95, 0x00, 0x12, 0x20, 0xa7, +0x00, 0xd6, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x6f, +0x72, 0x64, 0x65, 0x72, 0x2c, 0x23, 0x00, 0x01, 0x48, 0x00, +0x00, 0x23, 0x00, 0x01, 0x38, 0x01, 0xe0, 0x6f, 0x74, 0x74, +0x6f, 0x6d, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, 0x20, 0x28, +0x73, 0x6a, 0x00, 0x22, 0x61, 0x74, 0x4a, 0x00, 0xf5, 0x05, +0x6f, 0x70, 0x20, 0x72, 0x6f, 0x77, 0x20, 0x72, 0x65, 0x61, +0x64, 0x73, 0x20, 0x31, 0x2c, 0x32, 0x2c, 0x33, 0x2c, 0x34, +0xee, 0x00, 0x04, 0x38, 0x00, 0x06, 0x21, 0x00, 0x91, 0x33, +0x2c, 0x31, 0x34, 0x2c, 0x31, 0x35, 0x2c, 0x5f, 0x60, 0x00, +0xa5, 0x5f, 0x29, 0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x35, 0x2e, +0x31, 0xb9, 0x01, 0x00, 0x41, 0x01, 0x40, 0x72, 0x6f, 0x6c, +0x73, 0xc2, 0x01, 0xe4, 0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, +0x65, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x1b, 0x00, +0x36, 0x6c, 0x65, 0x64, 0xa7, 0x00, 0x81, 0x6d, 0x6f, 0x75, +0x73, 0x65, 0x20, 0x6f, 0x72, 0x0d, 0x00, 0xfc, 0x08, 0x6b, +0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x20, 0x0a, +0x41, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, +0x63, 0x6b, 0x2e, 0x00, 0x03, 0xd5, 0x00, 0x00, 0x96, 0x00, +0x94, 0x6f, 0x72, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, +0xb9, 0x01, 0x01, 0xf2, 0x01, 0x0a, 0x6a, 0x01, 0x52, 0x20, +0x77, 0x69, 0x6c, 0x6c, 0xa0, 0x01, 0x73, 0x61, 0x73, 0x20, +0x6d, 0x61, 0x6e, 0x79, 0x40, 0x01, 0xc0, 0x61, 0x73, 0x20, +0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0x66, +0x01, 0x01, 0x23, 0x00, 0x06, 0x3c, 0x01, 0x27, 0x74, 0x6f, +0x74, 0x00, 0x82, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x65, 0x72, +0x2e, 0x99, 0x02, 0x20, 0x61, 0x72, 0x7d, 0x00, 0x48, 0x6b, +0x65, 0x79, 0x73, 0x5d, 0x00, 0x02, 0xf0, 0x01, 0x75, 0x61, +0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0xf4, 0x01, 0x09, 0x89, +0x01, 0xf4, 0x09, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, +0x6f, 0x6e, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, +0x65, 0x64, 0x20, 0x28, 0x6d, 0x6f, 0x76, 0xb7, 0x00, 0x09, +0x2d, 0x00, 0xa6, 0x5f, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, +0x74, 0x65, 0x5f, 0x38, 0x00, 0x00, 0x71, 0x01, 0x50, 0x50, +0x72, 0x65, 0x73, 0x73, 0x32, 0x00, 0x33, 0x60, 0x68, 0x27, +0x80, 0x00, 0x20, 0x61, 0x6b, 0x80, 0x00, 0x60, 0x73, 0x75, +0x67, 0x67, 0x65, 0x73, 0x54, 0x00, 0x00, 0x91, 0x00, 0x29, +0x2e, 0x20, 0x29, 0x00, 0xb3, 0x65, 0x6e, 0x6f, 0x75, 0x67, +0x68, 0x20, 0x74, 0x69, 0x6d, 0x65, 0xb6, 0x00, 0x33, 0x73, +0x6f, 0x6c, 0xf1, 0x00, 0x00, 0xa6, 0x01, 0x50, 0x2c, 0x20, +0x62, 0x75, 0x74, 0x8b, 0x02, 0xe0, 0x6d, 0x61, 0x79, 0x20, +0x73, 0x63, 0x72, 0x61, 0x6d, 0x62, 0x6c, 0x65, 0x20, 0x79, +0xdc, 0x02, 0x40, 0x70, 0x72, 0x6f, 0x67, 0x4b, 0x00, 0x30, +0x20, 0x77, 0x68, 0xe2, 0x00, 0x20, 0x64, 0x6f, 0x54, 0x00, +0x91, 0x73, 0x6f, 0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, +0x42, 0x00, 0x11, 0x61, 0x9e, 0x00, 0xb0, 0x73, 0x20, 0x64, +0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xc5, 0x00, +0x13, 0x73, 0xec, 0x00, 0x31, 0x32, 0x2e, 0x31, 0xc3, 0x03, +0xf2, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x61, 0x76, 0x61, +0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x3c, 0x02, +0x15, 0x32, 0x3c, 0x02, 0xa3, 0x70, 0x61, 0x72, 0x61, 0x6d, +0x65, 0x74, 0x65, 0x72, 0x73, 0x00, 0x04, 0x62, 0x6e, 0x6c, +0x79, 0x20, 0x6f, 0x70, 0x5a, 0x00, 0x05, 0x38, 0x00, 0x51, +0x20, 0x66, 0x72, 0x6f, 0x6d, 0x75, 0x00, 0xb3, 0x60, 0x43, +0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x27, +0x00, 0x22, 0x20, 0x6f, 0x3b, 0x01, 0xb1, 0x60, 0x54, 0x79, +0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x7a, 0x00, +0x71, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0xd9, 0x02, +0x30, 0x5f, 0x48, 0x65, 0x08, 0x03, 0x20, 0x5f, 0x2c, 0xcf, +0x00, 0x21, 0x63, 0x68, 0x20, 0x00, 0xf1, 0x07, 0x73, 0x65, +0x6c, 0x66, 0x2d, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, +0x74, 0x6f, 0x72, 0x79, 0x2e, 0x20, 0x28, 0x4f, 0x6e, 0x63, +0xff, 0x00, 0xa1, 0x27, 0x76, 0x65, 0x20, 0x63, 0x68, 0x61, +0x6e, 0x67, 0x65, 0x14, 0x03, 0xe9, 0x73, 0x65, 0x2c, 0x20, +0x69, 0x74, 0x27, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, +0x77, 0x04, 0x00, 0x5a, 0x02, 0xf0, 0x05, 0x6d, 0x6f, 0x72, +0x65, 0x2c, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x75, 0x72, +0x73, 0x65, 0x21, 0x29, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 1248; const char quick_help_text[] = "Slide the tiles around to arrange them into order."; diff --git a/apps/plugins/puzzles/help/filling.c b/apps/plugins/puzzles/help/filling.c index 16dfbbd6fc..3810eb3a0a 100644 --- a/apps/plugins/puzzles/help/filling.c +++ b/apps/plugins/puzzles/help/filling.c @@ -1,50 +1,134 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1796 comp 1242 ratio 0.691537 level 11 saved 554 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 29: Filling " -"\n" -"You have a grid of squares, some of which contain digits, and the " -"rest of which are empty. Your job is to fill in digits in the empty " -"squares, in such a way that each connected region of squares all " -"containing the same digit has an area equal to that digit. " -"\n" -"(`Connected region', for the purposes of this game, does not count " -"diagonally separated squares as adjacent.) " -"\n" -"For example, it follows that no square can contain a zero, and that " -"two adjacent squares can not both contain a one. No region has an " -"area greater than 9 (because then its area would not be a single " -"digit). " -"\n" -"Credit for this puzzle goes to Nikoli [14]. " -"\n" -"Filling was contributed to this collection by Jonas Koelker. " -"\n" -"[14] http://www.nikoli.co.jp/en/puzzles/fillomino.html " -"\n" -"\n#29.1 Filling controls " -"\n" -"To play Filling, simply click the mouse in any empty square and " -"then type a digit on the keyboard to fill that square. By dragging " -"the mouse, you can select multiple squares to fill with a single " -"keypress. If you make a mistake, click the mouse in the incorrect " -"square and press 0, Space, Backspace or Enter to clear it again (or " -"use the Undo feature). " -"\n" -"You can also move around the grid with the cursor keys; typing a " -"digit will fill the square containing the cursor with that number; " -"typing 0 will clear it. You can also select multiple squares for " -"numbering or clearing with the return and arrow keys, before typing " -"a digit to fill or clear the highlighted squares (as above). The " -"space bar adds and removes single squares to and from the selection. " -"Backspace and escape remove all squares from the selection. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#29.2 Filling parameters " -"\n" -"Filling allows you to configure the number of rows and columns of " -"the grid, through the `Type' menu. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x27, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x39, 0x3a, 0x20, 0x46, 0x69, 0x6c, 0x6c, 0x69, +0x6e, 0x67, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, +0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, +0x2c, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf6, 0x13, +0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74, +0x61, 0x69, 0x6e, 0x20, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, +0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0x20, +0x72, 0x65, 0x73, 0x74, 0x26, 0x00, 0xf5, 0x10, 0x61, 0x72, +0x65, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x20, 0x59, +0x6f, 0x75, 0x72, 0x20, 0x6a, 0x6f, 0x62, 0x20, 0x69, 0x73, +0x20, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x20, 0x40, +0x00, 0x00, 0x0a, 0x00, 0x23, 0x74, 0x68, 0x2c, 0x00, 0x05, +0x73, 0x00, 0x00, 0x16, 0x00, 0x20, 0x73, 0x75, 0x47, 0x00, +0xc2, 0x20, 0x77, 0x61, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, +0x20, 0x65, 0x61, 0x7d, 0x00, 0xd7, 0x6e, 0x65, 0x63, 0x74, +0x65, 0x64, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0xa8, +0x00, 0x44, 0x20, 0x61, 0x6c, 0x6c, 0x9d, 0x00, 0x31, 0x69, +0x6e, 0x67, 0x56, 0x00, 0x42, 0x73, 0x61, 0x6d, 0x65, 0x69, +0x00, 0x70, 0x20, 0x68, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x98, +0x00, 0xa1, 0x61, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, +0x74, 0x6f, 0x59, 0x00, 0x02, 0x20, 0x00, 0x6b, 0x2e, 0x20, +0x0a, 0x28, 0x60, 0x43, 0x5e, 0x00, 0x61, 0x27, 0x2c, 0x20, +0x66, 0x6f, 0x72, 0x4a, 0x00, 0x80, 0x70, 0x75, 0x72, 0x70, +0x6f, 0x73, 0x65, 0x73, 0x71, 0x00, 0xf0, 0x09, 0x74, 0x68, +0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x64, +0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x63, 0x6f, +0x75, 0x6e, 0x4b, 0x00, 0xf5, 0x03, 0x61, 0x67, 0x6f, 0x6e, +0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x65, 0x70, 0x61, 0x72, +0x61, 0x74, 0x65, 0x64, 0xa0, 0x00, 0x00, 0x81, 0x00, 0xf2, +0x13, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x2e, 0x29, +0x20, 0x0a, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, +0x70, 0x6c, 0x65, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x66, 0x6f, +0x6c, 0x6c, 0x6f, 0x77, 0x73, 0x94, 0x00, 0x23, 0x6e, 0x6f, +0x37, 0x00, 0x45, 0x20, 0x63, 0x61, 0x6e, 0x73, 0x01, 0x61, +0x61, 0x20, 0x7a, 0x65, 0x72, 0x6f, 0x73, 0x01, 0x02, 0x27, +0x00, 0x35, 0x74, 0x77, 0x6f, 0x54, 0x00, 0x04, 0x68, 0x00, +0x00, 0x32, 0x00, 0x01, 0x93, 0x00, 0x47, 0x62, 0x6f, 0x74, +0x68, 0x3b, 0x00, 0x73, 0x6f, 0x6e, 0x65, 0x2e, 0x20, 0x4e, +0x6f, 0xdb, 0x00, 0x09, 0x10, 0x01, 0x70, 0x67, 0x72, 0x65, +0x61, 0x74, 0x65, 0x72, 0x54, 0x00, 0xc0, 0x6e, 0x20, 0x39, +0x20, 0x28, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0xf9, +0x00, 0x52, 0x6e, 0x20, 0x69, 0x74, 0x73, 0x26, 0x00, 0x52, +0x77, 0x6f, 0x75, 0x6c, 0x64, 0x5a, 0x00, 0x00, 0x27, 0x02, +0x53, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x5e, 0x01, 0x81, 0x29, +0x2e, 0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, 0xc7, 0x00, 0x12, +0x72, 0x21, 0x01, 0xa1, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x20, 0x67, 0x6f, 0x65, 0xf7, 0x01, 0xe4, 0x4e, 0x69, 0x6b, +0x6f, 0x6c, 0x69, 0x20, 0x5b, 0x31, 0x34, 0x5d, 0x2e, 0x20, +0x0a, 0x78, 0x02, 0x31, 0x77, 0x61, 0x73, 0xa3, 0x00, 0x72, +0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x94, 0x01, 0x10, +0x69, 0x14, 0x00, 0x50, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0xa9, +0x00, 0xf0, 0x04, 0x62, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x61, +0x73, 0x20, 0x4b, 0x6f, 0x65, 0x6c, 0x6b, 0x65, 0x72, 0x2e, +0x20, 0x0a, 0x45, 0x00, 0xd1, 0x20, 0x68, 0x74, 0x74, 0x70, +0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x5c, 0x00, +0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, +0x2f, 0x7b, 0x00, 0x20, 0x73, 0x2f, 0x6b, 0x02, 0xf4, 0x03, +0x6f, 0x6d, 0x69, 0x6e, 0x6f, 0x2e, 0x68, 0x74, 0x6d, 0x6c, +0x20, 0x0a, 0x0a, 0x23, 0x32, 0x39, 0x2e, 0x31, 0xf5, 0x02, +0x02, 0x79, 0x00, 0xc4, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x1a, 0x00, 0xe1, 0x2c, +0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x20, 0x63, 0x6c, +0x69, 0x63, 0x6b, 0x00, 0x02, 0x20, 0x6d, 0x6f, 0x11, 0x01, +0x00, 0x49, 0x01, 0x29, 0x6e, 0x79, 0xad, 0x02, 0x04, 0x00, +0x03, 0x83, 0x6e, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x61, +0x6f, 0x02, 0x12, 0x6f, 0xd7, 0x02, 0x84, 0x6b, 0x65, 0x79, +0x62, 0x6f, 0x61, 0x72, 0x64, 0xf9, 0x02, 0x00, 0x63, 0x01, +0x04, 0xaa, 0x01, 0xd6, 0x2e, 0x20, 0x42, 0x79, 0x20, 0x64, +0x72, 0x61, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x65, 0x00, 0x51, +0x2c, 0x20, 0x79, 0x6f, 0x75, 0xc5, 0x01, 0x20, 0x73, 0x65, +0x04, 0x01, 0x93, 0x20, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, +0x6c, 0x65, 0x37, 0x00, 0x06, 0x45, 0x03, 0x44, 0x77, 0x69, +0x74, 0x68, 0x89, 0x01, 0x01, 0x6b, 0x00, 0x91, 0x70, 0x72, +0x65, 0x73, 0x73, 0x2e, 0x20, 0x49, 0x66, 0x43, 0x00, 0x30, +0x6d, 0x61, 0x6b, 0x90, 0x00, 0x8c, 0x6d, 0x69, 0x73, 0x74, +0x61, 0x6b, 0x65, 0x2c, 0xcd, 0x00, 0x04, 0x7a, 0x03, 0x98, +0x69, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0xd1, +0x00, 0x01, 0x4a, 0x00, 0xf0, 0x01, 0x20, 0x30, 0x2c, 0x20, +0x53, 0x70, 0x61, 0x63, 0x65, 0x2c, 0x20, 0x42, 0x61, 0x63, +0x6b, 0x73, 0x0b, 0x00, 0x61, 0x20, 0x6f, 0x72, 0x20, 0x45, +0x6e, 0x2d, 0x02, 0x70, 0x6f, 0x20, 0x63, 0x6c, 0x65, 0x61, +0x72, 0xbc, 0x02, 0x20, 0x61, 0x67, 0x64, 0x02, 0x43, 0x28, +0x6f, 0x72, 0x20, 0x37, 0x02, 0xd0, 0x20, 0x55, 0x6e, 0x64, +0x6f, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x1e, +0x02, 0x13, 0x59, 0xd4, 0x00, 0x70, 0x61, 0x6c, 0x73, 0x6f, +0x20, 0x6d, 0x6f, 0x69, 0x04, 0x32, 0x72, 0x6f, 0x75, 0x3b, +0x01, 0x01, 0x72, 0x04, 0x01, 0xce, 0x00, 0x01, 0x0e, 0x00, +0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0xd0, 0x00, 0x20, +0x73, 0x3b, 0x55, 0x01, 0x35, 0x69, 0x6e, 0x67, 0x57, 0x01, +0x44, 0x77, 0x69, 0x6c, 0x6c, 0x49, 0x01, 0x04, 0x11, 0x01, +0x07, 0xf5, 0x03, 0x07, 0x40, 0x00, 0x01, 0x50, 0x00, 0x03, +0x4d, 0x03, 0x55, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x4c, 0x00, +0x11, 0x30, 0x46, 0x00, 0x05, 0xbd, 0x00, 0x28, 0x2e, 0x20, +0x9c, 0x00, 0x0f, 0x75, 0x01, 0x05, 0x00, 0xd8, 0x02, 0x03, +0x49, 0x00, 0x00, 0x44, 0x00, 0x21, 0x6f, 0x72, 0x40, 0x00, +0x00, 0x0c, 0x00, 0x06, 0xb9, 0x00, 0x61, 0x72, 0x65, 0x74, +0x75, 0x72, 0x6e, 0x40, 0x01, 0x51, 0x61, 0x72, 0x72, 0x6f, +0x77, 0xc3, 0x00, 0x8b, 0x2c, 0x20, 0x62, 0x65, 0x66, 0x6f, +0x72, 0x65, 0xca, 0x00, 0x04, 0xc5, 0x01, 0x04, 0x4a, 0x00, +0x02, 0x66, 0x04, 0x88, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, +0x67, 0x68, 0x37, 0x04, 0x10, 0x28, 0xa9, 0x03, 0x30, 0x62, +0x6f, 0x76, 0x47, 0x01, 0x42, 0x54, 0x68, 0x65, 0x20, 0x87, +0x01, 0x70, 0x62, 0x61, 0x72, 0x20, 0x61, 0x64, 0x64, 0xc4, +0x03, 0x00, 0xae, 0x04, 0x00, 0x52, 0x01, 0x11, 0x73, 0x0a, +0x02, 0x09, 0x28, 0x02, 0x01, 0x1e, 0x00, 0x42, 0x66, 0x72, +0x6f, 0x6d, 0x2f, 0x01, 0x13, 0x65, 0x54, 0x03, 0x15, 0x2e, +0xd0, 0x01, 0x02, 0xee, 0x01, 0x63, 0x65, 0x73, 0x63, 0x61, +0x70, 0x65, 0x47, 0x00, 0x00, 0x48, 0x05, 0x05, 0x43, 0x00, +0x0e, 0x3c, 0x00, 0x00, 0x29, 0x05, 0x13, 0x41, 0x80, 0x01, +0x11, 0x61, 0x12, 0x00, 0xb1, 0x73, 0x20, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xb8, 0x05, 0x03, 0xb8, +0x03, 0x30, 0x32, 0x2e, 0x31, 0x38, 0x04, 0x02, 0x56, 0x01, +0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, +0x2e, 0x29, 0x87, 0x03, 0x15, 0x32, 0x87, 0x03, 0x00, 0x28, +0x05, 0x66, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x04, +0x11, 0x61, 0x0c, 0x05, 0x01, 0xc7, 0x02, 0x20, 0x74, 0x6f, +0xe1, 0x01, 0x51, 0x66, 0x69, 0x67, 0x75, 0x72, 0x5b, 0x02, +0x03, 0x86, 0x01, 0x00, 0x89, 0x05, 0x31, 0x72, 0x6f, 0x77, +0x01, 0x01, 0x00, 0x2f, 0x04, 0x30, 0x75, 0x6d, 0x6e, 0x9d, +0x05, 0x05, 0x50, 0x02, 0x82, 0x2c, 0x20, 0x74, 0x68, 0x72, +0x6f, 0x75, 0x67, 0x9b, 0x01, 0xf0, 0x00, 0x60, 0x54, 0x79, +0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, +0x0a, 0x00, +}; +const unsigned short help_text_len = 1796; const char quick_help_text[] = "Mark every square with the area of its containing region."; diff --git a/apps/plugins/puzzles/help/flip.c b/apps/plugins/puzzles/help/flip.c index 5a207b612b..48d3798b1f 100644 --- a/apps/plugins/puzzles/help/flip.c +++ b/apps/plugins/puzzles/help/flip.c @@ -1,49 +1,120 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1521 comp 1101 ratio 0.723866 level 11 saved 420 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 14: Flip " -"\n" -"You have a grid of squares, some light and some dark. Your aim is to " -"light all the squares up at the same time. You can choose any square " -"and flip its state from light to dark or dark to light, but when you " -"do so, other squares around it change state as well. " -"\n" -"Each square contains a small diagram showing which other squares " -"change when you flip it. " -"\n" -"\n#14.1 Flip controls " -"\n" -"This game can be played with either the keyboard or the mouse. " -"\n" -"Left-click in a square to flip it and its associated squares, or use " -"the cursor keys to choose a square and the space bar or Enter key to " -"flip. " -"\n" -"If you use the `Solve' function on this game, it will mark some of " -"the squares in red. If you click once in every square with a red " -"mark, the game should be solved. (If you click in a square _without_ " -"a red mark, a red mark will appear in it to indicate that you will " -"need to reverse that operation to reach the solution.) " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#14.2 Flip parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Shape type_ " -"\n" -"This control determines the shape of the region which is flipped " -"by clicking in any given square. The default setting, `Crosses', " -"causes every square to flip itself and its four immediate " -"neighbours (or three or two if it's at an edge or corner). The " -"other setting, `Random', causes a random shape to be chosen for " -"every square, so the game is different every time. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf2, 0x2e, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x34, 0x3a, 0x20, 0x46, 0x6c, 0x69, 0x70, 0x20, +0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, +0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, +0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, +0x6f, 0x6d, 0x65, 0x20, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x20, +0x61, 0x6e, 0x64, 0x0f, 0x00, 0xf4, 0x05, 0x64, 0x61, 0x72, +0x6b, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, +0x6d, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x24, 0x00, 0x64, +0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x40, 0x00, 0x62, 0x20, +0x75, 0x70, 0x20, 0x61, 0x74, 0x12, 0x00, 0x81, 0x61, 0x6d, +0x65, 0x20, 0x74, 0x69, 0x6d, 0x65, 0x3a, 0x00, 0xf3, 0x00, +0x20, 0x63, 0x61, 0x6e, 0x20, 0x63, 0x68, 0x6f, 0x6f, 0x73, +0x65, 0x20, 0x61, 0x6e, 0x79, 0x30, 0x00, 0x01, 0x63, 0x00, +0x10, 0x66, 0x94, 0x00, 0xe3, 0x69, 0x74, 0x73, 0x20, 0x73, +0x74, 0x61, 0x74, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x5d, +0x00, 0x21, 0x74, 0x6f, 0x7b, 0x00, 0x31, 0x20, 0x6f, 0x72, +0x08, 0x00, 0x05, 0x76, 0x00, 0xf5, 0x0c, 0x2c, 0x20, 0x62, +0x75, 0x74, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x79, 0x6f, +0x75, 0x20, 0x64, 0x6f, 0x20, 0x73, 0x6f, 0x2c, 0x20, 0x6f, +0x74, 0x68, 0x65, 0x72, 0x89, 0x00, 0xf3, 0x01, 0x61, 0x72, +0x6f, 0x75, 0x6e, 0x64, 0x20, 0x69, 0x74, 0x20, 0x63, 0x68, +0x61, 0x6e, 0x67, 0x65, 0x5e, 0x00, 0xe4, 0x61, 0x73, 0x20, +0x77, 0x65, 0x6c, 0x6c, 0x2e, 0x20, 0x0a, 0x45, 0x61, 0x63, +0x68, 0x87, 0x00, 0xd0, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, +0x6e, 0x73, 0x20, 0x61, 0x20, 0x73, 0x6d, 0xd3, 0x00, 0xfa, +0x06, 0x64, 0x69, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x73, +0x68, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x77, 0x68, 0x69, +0x63, 0x68, 0x62, 0x00, 0x03, 0x58, 0x00, 0x05, 0x87, 0x00, +0x04, 0xc8, 0x00, 0x91, 0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x31, +0x34, 0x2e, 0x31, 0x6d, 0x01, 0x01, 0x5b, 0x00, 0xc0, 0x72, +0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x68, 0x69, 0x73, 0x20, +0x67, 0x16, 0x01, 0x00, 0x0c, 0x01, 0xf0, 0x02, 0x62, 0x65, +0x20, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x20, 0x77, 0x69, +0x74, 0x68, 0x20, 0x65, 0x69, 0x5c, 0x00, 0x01, 0x39, 0x01, +0xa2, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, +0x6f, 0x10, 0x00, 0xf4, 0x08, 0x6d, 0x6f, 0x75, 0x73, 0x65, +0x2e, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, +0x69, 0x63, 0x6b, 0x20, 0x69, 0x6e, 0x20, 0x61, 0xbc, 0x00, +0x23, 0x74, 0x6f, 0x7a, 0x00, 0x01, 0xb1, 0x01, 0x01, 0x49, +0x01, 0xa5, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x69, 0x61, 0x74, +0x65, 0x64, 0xd8, 0x01, 0x00, 0x4d, 0x00, 0x31, 0x75, 0x73, +0x65, 0x51, 0x00, 0x60, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, +0x68, 0x00, 0x00, 0xc9, 0x01, 0x05, 0x96, 0x01, 0x07, 0x94, +0x01, 0x02, 0xc1, 0x01, 0x80, 0x70, 0x61, 0x63, 0x65, 0x20, +0x62, 0x61, 0x72, 0x3c, 0x00, 0x41, 0x45, 0x6e, 0x74, 0x65, +0x33, 0x00, 0x04, 0x70, 0x00, 0x50, 0x2e, 0x20, 0x0a, 0x49, +0x66, 0xf8, 0x00, 0x05, 0x57, 0x00, 0xf4, 0x06, 0x60, 0x53, +0x6f, 0x6c, 0x76, 0x65, 0x27, 0x20, 0x66, 0x75, 0x6e, 0x63, +0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0xf4, +0x00, 0x10, 0x2c, 0xa0, 0x00, 0x92, 0x77, 0x69, 0x6c, 0x6c, +0x20, 0x6d, 0x61, 0x72, 0x6b, 0x57, 0x02, 0x28, 0x6f, 0x66, +0x3b, 0x02, 0x00, 0xd5, 0x00, 0x53, 0x72, 0x65, 0x64, 0x2e, +0x20, 0x57, 0x00, 0x02, 0xea, 0x00, 0x40, 0x6f, 0x6e, 0x63, +0x65, 0x1a, 0x00, 0x44, 0x65, 0x76, 0x65, 0x72, 0x36, 0x02, +0x02, 0x32, 0x01, 0x10, 0x61, 0x2e, 0x00, 0x01, 0x4e, 0x00, +0x10, 0x2c, 0x47, 0x00, 0x01, 0x66, 0x00, 0x00, 0xb0, 0x01, +0x30, 0x75, 0x6c, 0x64, 0x5d, 0x01, 0x40, 0x73, 0x6f, 0x6c, +0x76, 0x4e, 0x00, 0x13, 0x28, 0x4f, 0x00, 0x0e, 0x39, 0x01, +0x10, 0x5f, 0x47, 0x00, 0x48, 0x6f, 0x75, 0x74, 0x5f, 0x4b, +0x00, 0x07, 0x0c, 0x00, 0x02, 0xaf, 0x00, 0x60, 0x61, 0x70, +0x70, 0x65, 0x61, 0x72, 0x39, 0x00, 0x11, 0x69, 0x91, 0x02, +0x70, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0xf3, 0x00, +0x20, 0x61, 0x74, 0x5a, 0x00, 0x02, 0x27, 0x00, 0x40, 0x6e, +0x65, 0x65, 0x64, 0x1f, 0x00, 0x10, 0x72, 0xa9, 0x00, 0x13, +0x73, 0x1e, 0x00, 0x50, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x0b, +0x01, 0x02, 0x1a, 0x00, 0x00, 0x71, 0x02, 0x21, 0x74, 0x68, +0x9b, 0x00, 0x10, 0x75, 0x16, 0x00, 0x63, 0x2e, 0x29, 0x20, +0x0a, 0x28, 0x41, 0x41, 0x03, 0x11, 0x61, 0x34, 0x01, 0xb0, +0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, +0x64, 0x73, 0x00, 0x22, 0x73, 0x65, 0x4a, 0x01, 0x41, 0x32, +0x2e, 0x31, 0x20, 0x9b, 0x01, 0xf3, 0x00, 0x6c, 0x73, 0x6f, +0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, +0x2e, 0x29, 0x6b, 0x02, 0x12, 0x32, 0x6b, 0x02, 0x91, 0x70, +0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x6d, 0x02, +0x37, 0x65, 0x73, 0x65, 0x12, 0x00, 0x00, 0x3f, 0x00, 0x05, +0x3a, 0x00, 0x02, 0x65, 0x03, 0x02, 0xb5, 0x01, 0xd3, 0x43, +0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, +0x6f, 0x70, 0xb7, 0x01, 0x02, 0x1a, 0x00, 0xf0, 0x0a, 0x54, +0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, +0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, +0x20, 0x5f, 0x48, 0x65, 0x83, 0x03, 0x60, 0x5f, 0x20, 0x0a, +0x53, 0x69, 0x7a, 0xc4, 0x01, 0x02, 0x43, 0x04, 0x24, 0x69, +0x6e, 0xc8, 0x01, 0x00, 0x2d, 0x00, 0xb2, 0x53, 0x68, 0x61, +0x70, 0x65, 0x20, 0x74, 0x79, 0x70, 0x65, 0x5f, 0xf8, 0x02, +0x04, 0x07, 0x03, 0x20, 0x20, 0x64, 0x8e, 0x00, 0x52, 0x6d, +0x69, 0x6e, 0x65, 0x73, 0x0b, 0x01, 0x35, 0x68, 0x61, 0x70, +0x09, 0x02, 0x63, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x6c, +0x03, 0x21, 0x69, 0x73, 0x67, 0x02, 0x62, 0x70, 0x65, 0x64, +0x20, 0x62, 0x79, 0xbe, 0x01, 0x00, 0x89, 0x03, 0x21, 0x69, +0x6e, 0x3f, 0x04, 0x44, 0x67, 0x69, 0x76, 0x65, 0x72, 0x00, +0xf2, 0x19, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x64, 0x65, +0x66, 0x61, 0x75, 0x6c, 0x74, 0x20, 0x73, 0x65, 0x74, 0x74, +0x69, 0x6e, 0x67, 0x2c, 0x20, 0x60, 0x43, 0x72, 0x6f, 0x73, +0x73, 0x65, 0x73, 0x27, 0x2c, 0x20, 0x63, 0x61, 0x75, 0x73, +0x65, 0x73, 0x44, 0x02, 0x0e, 0x37, 0x03, 0x45, 0x73, 0x65, +0x6c, 0x66, 0x3b, 0x03, 0x10, 0x66, 0xe5, 0x04, 0x60, 0x69, +0x6d, 0x6d, 0x65, 0x64, 0x69, 0xe5, 0x01, 0x10, 0x6e, 0xed, +0x00, 0x71, 0x62, 0x6f, 0x75, 0x72, 0x73, 0x20, 0x28, 0x8f, +0x03, 0x31, 0x72, 0x65, 0x65, 0x98, 0x03, 0xc0, 0x77, 0x6f, +0x20, 0x69, 0x66, 0x20, 0x69, 0x74, 0x27, 0x73, 0x20, 0x61, +0x79, 0x03, 0x41, 0x20, 0x65, 0x64, 0x67, 0x1a, 0x00, 0x71, +0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x29, 0x95, 0x00, 0x02, +0x31, 0x04, 0x07, 0x93, 0x00, 0x65, 0x52, 0x61, 0x6e, 0x64, +0x6f, 0x6d, 0x92, 0x00, 0x00, 0x6d, 0x02, 0x01, 0x12, 0x00, +0x01, 0x08, 0x01, 0x01, 0x94, 0x00, 0x20, 0x62, 0x65, 0x90, +0x03, 0x79, 0x73, 0x65, 0x6e, 0x20, 0x66, 0x6f, 0x72, 0xb2, +0x00, 0x00, 0x9b, 0x05, 0x05, 0xe9, 0x02, 0x00, 0x1f, 0x01, +0x93, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, +0x27, 0x00, 0x80, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 1521; const char quick_help_text[] = "Flip groups of squares to light them all up at once."; diff --git a/apps/plugins/puzzles/help/flood.c b/apps/plugins/puzzles/help/flood.c index 7f010ee232..15bfa0a220 100644 --- a/apps/plugins/puzzles/help/flood.c +++ b/apps/plugins/puzzles/help/flood.c @@ -1,66 +1,169 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2375 comp 1591 ratio 0.669895 level 11 saved 784 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 39: Flood " -"\n" -"You are given a grid of squares, coloured at random in multiple " -"colours. In each move, you can flood-fill the top left square in a " -"colour of your choice (i.e. every square reachable from the starting " -"square by an orthogonally connected path of squares all the same " -"colour will be filled in the new colour). As you do this, more and " -"more of the grid becomes connected to the starting square. " -"\n" -"Your aim is to make the whole grid the same colour, in as few moves " -"as possible. The game will set a limit on the number of moves, based " -"on running its own internal solver. You win if you can make the " -"whole grid the same colour in that many moves or fewer. " -"\n" -"I saw this game (with a fixed grid size, fixed number of colours, " -"and fixed move limit) at http://floodit.appspot.com (no longer " -"accessible). " -"\n" -"\n#39.1 Flood controls " -"\n" -"To play Flood, click the mouse in a square. The top left corner and " -"everything connected to it will be flood-filled with the colour of " -"the square you clicked. Clicking a square the same colour as the top " -"left corner has no effect, and therefore does not count as a move. " -"\n" -"You can also use the cursor keys to move a cursor (outline black " -"square) around the grid. Pressing the return key will fill the top " -"left corner in the colour of the square under the cursor. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#39.2 Flood parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of the grid, in squares. " -"\n" -"_Colours_ " -"\n" -"Number of colours used to fill the grid. Must be at least 3\n" -"(with two colours there would only be one legal move at any " -"stage, hence no choice to make at all), and at most 10. " -"\n" -"_Extra moves permitted_ " -"\n" -"Controls the difficulty of the puzzle, by increasing the move " -"limit. In each new grid, Flood will run an internal solver to " -"generate its own solution, and then the value in this field " -"will be added to the length of Flood's solution to generate the " -"game's move limit. So a value of 0 requires you to be just as " -"efficient as Flood's automated solver, and a larger value makes " -"it easier. " -"\n" -"(Note that Flood's internal solver will not necessarily find the " -"shortest possible solution, though I believe it's pretty close. " -"For a real challenge, set this value to 0 and then try to solve " -"a grid in _strictly fewer_ moves than the limit you're given!) " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x44, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x39, 0x3a, 0x20, 0x46, 0x6c, 0x6f, 0x6f, 0x64, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x20, +0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, 0x72, +0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, +0x72, 0x65, 0x73, 0x2c, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, +0x72, 0x65, 0x64, 0x20, 0x61, 0x74, 0x20, 0x72, 0x61, 0x6e, +0x64, 0x6f, 0x6d, 0x20, 0x69, 0x6e, 0x20, 0x6d, 0x75, 0x6c, +0x74, 0x69, 0x70, 0x6c, 0x65, 0x1f, 0x00, 0xf0, 0x0b, 0x73, +0x2e, 0x20, 0x49, 0x6e, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, +0x6d, 0x6f, 0x76, 0x65, 0x2c, 0x20, 0x79, 0x6f, 0x75, 0x20, +0x63, 0x61, 0x6e, 0x20, 0x66, 0x66, 0x00, 0xf3, 0x03, 0x2d, +0x66, 0x69, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x65, 0x20, 0x74, +0x6f, 0x70, 0x20, 0x6c, 0x65, 0x66, 0x74, 0x5f, 0x00, 0x00, +0x4a, 0x00, 0x13, 0x61, 0x43, 0x00, 0x00, 0x75, 0x00, 0x10, +0x79, 0x08, 0x00, 0xf4, 0x03, 0x63, 0x68, 0x6f, 0x69, 0x63, +0x65, 0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x20, 0x65, 0x76, +0x65, 0x72, 0x79, 0x2e, 0x00, 0x10, 0x72, 0x61, 0x00, 0x91, +0x61, 0x62, 0x6c, 0x65, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x51, +0x00, 0x84, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, +0x23, 0x00, 0xf7, 0x12, 0x62, 0x79, 0x20, 0x61, 0x6e, 0x20, +0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e, 0x61, 0x6c, +0x6c, 0x79, 0x20, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, +0x65, 0x64, 0x20, 0x70, 0x61, 0x74, 0x68, 0xdc, 0x00, 0x23, +0x20, 0x61, 0x96, 0x00, 0x44, 0x73, 0x61, 0x6d, 0x65, 0x86, +0x00, 0x10, 0x77, 0xab, 0x00, 0x30, 0x62, 0x65, 0x20, 0xb3, +0x00, 0x51, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x22, 0x00, 0x33, +0x6e, 0x65, 0x77, 0x21, 0x00, 0x51, 0x29, 0x2e, 0x20, 0x41, +0x73, 0xdf, 0x00, 0xf2, 0x02, 0x64, 0x6f, 0x20, 0x74, 0x68, +0x69, 0x73, 0x2c, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x61, +0x6e, 0x64, 0x09, 0x00, 0x20, 0x6f, 0x66, 0x32, 0x00, 0x02, +0x48, 0x01, 0x77, 0x62, 0x65, 0x63, 0x6f, 0x6d, 0x65, 0x73, +0x83, 0x00, 0x2f, 0x74, 0x6f, 0xb7, 0x00, 0x01, 0x11, 0x2e, +0x88, 0x01, 0x80, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, +0x73, 0x25, 0x00, 0x41, 0x6d, 0x61, 0x6b, 0x65, 0x2a, 0x00, +0x42, 0x77, 0x68, 0x6f, 0x6c, 0x4e, 0x00, 0x0c, 0xab, 0x00, +0x11, 0x2c, 0x3e, 0x01, 0x51, 0x73, 0x20, 0x66, 0x65, 0x77, +0x75, 0x01, 0x10, 0x73, 0x0d, 0x00, 0xb0, 0x70, 0x6f, 0x73, +0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, 0x20, 0x54, 0x85, 0x00, +0x32, 0x61, 0x6d, 0x65, 0xd2, 0x00, 0xd3, 0x73, 0x65, 0x74, +0x20, 0x61, 0x20, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x20, 0x6f, +0xd4, 0x00, 0x40, 0x75, 0x6d, 0x62, 0x65, 0x77, 0x01, 0x02, +0x3e, 0x00, 0x70, 0x2c, 0x20, 0x62, 0x61, 0x73, 0x65, 0x64, +0x1e, 0x00, 0x40, 0x72, 0x75, 0x6e, 0x6e, 0x9d, 0x00, 0xf0, +0x0a, 0x69, 0x74, 0x73, 0x20, 0x6f, 0x77, 0x6e, 0x20, 0x69, +0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x20, 0x73, 0x6f, +0x6c, 0x76, 0x65, 0x72, 0x2e, 0x20, 0x35, 0x02, 0x64, 0x77, +0x69, 0x6e, 0x20, 0x69, 0x66, 0xe9, 0x01, 0x0f, 0xb1, 0x00, +0x11, 0x02, 0x4d, 0x01, 0x73, 0x61, 0x74, 0x20, 0x6d, 0x61, +0x6e, 0x79, 0xb3, 0x00, 0x20, 0x6f, 0x72, 0xc0, 0x00, 0x00, +0x54, 0x00, 0x61, 0x0a, 0x49, 0x20, 0x73, 0x61, 0x77, 0x53, +0x01, 0x02, 0xb8, 0x00, 0xd2, 0x28, 0x77, 0x69, 0x74, 0x68, +0x20, 0x61, 0x20, 0x66, 0x69, 0x78, 0x65, 0x64, 0x51, 0x00, +0x52, 0x73, 0x69, 0x7a, 0x65, 0x2c, 0x11, 0x00, 0x06, 0xbf, +0x00, 0x04, 0x83, 0x02, 0x10, 0x2c, 0x84, 0x01, 0x02, 0x1d, +0x00, 0x01, 0x5d, 0x00, 0x02, 0xee, 0x00, 0x10, 0x29, 0xb8, +0x02, 0x71, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x8d, +0x02, 0xf2, 0x0f, 0x69, 0x74, 0x2e, 0x61, 0x70, 0x70, 0x73, +0x70, 0x6f, 0x74, 0x2e, 0x63, 0x6f, 0x6d, 0x20, 0x28, 0x6e, +0x6f, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x65, 0x72, 0x20, 0x61, +0x63, 0x63, 0x65, 0x3e, 0x01, 0xa2, 0x29, 0x2e, 0x20, 0x0a, +0x0a, 0x23, 0x33, 0x39, 0x2e, 0x31, 0x27, 0x03, 0x00, 0xc1, +0x01, 0xe2, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x00, 0x71, 0x2c, +0x20, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xe9, 0x00, 0x42, 0x6d, +0x6f, 0x75, 0x73, 0xd1, 0x02, 0x05, 0xd5, 0x01, 0x18, 0x54, +0xf2, 0x02, 0x60, 0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0xa4, +0x00, 0x02, 0xd5, 0x02, 0x5a, 0x74, 0x68, 0x69, 0x6e, 0x67, +0x1a, 0x02, 0x24, 0x69, 0x74, 0x7f, 0x02, 0x03, 0x38, 0x03, +0x03, 0x85, 0x02, 0x01, 0x09, 0x01, 0x24, 0x74, 0x68, 0x48, +0x01, 0x03, 0x63, 0x02, 0x03, 0x67, 0x00, 0x00, 0x82, 0x01, +0x02, 0x87, 0x00, 0x50, 0x65, 0x64, 0x2e, 0x20, 0x43, 0x09, +0x00, 0x35, 0x69, 0x6e, 0x67, 0x86, 0x00, 0x0c, 0x85, 0x01, +0x00, 0x25, 0x02, 0x1f, 0x74, 0x98, 0x00, 0x00, 0xd0, 0x68, +0x61, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x65, 0x66, 0x66, 0x65, +0x63, 0x74, 0x4b, 0x01, 0x01, 0xbf, 0x01, 0x30, 0x72, 0x65, +0x66, 0xd4, 0x02, 0x30, 0x64, 0x6f, 0x65, 0x1e, 0x00, 0x00, +0x2d, 0x00, 0x30, 0x75, 0x6e, 0x74, 0x43, 0x00, 0x10, 0x61, +0x63, 0x01, 0x01, 0xb8, 0x02, 0x03, 0x00, 0x02, 0x82, 0x61, +0x6c, 0x73, 0x6f, 0x20, 0x75, 0x73, 0x65, 0xa8, 0x00, 0x90, +0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0xcd, +0x02, 0x02, 0x8e, 0x01, 0x14, 0x61, 0x16, 0x00, 0xe3, 0x28, +0x6f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x62, 0x6c, +0x61, 0x63, 0x6b, 0xa7, 0x00, 0x85, 0x29, 0x20, 0x61, 0x72, +0x6f, 0x75, 0x6e, 0x64, 0x3c, 0x03, 0x40, 0x2e, 0x20, 0x50, +0x72, 0x8e, 0x01, 0x21, 0x6e, 0x67, 0x13, 0x00, 0x60, 0x72, +0x65, 0x74, 0x75, 0x72, 0x6e, 0x52, 0x00, 0x02, 0x23, 0x01, +0x03, 0x52, 0x04, 0x0e, 0xc8, 0x00, 0x2f, 0x69, 0x6e, 0x2a, +0x01, 0x07, 0x56, 0x75, 0x6e, 0x64, 0x65, 0x72, 0xa1, 0x00, +0x00, 0x75, 0x02, 0x23, 0x28, 0x41, 0x48, 0x00, 0xf2, 0x00, +0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x64, 0x65, +0x73, 0x63, 0x72, 0x69, 0x62, 0xfb, 0x03, 0x21, 0x73, 0x65, +0x16, 0x00, 0x40, 0x20, 0x32, 0x2e, 0x31, 0x25, 0x05, 0x02, +0xe5, 0x00, 0x60, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x64, +0x03, 0x13, 0x29, 0x26, 0x02, 0x13, 0x32, 0x26, 0x02, 0x90, +0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x28, +0x02, 0x47, 0x68, 0x65, 0x73, 0x65, 0x12, 0x00, 0x00, 0x40, +0x00, 0x02, 0x3b, 0x00, 0x0a, 0xc1, 0x04, 0xe0, 0x60, 0x43, +0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, +0x6f, 0x70, 0x6e, 0x00, 0x04, 0xa0, 0x03, 0xf9, 0x15, 0x60, +0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, +0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, +0x2c, 0x20, 0x5f, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, +0x20, 0x0a, 0x53, 0x69, 0x7a, 0x6f, 0x04, 0x00, 0x11, 0x04, +0x04, 0xdc, 0x04, 0x00, 0x32, 0x00, 0x12, 0x43, 0x18, 0x03, +0x4c, 0x5f, 0x20, 0x0a, 0x4e, 0x2c, 0x03, 0x31, 0x20, 0x75, +0x73, 0x73, 0x02, 0x01, 0x48, 0x01, 0x07, 0x74, 0x01, 0x70, +0x4d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x34, 0x03, 0x92, +0x6c, 0x65, 0x61, 0x73, 0x74, 0x20, 0x33, 0x0a, 0x28, 0x7e, +0x02, 0x24, 0x77, 0x6f, 0x3c, 0x00, 0x02, 0x18, 0x02, 0x50, +0x20, 0x77, 0x6f, 0x75, 0x6c, 0x2e, 0x04, 0x20, 0x6c, 0x79, +0x31, 0x00, 0x93, 0x6f, 0x6e, 0x65, 0x20, 0x6c, 0x65, 0x67, +0x61, 0x6c, 0xed, 0x01, 0x50, 0x74, 0x20, 0x61, 0x6e, 0x79, +0xe7, 0x04, 0xc3, 0x67, 0x65, 0x2c, 0x20, 0x68, 0x65, 0x6e, +0x63, 0x65, 0x20, 0x6e, 0x6f, 0xdb, 0x05, 0x05, 0xe0, 0x04, +0x20, 0x61, 0x74, 0x83, 0x05, 0x12, 0x29, 0x6e, 0x02, 0x00, +0x18, 0x04, 0x60, 0x6f, 0x73, 0x74, 0x20, 0x31, 0x30, 0xbc, +0x00, 0x53, 0x45, 0x78, 0x74, 0x72, 0x61, 0x24, 0x04, 0xd2, +0x70, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, +0x20, 0x0a, 0x43, 0x89, 0x03, 0x02, 0xc4, 0x02, 0xa4, 0x64, +0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x07, +0x01, 0x70, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x07, +0x06, 0x64, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x41, 0x02, +0x07, 0x12, 0x04, 0x05, 0xab, 0x06, 0x00, 0xd6, 0x05, 0x02, +0x39, 0x01, 0x02, 0xc0, 0x01, 0x01, 0x5a, 0x02, 0x00, 0xfd, +0x04, 0x2d, 0x20, 0x61, 0xf4, 0x04, 0x00, 0xb4, 0x00, 0x84, +0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x18, 0x05, +0x00, 0x1b, 0x00, 0x10, 0x75, 0xb2, 0x01, 0x05, 0x2f, 0x03, +0x02, 0xb9, 0x01, 0x40, 0x76, 0x61, 0x6c, 0x75, 0x0a, 0x04, +0x02, 0xcc, 0x04, 0x55, 0x66, 0x69, 0x65, 0x6c, 0x64, 0xd8, +0x03, 0x36, 0x61, 0x64, 0x64, 0x06, 0x06, 0x41, 0x6c, 0x65, +0x6e, 0x67, 0x92, 0x06, 0x02, 0x80, 0x00, 0x25, 0x27, 0x73, +0x52, 0x00, 0x09, 0x6f, 0x00, 0x13, 0x74, 0xca, 0x05, 0x29, +0x27, 0x73, 0xc6, 0x00, 0x41, 0x53, 0x6f, 0x20, 0x61, 0x6c, +0x00, 0x01, 0x05, 0x02, 0x92, 0x30, 0x20, 0x72, 0x65, 0x71, +0x75, 0x69, 0x72, 0x65, 0x9d, 0x06, 0x20, 0x74, 0x6f, 0x6e, +0x00, 0x31, 0x6a, 0x75, 0x73, 0xae, 0x03, 0x10, 0x65, 0x28, +0x01, 0x21, 0x69, 0x65, 0xbb, 0x03, 0x05, 0x6c, 0x00, 0x93, +0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0xe3, +0x00, 0x03, 0x87, 0x01, 0x72, 0x20, 0x6c, 0x61, 0x72, 0x67, +0x65, 0x72, 0x5a, 0x00, 0x01, 0xa8, 0x01, 0x10, 0x73, 0x99, +0x04, 0x00, 0x4b, 0x01, 0x11, 0x65, 0x32, 0x03, 0x41, 0x4e, +0x6f, 0x74, 0x65, 0xc8, 0x05, 0x04, 0x4a, 0x00, 0x0b, 0x2c, +0x01, 0x02, 0x44, 0x07, 0x01, 0x2f, 0x04, 0x20, 0x6e, 0x65, +0x52, 0x05, 0x93, 0x61, 0x72, 0x69, 0x6c, 0x79, 0x20, 0x66, +0x69, 0x6e, 0x12, 0x06, 0x75, 0x68, 0x6f, 0x72, 0x74, 0x65, +0x73, 0x74, 0xac, 0x06, 0x07, 0x48, 0x01, 0xf0, 0x00, 0x74, +0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x49, 0x20, 0x62, 0x65, +0x6c, 0x69, 0x65, 0x76, 0x6b, 0x01, 0xf0, 0x07, 0x27, 0x73, +0x20, 0x70, 0x72, 0x65, 0x74, 0x74, 0x79, 0x20, 0x63, 0x6c, +0x6f, 0x73, 0x65, 0x2e, 0x20, 0x46, 0x6f, 0x72, 0x20, 0x61, +0x0c, 0x08, 0x60, 0x6c, 0x20, 0x63, 0x68, 0x61, 0x6c, 0x45, +0x01, 0x20, 0x65, 0x2c, 0xe1, 0x06, 0x01, 0x70, 0x01, 0x01, +0xb8, 0x00, 0x01, 0x63, 0x02, 0x17, 0x30, 0x96, 0x01, 0x52, +0x72, 0x79, 0x20, 0x74, 0x6f, 0x9f, 0x00, 0x02, 0xe4, 0x08, +0x01, 0xdf, 0x03, 0x92, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x63, +0x74, 0x6c, 0x79, 0x84, 0x06, 0x12, 0x5f, 0x70, 0x02, 0x00, +0xdc, 0x00, 0x00, 0xbc, 0x01, 0x03, 0x69, 0x01, 0x00, 0x4f, +0x01, 0x14, 0x27, 0x21, 0x09, 0x50, 0x21, 0x29, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 2375; const char quick_help_text[] = "Turn the grid the same colour in as few flood fills as possible."; diff --git a/apps/plugins/puzzles/help/galaxies.c b/apps/plugins/puzzles/help/galaxies.c index 6e455bc0f9..8a115a9241 100644 --- a/apps/plugins/puzzles/help/galaxies.c +++ b/apps/plugins/puzzles/help/galaxies.c @@ -1,66 +1,183 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2504 comp 1733 ratio 0.692093 level 11 saved 771 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 28: Galaxies " -"\n" -"You have a rectangular grid containing a number of dots. Your aim is " -"to draw edges along the grid lines which divide the rectangle into " -"regions in such a way that every region is 180-degree rotationally " -"symmetric, and contains exactly one dot which is located at its " -"centre of symmetry. " -"\n" -"This puzzle was invented by Nikoli [13], under the name `Tentai " -"Show'; its name is commonly translated into English as `Spiral " -"Galaxies'. " -"\n" -"Galaxies was contributed to this collection by James Harvey. " -"\n" -"[13] http://www.nikoli.co.jp/en/puzzles/astronomical_show.html " -"\n" -"\n#28.1 Galaxies controls " -"\n" -"Left-click on any grid line to draw an edge if there isn't one " -"already, or to remove one if there is. When you create a valid " -"region (one which is closed, contains exactly one dot, is 180-degree " -"symmetric about that dot, and contains no extraneous edges inside " -"it) it will be highlighted automatically; so your aim is to have the " -"whole grid highlighted in that way. " -"\n" -"During solving, you might know that a particular grid square belongs " -"to a specific dot, but not be sure of where the edges go and which " -"other squares are connected to the dot. In order to mark this so you " -"don't forget, you can right-click on the dot and drag, which will " -"create an arrow marker pointing at the dot. Drop that in a square of " -"your choice and it will remind you which dot it's associated with. " -"You can also right-click on existing arrows to pick them up and move " -"them, or destroy them by dropping them off the edge of the grid. " -"(Also, if you're not sure which dot an arrow is pointing at, you can " -"pick it up and move it around to make it clearer. It will swivel " -"constantly as you drag it, to stay pointed at its parent dot.) " -"\n" -"You can also use the cursor keys to move around the grid squares and " -"lines. Pressing the return key when over a grid line will draw or " -"clear its edge, as above. Pressing the return key when over a dot " -"will pick up an arrow, to be dropped the next time the return key " -"is pressed; this can also be used to move existing arrows around, " -"removing them by dropping them on a dot or another arrow. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#28.2 Galaxies parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. More difficult " -"puzzles require more complex deductions, and the `Unreasonable' " -"difficulty level may require backtracking. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf2, 0x64, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x38, 0x3a, 0x20, 0x47, 0x61, 0x6c, 0x61, 0x78, +0x69, 0x65, 0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, +0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x72, 0x65, 0x63, 0x74, +0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x67, 0x72, +0x69, 0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, +0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, +0x65, 0x72, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x6f, 0x74, 0x73, +0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, +0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x72, 0x61, +0x77, 0x20, 0x65, 0x64, 0x67, 0x65, 0x73, 0x20, 0x61, 0x6c, +0x6f, 0x6e, 0x67, 0x20, 0x74, 0x68, 0x65, 0x46, 0x00, 0xf0, +0x03, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x77, 0x68, 0x69, +0x63, 0x68, 0x20, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x1c, +0x00, 0x04, 0x6e, 0x00, 0xf3, 0x19, 0x6c, 0x65, 0x20, 0x69, +0x6e, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, +0x73, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20, +0x61, 0x20, 0x77, 0x61, 0x79, 0x20, 0x74, 0x68, 0x61, 0x74, +0x20, 0x65, 0x76, 0x65, 0x72, 0x79, 0x21, 0x00, 0x00, 0x6e, +0x00, 0xf5, 0x16, 0x31, 0x38, 0x30, 0x2d, 0x64, 0x65, 0x67, +0x72, 0x65, 0x65, 0x20, 0x72, 0x6f, 0x74, 0x61, 0x74, 0x69, +0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x79, 0x6d, +0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x2c, 0x20, 0x61, 0x6e, +0xbe, 0x00, 0xd0, 0x73, 0x20, 0x65, 0x78, 0x61, 0x63, 0x74, +0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, 0xbc, 0x00, 0x02, 0x8b, +0x00, 0x00, 0x49, 0x00, 0xf4, 0x09, 0x6c, 0x6f, 0x63, 0x61, +0x74, 0x65, 0x64, 0x20, 0x61, 0x74, 0x20, 0x69, 0x74, 0x73, +0x20, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x20, 0x6f, 0x66, +0x4a, 0x00, 0xf0, 0x03, 0x79, 0x2e, 0x20, 0x0a, 0x54, 0x68, +0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, +0x77, 0x61, 0xa0, 0x00, 0x30, 0x76, 0x65, 0x6e, 0x35, 0x00, +0xf1, 0x06, 0x62, 0x79, 0x20, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, +0x69, 0x20, 0x5b, 0x31, 0x33, 0x5d, 0x2c, 0x20, 0x75, 0x6e, +0x64, 0x65, 0x72, 0xda, 0x00, 0x80, 0x6e, 0x61, 0x6d, 0x65, +0x20, 0x60, 0x54, 0x65, 0x7f, 0x00, 0x70, 0x20, 0x53, 0x68, +0x6f, 0x77, 0x27, 0x3b, 0x60, 0x00, 0x01, 0x18, 0x00, 0x00, +0x77, 0x00, 0xf0, 0x00, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, +0x6c, 0x79, 0x20, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6c, 0x83, +0x00, 0x02, 0x04, 0x01, 0xf5, 0x03, 0x45, 0x6e, 0x67, 0x6c, +0x69, 0x73, 0x68, 0x20, 0x61, 0x73, 0x20, 0x60, 0x53, 0x70, +0x69, 0x72, 0x61, 0x6c, 0xa9, 0x01, 0x44, 0x27, 0x2e, 0x20, +0x0a, 0x0c, 0x00, 0x00, 0x88, 0x00, 0x01, 0xde, 0x00, 0x70, +0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x7f, 0x01, 0x21, +0x74, 0x68, 0x59, 0x00, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0x10, +0x01, 0x00, 0x9e, 0x00, 0xb0, 0x4a, 0x61, 0x6d, 0x65, 0x73, +0x20, 0x48, 0x61, 0x72, 0x76, 0x65, 0xc9, 0x00, 0x00, 0xa6, +0x00, 0xd1, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, +0x77, 0x77, 0x77, 0x2e, 0x6e, 0xbd, 0x00, 0xa2, 0x2e, 0x63, +0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0xe4, 0x00, +0xf4, 0x11, 0x73, 0x2f, 0x61, 0x73, 0x74, 0x72, 0x6f, 0x6e, +0x6f, 0x6d, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x68, 0x6f, +0x77, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x0a, 0x0a, 0x23, +0x32, 0x38, 0x2e, 0x31, 0x91, 0x00, 0x03, 0x81, 0x00, 0xf6, +0x07, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, +0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x20, 0x6f, 0x6e, 0x20, +0x61, 0x6e, 0x79, 0xf8, 0x01, 0x05, 0x1a, 0x02, 0x21, 0x61, +0x6e, 0x1d, 0x02, 0x30, 0x20, 0x69, 0x66, 0x23, 0x01, 0x10, +0x72, 0x08, 0x01, 0x31, 0x6e, 0x27, 0x74, 0x93, 0x01, 0xc1, +0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x2c, 0x20, 0x6f, +0x72, 0x20, 0x09, 0x02, 0x79, 0x6d, 0x6f, 0x76, 0x65, 0x20, +0x6f, 0x6e, 0x2d, 0x00, 0xf0, 0x01, 0x2e, 0x20, 0x57, 0x68, +0x65, 0x6e, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x63, 0x72, 0x65, +0x61, 0x74, 0xb0, 0x02, 0x54, 0x76, 0x61, 0x6c, 0x69, 0x64, +0x18, 0x02, 0x46, 0x28, 0x6f, 0x6e, 0x65, 0xda, 0x01, 0x7f, +0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x2c, 0x04, 0x02, 0x06, +0x1a, 0x2c, 0x48, 0x02, 0x06, 0x3b, 0x02, 0x61, 0x20, 0x61, +0x62, 0x6f, 0x75, 0x74, 0x78, 0x02, 0x00, 0x28, 0x00, 0x0b, +0x4a, 0x02, 0x50, 0x6e, 0x6f, 0x20, 0x65, 0x78, 0xb6, 0x01, +0x43, 0x65, 0x6f, 0x75, 0x73, 0xee, 0x02, 0x30, 0x69, 0x6e, +0x73, 0xd3, 0x02, 0xf1, 0x08, 0x69, 0x74, 0x29, 0x20, 0x69, +0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, +0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x5f, 0x02, +0x80, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0xa6, +0x02, 0x69, 0x3b, 0x20, 0x73, 0x6f, 0x20, 0x79, 0x3c, 0x03, +0x02, 0x80, 0x03, 0x20, 0x74, 0x68, 0xc0, 0x00, 0x22, 0x6f, +0x6c, 0x36, 0x03, 0x09, 0x41, 0x00, 0x22, 0x69, 0x6e, 0x91, +0x00, 0x20, 0x77, 0x61, 0xc9, 0x01, 0x30, 0x44, 0x75, 0x72, +0x92, 0x03, 0x81, 0x73, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, +0x2c, 0x14, 0x01, 0x10, 0x6d, 0x2a, 0x00, 0x52, 0x20, 0x6b, +0x6e, 0x6f, 0x77, 0x2a, 0x00, 0x86, 0x61, 0x20, 0x70, 0x61, +0x72, 0x74, 0x69, 0x63, 0xcc, 0x03, 0x90, 0x73, 0x71, 0x75, +0x61, 0x72, 0x65, 0x20, 0x62, 0x65, 0x9d, 0x03, 0x01, 0x76, +0x00, 0xa2, 0x61, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, +0x69, 0x63, 0xea, 0x00, 0x70, 0x62, 0x75, 0x74, 0x20, 0x6e, +0x6f, 0x74, 0xbe, 0x00, 0x22, 0x73, 0x75, 0x08, 0x03, 0x41, +0x77, 0x68, 0x65, 0x72, 0x9a, 0x00, 0x03, 0xec, 0x00, 0x20, +0x67, 0x6f, 0x10, 0x01, 0x03, 0x67, 0x01, 0x10, 0x6f, 0x9c, +0x01, 0x02, 0x58, 0x00, 0x00, 0xf5, 0x03, 0x20, 0x72, 0x65, +0x28, 0x01, 0x35, 0x6e, 0x65, 0x63, 0x92, 0x02, 0x01, 0x6a, +0x01, 0x91, 0x2e, 0x20, 0x49, 0x6e, 0x20, 0x6f, 0x72, 0x64, +0x65, 0xdd, 0x01, 0x41, 0x6d, 0x61, 0x72, 0x6b, 0xac, 0x02, +0x03, 0x06, 0x01, 0x30, 0x20, 0x64, 0x6f, 0x07, 0x02, 0x72, +0x66, 0x6f, 0x72, 0x67, 0x65, 0x74, 0x2c, 0xdf, 0x01, 0x76, +0x61, 0x6e, 0x20, 0x72, 0x69, 0x67, 0x68, 0x53, 0x02, 0x04, +0x4b, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x4e, 0x02, 0x22, 0x67, +0x2c, 0x82, 0x00, 0x01, 0x6d, 0x01, 0x05, 0x0f, 0x02, 0x71, +0x6e, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x63, 0x00, 0x81, +0x65, 0x72, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0xba, 0x04, +0x16, 0x74, 0x8b, 0x00, 0x41, 0x44, 0x72, 0x6f, 0x70, 0x21, +0x01, 0x00, 0x53, 0x01, 0x14, 0x61, 0x14, 0x01, 0x22, 0x6f, +0x66, 0x91, 0x01, 0x60, 0x63, 0x68, 0x6f, 0x69, 0x63, 0x65, +0x66, 0x00, 0x04, 0xca, 0x01, 0x00, 0x8d, 0x02, 0x30, 0x69, +0x6e, 0x64, 0x1f, 0x00, 0x04, 0xc1, 0x04, 0x10, 0x6f, 0x2c, +0x04, 0x91, 0x27, 0x73, 0x20, 0x61, 0x73, 0x73, 0x6f, 0x63, +0x69, 0xbc, 0x03, 0x73, 0x77, 0x69, 0x74, 0x68, 0x2e, 0x20, +0x59, 0xbc, 0x00, 0x4c, 0x61, 0x6c, 0x73, 0x6f, 0xc1, 0x00, +0x40, 0x65, 0x78, 0x69, 0x73, 0x8d, 0x00, 0x02, 0xa3, 0x00, +0x01, 0x7e, 0x01, 0x40, 0x70, 0x69, 0x63, 0x6b, 0x99, 0x00, +0x41, 0x6d, 0x20, 0x75, 0x70, 0x73, 0x00, 0x00, 0xf6, 0x02, +0x01, 0x11, 0x00, 0x01, 0x09, 0x03, 0x20, 0x64, 0x65, 0x87, +0x03, 0x11, 0x79, 0x11, 0x00, 0x00, 0xcd, 0x03, 0x82, 0x64, +0x72, 0x6f, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x11, 0x00, 0x34, +0x6f, 0x66, 0x66, 0x96, 0x01, 0x00, 0xbf, 0x00, 0x05, 0x6c, +0x05, 0xa1, 0x2e, 0x20, 0x28, 0x41, 0x6c, 0x73, 0x6f, 0x2c, +0x20, 0x69, 0xd3, 0x00, 0x30, 0x27, 0x72, 0x65, 0xd2, 0x01, +0x01, 0xcf, 0x01, 0x06, 0xc0, 0x00, 0x06, 0x2b, 0x01, 0x27, +0x69, 0x73, 0x27, 0x01, 0x06, 0x7f, 0x01, 0x02, 0x9c, 0x00, +0x28, 0x69, 0x74, 0x9a, 0x00, 0x00, 0x0f, 0x00, 0x62, 0x61, +0x72, 0x6f, 0x75, 0x6e, 0x64, 0xc7, 0x01, 0x11, 0x6b, 0x12, +0x00, 0xa3, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x65, 0x72, 0x2e, +0x20, 0x49, 0x30, 0x01, 0x60, 0x73, 0x77, 0x69, 0x76, 0x65, +0x6c, 0x09, 0x02, 0x40, 0x73, 0x74, 0x61, 0x6e, 0x71, 0x03, +0x20, 0x61, 0x73, 0x57, 0x00, 0x01, 0xb7, 0x01, 0x40, 0x20, +0x69, 0x74, 0x2c, 0x3e, 0x00, 0x41, 0x73, 0x74, 0x61, 0x79, +0x79, 0x00, 0x06, 0x7c, 0x05, 0x00, 0xaf, 0x02, 0x31, 0x65, +0x6e, 0x74, 0xa6, 0x01, 0x39, 0x29, 0x20, 0x0a, 0x4c, 0x01, +0x22, 0x75, 0x73, 0x83, 0x02, 0xa0, 0x63, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x41, 0x01, 0x01, 0x96, +0x00, 0x03, 0x93, 0x00, 0x05, 0x00, 0x01, 0x06, 0x8e, 0x02, +0x13, 0x6e, 0x78, 0x06, 0xa3, 0x2e, 0x20, 0x50, 0x72, 0x65, +0x73, 0x73, 0x69, 0x6e, 0x67, 0x75, 0x06, 0x40, 0x74, 0x75, +0x72, 0x6e, 0x44, 0x00, 0x20, 0x20, 0x77, 0x50, 0x04, 0x66, +0x6f, 0x76, 0x65, 0x72, 0x20, 0x61, 0xb0, 0x04, 0x01, 0xc6, +0x00, 0x02, 0xb2, 0x04, 0x22, 0x6f, 0x72, 0xdf, 0x00, 0x32, +0x20, 0x69, 0x74, 0xeb, 0x03, 0x40, 0x2c, 0x20, 0x61, 0x73, +0x1f, 0x04, 0x2f, 0x76, 0x65, 0x55, 0x00, 0x13, 0x22, 0x64, +0x6f, 0x15, 0x01, 0x02, 0x4f, 0x01, 0x25, 0x75, 0x70, 0x78, +0x01, 0x01, 0x05, 0x01, 0x22, 0x62, 0x65, 0xd4, 0x01, 0x22, +0x65, 0x64, 0x34, 0x06, 0x8b, 0x65, 0x78, 0x74, 0x20, 0x74, +0x69, 0x6d, 0x65, 0x52, 0x00, 0x01, 0xa4, 0x01, 0x00, 0x6d, +0x00, 0x31, 0x65, 0x64, 0x3b, 0x39, 0x03, 0x06, 0x18, 0x01, +0x20, 0x62, 0x65, 0x1b, 0x01, 0x14, 0x64, 0x0c, 0x01, 0x0c, +0x65, 0x02, 0x03, 0x1c, 0x01, 0x12, 0x2c, 0x51, 0x05, 0x05, +0x3b, 0x02, 0x0e, 0x4c, 0x02, 0x12, 0x6e, 0xac, 0x00, 0x00, +0xf1, 0x00, 0x21, 0x61, 0x6e, 0xd5, 0x03, 0x02, 0x42, 0x00, +0x71, 0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x91, 0x00, +0x11, 0x61, 0x56, 0x06, 0x10, 0x73, 0x97, 0x02, 0x42, 0x63, +0x72, 0x69, 0x62, 0x94, 0x04, 0x13, 0x73, 0x6c, 0x06, 0x30, +0x32, 0x2e, 0x31, 0xff, 0x03, 0x02, 0x96, 0x00, 0xb3, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0x34, 0x06, 0x14, 0x32, 0x34, 0x06, 0x01, 0xe6, 0x01, 0x70, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x59, 0x07, 0x36, +0x65, 0x73, 0x65, 0x12, 0x00, 0x01, 0x42, 0x04, 0x06, 0x3e, +0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x7b, 0x00, 0xe0, +0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, +0x27, 0x20, 0x6f, 0x70, 0x71, 0x00, 0x04, 0x13, 0x04, 0xf0, +0x0b, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, +0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, +0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x7e, 0x03, 0x60, +0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x1f, 0x03, 0x02, 0xdf, +0x01, 0x24, 0x69, 0x6e, 0x1e, 0x02, 0x00, 0x2d, 0x00, 0x40, +0x44, 0x69, 0x66, 0x66, 0x1f, 0x05, 0x63, 0x74, 0x79, 0x5f, +0x20, 0x0a, 0x43, 0xcb, 0x06, 0x02, 0x29, 0x04, 0x05, 0x1a, +0x00, 0x05, 0x5a, 0x03, 0x40, 0x65, 0x6e, 0x65, 0x72, 0xea, +0x03, 0x03, 0x08, 0x08, 0x57, 0x2e, 0x20, 0x4d, 0x6f, 0x72, +0x29, 0x00, 0x13, 0x20, 0x3b, 0x07, 0xb1, 0x20, 0x72, 0x65, +0x71, 0x75, 0x69, 0x72, 0x65, 0x20, 0x6d, 0x6f, 0x0d, 0x05, +0xa2, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x20, 0x64, 0x65, 0x64, +0x75, 0x3e, 0x01, 0x01, 0x4d, 0x06, 0x02, 0xba, 0x00, 0x80, +0x55, 0x6e, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0xeb, 0x00, +0x18, 0x27, 0x73, 0x00, 0x20, 0x6c, 0x65, 0x40, 0x03, 0x35, +0x6d, 0x61, 0x79, 0x4d, 0x00, 0xf0, 0x01, 0x62, 0x61, 0x63, +0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x2e, +0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2504; const char quick_help_text[] = "Divide the grid into rotationally symmetric regions each centred on a dot."; diff --git a/apps/plugins/puzzles/help/guess.c b/apps/plugins/puzzles/help/guess.c index 2d1be2d977..97dd87580d 100644 --- a/apps/plugins/puzzles/help/guess.c +++ b/apps/plugins/puzzles/help/guess.c @@ -1,92 +1,198 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3030 comp 1882 ratio 0.621122 level 11 saved 1148 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 15: Guess " -"\n" -"You have a set of coloured pegs, and have to reproduce a " -"predetermined sequence of them (chosen by the computer) within a " -"certain number of guesses. " -"\n" -"Each guess gets marked with the number of correctly-coloured pegs " -"in the correct places (in black), and also the number of correctly-\n" -"coloured pegs in the wrong places (in white). " -"\n" -"This game is also known (and marketed, by Hasbro, mainly) as a board " -"game `Mastermind', with 6 colours, 4 pegs per row, and 10 guesses. " -"However, this version allows custom settings of number of colours " -"(up to 10), number of pegs per row, and number of guesses. " -"\n" -"Guess was contributed to this collection by James Harvey. " -"\n" -"\n#15.1 Guess controls " -"\n" -"This game can be played with either the keyboard or the mouse. " -"\n" -"With the mouse, drag a coloured peg from the tray on the left-hand " -"side to its required position in the current guess; pegs may also " -"be dragged from current and past guesses to copy them elsewhere. To " -"remove a peg, drag it off its current position to somewhere invalid. " -"\n" -"Right-clicking in the current guess adds a `hold' marker; pegs that " -"have hold markers will be automatically added to the next guess " -"after marking. " -"\n" -"Alternatively, with the keyboard, the up and down cursor keys can " -"be used to select a peg colour, the left and right keys to select a " -"peg position, and the space bar or Enter key to place a peg of the " -"selected colour in the chosen position. `D' or Backspace removes a " -"peg, and Space adds a hold marker. " -"\n" -"Pressing `h' or `?' will fill the current guess with a suggested " -"guess. Using this is not recommended for 10 or more pegs as it is " -"slow. " -"\n" -"When the guess is complete, the smaller feedback pegs will be " -"highlighted; clicking on these (or moving the peg cursor to them " -"with the arrow keys and pressing the space bar or Enter key) will " -"mark the current guess, copy any held pegs to the next guess, and " -"move the `current guess' marker. " -"\n" -"If you correctly position all the pegs the solution will be " -"displayed below; if you run out of guesses (or select `Solve...') " -"the solution will also be revealed. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#15.2 Guess parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. The default game matches the parameters for the board " -"game `Mastermind'. " -"\n" -"_Colours_ " -"\n" -"Number of colours the solution is chosen from; from 2 to 10 " -"(more is harder). " -"\n" -"_Pegs per guess_ " -"\n" -"Number of pegs per guess (more is harder). " -"\n" -"_Guesses_ " -"\n" -"Number of guesses you have to find the solution in (fewer is " -"harder). " -"\n" -"_Allow blanks_ " -"\n" -"Allows blank pegs to be given as part of a guess (makes it " -"easier, because you know that those will never be counted as " -"part of the solution). This is turned off by default. " -"\n" -"Note that this doesn't allow blank pegs in the solution; if you " -"really wanted that, use one extra colour. " -"\n" -"_Allow duplicates_ " -"\n" -"Allows the solution (and the guesses) to contain colours more " -"than once; this increases the search space (making things " -"harder), and is turned on by default. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf2, 0x29, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x35, 0x3a, 0x20, 0x47, 0x75, 0x65, 0x73, 0x73, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x73, 0x65, 0x74, 0x20, 0x6f, 0x66, 0x20, +0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x65, 0x64, 0x20, 0x70, +0x65, 0x67, 0x73, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x21, 0x00, +0xb0, 0x74, 0x6f, 0x20, 0x72, 0x65, 0x70, 0x72, 0x6f, 0x64, +0x75, 0x63, 0x2e, 0x00, 0xf0, 0x07, 0x70, 0x72, 0x65, 0x64, +0x65, 0x74, 0x65, 0x72, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x20, +0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x41, 0x00, +0xf0, 0x00, 0x74, 0x68, 0x65, 0x6d, 0x20, 0x28, 0x63, 0x68, +0x6f, 0x73, 0x65, 0x6e, 0x20, 0x62, 0x79, 0x10, 0x00, 0xf0, +0x13, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x72, +0x29, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, 0x61, +0x20, 0x63, 0x65, 0x72, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x6e, +0x75, 0x6d, 0x62, 0x65, 0x72, 0x39, 0x00, 0x10, 0x67, 0x93, +0x00, 0x92, 0x65, 0x73, 0x2e, 0x20, 0x0a, 0x45, 0x61, 0x63, +0x68, 0x0f, 0x00, 0xc1, 0x20, 0x67, 0x65, 0x74, 0x73, 0x20, +0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0x3c, 0x00, 0x00, 0x4f, +0x00, 0x07, 0x34, 0x00, 0xa9, 0x63, 0x6f, 0x72, 0x72, 0x65, +0x63, 0x74, 0x6c, 0x79, 0x2d, 0xb8, 0x00, 0x30, 0x20, 0x69, +0x6e, 0x29, 0x00, 0x04, 0x1f, 0x00, 0xf2, 0x03, 0x20, 0x70, +0x6c, 0x61, 0x63, 0x65, 0x73, 0x20, 0x28, 0x69, 0x6e, 0x20, +0x62, 0x6c, 0x61, 0x63, 0x6b, 0x29, 0xd9, 0x00, 0x4f, 0x61, +0x6c, 0x73, 0x6f, 0x51, 0x00, 0x06, 0x1f, 0x0a, 0x52, 0x00, +0x02, 0x58, 0x77, 0x72, 0x6f, 0x6e, 0x67, 0x50, 0x00, 0xf2, +0x06, 0x77, 0x68, 0x69, 0x74, 0x65, 0x29, 0x2e, 0x20, 0x0a, +0x54, 0x68, 0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x20, +0x69, 0x73, 0x5a, 0x00, 0xa2, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, +0x20, 0x28, 0x61, 0x6e, 0x64, 0xc2, 0x00, 0x40, 0x74, 0x65, +0x64, 0x2c, 0x12, 0x01, 0xf2, 0x0b, 0x48, 0x61, 0x73, 0x62, +0x72, 0x6f, 0x2c, 0x20, 0x6d, 0x61, 0x69, 0x6e, 0x6c, 0x79, +0x29, 0x20, 0x61, 0x73, 0x20, 0x61, 0x20, 0x62, 0x6f, 0x61, +0x72, 0x64, 0x40, 0x00, 0x42, 0x60, 0x4d, 0x61, 0x73, 0x5b, +0x01, 0x32, 0x64, 0x27, 0x2c, 0xf6, 0x00, 0x13, 0x36, 0x98, +0x01, 0x42, 0x73, 0x2c, 0x20, 0x34, 0x90, 0x00, 0x72, 0x70, +0x65, 0x72, 0x20, 0x72, 0x6f, 0x77, 0xc9, 0x00, 0x26, 0x31, +0x30, 0x3e, 0x01, 0xa0, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, +0x72, 0x2c, 0x20, 0x74, 0x91, 0x00, 0xf0, 0x06, 0x76, 0x65, +0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x6c, 0x6c, 0x6f, +0x77, 0x73, 0x20, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0xec, +0x01, 0x86, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x20, 0x6f, 0x66, +0xfc, 0x00, 0x04, 0x63, 0x00, 0x40, 0x20, 0x28, 0x75, 0x70, +0xef, 0x01, 0x46, 0x31, 0x30, 0x29, 0x2c, 0x1e, 0x00, 0x0e, +0x76, 0x00, 0x0f, 0xbb, 0x01, 0x02, 0x02, 0x58, 0x02, 0xf1, +0x03, 0x77, 0x61, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, +0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x8e, +0x00, 0x00, 0x62, 0x00, 0x61, 0x6c, 0x65, 0x63, 0x74, 0x69, +0x6f, 0x1a, 0x02, 0xf1, 0x06, 0x4a, 0x61, 0x6d, 0x65, 0x73, +0x20, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x2e, 0x20, 0x0a, +0x0a, 0x23, 0x31, 0x35, 0x2e, 0x31, 0x9a, 0x02, 0x03, 0x3e, +0x00, 0x38, 0x6f, 0x6c, 0x73, 0x58, 0x01, 0x60, 0x63, 0x61, +0x6e, 0x20, 0x62, 0x65, 0x7d, 0x01, 0x14, 0x79, 0x0e, 0x02, +0x61, 0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x9a, 0x01, 0x32, +0x6b, 0x65, 0x79, 0x44, 0x01, 0x12, 0x6f, 0x10, 0x00, 0xc6, +0x6d, 0x6f, 0x75, 0x73, 0x65, 0x2e, 0x20, 0x0a, 0x57, 0x69, +0x74, 0x68, 0x11, 0x00, 0x89, 0x2c, 0x20, 0x64, 0x72, 0x61, +0x67, 0x20, 0x61, 0xe8, 0x02, 0x51, 0x20, 0x66, 0x72, 0x6f, +0x6d, 0x24, 0x00, 0x62, 0x74, 0x72, 0x61, 0x79, 0x20, 0x6f, +0xeb, 0x01, 0x60, 0x6c, 0x65, 0x66, 0x74, 0x2d, 0x68, 0xe9, +0x00, 0x31, 0x73, 0x69, 0x64, 0x01, 0x03, 0x91, 0x69, 0x74, +0x73, 0x20, 0x72, 0x65, 0x71, 0x75, 0x69, 0x38, 0x00, 0x30, +0x6f, 0x73, 0x69, 0xca, 0x00, 0x05, 0x6c, 0x02, 0x62, 0x75, +0x72, 0x72, 0x65, 0x6e, 0x74, 0x0c, 0x01, 0x12, 0x3b, 0x2f, +0x01, 0x32, 0x6d, 0x61, 0x79, 0x0b, 0x02, 0x21, 0x62, 0x65, +0x78, 0x00, 0x31, 0x67, 0x65, 0x64, 0x6c, 0x00, 0x04, 0x2d, +0x00, 0x01, 0x47, 0x01, 0x44, 0x70, 0x61, 0x73, 0x74, 0x42, +0x01, 0x00, 0x66, 0x00, 0x42, 0x63, 0x6f, 0x70, 0x79, 0x46, +0x03, 0xc0, 0x65, 0x6c, 0x73, 0x65, 0x77, 0x68, 0x65, 0x72, +0x65, 0x2e, 0x20, 0x54, 0x7f, 0x03, 0x20, 0x6d, 0x6f, 0xaa, +0x03, 0x00, 0x5b, 0x00, 0x03, 0xc7, 0x00, 0x10, 0x69, 0xb3, +0x03, 0x10, 0x66, 0x98, 0x00, 0x04, 0x52, 0x00, 0x05, 0x97, +0x00, 0x00, 0x4a, 0x00, 0x32, 0x73, 0x6f, 0x6d, 0x40, 0x00, +0xff, 0x0a, 0x20, 0x69, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, +0x2e, 0x20, 0x0a, 0x52, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x63, +0x6c, 0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0xbd, 0x00, 0x02, +0x40, 0x20, 0x61, 0x64, 0x64, 0x93, 0x02, 0x62, 0x60, 0x68, +0x6f, 0x6c, 0x64, 0x27, 0xbc, 0x02, 0x13, 0x72, 0xd2, 0x00, +0x42, 0x74, 0x68, 0x61, 0x74, 0x11, 0x04, 0x00, 0x1d, 0x00, +0x03, 0x1c, 0x00, 0x60, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, +0xe5, 0x00, 0xd0, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, +0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x48, 0x00, 0x00, 0xfd, +0x01, 0x03, 0x64, 0x03, 0x25, 0x65, 0x78, 0x60, 0x00, 0x40, +0x66, 0x74, 0x65, 0x72, 0x3c, 0x00, 0x00, 0x83, 0x00, 0xf2, +0x01, 0x2e, 0x20, 0x0a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, +0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0xf2, 0x02, 0x09, +0xd3, 0x01, 0x11, 0x2c, 0x0e, 0x00, 0x21, 0x75, 0x70, 0x2f, +0x01, 0x40, 0x64, 0x6f, 0x77, 0x6e, 0xb0, 0x00, 0x30, 0x73, +0x6f, 0x72, 0x21, 0x00, 0x14, 0x73, 0x17, 0x02, 0x22, 0x75, +0x73, 0x6c, 0x00, 0x20, 0x73, 0x65, 0x63, 0x02, 0x02, 0x27, +0x01, 0x03, 0xe6, 0x01, 0x14, 0x2c, 0xd0, 0x01, 0x02, 0x71, +0x01, 0x10, 0x72, 0x03, 0x01, 0x01, 0x3c, 0x00, 0x0c, 0x30, +0x00, 0x05, 0x3e, 0x01, 0x01, 0xe1, 0x02, 0x01, 0x36, 0x00, +0x90, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x61, 0x72, +0x58, 0x02, 0x41, 0x45, 0x6e, 0x74, 0x65, 0x76, 0x00, 0x31, +0x20, 0x74, 0x6f, 0x05, 0x04, 0x03, 0x8f, 0x01, 0x03, 0xf8, +0x04, 0x03, 0x4c, 0x00, 0x23, 0x65, 0x64, 0x78, 0x00, 0x04, +0x5e, 0x01, 0x02, 0x0d, 0x05, 0x05, 0x5d, 0x00, 0x50, 0x2e, +0x20, 0x60, 0x44, 0x27, 0x4f, 0x00, 0x41, 0x42, 0x61, 0x63, +0x6b, 0x60, 0x00, 0x03, 0xdc, 0x01, 0x12, 0x73, 0x4e, 0x00, +0x02, 0x7d, 0x00, 0x10, 0x53, 0x19, 0x00, 0x03, 0x8b, 0x01, +0x08, 0x6d, 0x01, 0x80, 0x2e, 0x20, 0x0a, 0x50, 0x72, 0x65, +0x73, 0x73, 0xbe, 0x01, 0x21, 0x60, 0x68, 0x48, 0x00, 0x32, +0x60, 0x3f, 0x27, 0x82, 0x01, 0x4e, 0x66, 0x69, 0x6c, 0x6c, +0xd0, 0x01, 0x01, 0x51, 0x01, 0x00, 0xe2, 0x05, 0x82, 0x75, +0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x17, 0x00, 0x30, +0x2e, 0x20, 0x55, 0x45, 0x00, 0x01, 0x9a, 0x03, 0x00, 0xb4, +0x04, 0xd0, 0x6e, 0x6f, 0x74, 0x20, 0x72, 0x65, 0x63, 0x6f, +0x6d, 0x6d, 0x65, 0x6e, 0x64, 0xa9, 0x02, 0x50, 0x6f, 0x72, +0x20, 0x31, 0x30, 0x60, 0x00, 0x41, 0x6d, 0x6f, 0x72, 0x65, +0xff, 0x01, 0x00, 0xab, 0x04, 0x20, 0x69, 0x74, 0x2d, 0x00, +0x40, 0x73, 0x6c, 0x6f, 0x77, 0x5d, 0x03, 0x21, 0x68, 0x65, +0xe3, 0x00, 0x03, 0x69, 0x00, 0x21, 0x69, 0x73, 0xeb, 0x05, +0x52, 0x6c, 0x65, 0x74, 0x65, 0x2c, 0x11, 0x01, 0xf0, 0x00, +0x6d, 0x61, 0x6c, 0x6c, 0x65, 0x72, 0x20, 0x66, 0x65, 0x65, +0x64, 0x62, 0x61, 0x63, 0x6b, 0x46, 0x00, 0x06, 0x2e, 0x02, +0x50, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x8d, 0x01, 0x44, 0x65, +0x64, 0x3b, 0x20, 0x93, 0x02, 0x03, 0x7f, 0x03, 0x41, 0x73, +0x65, 0x20, 0x28, 0x7b, 0x00, 0x12, 0x76, 0xa4, 0x00, 0x01, +0x81, 0x00, 0x03, 0xf8, 0x01, 0x03, 0x53, 0x02, 0x16, 0x6d, +0x2a, 0x02, 0x51, 0x61, 0x72, 0x72, 0x6f, 0x77, 0xd3, 0x01, +0x02, 0x53, 0x03, 0x03, 0x21, 0x01, 0x0f, 0xc2, 0x01, 0x08, +0x11, 0x29, 0x86, 0x00, 0x01, 0x54, 0x01, 0x0e, 0x32, 0x01, +0x12, 0x2c, 0x85, 0x03, 0x72, 0x61, 0x6e, 0x79, 0x20, 0x68, +0x65, 0x6c, 0x02, 0x06, 0x0d, 0xc8, 0x02, 0x03, 0x1e, 0x07, +0x00, 0xb9, 0x01, 0x01, 0x19, 0x00, 0x19, 0x60, 0x43, 0x00, +0x16, 0x27, 0xaf, 0x01, 0x66, 0x49, 0x66, 0x20, 0x79, 0x6f, +0x75, 0x5b, 0x06, 0x06, 0xa4, 0x03, 0x11, 0x61, 0xaf, 0x01, +0x02, 0x5c, 0x01, 0x02, 0xac, 0x00, 0x30, 0x6f, 0x6c, 0x75, +0x1a, 0x00, 0x05, 0x23, 0x01, 0x33, 0x64, 0x69, 0x73, 0xf0, +0x04, 0x82, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x3b, 0x20, 0x69, +0x4d, 0x00, 0x77, 0x72, 0x75, 0x6e, 0x20, 0x6f, 0x75, 0x74, +0x7d, 0x05, 0x00, 0x2f, 0x01, 0x04, 0xcd, 0x02, 0xbe, 0x60, +0x53, 0x6f, 0x6c, 0x76, 0x65, 0x2e, 0x2e, 0x2e, 0x27, 0x29, +0x57, 0x00, 0x05, 0x92, 0x04, 0x70, 0x72, 0x65, 0x76, 0x65, +0x61, 0x6c, 0x65, 0x16, 0x04, 0x23, 0x28, 0x41, 0x8a, 0x00, +0x11, 0x61, 0x9e, 0x05, 0xb0, 0x73, 0x20, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xc4, 0x02, 0x13, 0x73, +0xb4, 0x05, 0x72, 0x32, 0x2e, 0x31, 0x20, 0x61, 0x72, 0x65, +0x41, 0x00, 0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, +0x6c, 0x65, 0x2e, 0x29, 0xbc, 0x05, 0x13, 0x32, 0xbc, 0x05, +0x50, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x1d, 0x08, 0x00, 0xbe, +0x05, 0x00, 0xca, 0x01, 0x07, 0x12, 0x00, 0x00, 0x40, 0x00, +0x06, 0x3b, 0x00, 0x06, 0x79, 0x05, 0x21, 0x60, 0x43, 0x9a, +0x06, 0x00, 0xb3, 0x00, 0x30, 0x20, 0x6f, 0x70, 0x6e, 0x00, +0x04, 0x87, 0x05, 0xf2, 0x09, 0x60, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x54, 0x68, +0x65, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x14, +0x06, 0x60, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x3d, 0x01, +0x09, 0x66, 0x00, 0x12, 0x66, 0x05, 0x06, 0x0f, 0x56, 0x07, +0x05, 0x52, 0x2e, 0x20, 0x0a, 0x5f, 0x43, 0xee, 0x06, 0x4b, +0x5f, 0x20, 0x0a, 0x4e, 0x02, 0x07, 0x0b, 0x8b, 0x01, 0x23, +0x69, 0x73, 0xc1, 0x03, 0x01, 0xae, 0x00, 0x12, 0x3b, 0xb4, +0x00, 0x12, 0x32, 0x22, 0x07, 0x51, 0x20, 0x28, 0x6d, 0x6f, +0x72, 0xf2, 0x07, 0x70, 0x68, 0x61, 0x72, 0x64, 0x65, 0x72, +0x29, 0x5a, 0x00, 0x13, 0x50, 0x2a, 0x07, 0x01, 0x9a, 0x01, +0x0a, 0x61, 0x00, 0x19, 0x70, 0x1b, 0x00, 0x0f, 0x3e, 0x00, +0x02, 0x11, 0x47, 0xcf, 0x01, 0x01, 0x37, 0x00, 0x0c, 0x60, +0x07, 0x00, 0xfa, 0x01, 0x05, 0x8e, 0x09, 0x4b, 0x66, 0x69, +0x6e, 0x64, 0xa9, 0x00, 0x8b, 0x6e, 0x20, 0x28, 0x66, 0x65, +0x77, 0x65, 0x72, 0x52, 0x00, 0x10, 0x41, 0xfc, 0x07, 0x00, +0xf9, 0x08, 0x20, 0x6e, 0x6b, 0x57, 0x00, 0x11, 0x41, 0x0b, +0x08, 0x02, 0x10, 0x00, 0x03, 0x7a, 0x02, 0x01, 0x0f, 0x02, +0x71, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0xc0, 0x01, +0x01, 0x59, 0x02, 0x15, 0x61, 0xa6, 0x00, 0x31, 0x61, 0x6b, +0x65, 0xf9, 0x03, 0x40, 0x65, 0x61, 0x73, 0x69, 0x5b, 0x08, +0x70, 0x62, 0x65, 0x63, 0x61, 0x75, 0x73, 0x65, 0x90, 0x00, +0x01, 0xe6, 0x08, 0x02, 0x17, 0x06, 0x10, 0x74, 0x26, 0x01, +0x02, 0x63, 0x02, 0x10, 0x6e, 0x83, 0x08, 0x20, 0x20, 0x62, +0x82, 0x09, 0x57, 0x75, 0x6e, 0x74, 0x65, 0x64, 0x57, 0x00, +0x09, 0xb4, 0x00, 0x43, 0x29, 0x2e, 0x20, 0x54, 0x7f, 0x04, +0x61, 0x74, 0x75, 0x72, 0x6e, 0x65, 0x64, 0xd0, 0x06, 0x24, +0x62, 0x79, 0xe5, 0x01, 0x71, 0x2e, 0x20, 0x0a, 0x4e, 0x6f, +0x74, 0x65, 0x60, 0x00, 0x02, 0xa9, 0x04, 0x96, 0x64, 0x6f, +0x65, 0x73, 0x6e, 0x27, 0x74, 0x20, 0x61, 0xd5, 0x00, 0x04, +0xa1, 0x09, 0x09, 0x5a, 0x00, 0x06, 0x2a, 0x03, 0x11, 0x65, +0x8c, 0x06, 0x20, 0x77, 0x61, 0x88, 0x00, 0x01, 0x49, 0x00, +0x20, 0x2c, 0x20, 0xbc, 0x00, 0x84, 0x6f, 0x6e, 0x65, 0x20, +0x65, 0x78, 0x74, 0x72, 0x0b, 0x08, 0x06, 0x2a, 0x01, 0x95, +0x64, 0x75, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x65, 0x2e, +0x01, 0x0b, 0x12, 0x02, 0x13, 0x28, 0x1d, 0x06, 0x04, 0x98, +0x01, 0x12, 0x29, 0xb7, 0x07, 0x10, 0x6e, 0xd1, 0x0a, 0x04, +0x44, 0x02, 0x00, 0x35, 0x05, 0x01, 0xb8, 0x00, 0x00, 0xc9, +0x02, 0x33, 0x63, 0x65, 0x3b, 0x67, 0x05, 0x83, 0x6e, 0x63, +0x72, 0x65, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x06, 0x42, 0x61, +0x72, 0x63, 0x68, 0xa1, 0x04, 0x01, 0x66, 0x01, 0x03, 0x8f, +0x05, 0x24, 0x6e, 0x67, 0xc0, 0x01, 0x02, 0xa9, 0x0a, 0x08, +0x1f, 0x01, 0x16, 0x6e, 0x1e, 0x01, 0x50, 0x74, 0x2e, 0x20, +0x0a, 0x00, +}; +const unsigned short help_text_len = 3030; const char quick_help_text[] = "Guess the hidden combination of colours."; diff --git a/apps/plugins/puzzles/help/inertia.c b/apps/plugins/puzzles/help/inertia.c index 46c4b43cba..d8cdd578ca 100644 --- a/apps/plugins/puzzles/help/inertia.c +++ b/apps/plugins/puzzles/help/inertia.c @@ -1,61 +1,167 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2265 comp 1577 ratio 0.696247 level 11 saved 688 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 24: Inertia " -"\n" -"You are a small green ball sitting in a grid full of obstacles. Your " -"aim is to collect all the gems without running into any mines. " -"\n" -"You can move the ball in any orthogonal _or diagonal_ direction. " -"Once the ball starts moving, it will continue until something stops " -"it. A wall directly in its path will stop it (but if it is moving " -"diagonally, it will move through a diagonal gap between two other " -"walls without stopping). Also, some of the squares are `stops'; when " -"the ball moves on to a stop, it will stop moving no matter what " -"direction it was going in. Gems do _not_ stop the ball; it picks " -"them up and keeps on going. " -"\n" -"Running into a mine is fatal. Even if you picked up the last gem in " -"the same move which then hit a mine, the game will count you as dead " -"rather than victorious. " -"\n" -"This game was originally implemented for Windows by Ben Olmstead " -"[11], who was kind enough to release his source code on request so " -"that it could be re-implemented for this collection. " -"\n" -"[11] http://xn13.com/ " -"\n" -"\n#24.1 Inertia controls " -"\n" -"You can move the ball in any of the eight directions using the " -"numeric keypad. Alternatively, if you click the left mouse button " -"on the grid, the ball will begin a move in the general direction of " -"where you clicked. " -"\n" -"If you use the `Solve' function on this game, the program will " -"compute a path through the grid which collects all the remaining " -"gems and returns to the current position. A hint arrow will appear " -"on the ball indicating the direction in which you should move to " -"begin on this path. If you then move in that direction, the arrow " -"will update to indicate the next direction on the path. You can " -"also press Space to automatically move in the direction of the hint " -"arrow. If you move in a different direction from the one shown " -"by the arrow, arrows will be shown only if the puzzle is still " -"solvable. " -"\n" -"All the actions described in section 2.1 are also available. In " -"particular, if you do run into a mine and die, you can use the Undo " -"function and resume playing from before the fatal move. The game " -"will keep track of the number of times you have done this. " -"\n" -"\n#24.2 Inertia parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x1e, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x34, 0x3a, 0x20, 0x49, 0x6e, 0x65, 0x72, 0x74, +0x69, 0x61, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, +0x65, 0x20, 0x61, 0x20, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x20, +0x67, 0x72, 0x65, 0x65, 0x6e, 0x20, 0x62, 0x0b, 0x00, 0xf0, +0x2d, 0x73, 0x69, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x69, +0x6e, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x66, +0x75, 0x6c, 0x6c, 0x20, 0x6f, 0x66, 0x20, 0x6f, 0x62, 0x73, +0x74, 0x61, 0x63, 0x6c, 0x65, 0x73, 0x2e, 0x20, 0x59, 0x6f, +0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x20, +0x74, 0x6f, 0x20, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, +0x20, 0x40, 0x00, 0xf2, 0x06, 0x74, 0x68, 0x65, 0x20, 0x67, +0x65, 0x6d, 0x73, 0x20, 0x77, 0x69, 0x74, 0x68, 0x6f, 0x75, +0x74, 0x20, 0x72, 0x75, 0x6e, 0x6e, 0x51, 0x00, 0xd2, 0x74, +0x6f, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x6d, 0x69, 0x6e, 0x65, +0x73, 0x2e, 0x85, 0x00, 0x80, 0x63, 0x61, 0x6e, 0x20, 0x6d, +0x6f, 0x76, 0x65, 0x37, 0x00, 0x02, 0x80, 0x00, 0x21, 0x69, +0x6e, 0x25, 0x00, 0xf1, 0x03, 0x6f, 0x72, 0x74, 0x68, 0x6f, +0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x5f, 0x6f, 0x72, 0x20, +0x64, 0x69, 0x61, 0x0d, 0x00, 0xf7, 0x01, 0x5f, 0x20, 0x64, +0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, +0x4f, 0x6e, 0x63, 0x39, 0x00, 0x60, 0x73, 0x74, 0x61, 0x72, +0x74, 0x73, 0x4e, 0x00, 0xf0, 0x13, 0x69, 0x6e, 0x67, 0x2c, +0x20, 0x69, 0x74, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x63, +0x6f, 0x6e, 0x74, 0x69, 0x6e, 0x75, 0x65, 0x20, 0x75, 0x6e, +0x74, 0x69, 0x6c, 0x20, 0x73, 0x6f, 0x6d, 0x65, 0x74, 0x68, +0x90, 0x00, 0xd0, 0x73, 0x74, 0x6f, 0x70, 0x73, 0x20, 0x69, +0x74, 0x2e, 0x20, 0x41, 0x20, 0x77, 0x41, 0x00, 0x02, 0x5a, +0x00, 0x20, 0x6c, 0x79, 0x83, 0x00, 0x81, 0x69, 0x74, 0x73, +0x20, 0x70, 0x61, 0x74, 0x68, 0x44, 0x00, 0x01, 0x2b, 0x00, +0x00, 0x51, 0x00, 0x70, 0x28, 0x62, 0x75, 0x74, 0x20, 0x69, +0x66, 0x0b, 0x00, 0x14, 0x69, 0x6a, 0x00, 0x05, 0x9b, 0x00, +0x25, 0x6c, 0x79, 0x75, 0x00, 0x04, 0xd3, 0x00, 0x75, 0x72, +0x6f, 0x75, 0x67, 0x68, 0x20, 0x61, 0x23, 0x00, 0x90, 0x20, +0x67, 0x61, 0x70, 0x20, 0x62, 0x65, 0x74, 0x77, 0x6e, 0x01, +0x91, 0x74, 0x77, 0x6f, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, +0x7e, 0x00, 0x05, 0x30, 0x01, 0x01, 0x6d, 0x00, 0xc1, 0x70, +0x69, 0x6e, 0x67, 0x29, 0x2e, 0x20, 0x41, 0x6c, 0x73, 0x6f, +0x2c, 0xb3, 0x00, 0x31, 0x20, 0x6f, 0x66, 0xea, 0x00, 0x71, +0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0xbd, 0x01, 0x11, +0x60, 0xc2, 0x00, 0x73, 0x27, 0x3b, 0x20, 0x77, 0x68, 0x65, +0x6e, 0x08, 0x01, 0x03, 0x7c, 0x00, 0x50, 0x73, 0x20, 0x6f, +0x6e, 0x20, 0x6f, 0x01, 0x01, 0x4e, 0x00, 0x00, 0x98, 0x00, +0x06, 0xc9, 0x00, 0x04, 0xb8, 0x00, 0x70, 0x6e, 0x6f, 0x20, +0x6d, 0x61, 0x74, 0x74, 0x80, 0x00, 0x36, 0x68, 0x61, 0x74, +0x58, 0x01, 0x01, 0x2d, 0x00, 0x52, 0x61, 0x73, 0x20, 0x67, +0x6f, 0xb6, 0x01, 0x30, 0x2e, 0x20, 0x47, 0xcf, 0x01, 0x81, +0x64, 0x6f, 0x20, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x44, 0x00, +0x05, 0x6e, 0x00, 0x10, 0x3b, 0x2e, 0x00, 0x50, 0x70, 0x69, +0x63, 0x6b, 0x73, 0x13, 0x00, 0xd0, 0x6d, 0x20, 0x75, 0x70, +0x20, 0x61, 0x6e, 0x64, 0x20, 0x6b, 0x65, 0x65, 0x70, 0x84, +0x00, 0x02, 0x45, 0x00, 0x49, 0x2e, 0x20, 0x0a, 0x52, 0x05, +0x02, 0x01, 0x03, 0x02, 0x00, 0x43, 0x01, 0xb0, 0x66, 0x61, +0x74, 0x61, 0x6c, 0x2e, 0x20, 0x45, 0x76, 0x65, 0x6e, 0x58, +0x01, 0x31, 0x79, 0x6f, 0x75, 0x4d, 0x00, 0x42, 0x65, 0x64, +0x20, 0x75, 0x64, 0x00, 0x40, 0x6c, 0x61, 0x73, 0x74, 0x4f, +0x02, 0x32, 0x20, 0x69, 0x6e, 0x00, 0x01, 0x32, 0x61, 0x6d, +0x65, 0x5e, 0x01, 0x70, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, +0x74, 0xfb, 0x00, 0x33, 0x68, 0x69, 0x74, 0x54, 0x00, 0x12, +0x2c, 0x7f, 0x02, 0x34, 0x61, 0x6d, 0x65, 0xfd, 0x01, 0x31, +0x75, 0x6e, 0x74, 0x57, 0x00, 0xa1, 0x61, 0x73, 0x20, 0x64, +0x65, 0x61, 0x64, 0x20, 0x72, 0x61, 0x73, 0x01, 0xe0, 0x74, +0x68, 0x61, 0x6e, 0x20, 0x76, 0x69, 0x63, 0x74, 0x6f, 0x72, +0x69, 0x6f, 0x75, 0x8e, 0x02, 0x41, 0x54, 0x68, 0x69, 0x73, +0x3a, 0x00, 0x01, 0xfd, 0x00, 0x51, 0x6f, 0x72, 0x69, 0x67, +0x69, 0xd5, 0x01, 0xf0, 0x16, 0x20, 0x69, 0x6d, 0x70, 0x6c, +0x65, 0x6d, 0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x66, 0x6f, +0x72, 0x20, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x20, +0x62, 0x79, 0x20, 0x42, 0x65, 0x6e, 0x20, 0x4f, 0x6c, 0x6d, +0x73, 0x74, 0x5a, 0x00, 0x91, 0x5b, 0x31, 0x31, 0x5d, 0x2c, +0x20, 0x77, 0x68, 0x6f, 0x41, 0x00, 0x70, 0x6b, 0x69, 0x6e, +0x64, 0x20, 0x65, 0x6e, 0x01, 0x02, 0x00, 0x89, 0x01, 0x80, +0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x20, 0x65, 0x00, +0xb0, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x20, 0x63, 0x6f, +0x64, 0x65, 0x23, 0x01, 0xc0, 0x72, 0x65, 0x71, 0x75, 0x65, +0x73, 0x74, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x89, 0x01, 0x20, +0x69, 0x74, 0xb7, 0x00, 0x9c, 0x6c, 0x64, 0x20, 0x62, 0x65, +0x20, 0x72, 0x65, 0x2d, 0x7f, 0x00, 0x41, 0x74, 0x68, 0x69, +0x73, 0x71, 0x03, 0x04, 0x06, 0x03, 0x10, 0x0a, 0x79, 0x00, +0xf4, 0x0a, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, +0x78, 0x6e, 0x31, 0x33, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x20, +0x0a, 0x0a, 0x23, 0x32, 0x34, 0x2e, 0x31, 0xf4, 0x03, 0x01, +0x08, 0x03, 0x4f, 0x72, 0x6f, 0x6c, 0x73, 0x78, 0x03, 0x0b, +0x04, 0x68, 0x02, 0x47, 0x65, 0x69, 0x67, 0x68, 0x14, 0x02, +0x71, 0x73, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x1b, 0x00, +0xe0, 0x6e, 0x75, 0x6d, 0x65, 0x72, 0x69, 0x63, 0x20, 0x6b, +0x65, 0x79, 0x70, 0x61, 0x64, 0xa5, 0x02, 0xc4, 0x74, 0x65, +0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, +0xc7, 0x01, 0x52, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xc3, 0x01, +0xf1, 0x03, 0x65, 0x66, 0x74, 0x20, 0x6d, 0x6f, 0x75, 0x73, +0x65, 0x20, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x6f, +0xcc, 0x01, 0x01, 0x5d, 0x04, 0x15, 0x2c, 0x81, 0x00, 0x02, +0xb1, 0x01, 0x30, 0x62, 0x65, 0x67, 0x89, 0x00, 0x02, 0x9c, +0x00, 0x23, 0x69, 0x6e, 0x4e, 0x04, 0x57, 0x6e, 0x65, 0x72, +0x61, 0x6c, 0xa2, 0x02, 0x20, 0x6f, 0x66, 0xf4, 0x02, 0x26, +0x72, 0x65, 0x6a, 0x00, 0x62, 0x65, 0x64, 0x2e, 0x20, 0x0a, +0x49, 0x7b, 0x00, 0x22, 0x75, 0x73, 0xd7, 0x00, 0xe3, 0x60, +0x53, 0x6f, 0x6c, 0x76, 0x65, 0x27, 0x20, 0x66, 0x75, 0x6e, +0x63, 0x74, 0x69, 0x78, 0x00, 0x03, 0xe6, 0x01, 0x03, 0x2a, +0x02, 0x74, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x2d, +0x02, 0x71, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x20, 0x61, 0xfa, +0x03, 0x04, 0xbf, 0x03, 0x05, 0xab, 0x00, 0x02, 0x72, 0x02, +0x04, 0x7b, 0x01, 0x15, 0x73, 0xed, 0x04, 0x50, 0x72, 0x65, +0x6d, 0x61, 0x69, 0xdd, 0x02, 0x01, 0xf7, 0x04, 0x01, 0xff, +0x02, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x1b, 0x05, +0x01, 0x22, 0x00, 0xc2, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, +0x74, 0x20, 0x70, 0x6f, 0x73, 0x69, 0xb4, 0x01, 0xc2, 0x41, +0x20, 0x68, 0x69, 0x6e, 0x74, 0x20, 0x61, 0x72, 0x72, 0x6f, +0x77, 0x7d, 0x00, 0x98, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, +0x20, 0x6f, 0x6e, 0x92, 0x01, 0x53, 0x64, 0x69, 0x63, 0x61, +0x74, 0x78, 0x01, 0x08, 0xa1, 0x03, 0x12, 0x6e, 0x8c, 0x00, +0x01, 0xee, 0x00, 0x20, 0x73, 0x68, 0x2d, 0x02, 0x03, 0xcd, +0x01, 0x11, 0x6f, 0x41, 0x01, 0x04, 0xea, 0x00, 0x02, 0xc3, +0x04, 0x22, 0x2e, 0x20, 0x18, 0x01, 0x01, 0x2c, 0x03, 0x06, +0x59, 0x01, 0x09, 0xf4, 0x03, 0x01, 0x0e, 0x01, 0x08, 0x8f, +0x00, 0x50, 0x75, 0x70, 0x64, 0x61, 0x74, 0x51, 0x00, 0x04, +0x86, 0x00, 0x12, 0x65, 0xfc, 0x01, 0x25, 0x65, 0x78, 0x36, +0x00, 0x05, 0xc9, 0x01, 0x03, 0x66, 0x00, 0x04, 0x57, 0x02, +0xf1, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x70, 0x72, 0x65, +0x73, 0x73, 0x20, 0x53, 0x70, 0x61, 0x63, 0x65, 0x88, 0x04, +0x80, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x52, +0x03, 0x04, 0x84, 0x00, 0x0a, 0xd6, 0x00, 0x03, 0x7a, 0x02, +0x07, 0x19, 0x01, 0x04, 0xb9, 0x00, 0x04, 0x30, 0x00, 0x01, +0x49, 0x05, 0x68, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x85, +0x00, 0x41, 0x66, 0x72, 0x6f, 0x6d, 0x3a, 0x00, 0x30, 0x6f, +0x6e, 0x65, 0x0e, 0x01, 0x56, 0x77, 0x6e, 0x20, 0x62, 0x79, +0xd0, 0x00, 0x12, 0x2c, 0x07, 0x00, 0x13, 0x73, 0x60, 0x02, +0x04, 0x23, 0x00, 0x20, 0x6f, 0x6e, 0xdb, 0x03, 0x12, 0x66, +0xc0, 0x00, 0x41, 0x75, 0x7a, 0x7a, 0x6c, 0x90, 0x04, 0x21, +0x73, 0x74, 0x26, 0x05, 0xb3, 0x6f, 0x6c, 0x76, 0x61, 0x62, +0x6c, 0x65, 0x2e, 0x20, 0x0a, 0x41, 0xe5, 0x01, 0x13, 0x61, +0x07, 0x03, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, +0x65, 0x64, 0x90, 0x00, 0x13, 0x73, 0x82, 0x00, 0x30, 0x32, +0x2e, 0x31, 0x91, 0x05, 0x02, 0xfa, 0x00, 0x52, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x3e, 0x00, 0xd5, 0x49, 0x6e, 0x20, 0x70, +0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x1a, +0x03, 0x20, 0x64, 0x6f, 0x13, 0x07, 0x08, 0x0a, 0x05, 0x01, +0x34, 0x02, 0x62, 0x64, 0x69, 0x65, 0x2c, 0x20, 0x79, 0x44, +0x01, 0x05, 0xc3, 0x02, 0x45, 0x55, 0x6e, 0x64, 0x6f, 0xc0, +0x02, 0x03, 0x5b, 0x02, 0xc2, 0x73, 0x75, 0x6d, 0x65, 0x20, +0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0xfd, 0x00, 0x51, +0x62, 0x65, 0x66, 0x6f, 0x72, 0x31, 0x00, 0x01, 0x51, 0x05, +0x02, 0x03, 0x06, 0x38, 0x2e, 0x20, 0x54, 0x0b, 0x05, 0x01, +0x93, 0x05, 0x94, 0x20, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x20, +0x6f, 0x66, 0xc9, 0x03, 0x31, 0x62, 0x65, 0x72, 0x0e, 0x00, +0x41, 0x69, 0x6d, 0x65, 0x73, 0x7d, 0x00, 0x91, 0x68, 0x61, +0x76, 0x65, 0x20, 0x64, 0x6f, 0x6e, 0x65, 0x40, 0x02, 0x13, +0x2e, 0x46, 0x04, 0x14, 0x32, 0x46, 0x04, 0x00, 0xd0, 0x00, +0x70, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x32, 0x05, +0x36, 0x65, 0x73, 0x65, 0x12, 0x00, 0x01, 0x95, 0x06, 0x06, +0xff, 0x00, 0x06, 0x98, 0x01, 0xe8, 0x60, 0x43, 0x75, 0x73, +0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, +0x39, 0x02, 0xf1, 0x0a, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, +0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, +0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x7f, +0x04, 0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0xfb, 0x06, +0x00, 0x80, 0x03, 0x02, 0x72, 0x01, 0xa0, 0x71, 0x75, 0x61, +0x72, 0x65, 0x73, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2265; const char quick_help_text[] = "Collect all the gems without running into any of the mines."; diff --git a/apps/plugins/puzzles/help/keen.c b/apps/plugins/puzzles/help/keen.c index 5532b2fb12..592828ec58 100644 --- a/apps/plugins/puzzles/help/keen.c +++ b/apps/plugins/puzzles/help/keen.c @@ -1,108 +1,248 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3936 comp 2381 ratio 0.604929 level 11 saved 1555 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 30: Keen " -"\n" -"You have a square grid; each square may contain a digit from 1 to " -"the size of the grid. The grid is divided into blocks of varying " -"shape and size, with arithmetic clues written in them. Your aim is " -"to fully populate the grid with digits such that: " -"\n" -"- Each row contains only one occurrence of each digit " -"\n" -"- Each column contains only one occurrence of each digit " -"\n" -"- The digits in each block can be combined to form the number " -"stated in the clue, using the arithmetic operation given in the " -"clue. That is: " -"\n" -"- An addition clue means that the sum of the digits in the " -"block must be the given number. For example, `15+' means the " -"contents of the block adds up to fifteen. " -"\n" -"- A multiplication clue (e.g. `60*'), similarly, means that " -"the product of the digits in the block must be the given " -"number. " -"\n" -"- A subtraction clue will always be written in a block of " -"size two, and it means that one of the digits in the block " -"is greater than the other by the given amount. For example, " -"`2-' means that one of the digits in the block is 2 more " -"than the other, or equivalently that one digit minus the " -"other one is 2. The two digits could be either way round, " -"though. " -"\n" -"- A division clue (e.g. `3/'), similarly, is always in a block " -"of size two and means that one digit divided by the other is " -"equal to the given amount. " -"\n" -"Note that a block may contain the same digit more than once " -"(provided the identical ones are not in the same row and " -"column). This rule is precisely the opposite of the rule in " -"Solo's `Killer' mode (see chapter 11). " -"\n" -"This puzzle appears in the Times under the name `KenKen'. " -"\n" -"\n#30.1 Keen controls " -"\n" -"Keen shares much of its control system with Solo (and Unequal). " -"\n" -"To play Keen, simply click the mouse in any empty square and then " -"type a digit on the keyboard to fill that square. If you make a " -"mistake, click the mouse in the incorrect square and press Space to " -"clear it again (or use the Undo feature). " -"\n" -"If you _right_-click in a square and then type a number, that " -"number will be entered in the square as a `pencil mark'. You can " -"have pencil marks for multiple numbers in the same square. Squares " -"containing filled-in numbers cannot also contain pencil marks. " -"\n" -"The game pays no attention to pencil marks, so exactly what you " -"use them for is up to you: you can use them as reminders that a " -"particular square needs to be re-examined once you know more about " -"a particular number, or you can use them as lists of the possible " -"numbers in a given square, or anything else you feel like. " -"\n" -"To erase a single pencil mark, right-click in the square and type " -"the same number again. " -"\n" -"All pencil marks in a square are erased when you left-click and type " -"a number, or when you left-click and press space. Right-clicking and " -"pressing space will also erase pencil marks. " -"\n" -"As for Solo, the cursor keys can be used in conjunction with the " -"digit keys to set numbers or pencil marks. Use the cursor keys to " -"move a highlight around the grid, and type a digit to enter it in " -"the highlighted square. Pressing return toggles the highlight into a " -"mode in which you can enter or remove pencil marks. " -"\n" -"Pressing M will fill in a full set of pencil marks in every square " -"that does not have a main digit in it. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#30.2 Keen parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Grid size_ " -"\n" -"Specifies the size of the grid. Lower limit is 3; upper limit is " -"9 (because the user interface would become more difficult with " -"`digits' bigger than 9!). " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. At Unreasonable " -"level, some backtracking will be required, but the solution " -"should still be unique. The remaining levels require " -"increasingly complex reasoning to avoid having to backtrack. " -"\n" -"_Multiplication only_ " -"\n" -"If this is enabled, all boxes will be multiplication boxes. With " -"this rule, the puzzle is known as `Inshi No Heya'. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x20, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x30, 0x3a, 0x20, 0x4b, 0x65, 0x65, 0x6e, 0x20, +0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, +0x61, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x20, 0x67, +0x72, 0x69, 0x64, 0x3b, 0x20, 0x65, 0x61, 0x63, 0x68, 0x12, +0x00, 0xf2, 0x1d, 0x6d, 0x61, 0x79, 0x20, 0x63, 0x6f, 0x6e, +0x74, 0x61, 0x69, 0x6e, 0x20, 0x61, 0x20, 0x64, 0x69, 0x67, +0x69, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x31, 0x20, +0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, 0x73, 0x69, 0x7a, +0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, 0x40, 0x00, 0x33, +0x2e, 0x20, 0x54, 0x0a, 0x00, 0xf0, 0x08, 0x20, 0x69, 0x73, +0x20, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, 0x69, +0x6e, 0x74, 0x6f, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, +0x2d, 0x00, 0xf1, 0x02, 0x76, 0x61, 0x72, 0x79, 0x69, 0x6e, +0x67, 0x20, 0x73, 0x68, 0x61, 0x70, 0x65, 0x20, 0x61, 0x6e, +0x64, 0x47, 0x00, 0xf0, 0x13, 0x2c, 0x20, 0x77, 0x69, 0x74, +0x68, 0x20, 0x61, 0x72, 0x69, 0x74, 0x68, 0x6d, 0x65, 0x74, +0x69, 0x63, 0x20, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x20, 0x77, +0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x66, +0x00, 0xe0, 0x6d, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, +0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x87, 0x00, 0xe5, 0x66, +0x75, 0x6c, 0x6c, 0x79, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, +0x61, 0x74, 0x65, 0x8a, 0x00, 0x01, 0x4e, 0x00, 0x02, 0xb4, +0x00, 0xf0, 0x02, 0x73, 0x20, 0x73, 0x75, 0x63, 0x68, 0x20, +0x74, 0x68, 0x61, 0x74, 0x3a, 0x20, 0x0a, 0x2d, 0x20, 0x45, +0xe3, 0x00, 0x34, 0x72, 0x6f, 0x77, 0xdc, 0x00, 0xf0, 0x05, +0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, +0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, +0xd6, 0x00, 0x00, 0x0c, 0x01, 0x03, 0x43, 0x00, 0x05, 0x37, +0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3a, 0x00, +0x1b, 0x00, 0x14, 0x01, 0x04, 0x8a, 0x00, 0x21, 0x69, 0x6e, +0x1c, 0x00, 0x02, 0x0e, 0x01, 0xf1, 0x01, 0x20, 0x63, 0x61, +0x6e, 0x20, 0x62, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x62, 0x69, +0x6e, 0x65, 0x64, 0xcf, 0x00, 0x31, 0x6f, 0x72, 0x6d, 0xc5, +0x00, 0xd3, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x73, +0x74, 0x61, 0x74, 0x65, 0x64, 0xfe, 0x00, 0x01, 0x13, 0x01, +0x70, 0x2c, 0x20, 0x75, 0x73, 0x69, 0x6e, 0x67, 0x10, 0x00, +0x08, 0x2e, 0x01, 0xf8, 0x00, 0x6f, 0x70, 0x65, 0x72, 0x61, +0x74, 0x69, 0x6f, 0x6e, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, +0x32, 0x00, 0x00, 0x96, 0x01, 0x51, 0x61, 0x74, 0x20, 0x69, +0x73, 0xff, 0x00, 0x70, 0x41, 0x6e, 0x20, 0x61, 0x64, 0x64, +0x69, 0x2b, 0x00, 0x01, 0x1e, 0x00, 0x61, 0x20, 0x6d, 0x65, +0x61, 0x6e, 0x73, 0x1f, 0x01, 0x02, 0xd4, 0x01, 0x21, 0x75, +0x6d, 0xd3, 0x01, 0x05, 0xb5, 0x00, 0x03, 0x4b, 0x00, 0x03, +0xb4, 0x00, 0x61, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x69, +0x01, 0x02, 0x6a, 0x00, 0x03, 0xaa, 0x00, 0xf5, 0x05, 0x2e, +0x20, 0x46, 0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, +0x6c, 0x65, 0x2c, 0x20, 0x60, 0x31, 0x35, 0x2b, 0x27, 0x5b, +0x00, 0x11, 0x65, 0x32, 0x01, 0x30, 0x65, 0x6e, 0x74, 0x01, +0x02, 0x06, 0x4d, 0x00, 0x00, 0x89, 0x00, 0x41, 0x73, 0x20, +0x75, 0x70, 0xf9, 0x00, 0x71, 0x69, 0x66, 0x74, 0x65, 0x65, +0x6e, 0x2e, 0xa3, 0x00, 0xb6, 0x20, 0x6d, 0x75, 0x6c, 0x74, +0x69, 0x70, 0x6c, 0x69, 0x63, 0x61, 0xa8, 0x00, 0xfc, 0x09, +0x28, 0x65, 0x2e, 0x67, 0x2e, 0x20, 0x60, 0x36, 0x30, 0x2a, +0x27, 0x29, 0x2c, 0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, +0x72, 0x6c, 0x79, 0x2c, 0xc1, 0x00, 0x7f, 0x70, 0x72, 0x6f, +0x64, 0x75, 0x63, 0x74, 0xc5, 0x00, 0x21, 0x03, 0x7e, 0x00, +0x76, 0x73, 0x75, 0x62, 0x74, 0x72, 0x61, 0x63, 0x7b, 0x00, +0xe8, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x61, 0x6c, 0x77, 0x61, +0x79, 0x73, 0x20, 0x62, 0x65, 0x94, 0x02, 0x13, 0x61, 0x52, +0x00, 0x22, 0x6f, 0x66, 0x0d, 0x03, 0x41, 0x74, 0x77, 0x6f, +0x2c, 0xd4, 0x02, 0x27, 0x69, 0x74, 0x98, 0x00, 0x00, 0x23, +0x02, 0x0f, 0x90, 0x00, 0x08, 0x00, 0xcb, 0x02, 0x70, 0x67, +0x72, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2f, 0x00, 0x02, 0x1a, +0x00, 0x87, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x62, 0x79, +0xa5, 0x00, 0x6c, 0x61, 0x6d, 0x6f, 0x75, 0x6e, 0x74, 0x6a, +0x01, 0x3f, 0x32, 0x2d, 0x27, 0x6b, 0x00, 0x1b, 0x6b, 0x32, +0x20, 0x6d, 0x6f, 0x72, 0x65, 0x6a, 0x00, 0x20, 0x2c, 0x20, +0x55, 0x00, 0xb5, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, +0x6e, 0x74, 0x6c, 0x79, 0x4e, 0x00, 0x03, 0xc9, 0x02, 0x56, +0x6d, 0x69, 0x6e, 0x75, 0x73, 0x30, 0x00, 0x00, 0x1a, 0x00, +0x01, 0x4d, 0x00, 0x00, 0x5e, 0x02, 0x01, 0xf8, 0x00, 0x04, +0x6f, 0x00, 0x50, 0x63, 0x6f, 0x75, 0x6c, 0x64, 0x27, 0x01, +0x21, 0x65, 0x69, 0x29, 0x00, 0xf2, 0x02, 0x77, 0x61, 0x79, +0x20, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x2c, 0x20, 0x74, 0x68, +0x6f, 0x75, 0x67, 0x68, 0x66, 0x01, 0x01, 0x1f, 0x04, 0x1c, +0x73, 0xde, 0x01, 0x2b, 0x33, 0x2f, 0xdd, 0x01, 0x23, 0x69, +0x73, 0x79, 0x01, 0x0f, 0x6e, 0x01, 0x04, 0x00, 0x6d, 0x01, +0x02, 0xff, 0x00, 0x0b, 0xb1, 0x00, 0x05, 0x7f, 0x04, 0x27, +0x62, 0x79, 0xb6, 0x00, 0x20, 0x69, 0x73, 0xe5, 0x00, 0x20, +0x61, 0x6c, 0x73, 0x02, 0x0e, 0x59, 0x01, 0x51, 0x0a, 0x4e, +0x6f, 0x74, 0x65, 0x48, 0x00, 0x04, 0x6b, 0x00, 0x08, 0x05, +0x05, 0x02, 0x1f, 0x03, 0x23, 0x61, 0x6d, 0x61, 0x00, 0x07, +0x46, 0x01, 0x10, 0x6f, 0xf8, 0x03, 0x41, 0x28, 0x70, 0x72, +0x6f, 0x72, 0x00, 0x01, 0x28, 0x00, 0x90, 0x69, 0x64, 0x65, +0x6e, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x92, 0x00, 0x20, 0x73, +0x20, 0x50, 0x05, 0x47, 0x6e, 0x6f, 0x74, 0x20, 0x46, 0x00, +0x00, 0x84, 0x04, 0x00, 0xbe, 0x00, 0x03, 0x55, 0x04, 0x10, +0x29, 0x49, 0x01, 0x61, 0x69, 0x73, 0x20, 0x72, 0x75, 0x6c, +0x59, 0x01, 0x83, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x65, +0x6c, 0xbe, 0x00, 0x64, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, +0xdb, 0x01, 0x03, 0x26, 0x00, 0xf3, 0x0e, 0x6e, 0x20, 0x53, +0x6f, 0x6c, 0x6f, 0x27, 0x73, 0x20, 0x60, 0x4b, 0x69, 0x6c, +0x6c, 0x65, 0x72, 0x27, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x20, +0x28, 0x73, 0x65, 0x65, 0x20, 0x63, 0xf4, 0x05, 0x61, 0x31, +0x31, 0x29, 0x2e, 0x20, 0x0a, 0x5b, 0x00, 0xd5, 0x70, 0x75, +0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x61, 0x70, 0x70, 0x65, 0x61, +0x72, 0x18, 0x02, 0xb2, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x20, +0x75, 0x6e, 0x64, 0x65, 0x72, 0x7a, 0x04, 0x00, 0x9c, 0x00, +0xf0, 0x02, 0x60, 0x4b, 0x65, 0x6e, 0x4b, 0x65, 0x6e, 0x27, +0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x30, 0x2e, 0x31, 0x38, +0x06, 0x02, 0xf9, 0x04, 0x60, 0x72, 0x6f, 0x6c, 0x73, 0x20, +0x0a, 0x0f, 0x00, 0x00, 0xc3, 0x05, 0x80, 0x72, 0x65, 0x73, +0x20, 0x6d, 0x75, 0x63, 0x68, 0x99, 0x00, 0x34, 0x69, 0x74, +0x73, 0x22, 0x00, 0x71, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, +0x6d, 0x87, 0x05, 0x01, 0xa5, 0x00, 0x20, 0x20, 0x28, 0xeb, +0x00, 0x21, 0x55, 0x6e, 0x7e, 0x01, 0x01, 0x92, 0x00, 0x61, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x58, 0x00, 0x01, 0xf2, +0x01, 0x91, 0x70, 0x6c, 0x79, 0x20, 0x63, 0x6c, 0x69, 0x63, +0x6b, 0x86, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0xf4, +0x01, 0x84, 0x6e, 0x79, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, +0x97, 0x06, 0x21, 0x61, 0x6e, 0x62, 0x01, 0x65, 0x6e, 0x20, +0x74, 0x79, 0x70, 0x65, 0x99, 0x06, 0x12, 0x6f, 0xcd, 0x00, +0x82, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x53, +0x04, 0x21, 0x6c, 0x6c, 0xcd, 0x01, 0x03, 0x3a, 0x00, 0xc0, +0x2e, 0x20, 0x49, 0x66, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6d, +0x61, 0x6b, 0x39, 0x00, 0x8f, 0x6d, 0x69, 0x73, 0x74, 0x61, +0x6b, 0x65, 0x2c, 0x76, 0x00, 0x00, 0x02, 0xc3, 0x01, 0x87, +0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x7a, 0x00, +0x00, 0x97, 0x01, 0x80, 0x73, 0x73, 0x20, 0x53, 0x70, 0x61, +0x63, 0x65, 0x64, 0x00, 0x50, 0x63, 0x6c, 0x65, 0x61, 0x72, +0xed, 0x03, 0x20, 0x61, 0x67, 0x22, 0x02, 0x62, 0x28, 0x6f, +0x72, 0x20, 0x75, 0x73, 0x59, 0x04, 0xc0, 0x55, 0x6e, 0x64, +0x6f, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0xf1, +0x00, 0x03, 0x7d, 0x00, 0x81, 0x5f, 0x72, 0x69, 0x67, 0x68, +0x74, 0x5f, 0x2d, 0x75, 0x00, 0x01, 0xe1, 0x00, 0x0f, 0xd9, +0x00, 0x04, 0x03, 0x94, 0x04, 0x11, 0x2c, 0xc3, 0x00, 0x03, +0x0d, 0x00, 0x01, 0x8a, 0x04, 0x01, 0x5c, 0x03, 0x45, 0x6e, +0x74, 0x65, 0x72, 0x19, 0x06, 0x05, 0x42, 0x00, 0xf1, 0x02, +0x73, 0x20, 0x61, 0x20, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, +0x6c, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0x30, 0x07, 0x00, +0x69, 0x06, 0x02, 0xee, 0x07, 0x07, 0x1b, 0x00, 0x10, 0x73, +0x6c, 0x06, 0x04, 0x69, 0x05, 0x04, 0x70, 0x06, 0x18, 0x73, +0xa1, 0x02, 0x05, 0x37, 0x01, 0x11, 0x53, 0x08, 0x00, 0x14, +0x73, 0x08, 0x03, 0x00, 0x7e, 0x06, 0x10, 0x66, 0x70, 0x02, +0x44, 0x64, 0x2d, 0x69, 0x6e, 0x39, 0x00, 0x00, 0x64, 0x00, +0x00, 0xe1, 0x02, 0x44, 0x61, 0x6c, 0x73, 0x6f, 0x29, 0x00, +0x09, 0x6f, 0x00, 0x31, 0x2e, 0x20, 0x0a, 0x1d, 0x08, 0x00, +0x59, 0x00, 0x10, 0x70, 0xd0, 0x03, 0x40, 0x6e, 0x6f, 0x20, +0x61, 0x47, 0x05, 0x01, 0x67, 0x05, 0x29, 0x74, 0x6f, 0x2d, +0x00, 0x40, 0x2c, 0x20, 0x73, 0x6f, 0xe3, 0x04, 0x10, 0x63, +0x89, 0x04, 0x40, 0x77, 0x68, 0x61, 0x74, 0x3b, 0x01, 0x04, +0x5a, 0x01, 0x11, 0x6d, 0xba, 0x00, 0x13, 0x69, 0x3a, 0x06, +0x00, 0x1a, 0x00, 0x32, 0x3a, 0x20, 0x79, 0xe6, 0x00, 0x05, +0x23, 0x00, 0x00, 0x0b, 0x01, 0x40, 0x72, 0x65, 0x6d, 0x69, +0xd6, 0x02, 0x14, 0x73, 0xd2, 0x03, 0xa4, 0x70, 0x61, 0x72, +0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x31, 0x01, 0x40, +0x6e, 0x65, 0x65, 0x64, 0x47, 0x08, 0x00, 0x53, 0x01, 0x30, +0x72, 0x65, 0x2d, 0x55, 0x05, 0x00, 0x8a, 0x07, 0x01, 0xd1, +0x03, 0x01, 0x54, 0x00, 0x42, 0x6b, 0x6e, 0x6f, 0x77, 0xe9, +0x03, 0x4a, 0x61, 0x62, 0x6f, 0x75, 0x45, 0x00, 0x05, 0xa1, +0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02, 0x36, 0x6c, 0x69, +0x73, 0xf1, 0x06, 0x6a, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, +0x69, 0x01, 0x12, 0x61, 0x7f, 0x04, 0x03, 0x8d, 0x00, 0x00, +0x48, 0x00, 0x00, 0xee, 0x02, 0x20, 0x74, 0x68, 0x61, 0x01, +0x32, 0x65, 0x6c, 0x73, 0x82, 0x00, 0x92, 0x66, 0x65, 0x65, +0x6c, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x34, 0x03, 0x40, 0x65, +0x72, 0x61, 0x73, 0x1d, 0x02, 0x00, 0x04, 0x08, 0x19, 0x6c, +0xd1, 0x01, 0x21, 0x2c, 0x20, 0x5a, 0x02, 0x02, 0x59, 0x02, +0x0c, 0x19, 0x02, 0x21, 0x6e, 0x64, 0x56, 0x02, 0x04, 0xdc, +0x01, 0x04, 0x87, 0x00, 0x01, 0xb7, 0x02, 0x00, 0x75, 0x07, +0x39, 0x41, 0x6c, 0x6c, 0x81, 0x01, 0x0a, 0x99, 0x02, 0x22, +0x72, 0x65, 0x78, 0x00, 0x61, 0x64, 0x20, 0x77, 0x68, 0x65, +0x6e, 0x97, 0x00, 0x33, 0x6c, 0x65, 0x66, 0x6b, 0x00, 0x06, +0x5d, 0x00, 0x17, 0x61, 0x12, 0x01, 0x0f, 0x2a, 0x00, 0x01, +0x07, 0x41, 0x03, 0x10, 0x73, 0x41, 0x03, 0x36, 0x2e, 0x20, +0x52, 0xb2, 0x00, 0x35, 0x69, 0x6e, 0x67, 0x20, 0x00, 0x00, +0xdd, 0x00, 0x01, 0x23, 0x00, 0x05, 0x7b, 0x07, 0x13, 0x73, +0xfa, 0x00, 0x0c, 0x53, 0x02, 0x11, 0x41, 0xc7, 0x02, 0x01, +0x62, 0x04, 0x12, 0x2c, 0x69, 0x08, 0x50, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x08, 0x04, 0x14, 0x73, 0x60, 0x09, 0x20, 0x75, +0x73, 0x29, 0x03, 0x01, 0xbd, 0x04, 0x31, 0x6a, 0x75, 0x6e, +0xd7, 0x07, 0x01, 0x98, 0x04, 0x06, 0x24, 0x07, 0x00, 0x2f, +0x00, 0x01, 0x07, 0x02, 0x35, 0x73, 0x65, 0x74, 0xa1, 0x01, +0x2b, 0x6f, 0x72, 0x6d, 0x00, 0x37, 0x55, 0x73, 0x65, 0x63, +0x00, 0x05, 0x34, 0x00, 0x21, 0x6d, 0x6f, 0x47, 0x0b, 0x50, +0x68, 0x69, 0x67, 0x68, 0x6c, 0xcf, 0x00, 0x21, 0x20, 0x61, +0xee, 0x06, 0x05, 0x8b, 0x0a, 0x01, 0x10, 0x08, 0x0a, 0xad, +0x04, 0x22, 0x74, 0x6f, 0xc1, 0x03, 0x24, 0x20, 0x69, 0x12, +0x06, 0x06, 0x3f, 0x00, 0x25, 0x65, 0x64, 0x78, 0x03, 0x14, +0x50, 0x0b, 0x01, 0x50, 0x72, 0x65, 0x74, 0x75, 0x72, 0x25, +0x03, 0x5a, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x30, 0x00, 0x02, +0x5f, 0x0b, 0x10, 0x61, 0xfa, 0x05, 0x01, 0xba, 0x04, 0x54, +0x77, 0x68, 0x69, 0x63, 0x68, 0x90, 0x02, 0x03, 0x67, 0x00, +0x20, 0x6f, 0x72, 0x0d, 0x03, 0x2d, 0x6f, 0x76, 0x3f, 0x01, +0x05, 0x62, 0x00, 0x11, 0x4d, 0x69, 0x01, 0x01, 0xd7, 0x03, +0x01, 0xfb, 0x01, 0x01, 0x58, 0x0b, 0x01, 0x0f, 0x01, 0x2d, +0x6f, 0x66, 0x19, 0x02, 0x43, 0x65, 0x76, 0x65, 0x72, 0x8f, +0x05, 0x03, 0x2e, 0x07, 0x40, 0x64, 0x6f, 0x65, 0x73, 0xe0, +0x06, 0x04, 0x54, 0x0c, 0x40, 0x6d, 0x61, 0x69, 0x6e, 0xec, +0x00, 0x02, 0xe0, 0x00, 0x10, 0x69, 0x5b, 0x07, 0x41, 0x28, +0x41, 0x6c, 0x6c, 0xba, 0x00, 0x02, 0x59, 0x09, 0x92, 0x73, +0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x9c, 0x01, +0x22, 0x73, 0x65, 0x98, 0x01, 0x30, 0x32, 0x2e, 0x31, 0x6f, +0x02, 0x02, 0xf2, 0x01, 0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, +0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x87, 0x06, 0x11, 0x32, +0x2f, 0x06, 0x00, 0x84, 0x03, 0x71, 0x61, 0x6d, 0x65, 0x74, +0x65, 0x72, 0x73, 0x55, 0x04, 0x26, 0x73, 0x65, 0x12, 0x00, +0x01, 0x6b, 0x07, 0x06, 0x3a, 0x00, 0x00, 0xb1, 0x0c, 0x02, +0x51, 0x0b, 0xe0, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x6d, 0x00, 0x04, +0x34, 0x06, 0x50, 0x60, 0x54, 0x79, 0x70, 0x65, 0x44, 0x09, +0x92, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x47, 0x72, 0x69, +0x93, 0x0c, 0xcf, 0x5f, 0x20, 0x0a, 0x53, 0x70, 0x65, 0x63, +0x69, 0x66, 0x69, 0x65, 0x73, 0xef, 0x0c, 0x04, 0xb0, 0x4c, +0x6f, 0x77, 0x65, 0x72, 0x20, 0x6c, 0x69, 0x6d, 0x69, 0x74, +0x91, 0x04, 0x68, 0x33, 0x3b, 0x20, 0x75, 0x70, 0x70, 0x12, +0x00, 0x74, 0x39, 0x20, 0x28, 0x62, 0x65, 0x63, 0x61, 0x14, +0x06, 0x20, 0x75, 0x73, 0xf5, 0x01, 0x00, 0x94, 0x01, 0x11, +0x66, 0xdd, 0x02, 0x03, 0x2b, 0x09, 0x42, 0x63, 0x6f, 0x6d, +0x65, 0x66, 0x04, 0x40, 0x64, 0x69, 0x66, 0x66, 0x5e, 0x04, +0x12, 0x74, 0xa2, 0x02, 0x12, 0x60, 0x54, 0x09, 0x64, 0x27, +0x20, 0x62, 0x69, 0x67, 0x67, 0x1e, 0x0a, 0x30, 0x39, 0x21, +0x29, 0xa8, 0x00, 0x14, 0x44, 0x2b, 0x00, 0x53, 0x79, 0x5f, +0x20, 0x0a, 0x43, 0x99, 0x07, 0x02, 0xd4, 0x02, 0x05, 0x1a, +0x00, 0x05, 0xae, 0x00, 0x40, 0x65, 0x6e, 0x65, 0x72, 0x4a, +0x0c, 0x03, 0x04, 0x08, 0xd1, 0x2e, 0x20, 0x41, 0x74, 0x20, +0x55, 0x6e, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x28, 0x01, +0x80, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x2c, 0x20, 0x73, 0x8a, +0x00, 0x71, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x94, +0x03, 0x05, 0x72, 0x06, 0x10, 0x72, 0x1d, 0x0a, 0x73, 0x72, +0x65, 0x64, 0x2c, 0x20, 0x62, 0x75, 0x2a, 0x0c, 0x31, 0x6f, +0x6c, 0x75, 0x48, 0x01, 0x21, 0x73, 0x68, 0xc8, 0x00, 0x23, +0x73, 0x74, 0x2b, 0x00, 0x42, 0x75, 0x6e, 0x69, 0x71, 0x77, +0x0c, 0x10, 0x65, 0x78, 0x02, 0x02, 0x33, 0x06, 0x02, 0x62, +0x00, 0x13, 0x73, 0x48, 0x00, 0x01, 0x5e, 0x07, 0x31, 0x72, +0x65, 0x61, 0xc7, 0x04, 0x00, 0x62, 0x09, 0x00, 0xcd, 0x0a, +0x22, 0x78, 0x20, 0x91, 0x00, 0x01, 0xdf, 0x0c, 0x00, 0xff, +0x01, 0x30, 0x6f, 0x69, 0x64, 0x52, 0x02, 0x02, 0x10, 0x00, +0x06, 0x97, 0x00, 0x00, 0xfe, 0x00, 0x19, 0x4d, 0x22, 0x0c, +0x01, 0x89, 0x0d, 0x11, 0x5f, 0x64, 0x07, 0x41, 0x74, 0x68, +0x69, 0x73, 0xe7, 0x09, 0x01, 0xd8, 0x00, 0x00, 0x7e, 0x03, +0x00, 0x95, 0x00, 0x44, 0x6f, 0x78, 0x65, 0x73, 0xcb, 0x00, +0x0b, 0x5e, 0x0c, 0x02, 0x1d, 0x00, 0x31, 0x2e, 0x20, 0x57, +0x13, 0x04, 0x04, 0x83, 0x09, 0x01, 0x4e, 0x04, 0x04, 0x32, +0x09, 0x21, 0x69, 0x73, 0x09, 0x06, 0x10, 0x6e, 0xd6, 0x05, +0xf0, 0x04, 0x60, 0x49, 0x6e, 0x73, 0x68, 0x69, 0x20, 0x4e, +0x6f, 0x20, 0x48, 0x65, 0x79, 0x61, 0x27, 0x2e, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 3936; const char quick_help_text[] = "Complete the latin square in accordance with the arithmetic clues."; diff --git a/apps/plugins/puzzles/help/lightup.c b/apps/plugins/puzzles/help/lightup.c index a75a88997a..30a67c7f4a 100644 --- a/apps/plugins/puzzles/help/lightup.c +++ b/apps/plugins/puzzles/help/lightup.c @@ -1,82 +1,164 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2314 comp 1548 ratio 0.668971 level 11 saved 766 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 21: Light Up " -"\n" -"You have a grid of squares. Some are filled in black; some of the " -"black squares are numbered. Your aim is to `light up' all the empty " -"squares by placing light bulbs in some of them. " -"\n" -"Each light bulb illuminates the square it is on, plus all squares " -"in line with it horizontally or vertically unless a black square is " -"blocking the way. " -"\n" -"To win the game, you must satisfy the following conditions: " -"\n" -"- All non-black squares are lit. " -"\n" -"- No light is lit by another light. " -"\n" -"- All numbered black squares have exactly that number of lights " -"adjacent to them (in the four squares above, below, and to the " -"side). " -"\n" -"Non-numbered black squares may have any number of lights adjacent to " -"them. " -"\n" -"Credit for this puzzle goes to Nikoli [9]. " -"\n" -"Light Up was contributed to this collection by James Harvey. " -"\n" -"[9] http://www.nikoli.co.jp/en/puzzles/akari.html (beware of Flash) " -"\n" -"\n#21.1 Light Up controls " -"\n" -"Left-clicking in a non-black square will toggle the presence of a " -"light in that square. Right-clicking in a non-black square toggles a " -"mark there to aid solving; it can be used to highlight squares that " -"cannot be lit, for example. " -"\n" -"You may not place a light in a marked square, nor place a mark in a " -"lit square. " -"\n" -"The game will highlight obvious errors in red. Lights lit by other " -"lights are highlighted in this way, as are numbered squares which do " -"not (or cannot) have the right number of lights next to them. " -"\n" -"Thus, the grid is solved when all non-black squares have yellow " -"highlights and there are no red lights. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#21.2 Light Up parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_%age of black squares_ " -"\n" -"Rough percentage of black squares in the grid. " -"\n" -"This is a hint rather than an instruction. If the grid generator " -"is unable to generate a puzzle to this precise specification, it " -"will increase the proportion of black squares until it can. " -"\n" -"_Symmetry_ " -"\n" -"Allows you to specify the required symmetry of the black squares " -"in the grid. (This does not affect the difficulty of the puzzles " -"noticeably.) " -"\n" -"_Difficulty_ " -"\n" -"`Easy' means that the puzzles should be soluble without " -"backtracking or guessing, `Hard' means that some guesses will " -"probably be necessary. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x42, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x31, 0x3a, 0x20, 0x4c, 0x69, 0x67, 0x68, 0x74, +0x20, 0x55, 0x70, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, +0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, +0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, +0x73, 0x2e, 0x20, 0x53, 0x6f, 0x6d, 0x65, 0x20, 0x61, 0x72, +0x65, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x69, +0x6e, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x3b, 0x20, 0x73, +0x6f, 0x6d, 0x65, 0x2b, 0x00, 0x32, 0x74, 0x68, 0x65, 0x13, +0x00, 0x04, 0x35, 0x00, 0x01, 0x2f, 0x00, 0xf1, 0x0c, 0x6e, +0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x2e, 0x20, 0x59, +0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, +0x20, 0x74, 0x6f, 0x20, 0x60, 0x6c, 0x78, 0x00, 0x71, 0x75, +0x70, 0x27, 0x20, 0x61, 0x6c, 0x6c, 0x3e, 0x00, 0x55, 0x65, +0x6d, 0x70, 0x74, 0x79, 0x3e, 0x00, 0xb2, 0x62, 0x79, 0x20, +0x70, 0x6c, 0x61, 0x63, 0x69, 0x6e, 0x67, 0x20, 0x2b, 0x00, +0x88, 0x62, 0x75, 0x6c, 0x62, 0x73, 0x20, 0x69, 0x6e, 0x72, +0x00, 0x87, 0x6d, 0x2e, 0x20, 0x0a, 0x45, 0x61, 0x63, 0x68, +0x23, 0x00, 0xc0, 0x20, 0x69, 0x6c, 0x6c, 0x75, 0x6d, 0x69, +0x6e, 0x61, 0x74, 0x65, 0x73, 0x23, 0x00, 0x03, 0x51, 0x00, +0x30, 0x20, 0x69, 0x74, 0x7a, 0x00, 0x80, 0x6f, 0x6e, 0x2c, +0x20, 0x70, 0x6c, 0x75, 0x73, 0x75, 0x00, 0x03, 0x1a, 0x00, +0x01, 0x54, 0x00, 0x90, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x77, +0x69, 0x74, 0x68, 0x28, 0x00, 0xf1, 0x07, 0x68, 0x6f, 0x72, +0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x20, +0x6f, 0x72, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, +0x00, 0x89, 0x75, 0x6e, 0x6c, 0x65, 0x73, 0x73, 0x20, 0x61, +0xeb, 0x00, 0x00, 0x59, 0x00, 0x81, 0x62, 0x6c, 0x6f, 0x63, +0x6b, 0x69, 0x6e, 0x67, 0x73, 0x00, 0xc1, 0x77, 0x61, 0x79, +0x2e, 0x20, 0x0a, 0x54, 0x6f, 0x20, 0x77, 0x69, 0x6e, 0x11, +0x00, 0xf1, 0x07, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x79, +0x6f, 0x75, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x73, 0x61, +0x74, 0x69, 0x73, 0x66, 0x79, 0x1b, 0x00, 0x60, 0x66, 0x6f, +0x6c, 0x6c, 0x6f, 0x77, 0x3a, 0x00, 0xfe, 0x08, 0x63, 0x6f, +0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x20, +0x0a, 0x2d, 0x20, 0x41, 0x6c, 0x6c, 0x20, 0x6e, 0x6f, 0x6e, +0x2d, 0x55, 0x01, 0x40, 0x6c, 0x69, 0x74, 0x2e, 0x22, 0x00, +0x23, 0x4e, 0x6f, 0xf8, 0x00, 0x20, 0x69, 0x73, 0x14, 0x00, +0x00, 0x33, 0x01, 0x72, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, +0x72, 0x18, 0x00, 0x13, 0x2e, 0x47, 0x00, 0x05, 0x86, 0x01, +0x0a, 0xa1, 0x01, 0x02, 0xed, 0x01, 0x60, 0x65, 0x78, 0x61, +0x63, 0x74, 0x6c, 0x8c, 0x00, 0x23, 0x61, 0x74, 0x29, 0x00, +0x32, 0x20, 0x6f, 0x66, 0x41, 0x00, 0xd1, 0x73, 0x20, 0x61, +0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x20, 0x74, 0x6f, +0x70, 0x01, 0x43, 0x20, 0x28, 0x69, 0x6e, 0xb7, 0x00, 0x26, +0x75, 0x72, 0x95, 0x00, 0xf3, 0x01, 0x62, 0x6f, 0x76, 0x65, +0x2c, 0x20, 0x62, 0x65, 0x6c, 0x6f, 0x77, 0x2c, 0x20, 0x61, +0x6e, 0x64, 0x2f, 0x00, 0xdf, 0x20, 0x73, 0x69, 0x64, 0x65, +0x29, 0x2e, 0x20, 0x0a, 0x4e, 0x6f, 0x6e, 0x2d, 0x85, 0x00, +0x04, 0x33, 0x6d, 0x61, 0x79, 0x76, 0x02, 0x2f, 0x6e, 0x79, +0x80, 0x00, 0x0a, 0x04, 0xf0, 0x01, 0xf1, 0x0b, 0x43, 0x72, +0x65, 0x64, 0x69, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, 0x74, +0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x20, 0x67, 0x6f, 0x65, 0x59, 0x02, 0xd5, 0x4e, 0x69, 0x6b, +0x6f, 0x6c, 0x69, 0x20, 0x5b, 0x39, 0x5d, 0x2e, 0x20, 0x0a, +0xdd, 0x02, 0x30, 0x77, 0x61, 0x73, 0x60, 0x01, 0x73, 0x74, +0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0xa0, 0x00, 0x10, 0x69, +0x14, 0x00, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0x75, 0x01, 0x00, +0x3e, 0x01, 0xb0, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x48, +0x61, 0x72, 0x76, 0x65, 0xc1, 0x01, 0xf1, 0x01, 0x5b, 0x39, +0x5d, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, +0x77, 0x77, 0x2e, 0x6e, 0x5a, 0x00, 0xa2, 0x2e, 0x63, 0x6f, +0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x79, 0x00, 0xf1, +0x04, 0x73, 0x2f, 0x61, 0x6b, 0x61, 0x72, 0x69, 0x2e, 0x68, +0x74, 0x6d, 0x6c, 0x20, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, +0x9e, 0x02, 0xe5, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x20, +0x0a, 0x0a, 0x23, 0x32, 0x31, 0x2e, 0x31, 0x67, 0x03, 0x02, +0x86, 0x00, 0xd1, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, +0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x38, 0x02, 0x00, 0x85, +0x02, 0x1c, 0x61, 0xf0, 0x01, 0x00, 0x93, 0x02, 0x00, 0x1d, +0x03, 0x51, 0x6f, 0x67, 0x67, 0x6c, 0x65, 0x51, 0x01, 0x71, +0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x63, 0x62, 0x00, 0x14, +0x61, 0xfe, 0x01, 0x11, 0x6e, 0xbd, 0x01, 0x03, 0x33, 0x00, +0x6f, 0x2e, 0x20, 0x52, 0x69, 0x67, 0x68, 0x59, 0x00, 0x0d, +0x03, 0x54, 0x00, 0x00, 0xca, 0x02, 0x40, 0x6d, 0x61, 0x72, +0x6b, 0x5c, 0x00, 0x01, 0x15, 0x00, 0xd0, 0x20, 0x61, 0x69, +0x64, 0x20, 0x73, 0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x3b, +0x0c, 0x03, 0x92, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, +0x75, 0x73, 0x35, 0x01, 0x41, 0x68, 0x69, 0x67, 0x68, 0x76, +0x00, 0x04, 0xc0, 0x01, 0x00, 0x7b, 0x00, 0x01, 0x26, 0x00, +0x51, 0x6e, 0x6f, 0x74, 0x20, 0x62, 0x9c, 0x02, 0x10, 0x2c, +0x9c, 0x01, 0x00, 0x58, 0x02, 0x51, 0x6d, 0x70, 0x6c, 0x65, +0x2e, 0x58, 0x04, 0x01, 0xe6, 0x01, 0x31, 0x6e, 0x6f, 0x74, +0xd3, 0x03, 0x17, 0x65, 0xba, 0x00, 0x03, 0x80, 0x00, 0x23, +0x65, 0x64, 0x50, 0x00, 0x52, 0x2c, 0x20, 0x6e, 0x6f, 0x72, +0x26, 0x00, 0x04, 0x9b, 0x00, 0x21, 0x69, 0x6e, 0x30, 0x00, +0x06, 0xe0, 0x00, 0x22, 0x0a, 0x54, 0x52, 0x03, 0x02, 0x1e, +0x01, 0x07, 0x93, 0x00, 0xd1, 0x6f, 0x62, 0x76, 0x69, 0x6f, +0x75, 0x73, 0x20, 0x65, 0x72, 0x72, 0x6f, 0x72, 0xd7, 0x03, +0x00, 0x7a, 0x04, 0x02, 0x7b, 0x01, 0x05, 0x22, 0x03, 0x07, +0x20, 0x03, 0x01, 0x4e, 0x03, 0x06, 0x40, 0x00, 0x01, 0xd7, +0x04, 0x01, 0x17, 0x02, 0x00, 0xc1, 0x03, 0x3a, 0x2c, 0x20, +0x61, 0xc3, 0x04, 0x05, 0xf2, 0x00, 0x81, 0x77, 0x68, 0x69, +0x63, 0x68, 0x20, 0x64, 0x6f, 0xd1, 0x00, 0x33, 0x28, 0x6f, +0x72, 0xfe, 0x00, 0x10, 0x29, 0xc7, 0x02, 0x02, 0xa6, 0x01, +0x10, 0x72, 0x4f, 0x00, 0x0e, 0xcd, 0x02, 0x38, 0x6e, 0x65, +0x78, 0xc9, 0x02, 0x50, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x0d, +0x00, 0x02, 0x6f, 0x05, 0x21, 0x69, 0x73, 0x79, 0x01, 0x94, +0x65, 0x64, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x20, 0x61, 0xff, +0x03, 0x0e, 0xb3, 0x03, 0x20, 0x79, 0x65, 0x33, 0x04, 0x06, +0xb9, 0x00, 0x10, 0x73, 0x73, 0x03, 0x02, 0xc3, 0x01, 0x02, +0xb2, 0x00, 0x10, 0x6f, 0xf9, 0x00, 0x03, 0x76, 0x00, 0x53, +0x2e, 0x20, 0x0a, 0x28, 0x41, 0x62, 0x05, 0x21, 0x61, 0x63, +0x5f, 0x04, 0x82, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, +0x62, 0xf1, 0x00, 0x13, 0x73, 0x00, 0x03, 0x31, 0x32, 0x2e, +0x31, 0x3e, 0x00, 0xf4, 0x00, 0x61, 0x6c, 0x73, 0x6f, 0x20, +0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, +0xc3, 0x02, 0x16, 0x32, 0xc3, 0x02, 0xa1, 0x70, 0x61, 0x72, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x8c, 0x01, 0x26, +0x73, 0x65, 0x12, 0x00, 0x01, 0x33, 0x01, 0x06, 0x3e, 0x00, +0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x7b, 0x00, 0xe1, 0x60, +0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, +0x20, 0x6f, 0x70, 0x71, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, +0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, +0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, +0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x70, 0x00, 0x60, +0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0xf0, 0x02, 0x03, 0x26, +0x01, 0x16, 0x6e, 0x95, 0x06, 0x50, 0x0a, 0x5f, 0x25, 0x61, +0x67, 0x1b, 0x00, 0x0a, 0x53, 0x04, 0xc0, 0x5f, 0x20, 0x0a, +0x52, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x70, 0x65, 0x72, 0x3c, +0x04, 0x08, 0x24, 0x00, 0x07, 0xf4, 0x05, 0x05, 0x7a, 0x01, +0x00, 0x8b, 0x01, 0x00, 0xf5, 0x01, 0x10, 0x69, 0x0e, 0x03, +0x70, 0x68, 0x69, 0x6e, 0x74, 0x20, 0x72, 0x61, 0x4d, 0x01, +0x00, 0xdb, 0x02, 0xb1, 0x6e, 0x20, 0x61, 0x6e, 0x20, 0x69, +0x6e, 0x73, 0x74, 0x72, 0x75, 0x26, 0x01, 0x46, 0x2e, 0x20, +0x49, 0x66, 0xb3, 0x01, 0x90, 0x67, 0x65, 0x6e, 0x65, 0x72, +0x61, 0x74, 0x6f, 0x72, 0x3c, 0x00, 0x21, 0x75, 0x6e, 0xf2, +0x00, 0x24, 0x74, 0x6f, 0x17, 0x00, 0x33, 0x65, 0x20, 0x61, +0x9d, 0x04, 0x04, 0x6f, 0x04, 0x00, 0xbf, 0x03, 0xe0, 0x63, +0x69, 0x73, 0x65, 0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, +0x69, 0x63, 0x61, 0x54, 0x00, 0x42, 0x2c, 0x20, 0x69, 0x74, +0xcb, 0x02, 0x74, 0x69, 0x6e, 0x63, 0x72, 0x65, 0x61, 0x73, +0xeb, 0x03, 0x40, 0x6f, 0x70, 0x6f, 0x72, 0x21, 0x00, 0x0e, +0xbe, 0x00, 0x53, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x9f, 0x03, +0x00, 0x08, 0x01, 0xc0, 0x53, 0x79, 0x6d, 0x6d, 0x65, 0x74, +0x72, 0x79, 0x5f, 0x20, 0x0a, 0x41, 0x1c, 0x02, 0x11, 0x73, +0x6c, 0x06, 0x23, 0x74, 0x6f, 0x69, 0x00, 0x12, 0x79, 0x96, +0x02, 0x41, 0x65, 0x71, 0x75, 0x69, 0xc9, 0x02, 0x03, 0x2e, +0x00, 0x0d, 0xb7, 0x07, 0x0e, 0x1a, 0x01, 0x11, 0x28, 0x1a, +0x01, 0x41, 0x64, 0x6f, 0x65, 0x73, 0xee, 0x02, 0x61, 0x61, +0x66, 0x66, 0x65, 0x63, 0x74, 0x20, 0x00, 0x94, 0x64, 0x69, +0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x47, 0x00, 0x02, +0xec, 0x00, 0x02, 0x29, 0x00, 0x70, 0x69, 0x63, 0x65, 0x61, +0x62, 0x6c, 0x79, 0x3d, 0x02, 0x24, 0x5f, 0x44, 0x29, 0x00, +0x00, 0x9e, 0x00, 0x50, 0x60, 0x45, 0x61, 0x73, 0x79, 0xed, +0x01, 0x22, 0x61, 0x6e, 0x3b, 0x04, 0x09, 0x3a, 0x00, 0x90, +0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x62, 0x65, 0x0a, +0x03, 0x32, 0x75, 0x62, 0x6c, 0x93, 0x07, 0xb1, 0x6f, 0x75, +0x74, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0xd2, +0x04, 0x00, 0x93, 0x07, 0xf8, 0x00, 0x67, 0x75, 0x65, 0x73, +0x73, 0x69, 0x6e, 0x67, 0x2c, 0x20, 0x60, 0x48, 0x61, 0x72, +0x64, 0x52, 0x00, 0x01, 0x20, 0x08, 0x02, 0x21, 0x00, 0x21, +0x65, 0x73, 0x58, 0x01, 0x00, 0x4b, 0x01, 0x10, 0x62, 0x90, +0x00, 0x00, 0x5a, 0x00, 0xd0, 0x6e, 0x65, 0x63, 0x65, 0x73, +0x73, 0x61, 0x72, 0x79, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2314; const char quick_help_text[] = "Place bulbs to light up all the squares."; diff --git a/apps/plugins/puzzles/help/loopy.c b/apps/plugins/puzzles/help/loopy.c index 3933234315..c2452e7118 100644 --- a/apps/plugins/puzzles/help/loopy.c +++ b/apps/plugins/puzzles/help/loopy.c @@ -1,69 +1,171 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2264 comp 1613 ratio 0.712456 level 11 saved 651 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 23: Loopy " -"\n" -"You are given a grid of dots, marked with yellow lines to indicate " -"which dots you are allowed to connect directly together. Your aim is " -"to use some subset of those yellow lines to draw a single unbroken " -"loop from dot to dot within the grid. " -"\n" -"Some of the spaces between the lines contain numbers. These numbers " -"indicate how many of the lines around that space form part of the " -"loop. The loop you draw must correctly satisfy all of these clues to " -"be considered a correct solution. " -"\n" -"In the default mode, the dots are arranged in a grid of squares; " -"however, you can also play on triangular or hexagonal grids, or even " -"more exotic ones. " -"\n" -"Credit for the basic puzzle idea goes to Nikoli [10]. " -"\n" -"Loopy was originally contributed to this collection by Mike Pinna, " -"and subsequently enhanced to handle various types of non-square grid " -"by Lambros Lambrou. " -"\n" -"[10] http://www.nikoli.co.jp/en/puzzles/slitherlink.html (beware of " -"Flash) " -"\n" -"\n#23.1 Loopy controls " -"\n" -"Click the left mouse button on a yellow line to turn it black, " -"indicating that you think it is part of the loop. Click again to " -"turn the line yellow again (meaning you aren't sure yet). " -"\n" -"If you are sure that a particular line segment is _not_ part of the " -"loop, you can click the right mouse button to remove it completely. " -"Again, clicking a second time will turn the line back to yellow. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#23.2 Loopy parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid, measured in number of regions across and down. For " -"square grids, it's clear how this is counted; for other types of " -"grid you may have to think a bit to see how the dimensions are " -"measured. " -"\n" -"_Grid type_ " -"\n" -"Allows you to choose between a selection of types of tiling. " -"Some have all the faces the same but may have multiple different " -"types of vertex (e.g. the _Cairo_ or _Kites_ mode); others " -"have all the vertices the same but may have different types of " -"face (e.g. the _Great Hexagonal_). The square, triangular and " -"honeycomb grids are fully regular, and have all their vertices " -"_and_ faces the same; this makes them the least confusing to " -"play. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf1, 0x4d, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x33, 0x3a, 0x20, 0x4c, 0x6f, 0x6f, 0x70, 0x79, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x20, +0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, 0x72, +0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x64, 0x6f, 0x74, 0x73, +0x2c, 0x20, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x64, 0x20, 0x77, +0x69, 0x74, 0x68, 0x20, 0x79, 0x65, 0x6c, 0x6c, 0x6f, 0x77, +0x20, 0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x74, 0x6f, 0x20, +0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x20, 0x77, +0x68, 0x69, 0x63, 0x68, 0x31, 0x00, 0x23, 0x20, 0x79, 0x4e, +0x00, 0x10, 0x61, 0x2b, 0x00, 0x20, 0x65, 0x64, 0x27, 0x00, +0xf1, 0x16, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x20, +0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x74, +0x6f, 0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x20, 0x59, +0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x51, +0x00, 0xf0, 0x00, 0x75, 0x73, 0x65, 0x20, 0x73, 0x6f, 0x6d, +0x65, 0x20, 0x73, 0x75, 0x62, 0x73, 0x65, 0x74, 0x86, 0x00, +0x5d, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x7a, 0x00, 0xf0, 0x11, +0x64, 0x72, 0x61, 0x77, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, +0x67, 0x6c, 0x65, 0x20, 0x75, 0x6e, 0x62, 0x72, 0x6f, 0x6b, +0x65, 0x6e, 0x20, 0x6c, 0x6f, 0x6f, 0x70, 0x20, 0x66, 0x72, +0x6f, 0x6d, 0x8c, 0x00, 0x01, 0x28, 0x00, 0x21, 0x6f, 0x74, +0xbb, 0x00, 0x61, 0x69, 0x6e, 0x20, 0x74, 0x68, 0x65, 0xdb, +0x00, 0x40, 0x2e, 0x20, 0x0a, 0x53, 0x63, 0x00, 0x21, 0x6f, +0x66, 0x13, 0x00, 0xd1, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, +0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x26, 0x00, 0x02, +0x66, 0x00, 0x00, 0xb6, 0x00, 0xf4, 0x04, 0x74, 0x61, 0x69, +0x6e, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, +0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x0f, 0x00, 0x06, 0xfc, +0x00, 0xb7, 0x68, 0x6f, 0x77, 0x20, 0x6d, 0x61, 0x6e, 0x79, +0x20, 0x6f, 0x66, 0x3e, 0x00, 0xb2, 0x61, 0x72, 0x6f, 0x75, +0x6e, 0x64, 0x20, 0x74, 0x68, 0x61, 0x74, 0x63, 0x00, 0xa3, +0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x70, 0x61, 0x72, 0x74, +0x29, 0x00, 0x01, 0xad, 0x00, 0x33, 0x2e, 0x20, 0x54, 0x0a, +0x00, 0x00, 0x39, 0x01, 0x02, 0xd7, 0x00, 0x83, 0x6d, 0x75, +0x73, 0x74, 0x20, 0x63, 0x6f, 0x72, 0x2d, 0x01, 0x70, 0x73, +0x61, 0x74, 0x69, 0x73, 0x66, 0x79, 0x51, 0x01, 0x01, 0x3a, +0x00, 0x01, 0x86, 0x00, 0x32, 0x63, 0x6c, 0x75, 0x09, 0x01, +0x20, 0x62, 0x65, 0xa9, 0x00, 0x94, 0x73, 0x69, 0x64, 0x65, +0x72, 0x65, 0x64, 0x20, 0x61, 0x38, 0x00, 0xd2, 0x20, 0x73, +0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x0a, +0x49, 0xd6, 0x00, 0xd0, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, +0x74, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x2c, 0x12, 0x00, 0x01, +0xb0, 0x01, 0x02, 0xac, 0x01, 0x98, 0x72, 0x72, 0x61, 0x6e, +0x67, 0x65, 0x64, 0x20, 0x69, 0x00, 0x02, 0x80, 0x73, 0x71, +0x75, 0x61, 0x72, 0x65, 0x73, 0x3b, 0xe2, 0x00, 0x51, 0x65, +0x76, 0x65, 0x72, 0x2c, 0xa3, 0x00, 0xf1, 0x19, 0x63, 0x61, +0x6e, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x70, 0x6c, 0x61, +0x79, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x72, 0x69, 0x61, 0x6e, +0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x6f, 0x72, 0x20, 0x68, +0x65, 0x78, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x47, 0x00, +0x20, 0x73, 0x2c, 0x14, 0x00, 0x10, 0x65, 0x58, 0x02, 0xf0, +0x0a, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x65, 0x78, 0x6f, 0x74, +0x69, 0x63, 0x20, 0x6f, 0x6e, 0x65, 0x73, 0x2e, 0x20, 0x0a, +0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x19, 0x01, 0x01, 0x8f, +0x00, 0xf2, 0x05, 0x62, 0x61, 0x73, 0x69, 0x63, 0x20, 0x70, +0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x69, 0x64, 0x65, 0x61, +0x20, 0x67, 0x6f, 0xe5, 0x00, 0xe2, 0x4e, 0x69, 0x6b, 0x6f, +0x6c, 0x69, 0x20, 0x5b, 0x31, 0x30, 0x5d, 0x2e, 0x20, 0x0a, +0xb7, 0x02, 0xe1, 0x77, 0x61, 0x73, 0x20, 0x6f, 0x72, 0x69, +0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0xae, 0x01, 0x52, +0x72, 0x69, 0x62, 0x75, 0x74, 0x73, 0x02, 0x30, 0x74, 0x68, +0x69, 0xc2, 0x01, 0x40, 0x6c, 0x6c, 0x65, 0x63, 0x06, 0x01, +0xf2, 0x04, 0x20, 0x62, 0x79, 0x20, 0x4d, 0x69, 0x6b, 0x65, +0x20, 0x50, 0x69, 0x6e, 0x6e, 0x61, 0x2c, 0x20, 0x61, 0x6e, +0x64, 0x63, 0x02, 0x40, 0x71, 0x75, 0x65, 0x6e, 0x65, 0x01, +0x62, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x3c, 0x00, 0xf0, +0x05, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x20, 0x76, 0x61, +0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x74, 0x79, 0x70, 0x65, +0x73, 0x10, 0x01, 0x41, 0x6e, 0x6f, 0x6e, 0x2d, 0x14, 0x01, +0x02, 0x48, 0x02, 0x00, 0x54, 0x00, 0x73, 0x4c, 0x61, 0x6d, +0x62, 0x72, 0x6f, 0x73, 0x08, 0x00, 0x40, 0x75, 0x2e, 0x20, +0x0a, 0xa4, 0x00, 0xd1, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, +0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0xbb, 0x00, 0xa2, +0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, +0xdf, 0x00, 0x50, 0x73, 0x2f, 0x73, 0x6c, 0x69, 0x02, 0x03, +0xf1, 0x01, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x68, 0x74, 0x6d, +0x6c, 0x20, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0x97, 0x02, +0xe1, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x20, 0x0a, 0x0a, +0x23, 0x32, 0x33, 0x2e, 0x31, 0xa7, 0x03, 0x03, 0xe1, 0x00, +0xa2, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x43, 0x6c, 0x69, 0x63, +0x6b, 0x42, 0x02, 0x20, 0x65, 0x66, 0xd0, 0x01, 0x00, 0x36, +0x03, 0x60, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x90, 0x01, +0x18, 0x61, 0x2d, 0x03, 0x01, 0x0c, 0x01, 0xd4, 0x75, 0x72, +0x6e, 0x20, 0x69, 0x74, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, +0x2c, 0xb9, 0x02, 0x31, 0x69, 0x6e, 0x67, 0x9e, 0x02, 0x01, +0xd5, 0x01, 0x00, 0x21, 0x03, 0x10, 0x6b, 0x24, 0x00, 0x2f, +0x69, 0x73, 0xa3, 0x02, 0x00, 0x02, 0x71, 0x00, 0x53, 0x61, +0x67, 0x61, 0x69, 0x6e, 0x50, 0x00, 0x05, 0x28, 0x03, 0x04, +0x9a, 0x03, 0x03, 0x1e, 0x00, 0x84, 0x28, 0x6d, 0x65, 0x61, +0x6e, 0x69, 0x6e, 0x67, 0x06, 0x04, 0x70, 0x6e, 0x27, 0x74, +0x20, 0x73, 0x75, 0x72, 0x26, 0x00, 0x20, 0x74, 0x29, 0x8b, +0x02, 0x14, 0x66, 0x1a, 0x00, 0x01, 0x17, 0x00, 0x02, 0x81, +0x00, 0x11, 0x61, 0x73, 0x00, 0x20, 0x69, 0x63, 0x43, 0x02, +0x02, 0x54, 0x00, 0x61, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, +0x8e, 0x00, 0x5d, 0x5f, 0x6e, 0x6f, 0x74, 0x5f, 0x94, 0x00, +0x06, 0x8b, 0x02, 0x15, 0x63, 0x0d, 0x01, 0x49, 0x72, 0x69, +0x67, 0x68, 0x0e, 0x01, 0x01, 0xad, 0x00, 0x80, 0x72, 0x65, +0x6d, 0x6f, 0x76, 0x65, 0x20, 0x69, 0x52, 0x03, 0xb0, 0x6d, +0x70, 0x6c, 0x65, 0x74, 0x65, 0x6c, 0x79, 0x2e, 0x20, 0x41, +0xae, 0x00, 0x12, 0x2c, 0x3d, 0x00, 0x30, 0x69, 0x6e, 0x67, +0x4a, 0x04, 0x30, 0x65, 0x63, 0x6f, 0xb0, 0x03, 0x8b, 0x69, +0x6d, 0x65, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0xe6, 0x00, 0x20, +0x62, 0x61, 0x66, 0x00, 0x13, 0x6f, 0xee, 0x00, 0x71, 0x2e, +0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x1f, 0x00, 0x11, 0x61, +0x61, 0x02, 0x92, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, +0x69, 0x62, 0x45, 0x03, 0x13, 0x73, 0x77, 0x02, 0x30, 0x32, +0x2e, 0x31, 0xed, 0x00, 0x02, 0x31, 0x03, 0xa4, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0xdc, 0x01, +0x12, 0x32, 0xdc, 0x01, 0x00, 0xdf, 0x00, 0x40, 0x61, 0x6d, +0x65, 0x74, 0x57, 0x04, 0x11, 0x0a, 0x66, 0x04, 0x06, 0x12, +0x00, 0x01, 0xa1, 0x03, 0x06, 0x3b, 0x00, 0x01, 0xdd, 0x04, +0x01, 0x78, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, +0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x6e, 0x00, +0x22, 0x6f, 0x6e, 0x1a, 0x00, 0x90, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x91, 0x02, 0xc0, 0x5f, 0x57, +0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, +0x22, 0x01, 0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x68, +0x02, 0x01, 0xc6, 0x02, 0x70, 0x2c, 0x20, 0x6d, 0x65, 0x61, +0x73, 0x75, 0x3d, 0x04, 0x05, 0xec, 0x04, 0x00, 0x1c, 0x00, +0x31, 0x72, 0x65, 0x67, 0xd7, 0x00, 0x61, 0x61, 0x63, 0x72, +0x6f, 0x73, 0x73, 0x31, 0x03, 0x93, 0x64, 0x6f, 0x77, 0x6e, +0x2e, 0x20, 0x46, 0x6f, 0x72, 0x1a, 0x04, 0x04, 0xe2, 0x03, +0xa0, 0x69, 0x74, 0x27, 0x73, 0x20, 0x63, 0x6c, 0x65, 0x61, +0x72, 0x2a, 0x04, 0x02, 0x7b, 0x03, 0x01, 0x7e, 0x03, 0x61, +0x75, 0x6e, 0x74, 0x65, 0x64, 0x3b, 0xe0, 0x03, 0x10, 0x6f, +0xed, 0x02, 0x02, 0x4b, 0x03, 0x04, 0x7a, 0x00, 0x01, 0xc3, +0x01, 0x70, 0x6d, 0x61, 0x79, 0x20, 0x68, 0x61, 0x76, 0xa8, +0x02, 0x03, 0x85, 0x02, 0x41, 0x61, 0x20, 0x62, 0x69, 0xbb, +0x05, 0x21, 0x73, 0x65, 0x5c, 0x05, 0x02, 0xaa, 0x04, 0x52, +0x69, 0x6d, 0x65, 0x6e, 0x73, 0x91, 0x00, 0x25, 0x72, 0x65, +0xb3, 0x00, 0x00, 0xdf, 0x00, 0x41, 0x47, 0x72, 0x69, 0x64, +0x59, 0x00, 0x40, 0x5f, 0x20, 0x0a, 0x41, 0x9d, 0x01, 0x01, +0x83, 0x06, 0x01, 0x77, 0x06, 0x54, 0x68, 0x6f, 0x6f, 0x73, +0x65, 0xda, 0x05, 0x01, 0xe4, 0x01, 0x04, 0x0f, 0x04, 0x26, +0x6f, 0x66, 0x8c, 0x00, 0x80, 0x74, 0x69, 0x6c, 0x69, 0x6e, +0x67, 0x2e, 0x20, 0x15, 0x06, 0x02, 0x8c, 0x00, 0x13, 0x61, +0xdb, 0x01, 0x10, 0x66, 0x1a, 0x06, 0x02, 0x25, 0x06, 0x21, +0x61, 0x6d, 0x55, 0x02, 0x06, 0xb0, 0x00, 0x70, 0x6d, 0x75, +0x6c, 0x74, 0x69, 0x70, 0x6c, 0x9b, 0x00, 0x76, 0x66, 0x66, +0x65, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x00, 0xc1, 0x76, 0x65, +0x72, 0x74, 0x65, 0x78, 0x20, 0x28, 0x65, 0x2e, 0x67, 0x2e, +0x3f, 0x00, 0x70, 0x5f, 0x43, 0x61, 0x69, 0x72, 0x6f, 0x5f, +0x0c, 0x05, 0x71, 0x5f, 0x4b, 0x69, 0x74, 0x65, 0x73, 0x5f, +0x86, 0x05, 0x22, 0x29, 0x3b, 0x18, 0x01, 0x19, 0x73, 0x77, +0x00, 0x01, 0x3f, 0x00, 0x1f, 0x69, 0x7a, 0x00, 0x07, 0x0e, +0x71, 0x00, 0x01, 0xa9, 0x00, 0x08, 0x6f, 0x00, 0x74, 0x47, +0x72, 0x65, 0x61, 0x74, 0x20, 0x48, 0x8b, 0x05, 0x21, 0x5f, +0x29, 0x67, 0x06, 0x03, 0xb7, 0x01, 0x17, 0x2c, 0xb2, 0x05, +0x01, 0xd8, 0x01, 0x91, 0x68, 0x6f, 0x6e, 0x65, 0x79, 0x63, +0x6f, 0x6d, 0x62, 0x97, 0x01, 0x02, 0x62, 0x01, 0x20, 0x66, +0x75, 0x55, 0x05, 0x21, 0x72, 0x65, 0x26, 0x00, 0x01, 0x30, +0x05, 0x09, 0xa4, 0x00, 0x26, 0x69, 0x72, 0xa6, 0x00, 0x5b, +0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x2c, 0x01, 0x12, 0x3b, 0x06, +0x02, 0x32, 0x6d, 0x61, 0x6b, 0x15, 0x00, 0x13, 0x6d, 0xaf, +0x04, 0x11, 0x61, 0xda, 0x06, 0x41, 0x6e, 0x66, 0x75, 0x73, +0x7f, 0x04, 0x02, 0x45, 0x06, 0x00, 0xc6, 0x01, 0x40, 0x44, +0x69, 0x66, 0x66, 0x02, 0x04, 0x63, 0x74, 0x79, 0x5f, 0x20, +0x0a, 0x43, 0xeb, 0x04, 0x02, 0xfb, 0x01, 0x04, 0x1a, 0x00, +0x05, 0x61, 0x07, 0x60, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, +0xe9, 0x05, 0xa0, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2e, +0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2264; const char quick_help_text[] = "Draw a single closed loop, given clues about number of adjacent edges."; diff --git a/apps/plugins/puzzles/help/magnets.c b/apps/plugins/puzzles/help/magnets.c index 1dae190a6f..8311a27dfe 100644 --- a/apps/plugins/puzzles/help/magnets.c +++ b/apps/plugins/puzzles/help/magnets.c @@ -1,76 +1,175 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2498 comp 1657 ratio 0.663331 level 11 saved 841 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 33: Magnets " -"\n" -"A rectangular grid has been filled with a mixture of magnets (that " -"is, dominoes with one positive end and one negative end) and blank " -"dominoes (that is, dominoes with two neutral poles). These dominoes " -"are initially only seen in silhouette. Around the grid are placed a " -"number of clues indicating the number of positive and negative poles " -"contained in certain columns and rows. " -"\n" -"Your aim is to correctly place the magnets and blank dominoes such " -"that all the clues are satisfied, with the additional constraint " -"that no two similar magnetic poles may be orthogonally adjacent " -"(since they repel). Neutral poles do not repel, and can be adjacent " -"to any other pole. " -"\n" -"Credit for this puzzle goes to Janko [16]. " -"\n" -"Magnets was contributed to this collection by James Harvey. " -"\n" -"[16] http://www.janko.at/Raetsel/Magnete/index.htm " -"\n" -"\n#33.1 Magnets controls " -"\n" -"Left-clicking on an empty square places a magnet at that position " -"with the positive pole on the square and the negative pole on the " -"other half of the magnet; left-clicking again reverses the polarity, " -"and a third click removes the magnet. " -"\n" -"Right-clicking on an empty square places a blank domino there. " -"Right-clicking again places two question marks on the domino, " -"signifying `this cannot be blank' (which can be useful to note " -"deductions while solving), and right-clicking again empties the " -"domino. " -"\n" -"Left-clicking a clue will mark it as done (grey it out), or unmark " -"it if it is already marked. " -"\n" -"You can also use the cursor keys to move a cursor around the grid. " -"Pressing the return key will lay a domino with a positive pole at " -"that position; pressing again reverses the polarity and then removes " -"the domino, as with left-clicking. Using the space bar allows " -"placement of blank dominoes and cannot-be-blank hints, as for right-\n" -"clicking. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#33.2 Magnets parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. There will be half _Width_ x _Height_ " -"dominoes in the grid: if this number is odd then one square will " -"be blank. " -"\n" -"(Grids with at least one odd dimension tend to be easier to " -"solve.) " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. At Tricky " -"level, you are required to make more deductions about empty " -"dominoes and row/column counts. " -"\n" -"_Strip clues_ " -"\n" -"If true, some of the clues around the grid are removed at " -"generation time, making the puzzle more difficult. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x3d, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x33, 0x3a, 0x20, 0x4d, 0x61, 0x67, 0x6e, 0x65, +0x74, 0x73, 0x20, 0x0a, 0x41, 0x20, 0x72, 0x65, 0x63, 0x74, +0x61, 0x6e, 0x67, 0x75, 0x6c, 0x61, 0x72, 0x20, 0x67, 0x72, +0x69, 0x64, 0x20, 0x68, 0x61, 0x73, 0x20, 0x62, 0x65, 0x65, +0x6e, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x77, +0x69, 0x74, 0x68, 0x20, 0x61, 0x20, 0x6d, 0x69, 0x78, 0x74, +0x75, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x6d, 0x3e, 0x00, +0xf2, 0x03, 0x28, 0x74, 0x68, 0x61, 0x74, 0x20, 0x69, 0x73, +0x2c, 0x20, 0x64, 0x6f, 0x6d, 0x69, 0x6e, 0x6f, 0x65, 0x73, +0x2d, 0x00, 0xf1, 0x05, 0x6f, 0x6e, 0x65, 0x20, 0x70, 0x6f, +0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x20, 0x65, 0x6e, 0x64, +0x20, 0x61, 0x6e, 0x64, 0x15, 0x00, 0x44, 0x6e, 0x65, 0x67, +0x61, 0x15, 0x00, 0x11, 0x29, 0x16, 0x00, 0x54, 0x62, 0x6c, +0x61, 0x6e, 0x6b, 0x3f, 0x00, 0x0f, 0x52, 0x00, 0x07, 0xf6, +0x0a, 0x74, 0x77, 0x6f, 0x20, 0x6e, 0x65, 0x75, 0x74, 0x72, +0x61, 0x6c, 0x20, 0x70, 0x6f, 0x6c, 0x65, 0x73, 0x29, 0x2e, +0x20, 0x54, 0x68, 0x65, 0x73, 0x65, 0x28, 0x00, 0xf0, 0x05, +0x61, 0x72, 0x65, 0x20, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x61, +0x6c, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x73, +0xc6, 0x00, 0xf1, 0x0a, 0x69, 0x6e, 0x20, 0x73, 0x69, 0x6c, +0x68, 0x6f, 0x75, 0x65, 0x74, 0x74, 0x65, 0x2e, 0x20, 0x41, +0x72, 0x6f, 0x75, 0x6e, 0x64, 0x20, 0x74, 0x68, 0x65, 0xee, +0x00, 0x01, 0x37, 0x00, 0xf0, 0x00, 0x70, 0x6c, 0x61, 0x63, +0x65, 0x64, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, +0x72, 0xe3, 0x00, 0xf0, 0x01, 0x63, 0x6c, 0x75, 0x65, 0x73, +0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6e, +0x67, 0x31, 0x00, 0x06, 0x1f, 0x00, 0x05, 0xde, 0x00, 0x00, +0xc4, 0x00, 0x05, 0xd6, 0x00, 0x02, 0x9a, 0x00, 0xa0, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x64, 0x7b, +0x00, 0x50, 0x63, 0x65, 0x72, 0x74, 0x61, 0x08, 0x00, 0x61, +0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x73, 0x30, 0x00, 0xf0, 0x0a, +0x72, 0x6f, 0x77, 0x73, 0x2e, 0x20, 0x0a, 0x59, 0x6f, 0x75, +0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x20, 0x74, +0x6f, 0x20, 0x63, 0x6f, 0x72, 0x8b, 0x01, 0x22, 0x6c, 0x79, +0x8f, 0x00, 0x00, 0x71, 0x00, 0x04, 0x69, 0x01, 0x0f, 0x2a, +0x01, 0x01, 0x51, 0x73, 0x75, 0x63, 0x68, 0x20, 0x2e, 0x01, +0x30, 0x61, 0x6c, 0x6c, 0x2d, 0x00, 0x00, 0xb3, 0x00, 0x03, +0x07, 0x01, 0xa1, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x69, +0x65, 0x64, 0x2c, 0x3e, 0x01, 0x01, 0x1e, 0x00, 0xa0, 0x61, +0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0xa1, +0x00, 0x72, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x41, +0x00, 0x21, 0x6e, 0x6f, 0x60, 0x01, 0x73, 0x73, 0x69, 0x6d, +0x69, 0x6c, 0x61, 0x72, 0x75, 0x00, 0x23, 0x69, 0x63, 0xcf, +0x00, 0xf1, 0x00, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x20, +0x6f, 0x72, 0x74, 0x68, 0x6f, 0x67, 0x6f, 0x6e, 0x5e, 0x01, +0xd2, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, 0x20, +0x28, 0x73, 0x69, 0x6e, 0xac, 0x00, 0xb8, 0x79, 0x20, 0x72, +0x65, 0x70, 0x65, 0x6c, 0x29, 0x2e, 0x20, 0x4e, 0xa8, 0x01, +0x72, 0x20, 0x64, 0x6f, 0x20, 0x6e, 0x6f, 0x74, 0x1d, 0x00, +0x11, 0x2c, 0xc9, 0x00, 0x65, 0x63, 0x61, 0x6e, 0x20, 0x62, +0x65, 0x44, 0x00, 0x00, 0xfc, 0x00, 0x91, 0x61, 0x6e, 0x79, +0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x35, 0x00, 0xf1, 0x0e, +0x2e, 0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x20, +0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x70, +0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x67, 0x6f, 0x65, 0x2c, +0x01, 0xd4, 0x4a, 0x61, 0x6e, 0x6b, 0x6f, 0x20, 0x5b, 0x31, +0x36, 0x5d, 0x2e, 0x20, 0x0a, 0xcc, 0x02, 0x22, 0x77, 0x61, +0x7c, 0x01, 0xa1, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, +0x20, 0x74, 0x6f, 0x3c, 0x00, 0x00, 0x7b, 0x01, 0x30, 0x6c, +0x65, 0x63, 0xfc, 0x00, 0xf0, 0x04, 0x20, 0x62, 0x79, 0x20, +0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x48, 0x61, 0x72, 0x76, +0x65, 0x79, 0x2e, 0x20, 0x0a, 0x44, 0x00, 0xd0, 0x20, 0x68, +0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, +0x6a, 0x5a, 0x00, 0xc2, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, +0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x5e, 0x00, 0xf3, 0x04, +0x65, 0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, +0x6d, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x33, 0x2e, 0x31, 0x44, +0x03, 0x03, 0x74, 0x00, 0xf0, 0x00, 0x6f, 0x6c, 0x73, 0x20, +0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, +0x6b, 0x32, 0x02, 0xf4, 0x00, 0x6f, 0x6e, 0x20, 0x61, 0x6e, +0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x20, 0x73, 0x71, 0x75, +0x69, 0x02, 0x00, 0xa4, 0x01, 0x03, 0x64, 0x01, 0x22, 0x20, +0x61, 0x82, 0x01, 0x03, 0x4f, 0x02, 0x24, 0x6f, 0x6e, 0xaf, +0x01, 0x02, 0x3f, 0x03, 0x05, 0x54, 0x02, 0x30, 0x20, 0x6f, +0x6e, 0x15, 0x00, 0x04, 0x46, 0x00, 0x11, 0x61, 0xc0, 0x02, +0x02, 0x4e, 0x03, 0x0c, 0x24, 0x00, 0x03, 0x47, 0x01, 0x77, +0x68, 0x61, 0x6c, 0x66, 0x20, 0x6f, 0x66, 0x45, 0x02, 0x39, +0x3b, 0x20, 0x6c, 0x9e, 0x00, 0x20, 0x61, 0x67, 0x97, 0x02, +0x83, 0x72, 0x65, 0x76, 0x65, 0x72, 0x73, 0x65, 0x73, 0x74, +0x00, 0x62, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0xa7, 0x01, +0x10, 0x61, 0x3e, 0x01, 0x31, 0x72, 0x64, 0x20, 0x32, 0x00, +0x87, 0x20, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0x51, +0x00, 0x7f, 0x2e, 0x20, 0x0a, 0x52, 0x69, 0x67, 0x68, 0xf1, +0x00, 0x13, 0x09, 0xbe, 0x02, 0x10, 0x20, 0xa3, 0x00, 0x30, +0x65, 0x2e, 0x20, 0x3f, 0x00, 0x0c, 0x92, 0x00, 0x03, 0x32, +0x00, 0x01, 0x91, 0x02, 0x41, 0x71, 0x75, 0x65, 0x73, 0x16, +0x01, 0x52, 0x6d, 0x61, 0x72, 0x6b, 0x73, 0xe1, 0x00, 0x04, +0xf1, 0x03, 0x90, 0x2c, 0x20, 0x73, 0x69, 0x67, 0x6e, 0x69, +0x66, 0x79, 0x3a, 0x00, 0x12, 0x60, 0xe8, 0x01, 0x20, 0x61, +0x6e, 0x6a, 0x02, 0x22, 0x62, 0x65, 0x6d, 0x00, 0x84, 0x27, +0x20, 0x28, 0x77, 0x68, 0x69, 0x63, 0x68, 0x70, 0x02, 0x81, +0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x20, 0x74, 0x90, 0x02, +0x61, 0x65, 0x20, 0x64, 0x65, 0x64, 0x75, 0x15, 0x02, 0xf2, +0x02, 0x73, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x73, +0x6f, 0x6c, 0x76, 0x69, 0x6e, 0x67, 0x29, 0x2c, 0xa4, 0x03, +0x0e, 0x9c, 0x00, 0x02, 0xdb, 0x00, 0x37, 0x69, 0x65, 0x73, +0x87, 0x00, 0x1c, 0x2e, 0xf5, 0x01, 0x11, 0x61, 0x87, 0x03, +0x51, 0x20, 0x77, 0x69, 0x6c, 0x6c, 0xb7, 0x00, 0x80, 0x20, +0x69, 0x74, 0x20, 0x61, 0x73, 0x20, 0x64, 0xfe, 0x04, 0x50, +0x28, 0x67, 0x72, 0x65, 0x79, 0x11, 0x00, 0xb4, 0x6f, 0x75, +0x74, 0x29, 0x2c, 0x20, 0x6f, 0x72, 0x20, 0x75, 0x6e, 0x24, +0x00, 0x21, 0x69, 0x66, 0x06, 0x00, 0x91, 0x73, 0x20, 0x61, +0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x3d, 0x00, 0x22, 0x65, +0x64, 0x27, 0x04, 0x01, 0xc3, 0x00, 0x40, 0x61, 0x6c, 0x73, +0x6f, 0xc5, 0x00, 0x02, 0xec, 0x03, 0x91, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x10, 0x03, 0x20, 0x6d, +0x6f, 0x8b, 0x04, 0x04, 0x16, 0x00, 0x1a, 0x61, 0xe3, 0x04, +0x74, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0xc5, 0x04, +0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x3b, 0x00, 0x02, +0xa6, 0x00, 0x53, 0x6c, 0x61, 0x79, 0x20, 0x61, 0xcf, 0x00, +0x03, 0xec, 0x05, 0x0a, 0x7e, 0x02, 0x0d, 0xa6, 0x02, 0x30, +0x3b, 0x20, 0x70, 0x51, 0x00, 0x0f, 0x46, 0x02, 0x0c, 0x04, +0xa7, 0x02, 0x14, 0x6e, 0x3c, 0x02, 0x09, 0xbe, 0x01, 0x12, +0x61, 0xd9, 0x05, 0x0a, 0x95, 0x02, 0x35, 0x2e, 0x20, 0x55, +0xa7, 0x00, 0x20, 0x73, 0x70, 0x05, 0x05, 0x30, 0x62, 0x61, +0x72, 0xe0, 0x04, 0x32, 0x6f, 0x77, 0x73, 0x19, 0x02, 0x10, +0x6d, 0x31, 0x04, 0x2a, 0x6f, 0x66, 0x0d, 0x05, 0x01, 0x20, +0x05, 0x03, 0xff, 0x01, 0x42, 0x2d, 0x62, 0x65, 0x2d, 0x1d, +0x00, 0x50, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x69, 0x00, 0x00, +0x46, 0x04, 0x03, 0xd0, 0x01, 0x16, 0x0a, 0x6a, 0x00, 0x33, +0x0a, 0x28, 0x41, 0x38, 0x05, 0x13, 0x61, 0x07, 0x02, 0x72, +0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0xb8, 0x05, 0x13, +0x73, 0x32, 0x04, 0x30, 0x32, 0x2e, 0x31, 0x53, 0x05, 0x02, +0x7e, 0x01, 0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, +0x6c, 0x65, 0x2e, 0x29, 0x06, 0x04, 0x15, 0x32, 0x06, 0x04, +0xc1, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, +0x73, 0x20, 0x0a, 0x9a, 0x06, 0x06, 0x12, 0x00, 0x01, 0x95, +0x05, 0x06, 0x3d, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x7a, 0x00, 0xe0, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x70, 0x00, 0x04, +0xe5, 0x02, 0xf0, 0x0b, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, +0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, +0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, +0xc8, 0x00, 0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x8b, +0x07, 0x02, 0xc4, 0x06, 0x23, 0x69, 0x6e, 0x70, 0x03, 0x11, +0x73, 0x16, 0x07, 0x13, 0x72, 0x80, 0x02, 0x22, 0x62, 0x65, +0x08, 0x04, 0x03, 0x3f, 0x00, 0x25, 0x20, 0x78, 0x40, 0x00, +0x06, 0x3a, 0x01, 0x25, 0x69, 0x6e, 0x28, 0x02, 0x41, 0x3a, +0x20, 0x69, 0x66, 0x32, 0x05, 0x03, 0xe8, 0x06, 0x00, 0x8e, +0x02, 0x23, 0x6f, 0x64, 0xc4, 0x01, 0x22, 0x6f, 0x6e, 0x7f, +0x04, 0x03, 0x5c, 0x00, 0x05, 0x66, 0x03, 0x00, 0x49, 0x01, +0x42, 0x47, 0x72, 0x69, 0x64, 0xcf, 0x01, 0x00, 0x2b, 0x02, +0x50, 0x6c, 0x65, 0x61, 0x73, 0x74, 0x30, 0x00, 0x01, 0x3d, +0x00, 0x70, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0xd7, +0x00, 0x20, 0x65, 0x6e, 0x94, 0x05, 0x00, 0x3a, 0x00, 0x91, +0x65, 0x61, 0x73, 0x69, 0x65, 0x72, 0x20, 0x74, 0x6f, 0x75, +0x03, 0x01, 0x4e, 0x01, 0xf2, 0x00, 0x5f, 0x44, 0x69, 0x66, +0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x20, 0x0a, +0x43, 0x53, 0x05, 0x03, 0x33, 0x02, 0x05, 0x1a, 0x00, 0x04, +0xd2, 0x04, 0x92, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, +0x65, 0x64, 0x18, 0x06, 0x00, 0xd6, 0x07, 0xc0, 0x74, 0x20, +0x54, 0x72, 0x69, 0x63, 0x6b, 0x79, 0x20, 0x6c, 0x65, 0x76, +0x69, 0x06, 0x31, 0x79, 0x6f, 0x75, 0x76, 0x01, 0x62, 0x72, +0x65, 0x71, 0x75, 0x69, 0x72, 0x0e, 0x06, 0x89, 0x6d, 0x61, +0x6b, 0x65, 0x20, 0x6d, 0x6f, 0x72, 0xfd, 0x03, 0x52, 0x61, +0x62, 0x6f, 0x75, 0x74, 0xb5, 0x04, 0x04, 0x16, 0x01, 0x05, +0xa6, 0x07, 0x11, 0x2f, 0xb6, 0x07, 0x00, 0xbd, 0x07, 0x40, +0x75, 0x6e, 0x74, 0x73, 0x89, 0x01, 0x52, 0x53, 0x74, 0x72, +0x69, 0x70, 0x6a, 0x07, 0xf0, 0x00, 0x5f, 0x20, 0x0a, 0x49, +0x66, 0x20, 0x74, 0x72, 0x75, 0x65, 0x2c, 0x20, 0x73, 0x6f, +0x6d, 0x8e, 0x01, 0x08, 0x87, 0x07, 0x0e, 0x67, 0x08, 0x02, +0x08, 0x03, 0x00, 0x68, 0x08, 0x14, 0x74, 0xc2, 0x00, 0x01, +0x18, 0x01, 0x40, 0x69, 0x6d, 0x65, 0x2c, 0x9c, 0x00, 0x03, +0xfa, 0x02, 0x02, 0xd4, 0x00, 0x01, 0xa9, 0x00, 0x06, 0xfc, +0x00, 0x50, 0x74, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2498; const char quick_help_text[] = "Place magnets to satisfy the clues and avoid like poles touching."; diff --git a/apps/plugins/puzzles/help/map.c b/apps/plugins/puzzles/help/map.c index 85a83c2320..f998cda575 100644 --- a/apps/plugins/puzzles/help/map.c +++ b/apps/plugins/puzzles/help/map.c @@ -1,90 +1,239 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3464 comp 2297 ratio 0.663106 level 11 saved 1167 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 22: Map " -"\n" -"You are given a map consisting of a number of regions. Your task is " -"to colour each region with one of four colours, in such a way that " -"no two regions sharing a boundary have the same colour. You are " -"provided with some regions already coloured, sufficient to make the " -"remainder of the solution unique. " -"\n" -"Only regions which share a length of border are required to be " -"different colours. Two regions which meet at only one _point_ (i.e. " -"are diagonally separated) may be the same colour. " -"\n" -"I believe this puzzle is original; I've never seen an implementation " -"of it anywhere else. The concept of a four-colouring puzzle was " -"suggested by Owen Dunn; credit must also go to Nikoli and to Verity " -"Allan for inspiring the train of thought that led to me realising " -"Owen's suggestion was a viable puzzle. Thanks also to Gareth Taylor " -"for many detailed suggestions. " -"\n" -"\n#22.1 Map controls " -"\n" -"To colour a region, click the left mouse button on an existing " -"region of the desired colour and drag that colour into the new " -"region. " -"\n" -"(The program will always ensure the starting puzzle has at least one " -"region of each colour, so that this is always possible!) " -"\n" -"If you need to clear a region, you can drag from an empty region, or " -"from the puzzle boundary if there are no empty regions left. " -"\n" -"Dragging a colour using the _right_ mouse button will stipple the " -"region in that colour, which you can use as a note to yourself that " -"you think the region _might_ be that colour. A region can contain " -"stipples in multiple colours at once. (This is often useful at the " -"harder difficulty levels.) " -"\n" -"You can also use the cursor keys to move around the map: the colour " -"of the cursor indicates the position of the colour you would drag " -"(which is not obvious if you're on a region's boundary, since it " -"depends on the direction from which you approached the boundary). " -"Pressing the return key starts a drag of that colour, as above, " -"which you control with the cursor keys; pressing the return key " -"again finishes the drag. The space bar can be used similarly to " -"create a stippled region. Double-pressing the return key (without " -"moving the cursor) will clear the region, as a drag from an empty " -"region does: this is useful with the cursor mode if you have filled " -"the entire map in but need to correct the layout. " -"\n" -"If you press L during play, the game will toggle display of a number " -"in each region of the map. This is useful if you want to discuss a " -"particular puzzle instance with a friend - having an unambiguous " -"name for each region is much easier than trying to refer to them all " -"by names such as `the one down and right of the brown one on the top " -"border'. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#22.2 Map parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Regions_ " -"\n" -"Number of regions in the generated map. " -"\n" -"_Difficulty_ " -"\n" -"In `Easy' mode, there should always be at least one region whose " -"colour can be determined trivially. In `Normal' and `Hard' " -"modes, you will have to use increasingly complex logic to deduce " -"the colour of some regions. However, it will always be possible " -"without having to guess or backtrack. " -"\n" -"In `Unreasonable' mode, the program will feel free to generate " -"puzzles which are as hard as it can possibly make them: the " -"only constraint is that they should still have a unique " -"solution. Solving Unreasonable puzzles may require guessing and " -"backtracking. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2d, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x32, 0x3a, 0x20, 0x4d, 0x61, 0x70, 0x20, 0x0a, +0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x20, 0x67, 0x69, +0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x6d, 0x61, 0x70, 0x20, +0x63, 0x6f, 0x6e, 0x73, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, +0x20, 0x6f, 0x66, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, +0x65, 0x72, 0x0c, 0x00, 0xf0, 0x0d, 0x72, 0x65, 0x67, 0x69, +0x6f, 0x6e, 0x73, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, +0x74, 0x61, 0x73, 0x6b, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, +0x20, 0x63, 0x6f, 0x6c, 0x12, 0x00, 0x43, 0x65, 0x61, 0x63, +0x68, 0x25, 0x00, 0x90, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, +0x6f, 0x6e, 0x65, 0x38, 0x00, 0x43, 0x66, 0x6f, 0x75, 0x72, +0x24, 0x00, 0xf4, 0x0d, 0x73, 0x2c, 0x20, 0x69, 0x6e, 0x20, +0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x20, 0x77, 0x61, 0x79, +0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6e, 0x6f, 0x20, 0x74, +0x77, 0x6f, 0x60, 0x00, 0x50, 0x20, 0x73, 0x68, 0x61, 0x72, +0x7f, 0x00, 0xf3, 0x09, 0x61, 0x20, 0x62, 0x6f, 0x75, 0x6e, +0x64, 0x61, 0x72, 0x79, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, +0x74, 0x68, 0x65, 0x20, 0x73, 0x61, 0x6d, 0x65, 0x4c, 0x00, +0x24, 0x2e, 0x20, 0xbf, 0x00, 0x82, 0x70, 0x72, 0x6f, 0x76, +0x69, 0x64, 0x65, 0x64, 0x76, 0x00, 0x45, 0x73, 0x6f, 0x6d, +0x65, 0x4c, 0x00, 0x73, 0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, +0x79, 0x33, 0x00, 0xe0, 0x65, 0x64, 0x2c, 0x20, 0x73, 0x75, +0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x74, 0xbb, 0x00, +0x32, 0x6d, 0x61, 0x6b, 0x59, 0x00, 0x71, 0x72, 0x65, 0x6d, +0x61, 0x69, 0x6e, 0x64, 0xea, 0x00, 0x02, 0x6a, 0x00, 0x40, +0x6f, 0x6c, 0x75, 0x74, 0xcb, 0x00, 0xd5, 0x75, 0x6e, 0x69, +0x71, 0x75, 0x65, 0x2e, 0x20, 0x0a, 0x4f, 0x6e, 0x6c, 0x79, +0x59, 0x00, 0x51, 0x77, 0x68, 0x69, 0x63, 0x68, 0xab, 0x00, +0xa0, 0x65, 0x20, 0x61, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, +0x68, 0x3b, 0x00, 0x30, 0x62, 0x6f, 0x72, 0x45, 0x00, 0x20, +0x61, 0x72, 0x53, 0x00, 0x60, 0x71, 0x75, 0x69, 0x72, 0x65, +0x64, 0x68, 0x00, 0xc4, 0x62, 0x65, 0x20, 0x64, 0x69, 0x66, +0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x0c, 0x01, 0x5b, 0x2e, +0x20, 0x54, 0x77, 0x6f, 0x51, 0x00, 0xc1, 0x6d, 0x65, 0x65, +0x74, 0x20, 0x61, 0x74, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x40, +0x01, 0xd1, 0x5f, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x20, +0x28, 0x69, 0x2e, 0x65, 0x2e, 0x57, 0x00, 0xff, 0x0c, 0x64, +0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, +0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x65, 0x64, 0x29, +0x20, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x24, 0x01, 0x00, 0x81, +0x0a, 0x49, 0x20, 0x62, 0x65, 0x6c, 0x69, 0x65, 0x40, 0x01, +0x90, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0xb9, 0x01, 0xf0, 0x08, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, +0x61, 0x6c, 0x3b, 0x20, 0x49, 0x27, 0x76, 0x65, 0x20, 0x6e, +0x65, 0x76, 0x65, 0x72, 0x20, 0x73, 0x65, 0x09, 0x02, 0xc0, +0x6e, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, +0x74, 0x61, 0x04, 0x01, 0x00, 0xd9, 0x00, 0xf0, 0x06, 0x69, +0x74, 0x20, 0x61, 0x6e, 0x79, 0x77, 0x68, 0x65, 0x72, 0x65, +0x20, 0x65, 0x6c, 0x73, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x65, +0x2e, 0x02, 0x41, 0x63, 0x65, 0x70, 0x74, 0x2b, 0x02, 0x01, +0xe9, 0x01, 0x11, 0x2d, 0x79, 0x00, 0x00, 0xc0, 0x01, 0x04, +0x6b, 0x00, 0xf0, 0x20, 0x77, 0x61, 0x73, 0x20, 0x73, 0x75, +0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, +0x20, 0x4f, 0x77, 0x65, 0x6e, 0x20, 0x44, 0x75, 0x6e, 0x6e, +0x3b, 0x20, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x20, 0x6d, +0x75, 0x73, 0x74, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x67, +0x6f, 0x2e, 0x01, 0x91, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, +0x20, 0x61, 0x6e, 0x3c, 0x01, 0xf0, 0x07, 0x56, 0x65, 0x72, +0x69, 0x74, 0x79, 0x20, 0x41, 0x6c, 0x6c, 0x61, 0x6e, 0x20, +0x66, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x73, 0x70, 0x69, 0x63, +0x00, 0x01, 0xef, 0x00, 0x52, 0x74, 0x72, 0x61, 0x69, 0x6e, +0xb6, 0x01, 0x52, 0x6f, 0x75, 0x67, 0x68, 0x74, 0x54, 0x02, +0x12, 0x6c, 0x78, 0x01, 0x01, 0x0b, 0x02, 0x71, 0x61, 0x6c, +0x69, 0x73, 0x69, 0x6e, 0x67, 0x79, 0x00, 0x14, 0x27, 0x8d, +0x00, 0x00, 0xd8, 0x00, 0x01, 0x9c, 0x00, 0x82, 0x61, 0x20, +0x76, 0x69, 0x61, 0x62, 0x6c, 0x65, 0xb0, 0x00, 0x01, 0xd8, +0x00, 0x40, 0x61, 0x6e, 0x6b, 0x73, 0x90, 0x00, 0x01, 0x8d, +0x00, 0xd1, 0x47, 0x61, 0x72, 0x65, 0x74, 0x68, 0x20, 0x54, +0x61, 0x79, 0x6c, 0x6f, 0x72, 0x80, 0x00, 0xd4, 0x6d, 0x61, +0x6e, 0x79, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x65, +0x64, 0x4f, 0x00, 0x02, 0x1b, 0x03, 0x92, 0x0a, 0x0a, 0x23, +0x32, 0x32, 0x2e, 0x31, 0x20, 0x4d, 0x4a, 0x03, 0x85, 0x74, +0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x24, 0x03, 0x13, +0x61, 0xf0, 0x01, 0x71, 0x2c, 0x20, 0x63, 0x6c, 0x69, 0x63, +0x6b, 0xc1, 0x00, 0xf0, 0x00, 0x6c, 0x65, 0x66, 0x74, 0x20, +0x6d, 0x6f, 0x75, 0x73, 0x65, 0x20, 0x62, 0x75, 0x74, 0x74, +0x6f, 0x01, 0x01, 0x84, 0x01, 0x22, 0x65, 0x78, 0x88, 0x03, +0x03, 0x33, 0x00, 0x04, 0x99, 0x02, 0x30, 0x64, 0x65, 0x73, +0x56, 0x02, 0x03, 0x52, 0x00, 0x01, 0x25, 0x01, 0x41, 0x64, +0x72, 0x61, 0x67, 0xf7, 0x00, 0x04, 0x15, 0x00, 0x41, 0x69, +0x6e, 0x74, 0x6f, 0x2d, 0x00, 0x33, 0x6e, 0x65, 0x77, 0x3f, +0x00, 0x61, 0x2e, 0x20, 0x0a, 0x28, 0x54, 0x68, 0x2d, 0x03, +0xf3, 0x07, 0x67, 0x72, 0x61, 0x6d, 0x20, 0x77, 0x69, 0x6c, +0x6c, 0x20, 0x61, 0x6c, 0x77, 0x61, 0x79, 0x73, 0x20, 0x65, +0x6e, 0x73, 0x75, 0x72, 0x3d, 0x02, 0x47, 0x74, 0x61, 0x72, +0x74, 0xbe, 0x01, 0x41, 0x68, 0x61, 0x73, 0x20, 0x4f, 0x01, +0x30, 0x61, 0x73, 0x74, 0x91, 0x02, 0x06, 0x8d, 0x00, 0x01, +0xf0, 0x03, 0x03, 0x71, 0x00, 0x41, 0x2c, 0x20, 0x73, 0x6f, +0x81, 0x00, 0x02, 0x65, 0x02, 0x24, 0x69, 0x73, 0x5a, 0x00, +0xf2, 0x06, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, +0x21, 0x29, 0x20, 0x0a, 0x49, 0x66, 0x20, 0x79, 0x6f, 0x75, +0x20, 0x6e, 0x65, 0x9b, 0x01, 0x47, 0x63, 0x6c, 0x65, 0x61, +0x11, 0x01, 0x01, 0x1c, 0x00, 0x32, 0x63, 0x61, 0x6e, 0xcd, +0x00, 0x41, 0x66, 0x72, 0x6f, 0x6d, 0x04, 0x01, 0x45, 0x6d, +0x70, 0x74, 0x79, 0x23, 0x00, 0x22, 0x6f, 0x72, 0x19, 0x00, +0x24, 0x74, 0x68, 0xae, 0x01, 0x06, 0x23, 0x04, 0x11, 0x69, +0x1e, 0x01, 0x21, 0x72, 0x65, 0x24, 0x03, 0x29, 0x6e, 0x6f, +0x3a, 0x00, 0x11, 0x73, 0x64, 0x01, 0x81, 0x2e, 0x20, 0x0a, +0x44, 0x72, 0x61, 0x67, 0x67, 0x5c, 0x04, 0x04, 0x2a, 0x01, +0x24, 0x75, 0x73, 0x48, 0x02, 0x79, 0x5f, 0x72, 0x69, 0x67, +0x68, 0x74, 0x5f, 0x8a, 0x01, 0x02, 0x26, 0x01, 0x60, 0x73, +0x74, 0x69, 0x70, 0x70, 0x6c, 0x20, 0x01, 0x05, 0xff, 0x00, +0x28, 0x69, 0x6e, 0x70, 0x01, 0x12, 0x2c, 0xbe, 0x03, 0x05, +0xc3, 0x00, 0x00, 0x41, 0x00, 0x01, 0x5a, 0x02, 0x40, 0x6e, +0x6f, 0x74, 0x65, 0xec, 0x00, 0x10, 0x79, 0xf0, 0x03, 0x31, +0x65, 0x6c, 0x66, 0x35, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x28, +0x01, 0x28, 0x6e, 0x6b, 0x52, 0x00, 0x22, 0x5f, 0x6d, 0x7f, +0x00, 0x28, 0x62, 0x65, 0x5a, 0x00, 0x33, 0x2e, 0x20, 0x41, +0x21, 0x00, 0x00, 0x59, 0x00, 0x01, 0x53, 0x02, 0x34, 0x61, +0x69, 0x6e, 0x92, 0x00, 0x10, 0x73, 0x88, 0x00, 0x74, 0x6d, +0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0xf3, 0x03, 0x01, 0xaf, +0x01, 0x00, 0x96, 0x03, 0x43, 0x2e, 0x20, 0x28, 0x54, 0x8d, +0x01, 0x41, 0x6f, 0x66, 0x74, 0x65, 0x96, 0x00, 0x41, 0x66, +0x75, 0x6c, 0x20, 0xa5, 0x01, 0x00, 0xd9, 0x01, 0x01, 0xa9, +0x04, 0x20, 0x64, 0x69, 0x0f, 0x05, 0xd0, 0x75, 0x6c, 0x74, +0x79, 0x20, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0x2e, 0x29, +0x18, 0x06, 0x01, 0xc8, 0x00, 0x02, 0x03, 0x03, 0x22, 0x75, +0x73, 0xfa, 0x00, 0xb1, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, +0x20, 0x6b, 0x65, 0x79, 0x73, 0x5a, 0x03, 0x20, 0x6f, 0x76, +0x6c, 0x01, 0x00, 0x7f, 0x01, 0x00, 0x1f, 0x00, 0x00, 0x3c, +0x06, 0x10, 0x3a, 0x09, 0x00, 0x04, 0x59, 0x01, 0x28, 0x6f, +0x66, 0x36, 0x00, 0x92, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, +0x74, 0x65, 0x73, 0xbc, 0x01, 0x33, 0x6f, 0x73, 0x69, 0x58, +0x04, 0x07, 0x33, 0x00, 0x01, 0x18, 0x01, 0x43, 0x77, 0x6f, +0x75, 0x6c, 0xd1, 0x02, 0x12, 0x28, 0x55, 0x01, 0x20, 0x69, +0x73, 0x47, 0x01, 0xa1, 0x20, 0x6f, 0x62, 0x76, 0x69, 0x6f, +0x75, 0x73, 0x20, 0x69, 0x46, 0x02, 0x65, 0x27, 0x72, 0x65, +0x20, 0x6f, 0x6e, 0x3e, 0x02, 0x25, 0x27, 0x73, 0x09, 0x02, +0x70, 0x2c, 0x20, 0x73, 0x69, 0x6e, 0x63, 0x65, 0xb0, 0x04, +0xa2, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x73, 0x20, 0x6f, +0x6e, 0x39, 0x03, 0x40, 0x69, 0x72, 0x65, 0x63, 0x77, 0x00, +0x01, 0x45, 0x02, 0x07, 0xb3, 0x01, 0x90, 0x61, 0x70, 0x70, +0x72, 0x6f, 0x61, 0x63, 0x68, 0x65, 0xca, 0x00, 0x06, 0x53, +0x02, 0x75, 0x29, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x21, +0x02, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x01, 0x01, +0x02, 0x26, 0x03, 0x32, 0x73, 0x20, 0x61, 0xa9, 0x00, 0x29, +0x6f, 0x66, 0x0d, 0x02, 0x01, 0xfb, 0x01, 0x47, 0x62, 0x6f, +0x76, 0x65, 0x17, 0x02, 0x04, 0x0d, 0x04, 0x01, 0xa3, 0x06, +0x0c, 0x4f, 0x01, 0x3f, 0x3b, 0x20, 0x70, 0x68, 0x00, 0x04, +0x20, 0x61, 0x67, 0xee, 0x01, 0x62, 0x66, 0x69, 0x6e, 0x69, +0x73, 0x68, 0x3c, 0x01, 0x01, 0x72, 0x00, 0x02, 0x7c, 0x05, +0x90, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x61, 0x72, +0xac, 0x01, 0x00, 0x38, 0x02, 0x20, 0x75, 0x73, 0x8f, 0x04, +0x81, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x6c, 0x79, 0x64, +0x03, 0x74, 0x72, 0x65, 0x61, 0x74, 0x65, 0x20, 0x61, 0x31, +0x02, 0x15, 0x64, 0x0d, 0x04, 0x7f, 0x44, 0x6f, 0x75, 0x62, +0x6c, 0x65, 0x2d, 0x79, 0x00, 0x05, 0x30, 0x28, 0x77, 0x69, +0x4f, 0x05, 0x10, 0x74, 0xe7, 0x01, 0x37, 0x69, 0x6e, 0x67, +0xb2, 0x00, 0x11, 0x29, 0x14, 0x03, 0x02, 0xbe, 0x03, 0x07, +0xc0, 0x02, 0x02, 0xf6, 0x00, 0x0f, 0xbd, 0x03, 0x07, 0x64, +0x20, 0x64, 0x6f, 0x65, 0x73, 0x3a, 0x1f, 0x04, 0x02, 0x8c, +0x02, 0x0e, 0x0e, 0x01, 0x43, 0x6d, 0x6f, 0x64, 0x65, 0xe2, +0x01, 0x02, 0xf4, 0x07, 0x43, 0x66, 0x69, 0x6c, 0x6c, 0x97, +0x01, 0x61, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0xa4, 0x08, +0x20, 0x69, 0x6e, 0xa0, 0x03, 0x06, 0x4a, 0x04, 0x20, 0x6f, +0x72, 0xda, 0x01, 0x02, 0x4d, 0x05, 0x64, 0x61, 0x79, 0x6f, +0x75, 0x74, 0x2e, 0x6e, 0x04, 0x02, 0x5a, 0x01, 0x43, 0x20, +0x4c, 0x20, 0x64, 0x94, 0x06, 0x41, 0x6c, 0x61, 0x79, 0x2c, +0x29, 0x00, 0x42, 0x67, 0x61, 0x6d, 0x65, 0xcb, 0x00, 0x50, +0x74, 0x6f, 0x67, 0x67, 0x6c, 0x1f, 0x02, 0x10, 0x73, 0x1e, +0x00, 0x09, 0xf6, 0x08, 0x29, 0x69, 0x6e, 0xd6, 0x08, 0x24, +0x6f, 0x66, 0xeb, 0x02, 0x39, 0x2e, 0x20, 0x54, 0xca, 0x00, +0x04, 0xb5, 0x00, 0x21, 0x77, 0x61, 0x58, 0x08, 0x00, 0x4d, +0x00, 0x30, 0x63, 0x75, 0x73, 0x12, 0x01, 0x40, 0x70, 0x61, +0x72, 0x74, 0x61, 0x03, 0x25, 0x61, 0x72, 0x7c, 0x07, 0x71, +0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0xfe, 0x00, 0x00, +0x37, 0x07, 0x70, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x20, 0x2d, +0xf2, 0x00, 0x01, 0x9c, 0x04, 0x00, 0x74, 0x08, 0x60, 0x61, +0x6d, 0x62, 0x69, 0x67, 0x75, 0xf1, 0x02, 0x10, 0x6e, 0xa9, +0x00, 0x29, 0x66, 0x6f, 0x60, 0x09, 0x00, 0x79, 0x00, 0x10, +0x6d, 0x46, 0x09, 0x60, 0x65, 0x61, 0x73, 0x69, 0x65, 0x72, +0x7f, 0x02, 0x51, 0x6e, 0x20, 0x74, 0x72, 0x79, 0xab, 0x01, +0x00, 0x54, 0x08, 0x42, 0x66, 0x65, 0x72, 0x20, 0x03, 0x06, +0x81, 0x6d, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x62, 0x79, 0x48, +0x00, 0x13, 0x73, 0x7c, 0x09, 0x61, 0x73, 0x20, 0x60, 0x74, +0x68, 0x65, 0xd0, 0x05, 0x41, 0x64, 0x6f, 0x77, 0x6e, 0x45, +0x06, 0x01, 0xff, 0x04, 0x04, 0xe3, 0x00, 0x52, 0x62, 0x72, +0x6f, 0x77, 0x6e, 0xc1, 0x09, 0x12, 0x6e, 0x66, 0x07, 0x23, +0x6f, 0x70, 0xdc, 0x08, 0x10, 0x27, 0x4a, 0x06, 0x31, 0x41, +0x6c, 0x6c, 0x17, 0x00, 0x21, 0x61, 0x63, 0xf9, 0x06, 0x00, +0x95, 0x06, 0x61, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xe0, +0x09, 0x03, 0x67, 0x03, 0x30, 0x32, 0x2e, 0x31, 0x8e, 0x05, +0x02, 0x47, 0x04, 0x50, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x68, +0x07, 0x23, 0x2e, 0x29, 0x26, 0x07, 0x11, 0x32, 0x26, 0x07, +0x00, 0xc2, 0x08, 0x50, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x28, +0x07, 0x47, 0x68, 0x65, 0x73, 0x65, 0x12, 0x00, 0x00, 0x3e, +0x00, 0x06, 0x39, 0x00, 0x06, 0xfc, 0x05, 0xe2, 0x60, 0x43, +0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, +0x6f, 0x70, 0x4a, 0x04, 0x12, 0x6e, 0x1a, 0x00, 0xf2, 0x0a, +0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, +0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, +0x2c, 0x20, 0x5f, 0x48, 0x65, 0x5e, 0x05, 0x41, 0x0a, 0x53, +0x69, 0x7a, 0x95, 0x0a, 0x32, 0x67, 0x72, 0x69, 0xac, 0x00, +0x60, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2d, 0x00, 0x12, +0x52, 0x2c, 0x06, 0x4b, 0x5f, 0x20, 0x0a, 0x4e, 0xf4, 0x0a, +0x00, 0x68, 0x05, 0x02, 0x35, 0x02, 0x31, 0x65, 0x6e, 0x65, +0x71, 0x09, 0x02, 0x04, 0x02, 0x35, 0x0a, 0x5f, 0x44, 0x3f, +0x05, 0xc1, 0x5f, 0x20, 0x0a, 0x49, 0x6e, 0x20, 0x60, 0x45, +0x61, 0x73, 0x79, 0x27, 0xc8, 0x02, 0x13, 0x2c, 0x90, 0x06, +0x20, 0x73, 0x68, 0xd3, 0x04, 0x04, 0x11, 0x07, 0x2f, 0x62, +0x65, 0x4f, 0x07, 0x02, 0x43, 0x77, 0x68, 0x6f, 0x73, 0x08, +0x05, 0x05, 0xcf, 0x03, 0x10, 0x64, 0x04, 0x01, 0x30, 0x6d, +0x69, 0x6e, 0xe5, 0x02, 0x40, 0x72, 0x69, 0x76, 0x69, 0xf3, +0x09, 0x20, 0x2e, 0x20, 0x65, 0x00, 0x71, 0x4e, 0x6f, 0x72, +0x6d, 0x61, 0x6c, 0x27, 0xb7, 0x01, 0x52, 0x60, 0x48, 0x61, +0x72, 0x64, 0x72, 0x00, 0x11, 0x73, 0x45, 0x07, 0x01, 0xd5, +0x02, 0x03, 0x32, 0x0b, 0x02, 0xbe, 0x05, 0x20, 0x69, 0x6e, +0x08, 0x04, 0x00, 0xe7, 0x03, 0x10, 0x6c, 0x0a, 0x0b, 0x00, +0xdb, 0x09, 0x71, 0x78, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, +0xab, 0x02, 0x5a, 0x65, 0x64, 0x75, 0x63, 0x65, 0xbb, 0x05, +0x09, 0x45, 0x0b, 0x50, 0x2e, 0x20, 0x48, 0x6f, 0x77, 0x1e, +0x0a, 0x49, 0x2c, 0x20, 0x69, 0x74, 0x38, 0x08, 0x25, 0x62, +0x65, 0xe1, 0x07, 0x13, 0x20, 0x31, 0x04, 0x00, 0x79, 0x00, +0x03, 0x86, 0x02, 0x50, 0x67, 0x75, 0x65, 0x73, 0x73, 0xb4, +0x07, 0xa2, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, +0x6b, 0x2e, 0x24, 0x01, 0x20, 0x55, 0x6e, 0x8f, 0x00, 0x20, +0x6f, 0x6e, 0xd5, 0x01, 0x05, 0x2c, 0x01, 0x0c, 0x9b, 0x08, +0x80, 0x66, 0x65, 0x65, 0x6c, 0x20, 0x66, 0x72, 0x65, 0xc6, +0x00, 0x04, 0x78, 0x01, 0x04, 0xf6, 0x07, 0x03, 0x2e, 0x0b, +0x02, 0x1f, 0x02, 0x11, 0x73, 0xcb, 0x06, 0x00, 0x08, 0x00, +0x20, 0x69, 0x74, 0x3b, 0x01, 0x04, 0x93, 0x00, 0x15, 0x79, +0xdd, 0x0b, 0x11, 0x6d, 0x99, 0x06, 0x01, 0x54, 0x0b, 0x01, +0xdf, 0x0c, 0x01, 0x32, 0x0a, 0x11, 0x74, 0xbd, 0x0c, 0x12, +0x68, 0x0e, 0x07, 0x14, 0x79, 0xa6, 0x01, 0x25, 0x73, 0x74, +0x3d, 0x01, 0x12, 0x61, 0xfa, 0x0b, 0x06, 0x0a, 0x0c, 0x51, +0x2e, 0x20, 0x53, 0x6f, 0x6c, 0xdd, 0x00, 0x07, 0xc1, 0x00, +0x05, 0x93, 0x00, 0x00, 0x82, 0x0b, 0x04, 0xf3, 0x0b, 0x02, +0xfb, 0x00, 0x02, 0xcc, 0x03, 0x16, 0x64, 0xff, 0x00, 0x70, +0x69, 0x6e, 0x67, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3464; const char quick_help_text[] = "Colour the map so that adjacent regions are never the same colour."; diff --git a/apps/plugins/puzzles/help/mines.c b/apps/plugins/puzzles/help/mines.c index d5723d67af..056b97f7b1 100644 --- a/apps/plugins/puzzles/help/mines.c +++ b/apps/plugins/puzzles/help/mines.c @@ -1,98 +1,245 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3796 comp 2357 ratio 0.620917 level 11 saved 1439 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 12: Mines " -"\n" -"You have a grid of covered squares, some of which contain mines, but " -"you don't know which. Your job is to uncover every square which does " -"_not_ contain a mine. If you uncover a square containing a mine, you " -"lose. If you uncover a square which does not contain a mine, you " -"are told how many mines are contained within the eight surrounding " -"squares. " -"\n" -"This game needs no introduction; popularised by Windows, it is " -"perhaps the single best known desktop puzzle game in existence. " -"\n" -"This version of it has an unusual property. By default, it will " -"generate its mine positions in such a way as to ensure that you " -"never need to _guess_ where a mine is: you will always be able " -"to deduce it somehow. So you will never, as can happen in other " -"versions, get to the last four squares and discover that there are " -"two mines left but you have no way of knowing for sure where they " -"are. " -"\n" -"\n#12.1 Mines controls " -"\n" -"This game is played with the mouse. " -"\n" -"If you left-click in a covered square, it will be uncovered. " -"\n" -"If you right-click in a covered square, it will place a flag which " -"indicates that the square is believed to be a mine. Left-clicking in " -"a marked square will not uncover it, for safety. You can right-click " -"again to remove a mark placed in error. " -"\n" -"If you left-click in an _uncovered_ square, it will `clear around' " -"the square. This means: if the square has exactly as many flags " -"surrounding it as it should have mines, then all the covered squares " -"next to it which are _not_ flagged will be uncovered. So once you " -"think you know the location of all the mines around a square, you " -"can use this function as a shortcut to avoid having to click on each " -"of the remaining squares one by one. " -"\n" -"If you uncover a square which has _no_ mines in the surrounding " -"eight squares, then it is obviously safe to uncover those squares in " -"turn, and so on if any of them also has no surrounding mines. This " -"will be done for you automatically; so sometimes when you uncover a " -"square, a whole new area will open up to be explored. " -"\n" -"You can also use the cursor keys to move around the minefield. " -"Pressing the return key in a covered square uncovers it, and in " -"an uncovered square will clear around it (so it acts as the left " -"button), pressing the space bar in a covered square will place a " -"flag (similarly, it acts as the right button). " -"\n" -"All the actions described in section 2.1 are also available. " -"\n" -"Even Undo is available, although you might consider it cheating to " -"use it. If you step on a mine, the program will only reveal the mine " -"in question (unlike most other implementations, which reveal all of " -"them). You can then Undo your fatal move and continue playing if you " -"like. The program will track the number of times you died (and Undo " -"will not reduce that counter), so when you get to the end of the " -"game you know whether or not you did it without making any errors. " -"\n" -"(If you really want to know the full layout of the grid, which other " -"implementations will show you after you die, you can always use the " -"Solve menu option.) " -"\n" -"\n#12.2 Mines parameters " -"\n" -"The options available from the `Custom...' option on the `Type' menu " -"are: " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Mines_ " -"\n" -"Number of mines in the grid. You can enter this as an absolute " -"mine count, or alternatively you can put a % sign on the end " -"in which case the game will arrange for that proportion of the " -"squares in the grid to be mines. " -"\n" -"Beware of setting the mine count too high. At very high " -"densities, the program may spend forever searching for a " -"solvable grid. " -"\n" -"_Ensure solubility_ " -"\n" -"When this option is enabled (as it is by default), Mines will " -"ensure that the entire grid can be fully deduced starting " -"from the initial open space. If you prefer the riskier grids " -"generated by other implementations, you can switch off this " -"option. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2d, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x32, 0x3a, 0x20, 0x4d, 0x69, 0x6e, 0x65, 0x73, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, +0x20, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x65, 0x64, 0x20, 0x73, +0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x6f, +0x6d, 0x65, 0x19, 0x00, 0xf0, 0x02, 0x77, 0x68, 0x69, 0x63, +0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, +0x6d, 0x69, 0x6e, 0x1d, 0x00, 0xf2, 0x03, 0x62, 0x75, 0x74, +0x20, 0x79, 0x6f, 0x75, 0x20, 0x64, 0x6f, 0x6e, 0x27, 0x74, +0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x28, 0x00, 0xf1, 0x04, 0x2e, +0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x6a, 0x6f, 0x62, 0x20, +0x69, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x75, 0x6e, 0x59, 0x00, +0x63, 0x20, 0x65, 0x76, 0x65, 0x72, 0x79, 0x5d, 0x00, 0x03, +0x53, 0x00, 0xa5, 0x64, 0x6f, 0x65, 0x73, 0x20, 0x5f, 0x6e, +0x6f, 0x74, 0x5f, 0x5e, 0x00, 0x11, 0x61, 0x60, 0x00, 0x40, +0x2e, 0x20, 0x49, 0x66, 0x5e, 0x00, 0x05, 0x3d, 0x00, 0x13, +0x61, 0x39, 0x00, 0x04, 0x28, 0x00, 0x33, 0x69, 0x6e, 0x67, +0x2b, 0x00, 0x11, 0x2c, 0x28, 0x00, 0x3f, 0x6c, 0x6f, 0x73, +0x35, 0x00, 0x01, 0x0e, 0x6e, 0x00, 0x34, 0x6e, 0x6f, 0x74, +0x44, 0x00, 0x09, 0x41, 0x00, 0x00, 0x27, 0x00, 0xd2, 0x74, +0x6f, 0x6c, 0x64, 0x20, 0x68, 0x6f, 0x77, 0x20, 0x6d, 0x61, +0x6e, 0x79, 0xe8, 0x00, 0x17, 0x20, 0x74, 0x00, 0xf4, 0x10, +0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x69, 0x6e, 0x20, +0x74, 0x68, 0x65, 0x20, 0x65, 0x69, 0x67, 0x68, 0x74, 0x20, +0x73, 0x75, 0x72, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x69, 0x6e, +0x67, 0x38, 0x01, 0xf0, 0x02, 0x2e, 0x20, 0x0a, 0x54, 0x68, +0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x20, 0x6e, 0x65, +0x65, 0x64, 0x75, 0x00, 0xf0, 0x1a, 0x20, 0x69, 0x6e, 0x74, +0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3b, +0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x73, +0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x57, 0x69, 0x6e, 0x64, +0x6f, 0x77, 0x73, 0x2c, 0x20, 0x69, 0x74, 0x35, 0x01, 0x71, +0x70, 0x65, 0x72, 0x68, 0x61, 0x70, 0x73, 0x67, 0x00, 0xa2, +0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x62, 0x65, 0x73, +0x65, 0x01, 0xf2, 0x01, 0x6e, 0x20, 0x64, 0x65, 0x73, 0x6b, +0x74, 0x6f, 0x70, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x67, 0x00, 0xc4, 0x69, 0x6e, 0x20, 0x65, 0x78, 0x69, 0x73, +0x74, 0x65, 0x6e, 0x63, 0x65, 0x80, 0x00, 0xa0, 0x76, 0x65, +0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x57, 0x00, +0xf1, 0x14, 0x68, 0x61, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x75, +0x6e, 0x75, 0x73, 0x75, 0x61, 0x6c, 0x20, 0x70, 0x72, 0x6f, +0x70, 0x65, 0x72, 0x74, 0x79, 0x2e, 0x20, 0x42, 0x79, 0x20, +0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x7f, 0x00, 0xf1, +0x02, 0x77, 0x69, 0x6c, 0x6c, 0x20, 0x67, 0x65, 0x6e, 0x65, +0x72, 0x61, 0x74, 0x65, 0x20, 0x69, 0x74, 0x73, 0x08, 0x01, +0x50, 0x20, 0x70, 0x6f, 0x73, 0x69, 0xbb, 0x00, 0x10, 0x73, +0x6b, 0x00, 0xc1, 0x73, 0x75, 0x63, 0x68, 0x20, 0x61, 0x20, +0x77, 0x61, 0x79, 0x20, 0x61, 0xe3, 0x01, 0x40, 0x65, 0x6e, +0x73, 0x75, 0x40, 0x01, 0x22, 0x68, 0x61, 0x14, 0x02, 0x10, +0x6e, 0xec, 0x01, 0x01, 0xfc, 0x00, 0x00, 0x1e, 0x00, 0xd3, +0x5f, 0x67, 0x75, 0x65, 0x73, 0x73, 0x5f, 0x20, 0x77, 0x68, +0x65, 0x72, 0x65, 0x75, 0x01, 0x40, 0x20, 0x69, 0x73, 0x3a, +0x2b, 0x00, 0x02, 0x70, 0x00, 0xe0, 0x61, 0x6c, 0x77, 0x61, +0x79, 0x73, 0x20, 0x62, 0x65, 0x20, 0x61, 0x62, 0x6c, 0x65, +0x34, 0x00, 0x50, 0x64, 0x65, 0x64, 0x75, 0x63, 0x80, 0x00, +0x01, 0x85, 0x02, 0x75, 0x68, 0x6f, 0x77, 0x2e, 0x20, 0x53, +0x6f, 0x31, 0x00, 0x02, 0x61, 0x00, 0x10, 0x2c, 0x7e, 0x00, +0xa0, 0x63, 0x61, 0x6e, 0x20, 0x68, 0x61, 0x70, 0x70, 0x65, +0x6e, 0x9a, 0x00, 0x54, 0x6f, 0x74, 0x68, 0x65, 0x72, 0xfa, +0x00, 0x91, 0x73, 0x2c, 0x20, 0x67, 0x65, 0x74, 0x20, 0x74, +0x6f, 0x49, 0x01, 0x93, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x66, +0x6f, 0x75, 0x72, 0xa8, 0x01, 0x00, 0x0f, 0x01, 0x51, 0x64, +0x20, 0x64, 0x69, 0x73, 0x2c, 0x02, 0x02, 0xbc, 0x00, 0x10, +0x74, 0xa2, 0x00, 0x02, 0x0b, 0x02, 0x23, 0x77, 0x6f, 0x01, +0x02, 0x42, 0x6c, 0x65, 0x66, 0x74, 0xed, 0x02, 0x04, 0x32, +0x03, 0x21, 0x6e, 0x6f, 0xfb, 0x00, 0x21, 0x6f, 0x66, 0x91, +0x01, 0x00, 0xfa, 0x01, 0x40, 0x66, 0x6f, 0x72, 0x20, 0x02, +0x01, 0x02, 0xe3, 0x00, 0x00, 0x47, 0x00, 0x40, 0x79, 0x20, +0x61, 0x72, 0x8a, 0x01, 0x63, 0x0a, 0x23, 0x31, 0x32, 0x2e, +0x31, 0x75, 0x03, 0x20, 0x63, 0x6f, 0x05, 0x02, 0x27, 0x6c, +0x73, 0x21, 0x02, 0x01, 0xef, 0x01, 0x33, 0x6c, 0x61, 0x79, +0x5c, 0x02, 0x01, 0xaa, 0x00, 0x40, 0x6d, 0x6f, 0x75, 0x73, +0x3c, 0x00, 0x02, 0xce, 0x02, 0x01, 0x81, 0x00, 0x70, 0x2d, +0x63, 0x6c, 0x69, 0x63, 0x6b, 0x20, 0xb4, 0x02, 0x0b, 0xa7, +0x03, 0x06, 0xb5, 0x01, 0x24, 0x62, 0x65, 0xf9, 0x02, 0x26, +0x65, 0x64, 0x3e, 0x00, 0x4f, 0x72, 0x69, 0x67, 0x68, 0x3f, +0x00, 0x11, 0x00, 0x86, 0x00, 0x10, 0x63, 0x9e, 0x01, 0x43, +0x66, 0x6c, 0x61, 0x67, 0x31, 0x03, 0x95, 0x69, 0x6e, 0x64, +0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x1e, 0x01, 0x04, 0x51, +0x03, 0x10, 0x69, 0xad, 0x01, 0x42, 0x6c, 0x69, 0x65, 0x76, +0xe2, 0x01, 0x25, 0x62, 0x65, 0xb8, 0x03, 0x15, 0x4c, 0xae, +0x00, 0x00, 0x19, 0x01, 0x02, 0x65, 0x03, 0x35, 0x61, 0x72, +0x6b, 0x71, 0x00, 0x03, 0xc0, 0x01, 0x25, 0x6f, 0x74, 0xa6, +0x03, 0x32, 0x69, 0x74, 0x2c, 0x41, 0x01, 0x51, 0x61, 0x66, +0x65, 0x74, 0x79, 0x3f, 0x04, 0x00, 0xd6, 0x01, 0x09, 0xba, +0x00, 0x50, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x6a, 0x00, 0x63, +0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x55, 0x00, 0x02, 0xb4, +0x00, 0x11, 0x64, 0xfe, 0x02, 0x4f, 0x72, 0x72, 0x6f, 0x72, +0x34, 0x01, 0x06, 0x35, 0x6e, 0x20, 0x5f, 0x1b, 0x01, 0x1d, +0x5f, 0xfa, 0x00, 0x81, 0x60, 0x63, 0x6c, 0x65, 0x61, 0x72, +0x20, 0x61, 0xc9, 0x03, 0x17, 0x27, 0xe7, 0x00, 0x21, 0x2e, +0x20, 0xa8, 0x01, 0x97, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x3a, +0x20, 0x69, 0x66, 0x1b, 0x00, 0x01, 0x50, 0x03, 0x60, 0x65, +0x78, 0x61, 0x63, 0x74, 0x6c, 0x05, 0x03, 0x01, 0x32, 0x04, +0x01, 0x3b, 0x01, 0x18, 0x73, 0x13, 0x04, 0x00, 0x63, 0x00, +0x21, 0x61, 0x73, 0xc6, 0x02, 0x51, 0x68, 0x6f, 0x75, 0x6c, +0x64, 0x40, 0x02, 0x03, 0x41, 0x05, 0x00, 0x4d, 0x00, 0x50, +0x6e, 0x20, 0x61, 0x6c, 0x6c, 0x09, 0x00, 0x0c, 0x7c, 0x05, +0x41, 0x20, 0x6e, 0x65, 0x78, 0xba, 0x02, 0x22, 0x69, 0x74, +0x8c, 0x01, 0x00, 0x4f, 0x02, 0x02, 0x2a, 0x05, 0x01, 0x66, +0x00, 0x3e, 0x67, 0x65, 0x64, 0xf5, 0x01, 0x01, 0x23, 0x03, +0x41, 0x6f, 0x6e, 0x63, 0x65, 0x03, 0x01, 0x00, 0xa9, 0x04, +0x10, 0x6b, 0x0a, 0x00, 0x01, 0xa6, 0x02, 0x02, 0x03, 0x03, +0x42, 0x6f, 0x63, 0x61, 0x74, 0x13, 0x04, 0x03, 0x79, 0x00, +0x03, 0x8d, 0x00, 0x03, 0xfc, 0x00, 0x04, 0x31, 0x05, 0x03, +0x13, 0x05, 0x10, 0x63, 0x30, 0x04, 0x40, 0x73, 0x65, 0x20, +0x74, 0x05, 0x01, 0x41, 0x66, 0x75, 0x6e, 0x63, 0x3c, 0x00, +0x00, 0x48, 0x04, 0x00, 0xcf, 0x00, 0x41, 0x72, 0x74, 0x63, +0x75, 0xa3, 0x00, 0x41, 0x61, 0x76, 0x6f, 0x69, 0xda, 0x00, +0x30, 0x69, 0x6e, 0x67, 0x10, 0x00, 0x02, 0x77, 0x01, 0x91, +0x6f, 0x6e, 0x20, 0x65, 0x61, 0x63, 0x68, 0x20, 0x6f, 0x36, +0x01, 0x00, 0xb8, 0x01, 0x02, 0xb6, 0x05, 0x05, 0xe2, 0x00, +0x30, 0x6f, 0x6e, 0x65, 0xfb, 0x04, 0x20, 0x6f, 0x6e, 0xeb, +0x02, 0x0f, 0xb9, 0x05, 0x0b, 0x21, 0x68, 0x61, 0x26, 0x06, +0x13, 0x5f, 0xad, 0x00, 0x02, 0x81, 0x05, 0x08, 0x68, 0x01, +0x02, 0x8d, 0x05, 0x02, 0x35, 0x00, 0x04, 0x5b, 0x01, 0x03, +0x4c, 0x05, 0x91, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73, +0x6c, 0x79, 0x60, 0x02, 0x08, 0x90, 0x06, 0x43, 0x74, 0x68, +0x6f, 0x73, 0xcf, 0x01, 0x03, 0x55, 0x00, 0x41, 0x75, 0x72, +0x6e, 0x2c, 0x16, 0x04, 0x10, 0x73, 0x48, 0x01, 0x00, 0xf1, +0x01, 0x33, 0x61, 0x6e, 0x79, 0xc2, 0x00, 0x61, 0x6d, 0x20, +0x61, 0x6c, 0x73, 0x6f, 0x8b, 0x00, 0x28, 0x6e, 0x6f, 0x7c, +0x00, 0x02, 0x95, 0x00, 0x02, 0x2b, 0x02, 0x04, 0x94, 0x01, +0x00, 0x15, 0x07, 0x10, 0x65, 0xd5, 0x02, 0x02, 0x5b, 0x06, +0xd0, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0x61, +0x6c, 0x6c, 0x79, 0x3b, 0x5d, 0x00, 0x00, 0xd4, 0x04, 0x50, +0x74, 0x69, 0x6d, 0x65, 0x73, 0x31, 0x04, 0x1f, 0x6e, 0xfb, +0x00, 0x02, 0x10, 0x2c, 0x61, 0x05, 0x30, 0x68, 0x6f, 0x6c, +0x43, 0x06, 0x10, 0x77, 0xfe, 0x01, 0x12, 0x61, 0x5d, 0x00, +0x10, 0x6f, 0xea, 0x04, 0x23, 0x75, 0x70, 0x76, 0x03, 0x52, +0x65, 0x78, 0x70, 0x6c, 0x6f, 0xf0, 0x03, 0x03, 0x37, 0x03, +0x01, 0xa7, 0x00, 0x00, 0xb7, 0x01, 0x02, 0x57, 0x02, 0x91, +0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0xa8, +0x05, 0x00, 0x3c, 0x03, 0x03, 0xec, 0x01, 0x05, 0xfd, 0x01, +0xb0, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x2e, 0x20, 0x50, 0x72, +0x65, 0x73, 0x6c, 0x06, 0x03, 0xae, 0x01, 0x00, 0x0c, 0x01, +0x00, 0x37, 0x00, 0x0f, 0x34, 0x04, 0x00, 0x05, 0x72, 0x02, +0x00, 0xd9, 0x02, 0x01, 0x30, 0x01, 0x02, 0x64, 0x03, 0x04, +0x17, 0x00, 0x0b, 0xeb, 0x03, 0x08, 0x5d, 0x03, 0x00, 0x94, +0x01, 0x31, 0x28, 0x73, 0x6f, 0x17, 0x03, 0x51, 0x63, 0x74, +0x73, 0x20, 0x61, 0xe4, 0x06, 0x05, 0x63, 0x05, 0x78, 0x74, +0x6f, 0x6e, 0x29, 0x2c, 0x20, 0x70, 0x8a, 0x00, 0x20, 0x73, +0x70, 0x96, 0x04, 0x3f, 0x62, 0x61, 0x72, 0x89, 0x00, 0x02, +0x0e, 0xb9, 0x04, 0xbb, 0x28, 0x73, 0x69, 0x6d, 0x69, 0x6c, +0x61, 0x72, 0x6c, 0x79, 0x2c, 0x66, 0x00, 0x01, 0x50, 0x04, +0x05, 0x67, 0x00, 0x43, 0x2e, 0x20, 0x0a, 0x41, 0x02, 0x03, +0x21, 0x61, 0x63, 0xd9, 0x06, 0x00, 0x58, 0x07, 0x42, 0x63, +0x72, 0x69, 0x62, 0x50, 0x04, 0x22, 0x73, 0x65, 0xee, 0x02, +0x30, 0x32, 0x2e, 0x31, 0x7d, 0x01, 0x02, 0x56, 0x01, 0x80, +0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0xb2, 0x02, +0xc5, 0x45, 0x76, 0x65, 0x6e, 0x20, 0x55, 0x6e, 0x64, 0x6f, +0x20, 0x69, 0x73, 0x19, 0x00, 0x00, 0xb6, 0x01, 0x71, 0x6c, +0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0xd5, 0x01, 0x41, 0x6d, +0x69, 0x67, 0x68, 0x6f, 0x08, 0x31, 0x73, 0x69, 0x64, 0xea, +0x04, 0x63, 0x20, 0x63, 0x68, 0x65, 0x61, 0x74, 0x29, 0x03, +0x20, 0x75, 0x73, 0xe1, 0x06, 0x05, 0xb6, 0x08, 0x64, 0x73, +0x74, 0x65, 0x70, 0x20, 0x6f, 0x96, 0x08, 0x01, 0xc5, 0x02, +0x00, 0xa7, 0x07, 0x43, 0x67, 0x72, 0x61, 0x6d, 0xfb, 0x01, +0x95, 0x6e, 0x6c, 0x79, 0x20, 0x72, 0x65, 0x76, 0x65, 0x61, +0xbb, 0x03, 0x01, 0xfa, 0x07, 0x41, 0x71, 0x75, 0x65, 0x73, +0xad, 0x00, 0x60, 0x28, 0x75, 0x6e, 0x6c, 0x69, 0x6b, 0x41, +0x06, 0x23, 0x73, 0x74, 0x0b, 0x07, 0xb1, 0x69, 0x6d, 0x70, +0x6c, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x12, 0x07, +0x02, 0x52, 0x03, 0x03, 0x46, 0x00, 0x00, 0x05, 0x04, 0x04, +0xdf, 0x02, 0x16, 0x29, 0x79, 0x05, 0x24, 0x74, 0x68, 0xdb, +0x00, 0x10, 0x79, 0x2f, 0x07, 0x53, 0x66, 0x61, 0x74, 0x61, +0x6c, 0x3b, 0x02, 0x21, 0x6e, 0x64, 0xc5, 0x06, 0x41, 0x69, +0x6e, 0x75, 0x65, 0xb7, 0x06, 0x01, 0xe4, 0x04, 0x03, 0x73, +0x05, 0x20, 0x69, 0x6b, 0x31, 0x05, 0x0c, 0xb5, 0x00, 0x51, +0x74, 0x72, 0x61, 0x63, 0x6b, 0xaf, 0x00, 0x60, 0x6e, 0x75, +0x6d, 0x62, 0x65, 0x72, 0x70, 0x00, 0x01, 0xfb, 0x02, 0x02, +0x3d, 0x0a, 0x81, 0x69, 0x65, 0x64, 0x20, 0x28, 0x61, 0x6e, +0x64, 0x70, 0x00, 0x06, 0x1c, 0x06, 0x10, 0x72, 0xff, 0x07, +0x03, 0x51, 0x08, 0x80, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, +0x72, 0x29, 0x90, 0x0a, 0x05, 0x30, 0x03, 0x08, 0xda, 0x07, +0x32, 0x65, 0x6e, 0x64, 0xc6, 0x00, 0x02, 0x0d, 0x09, 0x05, +0xf4, 0x04, 0x00, 0x2d, 0x00, 0x01, 0x05, 0x01, 0x20, 0x6f, +0x72, 0x55, 0x00, 0x03, 0x71, 0x00, 0x12, 0x64, 0xf8, 0x05, +0x00, 0xa6, 0x01, 0x40, 0x74, 0x20, 0x6d, 0x61, 0xa7, 0x06, +0x00, 0xe7, 0x03, 0x02, 0x42, 0x06, 0x00, 0xbd, 0x09, 0x14, +0x28, 0x3a, 0x07, 0x10, 0x65, 0xb0, 0x03, 0x40, 0x20, 0x77, +0x61, 0x6e, 0x6a, 0x00, 0x06, 0x46, 0x05, 0xb3, 0x66, 0x75, +0x6c, 0x6c, 0x20, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x77, +0x00, 0x01, 0x42, 0x0b, 0x03, 0x5b, 0x01, 0x0f, 0x78, 0x01, +0x02, 0x02, 0x19, 0x04, 0x00, 0x36, 0x05, 0x12, 0x77, 0x12, +0x04, 0x43, 0x66, 0x74, 0x65, 0x72, 0x90, 0x00, 0x06, 0x6d, +0x05, 0x03, 0x07, 0x09, 0x05, 0xbd, 0x03, 0x30, 0x53, 0x6f, +0x6c, 0x2e, 0x06, 0x60, 0x65, 0x6e, 0x75, 0x20, 0x6f, 0x70, +0x47, 0x00, 0x23, 0x2e, 0x29, 0x51, 0x08, 0x13, 0x32, 0x51, +0x08, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, +0x72, 0x53, 0x08, 0x13, 0x65, 0x27, 0x00, 0x07, 0x90, 0x02, +0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x4d, 0x00, 0xb3, 0x60, +0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, +0x27, 0x00, 0x32, 0x20, 0x6f, 0x6e, 0x1a, 0x00, 0x50, 0x54, +0x79, 0x70, 0x65, 0x27, 0x68, 0x00, 0x01, 0x06, 0x0b, 0xe1, +0x3a, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, +0x2c, 0x20, 0x5f, 0x48, 0x59, 0x05, 0x60, 0x5f, 0x20, 0x0a, +0x53, 0x69, 0x7a, 0x0b, 0x0c, 0x02, 0x2c, 0x0c, 0x27, 0x69, +0x6e, 0xec, 0x0a, 0x11, 0x5f, 0x8b, 0x00, 0x44, 0x5f, 0x20, +0x0a, 0x4e, 0xe0, 0x01, 0x05, 0xa7, 0x05, 0x05, 0x1c, 0x01, +0x06, 0x5c, 0x02, 0x10, 0x65, 0xcb, 0x01, 0x02, 0x52, 0x06, +0x02, 0x91, 0x0a, 0x72, 0x61, 0x62, 0x73, 0x6f, 0x6c, 0x75, +0x74, 0xce, 0x02, 0x02, 0xec, 0x01, 0x40, 0x2c, 0x20, 0x6f, +0x72, 0x48, 0x03, 0xa5, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, +0x76, 0x65, 0x6c, 0x79, 0x22, 0x01, 0xb5, 0x70, 0x75, 0x74, +0x20, 0x61, 0x20, 0x25, 0x20, 0x73, 0x69, 0x67, 0xc0, 0x00, +0x11, 0x65, 0x81, 0x04, 0x04, 0xa5, 0x0c, 0x35, 0x61, 0x73, +0x65, 0x0a, 0x02, 0x03, 0x5d, 0x0a, 0x50, 0x72, 0x72, 0x61, +0x6e, 0x67, 0x8f, 0x05, 0x02, 0xe6, 0x09, 0x01, 0xfc, 0x0a, +0x22, 0x6f, 0x72, 0x03, 0x01, 0x07, 0xd4, 0x07, 0x09, 0xb3, +0x00, 0x03, 0xd7, 0x08, 0x04, 0xdd, 0x05, 0x61, 0x0a, 0x42, +0x65, 0x77, 0x61, 0x72, 0x02, 0x01, 0x42, 0x73, 0x65, 0x74, +0x74, 0x9e, 0x04, 0x06, 0xb4, 0x00, 0x01, 0x22, 0x02, 0xb0, +0x6f, 0x20, 0x68, 0x69, 0x67, 0x68, 0x2e, 0x20, 0x41, 0x74, +0x20, 0xea, 0x0c, 0x01, 0x0e, 0x00, 0x40, 0x20, 0x64, 0x65, +0x6e, 0x39, 0x0b, 0x2a, 0x65, 0x73, 0xd0, 0x03, 0x90, 0x6d, +0x61, 0x79, 0x20, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x96, 0x00, +0x01, 0x2d, 0x0b, 0x62, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, +0x4d, 0x0a, 0x01, 0x06, 0x06, 0x64, 0x6f, 0x6c, 0x76, 0x61, +0x62, 0x6c, 0x40, 0x01, 0x32, 0x0a, 0x5f, 0x45, 0x64, 0x0b, +0x00, 0x2e, 0x01, 0xd1, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, +0x5f, 0x20, 0x0a, 0x57, 0x68, 0x65, 0x6e, 0x4d, 0x01, 0x03, +0xd3, 0x01, 0x00, 0x8c, 0x04, 0x51, 0x65, 0x6e, 0x61, 0x62, +0x6c, 0x56, 0x03, 0x13, 0x73, 0x03, 0x07, 0x15, 0x62, 0xe2, +0x0b, 0x21, 0x29, 0x2c, 0x39, 0x02, 0x02, 0x8f, 0x02, 0x08, +0xb6, 0x0b, 0x03, 0x49, 0x01, 0x32, 0x74, 0x69, 0x72, 0x71, +0x00, 0x01, 0x6d, 0x01, 0x12, 0x62, 0xec, 0x02, 0x12, 0x79, +0x8d, 0x0b, 0x00, 0x76, 0x05, 0x30, 0x74, 0x61, 0x72, 0xfc, +0x00, 0x06, 0x56, 0x02, 0x62, 0x69, 0x6e, 0x69, 0x74, 0x69, +0x61, 0x96, 0x06, 0x01, 0xac, 0x05, 0x05, 0x85, 0x0d, 0x00, +0xc7, 0x05, 0x33, 0x66, 0x65, 0x72, 0x7a, 0x05, 0x51, 0x73, +0x6b, 0x69, 0x65, 0x72, 0x5a, 0x00, 0x14, 0x73, 0x5d, 0x0c, +0x01, 0xfa, 0x0c, 0x0f, 0x2e, 0x03, 0x03, 0x06, 0x12, 0x03, +0x41, 0x73, 0x77, 0x69, 0x74, 0x45, 0x08, 0x17, 0x66, 0xe7, +0x00, 0x50, 0x6e, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3796; const char quick_help_text[] = "Find all the mines without treading on any of them."; diff --git a/apps/plugins/puzzles/help/net.c b/apps/plugins/puzzles/help/net.c index 16ee92d27e..5674940e10 100644 --- a/apps/plugins/puzzles/help/net.c +++ b/apps/plugins/puzzles/help/net.c @@ -1,108 +1,246 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3445 comp 2367 ratio 0.687083 level 11 saved 1078 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 3: Net " -"\n" -"(_Note:_ the Windows version of this game is called NETGAME.EXE to " -"avoid clashing with Windows's own NET.EXE.) " -"\n" -"I originally saw this in the form of a Flash game called " -"FreeNet [1], written by Pavils Jurjans; there are several other " -"implementations under the name NetWalk. The computer prepares a " -"network by connecting up the centres of squares in a grid, and then " -"shuffles the network by rotating every tile randomly. Your job is " -"to rotate it all back into place. The successful solution will be " -"an entirely connected network, with no closed loops. As a visual " -"aid, all tiles which are connected to the one in the middle are " -"highlighted. " -"\n" -"[1] http://www.jurjans.lv/stuff/net/FreeNet.htm " -"\n" -"\n#3.1 Net controls " -"\n" -"This game can be played with either the keyboard or the mouse. The " -"controls are: " -"\n" -"_Select tile_: mouse pointer, arrow keys " -"\n" -"_Rotate tile anticlockwise_: left mouse button, `A' key " -"\n" -"_Rotate tile clockwise_: right mouse button, `D' key " -"\n" -"_Rotate tile by 180 degrees_: `F' key " -"\n" -"_Lock (or unlock) tile_: middle mouse button, shift-click, `S' key " -"\n" -"You can lock a tile once you're sure of its orientation. You " -"can also unlock it again, but while it's locked you can't " -"accidentally turn it. " -"\n" -"The following controls are not necessary to complete the game, but " -"may be useful: " -"\n" -"_Shift grid_: Shift + arrow keys " -"\n" -"On grids that wrap, you can move the origin of the grid, so " -"that tiles that were on opposite sides of the grid can be seen " -"together. " -"\n" -"_Move centre_: Ctrl + arrow keys " -"\n" -"You can change which tile is used as the source of highlighting. " -"(It doesn't ultimately matter which tile this is, as every tile " -"will be connected to every other tile in a correct solution, " -"but it may be helpful in the intermediate stages of solving the " -"puzzle.) " -"\n" -"_Jumble tiles_: `J' key " -"\n" -"This key turns all tiles that are not locked to random " -"orientations. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#3.2 Net parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in tiles. " -"\n" -"_Walls wrap around_ " -"\n" -"If checked, flow can pass from the left edge to the right edge, " -"and from top to bottom, and vice versa. " -"\n" -"_Barrier probability_ " -"\n" -"A number between 0.0 and 1.0 controlling whether an immovable " -"barrier is placed between two tiles to prevent flow between " -"them (a higher number gives more barriers). Since barriers " -"are immovable, they act as constraints on the solution (i.e., " -"hints). " -"\n" -"The grid generation in Net has been carefully arranged so that " -"the barriers are independent of the rest of the grid. This " -"means that if you note down the random seed used to generate " -"the current puzzle (see section 2.2), change the _Barrier " -"probability_ parameter, and then re-enter the same random seed, " -"you should see exactly the same starting grid, with the only " -"change being the number of barriers. So if you're stuck on a " -"particular grid and need a hint, you could start up another " -"instance of Net, set up the same parameters but a higher barrier " -"probability, and enter the game seed from the original Net " -"window. " -"\n" -"_Ensure unique solution_ " -"\n" -"Normally, Net 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.) " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x58, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x3a, 0x20, 0x4e, 0x65, 0x74, 0x20, 0x0a, 0x28, +0x5f, 0x4e, 0x6f, 0x74, 0x65, 0x3a, 0x5f, 0x20, 0x74, 0x68, +0x65, 0x20, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x20, +0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, +0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, 0x65, +0x20, 0x69, 0x73, 0x20, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, +0x20, 0x4e, 0x45, 0x54, 0x47, 0x41, 0x4d, 0x45, 0x2e, 0x45, +0x58, 0x45, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x76, 0x6f, 0x69, +0x64, 0x20, 0x63, 0x6c, 0x61, 0x73, 0x68, 0x69, 0x6e, 0x67, +0x20, 0x77, 0x69, 0x74, 0x68, 0x4a, 0x00, 0x60, 0x27, 0x73, +0x20, 0x6f, 0x77, 0x6e, 0x31, 0x00, 0x00, 0x2d, 0x00, 0xf2, +0x05, 0x2e, 0x29, 0x20, 0x0a, 0x49, 0x20, 0x6f, 0x72, 0x69, +0x67, 0x69, 0x6e, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x61, +0x77, 0x61, 0x00, 0x21, 0x69, 0x6e, 0x80, 0x00, 0x40, 0x66, +0x6f, 0x72, 0x6d, 0x75, 0x00, 0x30, 0x61, 0x20, 0x46, 0x4e, +0x00, 0x01, 0x78, 0x00, 0x04, 0x75, 0x00, 0x40, 0x46, 0x72, +0x65, 0x65, 0xb2, 0x00, 0xf0, 0x10, 0x5b, 0x31, 0x5d, 0x2c, +0x20, 0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, 0x62, +0x79, 0x20, 0x50, 0x61, 0x76, 0x69, 0x6c, 0x73, 0x20, 0x4a, +0x75, 0x72, 0x6a, 0x61, 0x6e, 0x73, 0x3b, 0x48, 0x00, 0xf0, +0x01, 0x72, 0x65, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x65, +0x76, 0x65, 0x72, 0x61, 0x6c, 0x20, 0x6f, 0x13, 0x00, 0xf1, +0x07, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, +0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x75, 0x6e, +0x64, 0x65, 0x72, 0x76, 0x00, 0x40, 0x6e, 0x61, 0x6d, 0x65, +0x0d, 0x01, 0xf0, 0x00, 0x57, 0x61, 0x6c, 0x6b, 0x2e, 0x20, +0x54, 0x68, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x26, +0x01, 0xf0, 0x03, 0x70, 0x72, 0x65, 0x70, 0x61, 0x72, 0x65, +0x73, 0x20, 0x61, 0x20, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, +0x6b, 0x73, 0x00, 0x70, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, +0x74, 0xed, 0x00, 0x21, 0x75, 0x70, 0x43, 0x00, 0x70, 0x63, +0x65, 0x6e, 0x74, 0x72, 0x65, 0x73, 0xbc, 0x00, 0x61, 0x73, +0x71, 0x75, 0x61, 0x72, 0x65, 0xd3, 0x00, 0xb0, 0x61, 0x20, +0x67, 0x72, 0x69, 0x64, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x26, +0x00, 0xa0, 0x6e, 0x20, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, +0x65, 0x73, 0x0e, 0x00, 0x08, 0x51, 0x00, 0x41, 0x72, 0x6f, +0x74, 0x61, 0x4f, 0x00, 0x00, 0xb2, 0x00, 0xf0, 0x0a, 0x79, +0x20, 0x74, 0x69, 0x6c, 0x65, 0x20, 0x72, 0x61, 0x6e, 0x64, +0x6f, 0x6d, 0x6c, 0x79, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, +0x20, 0x6a, 0x6f, 0x62, 0x82, 0x01, 0x22, 0x74, 0x6f, 0x2d, +0x00, 0xf2, 0x09, 0x65, 0x20, 0x69, 0x74, 0x20, 0x61, 0x6c, +0x6c, 0x20, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x69, 0x6e, 0x74, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0xc0, 0x00, 0xf0, +0x01, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x66, 0x75, +0x6c, 0x20, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0xcc, 0x01, 0x20, +0x77, 0x69, 0x2e, 0x00, 0xc5, 0x65, 0x20, 0x61, 0x6e, 0x20, +0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x6c, 0xc9, 0x00, 0x24, +0x65, 0x64, 0x8d, 0x00, 0x12, 0x2c, 0xbe, 0x01, 0xf0, 0x03, +0x6e, 0x6f, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, 0x20, +0x6c, 0x6f, 0x6f, 0x70, 0x73, 0x2e, 0x20, 0x41, 0x02, 0x01, +0x81, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x20, 0x61, 0xd3, +0x00, 0x21, 0x6c, 0x6c, 0xa7, 0x00, 0x70, 0x73, 0x20, 0x77, +0x68, 0x69, 0x63, 0x68, 0x70, 0x01, 0x07, 0x4e, 0x00, 0x21, +0x74, 0x6f, 0xe2, 0x00, 0x34, 0x6f, 0x6e, 0x65, 0xda, 0x01, +0x52, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x97, 0x01, 0xf2, 0x0f, +0x68, 0x69, 0x67, 0x68, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x65, +0x64, 0x2e, 0x20, 0x0a, 0x5b, 0x31, 0x5d, 0x20, 0x68, 0x74, +0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a, +0xc7, 0x01, 0xe3, 0x2e, 0x6c, 0x76, 0x2f, 0x73, 0x74, 0x75, +0x66, 0x66, 0x2f, 0x6e, 0x65, 0x74, 0x2f, 0xfb, 0x01, 0xb0, +0x2e, 0x68, 0x74, 0x6d, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x2e, +0x31, 0xaf, 0x01, 0x00, 0x70, 0x00, 0x85, 0x74, 0x72, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x54, 0xa5, 0x02, 0x60, 0x63, 0x61, +0x6e, 0x20, 0x62, 0x65, 0x0c, 0x01, 0x32, 0x79, 0x65, 0x64, +0xcd, 0x00, 0x43, 0x65, 0x69, 0x74, 0x68, 0xea, 0x01, 0xb2, +0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x6f, +0x72, 0x96, 0x00, 0x32, 0x6f, 0x75, 0x73, 0x33, 0x01, 0x05, +0x4d, 0x00, 0x00, 0xa3, 0x00, 0xa1, 0x3a, 0x20, 0x0a, 0x5f, +0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0xe4, 0x00, 0x22, 0x5f, +0x3a, 0x29, 0x00, 0xf0, 0x00, 0x20, 0x70, 0x6f, 0x69, 0x6e, +0x74, 0x65, 0x72, 0x2c, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, +0x4e, 0x00, 0x51, 0x73, 0x20, 0x0a, 0x5f, 0x52, 0x90, 0x01, +0x02, 0xb5, 0x01, 0xc0, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x6c, +0x6f, 0x63, 0x6b, 0x77, 0x69, 0x73, 0x38, 0x00, 0x43, 0x6c, +0x65, 0x66, 0x74, 0x3d, 0x00, 0xb0, 0x62, 0x75, 0x74, 0x74, +0x6f, 0x6e, 0x2c, 0x20, 0x60, 0x41, 0x27, 0x3a, 0x00, 0x0b, +0x39, 0x00, 0x08, 0x35, 0x00, 0x4d, 0x72, 0x69, 0x67, 0x68, +0x36, 0x00, 0x1f, 0x44, 0x36, 0x00, 0x00, 0x00, 0x3b, 0x02, +0xf4, 0x01, 0x31, 0x38, 0x30, 0x20, 0x64, 0x65, 0x67, 0x72, +0x65, 0x65, 0x73, 0x5f, 0x3a, 0x20, 0x60, 0x46, 0x27, 0x00, +0xb0, 0x4c, 0x6f, 0x63, 0x6b, 0x20, 0x28, 0x6f, 0x72, 0x20, +0x75, 0x6e, 0x5b, 0x00, 0x13, 0x29, 0xca, 0x00, 0x03, 0x89, +0x01, 0x0b, 0x5e, 0x00, 0xf3, 0x00, 0x73, 0x68, 0x69, 0x66, +0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x2c, 0x20, 0x60, +0x53, 0x44, 0x00, 0x31, 0x59, 0x6f, 0x75, 0x50, 0x01, 0x10, +0x6c, 0x4b, 0x00, 0x12, 0x61, 0x72, 0x00, 0xa0, 0x6f, 0x6e, +0x63, 0x65, 0x20, 0x79, 0x6f, 0x75, 0x27, 0x72, 0x66, 0x02, +0x20, 0x72, 0x65, 0xf2, 0x02, 0x30, 0x69, 0x74, 0x73, 0xd5, +0x03, 0x04, 0x5b, 0x03, 0x24, 0x2e, 0x20, 0x39, 0x00, 0x43, +0x61, 0x6c, 0x73, 0x6f, 0x80, 0x00, 0x01, 0xaf, 0x02, 0x50, +0x67, 0x61, 0x69, 0x6e, 0x2c, 0x75, 0x00, 0x00, 0x35, 0x02, +0x10, 0x6c, 0xc3, 0x02, 0x21, 0x27, 0x73, 0x5e, 0x00, 0x42, +0x65, 0x64, 0x20, 0x79, 0x34, 0x00, 0xb1, 0x27, 0x74, 0x20, +0x61, 0x63, 0x63, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x22, 0x04, +0xb1, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x69, 0x74, 0x2e, 0x20, +0x0a, 0x54, 0x20, 0x04, 0x79, 0x6c, 0x6c, 0x6f, 0x77, 0x69, +0x6e, 0x67, 0xaf, 0x01, 0x70, 0x20, 0x6e, 0x6f, 0x74, 0x20, +0x6e, 0x65, 0xf2, 0x02, 0x10, 0x61, 0x3e, 0x03, 0x11, 0x6f, +0xc0, 0x03, 0x40, 0x6c, 0x65, 0x74, 0x65, 0xe5, 0x01, 0x01, +0x18, 0x02, 0x02, 0x76, 0x00, 0x30, 0x6d, 0x61, 0x79, 0x1d, +0x02, 0x61, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0xe5, 0x01, +0x00, 0xf8, 0x00, 0x01, 0xa5, 0x03, 0x32, 0x5f, 0x3a, 0x20, +0x0d, 0x00, 0x19, 0x2b, 0xdd, 0x01, 0x21, 0x4f, 0x6e, 0x1e, +0x00, 0x00, 0xb1, 0x03, 0x84, 0x61, 0x74, 0x20, 0x77, 0x72, +0x61, 0x70, 0x2c, 0xaa, 0x00, 0x41, 0x20, 0x6d, 0x6f, 0x76, +0x61, 0x00, 0x02, 0xd1, 0x04, 0x03, 0x2d, 0x05, 0x13, 0x65, +0xf3, 0x03, 0x20, 0x73, 0x6f, 0x33, 0x00, 0x02, 0x40, 0x02, +0x04, 0x3e, 0x00, 0x00, 0x98, 0x04, 0x00, 0x55, 0x05, 0xd8, +0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x20, 0x73, 0x69, +0x64, 0x65, 0x73, 0x37, 0x00, 0x04, 0xbe, 0x02, 0x90, 0x73, +0x65, 0x65, 0x6e, 0x20, 0x74, 0x6f, 0x67, 0x65, 0xb9, 0x02, +0x73, 0x2e, 0x20, 0x0a, 0x5f, 0x4d, 0x6f, 0x76, 0x64, 0x04, +0x00, 0xc3, 0x01, 0x49, 0x43, 0x74, 0x72, 0x6c, 0xa8, 0x00, +0x06, 0xab, 0x01, 0x62, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, +0x94, 0x03, 0x00, 0x7c, 0x00, 0x01, 0xb6, 0x05, 0x10, 0x75, +0xc9, 0x03, 0x12, 0x61, 0x75, 0x04, 0x50, 0x73, 0x6f, 0x75, +0x72, 0x63, 0xb6, 0x01, 0x05, 0x87, 0x03, 0x00, 0x78, 0x04, +0xa0, 0x2e, 0x20, 0x28, 0x49, 0x74, 0x20, 0x64, 0x6f, 0x65, +0x73, 0x81, 0x01, 0x70, 0x75, 0x6c, 0x74, 0x69, 0x6d, 0x61, +0x74, 0x21, 0x04, 0x67, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x72, +0x50, 0x00, 0x03, 0xaf, 0x05, 0x57, 0x73, 0x2c, 0x20, 0x61, +0x73, 0xae, 0x04, 0x03, 0x5e, 0x04, 0x0a, 0x04, 0x04, 0x02, +0x20, 0x00, 0x02, 0x7f, 0x05, 0x01, 0x26, 0x00, 0x02, 0x14, +0x05, 0x74, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x9a, +0x04, 0x03, 0x12, 0x02, 0x15, 0x69, 0x9f, 0x01, 0x74, 0x68, +0x65, 0x6c, 0x70, 0x66, 0x75, 0x6c, 0x3a, 0x04, 0x01, 0x73, +0x03, 0x50, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x33, 0x01, 0x33, +0x74, 0x61, 0x67, 0x67, 0x05, 0x61, 0x6f, 0x6c, 0x76, 0x69, +0x6e, 0x67, 0x23, 0x00, 0x60, 0x70, 0x75, 0x7a, 0x7a, 0x6c, +0x65, 0x5e, 0x06, 0x61, 0x5f, 0x4a, 0x75, 0x6d, 0x62, 0x6c, +0x1e, 0x03, 0x02, 0x10, 0x03, 0x11, 0x4a, 0xcc, 0x02, 0x03, +0x22, 0x04, 0x22, 0x6b, 0x65, 0x51, 0x02, 0x10, 0x73, 0xbf, +0x04, 0x07, 0x9b, 0x01, 0x04, 0x45, 0x02, 0x04, 0x8c, 0x02, +0x23, 0x74, 0x6f, 0x7e, 0x05, 0x08, 0xd7, 0x02, 0x81, 0x73, +0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x72, 0x00, 0x22, +0x61, 0x63, 0x45, 0x06, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72, +0x69, 0x62, 0x65, 0x64, 0xae, 0x00, 0x31, 0x73, 0x65, 0x63, +0x6a, 0x05, 0x30, 0x32, 0x2e, 0x31, 0x52, 0x00, 0x02, 0xff, +0x02, 0x70, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x9f, +0x00, 0x02, 0xbc, 0x04, 0x11, 0x32, 0xbc, 0x04, 0xa1, 0x70, +0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0xda, +0x02, 0x26, 0x73, 0x65, 0x12, 0x00, 0x01, 0xd4, 0x02, 0x06, +0x38, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x75, 0x00, +0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, +0x2e, 0x27, 0x20, 0x6f, 0x70, 0x6b, 0x00, 0x22, 0x6f, 0x6e, +0x1a, 0x00, 0xa0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, +0x65, 0x6e, 0x75, 0x2f, 0x02, 0xb0, 0x57, 0x69, 0x64, 0x74, +0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0xe1, 0x01, 0x60, +0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0xf5, 0x01, 0x02, 0x66, +0x02, 0x22, 0x69, 0x6e, 0xfc, 0x00, 0x01, 0x2b, 0x00, 0x41, +0x61, 0x6c, 0x6c, 0x73, 0xd9, 0x02, 0xf0, 0x01, 0x20, 0x61, +0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x20, 0x0a, 0x49, 0x66, +0x20, 0x63, 0x68, 0x65, 0x0a, 0x01, 0x61, 0x2c, 0x20, 0x66, +0x6c, 0x6f, 0x77, 0x5a, 0x02, 0x45, 0x70, 0x61, 0x73, 0x73, +0x8b, 0x00, 0x02, 0xd8, 0x04, 0x43, 0x65, 0x64, 0x67, 0x65, +0xeb, 0x05, 0x01, 0xb4, 0x04, 0x02, 0x12, 0x00, 0x01, 0xef, +0x06, 0x03, 0x2a, 0x00, 0x20, 0x6f, 0x70, 0x20, 0x00, 0x62, +0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x18, 0x00, 0x41, 0x76, +0x69, 0x63, 0x65, 0x5f, 0x08, 0x10, 0x61, 0x7e, 0x00, 0x51, +0x42, 0x61, 0x72, 0x72, 0x69, 0x67, 0x07, 0xf0, 0x0a, 0x6f, +0x62, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x20, +0x0a, 0x41, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, +0x62, 0x65, 0x74, 0x77, 0x0b, 0x03, 0x31, 0x30, 0x2e, 0x30, +0x3d, 0x00, 0x34, 0x31, 0x2e, 0x30, 0xf9, 0x03, 0x11, 0x6c, +0x6a, 0x08, 0x11, 0x68, 0x22, 0x03, 0x00, 0xd3, 0x06, 0x51, +0x69, 0x6d, 0x6d, 0x6f, 0x76, 0x2f, 0x01, 0x13, 0x62, 0x54, +0x00, 0x22, 0x69, 0x73, 0x12, 0x07, 0x15, 0x64, 0x47, 0x00, +0x34, 0x74, 0x77, 0x6f, 0xf5, 0x01, 0x10, 0x6f, 0xda, 0x07, +0x41, 0x76, 0x65, 0x6e, 0x74, 0xe1, 0x00, 0x06, 0x22, 0x00, +0x61, 0x68, 0x65, 0x6d, 0x20, 0x28, 0x61, 0x1c, 0x03, 0x24, +0x65, 0x72, 0x87, 0x00, 0x95, 0x67, 0x69, 0x76, 0x65, 0x73, +0x20, 0x6d, 0x6f, 0x72, 0x5d, 0x00, 0x83, 0x73, 0x29, 0x2e, +0x20, 0x53, 0x69, 0x6e, 0x63, 0x11, 0x00, 0x03, 0xb4, 0x01, +0x06, 0x85, 0x00, 0x10, 0x2c, 0x4a, 0x00, 0x10, 0x79, 0x26, +0x02, 0x30, 0x20, 0x61, 0x73, 0xb3, 0x00, 0x83, 0x73, 0x74, +0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0xb1, 0x01, 0x06, 0x96, +0x07, 0x80, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x2c, 0x20, 0x68, +0x1d, 0x00, 0x10, 0x29, 0xe6, 0x04, 0x04, 0x0b, 0x04, 0x61, +0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x24, 0x00, 0x21, 0x69, +0x6e, 0x33, 0x02, 0x50, 0x68, 0x61, 0x73, 0x20, 0x62, 0xa6, +0x00, 0x30, 0x63, 0x61, 0x72, 0xc1, 0x04, 0x20, 0x6c, 0x79, +0x03, 0x04, 0x00, 0xf0, 0x03, 0x16, 0x64, 0x6f, 0x04, 0x1c, +0x68, 0x93, 0x00, 0x60, 0x6e, 0x64, 0x65, 0x70, 0x65, 0x6e, +0x50, 0x05, 0x04, 0x6a, 0x04, 0x48, 0x72, 0x65, 0x73, 0x74, +0x76, 0x04, 0x21, 0x2e, 0x20, 0x1d, 0x03, 0x43, 0x6d, 0x65, +0x61, 0x6e, 0x0f, 0x03, 0x20, 0x69, 0x66, 0xe5, 0x04, 0x00, +0x12, 0x03, 0x50, 0x65, 0x20, 0x64, 0x6f, 0x77, 0xb3, 0x00, +0x04, 0x90, 0x08, 0x00, 0x9c, 0x04, 0x12, 0x64, 0x52, 0x04, +0x24, 0x74, 0x6f, 0xa5, 0x00, 0x12, 0x65, 0x04, 0x09, 0x63, +0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x8e, 0x03, 0x57, 0x20, +0x28, 0x73, 0x65, 0x65, 0x13, 0x03, 0x32, 0x32, 0x29, 0x2c, +0x9e, 0x04, 0x02, 0x2d, 0x00, 0x0f, 0xfb, 0x01, 0x02, 0x06, +0x04, 0x03, 0x07, 0x34, 0x09, 0x40, 0x72, 0x65, 0x2d, 0x65, +0x03, 0x04, 0x02, 0x38, 0x01, 0x29, 0x61, 0x6d, 0x8a, 0x00, +0x02, 0x8e, 0x05, 0x70, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, +0x20, 0x71, 0x00, 0x74, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, +0x79, 0x2d, 0x00, 0x01, 0x32, 0x04, 0x10, 0x72, 0xe3, 0x04, +0x01, 0xeb, 0x00, 0x02, 0xdf, 0x08, 0x03, 0x9c, 0x08, 0x24, +0x6c, 0x79, 0x91, 0x00, 0x23, 0x62, 0x65, 0x4a, 0x04, 0x04, +0xf2, 0x01, 0x25, 0x6f, 0x66, 0x46, 0x01, 0x75, 0x2e, 0x20, +0x53, 0x6f, 0x20, 0x69, 0x66, 0xf4, 0x06, 0x60, 0x74, 0x75, +0x63, 0x6b, 0x20, 0x6f, 0xc8, 0x04, 0x10, 0x70, 0x59, 0x00, +0x52, 0x63, 0x75, 0x6c, 0x61, 0x72, 0xb2, 0x01, 0x20, 0x61, +0x6e, 0x47, 0x09, 0x00, 0x6b, 0x05, 0x01, 0xcf, 0x01, 0x03, +0x29, 0x06, 0x00, 0x9a, 0x00, 0x02, 0x85, 0x00, 0x00, 0x2c, +0x0a, 0x23, 0x61, 0x6e, 0x8d, 0x0a, 0x51, 0x6e, 0x73, 0x74, +0x61, 0x6e, 0x89, 0x05, 0x00, 0xdc, 0x01, 0x40, 0x2c, 0x20, +0x73, 0x65, 0x20, 0x00, 0x04, 0xb7, 0x00, 0x08, 0x0e, 0x04, +0x01, 0x1e, 0x05, 0x05, 0x93, 0x02, 0x1e, 0x62, 0x37, 0x01, +0x02, 0x2c, 0x01, 0x01, 0x24, 0x01, 0x05, 0xf0, 0x06, 0x01, +0x1d, 0x01, 0x05, 0xaf, 0x03, 0x05, 0x73, 0x0b, 0x01, 0x48, +0x02, 0x11, 0x77, 0x9b, 0x0b, 0x00, 0x7f, 0x03, 0x21, 0x45, +0x6e, 0xc3, 0x07, 0x56, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x94, +0x02, 0x70, 0x5f, 0x20, 0x0a, 0x4e, 0x6f, 0x72, 0x6d, 0x7f, +0x07, 0x10, 0x2c, 0x31, 0x00, 0x02, 0xdc, 0x05, 0x32, 0x6d, +0x61, 0x6b, 0xf2, 0x07, 0x01, 0x23, 0x02, 0x06, 0x77, 0x05, +0x00, 0xea, 0x0a, 0x10, 0x74, 0x4e, 0x03, 0x20, 0x73, 0x65, +0xe0, 0x02, 0x33, 0x68, 0x61, 0x76, 0x5c, 0x01, 0x26, 0x6f, +0x6e, 0x53, 0x00, 0x32, 0x2e, 0x20, 0x50, 0x2c, 0x00, 0x02, +0x80, 0x01, 0x94, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x6f, +0x75, 0x73, 0x20, 0x02, 0x13, 0x73, 0xfa, 0x06, 0x02, 0x65, +0x03, 0x40, 0x64, 0x69, 0x66, 0x66, 0x59, 0x01, 0x11, 0x74, +0xd9, 0x00, 0x21, 0x6d, 0x6f, 0x6b, 0x08, 0x40, 0x62, 0x74, +0x6c, 0x65, 0x57, 0x07, 0x04, 0x9d, 0x02, 0x44, 0x6c, 0x69, +0x6b, 0x65, 0x8b, 0x07, 0x02, 0x26, 0x08, 0x23, 0x6f, 0x66, +0xae, 0x0c, 0x71, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, +0x3e, 0x00, 0x70, 0x72, 0x69, 0x73, 0x6b, 0x20, 0x68, 0x61, +0x2b, 0x06, 0x06, 0x77, 0x00, 0x04, 0xba, 0x00, 0xd0, 0x2e, +0x20, 0x28, 0x41, 0x6c, 0x73, 0x6f, 0x2c, 0x20, 0x66, 0x69, +0x6e, 0x64, 0x22, 0x00, 0x52, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, +0xdc, 0x00, 0x62, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0xc3, +0x00, 0x09, 0xa3, 0x00, 0x00, 0xd8, 0x08, 0x60, 0x64, 0x64, +0x69, 0x74, 0x69, 0x6f, 0x51, 0x01, 0x20, 0x63, 0x68, 0x9e, +0x0c, 0x21, 0x6e, 0x67, 0xbc, 0x0c, 0x02, 0x1c, 0x00, 0x30, +0x76, 0x61, 0x6e, 0x76, 0x04, 0xb0, 0x70, 0x6c, 0x61, 0x79, +0x65, 0x72, 0x2e, 0x29, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3445; const char quick_help_text[] = "Rotate each tile to reassemble the network."; diff --git a/apps/plugins/puzzles/help/netslide.c b/apps/plugins/puzzles/help/netslide.c index b742e4eb53..96e700e81e 100644 --- a/apps/plugins/puzzles/help/netslide.c +++ b/apps/plugins/puzzles/help/netslide.c @@ -1,20 +1,51 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 524 comp 416 ratio 0.793893 level 3 saved 108 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 9: Netslide " -"\n" -"This game combines the grid generation of Net (see chapter 3) with " -"the movement of Sixteen (see chapter 6): you have a Net grid, but " -"instead of rotating tiles back into place you have to slide them " -"into place by moving a whole row at a time. " -"\n" -"As in Sixteen, control is with the mouse or cursor keys. See section " -"6.1. " -"\n" -"The available game parameters have similar meanings to those in Net " -"(see section 3.2) and Sixteen (see section 6.2). " -"\n" -"Netslide was contributed to this collection by Richard Boulton. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x30, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x39, 0x3a, 0x20, 0x4e, 0x65, 0x74, 0x73, 0x6c, 0x69, +0x64, 0x65, 0x20, 0x0a, 0x54, 0x68, 0x69, 0x73, 0x20, 0x67, +0x61, 0x6d, 0x65, 0x20, 0x63, 0x6f, 0x6d, 0x62, 0x69, 0x6e, +0x65, 0x73, 0x20, 0x74, 0x68, 0x65, 0x20, 0x67, 0x72, 0x69, +0x64, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x69, +0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x34, 0x00, 0x73, 0x20, 0x28, +0x73, 0x65, 0x65, 0x20, 0x63, 0x48, 0x00, 0x71, 0x33, 0x29, +0x20, 0x77, 0x69, 0x74, 0x68, 0x30, 0x00, 0x80, 0x6d, 0x6f, +0x76, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x29, 0x00, 0x7a, 0x53, +0x69, 0x78, 0x74, 0x65, 0x65, 0x6e, 0x2d, 0x00, 0xe1, 0x36, +0x29, 0x3a, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, +0x65, 0x20, 0x61, 0x4d, 0x00, 0x00, 0x64, 0x00, 0xd0, 0x2c, +0x20, 0x62, 0x75, 0x74, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x65, +0x61, 0x64, 0x3d, 0x00, 0xf6, 0x0f, 0x72, 0x6f, 0x74, 0x61, +0x74, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x69, 0x6c, 0x65, 0x73, +0x20, 0x62, 0x61, 0x63, 0x6b, 0x20, 0x69, 0x6e, 0x74, 0x6f, +0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x43, 0x00, 0x32, 0x74, +0x6f, 0x20, 0xc2, 0x00, 0x48, 0x74, 0x68, 0x65, 0x6d, 0x22, +0x00, 0x20, 0x62, 0x79, 0x8d, 0x00, 0x00, 0x42, 0x00, 0xf4, +0x0e, 0x61, 0x20, 0x77, 0x68, 0x6f, 0x6c, 0x65, 0x20, 0x72, +0x6f, 0x77, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, 0x74, 0x69, +0x6d, 0x65, 0x2e, 0x20, 0x0a, 0x41, 0x73, 0x20, 0x69, 0x6e, +0xa6, 0x00, 0xc8, 0x2c, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, +0x6f, 0x6c, 0x20, 0x69, 0x73, 0xcf, 0x00, 0xf1, 0x0c, 0x75, +0x73, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x63, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x20, 0x53, +0x65, 0x65, 0x20, 0x73, 0x65, 0x63, 0x11, 0x01, 0x40, 0x36, +0x2e, 0x31, 0x2e, 0x3e, 0x01, 0xb2, 0x65, 0x20, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x47, 0x01, 0xa2, +0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, +0xa9, 0x00, 0xf0, 0x01, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, +0x72, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, 0x73, +0xba, 0x00, 0x50, 0x74, 0x68, 0x6f, 0x73, 0x65, 0x85, 0x00, +0x05, 0x54, 0x01, 0x04, 0x57, 0x00, 0x8a, 0x33, 0x2e, 0x32, +0x29, 0x20, 0x61, 0x6e, 0x64, 0x45, 0x01, 0x06, 0x75, 0x00, +0x55, 0x32, 0x29, 0x2e, 0x20, 0x0a, 0xbe, 0x01, 0x32, 0x77, +0x61, 0x73, 0xbf, 0x00, 0x62, 0x69, 0x62, 0x75, 0x74, 0x65, +0x64, 0x5b, 0x00, 0x10, 0x69, 0x14, 0x00, 0x23, 0x6c, 0x6c, +0x33, 0x00, 0xf0, 0x07, 0x62, 0x79, 0x20, 0x52, 0x69, 0x63, +0x68, 0x61, 0x72, 0x64, 0x20, 0x42, 0x6f, 0x75, 0x6c, 0x74, +0x6f, 0x6e, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 524; const char quick_help_text[] = "Slide a row at a time to reassemble the network."; diff --git a/apps/plugins/puzzles/help/palisade.c b/apps/plugins/puzzles/help/palisade.c index 824eb21799..323774f0a0 100644 --- a/apps/plugins/puzzles/help/palisade.c +++ b/apps/plugins/puzzles/help/palisade.c @@ -1,43 +1,99 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1110 comp 894 ratio 0.805405 level 3 saved 216 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 41: Palisade " -"\n" -"You're given a grid of squares, some of which contain numbers. Your " -"goal is to subdivide the grid into contiguous regions, all of the " -"same (given) size, such that each square containing a number is " -"adjacent to exactly that many edges (including those between the " -"inside and the outside of the grid). " -"\n" -"Credit for this puzzle goes to Nikoli, who call it `Five Cells'. " -"[22]. " -"\n" -"Palisade was contributed to this collection by Jonas Koelker. " -"\n" -"[22] http://nikoli.co.jp/en/puzzles/five_cells.html " -"\n" -"\n#41.1 Palisade controls " -"\n" -"Left-click to place an edge. Right-click to indicate `no edge'. " -"Alternatively, the arrow keys will move a keyboard cursor. Holding " -"Control while pressing an arrow key will place an edge. Press Shift-\n" -"arrowkey to switch off an edge. Repeat an action to perform its " -"inverse. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#41.2 Palisade parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Region size_ " -"\n" -"The size of the regions into which the grid must be subdivided. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2c, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x34, 0x31, 0x3a, 0x20, 0x50, 0x61, 0x6c, 0x69, 0x73, +0x61, 0x64, 0x65, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x27, 0x72, +0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, +0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, +0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x6f, 0x6d, +0x65, 0x11, 0x00, 0xf2, 0x25, 0x77, 0x68, 0x69, 0x63, 0x68, +0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x6e, +0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x2e, 0x20, 0x59, 0x6f, +0x75, 0x72, 0x20, 0x67, 0x6f, 0x61, 0x6c, 0x20, 0x69, 0x73, +0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x62, 0x64, 0x69, 0x76, +0x69, 0x64, 0x65, 0x20, 0x74, 0x68, 0x65, 0x4e, 0x00, 0x41, +0x69, 0x6e, 0x74, 0x6f, 0x39, 0x00, 0xf0, 0x04, 0x69, 0x67, +0x75, 0x6f, 0x75, 0x73, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, +0x6e, 0x73, 0x2c, 0x20, 0x61, 0x6c, 0x6c, 0x5a, 0x00, 0x00, +0x29, 0x00, 0x61, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x28, 0x85, +0x00, 0xf3, 0x07, 0x29, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x2c, +0x20, 0x73, 0x75, 0x63, 0x68, 0x20, 0x74, 0x68, 0x61, 0x74, +0x20, 0x65, 0x61, 0x63, 0x68, 0x91, 0x00, 0x04, 0x81, 0x00, +0x53, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x86, 0x00, 0x00, 0x7a, +0x00, 0x80, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, +0x83, 0x00, 0x72, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, +0x3c, 0x00, 0xf0, 0x03, 0x6d, 0x61, 0x6e, 0x79, 0x20, 0x65, +0x64, 0x67, 0x65, 0x73, 0x20, 0x28, 0x69, 0x6e, 0x63, 0x6c, +0x75, 0x64, 0x3b, 0x00, 0xd1, 0x74, 0x68, 0x6f, 0x73, 0x65, +0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x81, 0x00, +0x30, 0x69, 0x6e, 0x73, 0xb5, 0x00, 0x31, 0x61, 0x6e, 0x64, +0x0f, 0x00, 0x31, 0x6f, 0x75, 0x74, 0x10, 0x00, 0x25, 0x6f, +0x66, 0xc8, 0x00, 0xf1, 0x0f, 0x29, 0x2e, 0x20, 0x0a, 0x43, +0x72, 0x65, 0x64, 0x69, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, +0x74, 0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, +0x65, 0x20, 0x67, 0x6f, 0x65, 0xfd, 0x00, 0xd0, 0x4e, 0x69, +0x6b, 0x6f, 0x6c, 0x69, 0x2c, 0x20, 0x77, 0x68, 0x6f, 0x20, +0x63, 0xde, 0x00, 0xf5, 0x09, 0x69, 0x74, 0x20, 0x60, 0x46, +0x69, 0x76, 0x65, 0x20, 0x43, 0x65, 0x6c, 0x6c, 0x73, 0x27, +0x2e, 0x20, 0x5b, 0x32, 0x32, 0x5d, 0x2e, 0x20, 0x0a, 0x7f, +0x01, 0x31, 0x77, 0x61, 0x73, 0xd3, 0x00, 0x70, 0x72, 0x69, +0x62, 0x75, 0x74, 0x65, 0x64, 0x45, 0x00, 0x01, 0x59, 0x00, +0xf0, 0x0f, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x69, +0x6f, 0x6e, 0x20, 0x62, 0x79, 0x20, 0x4a, 0x6f, 0x6e, 0x61, +0x73, 0x20, 0x4b, 0x6f, 0x65, 0x6c, 0x6b, 0x65, 0x72, 0x2e, +0x20, 0x0a, 0x46, 0x00, 0x91, 0x20, 0x68, 0x74, 0x74, 0x70, +0x3a, 0x2f, 0x2f, 0x6e, 0x74, 0x00, 0xa2, 0x2e, 0x63, 0x6f, +0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0x93, 0x00, 0x80, +0x73, 0x2f, 0x66, 0x69, 0x76, 0x65, 0x5f, 0x63, 0x77, 0x00, +0xd6, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x0a, 0x0a, 0x23, +0x34, 0x31, 0x2e, 0x31, 0xfa, 0x01, 0x01, 0x77, 0x00, 0xf0, +0x00, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, +0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x80, 0x00, 0x40, 0x70, +0x6c, 0x61, 0x63, 0x09, 0x01, 0x01, 0x36, 0x01, 0x67, 0x2e, +0x20, 0x52, 0x69, 0x67, 0x68, 0x1e, 0x00, 0xc1, 0x69, 0x6e, +0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x20, 0x60, 0x6e, 0x6f, +0x22, 0x00, 0xf1, 0x02, 0x27, 0x2e, 0x20, 0x41, 0x6c, 0x74, +0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, +0x2c, 0x31, 0x01, 0xf0, 0x07, 0x61, 0x72, 0x72, 0x6f, 0x77, +0x20, 0x6b, 0x65, 0x79, 0x73, 0x20, 0x77, 0x69, 0x6c, 0x6c, +0x20, 0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x11, 0x00, 0xf1, +0x02, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x63, 0x75, 0x72, +0x73, 0x6f, 0x72, 0x2e, 0x20, 0x48, 0x6f, 0x6c, 0x91, 0x01, +0x12, 0x43, 0x8d, 0x00, 0x00, 0x66, 0x02, 0x81, 0x6c, 0x65, +0x20, 0x70, 0x72, 0x65, 0x73, 0x73, 0xe3, 0x01, 0x16, 0x6e, +0x4a, 0x00, 0x02, 0x49, 0x00, 0x0b, 0x9e, 0x00, 0x10, 0x50, +0x2a, 0x00, 0x81, 0x20, 0x53, 0x68, 0x69, 0x66, 0x74, 0x2d, +0x0a, 0x2b, 0x00, 0x00, 0x2a, 0x00, 0x00, 0x88, 0x02, 0x97, +0x77, 0x69, 0x74, 0x63, 0x68, 0x20, 0x6f, 0x66, 0x66, 0xcb, +0x00, 0x51, 0x65, 0x70, 0x65, 0x61, 0x74, 0x55, 0x00, 0x02, +0x5b, 0x01, 0x00, 0xee, 0x00, 0xf2, 0x0a, 0x65, 0x72, 0x66, +0x6f, 0x72, 0x6d, 0x20, 0x69, 0x74, 0x73, 0x20, 0x69, 0x6e, +0x76, 0x65, 0x72, 0x73, 0x65, 0x2e, 0x20, 0x0a, 0x28, 0x41, +0x6c, 0x6c, 0xc8, 0x00, 0x01, 0x29, 0x00, 0xa0, 0x73, 0x20, +0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0xce, 0x02, +0x23, 0x20, 0x73, 0x9a, 0x01, 0x40, 0x32, 0x2e, 0x31, 0x20, +0x94, 0x02, 0xf3, 0x01, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0x6c, 0x01, 0x16, 0x32, 0x6c, 0x01, 0xf9, 0x01, 0x70, 0x61, +0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x0a, +0x54, 0x68, 0x65, 0x73, 0x12, 0x00, 0x01, 0x43, 0x00, 0x04, +0x3e, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x7b, 0x00, +0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, +0x2e, 0x27, 0x20, 0x6f, 0x70, 0x71, 0x00, 0x22, 0x6f, 0x6e, +0x1a, 0x00, 0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, +0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, +0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0xac, +0x01, 0x61, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0xbb, 0x02, +0x03, 0x7f, 0x03, 0x04, 0xcd, 0x03, 0x00, 0x2d, 0x00, 0x11, +0x52, 0x7d, 0x03, 0x01, 0x63, 0x03, 0x11, 0x5f, 0x8c, 0x00, +0x01, 0x0b, 0x00, 0x04, 0xe8, 0x02, 0x03, 0x9b, 0x03, 0x02, +0xb3, 0x03, 0x02, 0xf2, 0x03, 0x05, 0xc7, 0x03, 0x76, 0x6d, +0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0xe2, 0x03, 0x50, 0x64, +0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 1110; const char quick_help_text[] = "Divide the grid into equal-sized areas in accordance with the clues."; diff --git a/apps/plugins/puzzles/help/pattern.c b/apps/plugins/puzzles/help/pattern.c index d3764c6d43..5f117688f5 100644 --- a/apps/plugins/puzzles/help/pattern.c +++ b/apps/plugins/puzzles/help/pattern.c @@ -1,56 +1,156 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2123 comp 1468 ratio 0.691474 level 4 saved 655 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 10: Pattern " -"\n" -"You have a grid of squares, which must all be filled in either black " -"or white. Beside each row of the grid are listed the lengths of the " -"runs of black squares on that row; above each column are listed the " -"lengths of the runs of black squares in that column. Your aim is to " -"fill in the entire grid black or white. " -"\n" -"I first saw this puzzle form around 1995, under the name " -"`nonograms'. I've seen it in various places since then, under " -"different names. " -"\n" -"Normally, puzzles of this type turn out to be a meaningful picture " -"of something once you've solved them. However, since this version " -"generates the puzzles automatically, they will just look like random " -"groupings of squares. (One user has suggested that this is actually " -"a _good_ thing, since it prevents you from guessing the colour of " -"squares based on the picture, and forces you to use logic instead.) " -"The advantage, though, is that you never run out of them. " -"\n" -"\n#10.1 Pattern controls " -"\n" -"This game is played with the mouse. " -"\n" -"Left-click in a square to colour it black. Right-click to colour it " -"white. If you make a mistake, you can middle-click, or hold down " -"Shift while clicking with any button, to colour the square in the " -"default grey (meaning `undecided') again. " -"\n" -"You can click and drag with the left or right mouse button to colour " -"a vertical or horizontal line of squares black or white at a time " -"(respectively). If you click and drag with the middle button, or " -"with Shift held down, you can colour a whole rectangle of squares " -"grey. " -"\n" -"You can also move around the grid with the cursor keys. Pressing the " -"return key will cycle the current cell through empty, then black, " -"then white, then empty, and the space bar does the same cycle in " -"reverse. " -"\n" -"Moving the cursor while holding Control will colour the moved-over " -"squares black. Holding Shift will colour the moved-over squares " -"white, and holding both will colour them grey. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#10.2 Pattern parameters " -"\n" -"The only options available from the `Custom...' option on the `Type' " -"menu are _Width_ and _Height_, which are self-explanatory. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x4e, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x30, 0x3a, 0x20, 0x50, 0x61, 0x74, 0x74, 0x65, +0x72, 0x6e, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, +0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, +0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x6d, 0x75, +0x73, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x62, 0x65, 0x20, +0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x69, 0x6e, 0x20, +0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0x20, 0x62, 0x6c, 0x61, +0x63, 0x6b, 0x20, 0x6f, 0x72, 0x2c, 0x00, 0xf0, 0x04, 0x74, +0x65, 0x2e, 0x20, 0x42, 0x65, 0x73, 0x69, 0x64, 0x65, 0x20, +0x65, 0x61, 0x63, 0x68, 0x20, 0x72, 0x6f, 0x77, 0x4f, 0x00, +0x32, 0x74, 0x68, 0x65, 0x5b, 0x00, 0xa1, 0x61, 0x72, 0x65, +0x20, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x14, 0x00, 0x74, +0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x73, 0x23, 0x00, 0x31, +0x72, 0x75, 0x6e, 0x0c, 0x00, 0x02, 0x52, 0x00, 0x03, 0x84, +0x00, 0x80, 0x20, 0x6f, 0x6e, 0x20, 0x74, 0x68, 0x61, 0x74, +0x4c, 0x00, 0x63, 0x3b, 0x20, 0x61, 0x62, 0x6f, 0x76, 0x5c, +0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x53, 0x00, +0x22, 0x13, 0x69, 0x53, 0x00, 0x02, 0x43, 0x00, 0xf1, 0x01, +0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, +0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0xe3, 0x00, 0x02, 0x24, +0x00, 0x73, 0x65, 0x20, 0x65, 0x6e, 0x74, 0x69, 0x72, 0xbe, +0x00, 0x0c, 0xea, 0x00, 0xf1, 0x21, 0x0a, 0x49, 0x20, 0x66, +0x69, 0x72, 0x73, 0x74, 0x20, 0x73, 0x61, 0x77, 0x20, 0x74, +0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x20, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x72, 0x6f, 0x75, +0x6e, 0x64, 0x20, 0x31, 0x39, 0x39, 0x35, 0x2c, 0x20, 0x75, +0x6e, 0x64, 0x65, 0x72, 0x51, 0x00, 0xf0, 0x0f, 0x6e, 0x61, +0x6d, 0x65, 0x20, 0x60, 0x6e, 0x6f, 0x6e, 0x6f, 0x67, 0x72, +0x61, 0x6d, 0x73, 0x27, 0x2e, 0x20, 0x49, 0x27, 0x76, 0x65, +0x20, 0x73, 0x65, 0x65, 0x6e, 0x20, 0x69, 0x74, 0x77, 0x00, +0xf0, 0x05, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, +0x70, 0x6c, 0x61, 0x63, 0x65, 0x73, 0x20, 0x73, 0x69, 0x6e, +0x63, 0x65, 0x3b, 0x00, 0x14, 0x6e, 0x47, 0x00, 0x91, 0x64, +0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x74, 0x4d, 0x00, +0xd3, 0x73, 0x2e, 0x20, 0x0a, 0x4e, 0x6f, 0x72, 0x6d, 0x61, +0x6c, 0x6c, 0x79, 0x2c, 0x82, 0x00, 0x03, 0x00, 0x01, 0x00, +0xcf, 0x00, 0xc0, 0x79, 0x70, 0x65, 0x20, 0x74, 0x75, 0x72, +0x6e, 0x20, 0x6f, 0x75, 0x74, 0xdd, 0x00, 0x10, 0x62, 0xe8, +0x01, 0xf1, 0x03, 0x6d, 0x65, 0x61, 0x6e, 0x69, 0x6e, 0x67, +0x66, 0x75, 0x6c, 0x20, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, +0x65, 0xf6, 0x01, 0xa0, 0x6f, 0x6d, 0x65, 0x74, 0x68, 0x69, +0x6e, 0x67, 0x20, 0x6f, 0x73, 0x00, 0x31, 0x79, 0x6f, 0x75, +0x9a, 0x00, 0x32, 0x6f, 0x6c, 0x76, 0x5d, 0x01, 0xb5, 0x6d, +0x2e, 0x20, 0x48, 0x6f, 0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, +0x96, 0x00, 0xf1, 0x05, 0x69, 0x73, 0x20, 0x76, 0x65, 0x72, +0x73, 0x69, 0x6f, 0x6e, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, +0x61, 0x74, 0x65, 0x73, 0xe8, 0x00, 0x04, 0x89, 0x00, 0x92, +0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x69, 0x63, 0xa0, +0x00, 0x60, 0x74, 0x68, 0x65, 0x79, 0x20, 0x77, 0x61, 0x01, +0x10, 0x6a, 0x55, 0x02, 0xf7, 0x0b, 0x6c, 0x6f, 0x6f, 0x6b, +0x20, 0x6c, 0x69, 0x6b, 0x65, 0x20, 0x72, 0x61, 0x6e, 0x64, +0x6f, 0x6d, 0x20, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x69, 0x6e, +0x67, 0x73, 0x87, 0x02, 0xf3, 0x06, 0x2e, 0x20, 0x28, 0x4f, +0x6e, 0x65, 0x20, 0x75, 0x73, 0x65, 0x72, 0x20, 0x68, 0x61, +0x73, 0x20, 0x73, 0x75, 0x67, 0x67, 0x65, 0xf2, 0x01, 0x22, +0x61, 0x74, 0x85, 0x00, 0x70, 0x69, 0x73, 0x20, 0x61, 0x63, +0x74, 0x75, 0x65, 0x00, 0xa1, 0x20, 0x61, 0x20, 0x5f, 0x67, +0x6f, 0x6f, 0x64, 0x5f, 0x20, 0xcd, 0x00, 0x04, 0xac, 0x00, +0xb0, 0x69, 0x74, 0x20, 0x70, 0x72, 0x65, 0x76, 0x65, 0x6e, +0x74, 0x73, 0xdb, 0x00, 0x30, 0x20, 0x66, 0x72, 0x6f, 0x00, +0x40, 0x75, 0x65, 0x73, 0x73, 0xf2, 0x00, 0x00, 0xb3, 0x00, +0x30, 0x63, 0x6f, 0x6c, 0x09, 0x02, 0x06, 0x79, 0x00, 0x62, +0x20, 0x62, 0x61, 0x73, 0x65, 0x64, 0x82, 0x02, 0x14, 0x65, +0x2a, 0x01, 0x50, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0xe3, 0x01, +0x22, 0x63, 0x65, 0x49, 0x00, 0x20, 0x74, 0x6f, 0x9b, 0x00, +0xf0, 0x0f, 0x20, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x20, 0x69, +0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x2e, 0x29, 0x20, 0x54, +0x68, 0x65, 0x20, 0x61, 0x64, 0x76, 0x61, 0x6e, 0x74, 0x61, +0x67, 0x65, 0xf9, 0x00, 0x51, 0x6f, 0x75, 0x67, 0x68, 0x2c, +0x63, 0x02, 0x00, 0xb6, 0x00, 0x00, 0x3a, 0x00, 0x10, 0x6e, +0x4c, 0x01, 0x00, 0xa4, 0x02, 0x01, 0x9d, 0x01, 0x23, 0x6f, +0x66, 0x65, 0x01, 0x75, 0x0a, 0x0a, 0x23, 0x31, 0x30, 0x2e, +0x31, 0xa2, 0x03, 0xb0, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x54, 0xeb, 0x00, 0x10, 0x67, 0x42, +0x02, 0x11, 0x69, 0x20, 0x02, 0x81, 0x79, 0x65, 0x64, 0x20, +0x77, 0x69, 0x74, 0x68, 0xa0, 0x00, 0x40, 0x6d, 0x6f, 0x75, +0x73, 0x96, 0x02, 0xa0, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, +0x6c, 0x69, 0x63, 0x6b, 0x4e, 0x02, 0x13, 0x61, 0xcd, 0x00, +0x00, 0xa7, 0x00, 0x03, 0xe1, 0x00, 0x22, 0x69, 0x74, 0xcb, +0x02, 0x64, 0x2e, 0x20, 0x52, 0x69, 0x67, 0x68, 0x2c, 0x00, +0x09, 0x20, 0x00, 0x03, 0xe2, 0x02, 0x21, 0x49, 0x66, 0xa8, +0x00, 0x31, 0x6d, 0x61, 0x6b, 0x36, 0x02, 0x71, 0x69, 0x73, +0x74, 0x61, 0x6b, 0x65, 0x2c, 0x14, 0x00, 0xa2, 0x63, 0x61, +0x6e, 0x20, 0x6d, 0x69, 0x64, 0x64, 0x6c, 0x65, 0x40, 0x00, +0x10, 0x2c, 0x19, 0x03, 0xe1, 0x68, 0x6f, 0x6c, 0x64, 0x20, +0x64, 0x6f, 0x77, 0x6e, 0x20, 0x53, 0x68, 0x69, 0x66, 0x47, +0x00, 0x31, 0x6c, 0x65, 0x20, 0x20, 0x00, 0x00, 0x65, 0x01, +0x01, 0xab, 0x00, 0xb7, 0x61, 0x6e, 0x79, 0x20, 0x62, 0x75, +0x74, 0x74, 0x6f, 0x6e, 0x2c, 0x74, 0x00, 0x00, 0xc1, 0x00, +0x03, 0xa9, 0x00, 0x03, 0x7a, 0x03, 0xe3, 0x64, 0x65, 0x66, +0x61, 0x75, 0x6c, 0x74, 0x20, 0x67, 0x72, 0x65, 0x79, 0x20, +0x28, 0xb2, 0x02, 0x20, 0x20, 0x60, 0x03, 0x03, 0xe2, 0x63, +0x69, 0x64, 0x65, 0x64, 0x27, 0x29, 0x20, 0x61, 0x67, 0x61, +0x69, 0x6e, 0x2e, 0xc2, 0x04, 0x00, 0x90, 0x00, 0x02, 0xc9, +0x00, 0x00, 0x9f, 0x01, 0x46, 0x64, 0x72, 0x61, 0x67, 0x1a, +0x01, 0x40, 0x6c, 0x65, 0x66, 0x74, 0x9f, 0x00, 0x10, 0x72, +0xef, 0x00, 0x02, 0x28, 0x01, 0x03, 0x83, 0x00, 0x07, 0x82, +0x00, 0x10, 0x61, 0xc9, 0x02, 0x01, 0xa8, 0x02, 0x02, 0xca, +0x00, 0xd9, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, +0x20, 0x6c, 0x69, 0x6e, 0x65, 0x15, 0x02, 0x09, 0x07, 0x04, +0xf5, 0x0a, 0x20, 0x61, 0x74, 0x20, 0x61, 0x20, 0x74, 0x69, +0x6d, 0x65, 0x20, 0x28, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, +0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x29, 0x3e, 0x01, 0x0f, +0x96, 0x00, 0x05, 0x02, 0x3e, 0x01, 0x05, 0x0c, 0x01, 0x22, +0x6f, 0x72, 0x1b, 0x00, 0x02, 0x3a, 0x01, 0x23, 0x68, 0x65, +0x4a, 0x01, 0x06, 0x6e, 0x01, 0x05, 0xa8, 0x00, 0xe9, 0x77, +0x68, 0x6f, 0x6c, 0x65, 0x20, 0x72, 0x65, 0x63, 0x74, 0x61, +0x6e, 0x67, 0x6c, 0x9c, 0x00, 0x00, 0x2d, 0x01, 0x07, 0x11, +0x01, 0x60, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x6d, 0x33, 0x05, +0x03, 0x8e, 0x04, 0x05, 0x8a, 0x05, 0x05, 0x36, 0x02, 0xf7, +0x00, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, +0x79, 0x73, 0x2e, 0x20, 0x50, 0x72, 0x0f, 0x03, 0x21, 0x72, +0x65, 0x38, 0x04, 0x14, 0x6b, 0xb1, 0x03, 0x54, 0x63, 0x79, +0x63, 0x6c, 0x65, 0x34, 0x00, 0x01, 0x7f, 0x04, 0x80, 0x63, +0x65, 0x6c, 0x6c, 0x20, 0x74, 0x68, 0x72, 0xda, 0x02, 0x52, +0x20, 0x65, 0x6d, 0x70, 0x74, 0xe1, 0x03, 0x12, 0x6e, 0x23, +0x01, 0x03, 0x0c, 0x00, 0x01, 0x26, 0x01, 0x03, 0x0c, 0x00, +0x03, 0x24, 0x00, 0x13, 0x61, 0x8a, 0x00, 0xc3, 0x73, 0x70, +0x61, 0x63, 0x65, 0x20, 0x62, 0x61, 0x72, 0x20, 0x64, 0x6f, +0x37, 0x04, 0x10, 0x73, 0xdd, 0x02, 0x02, 0x6a, 0x00, 0x30, +0x69, 0x6e, 0x20, 0xb0, 0x03, 0x11, 0x72, 0xd5, 0x02, 0x35, +0x4d, 0x6f, 0x76, 0xa7, 0x03, 0x02, 0xb2, 0x00, 0x02, 0x5c, +0x02, 0x00, 0x72, 0x02, 0x00, 0x19, 0x00, 0x12, 0x43, 0x24, +0x03, 0x03, 0xaa, 0x00, 0x06, 0x54, 0x02, 0x00, 0xfd, 0x00, +0x30, 0x64, 0x2d, 0x6f, 0x68, 0x03, 0x09, 0xc0, 0x01, 0x00, +0xcb, 0x04, 0x02, 0x3a, 0x00, 0x03, 0xaa, 0x02, 0x0f, 0x38, +0x00, 0x0f, 0x03, 0xc9, 0x00, 0x00, 0xbd, 0x00, 0x04, 0x76, +0x00, 0x4c, 0x62, 0x6f, 0x74, 0x68, 0x3b, 0x00, 0x14, 0x6d, +0x85, 0x01, 0x21, 0x28, 0x41, 0x1e, 0x01, 0x10, 0x65, 0x99, +0x04, 0xc2, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x3e, 0x07, 0x21, 0x73, 0x65, 0x16, +0x00, 0x41, 0x20, 0x32, 0x2e, 0x31, 0xc4, 0x06, 0x01, 0xab, +0x01, 0xb3, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, +0x65, 0x2e, 0x29, 0x06, 0x04, 0x15, 0x32, 0x06, 0x04, 0x91, +0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x08, +0x04, 0x92, 0x65, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, +0x70, 0x5b, 0x00, 0x05, 0x39, 0x00, 0x02, 0xd7, 0x04, 0x00, +0x76, 0x00, 0xb3, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x2e, 0x2e, 0x2e, 0x27, 0x27, 0x00, 0x04, 0xc9, 0x04, 0xb1, +0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, +0x75, 0x7b, 0x00, 0x71, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, +0x5f, 0xda, 0x00, 0x30, 0x5f, 0x48, 0x65, 0x25, 0x03, 0x14, +0x5f, 0xfb, 0x07, 0x00, 0x20, 0x00, 0xf0, 0x05, 0x73, 0x65, +0x6c, 0x66, 0x2d, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x61, +0x74, 0x6f, 0x72, 0x79, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2123; const char quick_help_text[] = "Fill in the pattern in the grid, given only the lengths of runs of black squares."; diff --git a/apps/plugins/puzzles/help/pearl.c b/apps/plugins/puzzles/help/pearl.c index 961c4d7db4..c32a62dff7 100644 --- a/apps/plugins/puzzles/help/pearl.c +++ b/apps/plugins/puzzles/help/pearl.c @@ -1,70 +1,170 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2565 comp 1606 ratio 0.626121 level 11 saved 959 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 36: Pearl " -"\n" -"You have a grid of squares. Your job is to draw lines between the " -"centres of horizontally or vertically adjacent squares, so that the " -"lines form a single closed loop. In the resulting grid, some of the " -"squares that the loop passes through will contain corners, and some " -"will be straight horizontal or vertical lines. (And some squares can " -"be completely empty - the loop doesn't have to pass through every " -"square.) " -"\n" -"Some of the squares contain black and white circles, which are clues " -"that the loop must satisfy. " -"\n" -"A black circle in a square indicates that that square is a corner, " -"but neither of the squares adjacent to it in the loop is also a " -"corner. " -"\n" -"A white circle indicates that the square is a straight edge, but _at " -"least one_ of the squares adjacent to it in the loop is a corner. " -"\n" -"(In both cases, the clue only constrains the two squares adjacent " -"_in the loop_, that is, the squares that the loop passes into after " -"leaving the clue square. The squares that are only adjacent _in the " -"grid_ are not constrained.) " -"\n" -"Credit for this puzzle goes to Nikoli, who call it `Masyu'. [19] " -"\n" -"Thanks to James Harvey for assistance with the implementation. " -"\n" -"[19] http://www.nikoli.co.jp/en/puzzles/masyu.html (beware of Flash) " -"\n" -"\n#36.1 Pearl controls " -"\n" -"Click with the left button on a grid edge to draw a segment of the " -"loop through that edge, or to remove a segment once it is drawn. " -"\n" -"Drag with the left button through a series of squares to draw more " -"than one segment of the loop in one go. Alternatively, drag over an " -"existing part of the loop to undraw it, or to undraw part of it and " -"then go in a different direction. " -"\n" -"Click with the right button on a grid edge to mark it with a cross, " -"indicating that you are sure the loop does not go through that edge. " -"(For instance, if you have decided which of the squares adjacent " -"to a white clue has to be a corner, but don't yet know which way " -"the corner turns, you might mark the one way it _can't_ go with a " -"cross.) " -"\n" -"Alternatively, use the cursor keys to move the cursor. Use the Enter " -"key to begin and end keyboard `drag' operations. Use the Space, " -"Escape or Backspace keys to cancel the drag. Or, hold Control while " -"dragging with the cursor keys to toggle segments as you move between " -"squares. " -"\n" -"Pressing Control-Shift-arrowkey or Shift-arrowkey simulates a left " -"or right click, respectively, on the edge in the direction of the " -"key. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#36.2 Pearl parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x4e, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x36, 0x3a, 0x20, 0x50, 0x65, 0x61, 0x72, 0x6c, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, +0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, 0x20, +0x59, 0x6f, 0x75, 0x72, 0x20, 0x6a, 0x6f, 0x62, 0x20, 0x69, +0x73, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x72, 0x61, 0x77, 0x20, +0x6c, 0x69, 0x6e, 0x65, 0x73, 0x20, 0x62, 0x65, 0x74, 0x77, +0x65, 0x65, 0x6e, 0x20, 0x74, 0x68, 0x65, 0x20, 0x63, 0x65, +0x6e, 0x74, 0x72, 0x65, 0x73, 0x3a, 0x00, 0xf1, 0x07, 0x68, +0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, +0x79, 0x20, 0x6f, 0x72, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, +0x63, 0x0e, 0x00, 0x40, 0x61, 0x64, 0x6a, 0x61, 0x2a, 0x00, +0x04, 0x5e, 0x00, 0x90, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x74, +0x68, 0x61, 0x74, 0x44, 0x00, 0x03, 0x56, 0x00, 0xf2, 0x0d, +0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x20, 0x73, 0x69, 0x6e, +0x67, 0x6c, 0x65, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0x64, +0x20, 0x6c, 0x6f, 0x6f, 0x70, 0x2e, 0x20, 0x49, 0x6c, 0x00, +0x91, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x69, 0x6e, 0x67, +0xad, 0x00, 0x00, 0x44, 0x00, 0x50, 0x6d, 0x65, 0x20, 0x6f, +0x66, 0x1c, 0x00, 0x04, 0x59, 0x00, 0x05, 0x55, 0x00, 0x01, +0x3a, 0x00, 0x51, 0x20, 0x70, 0x61, 0x73, 0x73, 0x15, 0x00, +0xc0, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x77, 0x69, 0x6c, +0x6c, 0x20, 0x63, 0xa3, 0x00, 0xf1, 0x00, 0x69, 0x6e, 0x20, +0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0x73, 0x2c, 0x20, 0x61, +0x6e, 0x64, 0x4b, 0x00, 0x02, 0x1f, 0x00, 0xb7, 0x62, 0x65, +0x20, 0x73, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, 0xd2, +0x00, 0x08, 0xd0, 0x00, 0x02, 0xb0, 0x00, 0x42, 0x2e, 0x20, +0x28, 0x41, 0x39, 0x00, 0x06, 0x7d, 0x00, 0x30, 0x63, 0x61, +0x6e, 0x40, 0x00, 0xf6, 0x03, 0x63, 0x6f, 0x6d, 0x70, 0x6c, +0x65, 0x74, 0x65, 0x6c, 0x79, 0x20, 0x65, 0x6d, 0x70, 0x74, +0x79, 0x20, 0x2d, 0x92, 0x00, 0x72, 0x64, 0x6f, 0x65, 0x73, +0x6e, 0x27, 0x74, 0x76, 0x01, 0x20, 0x74, 0x6f, 0xa2, 0x00, +0x06, 0xa0, 0x00, 0x53, 0x65, 0x76, 0x65, 0x72, 0x79, 0x4e, +0x00, 0x5e, 0x2e, 0x29, 0x20, 0x0a, 0x53, 0xe1, 0x00, 0x05, +0xbf, 0x00, 0x51, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0xbc, 0x00, +0xe0, 0x77, 0x68, 0x69, 0x74, 0x65, 0x20, 0x63, 0x69, 0x72, +0x63, 0x6c, 0x65, 0x73, 0x2c, 0x0f, 0x00, 0x50, 0x63, 0x68, +0x20, 0x61, 0x72, 0x44, 0x01, 0x1d, 0x75, 0x12, 0x01, 0xf2, +0x01, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x73, 0x61, 0x74, 0x69, +0x73, 0x66, 0x79, 0x2e, 0x20, 0x0a, 0x41, 0x48, 0x00, 0x03, +0x3e, 0x00, 0x52, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x6a, 0x00, +0x00, 0x0c, 0x00, 0x56, 0x64, 0x69, 0x63, 0x61, 0x74, 0x42, +0x00, 0x14, 0x61, 0xbf, 0x01, 0x00, 0x12, 0x02, 0x13, 0x61, +0x40, 0x01, 0xdb, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6e, +0x65, 0x69, 0x74, 0x68, 0x65, 0x72, 0xac, 0x00, 0x05, 0xf7, +0x01, 0x00, 0xe9, 0x00, 0x55, 0x69, 0x74, 0x20, 0x69, 0x6e, +0x88, 0x00, 0x01, 0x43, 0x00, 0x35, 0x6c, 0x73, 0x6f, 0x48, +0x00, 0x00, 0x8c, 0x00, 0x09, 0xca, 0x00, 0x0e, 0x80, 0x00, +0x18, 0x65, 0x7f, 0x00, 0x06, 0xa5, 0x01, 0x42, 0x65, 0x64, +0x67, 0x65, 0x86, 0x00, 0xef, 0x5f, 0x61, 0x74, 0x20, 0x6c, +0x65, 0x61, 0x73, 0x74, 0x20, 0x6f, 0x6e, 0x65, 0x5f, 0x8d, +0x00, 0x1a, 0x08, 0x88, 0x00, 0xc0, 0x28, 0x49, 0x6e, 0x20, +0x62, 0x6f, 0x74, 0x68, 0x20, 0x63, 0x61, 0x73, 0x51, 0x01, +0x22, 0x74, 0x68, 0x4b, 0x01, 0x50, 0x20, 0x6f, 0x6e, 0x6c, +0x79, 0x80, 0x01, 0x01, 0x7b, 0x00, 0x21, 0x6e, 0x73, 0x19, +0x00, 0x3e, 0x74, 0x77, 0x6f, 0x62, 0x00, 0x17, 0x5f, 0x5d, +0x00, 0x22, 0x5f, 0x2c, 0xc0, 0x00, 0x3f, 0x69, 0x73, 0x2c, +0xa9, 0x02, 0x0f, 0xa0, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, +0x66, 0x74, 0x65, 0x72, 0xc9, 0x00, 0x45, 0x76, 0x69, 0x6e, +0x67, 0x7e, 0x00, 0x04, 0x17, 0x02, 0x2c, 0x20, 0x54, 0x45, +0x00, 0x22, 0x61, 0x72, 0x9b, 0x00, 0x0d, 0x80, 0x00, 0x01, +0x27, 0x03, 0x11, 0x5f, 0x20, 0x00, 0x36, 0x6e, 0x6f, 0x74, +0xba, 0x00, 0x20, 0x65, 0x64, 0x5d, 0x02, 0x60, 0x43, 0x72, +0x65, 0x64, 0x69, 0x74, 0x77, 0x03, 0xf1, 0x01, 0x20, 0x74, +0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x20, 0x67, 0x6f, 0x65, 0xf0, 0x03, 0x60, 0x4e, 0x69, 0x6b, +0x6f, 0x6c, 0x69, 0x4f, 0x02, 0x20, 0x6f, 0x20, 0xc5, 0x03, +0x00, 0x34, 0x01, 0xf1, 0x05, 0x60, 0x4d, 0x61, 0x73, 0x79, +0x75, 0x27, 0x2e, 0x20, 0x5b, 0x31, 0x39, 0x5d, 0x20, 0x0a, +0x54, 0x68, 0x61, 0x6e, 0x6b, 0x2d, 0x00, 0xc1, 0x4a, 0x61, +0x6d, 0x65, 0x73, 0x20, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, +0x52, 0x00, 0x90, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, +0x6e, 0x63, 0x56, 0x03, 0x21, 0x74, 0x68, 0x8e, 0x00, 0x10, +0x69, 0x16, 0x03, 0xc1, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x74, +0x69, 0x6f, 0x6e, 0x2e, 0x20, 0x0a, 0x46, 0x00, 0xc1, 0x68, +0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, +0x6e, 0x73, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, +0x2f, 0x65, 0x6e, 0x2f, 0x92, 0x00, 0x30, 0x73, 0x2f, 0x6d, +0x76, 0x00, 0xc1, 0x2e, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x28, +0x62, 0x65, 0x77, 0x61, 0x72, 0x15, 0x03, 0xe1, 0x46, 0x6c, +0x61, 0x73, 0x68, 0x29, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x36, +0x2e, 0x31, 0xd2, 0x04, 0x02, 0xdd, 0x03, 0xb6, 0x72, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x7d, +0x00, 0x40, 0x6c, 0x65, 0x66, 0x74, 0x25, 0x02, 0x63, 0x74, +0x6f, 0x6e, 0x20, 0x6f, 0x6e, 0xf0, 0x04, 0x01, 0x3c, 0x02, +0x04, 0xdd, 0x04, 0x00, 0x54, 0x02, 0x30, 0x65, 0x67, 0x6d, +0x40, 0x01, 0x25, 0x6f, 0x66, 0x9a, 0x01, 0x04, 0x9c, 0x03, +0x00, 0x6b, 0x01, 0x04, 0x6c, 0x02, 0x20, 0x6f, 0x72, 0x34, +0x00, 0x68, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x36, 0x00, +0x00, 0xee, 0x00, 0x10, 0x69, 0xea, 0x01, 0x01, 0x50, 0x00, +0x00, 0xe2, 0x00, 0x4f, 0x44, 0x72, 0x61, 0x67, 0x84, 0x00, +0x02, 0x04, 0x57, 0x00, 0x01, 0x3f, 0x00, 0x46, 0x72, 0x69, +0x65, 0x73, 0x7b, 0x05, 0x06, 0x6e, 0x05, 0x40, 0x6d, 0x6f, +0x72, 0x65, 0x78, 0x00, 0x10, 0x6e, 0xd0, 0x02, 0x0f, 0x9d, +0x00, 0x02, 0x12, 0x69, 0x1b, 0x00, 0xf0, 0x05, 0x67, 0x6f, +0x2e, 0x20, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, +0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0x20, 0x64, 0x7a, 0x00, +0xc1, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x61, 0x6e, 0x20, 0x65, +0x78, 0x69, 0x73, 0x38, 0x05, 0x3b, 0x70, 0x61, 0x72, 0xde, +0x00, 0x41, 0x6f, 0x20, 0x75, 0x6e, 0x6d, 0x00, 0x20, 0x69, +0x74, 0xd9, 0x00, 0x06, 0x11, 0x00, 0x05, 0x2c, 0x00, 0x20, +0x69, 0x74, 0x66, 0x04, 0x00, 0x33, 0x00, 0x42, 0x6e, 0x20, +0x67, 0x6f, 0x23, 0x04, 0x60, 0x64, 0x69, 0x66, 0x66, 0x65, +0x72, 0x8e, 0x00, 0x51, 0x64, 0x69, 0x72, 0x65, 0x63, 0xd0, +0x01, 0x0d, 0x73, 0x01, 0x4f, 0x72, 0x69, 0x67, 0x68, 0x74, +0x01, 0x08, 0x71, 0x6d, 0x61, 0x72, 0x6b, 0x20, 0x69, 0x74, +0x30, 0x00, 0x00, 0x7f, 0x03, 0x53, 0x72, 0x6f, 0x73, 0x73, +0x2c, 0xf6, 0x03, 0x00, 0xad, 0x00, 0x02, 0x72, 0x01, 0x31, +0x79, 0x6f, 0x75, 0xc1, 0x02, 0x4a, 0x73, 0x75, 0x72, 0x65, +0x46, 0x05, 0x01, 0xd4, 0x02, 0x2e, 0x67, 0x6f, 0xa1, 0x01, +0x92, 0x2e, 0x20, 0x28, 0x46, 0x6f, 0x72, 0x20, 0x69, 0x6e, +0x81, 0x02, 0x64, 0x2c, 0x20, 0x69, 0x66, 0x20, 0x79, 0xe9, +0x06, 0x72, 0x64, 0x65, 0x63, 0x69, 0x64, 0x65, 0x64, 0x26, +0x05, 0x0f, 0x23, 0x04, 0x09, 0x11, 0x61, 0x8e, 0x04, 0x03, +0x7c, 0x03, 0x21, 0x68, 0x61, 0x96, 0x01, 0x2b, 0x62, 0x65, +0xf8, 0x04, 0x20, 0x64, 0x6f, 0xcc, 0x05, 0x83, 0x79, 0x65, +0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x55, 0x00, 0x30, 0x77, +0x61, 0x79, 0x56, 0x00, 0x03, 0x29, 0x00, 0x71, 0x20, 0x74, +0x75, 0x72, 0x6e, 0x73, 0x2c, 0x82, 0x00, 0x10, 0x6d, 0x12, +0x01, 0x01, 0xf9, 0x00, 0x00, 0x21, 0x00, 0x00, 0xbb, 0x01, +0x00, 0x2d, 0x00, 0x00, 0x05, 0x01, 0xa9, 0x5f, 0x63, 0x61, +0x6e, 0x27, 0x74, 0x5f, 0x20, 0x67, 0x6f, 0x10, 0x01, 0x00, +0xa8, 0x03, 0x0b, 0xd9, 0x01, 0x32, 0x75, 0x73, 0x65, 0x5e, +0x00, 0xa1, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, +0x79, 0x73, 0x4e, 0x01, 0x28, 0x6f, 0x76, 0x18, 0x00, 0x33, +0x2e, 0x20, 0x55, 0x28, 0x00, 0x41, 0x45, 0x6e, 0x74, 0x65, +0x27, 0x00, 0x02, 0xc1, 0x00, 0x31, 0x67, 0x69, 0x6e, 0xcf, +0x01, 0x30, 0x65, 0x6e, 0x64, 0x15, 0x00, 0x70, 0x62, 0x6f, +0x61, 0x72, 0x64, 0x20, 0x60, 0x2e, 0x02, 0x61, 0x27, 0x20, +0x6f, 0x70, 0x65, 0x72, 0x9c, 0x03, 0x16, 0x73, 0x3f, 0x00, +0x30, 0x53, 0x70, 0x61, 0x43, 0x01, 0x60, 0x45, 0x73, 0x63, +0x61, 0x70, 0x65, 0x21, 0x02, 0x50, 0x42, 0x61, 0x63, 0x6b, +0x73, 0x15, 0x00, 0x05, 0x7b, 0x00, 0x10, 0x63, 0x66, 0x01, +0x10, 0x6c, 0x2e, 0x00, 0x01, 0x76, 0x02, 0xc2, 0x2e, 0x20, +0x4f, 0x72, 0x2c, 0x20, 0x68, 0x6f, 0x6c, 0x64, 0x20, 0x43, +0x8e, 0x03, 0x00, 0x18, 0x01, 0x12, 0x6c, 0x1d, 0x00, 0x34, +0x67, 0x69, 0x6e, 0x11, 0x03, 0x0e, 0xc4, 0x00, 0x55, 0x74, +0x6f, 0x67, 0x67, 0x6c, 0xe9, 0x02, 0x40, 0x73, 0x20, 0x61, +0x73, 0x36, 0x01, 0x01, 0xdb, 0x00, 0x04, 0x74, 0x08, 0x06, +0x9f, 0x08, 0x50, 0x0a, 0x50, 0x72, 0x65, 0x73, 0x2d, 0x08, +0x04, 0x66, 0x00, 0xe1, 0x2d, 0x53, 0x68, 0x69, 0x66, 0x74, +0x2d, 0x61, 0x72, 0x72, 0x6f, 0x77, 0x6b, 0x65, 0x82, 0x08, +0x0b, 0x12, 0x00, 0x51, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x52, +0x06, 0x12, 0x61, 0x8c, 0x03, 0x23, 0x6f, 0x72, 0xa5, 0x02, +0x10, 0x63, 0xba, 0x02, 0x10, 0x2c, 0x61, 0x08, 0x34, 0x70, +0x65, 0x63, 0x6a, 0x01, 0x11, 0x6f, 0x45, 0x05, 0x01, 0x53, +0x02, 0x03, 0x2e, 0x06, 0x06, 0xee, 0x02, 0x02, 0x3a, 0x02, +0x01, 0x04, 0x01, 0x00, 0x32, 0x06, 0x22, 0x41, 0x6c, 0x00, +0x01, 0x21, 0x61, 0x63, 0x3f, 0x01, 0xa0, 0x20, 0x64, 0x65, +0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x39, 0x00, 0x13, +0x73, 0x33, 0x00, 0x30, 0x32, 0x2e, 0x31, 0xcb, 0x02, 0x03, +0xf8, 0x06, 0x94, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, +0x65, 0x2e, 0xc3, 0x04, 0x12, 0x32, 0xc3, 0x04, 0x00, 0x78, +0x03, 0x70, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x62, +0x05, 0x37, 0x65, 0x73, 0x65, 0x12, 0x00, 0x00, 0x40, 0x00, +0x06, 0x3b, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x78, +0x00, 0xa0, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, +0x2e, 0x2e, 0xc6, 0x01, 0x02, 0xa1, 0x00, 0x12, 0x6e, 0x1a, +0x00, 0xe0, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, +0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2565; const char quick_help_text[] = "Draw a single closed loop, given clues about corner and straight squares."; diff --git a/apps/plugins/puzzles/help/pegs.c b/apps/plugins/puzzles/help/pegs.c index d5b1df6040..9541fee5a8 100644 --- a/apps/plugins/puzzles/help/pegs.c +++ b/apps/plugins/puzzles/help/pegs.c @@ -1,52 +1,135 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1686 comp 1254 ratio 0.743772 level 3 saved 432 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 16: Pegs " -"\n" -"A number of pegs are placed in holes on a board. You can remove a " -"peg by jumping an adjacent peg over it (horizontally or vertically) " -"to a vacant hole on the other side. Your aim is to remove all but " -"one of the pegs initially present. " -"\n" -"This game, best known as `Peg Solitaire', is possibly one of the " -"oldest puzzle games still commonly known. " -"\n" -"\n#16.1 Pegs controls " -"\n" -"To move a peg, drag it with the mouse from its current position to " -"its final position. If the final position is exactly two holes away " -"from the initial position, is currently unoccupied by a peg, and " -"there is a peg in the intervening square, the move will be permitted " -"and the intervening peg will be removed. " -"\n" -"Vacant spaces which you can move a peg into are marked with holes. A " -"space with no peg and no hole is not available for moving at all: it " -"is an obstacle which you must work around. " -"\n" -"You can also use the cursor keys to move a position indicator around " -"the board. Pressing the return key while over a peg, followed by a " -"cursor key, will jump the peg in that direction (if that is a legal " -"move). " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#16.2 Pegs parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in holes. " -"\n" -"_Board type_ " -"\n" -"Controls whether you are given a board of a standard shape or " -"a randomly generated shape. The two standard shapes currently " -"supported are `Cross' and `Octagon' (also commonly known as the " -"English and European traditional board layouts respectively). " -"Selecting `Random' will give you a different board shape every " -"time (but always one that is known to have a solution). " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x11, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x36, 0x3a, 0x20, 0x50, 0x65, 0x67, 0x73, 0x20, +0x0a, 0x41, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, +0x6f, 0x66, 0x20, 0x70, 0x12, 0x00, 0xf0, 0x21, 0x61, 0x72, +0x65, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x64, 0x20, 0x69, +0x6e, 0x20, 0x68, 0x6f, 0x6c, 0x65, 0x73, 0x20, 0x6f, 0x6e, +0x20, 0x61, 0x20, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2e, 0x20, +0x59, 0x6f, 0x75, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x72, 0x65, +0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x36, 0x00, 0xf1, 0x08, +0x20, 0x62, 0x79, 0x20, 0x6a, 0x75, 0x6d, 0x70, 0x69, 0x6e, +0x67, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x64, 0x6a, 0x61, 0x63, +0x65, 0x6e, 0x74, 0x1b, 0x00, 0xf0, 0x10, 0x6f, 0x76, 0x65, +0x72, 0x20, 0x69, 0x74, 0x20, 0x28, 0x68, 0x6f, 0x72, 0x69, +0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x6f, +0x72, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, +0xd1, 0x29, 0x20, 0x74, 0x6f, 0x20, 0x61, 0x20, 0x76, 0x61, +0x63, 0x61, 0x6e, 0x74, 0x73, 0x00, 0x00, 0x72, 0x00, 0xe1, +0x74, 0x68, 0x65, 0x20, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, +0x73, 0x69, 0x64, 0x65, 0x79, 0x00, 0x80, 0x72, 0x20, 0x61, +0x69, 0x6d, 0x20, 0x69, 0x73, 0x30, 0x00, 0x04, 0x80, 0x00, +0xa0, 0x6c, 0x6c, 0x20, 0x62, 0x75, 0x74, 0x20, 0x6f, 0x6e, +0x65, 0xc3, 0x00, 0x00, 0x35, 0x00, 0x01, 0xc7, 0x00, 0x51, +0x69, 0x6e, 0x69, 0x74, 0x69, 0x6b, 0x00, 0xf0, 0x24, 0x70, +0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x2e, 0x20, 0x0a, 0x54, +0x68, 0x69, 0x73, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x2c, 0x20, +0x62, 0x65, 0x73, 0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, +0x20, 0x61, 0x73, 0x20, 0x60, 0x50, 0x65, 0x67, 0x20, 0x53, +0x6f, 0x6c, 0x69, 0x74, 0x61, 0x69, 0x72, 0x65, 0x27, 0x2c, +0x63, 0x00, 0x88, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, +0x79, 0x5a, 0x00, 0x30, 0x6f, 0x6c, 0x64, 0x38, 0x00, 0x61, +0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x4a, 0x00, 0xf2, 0x01, +0x73, 0x20, 0x73, 0x74, 0x69, 0x6c, 0x6c, 0x20, 0x63, 0x6f, +0x6d, 0x6d, 0x6f, 0x6e, 0x6c, 0x79, 0x54, 0x00, 0x92, 0x2e, +0x20, 0x0a, 0x0a, 0x23, 0x31, 0x36, 0x2e, 0x31, 0x65, 0x01, +0xd6, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, +0x0a, 0x54, 0x6f, 0x20, 0x36, 0x01, 0x60, 0x2c, 0x20, 0x64, +0x72, 0x61, 0x67, 0x1c, 0x01, 0x41, 0x77, 0x69, 0x74, 0x68, +0x61, 0x00, 0xf1, 0x04, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x20, +0x66, 0x72, 0x6f, 0x6d, 0x20, 0x69, 0x74, 0x73, 0x20, 0x63, +0x75, 0x72, 0x72, 0x48, 0x01, 0x50, 0x6f, 0x73, 0x69, 0x74, +0x69, 0x14, 0x01, 0x11, 0x6f, 0x18, 0x00, 0x55, 0x66, 0x69, +0x6e, 0x61, 0x6c, 0x16, 0x00, 0x32, 0x2e, 0x20, 0x49, 0x9f, +0x00, 0x0a, 0x17, 0x00, 0x00, 0xc5, 0x00, 0xb3, 0x65, 0x78, +0x61, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x74, 0x77, 0x6f, 0xcb, +0x01, 0x42, 0x61, 0x77, 0x61, 0x79, 0x61, 0x00, 0x00, 0x32, +0x00, 0x03, 0x26, 0x01, 0x05, 0x34, 0x00, 0x01, 0xfa, 0x00, +0x03, 0x76, 0x00, 0xd0, 0x6c, 0x79, 0x20, 0x75, 0x6e, 0x6f, +0x63, 0x63, 0x75, 0x70, 0x69, 0x65, 0x64, 0xe2, 0x01, 0x03, +0xb5, 0x00, 0x30, 0x61, 0x6e, 0x64, 0x3c, 0x00, 0x20, 0x72, +0x65, 0x2c, 0x00, 0x02, 0xff, 0x01, 0x23, 0x69, 0x6e, 0x4e, +0x00, 0x60, 0x74, 0x65, 0x72, 0x76, 0x65, 0x6e, 0x07, 0x02, +0x73, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x2c, 0xd6, 0x00, +0x40, 0x76, 0x65, 0x20, 0x77, 0x27, 0x01, 0x10, 0x62, 0x9e, +0x01, 0x74, 0x72, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x49, +0x00, 0x09, 0x37, 0x00, 0x00, 0x4e, 0x00, 0x04, 0x2a, 0x00, +0x02, 0xe2, 0x01, 0x52, 0x64, 0x2e, 0x20, 0x0a, 0x56, 0x1a, +0x02, 0xe3, 0x73, 0x70, 0x61, 0x63, 0x65, 0x73, 0x20, 0x77, +0x68, 0x69, 0x63, 0x68, 0x20, 0x79, 0x88, 0x02, 0x06, 0x50, +0x01, 0x00, 0x49, 0x00, 0x11, 0x6f, 0xc0, 0x02, 0x62, 0x6d, +0x61, 0x72, 0x6b, 0x65, 0x64, 0x57, 0x01, 0x01, 0xf7, 0x00, +0x32, 0x2e, 0x20, 0x41, 0x3e, 0x00, 0x02, 0x14, 0x00, 0x21, +0x6e, 0x6f, 0x30, 0x00, 0x00, 0x81, 0x00, 0x12, 0x6e, 0x19, +0x01, 0x00, 0xcc, 0x00, 0xf0, 0x02, 0x6e, 0x6f, 0x74, 0x20, +0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x20, +0x66, 0x6f, 0x72, 0x5c, 0x00, 0x01, 0xd3, 0x02, 0x10, 0x74, +0x67, 0x02, 0x10, 0x3a, 0xaa, 0x01, 0x00, 0xf3, 0x00, 0xa7, +0x6e, 0x20, 0x6f, 0x62, 0x73, 0x74, 0x61, 0x63, 0x6c, 0x65, +0x8b, 0x00, 0xf0, 0x00, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x77, +0x6f, 0x72, 0x6b, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0xb6, +0x00, 0x04, 0x2a, 0x03, 0x50, 0x61, 0x6c, 0x73, 0x6f, 0x20, +0xd8, 0x01, 0x00, 0xed, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0xc6, 0x02, 0x04, 0x0e, +0x02, 0x05, 0xb4, 0x01, 0x83, 0x6e, 0x64, 0x69, 0x63, 0x61, +0x74, 0x6f, 0x72, 0x47, 0x00, 0x01, 0x34, 0x00, 0x03, 0x7a, +0x03, 0x50, 0x50, 0x72, 0x65, 0x73, 0x73, 0x90, 0x00, 0x00, +0x14, 0x00, 0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x48, +0x00, 0x00, 0x85, 0x00, 0x22, 0x6c, 0x65, 0x68, 0x03, 0x03, +0xa3, 0x01, 0x64, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0xb6, +0x01, 0x06, 0x73, 0x00, 0x12, 0x2c, 0x5c, 0x01, 0x00, 0xab, +0x03, 0x04, 0x2a, 0x03, 0x02, 0xbc, 0x01, 0x81, 0x61, 0x74, +0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x84, 0x00, 0x32, 0x28, +0x69, 0x66, 0x13, 0x00, 0x01, 0xe0, 0x01, 0x51, 0x6c, 0x65, +0x67, 0x61, 0x6c, 0xa8, 0x00, 0x81, 0x29, 0x2e, 0x20, 0x0a, +0x28, 0x41, 0x6c, 0x6c, 0x3b, 0x00, 0x11, 0x61, 0x2c, 0x00, +0x92, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, +0x2e, 0x04, 0x13, 0x73, 0x42, 0x00, 0x31, 0x32, 0x2e, 0x31, +0x88, 0x01, 0x01, 0xfa, 0x00, 0x05, 0x53, 0x01, 0x23, 0x2e, +0x29, 0x17, 0x03, 0x12, 0x32, 0x17, 0x03, 0x90, 0x70, 0x61, +0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x19, 0x03, 0x48, +0x68, 0x65, 0x73, 0x65, 0x12, 0x00, 0x01, 0x3f, 0x00, 0x06, +0x8d, 0x01, 0x04, 0xb1, 0x02, 0xe1, 0x60, 0x43, 0x75, 0x73, +0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, +0x6d, 0x00, 0x03, 0x2b, 0x04, 0xf1, 0x15, 0x60, 0x54, 0x79, +0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, +0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, +0x5f, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x20, 0x0a, +0x53, 0x69, 0x7a, 0xc9, 0x03, 0x36, 0x67, 0x72, 0x69, 0xdb, +0x04, 0x00, 0x2b, 0x00, 0x10, 0x42, 0x5f, 0x01, 0x94, 0x20, +0x74, 0x79, 0x70, 0x65, 0x5f, 0x20, 0x0a, 0x43, 0xac, 0x03, +0x31, 0x77, 0x68, 0x65, 0x7d, 0x04, 0x00, 0xdd, 0x01, 0x00, +0x8d, 0x00, 0x45, 0x67, 0x69, 0x76, 0x65, 0x07, 0x05, 0x00, +0x48, 0x00, 0x70, 0x61, 0x20, 0x73, 0x74, 0x61, 0x6e, 0x64, +0x0e, 0x00, 0x50, 0x73, 0x68, 0x61, 0x70, 0x65, 0xd4, 0x04, +0xf3, 0x04, 0x61, 0x20, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, +0x6c, 0x79, 0x20, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, +0x65, 0x1e, 0x00, 0x51, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x88, +0x03, 0x0a, 0x36, 0x00, 0x08, 0x6f, 0x03, 0x61, 0x73, 0x75, +0x70, 0x70, 0x6f, 0x72, 0x1b, 0x03, 0x10, 0x72, 0xeb, 0x00, +0x51, 0x72, 0x6f, 0x73, 0x73, 0x27, 0xa6, 0x02, 0xb1, 0x60, +0x4f, 0x63, 0x74, 0x61, 0x67, 0x6f, 0x6e, 0x27, 0x20, 0x28, +0x54, 0x01, 0x0a, 0x6f, 0x04, 0x00, 0xc3, 0x04, 0x00, 0x03, +0x01, 0x71, 0x45, 0x6e, 0x67, 0x6c, 0x69, 0x73, 0x68, 0x32, +0x00, 0xd1, 0x45, 0x75, 0x72, 0x6f, 0x70, 0x65, 0x61, 0x6e, +0x20, 0x74, 0x72, 0x61, 0x64, 0x5c, 0x02, 0x23, 0x61, 0x6c, +0xbc, 0x00, 0xc0, 0x6c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x73, +0x20, 0x72, 0x65, 0x73, 0x70, 0xb1, 0x01, 0xa0, 0x76, 0x65, +0x6c, 0x79, 0x29, 0x2e, 0x20, 0x53, 0x65, 0x6c, 0x0e, 0x00, +0x51, 0x6e, 0x67, 0x20, 0x60, 0x52, 0xc5, 0x00, 0x12, 0x27, +0x2e, 0x02, 0x00, 0xf9, 0x00, 0x02, 0x06, 0x01, 0x61, 0x20, +0x64, 0x69, 0x66, 0x66, 0x65, 0x92, 0x04, 0x26, 0x62, 0x6f, +0xf8, 0x00, 0xc0, 0x65, 0x76, 0x65, 0x72, 0x79, 0x20, 0x74, +0x69, 0x6d, 0x65, 0x20, 0x28, 0x8b, 0x05, 0x61, 0x61, 0x6c, +0x77, 0x61, 0x79, 0x73, 0x38, 0x05, 0x04, 0x47, 0x02, 0x02, +0xa7, 0x00, 0x51, 0x74, 0x6f, 0x20, 0x68, 0x61, 0xf0, 0x02, +0xd0, 0x73, 0x6f, 0x6c, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x29, +0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 1686; const char quick_help_text[] = "Jump pegs over each other to remove all but one."; diff --git a/apps/plugins/puzzles/help/range.c b/apps/plugins/puzzles/help/range.c index fd234d7e24..ca39195269 100644 --- a/apps/plugins/puzzles/help/range.c +++ b/apps/plugins/puzzles/help/range.c @@ -1,62 +1,149 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2029 comp 1393 ratio 0.686545 level 4 saved 636 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 35: Range " -"\n" -"You have a grid of squares; some squares contain numbers. Your job " -"is to colour some of the squares black, such that several criteria " -"are satisfied: " -"\n" -"- no square with a number is coloured black. " -"\n" -"- no two black squares are adjacent (horizontally or vertically). " -"\n" -"- for any two white squares, there is a path between them using " -"only white squares. " -"\n" -"- for each square with a number, that number denotes the total " -"number of white squares reachable from that square going in a " -"straight line in any horizontal or vertical direction until " -"hitting a wall or a black square; the square with the number is " -"included in the total (once). " -"\n" -"For instance, a square containing the number one must have four " -"black squares as its neighbours by the last criterion; but then it's " -"impossible for it to be connected to any outside white square, which " -"violates the second to last criterion. So no square will contain the " -"number one. " -"\n" -"Credit for this puzzle goes to Nikoli, who have variously called it " -"`Kurodoko', `Kuromasu' or `Where is Black Cells'. [18]. " -"\n" -"Range was contributed to this collection by Jonas Koelker. " -"\n" -"[18] http://www.nikoli.co.jp/en/puzzles/where_is_black_cells.html " -"\n" -"\n#35.1 Range controls " -"\n" -"Click with the left button to paint a square black, or with the " -"right button to mark a square with a dot to indicate that you are " -"sure it should _not_ be painted black. Repeated clicking with either " -"button will cycle the square through the three possible states " -"(filled, dotted or empty) in opposite directions. " -"\n" -"You can also use the cursor keys to move around the grid squares. " -"Pressing Return does the same as clicking with the left button, " -"while pressing Space does the same as a right button click. Moving " -"with the cursor keys while holding Shift will place dots in all " -"squares that are moved through. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#35.2 Range parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x25, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x35, 0x3a, 0x20, 0x52, 0x61, 0x6e, 0x67, 0x65, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, +0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x3b, 0x20, +0x73, 0x6f, 0x6d, 0x65, 0x0e, 0x00, 0xf0, 0x15, 0x20, 0x63, +0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x6e, 0x75, 0x6d, +0x62, 0x65, 0x72, 0x73, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, +0x20, 0x6a, 0x6f, 0x62, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, +0x20, 0x63, 0x6f, 0x6c, 0x11, 0x00, 0x01, 0x34, 0x00, 0x56, +0x6f, 0x66, 0x20, 0x74, 0x68, 0x3b, 0x00, 0xf3, 0x27, 0x62, +0x6c, 0x61, 0x63, 0x6b, 0x2c, 0x20, 0x73, 0x75, 0x63, 0x68, +0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x73, 0x65, 0x76, 0x65, +0x72, 0x61, 0x6c, 0x20, 0x63, 0x72, 0x69, 0x74, 0x65, 0x72, +0x69, 0x61, 0x20, 0x61, 0x72, 0x65, 0x20, 0x73, 0x61, 0x74, +0x69, 0x73, 0x66, 0x69, 0x65, 0x64, 0x3a, 0x20, 0x0a, 0x2d, +0x20, 0x6e, 0x6f, 0x3f, 0x00, 0x73, 0x20, 0x77, 0x69, 0x74, +0x68, 0x20, 0x61, 0x78, 0x00, 0x00, 0x6d, 0x00, 0x02, 0x6a, +0x00, 0x22, 0x65, 0x64, 0x58, 0x00, 0x13, 0x2e, 0x2e, 0x00, +0x32, 0x74, 0x77, 0x6f, 0x11, 0x00, 0x05, 0x77, 0x00, 0x00, +0x3d, 0x00, 0xf0, 0x00, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, +0x6e, 0x74, 0x20, 0x28, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0xc4, +0x00, 0xd0, 0x6c, 0x6c, 0x79, 0x20, 0x6f, 0x72, 0x20, 0x76, +0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, 0x00, 0x11, 0x29, 0x43, +0x00, 0x71, 0x66, 0x6f, 0x72, 0x20, 0x61, 0x6e, 0x79, 0x48, +0x00, 0x45, 0x77, 0x68, 0x69, 0x74, 0xbf, 0x00, 0x10, 0x2c, +0xcc, 0x00, 0x20, 0x72, 0x65, 0x7a, 0x00, 0xe0, 0x61, 0x20, +0x70, 0x61, 0x74, 0x68, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, +0x65, 0x6e, 0x18, 0x00, 0xca, 0x6d, 0x20, 0x75, 0x73, 0x69, +0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x6c, 0x79, 0x37, 0x00, 0x05, +0x55, 0x00, 0x4f, 0x65, 0x61, 0x63, 0x68, 0xcc, 0x00, 0x02, +0x12, 0x2c, 0x0d, 0x01, 0x03, 0xd9, 0x00, 0x71, 0x64, 0x65, +0x6e, 0x6f, 0x74, 0x65, 0x73, 0x39, 0x01, 0x54, 0x74, 0x6f, +0x74, 0x61, 0x6c, 0x19, 0x00, 0x2a, 0x6f, 0x66, 0x59, 0x00, +0x20, 0x20, 0x72, 0x52, 0x00, 0x93, 0x61, 0x62, 0x6c, 0x65, +0x20, 0x66, 0x72, 0x6f, 0x6d, 0x52, 0x01, 0x02, 0x60, 0x00, +0x20, 0x67, 0x6f, 0x8d, 0x00, 0xf1, 0x03, 0x69, 0x6e, 0x20, +0x61, 0x20, 0x73, 0x74, 0x72, 0x61, 0x69, 0x67, 0x68, 0x74, +0x20, 0x6c, 0x69, 0x6e, 0x65, 0x13, 0x00, 0x36, 0x6e, 0x79, +0x20, 0x05, 0x01, 0x08, 0x03, 0x01, 0xf0, 0x06, 0x20, 0x64, +0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x75, +0x6e, 0x74, 0x69, 0x6c, 0x20, 0x68, 0x69, 0x74, 0x74, 0x49, +0x00, 0x51, 0x61, 0x20, 0x77, 0x61, 0x6c, 0x2b, 0x00, 0x19, +0x61, 0x5c, 0x01, 0x17, 0x3b, 0xdf, 0x01, 0x02, 0xd4, 0x00, +0x00, 0x10, 0x00, 0x06, 0xa2, 0x01, 0x80, 0x69, 0x6e, 0x63, +0x6c, 0x75, 0x64, 0x65, 0x64, 0x77, 0x00, 0x06, 0xd0, 0x00, +0x50, 0x28, 0x6f, 0x6e, 0x63, 0x65, 0x6d, 0x01, 0xf4, 0x00, +0x46, 0x6f, 0x72, 0x20, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, +0x63, 0x65, 0x2c, 0x20, 0x61, 0x49, 0x00, 0x03, 0x62, 0x02, +0x00, 0x79, 0x00, 0x07, 0x4f, 0x00, 0x82, 0x6f, 0x6e, 0x65, +0x20, 0x6d, 0x75, 0x73, 0x74, 0xa6, 0x02, 0x10, 0x66, 0x64, +0x02, 0x0b, 0xe7, 0x01, 0xf1, 0x04, 0x73, 0x20, 0x69, 0x74, +0x73, 0x20, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, +0x72, 0x73, 0x20, 0x62, 0x79, 0x41, 0x00, 0x44, 0x6c, 0x61, +0x73, 0x74, 0x63, 0x02, 0x70, 0x6f, 0x6e, 0x3b, 0x20, 0x62, +0x75, 0x74, 0x18, 0x00, 0xe1, 0x6e, 0x20, 0x69, 0x74, 0x27, +0x73, 0x20, 0x69, 0x6d, 0x70, 0x6f, 0x73, 0x73, 0x69, 0x47, +0x01, 0x00, 0x90, 0x00, 0x10, 0x74, 0xc5, 0x02, 0x11, 0x62, +0x86, 0x00, 0x60, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x10, +0x00, 0x00, 0x34, 0x01, 0x79, 0x6f, 0x75, 0x74, 0x73, 0x69, +0x64, 0x65, 0x85, 0x01, 0x10, 0x2c, 0x0e, 0x00, 0x84, 0x63, +0x68, 0x20, 0x76, 0x69, 0x6f, 0x6c, 0x61, 0xb6, 0x01, 0x51, +0x73, 0x65, 0x63, 0x6f, 0x6e, 0x37, 0x00, 0x0a, 0x7a, 0x00, +0x49, 0x2e, 0x20, 0x53, 0x6f, 0xd0, 0x02, 0x25, 0x6c, 0x6c, +0x4e, 0x03, 0x0a, 0xe9, 0x00, 0x91, 0x2e, 0x20, 0x0a, 0x43, +0x72, 0x65, 0x64, 0x69, 0x74, 0x93, 0x00, 0xa0, 0x74, 0x68, +0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0xd9, 0x01, +0x11, 0x65, 0x66, 0x03, 0x60, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, +0x69, 0x7f, 0x00, 0x12, 0x6f, 0x11, 0x01, 0xa0, 0x76, 0x61, +0x72, 0x69, 0x6f, 0x75, 0x73, 0x6c, 0x79, 0x20, 0xcc, 0x02, +0x00, 0x73, 0x01, 0xd2, 0x74, 0x20, 0x60, 0x4b, 0x75, 0x72, +0x6f, 0x64, 0x6f, 0x6b, 0x6f, 0x27, 0x2c, 0x0c, 0x00, 0x50, +0x6d, 0x61, 0x73, 0x75, 0x27, 0xc7, 0x01, 0x24, 0x60, 0x57, +0xcb, 0x02, 0x11, 0x42, 0x44, 0x01, 0xf2, 0x00, 0x43, 0x65, +0x6c, 0x6c, 0x73, 0x27, 0x2e, 0x20, 0x5b, 0x31, 0x38, 0x5d, +0x2e, 0x20, 0x0a, 0x14, 0x04, 0x22, 0x77, 0x61, 0xee, 0x03, +0x43, 0x72, 0x69, 0x62, 0x75, 0x08, 0x01, 0x22, 0x74, 0x68, +0x78, 0x03, 0x13, 0x6c, 0x27, 0x02, 0xf0, 0x04, 0x62, 0x79, +0x20, 0x4a, 0x6f, 0x6e, 0x61, 0x73, 0x20, 0x4b, 0x6f, 0x65, +0x6c, 0x6b, 0x65, 0x72, 0x2e, 0x20, 0x0a, 0x43, 0x00, 0xd1, +0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, +0x77, 0x2e, 0x6e, 0xaa, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, +0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, 0xc9, 0x00, 0x30, 0x73, +0x2f, 0x77, 0x82, 0x00, 0x41, 0x5f, 0x69, 0x73, 0x5f, 0xc6, +0x01, 0x20, 0x5f, 0x63, 0x82, 0x00, 0xd3, 0x2e, 0x68, 0x74, +0x6d, 0x6c, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x35, 0x2e, 0x31, +0x9a, 0x04, 0x01, 0x82, 0x00, 0xa6, 0x6f, 0x6c, 0x73, 0x20, +0x0a, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x67, 0x02, 0x40, 0x6c, +0x65, 0x66, 0x74, 0xcc, 0x01, 0x30, 0x74, 0x6f, 0x6e, 0x9b, +0x00, 0x56, 0x70, 0x61, 0x69, 0x6e, 0x74, 0x45, 0x02, 0x03, +0x6c, 0x04, 0x26, 0x6f, 0x72, 0x31, 0x00, 0x11, 0x72, 0x07, +0x03, 0x06, 0x32, 0x00, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x20, +0x61, 0x93, 0x03, 0x21, 0x64, 0x6f, 0x01, 0x02, 0x82, 0x69, +0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x56, 0x03, 0x32, +0x79, 0x6f, 0x75, 0x9b, 0x04, 0x10, 0x75, 0x35, 0x01, 0xe0, +0x74, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x5f, +0x6e, 0x6f, 0x74, 0x5f, 0x2c, 0x02, 0x01, 0x7c, 0x00, 0x06, +0x89, 0x04, 0x50, 0x52, 0x65, 0x70, 0x65, 0x61, 0x10, 0x00, +0x10, 0x63, 0xb2, 0x00, 0x00, 0xc8, 0x02, 0x01, 0x5d, 0x00, +0x20, 0x65, 0x69, 0x41, 0x04, 0x04, 0x81, 0x00, 0x02, 0xff, +0x01, 0x48, 0x79, 0x63, 0x6c, 0x65, 0x45, 0x03, 0x62, 0x74, +0x68, 0x72, 0x6f, 0x75, 0x67, 0xb0, 0x00, 0x65, 0x74, 0x68, +0x72, 0x65, 0x65, 0x20, 0x9e, 0x02, 0x21, 0x73, 0x74, 0x62, +0x02, 0x30, 0x28, 0x66, 0x69, 0xe0, 0x01, 0x10, 0x2c, 0xaa, +0x00, 0x00, 0x64, 0x00, 0x00, 0x5a, 0x04, 0x50, 0x6d, 0x70, +0x74, 0x79, 0x29, 0x65, 0x03, 0x50, 0x6f, 0x70, 0x70, 0x6f, +0x73, 0x9f, 0x02, 0x05, 0xca, 0x03, 0x22, 0x73, 0x2e, 0xdc, +0x05, 0xb2, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c, 0x73, 0x6f, +0x20, 0x75, 0x73, 0x71, 0x00, 0xa1, 0x63, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x51, 0x02, 0x20, 0x6d, +0x6f, 0xfc, 0x05, 0x51, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x1f, +0x00, 0x01, 0x05, 0x06, 0x05, 0xc3, 0x04, 0x41, 0x50, 0x72, +0x65, 0x73, 0xe0, 0x04, 0x94, 0x52, 0x65, 0x74, 0x75, 0x72, +0x6e, 0x20, 0x64, 0x6f, 0xec, 0x02, 0x30, 0x61, 0x6d, 0x65, +0x7a, 0x03, 0x0a, 0xea, 0x00, 0x0b, 0x9f, 0x01, 0x01, 0x26, +0x03, 0x44, 0x6c, 0x65, 0x20, 0x70, 0x46, 0x00, 0x5e, 0x53, +0x70, 0x61, 0x63, 0x65, 0x45, 0x00, 0x1a, 0x61, 0xa3, 0x01, +0x01, 0x54, 0x00, 0x59, 0x2e, 0x20, 0x4d, 0x6f, 0x76, 0x59, +0x00, 0x08, 0xb9, 0x00, 0x02, 0x58, 0x00, 0x41, 0x68, 0x6f, +0x6c, 0x64, 0x57, 0x00, 0x42, 0x68, 0x69, 0x66, 0x74, 0x59, +0x01, 0x22, 0x70, 0x6c, 0x62, 0x00, 0x21, 0x74, 0x73, 0xf3, +0x04, 0x25, 0x6c, 0x6c, 0x27, 0x04, 0x01, 0xd1, 0x01, 0x00, +0x6b, 0x01, 0x00, 0xf2, 0x00, 0x14, 0x64, 0x71, 0x01, 0x71, +0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x61, 0x00, 0x12, +0x61, 0x39, 0x01, 0x82, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, +0x69, 0x62, 0xbf, 0x04, 0x13, 0x73, 0xf2, 0x02, 0x32, 0x32, +0x2e, 0x31, 0x51, 0x06, 0x00, 0x4c, 0x01, 0x50, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x82, 0x05, 0x23, 0x2e, 0x29, 0xb6, 0x02, +0x13, 0x32, 0xb6, 0x02, 0xf9, 0x01, 0x70, 0x61, 0x72, 0x61, +0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x0a, 0x54, 0x68, +0x65, 0x73, 0x12, 0x00, 0x01, 0x40, 0x00, 0x04, 0x3b, 0x00, +0x04, 0xbd, 0x05, 0xf1, 0x01, 0x65, 0x20, 0x60, 0x43, 0x75, +0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, +0x70, 0x6e, 0x00, 0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xf0, 0x09, +0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, +0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, +0x2c, 0x20, 0x5f, 0x48, 0xec, 0x04, 0x71, 0x74, 0x5f, 0x20, +0x0a, 0x53, 0x69, 0x7a, 0x6e, 0x07, 0x01, 0xb6, 0x01, 0x00, +0xae, 0x00, 0xa0, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, +0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2029; const char quick_help_text[] = "Place black squares to limit the visible distance from each numbered cell."; diff --git a/apps/plugins/puzzles/help/rect.c b/apps/plugins/puzzles/help/rect.c index fa1da622e2..0397c15773 100644 --- a/apps/plugins/puzzles/help/rect.c +++ b/apps/plugins/puzzles/help/rect.c @@ -1,93 +1,245 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3534 comp 2351 ratio 0.665252 level 11 saved 1183 */ /* 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" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x4f, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x38, 0x3a, 0x20, 0x52, 0x65, 0x63, 0x74, 0x61, 0x6e, +0x67, 0x6c, 0x65, 0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, +0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, +0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, +0x65, 0x73, 0x2c, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x6e, +0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x77, 0x72, 0x69, +0x74, 0x74, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x6f, +0x6d, 0x65, 0x20, 0x28, 0x62, 0x75, 0x74, 0x20, 0x6e, 0x6f, +0x74, 0x20, 0x61, 0x6c, 0x6c, 0x29, 0x37, 0x00, 0x34, 0x74, +0x68, 0x65, 0x3b, 0x00, 0xf0, 0x0c, 0x2e, 0x20, 0x59, 0x6f, +0x75, 0x72, 0x20, 0x74, 0x61, 0x73, 0x6b, 0x20, 0x69, 0x73, +0x20, 0x74, 0x6f, 0x20, 0x73, 0x75, 0x62, 0x64, 0x69, 0x76, +0x69, 0x64, 0x65, 0x27, 0x00, 0x02, 0x6a, 0x00, 0x65, 0x69, +0x6e, 0x74, 0x6f, 0x20, 0x72, 0x8b, 0x00, 0x00, 0x43, 0x00, +0xb0, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, 0x73, +0x69, 0x7a, 0x80, 0x00, 0xf6, 0x04, 0x73, 0x75, 0x63, 0x68, +0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x28, 0x61, 0x29, 0x20, +0x65, 0x76, 0x65, 0x72, 0x79, 0x31, 0x00, 0xf3, 0x06, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x65, +0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, +0xae, 0x00, 0x23, 0x65, 0x64, 0x8a, 0x00, 0x91, 0x2c, 0x20, +0x61, 0x6e, 0x64, 0x20, 0x28, 0x62, 0x29, 0x77, 0x00, 0x40, +0x61, 0x72, 0x65, 0x61, 0x67, 0x00, 0x46, 0x65, 0x61, 0x63, +0x68, 0x49, 0x00, 0x00, 0xa2, 0x00, 0x50, 0x65, 0x71, 0x75, +0x61, 0x6c, 0xa8, 0x00, 0x24, 0x74, 0x68, 0x44, 0x00, 0x08, +0xf1, 0x00, 0x3c, 0x69, 0x74, 0x73, 0x5a, 0x00, 0xf4, 0x0d, +0x2e, 0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x20, +0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67, +0x61, 0x6d, 0x65, 0x20, 0x67, 0x6f, 0x65, 0x73, 0x49, 0x00, +0xf0, 0x19, 0x4a, 0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65, +0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x6d, 0x61, +0x67, 0x61, 0x7a, 0x69, 0x6e, 0x65, 0x20, 0x4e, 0x69, 0x6b, +0x6f, 0x6c, 0x69, 0x20, 0x5b, 0x33, 0x5d, 0x20, 0x3b, 0x20, +0x49, 0x27, 0x7e, 0x01, 0xf1, 0x14, 0x6c, 0x73, 0x6f, 0x20, +0x73, 0x65, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x50, 0x61, 0x6c, +0x6d, 0x20, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x6d, 0x65, 0x6e, +0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x61, 0x74, 0x20, +0x50, 0x45, 0x00, 0x00, 0x1e, 0x00, 0xfa, 0x00, 0x61, 0x63, +0x65, 0x20, 0x5b, 0x34, 0x5d, 0x2e, 0x20, 0x55, 0x6e, 0x6c, +0x69, 0x6b, 0x65, 0x1a, 0x00, 0x2b, 0x27, 0x73, 0x3c, 0x00, +0x91, 0x2c, 0x20, 0x6d, 0x79, 0x20, 0x76, 0x65, 0x72, 0x73, +0x48, 0x00, 0xf1, 0x0e, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, +0x69, 0x63, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x67, 0x65, 0x6e, +0x65, 0x72, 0x61, 0x74, 0x65, 0x73, 0x20, 0x72, 0x61, 0x6e, +0x64, 0x6f, 0x6d, 0x99, 0x01, 0x01, 0x8a, 0x01, 0x31, 0x61, +0x6e, 0x79, 0x86, 0x01, 0x50, 0x20, 0x79, 0x6f, 0x75, 0x20, +0x65, 0x00, 0x60, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x20, 0x27, +0x01, 0x64, 0x69, 0x74, 0x79, 0x20, 0x6f, 0x66, 0xd4, 0x00, +0x61, 0x64, 0x65, 0x73, 0x69, 0x67, 0x6e, 0xe6, 0x01, 0x81, +0x68, 0x65, 0x72, 0x65, 0x66, 0x6f, 0x72, 0x65, 0x16, 0x02, +0xd0, 0x71, 0x75, 0x69, 0x74, 0x65, 0x20, 0x61, 0x73, 0x20, +0x67, 0x6f, 0x6f, 0x64, 0x08, 0x00, 0xc3, 0x68, 0x61, 0x6e, +0x64, 0x2d, 0x63, 0x72, 0x61, 0x66, 0x74, 0x65, 0x64, 0x3d, +0x00, 0xc0, 0x73, 0x20, 0x77, 0x6f, 0x75, 0x6c, 0x64, 0x20, +0x62, 0x65, 0x2c, 0x20, 0x4e, 0x02, 0x21, 0x6f, 0x6e, 0x37, +0x01, 0x21, 0x70, 0x6c, 0x03, 0x02, 0x12, 0x64, 0x7d, 0x00, +0x50, 0x67, 0x65, 0x74, 0x20, 0x61, 0x86, 0x01, 0xf6, 0x02, +0x65, 0x78, 0x68, 0x61, 0x75, 0x73, 0x74, 0x69, 0x62, 0x6c, +0x65, 0x20, 0x73, 0x75, 0x70, 0x70, 0x6c, 0x87, 0x00, 0x00, +0x73, 0x01, 0x70, 0x61, 0x69, 0x6c, 0x6f, 0x72, 0x65, 0x64, +0x7c, 0x01, 0x10, 0x79, 0x7d, 0x02, 0xc1, 0x6f, 0x77, 0x6e, +0x20, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x63, 0x08, +0x01, 0x30, 0x2e, 0x20, 0x0a, 0x71, 0x01, 0xc1, 0x68, 0x74, +0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, +0x87, 0x01, 0xa3, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, +0x65, 0x6e, 0x2f, 0x4c, 0x00, 0xf0, 0x06, 0x2f, 0x73, 0x68, +0x69, 0x6b, 0x61, 0x6b, 0x75, 0x2e, 0x68, 0x74, 0x6d, 0x6c, +0x20, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, 0x65, 0x6c, 0x00, +0xa2, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x20, 0x0a, 0x5b, +0x34, 0x47, 0x00, 0x10, 0x73, 0x48, 0x00, 0xe0, 0x65, 0x62, +0x2e, 0x61, 0x72, 0x63, 0x68, 0x69, 0x76, 0x65, 0x2e, 0x6f, +0x72, 0x67, 0x10, 0x00, 0xf7, 0x01, 0x2f, 0x32, 0x30, 0x30, +0x34, 0x31, 0x30, 0x32, 0x34, 0x30, 0x30, 0x31, 0x34, 0x35, +0x39, 0x2f, 0x72, 0x00, 0x02, 0x62, 0x00, 0x63, 0x2e, 0x67, +0x72, 0x2e, 0x6a, 0x70, 0x6f, 0x00, 0x21, 0x2f, 0x73, 0x6d, +0x00, 0xb1, 0x2f, 0x70, 0x61, 0x6c, 0x6d, 0x2f, 0x69, 0x6e, +0x64, 0x65, 0x78, 0x78, 0x00, 0xa7, 0x2e, 0x65, 0x6e, 0x20, +0x0a, 0x0a, 0x23, 0x38, 0x2e, 0x31, 0xaf, 0x03, 0x01, 0xf4, +0x02, 0x73, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x72, +0x02, 0x01, 0xbf, 0x02, 0x61, 0x70, 0x6c, 0x61, 0x79, 0x65, +0x64, 0xb0, 0x03, 0x01, 0x42, 0x01, 0xf1, 0x12, 0x6d, 0x6f, +0x75, 0x73, 0x65, 0x20, 0x6f, 0x72, 0x20, 0x63, 0x75, 0x72, +0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x20, +0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, +0x6b, 0xe0, 0x01, 0x41, 0x65, 0x64, 0x67, 0x65, 0xab, 0x02, +0x21, 0x6f, 0x67, 0x07, 0x03, 0x00, 0x81, 0x01, 0x00, 0x35, +0x00, 0x40, 0x6f, 0x66, 0x66, 0x2c, 0x08, 0x00, 0x18, 0x6c, +0x2f, 0x00, 0x90, 0x64, 0x20, 0x64, 0x72, 0x61, 0x67, 0x20, +0x74, 0x6f, 0x08, 0x00, 0x10, 0x77, 0x92, 0x01, 0x67, 0x65, +0x6e, 0x74, 0x69, 0x72, 0x65, 0x48, 0x03, 0x10, 0x28, 0x34, +0x00, 0x78, 0x69, 0x6e, 0x65, 0x29, 0x20, 0x6f, 0x6e, 0xe7, +0x03, 0x01, 0x99, 0x03, 0xc2, 0x67, 0x6f, 0x20, 0x28, 0x72, +0x65, 0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x7e, 0x00, 0x71, +0x78, 0x69, 0x73, 0x74, 0x69, 0x6e, 0x67, 0x87, 0x00, 0x11, +0x73, 0xbc, 0x00, 0x21, 0x69, 0x6e, 0xee, 0x03, 0x06, 0x53, +0x00, 0x73, 0x29, 0x2e, 0x20, 0x52, 0x69, 0x67, 0x68, 0x86, +0x00, 0x35, 0x69, 0x6e, 0x67, 0x89, 0x00, 0x10, 0x67, 0x0d, +0x00, 0x40, 0x77, 0x69, 0x6c, 0x6c, 0x7f, 0x04, 0x20, 0x6f, +0x77, 0xf3, 0x01, 0x00, 0x9c, 0x00, 0x40, 0x65, 0x72, 0x61, +0x73, 0x63, 0x04, 0x02, 0x1e, 0x04, 0x32, 0x65, 0x6e, 0x74, +0xcd, 0x02, 0x06, 0x52, 0x00, 0x01, 0x68, 0x00, 0x90, 0x6f, +0x75, 0x74, 0x20, 0x61, 0x66, 0x66, 0x65, 0x63, 0x80, 0x00, +0x00, 0xdd, 0x03, 0x01, 0x84, 0x00, 0x00, 0x22, 0x01, 0xf2, +0x01, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, +0x76, 0x65, 0x6c, 0x79, 0x2c, 0x20, 0x75, 0x4d, 0x00, 0x07, +0x47, 0x01, 0x01, 0xdc, 0x03, 0x42, 0x6d, 0x6f, 0x76, 0x65, +0xaa, 0x02, 0x31, 0x6f, 0x73, 0x69, 0x9f, 0x03, 0x30, 0x69, +0x6e, 0x64, 0x66, 0x02, 0x91, 0x6f, 0x72, 0x20, 0x61, 0x72, +0x6f, 0x75, 0x6e, 0x64, 0x1e, 0x00, 0xc0, 0x62, 0x6f, 0x61, +0x72, 0x64, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0x69, +0x00, 0x20, 0x74, 0x68, 0x2e, 0x01, 0x40, 0x74, 0x75, 0x72, +0x6e, 0x4a, 0x00, 0x00, 0x0f, 0x00, 0x12, 0x6e, 0xbe, 0x00, +0x13, 0x73, 0xbf, 0x00, 0x0f, 0x70, 0x00, 0x04, 0x01, 0xf1, +0x00, 0x09, 0xc5, 0x00, 0x00, 0xc1, 0x00, 0x41, 0x66, 0x72, +0x6f, 0x6d, 0x2f, 0x01, 0x05, 0x86, 0x00, 0x02, 0xed, 0x04, +0x1f, 0x70, 0x6f, 0x00, 0x04, 0x80, 0x61, 0x67, 0x61, 0x69, +0x6e, 0x20, 0x63, 0x6f, 0x1c, 0x04, 0x20, 0x74, 0x65, 0xaf, +0x03, 0x07, 0xbc, 0x01, 0x35, 0x2e, 0x20, 0x55, 0x34, 0x00, +0x20, 0x73, 0x70, 0x60, 0x04, 0xa0, 0x62, 0x61, 0x72, 0x20, +0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x14, 0x06, 0x0b, 0x4d, +0x00, 0x03, 0xb7, 0x00, 0x0f, 0x76, 0x01, 0x32, 0x10, 0x2c, +0x1d, 0x04, 0x57, 0x61, 0x62, 0x6f, 0x76, 0x65, 0x2b, 0x01, +0xf1, 0x01, 0x65, 0x73, 0x63, 0x61, 0x70, 0x65, 0x20, 0x63, +0x61, 0x6e, 0x63, 0x65, 0x6c, 0x73, 0x20, 0x61, 0x03, 0x01, +0x7a, 0x2e, 0x20, 0x0a, 0x57, 0x68, 0x65, 0x6e, 0x0a, 0x01, +0x13, 0x66, 0x78, 0x00, 0x10, 0x72, 0x14, 0x00, 0x02, 0xb3, +0x04, 0x25, 0x69, 0x73, 0xe7, 0x00, 0x52, 0x64, 0x2c, 0x20, +0x69, 0x74, 0x28, 0x02, 0xf2, 0x01, 0x62, 0x65, 0x20, 0x73, +0x68, 0x61, 0x64, 0x65, 0x64, 0x2e, 0x20, 0x0a, 0x28, 0x41, +0x6c, 0x6c, 0x12, 0x06, 0x10, 0x63, 0x39, 0x01, 0x10, 0x73, +0xc6, 0x04, 0x61, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0xdf, +0x06, 0x21, 0x65, 0x63, 0xd5, 0x01, 0x63, 0x32, 0x2e, 0x31, +0x20, 0x61, 0x72, 0x9c, 0x05, 0xb2, 0x61, 0x76, 0x61, 0x69, +0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x98, 0x03, 0x18, +0x32, 0x98, 0x03, 0x91, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, +0x74, 0x65, 0x72, 0x9a, 0x03, 0x37, 0x65, 0x73, 0x65, 0x12, +0x00, 0x00, 0x44, 0x00, 0x06, 0x3f, 0x00, 0x04, 0xb8, 0x01, +0xf0, 0x01, 0x65, 0x20, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, +0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x72, 0x00, +0x04, 0x38, 0x03, 0xf0, 0x0b, 0x60, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, +0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, +0x65, 0x0d, 0x03, 0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, +0xfb, 0x00, 0x00, 0x61, 0x03, 0x00, 0xe2, 0x00, 0x16, 0x6e, +0x78, 0x07, 0x71, 0x0a, 0x5f, 0x45, 0x78, 0x70, 0x61, 0x6e, +0xec, 0x05, 0x73, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x5f, +0x2c, 0x04, 0x10, 0x69, 0x47, 0x01, 0x91, 0x6d, 0x65, 0x63, +0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0xb6, 0x06, 0x00, 0x0c, +0x00, 0x14, 0x67, 0xf7, 0x01, 0x35, 0x74, 0x79, 0x70, 0x54, +0x00, 0x15, 0x73, 0x1a, 0x06, 0x42, 0x64, 0x20, 0x62, 0x79, +0xeb, 0x02, 0x90, 0x72, 0x6f, 0x67, 0x72, 0x61, 0x6d, 0x2e, +0x20, 0x53, 0xfd, 0x07, 0x60, 0x70, 0x65, 0x6f, 0x70, 0x6c, +0x65, 0x6c, 0x02, 0x33, 0x66, 0x65, 0x72, 0x3b, 0x08, 0x04, +0x91, 0x07, 0x01, 0xa7, 0x03, 0x96, 0x20, 0x66, 0x65, 0x77, +0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x02, 0x01, 0x18, 0x07, +0x00, 0x0c, 0x04, 0x08, 0x29, 0x00, 0x11, 0x6d, 0x69, 0x06, +0x70, 0x6d, 0x61, 0x6c, 0x6c, 0x20, 0x6f, 0x6e, 0xc1, 0x00, +0x11, 0x53, 0xbf, 0x05, 0x00, 0xfa, 0x01, 0x10, 0x20, 0x3e, +0x08, 0x19, 0x52, 0x3d, 0x00, 0x30, 0x65, 0x73, 0x73, 0x76, +0x04, 0x08, 0xbc, 0x06, 0x00, 0xb9, 0x08, 0x11, 0x5f, 0x41, +0x00, 0x31, 0x65, 0x72, 0x5f, 0x88, 0x00, 0x00, 0x15, 0x03, +0x01, 0x48, 0x01, 0x05, 0xc1, 0x06, 0x04, 0x08, 0x06, 0x21, +0x65, 0x64, 0x23, 0x03, 0x01, 0x7a, 0x03, 0x01, 0x4f, 0x00, +0x20, 0x78, 0x70, 0x0f, 0x00, 0x20, 0x69, 0x74, 0xe5, 0x00, +0x30, 0x61, 0x64, 0x64, 0x91, 0x00, 0x10, 0x72, 0xd8, 0x02, +0x20, 0x61, 0x6e, 0xce, 0x00, 0x60, 0x6c, 0x75, 0x6d, 0x6e, +0x73, 0x2e, 0x3f, 0x01, 0x00, 0xe7, 0x06, 0x7b, 0x66, 0x61, +0x75, 0x6c, 0x74, 0x20, 0x65, 0x5e, 0x01, 0x00, 0x32, 0x01, +0xa1, 0x7a, 0x65, 0x72, 0x6f, 0x20, 0x6d, 0x65, 0x61, 0x6e, +0x73, 0x90, 0x03, 0x07, 0xb4, 0x00, 0x02, 0x7a, 0x02, 0x46, +0x73, 0x69, 0x6d, 0x70, 0xb1, 0x00, 0x07, 0x6a, 0x09, 0x09, +0xa5, 0x00, 0x00, 0xef, 0x00, 0x00, 0x96, 0x01, 0x12, 0x2c, +0xe4, 0x04, 0x10, 0x6f, 0x46, 0x07, 0x10, 0x68, 0x92, 0x00, +0x30, 0x66, 0x75, 0x72, 0x5b, 0x07, 0x42, 0x2e, 0x20, 0x49, +0x66, 0xcd, 0x00, 0x01, 0x11, 0x07, 0x0f, 0x8a, 0x00, 0x02, +0x90, 0x28, 0x73, 0x61, 0x79, 0x29, 0x20, 0x30, 0x2e, 0x35, +0xf7, 0x02, 0x07, 0x93, 0x00, 0x02, 0xf2, 0x08, 0x42, 0x64, +0x69, 0x6d, 0x65, 0x32, 0x00, 0x25, 0x6f, 0x66, 0xa0, 0x05, +0x04, 0x1d, 0x03, 0x03, 0x0d, 0x01, 0x02, 0x41, 0x07, 0x42, +0x68, 0x61, 0x6c, 0x66, 0x31, 0x04, 0x00, 0x9d, 0x03, 0x40, +0x62, 0x69, 0x67, 0x20, 0xb7, 0x07, 0x12, 0x72, 0xc3, 0x00, +0x03, 0x4d, 0x07, 0x60, 0x49, 0x6e, 0x20, 0x6f, 0x74, 0x68, +0x28, 0x09, 0x51, 0x6f, 0x72, 0x64, 0x73, 0x2c, 0x51, 0x00, +0x30, 0x69, 0x6e, 0x69, 0x9e, 0x01, 0x0a, 0x59, 0x00, 0x36, +0x32, 0x2f, 0x33, 0xe9, 0x00, 0x28, 0x69, 0x6e, 0x8c, 0x00, +0x03, 0xb5, 0x04, 0x0f, 0x85, 0x00, 0x02, 0x01, 0x22, 0x04, +0x21, 0x66, 0x75, 0x40, 0x01, 0x17, 0x7a, 0x42, 0x04, 0x24, +0x64, 0x64, 0x42, 0x06, 0x27, 0x6d, 0x6f, 0x7f, 0x06, 0x01, +0xfd, 0x02, 0x30, 0x53, 0x65, 0x74, 0x5d, 0x04, 0x0f, 0x1f, +0x01, 0x04, 0x03, 0x9c, 0x05, 0x00, 0x20, 0x01, 0x52, 0x20, +0x74, 0x65, 0x6e, 0x64, 0xcc, 0x05, 0x21, 0x61, 0x6b, 0xbb, +0x04, 0x01, 0x4c, 0x07, 0x02, 0x53, 0x00, 0x91, 0x64, 0x69, +0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x9c, 0x00, 0x02, +0xff, 0x03, 0x60, 0x28, 0x69, 0x6e, 0x20, 0x6d, 0x79, 0x56, +0x00, 0xa0, 0x65, 0x72, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x29, +0x20, 0x72, 0x18, 0x08, 0x10, 0x64, 0x56, 0x03, 0x30, 0x6c, +0x65, 0x73, 0x43, 0x04, 0x30, 0x64, 0x75, 0x63, 0x39, 0x06, +0x00, 0x35, 0x00, 0x01, 0x49, 0x00, 0x00, 0xe2, 0x0a, 0x20, +0x75, 0x69, 0x13, 0x00, 0x01, 0xa1, 0x07, 0x00, 0x99, 0x00, +0x58, 0x73, 0x74, 0x79, 0x6c, 0x65, 0xca, 0x01, 0x00, 0xa8, +0x01, 0xc0, 0x5f, 0x74, 0x6f, 0x6f, 0x5f, 0x20, 0x68, 0x69, +0x67, 0x68, 0x2c, 0x20, 0xe5, 0x00, 0x35, 0x67, 0x68, 0x2c, +0x92, 0x00, 0x03, 0x3d, 0x02, 0x00, 0x10, 0x03, 0x34, 0x6e, +0x6f, 0x74, 0x81, 0x01, 0x02, 0xa9, 0x00, 0x01, 0xe9, 0x02, +0x02, 0x6b, 0x03, 0x0b, 0x65, 0x03, 0x50, 0x63, 0x6f, 0x76, +0x65, 0x72, 0x44, 0x00, 0x02, 0xa5, 0x07, 0x01, 0xea, 0x01, +0x02, 0xfc, 0x02, 0x06, 0x59, 0x00, 0x50, 0x62, 0x65, 0x63, +0x6f, 0x6d, 0x2f, 0x00, 0x61, 0x72, 0x69, 0x76, 0x69, 0x61, +0x6c, 0x3b, 0x04, 0xf0, 0x02, 0x6e, 0x73, 0x75, 0x72, 0x65, +0x20, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x20, 0x73, 0x6f, +0x6c, 0x75, 0xeb, 0x01, 0x70, 0x5f, 0x20, 0x0a, 0x4e, 0x6f, +0x72, 0x6d, 0x75, 0x03, 0x1c, 0x2c, 0xdc, 0x02, 0x02, 0x3f, +0x01, 0x00, 0x36, 0x00, 0x01, 0x68, 0x02, 0x00, 0x5e, 0x00, +0x05, 0x92, 0x09, 0x21, 0x69, 0x74, 0x8c, 0x06, 0x00, 0x0f, +0x06, 0x02, 0x62, 0x0c, 0x21, 0x6f, 0x6e, 0xa5, 0x0b, 0x06, +0x5a, 0x00, 0x13, 0x2e, 0xba, 0x0a, 0x12, 0x73, 0xba, 0x08, +0x61, 0x61, 0x6d, 0x62, 0x69, 0x67, 0x75, 0x00, 0x0c, 0x12, +0x65, 0x98, 0x05, 0x01, 0x07, 0x04, 0x1c, 0x62, 0x97, 0x01, +0x05, 0x61, 0x01, 0x00, 0x56, 0x0c, 0xa5, 0x74, 0x6c, 0x65, +0x2c, 0x20, 0x73, 0x6f, 0x20, 0x69, 0x66, 0xab, 0x0a, 0x05, +0x41, 0x04, 0x00, 0xaf, 0x06, 0x00, 0xce, 0x08, 0x02, 0x9f, +0x0b, 0x62, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x9f, 0x01, +0x70, 0x72, 0x69, 0x73, 0x6b, 0x20, 0x68, 0x61, 0x8d, 0x08, +0x06, 0x77, 0x00, 0x04, 0xba, 0x00, 0xb1, 0x2e, 0x20, 0x41, +0x6c, 0x73, 0x6f, 0x2c, 0x20, 0x66, 0x69, 0x6e, 0x6c, 0x02, +0x54, 0x5f, 0x61, 0x6c, 0x6c, 0x5f, 0xf0, 0x07, 0x42, 0x73, +0x69, 0x62, 0x6c, 0xc2, 0x00, 0x09, 0xa2, 0x00, 0x20, 0x61, +0x6e, 0x9a, 0x02, 0x01, 0x87, 0x07, 0x50, 0x61, 0x6c, 0x20, +0x63, 0x68, 0x90, 0x04, 0x30, 0x6e, 0x67, 0x65, 0xd1, 0x03, +0x02, 0x1c, 0x00, 0x10, 0x76, 0xcb, 0x06, 0x11, 0x64, 0x09, +0x02, 0x00, 0xcc, 0x03, 0x30, 0x54, 0x75, 0x72, 0x00, 0x05, +0x05, 0x9e, 0x00, 0x03, 0x02, 0x06, 0x00, 0x4f, 0x00, 0x03, +0x0c, 0x0c, 0x73, 0x70, 0x65, 0x65, 0x64, 0x20, 0x75, 0x70, +0x95, 0x00, 0x06, 0x7b, 0x03, 0x50, 0x6e, 0x2e, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 3534; const char quick_help_text[] = "Divide the grid into rectangles with areas equal to the numbers."; diff --git a/apps/plugins/puzzles/help/samegame.c b/apps/plugins/puzzles/help/samegame.c index 288493f7fd..a4968f05de 100644 --- a/apps/plugins/puzzles/help/samegame.c +++ b/apps/plugins/puzzles/help/samegame.c @@ -1,76 +1,172 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2464 comp 1626 ratio 0.659903 level 11 saved 838 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 13: Same Game " -"\n" -"You have a grid of coloured squares, which you have to clear by " -"highlighting contiguous regions of more than one coloured square; " -"the larger the region you highlight, the more points you get (and " -"the faster you clear the arena). " -"\n" -"If you clear the grid you win. If you end up with nothing but single " -"squares (i.e., there are no more clickable regions left) you lose. " -"\n" -"Removing a region causes the rest of the grid to shuffle up: blocks " -"that are suspended will fall down (first), and then empty columns " -"are filled from the right. " -"\n" -"Same Game was contributed to this collection by James Harvey. " -"\n" -"\n#13.1 Same Game controls " -"\n" -"This game can be played with either the keyboard or the mouse. " -"\n" -"If you left-click an unselected region, it becomes selected " -"(possibly clearing the current selection). " -"\n" -"If you left-click the selected region, it will be removed (and the " -"rest of the grid shuffled immediately). " -"\n" -"If you right-click the selected region, it will be unselected. " -"\n" -"The cursor keys move a cursor around the grid. Pressing the Space or " -"Enter keys while the cursor is in an unselected region selects it; " -"pressing Space or Enter again removes it as above. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#13.2 Same Game parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_No. of colours_ " -"\n" -"Number of different colours used to fill the grid; the more " -"colours, the fewer large regions of colour and thus the more " -"difficult it is to successfully clear the grid. " -"\n" -"_Scoring system_ " -"\n" -"Controls the precise mechanism used for scoring. With the " -"default system, `(n-2)^2', only regions of three squares or more " -"will score any points at all. With the alternative `(n-1)^2' " -"system, regions of two squares score a point each, and larger " -"regions score relatively more points. " -"\n" -"_Ensure solubility_ " -"\n" -"If this option is ticked (the default state), generated grids " -"will be guaranteed to have at least one solution. " -"\n" -"If you turn it off, the game generator will not try to guarantee " -"soluble grids; it will, however, still ensure that there are at " -"least 2 squares of each colour on the grid at the start (since a " -"grid with exactly one square of a given colour is _definitely_ " -"insoluble). Grids generated with this option disabled may " -"contain more large areas of contiguous colour, leading to " -"opportunities for higher scores; they can also take less time to " -"generate. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x04, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x33, 0x3a, 0x20, 0x53, 0x61, 0x6d, 0x65, 0x20, +0x47, 0x05, 0x00, 0xf4, 0x1e, 0x0a, 0x59, 0x6f, 0x75, 0x20, +0x68, 0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, +0x64, 0x20, 0x6f, 0x66, 0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, +0x72, 0x65, 0x64, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, +0x73, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, 0x79, +0x2b, 0x00, 0xf0, 0x1c, 0x74, 0x6f, 0x20, 0x63, 0x6c, 0x65, +0x61, 0x72, 0x20, 0x62, 0x79, 0x20, 0x68, 0x69, 0x67, 0x68, +0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x63, +0x6f, 0x6e, 0x74, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x20, +0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x50, 0x00, 0xdc, +0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, 0x6e, 0x20, +0x6f, 0x6e, 0x65, 0x5e, 0x00, 0xc0, 0x3b, 0x20, 0x74, 0x68, +0x65, 0x20, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x0b, 0x00, +0x03, 0x39, 0x00, 0x00, 0x6d, 0x00, 0x06, 0x5c, 0x00, 0x10, +0x2c, 0x1a, 0x00, 0x02, 0x48, 0x00, 0x61, 0x70, 0x6f, 0x69, +0x6e, 0x74, 0x73, 0x1f, 0x00, 0x81, 0x67, 0x65, 0x74, 0x20, +0x28, 0x61, 0x6e, 0x64, 0x1d, 0x00, 0x60, 0x66, 0x61, 0x73, +0x74, 0x65, 0x72, 0x18, 0x00, 0x01, 0x9c, 0x00, 0x02, 0x4c, +0x00, 0xba, 0x61, 0x72, 0x65, 0x6e, 0x61, 0x29, 0x2e, 0x20, +0x0a, 0x49, 0x66, 0x1a, 0x00, 0x01, 0xec, 0x00, 0x01, 0x13, +0x00, 0x53, 0x77, 0x69, 0x6e, 0x2e, 0x20, 0x1f, 0x00, 0xf0, +0x01, 0x65, 0x6e, 0x64, 0x20, 0x75, 0x70, 0x20, 0x77, 0x69, +0x74, 0x68, 0x20, 0x6e, 0x6f, 0x74, 0x68, 0xd3, 0x00, 0xa4, +0x62, 0x75, 0x74, 0x20, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, +0x0f, 0x01, 0x61, 0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x93, +0x00, 0x11, 0x72, 0x63, 0x00, 0x32, 0x20, 0x6e, 0x6f, 0x9c, +0x00, 0x95, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x61, 0x62, 0x6c, +0x65, 0xfe, 0x00, 0x51, 0x6c, 0x65, 0x66, 0x74, 0x29, 0x5c, +0x00, 0xc0, 0x6c, 0x6f, 0x73, 0x65, 0x2e, 0x20, 0x0a, 0x52, +0x65, 0x6d, 0x6f, 0x76, 0x58, 0x00, 0x14, 0x61, 0xe9, 0x00, +0x63, 0x63, 0x61, 0x75, 0x73, 0x65, 0x73, 0xfb, 0x00, 0x55, +0x73, 0x74, 0x20, 0x6f, 0x66, 0xa1, 0x00, 0x00, 0x69, 0x01, +0xf0, 0x03, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x20, +0x75, 0x70, 0x3a, 0x20, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, +0x4b, 0x01, 0x11, 0x74, 0x78, 0x00, 0xf3, 0x13, 0x73, 0x75, +0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x20, 0x77, 0x69, +0x6c, 0x6c, 0x20, 0x66, 0x61, 0x6c, 0x6c, 0x20, 0x64, 0x6f, +0x77, 0x6e, 0x20, 0x28, 0x66, 0x69, 0x72, 0x73, 0x74, 0x29, +0x2c, 0x20, 0x1e, 0x01, 0x70, 0x6e, 0x20, 0x65, 0x6d, 0x70, +0x74, 0x79, 0x7c, 0x01, 0x41, 0x75, 0x6d, 0x6e, 0x73, 0x3d, +0x00, 0xb2, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x66, +0x72, 0x6f, 0x6d, 0x7d, 0x00, 0x00, 0x69, 0x01, 0x36, 0x2e, +0x20, 0x0a, 0x1c, 0x02, 0x31, 0x77, 0x61, 0x73, 0xd2, 0x01, +0x61, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x8e, 0x00, 0x40, +0x74, 0x68, 0x69, 0x73, 0x46, 0x00, 0x70, 0x6c, 0x65, 0x63, +0x74, 0x69, 0x6f, 0x6e, 0x01, 0x02, 0xf6, 0x06, 0x4a, 0x61, +0x6d, 0x65, 0x73, 0x20, 0x48, 0x61, 0x72, 0x76, 0x65, 0x79, +0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x31, 0x33, 0x2e, 0x31, 0x62, +0x02, 0x02, 0x42, 0x00, 0x60, 0x6f, 0x6c, 0x73, 0x20, 0x0a, +0x54, 0x3d, 0x00, 0x11, 0x67, 0x14, 0x00, 0xc2, 0x61, 0x6e, +0x20, 0x62, 0x65, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, +0x70, 0x01, 0x43, 0x65, 0x69, 0x74, 0x68, 0x02, 0x02, 0xb3, +0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x20, 0x6f, +0x72, 0xf8, 0x01, 0x35, 0x75, 0x73, 0x65, 0xc5, 0x01, 0x01, +0x54, 0x01, 0x11, 0x2d, 0x6b, 0x01, 0x80, 0x20, 0x61, 0x6e, +0x20, 0x75, 0x6e, 0x73, 0x65, 0x8e, 0x00, 0x23, 0x65, 0x64, +0x51, 0x01, 0x90, 0x2c, 0x20, 0x69, 0x74, 0x20, 0x62, 0x65, +0x63, 0x6f, 0x97, 0x00, 0x05, 0x1c, 0x00, 0x92, 0x28, 0x70, +0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x79, 0x04, 0x02, 0x31, +0x69, 0x6e, 0x67, 0x5b, 0x00, 0xa3, 0x63, 0x75, 0x72, 0x72, +0x65, 0x6e, 0x74, 0x20, 0x73, 0x65, 0xd2, 0x00, 0x1f, 0x29, +0x68, 0x00, 0x01, 0x01, 0x2b, 0x00, 0x0f, 0x67, 0x00, 0x00, +0x01, 0x77, 0x01, 0x00, 0xc9, 0x00, 0x10, 0x72, 0xd6, 0x01, +0x24, 0x65, 0x64, 0x8e, 0x02, 0x0e, 0xca, 0x01, 0x04, 0xc7, +0x01, 0xd6, 0x64, 0x20, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, +0x61, 0x74, 0x65, 0x6c, 0x79, 0x6c, 0x00, 0x01, 0x7d, 0x01, +0x0f, 0x6d, 0x00, 0x14, 0x07, 0xf2, 0x00, 0x42, 0x2e, 0x20, +0x0a, 0x54, 0xc5, 0x00, 0x30, 0x73, 0x6f, 0x72, 0x37, 0x01, +0x40, 0x73, 0x20, 0x6d, 0x6f, 0xcb, 0x03, 0x04, 0x13, 0x00, +0x65, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x86, 0x00, 0x74, +0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0xfd, 0x00, 0x50, +0x53, 0x70, 0x61, 0x63, 0x65, 0x65, 0x01, 0x42, 0x45, 0x6e, +0x74, 0x65, 0x40, 0x00, 0x00, 0xea, 0x03, 0x46, 0x6c, 0x65, +0x20, 0x74, 0x56, 0x00, 0x5f, 0x69, 0x73, 0x20, 0x69, 0x6e, +0x69, 0x01, 0x02, 0x03, 0xa5, 0x00, 0x73, 0x73, 0x20, 0x69, +0x74, 0x3b, 0x20, 0x70, 0x59, 0x00, 0x0c, 0x55, 0x00, 0x53, +0x61, 0x67, 0x61, 0x69, 0x6e, 0x20, 0x01, 0x10, 0x73, 0xc6, +0x00, 0x70, 0x61, 0x73, 0x20, 0x61, 0x62, 0x6f, 0x76, 0xd0, +0x01, 0x42, 0x28, 0x41, 0x6c, 0x6c, 0xa7, 0x03, 0x21, 0x63, +0x74, 0x2e, 0x03, 0x90, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, +0x62, 0x65, 0x64, 0x73, 0x00, 0x13, 0x73, 0x63, 0x02, 0x31, +0x32, 0x2e, 0x31, 0xb0, 0x02, 0xa0, 0x61, 0x6c, 0x73, 0x6f, +0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x62, 0x03, 0x23, 0x2e, +0x29, 0x6b, 0x02, 0x17, 0x32, 0x6b, 0x02, 0xa1, 0x70, 0x61, +0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x19, 0x01, +0x17, 0x73, 0x12, 0x00, 0x01, 0xf4, 0x02, 0x06, 0x3f, 0x00, +0x06, 0xf7, 0x02, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, +0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x72, 0x00, +0x22, 0x6f, 0x6e, 0x1a, 0x00, 0xf0, 0x0a, 0x54, 0x79, 0x70, +0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, +0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, +0x48, 0x65, 0xad, 0x01, 0xa2, 0x5f, 0x20, 0x0a, 0x53, 0x69, +0x7a, 0x65, 0x20, 0x6f, 0x66, 0xe1, 0x01, 0x24, 0x69, 0x6e, +0x20, 0x04, 0x00, 0x2d, 0x00, 0x36, 0x4e, 0x6f, 0x2e, 0x4a, +0x05, 0xa0, 0x73, 0x5f, 0x20, 0x0a, 0x4e, 0x75, 0x6d, 0x62, +0x65, 0x72, 0x14, 0x00, 0x50, 0x64, 0x69, 0x66, 0x66, 0x65, +0x75, 0x02, 0x04, 0x1e, 0x00, 0x31, 0x20, 0x75, 0x73, 0x5d, +0x03, 0x01, 0x92, 0x03, 0x05, 0xac, 0x01, 0x15, 0x3b, 0xf3, +0x04, 0x04, 0x28, 0x00, 0x12, 0x2c, 0xe8, 0x04, 0x41, 0x65, +0x77, 0x65, 0x72, 0x30, 0x05, 0x05, 0x66, 0x04, 0x06, 0x6a, +0x00, 0x03, 0xf0, 0x03, 0x25, 0x75, 0x73, 0x3d, 0x00, 0x01, +0x6f, 0x00, 0x50, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x7d, 0x01, +0x21, 0x69, 0x73, 0x53, 0x04, 0xbb, 0x75, 0x63, 0x63, 0x65, +0x73, 0x73, 0x66, 0x75, 0x6c, 0x6c, 0x79, 0x13, 0x05, 0x00, +0xbc, 0x00, 0x31, 0x53, 0x63, 0x6f, 0x20, 0x03, 0xa2, 0x73, +0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x20, 0x0a, 0x43, 0xc2, +0x03, 0x01, 0x55, 0x00, 0x00, 0xe9, 0x01, 0xe2, 0x63, 0x69, +0x73, 0x65, 0x20, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, +0x73, 0x6d, 0xbf, 0x00, 0x52, 0x66, 0x6f, 0x72, 0x20, 0x73, +0x39, 0x00, 0x61, 0x2e, 0x20, 0x57, 0x69, 0x74, 0x68, 0x2d, +0x00, 0x73, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x4b, +0x00, 0xf8, 0x02, 0x2c, 0x20, 0x60, 0x28, 0x6e, 0x2d, 0x32, +0x29, 0x5e, 0x32, 0x27, 0x2c, 0x20, 0x6f, 0x6e, 0x6c, 0x79, +0xc1, 0x00, 0x46, 0x74, 0x68, 0x72, 0x65, 0x63, 0x05, 0x21, +0x6f, 0x72, 0xbe, 0x00, 0x01, 0xf4, 0x02, 0x00, 0x58, 0x00, +0x00, 0xbc, 0x01, 0x24, 0x6e, 0x79, 0xfd, 0x05, 0x00, 0xff, +0x04, 0x27, 0x6c, 0x6c, 0x68, 0x00, 0xb1, 0x61, 0x6c, 0x74, +0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x64, 0x00, +0x10, 0x31, 0x64, 0x00, 0x04, 0x76, 0x00, 0x09, 0x66, 0x00, +0x24, 0x77, 0x6f, 0x64, 0x00, 0x04, 0x57, 0x00, 0x02, 0x55, +0x00, 0x51, 0x20, 0x65, 0x61, 0x63, 0x68, 0x30, 0x05, 0x03, +0x8c, 0x06, 0x03, 0x36, 0x00, 0x04, 0x27, 0x00, 0x31, 0x72, +0x65, 0x6c, 0x5f, 0x00, 0x27, 0x6c, 0x79, 0x87, 0x06, 0x01, +0xeb, 0x01, 0x40, 0x45, 0x6e, 0x73, 0x75, 0x8c, 0x05, 0xa0, +0x6f, 0x6c, 0x75, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, +0xd6, 0x03, 0x01, 0x2a, 0x05, 0x03, 0x51, 0x02, 0x01, 0x77, +0x01, 0x30, 0x69, 0x63, 0x6b, 0x21, 0x04, 0x09, 0x16, 0x01, +0xd0, 0x74, 0x61, 0x74, 0x65, 0x29, 0x2c, 0x20, 0x67, 0x65, +0x6e, 0x65, 0x72, 0x61, 0x59, 0x03, 0x00, 0x83, 0x01, 0x15, +0x73, 0xe9, 0x03, 0x81, 0x67, 0x75, 0x61, 0x72, 0x61, 0x6e, +0x74, 0x65, 0x1e, 0x02, 0x03, 0xa5, 0x07, 0x50, 0x74, 0x20, +0x6c, 0x65, 0x61, 0x5c, 0x04, 0x12, 0x6e, 0x73, 0x00, 0x00, +0x60, 0x00, 0x06, 0x47, 0x04, 0x60, 0x74, 0x75, 0x72, 0x6e, +0x20, 0x69, 0x7a, 0x04, 0x11, 0x66, 0x2e, 0x02, 0x01, 0x6e, +0x05, 0x04, 0x60, 0x00, 0x21, 0x6f, 0x72, 0x5a, 0x00, 0x00, +0xda, 0x06, 0x75, 0x20, 0x74, 0x72, 0x79, 0x20, 0x74, 0x6f, +0x62, 0x00, 0x03, 0xbf, 0x00, 0x22, 0x6c, 0x65, 0x82, 0x00, +0x14, 0x3b, 0x6f, 0x04, 0xd0, 0x2c, 0x20, 0x68, 0x6f, 0x77, +0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x73, 0x74, 0x3c, 0x00, +0x11, 0x65, 0xed, 0x00, 0x01, 0x82, 0x06, 0x05, 0x00, 0x07, +0x07, 0x96, 0x00, 0x16, 0x32, 0xc1, 0x01, 0x11, 0x66, 0x52, +0x01, 0x04, 0x98, 0x02, 0x26, 0x6f, 0x6e, 0x0b, 0x05, 0x02, +0x3b, 0x00, 0x00, 0xfe, 0x00, 0x83, 0x72, 0x74, 0x20, 0x28, +0x73, 0x69, 0x6e, 0x63, 0x7d, 0x08, 0x04, 0x0a, 0x06, 0x93, +0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x10, +0x02, 0x00, 0x65, 0x03, 0x00, 0x22, 0x00, 0x42, 0x69, 0x76, +0x65, 0x6e, 0x51, 0x00, 0x01, 0x97, 0x04, 0x70, 0x5f, 0x64, +0x65, 0x66, 0x69, 0x6e, 0x69, 0x4a, 0x05, 0x43, 0x5f, 0x20, +0x69, 0x6e, 0xc2, 0x00, 0x40, 0x29, 0x2e, 0x20, 0x47, 0xc4, +0x00, 0x04, 0xf6, 0x00, 0x03, 0x60, 0x06, 0x09, 0x90, 0x01, +0x50, 0x64, 0x69, 0x73, 0x61, 0x62, 0x8d, 0x05, 0x31, 0x6d, +0x61, 0x79, 0xa0, 0x06, 0x30, 0x61, 0x69, 0x6e, 0xd7, 0x01, +0x02, 0x88, 0x08, 0x01, 0xd4, 0x00, 0x10, 0x61, 0xc3, 0x00, +0x07, 0xd0, 0x08, 0x03, 0x78, 0x00, 0x10, 0x2c, 0xe9, 0x00, +0x11, 0x64, 0x41, 0x05, 0xf0, 0x00, 0x6f, 0x20, 0x6f, 0x70, +0x70, 0x6f, 0x72, 0x74, 0x75, 0x6e, 0x69, 0x74, 0x69, 0x65, +0x73, 0x02, 0x03, 0x01, 0xb1, 0x08, 0x22, 0x65, 0x72, 0x33, +0x02, 0x11, 0x73, 0xc2, 0x03, 0x10, 0x79, 0xec, 0x06, 0x02, +0xbc, 0x04, 0x80, 0x74, 0x61, 0x6b, 0x65, 0x20, 0x6c, 0x65, +0x73, 0x0d, 0x02, 0x10, 0x6d, 0x45, 0x09, 0x04, 0xa3, 0x00, +0x50, 0x65, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2464; const char quick_help_text[] = "Clear the grid by removing touching groups of the same colour squares."; diff --git a/apps/plugins/puzzles/help/signpost.c b/apps/plugins/puzzles/help/signpost.c index 30885cf188..283e0d7a21 100644 --- a/apps/plugins/puzzles/help/signpost.c +++ b/apps/plugins/puzzles/help/signpost.c @@ -1,80 +1,199 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3045 comp 1899 ratio 0.623645 level 11 saved 1146 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 34: Signpost " -"\n" -"You have a grid of squares; each square (except the last one) " -"contains an arrow, and some squares also contain numbers. Your job " -"is to connect the squares to form a continuous list of numbers " -"starting at 1 and linked in the direction of the arrows - so the " -"arrow inside the square with the number 1 will point to the square " -"containing the number 2, which will point to the square containing " -"the number 3, etc. Each square can be any distance away from the " -"previous one, as long as it is somewhere in the direction of the " -"arrow. " -"\n" -"By convention the first and last numbers are shown; one or more " -"interim numbers may also appear at the beginning. " -"\n" -"Credit for this puzzle goes to Janko [17], who call it `Pfeilpfad' " -"(`arrow path'). " -"\n" -"Signpost was contributed to this collection by James Harvey. " -"\n" -"[17] http://janko.at/Raetsel/Pfeilpfad/index.htm " -"\n" -"\n#34.1 Signpost controls " -"\n" -"To play Signpost, you connect squares together by dragging from " -"one square to another, indicating that they are adjacent in the " -"sequence. Drag with the left button from a square to its successor, " -"or with the right button from a square to its predecessor. " -"\n" -"If you connect together two squares in this way and one of them has " -"a number in it, the appropriate number will appear in the other " -"square. If you connect two non-numbered squares, they will be " -"assigned temporary algebraic labels: on the first occasion, they " -"will be labelled `a' and `a+1', and then `b' and `b+1', and so on. " -"Connecting more squares on to the ends of such a chain will cause " -"them all to be labelled with the same letter. " -"\n" -"When you left-click or right-click in a square, the legal squares to " -"connect it to will be shown. " -"\n" -"The arrow in each square starts off black, and goes grey once you " -"connect the square to its successor. Also, each square which needs " -"a predecessor has a small dot in the bottom left corner, which " -"vanishes once you link a square to it. So your aim is always to " -"connect a square with a black arrow to a square with a dot. " -"\n" -"To remove any links for a particular square (both incoming and " -"outgoing), left-drag it off the grid. To remove a whole chain, " -"right-drag any square in the chain off the grid. " -"\n" -"You can also use the cursor keys to move around the grid squares " -"and lines. Pressing the return key when over a square starts a link " -"operation, and pressing the return key again over a square will " -"finish the link, if allowable. Pressing the space bar over a square " -"will show the other squares pointing to it, and allow you to form a " -"backward link, and pressing the space bar again cancels this. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#34.2 Signpost parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Force start/end to corners_ " -"\n" -"If true, the start and end squares are always placed in opposite " -"corners (the start at the top left, and the end at the bottom " -"right). If false the start and end squares are placed randomly " -"(although always both shown). " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x28, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x34, 0x3a, 0x20, 0x53, 0x69, 0x67, 0x6e, 0x70, +0x6f, 0x73, 0x74, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, +0x61, 0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, +0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, +0x73, 0x3b, 0x20, 0x65, 0x61, 0x63, 0x68, 0x0e, 0x00, 0xf4, +0x23, 0x20, 0x28, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x20, +0x74, 0x68, 0x65, 0x20, 0x6c, 0x61, 0x73, 0x74, 0x20, 0x6f, +0x6e, 0x65, 0x29, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, +0x6e, 0x73, 0x20, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x72, 0x6f, +0x77, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, 0x6f, 0x6d, +0x65, 0x47, 0x00, 0x54, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x29, +0x00, 0xf1, 0x08, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, +0x73, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x6a, 0x6f, +0x62, 0x20, 0x69, 0x73, 0x20, 0x74, 0x20, 0x00, 0x30, 0x6e, +0x65, 0x63, 0x5f, 0x00, 0x04, 0x39, 0x00, 0x01, 0x17, 0x00, +0x61, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x61, 0x3e, 0x00, 0x90, +0x69, 0x6e, 0x75, 0x6f, 0x75, 0x73, 0x20, 0x6c, 0x69, 0x7c, +0x00, 0x14, 0x66, 0x49, 0x00, 0xe1, 0x20, 0x73, 0x74, 0x61, +0x72, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x61, 0x74, 0x20, 0x31, +0x7d, 0x00, 0x91, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x20, +0x69, 0x6e, 0x4d, 0x00, 0xc0, 0x64, 0x69, 0x72, 0x65, 0x63, +0x74, 0x69, 0x6f, 0x6e, 0x20, 0x6f, 0x66, 0x11, 0x00, 0x02, +0xa7, 0x00, 0x66, 0x73, 0x20, 0x2d, 0x20, 0x73, 0x6f, 0x10, +0x00, 0x77, 0x20, 0x69, 0x6e, 0x73, 0x69, 0x64, 0x65, 0x7f, +0x00, 0x50, 0x20, 0x77, 0x69, 0x74, 0x68, 0x10, 0x00, 0x03, +0x6a, 0x00, 0xd0, 0x20, 0x31, 0x20, 0x77, 0x69, 0x6c, 0x6c, +0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x9b, 0x00, 0x06, 0x2b, +0x00, 0x04, 0xdd, 0x00, 0x38, 0x69, 0x6e, 0x67, 0x31, 0x00, +0x8f, 0x32, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x38, +0x00, 0x1d, 0x97, 0x33, 0x2c, 0x20, 0x65, 0x74, 0x63, 0x2e, +0x20, 0x45, 0x7e, 0x01, 0xf1, 0x0e, 0x63, 0x61, 0x6e, 0x20, +0x62, 0x65, 0x20, 0x61, 0x6e, 0x79, 0x20, 0x64, 0x69, 0x73, +0x74, 0x61, 0x6e, 0x63, 0x65, 0x20, 0x61, 0x77, 0x61, 0x79, +0x20, 0x66, 0x72, 0x6f, 0x6d, 0x3d, 0x00, 0x80, 0x70, 0x72, +0x65, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x98, 0x01, 0x90, 0x2c, +0x20, 0x61, 0x73, 0x20, 0x6c, 0x6f, 0x6e, 0x67, 0x08, 0x00, +0x51, 0x69, 0x74, 0x20, 0x69, 0x73, 0x92, 0x01, 0x5f, 0x77, +0x68, 0x65, 0x72, 0x65, 0x18, 0x01, 0x0b, 0x50, 0x2e, 0x20, +0x0a, 0x42, 0x79, 0x98, 0x00, 0x62, 0x76, 0x65, 0x6e, 0x74, +0x69, 0x6f, 0x2b, 0x00, 0x50, 0x66, 0x69, 0x72, 0x73, 0x74, +0x5b, 0x01, 0x01, 0xf9, 0x01, 0x05, 0x7a, 0x01, 0x00, 0x98, +0x00, 0x60, 0x73, 0x68, 0x6f, 0x77, 0x6e, 0x3b, 0x74, 0x00, +0x61, 0x20, 0x6f, 0x72, 0x20, 0x6d, 0x6f, 0x60, 0x00, 0x55, +0x74, 0x65, 0x72, 0x69, 0x6d, 0x27, 0x00, 0x32, 0x6d, 0x61, +0x79, 0x03, 0x02, 0x82, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, +0x20, 0x61, 0xe5, 0x01, 0x50, 0x62, 0x65, 0x67, 0x69, 0x6e, +0xfb, 0x00, 0x90, 0x2e, 0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, +0x69, 0x74, 0xed, 0x01, 0xf2, 0x00, 0x20, 0x74, 0x68, 0x69, +0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x67, +0x6f, 0x05, 0x02, 0xa0, 0x4a, 0x61, 0x6e, 0x6b, 0x6f, 0x20, +0x5b, 0x31, 0x37, 0x5d, 0x52, 0x01, 0x60, 0x6f, 0x20, 0x63, +0x61, 0x6c, 0x6c, 0xd7, 0x00, 0xe2, 0x60, 0x50, 0x66, 0x65, +0x69, 0x6c, 0x70, 0x66, 0x61, 0x64, 0x27, 0x20, 0x28, 0x60, +0xc8, 0x01, 0x95, 0x70, 0x61, 0x74, 0x68, 0x27, 0x29, 0x2e, +0x20, 0x0a, 0xe2, 0x02, 0x31, 0x77, 0x61, 0x73, 0x69, 0x01, +0x72, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x83, 0x01, +0x10, 0x69, 0x14, 0x00, 0x23, 0x6c, 0x6c, 0x02, 0x01, 0xf0, +0x03, 0x62, 0x79, 0x20, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, +0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x2e, 0x20, 0x0a, 0x6d, +0x00, 0x90, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, +0x6a, 0x7f, 0x00, 0xc5, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, +0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x77, 0x00, 0xf5, 0x03, +0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, +0x20, 0x0a, 0x0a, 0x23, 0x33, 0x34, 0x2e, 0x31, 0x59, 0x03, +0x02, 0x73, 0x00, 0xc5, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x1b, 0x00, 0x54, 0x2c, +0x20, 0x79, 0x6f, 0x75, 0xf1, 0x02, 0x07, 0xed, 0x02, 0x60, +0x67, 0x65, 0x74, 0x68, 0x65, 0x72, 0x8d, 0x00, 0x82, 0x64, +0x72, 0x61, 0x67, 0x67, 0x69, 0x6e, 0x67, 0xde, 0x01, 0x24, +0x6f, 0x6e, 0x31, 0x02, 0x00, 0xbc, 0x00, 0x30, 0x61, 0x6e, +0x6f, 0x27, 0x00, 0x92, 0x2c, 0x20, 0x69, 0x6e, 0x64, 0x69, +0x63, 0x61, 0x74, 0x3d, 0x02, 0x02, 0x55, 0x01, 0x11, 0x79, +0x94, 0x01, 0x84, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, +0x74, 0xea, 0x01, 0xe6, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, +0x63, 0x65, 0x2e, 0x20, 0x44, 0x72, 0x61, 0x67, 0xd8, 0x02, +0xb2, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x62, 0x75, 0x74, 0x74, +0x6f, 0x6e, 0x69, 0x00, 0x17, 0x61, 0x67, 0x00, 0xe0, 0x69, +0x74, 0x73, 0x20, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, +0x6f, 0x72, 0x2c, 0xdd, 0x01, 0x05, 0x38, 0x00, 0x4f, 0x72, +0x69, 0x67, 0x68, 0x39, 0x00, 0x0a, 0x00, 0x8c, 0x02, 0x22, +0x64, 0x65, 0x3b, 0x00, 0x58, 0x2e, 0x20, 0x0a, 0x49, 0x66, +0xf1, 0x00, 0x06, 0xe9, 0x00, 0x35, 0x74, 0x77, 0x6f, 0xfe, +0x00, 0x22, 0x69, 0x6e, 0x95, 0x01, 0x30, 0x77, 0x61, 0x79, +0x69, 0x02, 0x00, 0xf4, 0x00, 0x03, 0x98, 0x02, 0x73, 0x6d, +0x20, 0x68, 0x61, 0x73, 0x20, 0x61, 0x4f, 0x02, 0x00, 0x29, +0x00, 0x32, 0x69, 0x74, 0x2c, 0xb1, 0x02, 0x94, 0x70, 0x70, +0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x3b, 0x03, 0x01, +0x6a, 0x03, 0x03, 0x68, 0x02, 0x04, 0xfe, 0x00, 0x01, 0x2e, +0x01, 0x03, 0x68, 0x00, 0x2a, 0x2e, 0x20, 0x8c, 0x00, 0x01, +0x83, 0x00, 0x42, 0x6e, 0x6f, 0x6e, 0x2d, 0x3f, 0x00, 0x24, +0x65, 0x64, 0x90, 0x00, 0x11, 0x2c, 0x4e, 0x01, 0x01, 0x4f, +0x00, 0x01, 0x77, 0x03, 0x50, 0x73, 0x73, 0x69, 0x67, 0x6e, +0x3c, 0x02, 0x70, 0x65, 0x6d, 0x70, 0x6f, 0x72, 0x61, 0x72, +0xd2, 0x02, 0xf9, 0x01, 0x67, 0x65, 0x62, 0x72, 0x61, 0x69, +0x63, 0x20, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x3a, 0x20, +0x2d, 0x03, 0x8a, 0x6f, 0x63, 0x63, 0x61, 0x73, 0x69, 0x6f, +0x6e, 0x49, 0x00, 0x02, 0x2c, 0x00, 0x71, 0x6c, 0x65, 0x64, +0x20, 0x60, 0x61, 0x27, 0xe8, 0x00, 0x51, 0x60, 0x61, 0x2b, +0x31, 0x27, 0x34, 0x05, 0x00, 0x29, 0x00, 0x43, 0x6e, 0x20, +0x60, 0x62, 0x18, 0x00, 0x14, 0x62, 0x18, 0x00, 0x00, 0xa7, +0x04, 0x51, 0x6f, 0x6e, 0x2e, 0x20, 0x43, 0xb3, 0x00, 0x00, +0xef, 0x01, 0x00, 0x67, 0x03, 0x06, 0x25, 0x05, 0x24, 0x6f, +0x6e, 0x55, 0x04, 0x41, 0x65, 0x6e, 0x64, 0x73, 0xbf, 0x05, +0x30, 0x75, 0x63, 0x68, 0x34, 0x05, 0x42, 0x68, 0x61, 0x69, +0x6e, 0x7a, 0x00, 0x52, 0x63, 0x61, 0x75, 0x73, 0x65, 0x4d, +0x01, 0x00, 0x3b, 0x03, 0x28, 0x74, 0x6f, 0x8c, 0x00, 0x06, +0xd9, 0x01, 0x30, 0x73, 0x61, 0x6d, 0x16, 0x02, 0x30, 0x74, +0x74, 0x65, 0xb7, 0x01, 0x40, 0x57, 0x68, 0x65, 0x6e, 0x2d, +0x01, 0x01, 0x28, 0x02, 0x91, 0x2d, 0x63, 0x6c, 0x69, 0x63, +0x6b, 0x20, 0x6f, 0x72, 0xfe, 0x01, 0x04, 0x0f, 0x00, 0x25, +0x69, 0x6e, 0xfb, 0x01, 0x13, 0x2c, 0x53, 0x02, 0x33, 0x67, +0x61, 0x6c, 0x12, 0x00, 0x09, 0xd7, 0x05, 0x10, 0x69, 0xf8, +0x01, 0x03, 0x07, 0x01, 0x03, 0x36, 0x04, 0x47, 0x2e, 0x20, +0x0a, 0x54, 0x7f, 0x05, 0x08, 0x6d, 0x06, 0x02, 0xd5, 0x05, +0x00, 0xcd, 0x00, 0x71, 0x66, 0x20, 0x62, 0x6c, 0x61, 0x63, +0x6b, 0x0a, 0x01, 0x02, 0x10, 0x04, 0x9a, 0x67, 0x72, 0x65, +0x79, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0xc9, 0x01, 0x2e, 0x68, +0x65, 0xbd, 0x02, 0x04, 0x82, 0x02, 0x58, 0x41, 0x6c, 0x73, +0x6f, 0x2c, 0x60, 0x00, 0x03, 0x98, 0x05, 0x78, 0x6e, 0x65, +0x65, 0x64, 0x73, 0x20, 0x61, 0xaf, 0x02, 0x03, 0x6d, 0x02, +0x20, 0x73, 0x6d, 0x28, 0x01, 0x25, 0x64, 0x6f, 0x44, 0x03, +0x62, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x33, 0x03, 0x64, +0x63, 0x6f, 0x72, 0x6e, 0x65, 0x72, 0xdd, 0x05, 0x85, 0x76, +0x61, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x73, 0x94, 0x00, 0x01, +0x80, 0x06, 0x0b, 0x13, 0x03, 0x60, 0x2e, 0x20, 0x53, 0x6f, +0x20, 0x79, 0xf2, 0x06, 0x50, 0x61, 0x69, 0x6d, 0x20, 0x69, +0x14, 0x07, 0x39, 0x77, 0x61, 0x79, 0x22, 0x01, 0x19, 0x61, +0x78, 0x06, 0x12, 0x61, 0xf8, 0x00, 0x03, 0x1e, 0x01, 0x2c, +0x74, 0x6f, 0x1f, 0x00, 0x00, 0x9c, 0x00, 0x11, 0x2e, 0x5b, +0x04, 0x51, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x1a, 0x06, 0x01, +0x79, 0x00, 0x10, 0x73, 0x46, 0x05, 0x00, 0xd4, 0x00, 0x00, +0x16, 0x07, 0x55, 0x63, 0x75, 0x6c, 0x61, 0x72, 0xc1, 0x07, +0xd2, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x69, 0x6e, 0x63, 0x6f, +0x6d, 0x69, 0x6e, 0x67, 0x66, 0x03, 0x92, 0x75, 0x74, 0x67, +0x6f, 0x69, 0x6e, 0x67, 0x29, 0x2c, 0xe5, 0x01, 0x10, 0x64, +0x20, 0x04, 0x10, 0x69, 0x5f, 0x07, 0x01, 0x7b, 0x03, 0x01, +0x11, 0x08, 0x27, 0x2e, 0x20, 0x65, 0x00, 0x00, 0x7f, 0x05, +0x22, 0x6c, 0x65, 0x5b, 0x02, 0x11, 0x2c, 0x0b, 0x02, 0x02, +0x35, 0x00, 0x00, 0x7f, 0x00, 0x01, 0x68, 0x00, 0x04, 0x60, +0x06, 0x03, 0x24, 0x00, 0x0a, 0x4a, 0x00, 0x01, 0x6d, 0x08, +0x00, 0xcb, 0x06, 0x02, 0x10, 0x06, 0x03, 0x94, 0x02, 0x40, +0x20, 0x63, 0x75, 0x72, 0x7a, 0x01, 0x22, 0x6b, 0x65, 0x11, +0x01, 0x02, 0x6a, 0x00, 0x54, 0x72, 0x6f, 0x75, 0x6e, 0x64, +0x3b, 0x00, 0x05, 0x98, 0x03, 0x04, 0xe0, 0x07, 0x94, 0x65, +0x73, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, 0x3b, 0x07, +0x80, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x6b, 0x6c, +0x03, 0x00, 0xb8, 0x02, 0x6b, 0x6f, 0x76, 0x65, 0x72, 0x20, +0x61, 0x4f, 0x02, 0x12, 0x61, 0x9b, 0x01, 0x50, 0x6f, 0x70, +0x65, 0x72, 0x61, 0xf8, 0x05, 0x02, 0x56, 0x02, 0x1f, 0x70, +0x48, 0x00, 0x04, 0x4b, 0x61, 0x67, 0x61, 0x69, 0x49, 0x00, +0x02, 0xc1, 0x02, 0x51, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x32, +0x03, 0x01, 0x50, 0x00, 0x40, 0x2c, 0x20, 0x69, 0x66, 0x57, +0x03, 0x6b, 0x6f, 0x77, 0x61, 0x62, 0x6c, 0x65, 0x98, 0x00, +0x9f, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x62, 0x61, 0x72, +0x49, 0x00, 0x00, 0x01, 0x07, 0x03, 0x0d, 0xa4, 0x04, 0x11, +0x73, 0x2a, 0x08, 0x00, 0xe8, 0x03, 0x02, 0x3b, 0x02, 0x01, +0xa5, 0x00, 0x02, 0x60, 0x00, 0x00, 0x42, 0x02, 0x07, 0x15, +0x09, 0x72, 0x62, 0x61, 0x63, 0x6b, 0x77, 0x61, 0x72, 0xf1, +0x08, 0x06, 0xcc, 0x00, 0x0e, 0x7c, 0x00, 0x03, 0xcb, 0x00, +0x10, 0x63, 0x36, 0x08, 0x21, 0x6c, 0x73, 0x69, 0x05, 0x72, +0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x48, 0x05, 0x01, +0x05, 0x07, 0x92, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, +0x69, 0x62, 0x3b, 0x09, 0x13, 0x73, 0x1b, 0x07, 0x30, 0x32, +0x2e, 0x31, 0x55, 0x06, 0x03, 0xc2, 0x07, 0x41, 0x76, 0x61, +0x69, 0x6c, 0xe6, 0x00, 0x13, 0x29, 0xf1, 0x06, 0x15, 0x32, +0xd6, 0x06, 0x00, 0x72, 0x02, 0x71, 0x61, 0x6d, 0x65, 0x74, +0x65, 0x72, 0x73, 0xd9, 0x03, 0x24, 0x73, 0x65, 0x12, 0x00, +0x03, 0x2c, 0x08, 0x06, 0x3e, 0x00, 0x06, 0xb5, 0x08, 0xe2, +0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, +0x27, 0x20, 0x6f, 0x70, 0x8e, 0x08, 0x12, 0x6e, 0x1a, 0x00, +0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, +0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, +0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x75, 0x02, 0x10, +0x5f, 0xe0, 0x07, 0x10, 0x7a, 0x23, 0x06, 0x02, 0x1f, 0x02, +0x24, 0x69, 0x6e, 0x3e, 0x01, 0x00, 0x2d, 0x00, 0x43, 0x46, +0x6f, 0x72, 0x63, 0xf5, 0x01, 0x30, 0x2f, 0x65, 0x6e, 0xf2, +0x07, 0x03, 0xb4, 0x03, 0x21, 0x73, 0x5f, 0x8e, 0x06, 0x31, +0x74, 0x72, 0x75, 0xb0, 0x04, 0x02, 0x24, 0x00, 0x02, 0xda, +0x08, 0x27, 0x65, 0x6e, 0x65, 0x02, 0x23, 0x72, 0x65, 0xa1, +0x03, 0x00, 0xb9, 0x07, 0x12, 0x63, 0x11, 0x01, 0x84, 0x6f, +0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x4b, 0x00, 0x25, +0x20, 0x28, 0x41, 0x00, 0x04, 0xd3, 0x08, 0x31, 0x74, 0x6f, +0x70, 0x48, 0x03, 0x05, 0xd0, 0x05, 0x01, 0x56, 0x00, 0x27, +0x61, 0x74, 0x42, 0x04, 0x02, 0x34, 0x03, 0x11, 0x29, 0x89, +0x06, 0x5f, 0x66, 0x61, 0x6c, 0x73, 0x65, 0x87, 0x00, 0x0b, +0x04, 0x80, 0x00, 0xf4, 0x03, 0x72, 0x61, 0x6e, 0x64, 0x6f, +0x6d, 0x6c, 0x79, 0x20, 0x28, 0x61, 0x6c, 0x74, 0x68, 0x6f, +0x75, 0x67, 0x68, 0xa1, 0x00, 0x01, 0xd5, 0x03, 0xa0, 0x73, +0x68, 0x6f, 0x77, 0x6e, 0x29, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3045; const char quick_help_text[] = "Connect the squares into a path following the arrows."; diff --git a/apps/plugins/puzzles/help/singles.c b/apps/plugins/puzzles/help/singles.c index 2277071cb9..63922fd83e 100644 --- a/apps/plugins/puzzles/help/singles.c +++ b/apps/plugins/puzzles/help/singles.c @@ -1,51 +1,115 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1385 comp 1059 ratio 0.764621 level 11 saved 326 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 32: Singles " -"\n" -"You have a grid of white squares, all of which contain numbers. Your " -"task is to colour some of the squares black (removing the number) so " -"as to satisfy all of the following conditions: " -"\n" -"- No number occurs more than once in any row or column. " -"\n" -"- No black square is horizontally or vertically adjacent to any " -"other black square. " -"\n" -"- The remaining white squares must all form one contiguous region " -"(connected by edges, not just touching at corners). " -"\n" -"Credit for this puzzle goes to Nikoli [15] who call it Hitori. " -"\n" -"Singles was contributed to this collection by James Harvey. " -"\n" -"[15] http://www.nikoli.com/en/puzzles/hitori.html (beware of Flash) " -"\n" -"\n#32.1 Singles controls " -"\n" -"Left-clicking on an empty square will colour it black; left-clicking " -"again will restore the number. Right-clicking will add a circle " -"(useful for indicating that a cell is definitely not black). " -"\n" -"You can also use the cursor keys to move around the grid. Pressing " -"the return or space keys will turn a square black or add a circle " -"respectively, and pressing the key again will restore the number or " -"remove the circle. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#32.2 Singles parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x2c, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x32, 0x3a, 0x20, 0x53, 0x69, 0x6e, 0x67, 0x6c, +0x65, 0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, +0x6f, 0x66, 0x20, 0x77, 0x68, 0x69, 0x74, 0x65, 0x20, 0x73, +0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x61, 0x6c, +0x6c, 0x16, 0x00, 0xf0, 0x18, 0x63, 0x68, 0x20, 0x63, 0x6f, +0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x6e, 0x75, 0x6d, 0x62, +0x65, 0x72, 0x73, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, +0x74, 0x61, 0x73, 0x6b, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, +0x20, 0x63, 0x6f, 0x6c, 0x12, 0x00, 0x40, 0x73, 0x6f, 0x6d, +0x65, 0x36, 0x00, 0x25, 0x74, 0x68, 0x4a, 0x00, 0xf0, 0x01, +0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, 0x20, 0x28, 0x72, 0x65, +0x6d, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x1c, 0x00, 0x03, 0x48, +0x00, 0x61, 0x29, 0x20, 0x73, 0x6f, 0x20, 0x61, 0x40, 0x00, +0x70, 0x73, 0x61, 0x74, 0x69, 0x73, 0x66, 0x79, 0x76, 0x00, +0x04, 0x40, 0x00, 0x90, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, +0x69, 0x6e, 0x67, 0x7e, 0x00, 0xe3, 0x64, 0x69, 0x74, 0x69, +0x6f, 0x6e, 0x73, 0x3a, 0x20, 0x0a, 0x2d, 0x20, 0x4e, 0x6f, +0x40, 0x00, 0xf0, 0x15, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, +0x73, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x74, 0x68, 0x61, +0x6e, 0x20, 0x6f, 0x6e, 0x63, 0x65, 0x20, 0x69, 0x6e, 0x20, +0x61, 0x6e, 0x79, 0x20, 0x72, 0x6f, 0x77, 0x20, 0x6f, 0x72, +0x9a, 0x00, 0x42, 0x75, 0x6d, 0x6e, 0x2e, 0x39, 0x00, 0x02, +0x8d, 0x00, 0x03, 0x9b, 0x00, 0x00, 0xbb, 0x00, 0x50, 0x68, +0x6f, 0x72, 0x69, 0x7a, 0xdd, 0x00, 0x30, 0x6c, 0x6c, 0x79, +0x2e, 0x00, 0x61, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, 0x0e, +0x00, 0xb1, 0x61, 0x64, 0x6a, 0x61, 0x63, 0x65, 0x6e, 0x74, +0x20, 0x74, 0x6f, 0x50, 0x00, 0x59, 0x6f, 0x74, 0x68, 0x65, +0x72, 0x41, 0x00, 0x01, 0x55, 0x00, 0xda, 0x54, 0x68, 0x65, +0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, +0x45, 0x01, 0x51, 0x20, 0x6d, 0x75, 0x73, 0x74, 0xd3, 0x00, +0x81, 0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x6e, 0x65, 0x49, +0x01, 0xf0, 0x10, 0x69, 0x67, 0x75, 0x6f, 0x75, 0x73, 0x20, +0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x63, 0x6f, +0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, +0x20, 0x65, 0x64, 0x67, 0x7d, 0x01, 0x70, 0x6e, 0x6f, 0x74, +0x20, 0x6a, 0x75, 0x73, 0x7c, 0x00, 0x30, 0x75, 0x63, 0x68, +0x59, 0x00, 0xf0, 0x05, 0x61, 0x74, 0x20, 0x63, 0x6f, 0x72, +0x6e, 0x65, 0x72, 0x73, 0x29, 0x2e, 0x20, 0x0a, 0x43, 0x72, +0x65, 0x64, 0x69, 0x74, 0x57, 0x00, 0xf1, 0x01, 0x20, 0x74, +0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x20, 0x67, 0x6f, 0x65, 0x4e, 0x01, 0xf0, 0x02, 0x4e, 0x69, +0x6b, 0x6f, 0x6c, 0x69, 0x20, 0x5b, 0x31, 0x35, 0x5d, 0x20, +0x77, 0x68, 0x6f, 0x20, 0x63, 0x84, 0x00, 0xc4, 0x69, 0x74, +0x20, 0x48, 0x69, 0x74, 0x6f, 0x72, 0x69, 0x2e, 0x20, 0x0a, +0x08, 0x02, 0x31, 0x77, 0x61, 0x73, 0x93, 0x00, 0x40, 0x72, +0x69, 0x62, 0x75, 0x82, 0x00, 0x21, 0x74, 0x6f, 0x50, 0x00, +0x00, 0x35, 0x01, 0x30, 0x6c, 0x65, 0x63, 0x73, 0x01, 0x00, +0x95, 0x00, 0xf1, 0x00, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, +0x48, 0x61, 0x72, 0x76, 0x65, 0x79, 0x2e, 0x20, 0x0a, 0x57, +0x00, 0xc1, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, +0x77, 0x77, 0x2e, 0x6e, 0x6e, 0x00, 0x82, 0x2e, 0x63, 0x6f, +0x6d, 0x2f, 0x65, 0x6e, 0x2f, 0x8b, 0x00, 0x32, 0x73, 0x2f, +0x68, 0x6c, 0x00, 0xb1, 0x68, 0x74, 0x6d, 0x6c, 0x20, 0x28, +0x62, 0x65, 0x77, 0x61, 0x72, 0x1a, 0x02, 0xe3, 0x46, 0x6c, +0x61, 0x73, 0x68, 0x29, 0x20, 0x0a, 0x0a, 0x23, 0x33, 0x32, +0x2e, 0x31, 0x91, 0x02, 0x03, 0x85, 0x00, 0xf0, 0x00, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, +0x6c, 0x69, 0x63, 0x6b, 0xf7, 0x00, 0x10, 0x6f, 0xcc, 0x01, +0x64, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0xb6, 0x01, 0x44, +0x77, 0x69, 0x6c, 0x6c, 0x70, 0x02, 0x22, 0x69, 0x74, 0x91, +0x01, 0x39, 0x3b, 0x20, 0x6c, 0x37, 0x00, 0x52, 0x61, 0x67, +0x61, 0x69, 0x6e, 0x2a, 0x00, 0x77, 0x72, 0x65, 0x73, 0x74, +0x6f, 0x72, 0x65, 0x77, 0x02, 0x66, 0x2e, 0x20, 0x52, 0x69, +0x67, 0x68, 0x2e, 0x00, 0x02, 0x28, 0x00, 0xf1, 0x05, 0x61, +0x64, 0x64, 0x20, 0x61, 0x20, 0x63, 0x69, 0x72, 0x63, 0x6c, +0x65, 0x20, 0x28, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x61, +0x01, 0x72, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0xbb, +0x02, 0x20, 0x61, 0x74, 0x25, 0x00, 0x30, 0x65, 0x6c, 0x6c, +0x3d, 0x02, 0xd3, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, +0x65, 0x6c, 0x79, 0x20, 0x6e, 0x6f, 0x8a, 0x00, 0x22, 0x29, +0x2e, 0x5d, 0x03, 0xb2, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c, +0x73, 0x6f, 0x20, 0x75, 0x73, 0x7c, 0x00, 0x00, 0xaa, 0x02, +0x61, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0xa3, 0x01, 0x20, +0x6d, 0x6f, 0x7d, 0x03, 0x50, 0x72, 0x6f, 0x75, 0x6e, 0x64, +0x1f, 0x00, 0x01, 0x86, 0x03, 0x74, 0x2e, 0x20, 0x50, 0x72, +0x65, 0x73, 0x73, 0x25, 0x03, 0x60, 0x72, 0x65, 0x74, 0x75, +0x72, 0x6e, 0x96, 0x02, 0x51, 0x73, 0x70, 0x61, 0x63, 0x65, +0x3b, 0x00, 0x02, 0xac, 0x00, 0x01, 0x18, 0x00, 0x13, 0x61, +0x11, 0x01, 0x03, 0x93, 0x02, 0x29, 0x6f, 0x72, 0xc3, 0x00, +0x00, 0xf8, 0x00, 0x10, 0x70, 0xc3, 0x01, 0xb6, 0x76, 0x65, +0x6c, 0x79, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x70, 0x5d, +0x00, 0x01, 0x4d, 0x00, 0x0f, 0x26, 0x01, 0x0b, 0x00, 0x51, +0x00, 0x01, 0xb4, 0x03, 0x01, 0x15, 0x00, 0x02, 0x56, 0x00, +0x00, 0xf2, 0x02, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x12, 0x00, +0x11, 0x61, 0x20, 0x02, 0x00, 0x06, 0x01, 0x70, 0x73, 0x63, +0x72, 0x69, 0x62, 0x65, 0x64, 0x79, 0x03, 0x13, 0x73, 0x36, +0x02, 0x00, 0xdc, 0x01, 0x32, 0x61, 0x72, 0x65, 0x03, 0x01, +0xa4, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, +0x2e, 0xf9, 0x01, 0x15, 0x32, 0xf9, 0x01, 0xf7, 0x02, 0x70, +0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, +0x0a, 0x54, 0x68, 0x65, 0x73, 0x65, 0x12, 0x00, 0x00, 0x42, +0x00, 0x06, 0x3d, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x7a, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x70, 0x00, 0x22, +0x6f, 0x6e, 0x1a, 0x00, 0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, +0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, +0x65, 0xf2, 0x01, 0x10, 0x5f, 0xf9, 0x02, 0x10, 0x7a, 0x87, +0x02, 0x02, 0xf5, 0x04, 0x24, 0x69, 0x6e, 0xaa, 0x03, 0x00, +0x2d, 0x00, 0xe3, 0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, +0x6c, 0x74, 0x79, 0x5f, 0x20, 0x0a, 0x43, 0x90, 0x02, 0x01, +0x56, 0x00, 0x15, 0x64, 0x1a, 0x00, 0x04, 0x9c, 0x04, 0x60, +0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x32, 0x03, 0xa0, 0x70, +0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 1385; const char quick_help_text[] = "Black out the right set of duplicate numbers."; diff --git a/apps/plugins/puzzles/help/sixteen.c b/apps/plugins/puzzles/help/sixteen.c index d588c37e3a..a390fd09bf 100644 --- a/apps/plugins/puzzles/help/sixteen.c +++ b/apps/plugins/puzzles/help/sixteen.c @@ -1,62 +1,185 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2533 comp 1760 ratio 0.694828 level 11 saved 773 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 6: Sixteen " -"\n" -"Another sliding tile puzzle, visually similar to Fifteen (see " -"chapter 5) but with a different type of move. This time, there is no " -"hole: all 16 squares on the grid contain numbered squares. Your move " -"is to shift an entire row left or right, or shift an entire column " -"up or down; every time you do that, the tile you shift off the grid " -"re-appears at the other end of the same row, in the space you just " -"vacated. To win, arrange the tiles into numerical order (1,2,3,4 on " -"the top row, 13,14,15,16 on the bottom). When you've done that, try " -"playing on different sizes of grid. " -"\n" -"I _might_ have invented this game myself, though only by accident " -"if so (and I'm sure other people have independently invented it). I " -"thought I was imitating a screensaver I'd seen, but I have a feeling " -"that the screensaver might actually have been a Fifteen-type puzzle " -"rather than this slightly different kind. So this might be the one " -"thing in my puzzle collection which represents creativity on my part " -"rather than just engineering. " -"\n" -"\n#6.1 Sixteen controls " -"\n" -"Left-clicking on an arrow will move the appropriate row or column in " -"the direction indicated. Right-clicking will move it in the opposite " -"direction. " -"\n" -"Alternatively, use the cursor keys to move the position indicator " -"around the edge of the grid, and use the return key to move the " -"row/column in the direction indicated. " -"\n" -"You can also move the tiles directly. Move the cursor onto a tile, " -"hold Control and press an arrow key to move the tile under the " -"cursor and move the cursor along with the tile. Or, hold Shift to " -"move only the tile. Pressing Enter simulates holding down Control " -"(press Enter again to release), while pressing Space simulates " -"holding down shift. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#6.2 Sixteen parameters " -"\n" -"The parameters available from the `Custom...' option on the `Type' " -"menu are: " -"\n" -"- _Width_ and _Height_, which are self-explanatory. " -"\n" -"- You can ask for a limited shuffling operation to be performed on " -"the grid. By default, Sixteen will shuffle the grid in such a " -"way 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" -; + +#include "help.h" +const char help_text[] = { +0xf1, 0x3a, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x36, 0x3a, 0x20, 0x53, 0x69, 0x78, 0x74, 0x65, 0x65, +0x6e, 0x20, 0x0a, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, +0x20, 0x73, 0x6c, 0x69, 0x64, 0x69, 0x6e, 0x67, 0x20, 0x74, +0x69, 0x6c, 0x65, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x2c, 0x20, 0x76, 0x69, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, +0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20, 0x74, +0x6f, 0x20, 0x46, 0x69, 0x66, 0x3a, 0x00, 0x63, 0x28, 0x73, +0x65, 0x65, 0x20, 0x63, 0x52, 0x00, 0xf0, 0x22, 0x35, 0x29, +0x20, 0x62, 0x75, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, +0x61, 0x20, 0x64, 0x69, 0x66, 0x66, 0x65, 0x72, 0x65, 0x6e, +0x74, 0x20, 0x74, 0x79, 0x70, 0x65, 0x20, 0x6f, 0x66, 0x20, +0x6d, 0x6f, 0x76, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x69, 0x73, +0x20, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x20, 0x74, 0x00, 0xf0, +0x10, 0x65, 0x20, 0x69, 0x73, 0x20, 0x6e, 0x6f, 0x20, 0x68, +0x6f, 0x6c, 0x65, 0x3a, 0x20, 0x61, 0x6c, 0x6c, 0x20, 0x31, +0x36, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x20, +0x6f, 0x6e, 0x24, 0x00, 0xf4, 0x07, 0x20, 0x67, 0x72, 0x69, +0x64, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, +0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x65, 0x64, 0x25, 0x00, +0x60, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x5d, 0x00, 0x00, +0x4b, 0x00, 0x00, 0x9d, 0x00, 0xfd, 0x16, 0x73, 0x68, 0x69, +0x66, 0x74, 0x20, 0x61, 0x6e, 0x20, 0x65, 0x6e, 0x74, 0x69, +0x72, 0x65, 0x20, 0x72, 0x6f, 0x77, 0x20, 0x6c, 0x65, 0x66, +0x74, 0x20, 0x6f, 0x72, 0x20, 0x72, 0x69, 0x67, 0x68, 0x74, +0x2c, 0x20, 0x6f, 0x72, 0x26, 0x00, 0x90, 0x63, 0x6f, 0x6c, +0x75, 0x6d, 0x6e, 0x20, 0x75, 0x70, 0x1d, 0x00, 0xb1, 0x64, +0x6f, 0x77, 0x6e, 0x3b, 0x20, 0x65, 0x76, 0x65, 0x72, 0x79, +0xac, 0x00, 0xc1, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x64, 0x6f, +0x20, 0x74, 0x68, 0x61, 0x74, 0xb8, 0x00, 0x00, 0x23, 0x01, +0x01, 0x16, 0x00, 0x03, 0x48, 0x00, 0x36, 0x6f, 0x66, 0x66, +0xab, 0x00, 0xd1, 0x72, 0x65, 0x2d, 0x61, 0x70, 0x70, 0x65, +0x61, 0x72, 0x73, 0x20, 0x61, 0x74, 0x17, 0x00, 0x02, 0x5f, +0x01, 0x52, 0x65, 0x6e, 0x64, 0x20, 0x6f, 0x28, 0x00, 0x31, +0x73, 0x61, 0x6d, 0x99, 0x00, 0x42, 0x2c, 0x20, 0x69, 0x6e, +0x11, 0x00, 0x32, 0x70, 0x61, 0x63, 0x51, 0x00, 0xf5, 0x0e, +0x6a, 0x75, 0x73, 0x74, 0x20, 0x76, 0x61, 0x63, 0x61, 0x74, +0x65, 0x64, 0x2e, 0x20, 0x54, 0x6f, 0x20, 0x77, 0x69, 0x6e, +0x2c, 0x20, 0x61, 0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x7c, +0x00, 0x60, 0x73, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x0e, 0x01, +0xf4, 0x06, 0x65, 0x72, 0x69, 0x63, 0x61, 0x6c, 0x20, 0x6f, +0x72, 0x64, 0x65, 0x72, 0x20, 0x28, 0x31, 0x2c, 0x32, 0x2c, +0x33, 0x2c, 0x34, 0x3b, 0x01, 0x32, 0x74, 0x6f, 0x70, 0x67, +0x00, 0xb4, 0x31, 0x33, 0x2c, 0x31, 0x34, 0x2c, 0x31, 0x35, +0x2c, 0x31, 0x36, 0x1c, 0x00, 0xd0, 0x62, 0x6f, 0x74, 0x74, +0x6f, 0x6d, 0x29, 0x2e, 0x20, 0x57, 0x68, 0x65, 0x6e, 0x7b, +0x00, 0x84, 0x27, 0x76, 0x65, 0x20, 0x64, 0x6f, 0x6e, 0x65, +0xe7, 0x00, 0x70, 0x72, 0x79, 0x20, 0x70, 0x6c, 0x61, 0x79, +0x12, 0x02, 0x27, 0x6f, 0x6e, 0xd1, 0x01, 0x30, 0x73, 0x69, +0x7a, 0x9d, 0x01, 0x11, 0x66, 0xee, 0x00, 0x70, 0x2e, 0x20, +0x0a, 0x49, 0x20, 0x5f, 0x6d, 0x58, 0x01, 0x40, 0x5f, 0x20, +0x68, 0x61, 0x86, 0x01, 0x90, 0x6e, 0x76, 0x65, 0x6e, 0x74, +0x65, 0x64, 0x20, 0x74, 0xeb, 0x01, 0x10, 0x67, 0xea, 0x00, +0x60, 0x6d, 0x79, 0x73, 0x65, 0x6c, 0x66, 0x3a, 0x01, 0xf0, +0x03, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x6f, 0x6e, 0x6c, 0x79, +0x20, 0x62, 0x79, 0x20, 0x61, 0x63, 0x63, 0x69, 0x64, 0x52, +0x00, 0xf4, 0x03, 0x69, 0x66, 0x20, 0x73, 0x6f, 0x20, 0x28, +0x61, 0x6e, 0x64, 0x20, 0x49, 0x27, 0x6d, 0x20, 0x73, 0x75, +0x72, 0x34, 0x01, 0x64, 0x70, 0x65, 0x6f, 0x70, 0x6c, 0x65, +0x59, 0x00, 0x50, 0x64, 0x65, 0x70, 0x65, 0x6e, 0x32, 0x00, +0x26, 0x6c, 0x79, 0x67, 0x00, 0x63, 0x69, 0x74, 0x29, 0x2e, +0x20, 0x49, 0x5c, 0x00, 0xe0, 0x74, 0x20, 0x49, 0x20, 0x77, +0x61, 0x73, 0x20, 0x69, 0x6d, 0x69, 0x74, 0x61, 0x74, 0xbb, +0x00, 0xf1, 0x08, 0x61, 0x20, 0x73, 0x63, 0x72, 0x65, 0x65, +0x6e, 0x73, 0x61, 0x76, 0x65, 0x72, 0x20, 0x49, 0x27, 0x64, +0x20, 0x73, 0x65, 0x65, 0x6e, 0x2c, 0xac, 0x02, 0x12, 0x49, +0x59, 0x00, 0x61, 0x61, 0x20, 0x66, 0x65, 0x65, 0x6c, 0xfa, +0x02, 0x12, 0x68, 0xb2, 0x01, 0x09, 0x34, 0x00, 0x01, 0xdd, +0x00, 0x41, 0x20, 0x61, 0x63, 0x74, 0x08, 0x03, 0x02, 0x33, +0x00, 0x10, 0x62, 0xff, 0x02, 0x14, 0x61, 0x09, 0x03, 0x44, +0x2d, 0x74, 0x79, 0x70, 0x32, 0x03, 0x30, 0x20, 0x72, 0x61, +0xba, 0x00, 0x00, 0x4b, 0x00, 0x12, 0x6e, 0x03, 0x01, 0x20, +0x73, 0x6c, 0x41, 0x00, 0x27, 0x6c, 0x79, 0x43, 0x01, 0x81, +0x6b, 0x69, 0x6e, 0x64, 0x2e, 0x20, 0x53, 0x6f, 0x21, 0x00, +0x03, 0x61, 0x00, 0x12, 0x62, 0xde, 0x01, 0x02, 0x81, 0x01, +0x30, 0x69, 0x6e, 0x67, 0x1b, 0x02, 0x22, 0x6d, 0x79, 0x56, +0x00, 0x01, 0xa0, 0x02, 0xf2, 0x16, 0x6c, 0x65, 0x63, 0x74, +0x69, 0x6f, 0x6e, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, +0x72, 0x65, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x73, +0x20, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x76, 0x69, 0x74, +0x79, 0x20, 0x6f, 0x34, 0x00, 0x38, 0x61, 0x72, 0x74, 0x88, +0x00, 0x02, 0x55, 0x02, 0xf4, 0x04, 0x65, 0x6e, 0x67, 0x69, +0x6e, 0x65, 0x65, 0x72, 0x69, 0x6e, 0x67, 0x2e, 0x20, 0x0a, +0x0a, 0x23, 0x36, 0x2e, 0x31, 0x04, 0x04, 0x01, 0x5f, 0x03, +0xf2, 0x01, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, +0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xf9, 0x01, +0x00, 0x24, 0x03, 0x20, 0x61, 0x72, 0x45, 0x03, 0x40, 0x77, +0x69, 0x6c, 0x6c, 0x69, 0x03, 0x02, 0xa8, 0x00, 0xa2, 0x61, +0x70, 0x70, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x63, +0x03, 0x23, 0x6f, 0x72, 0x44, 0x03, 0x04, 0xd3, 0x02, 0x32, +0x64, 0x69, 0x72, 0xb1, 0x00, 0x00, 0xb9, 0x01, 0x13, 0x69, +0xd0, 0x02, 0x46, 0x52, 0x69, 0x67, 0x68, 0x5f, 0x00, 0x07, +0x53, 0x00, 0x24, 0x69, 0x74, 0x38, 0x00, 0x77, 0x6f, 0x70, +0x70, 0x6f, 0x73, 0x69, 0x74, 0x41, 0x00, 0x90, 0x2e, 0x20, +0x0a, 0x41, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0xe6, 0x00, 0x72, +0x65, 0x6c, 0x79, 0x2c, 0x20, 0x75, 0x73, 0x85, 0x00, 0xa0, +0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, +0xfb, 0x03, 0x06, 0x9d, 0x00, 0x00, 0x42, 0x00, 0x08, 0x7b, +0x00, 0x91, 0x6f, 0x72, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, +0x64, 0x1e, 0x00, 0x66, 0x65, 0x64, 0x67, 0x65, 0x20, 0x6f, +0xb2, 0x03, 0x55, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x54, 0x00, +0x60, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x54, 0x00, 0x07, +0x53, 0x00, 0x01, 0xe4, 0x00, 0x1f, 0x2f, 0xe1, 0x00, 0x10, +0x60, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x63, 0x34, 0x01, 0x21, +0x6c, 0x73, 0x3e, 0x00, 0x07, 0xb4, 0x03, 0x03, 0x32, 0x00, +0x79, 0x6c, 0x79, 0x2e, 0x20, 0x4d, 0x6f, 0x76, 0xc2, 0x00, +0x10, 0x6f, 0xce, 0x03, 0x11, 0x61, 0x27, 0x00, 0x10, 0x2c, +0x0d, 0x05, 0x32, 0x64, 0x20, 0x43, 0x92, 0x01, 0x01, 0x9b, +0x00, 0x00, 0xea, 0x01, 0x15, 0x73, 0x89, 0x01, 0x08, 0x9b, +0x00, 0x06, 0x8d, 0x04, 0x57, 0x75, 0x6e, 0x64, 0x65, 0x72, +0x53, 0x00, 0x01, 0x39, 0x00, 0x1b, 0x6d, 0x67, 0x00, 0x51, +0x61, 0x6c, 0x6f, 0x6e, 0x67, 0xa3, 0x05, 0x05, 0x39, 0x00, +0x43, 0x2e, 0x20, 0x4f, 0x72, 0x73, 0x00, 0x10, 0x53, 0xcc, +0x04, 0x04, 0x5a, 0x00, 0x01, 0xa6, 0x03, 0x07, 0x26, 0x00, +0x10, 0x50, 0x84, 0x00, 0x00, 0xb4, 0x01, 0x50, 0x45, 0x6e, +0x74, 0x65, 0x72, 0x0e, 0x06, 0x60, 0x75, 0x6c, 0x61, 0x74, +0x65, 0x73, 0x3b, 0x00, 0x00, 0x36, 0x06, 0x01, 0x35, 0x05, +0x05, 0xb6, 0x00, 0x11, 0x28, 0xb3, 0x00, 0x03, 0x2c, 0x00, +0x50, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x58, 0x00, 0xc1, 0x72, +0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x29, 0x2c, 0x20, 0x77, +0x68, 0x64, 0x06, 0x04, 0x54, 0x00, 0x10, 0x53, 0xff, 0x04, +0x0f, 0x54, 0x00, 0x04, 0x02, 0x63, 0x05, 0x72, 0x2e, 0x20, +0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x7b, 0x02, 0x01, 0x76, 0x01, +0xb0, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, +0x65, 0x64, 0x92, 0x01, 0x13, 0x73, 0x8c, 0x01, 0x72, 0x32, +0x2e, 0x31, 0x20, 0x61, 0x72, 0x65, 0x80, 0x01, 0xb2, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0xf2, 0x02, 0x14, 0x32, 0xf2, 0x02, 0x00, 0x24, 0x03, 0xc7, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x20, 0x0a, 0x54, +0x68, 0x65, 0x10, 0x00, 0x06, 0x36, 0x00, 0x51, 0x20, 0x66, +0x72, 0x6f, 0x6d, 0x73, 0x00, 0xe0, 0x60, 0x43, 0x75, 0x73, +0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, +0x69, 0x00, 0x04, 0x47, 0x05, 0xb0, 0x60, 0x54, 0x79, 0x70, +0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x78, 0x00, 0xc1, +0x3a, 0x20, 0x0a, 0x2d, 0x20, 0x5f, 0x57, 0x69, 0x64, 0x74, +0x68, 0x5f, 0x83, 0x01, 0x31, 0x5f, 0x48, 0x65, 0x1d, 0x05, +0x12, 0x2c, 0xb8, 0x03, 0x01, 0x9c, 0x00, 0x00, 0x0e, 0x05, +0x70, 0x2d, 0x65, 0x78, 0x70, 0x6c, 0x61, 0x6e, 0x9c, 0x02, +0x20, 0x79, 0x2e, 0x35, 0x00, 0x05, 0x39, 0x02, 0x40, 0x73, +0x6b, 0x20, 0x66, 0xac, 0x01, 0x20, 0x20, 0x6c, 0xc6, 0x04, +0x00, 0xeb, 0x06, 0x51, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x8f, +0x03, 0x41, 0x70, 0x65, 0x72, 0x61, 0x7e, 0x00, 0x20, 0x74, +0x6f, 0x31, 0x04, 0x98, 0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, +0x6d, 0x65, 0x64, 0x2c, 0x07, 0xd4, 0x2e, 0x20, 0x42, 0x79, +0x20, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2c, 0xf0, +0x00, 0x01, 0x6b, 0x03, 0x03, 0x4a, 0x00, 0x14, 0x65, 0x2b, +0x00, 0x02, 0x39, 0x01, 0x20, 0x75, 0x63, 0xb1, 0x07, 0x32, +0x77, 0x61, 0x79, 0xff, 0x04, 0x34, 0x61, 0x6e, 0x79, 0x6f, +0x06, 0x11, 0x6d, 0x9d, 0x05, 0xf1, 0x00, 0x73, 0x20, 0x61, +0x62, 0x6f, 0x75, 0x74, 0x20, 0x61, 0x73, 0x20, 0x70, 0x72, +0x6f, 0x62, 0x19, 0x01, 0x20, 0x61, 0x73, 0x28, 0x00, 0x02, +0xa5, 0x05, 0x15, 0x2e, 0xbb, 0x00, 0x81, 0x6f, 0x76, 0x65, +0x72, 0x72, 0x69, 0x64, 0x65, 0xd7, 0x04, 0x00, 0xe2, 0x05, +0x62, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x88, 0x05, 0x00, +0xee, 0x01, 0x43, 0x63, 0x69, 0x73, 0x65, 0xc3, 0x07, 0x36, +0x20, 0x6f, 0x66, 0xd9, 0x00, 0x01, 0x72, 0x02, 0x1a, 0x73, +0xd5, 0x00, 0x01, 0xff, 0x06, 0x41, 0x79, 0x70, 0x69, 0x63, +0x76, 0x05, 0x10, 0x79, 0xe6, 0x07, 0x31, 0x61, 0x69, 0x6d, +0xe5, 0x07, 0x21, 0x68, 0x65, 0x01, 0x01, 0x10, 0x64, 0xaf, +0x01, 0x31, 0x6d, 0x69, 0x6e, 0xd0, 0x00, 0x05, 0x5f, 0x00, +0x3f, 0x73, 0x65, 0x74, 0x5c, 0x00, 0x00, 0x00, 0x8c, 0x01, +0x01, 0x34, 0x06, 0x11, 0x72, 0xe1, 0x05, 0x70, 0x6d, 0x20, +0x65, 0x78, 0x61, 0x63, 0x74, 0x4c, 0x04, 0x12, 0x73, 0xd8, +0x07, 0x01, 0x7d, 0x07, 0x40, 0x61, 0x6e, 0x73, 0x77, 0x47, +0x07, 0x40, 0x73, 0x61, 0x79, 0x29, 0x17, 0x06, 0x40, 0x6f, +0x75, 0x72, 0x2d, 0x3f, 0x00, 0x04, 0x39, 0x01, 0x01, 0x3b, +0x03, 0x0a, 0x19, 0x00, 0x32, 0x6f, 0x6c, 0x75, 0xa4, 0x04, +0x46, 0x4e, 0x6f, 0x74, 0x65, 0x41, 0x06, 0x42, 0x6d, 0x6f, +0x72, 0x65, 0x7a, 0x00, 0x00, 0x59, 0x00, 0x04, 0xd5, 0x01, +0x16, 0x2c, 0x1c, 0x00, 0x40, 0x6c, 0x69, 0x6b, 0x65, 0xc7, +0x06, 0x00, 0x61, 0x01, 0x01, 0x37, 0x00, 0x05, 0x4b, 0x00, +0x72, 0x73, 0x20, 0x73, 0x68, 0x6f, 0x72, 0x74, 0xbc, 0x05, +0x03, 0xc8, 0x07, 0xc2, 0x61, 0x72, 0x67, 0x65, 0x74, 0x20, +0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0xcb, 0x01, 0x01, 0xa5, +0x04, 0x31, 0x6f, 0x75, 0x74, 0x35, 0x01, 0x01, 0xf2, 0x04, +0x90, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2533; const char quick_help_text[] = "Slide a row at a time to arrange the tiles into order."; diff --git a/apps/plugins/puzzles/help/slant.c b/apps/plugins/puzzles/help/slant.c index c68cd7cd84..42c2de2732 100644 --- a/apps/plugins/puzzles/help/slant.c +++ b/apps/plugins/puzzles/help/slant.c @@ -1,66 +1,175 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2374 comp 1659 ratio 0.698821 level 11 saved 715 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 20: Slant " -"\n" -"You have a grid of squares. Your aim is to draw a diagonal line " -"through each square, and choose which way each line slants so that " -"the following conditions are met: " -"\n" -"- The diagonal lines never form a loop. " -"\n" -"- Any point with a circled number has precisely that many lines " -"meeting at it. (Thus, a 4 is the centre of a cross shape, " -"whereas a zero is the centre of a diamond shape - or rather, a " -"partial diamond shape, because a zero can never appear in the " -"middle of the grid because that would immediately cause a loop.) " -"\n" -"Credit for this puzzle goes to Nikoli [8]. " -"\n" -"[8] http://www.nikoli.co.jp/ja/puzzles/gokigen_naname (in Japanese) " -"\n" -"\n#20.1 Slant controls " -"\n" -"Left-clicking in a blank square will place a \\ in it (a line leaning " -"to the left, i.e. running from the top left of the square to the " -"bottom right). Right-clicking in a blank square will place a / in it " -"(leaning to the right, running from top right to bottom left). " -"\n" -"Continuing to click either button will cycle between the three " -"possible square contents. Thus, if you left-click repeatedly in a " -"blank square it will change from blank to \\ to / back to blank, and " -"if you right-click repeatedly the square will change from blank to / " -"to \\ back to blank. (Therefore, you can play the game entirely with " -"one button if you need to.) " -"\n" -"You can also use the cursor keys to move around the grid. Pressing " -"the return or space keys will place a \\ or a /, respectively, and " -"will then cycle them as above. You can also press / or \\ to place a " -"/ or \\, respectively, independent of what is already in the cursor " -"square. Backspace removes any line from the cursor square. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#20.2 Slant parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. At Hard " -"level, you are required to do deductions based on knowledge of " -"_relationships_ between squares rather than always being able to " -"deduce the exact contents of one square at a time. (For example, " -"you might know that two squares slant in the same direction, " -"even if you don't yet know what that direction is, and this " -"might enable you to deduce something about still other squares.) " -"Even at Hard level, guesswork and backtracking should never be " -"necessary. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf3, 0x51, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x30, 0x3a, 0x20, 0x53, 0x6c, 0x61, 0x6e, 0x74, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, +0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2e, 0x20, +0x59, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, +0x73, 0x20, 0x74, 0x6f, 0x20, 0x64, 0x72, 0x61, 0x77, 0x20, +0x61, 0x20, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, +0x20, 0x6c, 0x69, 0x6e, 0x65, 0x20, 0x74, 0x68, 0x72, 0x6f, +0x75, 0x67, 0x68, 0x20, 0x65, 0x61, 0x63, 0x68, 0x3a, 0x00, +0xf1, 0x07, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x68, +0x6f, 0x6f, 0x73, 0x65, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, +0x20, 0x77, 0x61, 0x79, 0x22, 0x00, 0x02, 0x34, 0x00, 0x10, +0x73, 0x7b, 0x00, 0xfa, 0x23, 0x73, 0x20, 0x73, 0x6f, 0x20, +0x74, 0x68, 0x61, 0x74, 0x20, 0x74, 0x68, 0x65, 0x20, 0x66, +0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x20, 0x63, +0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, +0x61, 0x72, 0x65, 0x20, 0x6d, 0x65, 0x74, 0x3a, 0x20, 0x0a, +0x2d, 0x20, 0x54, 0x68, 0x65, 0x7a, 0x00, 0xf0, 0x05, 0x73, +0x20, 0x6e, 0x65, 0x76, 0x65, 0x72, 0x20, 0x66, 0x6f, 0x72, +0x6d, 0x20, 0x61, 0x20, 0x6c, 0x6f, 0x6f, 0x70, 0x2e, 0x29, +0x00, 0xf2, 0x1e, 0x41, 0x6e, 0x79, 0x20, 0x70, 0x6f, 0x69, +0x6e, 0x74, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, +0x63, 0x69, 0x72, 0x63, 0x6c, 0x65, 0x64, 0x20, 0x6e, 0x75, +0x6d, 0x62, 0x65, 0x72, 0x20, 0x68, 0x61, 0x73, 0x20, 0x70, +0x72, 0x65, 0x63, 0x69, 0x73, 0x65, 0x6c, 0x79, 0x81, 0x00, +0x43, 0x6d, 0x61, 0x6e, 0x79, 0x54, 0x00, 0x40, 0x6d, 0x65, +0x65, 0x74, 0x86, 0x00, 0xf1, 0x05, 0x61, 0x74, 0x20, 0x69, +0x74, 0x2e, 0x20, 0x28, 0x54, 0x68, 0x75, 0x73, 0x2c, 0x20, +0x61, 0x20, 0x34, 0x20, 0x69, 0x73, 0xa9, 0x00, 0x90, 0x63, +0x65, 0x6e, 0x74, 0x72, 0x65, 0x20, 0x6f, 0x66, 0x5a, 0x00, +0xfd, 0x0b, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x73, 0x68, 0x61, +0x70, 0x65, 0x2c, 0x20, 0x77, 0x68, 0x65, 0x72, 0x65, 0x61, +0x73, 0x20, 0x61, 0x20, 0x7a, 0x65, 0x72, 0x6f, 0x2f, 0x00, +0x02, 0x39, 0x01, 0x42, 0x6d, 0x6f, 0x6e, 0x64, 0x31, 0x00, +0xc0, 0x20, 0x2d, 0x20, 0x6f, 0x72, 0x20, 0x72, 0x61, 0x74, +0x68, 0x65, 0x72, 0x61, 0x00, 0x7a, 0x70, 0x61, 0x72, 0x74, +0x69, 0x61, 0x6c, 0x25, 0x00, 0x94, 0x2c, 0x20, 0x62, 0x65, +0x63, 0x61, 0x75, 0x73, 0x65, 0x56, 0x00, 0x33, 0x63, 0x61, +0x6e, 0xf7, 0x00, 0x91, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, +0x20, 0x69, 0x6e, 0x67, 0x00, 0x50, 0x6d, 0x69, 0x64, 0x64, +0x6c, 0x67, 0x00, 0x00, 0x0e, 0x00, 0x01, 0xc9, 0x01, 0x04, +0x3a, 0x00, 0x02, 0xe2, 0x00, 0xe0, 0x77, 0x6f, 0x75, 0x6c, +0x64, 0x20, 0x69, 0x6d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x74, +0xf9, 0x00, 0x01, 0x1d, 0x00, 0x04, 0x38, 0x01, 0x90, 0x29, +0x20, 0x0a, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x4e, 0x01, +0xf1, 0x01, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x70, 0x75, +0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x67, 0x6f, 0x65, 0xfc, 0x01, +0xf1, 0x0e, 0x4e, 0x69, 0x6b, 0x6f, 0x6c, 0x69, 0x20, 0x5b, +0x38, 0x5d, 0x2e, 0x20, 0x0a, 0x5b, 0x38, 0x5d, 0x20, 0x68, +0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, +0x6e, 0x1c, 0x00, 0xa2, 0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, +0x2f, 0x6a, 0x61, 0x2f, 0x3b, 0x00, 0xf2, 0x17, 0x73, 0x2f, +0x67, 0x6f, 0x6b, 0x69, 0x67, 0x65, 0x6e, 0x5f, 0x6e, 0x61, +0x6e, 0x61, 0x6d, 0x65, 0x20, 0x28, 0x69, 0x6e, 0x20, 0x4a, +0x61, 0x70, 0x61, 0x6e, 0x65, 0x73, 0x65, 0x29, 0x20, 0x0a, +0x0a, 0x23, 0x32, 0x30, 0x2e, 0x31, 0x87, 0x02, 0x00, 0xf5, +0x01, 0xf0, 0x05, 0x74, 0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, +0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, 0x69, 0x63, 0x6b, +0x69, 0x6e, 0x67, 0xdf, 0x00, 0x73, 0x61, 0x20, 0x62, 0x6c, +0x61, 0x6e, 0x6b, 0x5c, 0x02, 0xa0, 0x20, 0x77, 0x69, 0x6c, +0x6c, 0x20, 0x70, 0x6c, 0x61, 0x63, 0xbd, 0x00, 0x10, 0x5c, +0x21, 0x00, 0x52, 0x69, 0x74, 0x20, 0x28, 0x61, 0x59, 0x02, +0x40, 0x6c, 0x65, 0x61, 0x6e, 0x37, 0x00, 0x10, 0x74, 0x5a, +0x02, 0x00, 0x0f, 0x00, 0xc1, 0x66, 0x74, 0x2c, 0x20, 0x69, +0x2e, 0x65, 0x2e, 0x20, 0x72, 0x75, 0x6e, 0x1a, 0x00, 0x41, +0x66, 0x72, 0x6f, 0x6d, 0x1c, 0x00, 0x31, 0x74, 0x6f, 0x70, +0x20, 0x00, 0x03, 0x34, 0x01, 0x03, 0x5f, 0x00, 0x04, 0x3a, +0x00, 0xff, 0x04, 0x62, 0x6f, 0x74, 0x74, 0x6f, 0x6d, 0x20, +0x72, 0x69, 0x67, 0x68, 0x74, 0x29, 0x2e, 0x20, 0x52, 0x69, +0x67, 0x68, 0x96, 0x00, 0x17, 0x14, 0x2f, 0x96, 0x00, 0x0a, +0x8f, 0x00, 0x02, 0x4e, 0x00, 0x1b, 0x2c, 0x8b, 0x00, 0x22, +0x6f, 0x70, 0x18, 0x00, 0x33, 0x20, 0x74, 0x6f, 0x76, 0x00, +0x00, 0x97, 0x00, 0x00, 0x75, 0x00, 0x83, 0x0a, 0x43, 0x6f, +0x6e, 0x74, 0x69, 0x6e, 0x75, 0x42, 0x00, 0x01, 0x7e, 0x00, +0x30, 0x20, 0x65, 0x69, 0x31, 0x02, 0x72, 0x20, 0x62, 0x75, +0x74, 0x74, 0x6f, 0x6e, 0x77, 0x00, 0xc0, 0x63, 0x79, 0x63, +0x6c, 0x65, 0x20, 0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x0e, +0x02, 0x01, 0x94, 0x03, 0xa4, 0x65, 0x65, 0x20, 0x70, 0x6f, +0x73, 0x73, 0x69, 0x62, 0x6c, 0xdb, 0x00, 0x01, 0x64, 0x01, +0x62, 0x65, 0x6e, 0x74, 0x73, 0x2e, 0x20, 0xd5, 0x02, 0x85, +0x69, 0x66, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6c, 0x71, 0x01, +0xbf, 0x20, 0x72, 0x65, 0x70, 0x65, 0x61, 0x74, 0x65, 0x64, +0x6c, 0x79, 0xe3, 0x00, 0x00, 0x23, 0x69, 0x74, 0x6f, 0x00, +0x51, 0x68, 0x61, 0x6e, 0x67, 0x65, 0xbe, 0x00, 0x02, 0x21, +0x00, 0x00, 0x9d, 0x00, 0x10, 0x5c, 0x05, 0x00, 0x50, 0x2f, +0x20, 0x62, 0x61, 0x63, 0x0f, 0x00, 0x02, 0x18, 0x00, 0x01, +0x07, 0x04, 0x03, 0x66, 0x00, 0x01, 0xe4, 0x00, 0x0e, 0x67, +0x00, 0x07, 0x7a, 0x01, 0x0f, 0x5d, 0x00, 0x08, 0x11, 0x2f, +0x62, 0x00, 0x0a, 0x5d, 0x00, 0x00, 0x9b, 0x03, 0x00, 0x71, +0x03, 0x50, 0x66, 0x6f, 0x72, 0x65, 0x2c, 0x62, 0x00, 0x00, +0x1b, 0x03, 0x00, 0x82, 0x01, 0x12, 0x79, 0x02, 0x03, 0x00, +0x71, 0x02, 0x82, 0x65, 0x6e, 0x74, 0x69, 0x72, 0x65, 0x6c, +0x79, 0x09, 0x04, 0x33, 0x6f, 0x6e, 0x65, 0x37, 0x01, 0x04, +0x94, 0x00, 0x70, 0x6e, 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, +0xfe, 0x02, 0x13, 0x59, 0x41, 0x00, 0x82, 0x61, 0x6c, 0x73, +0x6f, 0x20, 0x75, 0x73, 0x65, 0xbc, 0x03, 0x91, 0x75, 0x72, +0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x03, 0x03, 0x20, +0x6d, 0x6f, 0x26, 0x05, 0x55, 0x72, 0x6f, 0x75, 0x6e, 0x64, +0x66, 0x03, 0xa2, 0x2e, 0x20, 0x50, 0x72, 0x65, 0x73, 0x73, +0x69, 0x6e, 0x67, 0xe2, 0x01, 0x50, 0x65, 0x74, 0x75, 0x72, +0x6e, 0xd9, 0x03, 0x51, 0x73, 0x70, 0x61, 0x63, 0x65, 0x3b, +0x00, 0x0c, 0xb2, 0x02, 0x20, 0x6f, 0x72, 0x23, 0x02, 0xe1, +0x2c, 0x20, 0x72, 0x65, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, +0x76, 0x65, 0x6c, 0x79, 0x2b, 0x01, 0x01, 0x29, 0x00, 0x00, +0x47, 0x00, 0x11, 0x6e, 0xd3, 0x01, 0x01, 0x84, 0x00, 0x20, +0x6d, 0x20, 0x52, 0x04, 0x69, 0x62, 0x6f, 0x76, 0x65, 0x2e, +0x20, 0xa4, 0x00, 0x10, 0x70, 0x77, 0x00, 0x51, 0x20, 0x2f, +0x20, 0x6f, 0x72, 0x7c, 0x01, 0x04, 0x60, 0x00, 0x03, 0x12, +0x00, 0x0c, 0x5e, 0x00, 0xa1, 0x69, 0x6e, 0x64, 0x65, 0x70, +0x65, 0x6e, 0x64, 0x65, 0x6e, 0xf0, 0x02, 0x40, 0x77, 0x68, +0x61, 0x74, 0xa1, 0x04, 0x60, 0x61, 0x6c, 0x72, 0x65, 0x61, +0x64, 0xed, 0x01, 0x07, 0xf0, 0x00, 0x03, 0x90, 0x01, 0x62, +0x2e, 0x20, 0x42, 0x61, 0x63, 0x6b, 0xc7, 0x00, 0x20, 0x72, +0x65, 0xfc, 0x00, 0x24, 0x73, 0x20, 0x27, 0x05, 0x03, 0xbb, +0x02, 0x0e, 0x33, 0x00, 0x32, 0x0a, 0x28, 0x41, 0xc3, 0x00, +0x32, 0x20, 0x61, 0x63, 0xc3, 0x05, 0x90, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x65, 0x00, 0x21, 0x73, +0x65, 0x16, 0x00, 0x40, 0x20, 0x32, 0x2e, 0x31, 0xdc, 0x05, +0x02, 0xca, 0x00, 0xa4, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, +0x62, 0x6c, 0x65, 0x2e, 0x15, 0x04, 0x12, 0x32, 0x15, 0x04, +0x00, 0x13, 0x05, 0xe6, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, +0x73, 0x20, 0x0a, 0x54, 0x68, 0x65, 0x73, 0x65, 0x12, 0x00, +0x01, 0x1c, 0x06, 0x05, 0x3b, 0x00, 0x07, 0x91, 0x00, 0xe1, +0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, +0x27, 0x20, 0x6f, 0x70, 0x6e, 0x00, 0x22, 0x6f, 0x6e, 0x1a, +0x00, 0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, +0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, +0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x9b, 0x02, +0x60, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x42, 0x05, 0x02, +0x3e, 0x05, 0x26, 0x69, 0x6e, 0x07, 0x07, 0xd0, 0x0a, 0x5f, +0x44, 0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, +0x5f, 0x97, 0x03, 0x03, 0xac, 0x04, 0x10, 0x74, 0x93, 0x06, +0x05, 0x1a, 0x00, 0x05, 0x7d, 0x05, 0x40, 0x65, 0x6e, 0x65, +0x72, 0xdf, 0x02, 0x03, 0x43, 0x05, 0xf2, 0x00, 0x2e, 0x20, +0x41, 0x74, 0x20, 0x48, 0x61, 0x72, 0x64, 0x20, 0x6c, 0x65, +0x76, 0x65, 0x6c, 0xad, 0x02, 0x20, 0x61, 0x72, 0x56, 0x01, +0x61, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5b, 0x07, 0x63, +0x6f, 0x20, 0x64, 0x65, 0x64, 0x75, 0x35, 0x01, 0x50, 0x62, +0x61, 0x73, 0x65, 0x64, 0xb8, 0x00, 0x81, 0x6b, 0x6e, 0x6f, +0x77, 0x6c, 0x65, 0x64, 0x67, 0x98, 0x00, 0x51, 0x5f, 0x72, +0x65, 0x6c, 0x61, 0x21, 0x00, 0x53, 0x68, 0x69, 0x70, 0x73, +0x5f, 0xf2, 0x03, 0x05, 0xa8, 0x00, 0x02, 0x4c, 0x06, 0x00, +0xbe, 0x05, 0x01, 0x24, 0x02, 0x71, 0x77, 0x61, 0x79, 0x73, +0x20, 0x62, 0x65, 0xcc, 0x06, 0x10, 0x62, 0x4d, 0x02, 0x03, +0x62, 0x00, 0x02, 0xdb, 0x02, 0x55, 0x65, 0x78, 0x61, 0x63, +0x74, 0x12, 0x04, 0x00, 0x5e, 0x00, 0x24, 0x6f, 0x6e, 0x8a, +0x03, 0x00, 0xfc, 0x06, 0xc0, 0x61, 0x20, 0x74, 0x69, 0x6d, +0x65, 0x2e, 0x20, 0x28, 0x46, 0x6f, 0x72, 0x2d, 0x00, 0x33, +0x6d, 0x70, 0x6c, 0x67, 0x03, 0x10, 0x6d, 0x2e, 0x01, 0x01, +0x99, 0x00, 0x03, 0xbd, 0x07, 0x24, 0x77, 0x6f, 0x82, 0x00, +0x02, 0xd8, 0x07, 0x04, 0x4e, 0x02, 0x30, 0x73, 0x61, 0x6d, +0x1f, 0x01, 0x12, 0x72, 0xf4, 0x01, 0x55, 0x2c, 0x20, 0x65, +0x76, 0x65, 0x7a, 0x03, 0x82, 0x64, 0x6f, 0x6e, 0x27, 0x74, +0x20, 0x79, 0x65, 0x49, 0x00, 0x01, 0x90, 0x02, 0x01, 0x4e, +0x00, 0x06, 0x30, 0x00, 0x31, 0x20, 0x69, 0x73, 0x15, 0x03, +0x01, 0x8d, 0x06, 0x03, 0x75, 0x00, 0x20, 0x65, 0x6e, 0xca, +0x00, 0x00, 0x41, 0x00, 0x07, 0xce, 0x00, 0x62, 0x73, 0x6f, +0x6d, 0x65, 0x74, 0x68, 0xe7, 0x00, 0x60, 0x6f, 0x75, 0x74, +0x20, 0x73, 0x74, 0x46, 0x03, 0x10, 0x6f, 0x0b, 0x01, 0x05, +0xc2, 0x01, 0x30, 0x29, 0x20, 0x45, 0x7d, 0x00, 0x1a, 0x61, +0x88, 0x01, 0x90, 0x67, 0x75, 0x65, 0x73, 0x73, 0x77, 0x6f, +0x72, 0x6b, 0x68, 0x00, 0x01, 0x5e, 0x04, 0x32, 0x74, 0x72, +0x61, 0xe1, 0x05, 0x20, 0x73, 0x68, 0x30, 0x07, 0x03, 0x6a, +0x07, 0xf0, 0x01, 0x62, 0x65, 0x20, 0x6e, 0x65, 0x63, 0x65, +0x73, 0x73, 0x61, 0x72, 0x79, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2374; const char quick_help_text[] = "Draw a maze of slanting lines that matches the clues."; diff --git a/apps/plugins/puzzles/help/solo.c b/apps/plugins/puzzles/help/solo.c index 5033f9131d..0913368947 100644 --- a/apps/plugins/puzzles/help/solo.c +++ b/apps/plugins/puzzles/help/solo.c @@ -1,137 +1,374 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 6245 comp 3641 ratio 0.583026 level 11 saved 2604 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 11: Solo " -"\n" -"You have a square grid, which is divided into as many equally sized " -"sub-blocks as the grid has rows. Each square must be filled in with " -"a digit from 1 to the size of the grid, in such a way that " -"\n" -"- every row contains only one occurrence of each digit " -"\n" -"- every column contains only one occurrence of each digit " -"\n" -"- every block contains only one occurrence of each digit. " -"\n" -"- (optionally, by default off) each of the square's two main " -"diagonals contains only one occurrence of each digit. " -"\n" -"You are given some of the numbers as clues; your aim is to place the " -"rest of the numbers correctly. " -"\n" -"Under the default settings, the sub-blocks are square or " -"rectangular. The default puzzle size is 3x3 (a 9x9 actual grid, " -"divided into nine 3x3 blocks). You can also select sizes with " -"rectangular blocks instead of square ones, such as 2x3 (a 6x6 grid " -"divided into six 3x2 blocks). Alternatively, you can select `jigsaw' " -"mode, in which the sub-blocks are arbitrary shapes which differ " -"between individual puzzles. " -"\n" -"Another available mode is `killer'. In this mode, clues are not " -"given in the form of filled-in squares; instead, the grid is divided " -"into `cages' by coloured lines, and for each cage the game tells " -"you what the sum of all the digits in that cage should be. Also, " -"no digit may appear more than once within a cage, even if the cage " -"crosses the boundaries of existing regions. " -"\n" -"If you select a puzzle size which requires more than 9 digits, the " -"additional digits will be letters of the alphabet. For example, if " -"you select 3x4 then the digits which go in your grid will be 1 to 9, " -"plus `a', `b' and `c'. This cannot be selected for killer puzzles. " -"\n" -"I first saw this puzzle in Nikoli [5], although it's also been " -"popularised by various newspapers under the name `Sudoku' or `Su " -"Doku'. Howard Garns is considered the inventor of the modern form of " -"the puzzle, and it was first published in _Dell Pencil Puzzles and " -"Word Games_. A more elaborate treatment of the history of the puzzle " -"can be found on Wikipedia [6]. " -"\n" -"[5] http://www.nikoli.co.jp/en/puzzles/sudoku.html (beware of Flash) " -"\n" -"[6] http://en.wikipedia.org/wiki/Sudoku " -"\n" -"\n#11.1 Solo controls " -"\n" -"To play Solo, simply click the mouse in any empty square and then " -"type a digit or letter on the keyboard to fill that square. If you " -"make a mistake, click the mouse in the incorrect square and press " -"Space to clear it again (or use the Undo feature). " -"\n" -"If you _right_-click in a square and then type a number, that " -"number will be entered in the square as a `pencil mark'. You can " -"have pencil marks for multiple numbers in the same square. Squares " -"containing filled-in numbers cannot also contain pencil marks. " -"\n" -"The game pays no attention to pencil marks, so exactly what you " -"use them for is up to you: you can use them as reminders that a " -"particular square needs to be re-examined once you know more about " -"a particular number, or you can use them as lists of the possible " -"numbers in a given square, or anything else you feel like. " -"\n" -"To erase a single pencil mark, right-click in the square and type " -"the same number again. " -"\n" -"All pencil marks in a square are erased when you left-click and type " -"a number, or when you left-click and press space. Right-clicking and " -"pressing space will also erase pencil marks. " -"\n" -"Alternatively, use the cursor keys to move the mark around the grid. " -"Pressing the return key toggles the mark (from a normal mark to a " -"pencil mark), and typing a number in is entered in the square in the " -"appropriate way; typing in a 0 or using the space bar will clear a " -"filled square. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#11.2 Solo parameters " -"\n" -"Solo allows you to configure two separate dimensions of the puzzle " -"grid on the `Type' menu: the number of columns, and the number of " -"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.) " -"\n" -"If you tick the `X' checkbox, Solo will apply the optional extra " -"constraint that the two main diagonals of the grid also contain " -"one of every digit. (This is sometimes known as `Sudoku-X' in " -"newspapers.) In this mode, the squares on the two main diagonals " -"will be shaded slightly so that you know it's enabled. " -"\n" -"If you tick the `Jigsaw' checkbox, Solo will generate randomly " -"shaped sub-blocks. In this mode, the actual grid size will be taken " -"to be the product of the numbers entered in the `Columns' and `Rows' " -"boxes. There is no reason why you have to enter a number greater " -"than 1 in both boxes; Jigsaw mode has no constraint on the grid " -"size, and it can even be a prime number if you feel like it. " -"\n" -"If you tick the `Killer' checkbox, Solo will generate a set of " -"of cages, which are randomly shaped and drawn in an outline of a " -"different colour. Each of these regions contains a smaller clue " -"which shows the digit sum of all the squares in this region. " -"\n" -"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. " -"\n" -"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 `Trivial' and `Basic' there will be " -"a square you can fill in with a single number at all times, whereas " -"at `Intermediate' level and beyond you will have to make partial " -"deductions about the _set_ of squares a number could be in (or the " -"set of numbers that could be in a square). At `Unreasonable' level, " -"even this is not enough, and you will eventually have to make a " -"guess, and then backtrack if it turns out to be wrong. " -"\n" -"Generating difficult puzzles is itself difficult: if you select one " -"of the higher difficulty levels, 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. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x52, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x31, 0x3a, 0x20, 0x53, 0x6f, 0x6c, 0x6f, 0x20, +0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, +0x61, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x20, 0x67, +0x72, 0x69, 0x64, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, 0x68, +0x20, 0x69, 0x73, 0x20, 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, +0x64, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x20, 0x61, 0x73, 0x20, +0x6d, 0x61, 0x6e, 0x79, 0x20, 0x65, 0x71, 0x75, 0x61, 0x6c, +0x6c, 0x79, 0x20, 0x73, 0x69, 0x7a, 0x65, 0x64, 0x20, 0x73, +0x75, 0x62, 0x2d, 0x62, 0x6c, 0x6f, 0x63, 0x6b, 0x73, 0x21, +0x00, 0x22, 0x74, 0x68, 0x44, 0x00, 0xf4, 0x00, 0x20, 0x68, +0x61, 0x73, 0x20, 0x72, 0x6f, 0x77, 0x73, 0x2e, 0x20, 0x45, +0x61, 0x63, 0x68, 0x5f, 0x00, 0xc1, 0x6d, 0x75, 0x73, 0x74, +0x20, 0x62, 0x65, 0x20, 0x66, 0x69, 0x6c, 0x6c, 0x57, 0x00, +0xf0, 0x08, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, 0x61, 0x20, +0x64, 0x69, 0x67, 0x69, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x20, 0x31, 0x20, 0x74, 0x6f, 0x48, 0x00, 0x01, 0x60, 0x00, +0x35, 0x20, 0x6f, 0x66, 0x54, 0x00, 0x10, 0x2c, 0x30, 0x00, +0x30, 0x73, 0x75, 0x63, 0x30, 0x00, 0xf0, 0x02, 0x77, 0x61, +0x79, 0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x0a, 0x2d, 0x20, +0x65, 0x76, 0x65, 0x72, 0x79, 0x6d, 0x00, 0xf1, 0x0d, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x20, 0x6f, +0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x63, +0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x63, 0x4a, 0x00, 0x41, +0x65, 0x61, 0x63, 0x68, 0x6b, 0x00, 0x07, 0x38, 0x00, 0x6f, +0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x3b, 0x00, 0x22, 0x01, +0xf7, 0x00, 0x0f, 0x3a, 0x00, 0x18, 0x10, 0x2e, 0x3b, 0x00, +0x70, 0x28, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x01, +0xf1, 0x02, 0x2c, 0x20, 0x62, 0x79, 0x20, 0x64, 0x65, 0x66, +0x61, 0x75, 0x6c, 0x74, 0x20, 0x6f, 0x66, 0x66, 0x29, 0x2c, +0x00, 0x03, 0xf3, 0x00, 0x03, 0x33, 0x01, 0xf0, 0x01, 0x27, +0x73, 0x20, 0x74, 0x77, 0x6f, 0x20, 0x6d, 0x61, 0x69, 0x6e, +0x20, 0x64, 0x69, 0x61, 0x67, 0x3a, 0x00, 0x1f, 0x73, 0x74, +0x00, 0x19, 0x02, 0xe6, 0x01, 0x01, 0xdc, 0x01, 0x85, 0x69, +0x76, 0x65, 0x6e, 0x20, 0x73, 0x6f, 0x6d, 0x56, 0x01, 0x61, +0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0xb9, 0x01, 0xf0, 0x03, +0x63, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x20, 0x79, 0x6f, 0x75, +0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x87, 0x01, +0x51, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x2b, 0x00, 0x4c, 0x72, +0x65, 0x73, 0x74, 0x37, 0x00, 0xf0, 0x02, 0x63, 0x6f, 0x72, +0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, 0x2e, 0x20, 0x0a, 0x55, +0x6e, 0x64, 0x65, 0x72, 0x1e, 0x00, 0x05, 0xd1, 0x00, 0x90, +0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x16, +0x00, 0x09, 0x27, 0x02, 0x24, 0x72, 0x65, 0x10, 0x02, 0x30, +0x6f, 0x72, 0x20, 0x42, 0x00, 0xa7, 0x61, 0x6e, 0x67, 0x75, +0x6c, 0x61, 0x72, 0x2e, 0x20, 0x54, 0x40, 0x00, 0x52, 0x70, +0x75, 0x7a, 0x7a, 0x6c, 0x06, 0x02, 0x00, 0x8e, 0x00, 0xf2, +0x02, 0x33, 0x78, 0x33, 0x20, 0x28, 0x61, 0x20, 0x39, 0x78, +0x39, 0x20, 0x61, 0x63, 0x74, 0x75, 0x61, 0x6c, 0x14, 0x02, +0x0a, 0xa3, 0x02, 0x41, 0x6e, 0x69, 0x6e, 0x65, 0x2a, 0x00, +0x02, 0x6b, 0x00, 0x30, 0x29, 0x2e, 0x20, 0xfd, 0x00, 0xf1, +0x00, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, +0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x53, 0x00, 0x11, 0x73, +0x7a, 0x02, 0x08, 0x7e, 0x00, 0x13, 0x20, 0x9f, 0x00, 0xa5, +0x69, 0x6e, 0x73, 0x74, 0x65, 0x61, 0x64, 0x20, 0x6f, 0x66, +0xa6, 0x00, 0x43, 0x6e, 0x65, 0x73, 0x2c, 0x7a, 0x02, 0x32, +0x73, 0x20, 0x32, 0x89, 0x00, 0x31, 0x36, 0x78, 0x36, 0x82, +0x00, 0x0a, 0x81, 0x00, 0x76, 0x73, 0x69, 0x78, 0x20, 0x33, +0x78, 0x32, 0x80, 0x00, 0xb0, 0x41, 0x6c, 0x74, 0x65, 0x72, +0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0xf1, 0x01, 0x12, 0x79, +0x8f, 0x00, 0x04, 0x8a, 0x00, 0xd0, 0x60, 0x6a, 0x69, 0x67, +0x73, 0x61, 0x77, 0x27, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0xe0, +0x02, 0x02, 0x7b, 0x03, 0x0f, 0x32, 0x01, 0x01, 0xe0, 0x61, +0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, 0x79, 0x20, 0x73, +0x68, 0x61, 0x70, 0xc0, 0x00, 0x21, 0x68, 0x69, 0xe5, 0x01, +0xf1, 0x00, 0x66, 0x66, 0x65, 0x72, 0x20, 0x62, 0x65, 0x74, +0x77, 0x65, 0x65, 0x6e, 0x20, 0x69, 0x6e, 0x8f, 0x00, 0x33, +0x75, 0x61, 0x6c, 0x40, 0x01, 0xf0, 0x06, 0x73, 0x2e, 0x20, +0x0a, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x20, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x6f, 0x00, +0x01, 0x55, 0x01, 0x20, 0x60, 0x6b, 0x89, 0x03, 0xb2, 0x72, +0x27, 0x2e, 0x20, 0x49, 0x6e, 0x20, 0x74, 0x68, 0x69, 0x73, +0x89, 0x00, 0x01, 0x0e, 0x02, 0x02, 0x77, 0x00, 0x33, 0x6e, +0x6f, 0x74, 0x39, 0x02, 0x21, 0x69, 0x6e, 0x97, 0x00, 0x73, +0x66, 0x6f, 0x72, 0x6d, 0x20, 0x6f, 0x66, 0xc3, 0x03, 0x33, +0x2d, 0x69, 0x6e, 0x26, 0x01, 0x24, 0x73, 0x3b, 0x3a, 0x01, +0x15, 0x2c, 0xb2, 0x03, 0x0d, 0x43, 0x04, 0x91, 0x60, 0x63, +0x61, 0x67, 0x65, 0x73, 0x27, 0x20, 0x62, 0x78, 0x03, 0x81, +0x6f, 0x75, 0x72, 0x65, 0x64, 0x20, 0x6c, 0x69, 0x5f, 0x01, +0x30, 0x61, 0x6e, 0x64, 0x5c, 0x00, 0x02, 0xbb, 0x02, 0x00, +0x27, 0x00, 0x02, 0x46, 0x00, 0x91, 0x61, 0x6d, 0x65, 0x20, +0x74, 0x65, 0x6c, 0x6c, 0x73, 0x3b, 0x01, 0x43, 0x77, 0x68, +0x61, 0x74, 0x1d, 0x01, 0x01, 0x85, 0x00, 0x30, 0x61, 0x6c, +0x6c, 0x0f, 0x00, 0x02, 0xeb, 0x02, 0x00, 0xbb, 0x01, 0x01, +0x15, 0x04, 0x02, 0x3f, 0x00, 0x90, 0x73, 0x68, 0x6f, 0x75, +0x6c, 0x64, 0x20, 0x62, 0x65, 0x85, 0x01, 0x63, 0x73, 0x6f, +0x2c, 0x20, 0x6e, 0x6f, 0xc1, 0x03, 0xe0, 0x6d, 0x61, 0x79, +0x20, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x20, 0x6d, 0x6f, +0x72, 0x69, 0x00, 0x71, 0x61, 0x6e, 0x20, 0x6f, 0x6e, 0x63, +0x65, 0x14, 0x02, 0x41, 0x69, 0x6e, 0x20, 0x61, 0x42, 0x00, +0x31, 0x2c, 0x20, 0x65, 0xf8, 0x00, 0x01, 0xf5, 0x02, 0x02, +0x54, 0x00, 0x62, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0xe7, +0x04, 0xa1, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x61, 0x72, 0x69, +0x65, 0x73, 0x72, 0x03, 0x30, 0x78, 0x69, 0x73, 0xef, 0x02, +0x70, 0x20, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x77, 0x01, +0x20, 0x49, 0x66, 0xb4, 0x00, 0x04, 0xeb, 0x01, 0x18, 0x61, +0xd1, 0x02, 0x03, 0xbd, 0x01, 0x87, 0x72, 0x65, 0x71, 0x75, +0x69, 0x72, 0x65, 0x73, 0x87, 0x00, 0x12, 0x39, 0xa4, 0x00, +0x03, 0x36, 0x03, 0x42, 0x61, 0x64, 0x64, 0x69, 0x2e, 0x04, +0x04, 0xe3, 0x00, 0x40, 0x77, 0x69, 0x6c, 0x6c, 0x42, 0x05, +0x74, 0x6c, 0x65, 0x74, 0x74, 0x65, 0x72, 0x73, 0x93, 0x03, +0xb0, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x62, 0x65, 0x74, 0x2e, +0x20, 0x46, 0x44, 0x01, 0x50, 0x78, 0x61, 0x6d, 0x70, 0x6c, +0x51, 0x02, 0x09, 0x83, 0x00, 0x30, 0x33, 0x78, 0x34, 0x2d, +0x00, 0x16, 0x6e, 0x33, 0x01, 0x04, 0x46, 0x02, 0x51, 0x67, +0x6f, 0x20, 0x69, 0x6e, 0xfd, 0x03, 0x01, 0xb8, 0x01, 0x04, +0x66, 0x00, 0x02, 0x8c, 0x05, 0xf1, 0x01, 0x39, 0x2c, 0x20, +0x70, 0x6c, 0x75, 0x73, 0x20, 0x60, 0x61, 0x27, 0x2c, 0x20, +0x60, 0x62, 0x27, 0xab, 0x01, 0x30, 0x60, 0x63, 0x27, 0xaf, +0x03, 0x20, 0x69, 0x73, 0xcf, 0x02, 0x20, 0x6e, 0x6f, 0xd6, +0x05, 0x03, 0x67, 0x00, 0x12, 0x65, 0xc8, 0x01, 0x02, 0x5a, +0x02, 0x07, 0x86, 0x02, 0xb1, 0x49, 0x20, 0x66, 0x69, 0x72, +0x73, 0x74, 0x20, 0x73, 0x61, 0x77, 0x6b, 0x02, 0x03, 0x1b, +0x00, 0x00, 0x79, 0x00, 0xf2, 0x0a, 0x4e, 0x69, 0x6b, 0x6f, +0x6c, 0x69, 0x20, 0x5b, 0x35, 0x5d, 0x2c, 0x20, 0x61, 0x6c, +0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x20, 0x69, 0x74, 0x27, +0x73, 0xb7, 0x03, 0x10, 0x62, 0xda, 0x02, 0x30, 0x70, 0x6f, +0x70, 0xa6, 0x03, 0x40, 0x69, 0x73, 0x65, 0x64, 0x3f, 0x02, +0xf0, 0x00, 0x76, 0x61, 0x72, 0x69, 0x6f, 0x75, 0x73, 0x20, +0x6e, 0x65, 0x77, 0x73, 0x70, 0x61, 0x70, 0x0b, 0x01, 0x15, +0x75, 0x83, 0x04, 0x10, 0x6e, 0x36, 0x02, 0xb0, 0x60, 0x53, +0x75, 0x64, 0x6f, 0x6b, 0x75, 0x27, 0x20, 0x6f, 0x72, 0x0c, +0x00, 0x20, 0x20, 0x44, 0x0d, 0x00, 0xf1, 0x01, 0x2e, 0x20, +0x48, 0x6f, 0x77, 0x61, 0x72, 0x64, 0x20, 0x47, 0x61, 0x72, +0x6e, 0x73, 0x20, 0x69, 0x4b, 0x05, 0x40, 0x73, 0x69, 0x64, +0x65, 0x8a, 0x02, 0x20, 0x74, 0x68, 0x8e, 0x00, 0x62, 0x76, +0x65, 0x6e, 0x74, 0x6f, 0x72, 0x59, 0x01, 0x02, 0x2a, 0x03, +0x21, 0x72, 0x6e, 0xf6, 0x02, 0x03, 0x13, 0x00, 0x03, 0xb8, +0x00, 0x02, 0xb2, 0x02, 0x63, 0x69, 0x74, 0x20, 0x77, 0x61, +0x73, 0xda, 0x00, 0x72, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, +0x68, 0xd9, 0x06, 0xe2, 0x5f, 0x44, 0x65, 0x6c, 0x6c, 0x20, +0x50, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x20, 0x50, 0x06, 0x01, +0x01, 0x33, 0x00, 0x21, 0x57, 0x6f, 0x7f, 0x00, 0x72, 0x6d, +0x65, 0x73, 0x5f, 0x2e, 0x20, 0x41, 0xfb, 0x01, 0xf5, 0x03, +0x65, 0x6c, 0x61, 0x62, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x20, +0x74, 0x72, 0x65, 0x61, 0x74, 0x6d, 0x65, 0x6e, 0x6d, 0x05, +0x7a, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x7d, 0x00, +0x00, 0x75, 0x01, 0x01, 0x48, 0x07, 0x00, 0x84, 0x02, 0xf1, +0x15, 0x20, 0x6f, 0x6e, 0x20, 0x57, 0x69, 0x6b, 0x69, 0x70, +0x65, 0x64, 0x69, 0x61, 0x20, 0x5b, 0x36, 0x5d, 0x2e, 0x20, +0x0a, 0x5b, 0x35, 0x5d, 0x20, 0x68, 0x74, 0x74, 0x70, 0x3a, +0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6e, 0x61, 0x01, 0xa3, +0x2e, 0x63, 0x6f, 0x2e, 0x6a, 0x70, 0x2f, 0x65, 0x6e, 0x2f, +0x96, 0x01, 0x21, 0x2f, 0x73, 0x23, 0x01, 0xc1, 0x2e, 0x68, +0x74, 0x6d, 0x6c, 0x20, 0x28, 0x62, 0x65, 0x77, 0x61, 0x72, +0x1c, 0x06, 0xa5, 0x46, 0x6c, 0x61, 0x73, 0x68, 0x29, 0x20, +0x0a, 0x5b, 0x36, 0x46, 0x00, 0x44, 0x65, 0x6e, 0x2e, 0x77, +0x64, 0x00, 0x50, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x0e, 0x00, +0x12, 0x2f, 0x63, 0x01, 0x81, 0x20, 0x0a, 0x0a, 0x23, 0x31, +0x31, 0x2e, 0x31, 0x56, 0x08, 0x01, 0x9c, 0x06, 0x71, 0x72, +0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x41, 0x06, 0x11, 0x79, +0x17, 0x00, 0xe3, 0x2c, 0x20, 0x73, 0x69, 0x6d, 0x70, 0x6c, +0x79, 0x20, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x5b, 0x01, 0x21, +0x75, 0x73, 0xff, 0x01, 0x01, 0x55, 0x08, 0x43, 0x6d, 0x70, +0x74, 0x79, 0x4b, 0x04, 0x00, 0x27, 0x01, 0x03, 0xa9, 0x02, +0x35, 0x79, 0x70, 0x65, 0x1e, 0x08, 0x23, 0x6f, 0x72, 0xf6, +0x02, 0x22, 0x20, 0x6f, 0xc3, 0x02, 0x50, 0x6b, 0x65, 0x79, +0x62, 0x6f, 0xcd, 0x01, 0x21, 0x74, 0x6f, 0x8f, 0x04, 0x01, +0xfd, 0x03, 0x03, 0x44, 0x00, 0x23, 0x2e, 0x20, 0x7f, 0x03, +0x30, 0x6d, 0x61, 0x6b, 0x43, 0x00, 0x8f, 0x6d, 0x69, 0x73, +0x74, 0x61, 0x6b, 0x65, 0x2c, 0x80, 0x00, 0x00, 0x03, 0xf8, +0x01, 0x03, 0xce, 0x06, 0x08, 0x84, 0x00, 0x81, 0x70, 0x72, +0x65, 0x73, 0x73, 0x20, 0x53, 0x70, 0x05, 0x07, 0x70, 0x6f, +0x20, 0x63, 0x6c, 0x65, 0x61, 0x72, 0xf3, 0x01, 0x20, 0x61, +0x67, 0x8f, 0x07, 0x62, 0x28, 0x6f, 0x72, 0x20, 0x75, 0x73, +0xa8, 0x04, 0xd6, 0x55, 0x6e, 0x64, 0x6f, 0x20, 0x66, 0x65, +0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0xfc, 0x03, 0x81, 0x5f, +0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x2d, 0x75, 0x00, 0x01, +0xeb, 0x00, 0x0f, 0xe3, 0x00, 0x04, 0x03, 0x54, 0x07, 0x11, +0x2c, 0xc3, 0x00, 0x03, 0x0d, 0x00, 0x05, 0x86, 0x03, 0x51, +0x65, 0x6e, 0x74, 0x65, 0x72, 0x56, 0x02, 0x07, 0x19, 0x08, +0x00, 0x8b, 0x06, 0x42, 0x61, 0x20, 0x60, 0x70, 0x61, 0x02, +0x55, 0x6d, 0x61, 0x72, 0x6b, 0x27, 0xee, 0x06, 0x02, 0xd5, +0x09, 0x07, 0x1b, 0x00, 0x11, 0x73, 0x93, 0x03, 0x75, 0x6d, +0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0xc1, 0x07, 0x05, 0x51, +0x00, 0x35, 0x61, 0x6d, 0x65, 0x37, 0x01, 0x11, 0x53, 0x08, +0x00, 0x05, 0x63, 0x08, 0x36, 0x69, 0x6e, 0x67, 0xeb, 0x05, +0x03, 0x39, 0x00, 0x04, 0xf4, 0x03, 0x01, 0x9e, 0x03, 0x04, +0x29, 0x00, 0x08, 0x6f, 0x00, 0x00, 0xef, 0x03, 0x14, 0x54, +0xbe, 0x05, 0x40, 0x70, 0x61, 0x79, 0x73, 0x7c, 0x05, 0x70, +0x61, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0xbc, 0x01, 0x18, +0x6f, 0x2d, 0x00, 0x00, 0x5b, 0x07, 0x10, 0x6f, 0xb3, 0x04, +0x00, 0x4a, 0x08, 0x01, 0xe2, 0x05, 0x00, 0x3b, 0x01, 0x04, +0x5a, 0x01, 0x10, 0x6d, 0xba, 0x00, 0x00, 0xa8, 0x03, 0x50, +0x75, 0x70, 0x20, 0x74, 0x6f, 0x1a, 0x00, 0x14, 0x3a, 0x45, +0x07, 0x06, 0x23, 0x00, 0x00, 0x6c, 0x0a, 0x30, 0x65, 0x6d, +0x69, 0x00, 0x04, 0x10, 0x73, 0x42, 0x01, 0x01, 0x6e, 0x05, +0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x33, 0x04, 0x04, 0x31, +0x01, 0x41, 0x6e, 0x65, 0x65, 0x64, 0xd6, 0x08, 0x10, 0x62, +0xcf, 0x08, 0x10, 0x2d, 0x25, 0x05, 0x41, 0x69, 0x6e, 0x65, +0x64, 0xfa, 0x05, 0x01, 0x54, 0x00, 0x42, 0x6b, 0x6e, 0x6f, +0x77, 0x90, 0x03, 0x4a, 0x61, 0x62, 0x6f, 0x75, 0x45, 0x00, +0x05, 0xa1, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, 0x02, 0x55, +0x6c, 0x69, 0x73, 0x74, 0x73, 0xa5, 0x03, 0x5a, 0x6f, 0x73, +0x73, 0x69, 0x62, 0x69, 0x01, 0x11, 0x61, 0x47, 0x07, 0x04, +0x2e, 0x07, 0x00, 0x48, 0x00, 0x00, 0xf8, 0x02, 0x20, 0x74, +0x68, 0x61, 0x01, 0x32, 0x65, 0x6c, 0x73, 0x82, 0x00, 0xa1, +0x66, 0x65, 0x65, 0x6c, 0x20, 0x6c, 0x69, 0x6b, 0x65, 0x2e, +0x3e, 0x03, 0x41, 0x65, 0x72, 0x61, 0x73, 0x9d, 0x0b, 0x49, +0x69, 0x6e, 0x67, 0x6c, 0xd1, 0x01, 0x21, 0x2c, 0x20, 0x5a, +0x02, 0x02, 0x59, 0x02, 0x0c, 0x19, 0x02, 0x21, 0x6e, 0x64, +0x56, 0x02, 0x04, 0xdc, 0x01, 0x04, 0x87, 0x00, 0x02, 0xb7, +0x02, 0x00, 0x10, 0x08, 0x29, 0x6c, 0x6c, 0x81, 0x01, 0x0a, +0x99, 0x02, 0x22, 0x72, 0x65, 0x78, 0x00, 0x61, 0x64, 0x20, +0x77, 0x68, 0x65, 0x6e, 0x97, 0x00, 0x33, 0x6c, 0x65, 0x66, +0x6b, 0x00, 0x06, 0x5d, 0x00, 0x17, 0x61, 0x12, 0x01, 0x0f, +0x2a, 0x00, 0x01, 0x07, 0x41, 0x03, 0x10, 0x73, 0x41, 0x03, +0x36, 0x2e, 0x20, 0x52, 0xb2, 0x00, 0x35, 0x69, 0x6e, 0x67, +0x20, 0x00, 0x00, 0xdd, 0x00, 0x02, 0x23, 0x00, 0x01, 0xf1, +0x02, 0x00, 0x55, 0x02, 0x03, 0xfa, 0x00, 0x0c, 0x53, 0x02, +0x0a, 0x4c, 0x09, 0x05, 0x7c, 0x03, 0x60, 0x63, 0x75, 0x72, +0x73, 0x6f, 0x72, 0x0e, 0x04, 0x01, 0xde, 0x01, 0x31, 0x6d, +0x6f, 0x76, 0x18, 0x00, 0x01, 0x37, 0x00, 0x30, 0x20, 0x61, +0x72, 0x23, 0x05, 0x05, 0x92, 0x08, 0x33, 0x2e, 0x20, 0x50, +0x73, 0x00, 0x03, 0xd6, 0x0a, 0x40, 0x74, 0x75, 0x72, 0x6e, +0x3b, 0x00, 0x86, 0x20, 0x74, 0x6f, 0x67, 0x67, 0x6c, 0x65, +0x73, 0x3a, 0x00, 0x10, 0x28, 0x8e, 0x0c, 0x00, 0xe7, 0x00, +0x52, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x14, 0x00, 0x00, 0x06, +0x0d, 0x08, 0x96, 0x00, 0x24, 0x29, 0x2c, 0x11, 0x01, 0x35, +0x69, 0x6e, 0x67, 0x13, 0x01, 0x00, 0x50, 0x01, 0x2f, 0x69, +0x73, 0xb7, 0x03, 0x02, 0x04, 0x70, 0x04, 0x00, 0x80, 0x08, +0x80, 0x72, 0x6f, 0x70, 0x72, 0x69, 0x61, 0x74, 0x65, 0xcd, +0x0c, 0x13, 0x3b, 0x44, 0x00, 0x02, 0x8b, 0x01, 0x20, 0x30, +0x20, 0x5b, 0x04, 0x04, 0xa6, 0x00, 0x03, 0x1d, 0x01, 0x22, +0x62, 0x61, 0x12, 0x04, 0x03, 0x87, 0x04, 0x13, 0x61, 0x97, +0x03, 0x05, 0xb9, 0x03, 0x32, 0x0a, 0x28, 0x41, 0x0e, 0x09, +0x00, 0x20, 0x0b, 0x00, 0x83, 0x08, 0x82, 0x20, 0x64, 0x65, +0x73, 0x63, 0x72, 0x69, 0x62, 0x83, 0x00, 0x31, 0x73, 0x65, +0x63, 0x7d, 0x03, 0x30, 0x32, 0x2e, 0x31, 0xe4, 0x01, 0x01, +0x67, 0x01, 0x06, 0x12, 0x0a, 0x23, 0x2e, 0x29, 0xc5, 0x05, +0x11, 0x32, 0xae, 0x05, 0x00, 0xf9, 0x02, 0x31, 0x61, 0x6d, +0x65, 0x62, 0x08, 0x10, 0x0a, 0x11, 0x00, 0x00, 0x6a, 0x09, +0x22, 0x6f, 0x77, 0x85, 0x09, 0x11, 0x74, 0xf4, 0x03, 0x40, +0x66, 0x69, 0x67, 0x75, 0xb5, 0x08, 0x10, 0x77, 0x57, 0x0b, +0x00, 0x2f, 0x00, 0x10, 0x74, 0x54, 0x08, 0x40, 0x6d, 0x65, +0x6e, 0x73, 0x7c, 0x00, 0x09, 0xaf, 0x06, 0x02, 0x7b, 0x01, +0x04, 0xb6, 0x05, 0xc6, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, +0x20, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x4f, 0x0c, 0x00, 0x71, +0x07, 0x03, 0x8c, 0x0d, 0x02, 0x0d, 0x0a, 0x0a, 0x1b, 0x00, +0x01, 0x4c, 0x0e, 0x11, 0x2c, 0x45, 0x0a, 0x06, 0x23, 0x0b, +0x01, 0x16, 0x0d, 0x0c, 0x69, 0x0a, 0x47, 0x2e, 0x20, 0x28, +0x54, 0x3d, 0x0e, 0x13, 0x61, 0xa6, 0x0d, 0x25, 0x69, 0x73, +0xdf, 0x07, 0x23, 0x72, 0x73, 0x01, 0x0d, 0x5f, 0x69, 0x73, +0x3a, 0x20, 0x66, 0x2f, 0x09, 0x07, 0x13, 0x32, 0x90, 0x00, +0x02, 0xb7, 0x07, 0x12, 0x33, 0x83, 0x00, 0x01, 0xa0, 0x0a, +0x03, 0x82, 0x0c, 0x02, 0x5b, 0x00, 0x01, 0x95, 0x01, 0x02, +0x72, 0x05, 0x19, 0x33, 0x32, 0x00, 0x12, 0x32, 0x01, 0x0f, +0x15, 0x29, 0x0e, 0x06, 0x14, 0x74, 0x7a, 0x06, 0xd1, 0x60, +0x58, 0x27, 0x20, 0x63, 0x68, 0x65, 0x63, 0x6b, 0x62, 0x6f, +0x78, 0x2c, 0x71, 0x01, 0x03, 0xfb, 0x02, 0x41, 0x70, 0x70, +0x6c, 0x79, 0x22, 0x00, 0x04, 0x25, 0x0e, 0x61, 0x20, 0x65, +0x78, 0x74, 0x72, 0x61, 0xa5, 0x08, 0x84, 0x74, 0x72, 0x61, +0x69, 0x6e, 0x74, 0x20, 0x74, 0x03, 0x0b, 0x0e, 0x17, 0x0e, +0x08, 0x2d, 0x0f, 0x09, 0x9c, 0x05, 0x02, 0x22, 0x0e, 0x12, +0x66, 0xb7, 0x0e, 0x04, 0x18, 0x0e, 0x11, 0x28, 0xbe, 0x09, +0x21, 0x69, 0x73, 0x12, 0x0e, 0x51, 0x74, 0x69, 0x6d, 0x65, +0x73, 0x01, 0x05, 0x44, 0x6e, 0x20, 0x61, 0x73, 0x3c, 0x09, +0x67, 0x2d, 0x58, 0x27, 0x20, 0x69, 0x6e, 0x64, 0x09, 0x2a, +0x2e, 0x29, 0x29, 0x0c, 0x07, 0xd9, 0x02, 0x00, 0x8c, 0x0e, +0x0f, 0x98, 0x00, 0x03, 0x05, 0xb5, 0x0a, 0x00, 0xba, 0x0c, +0x10, 0x64, 0xb2, 0x02, 0x10, 0x6c, 0x0a, 0x04, 0x00, 0x42, +0x10, 0x11, 0x6f, 0xcf, 0x00, 0x05, 0x7d, 0x05, 0x02, 0xf4, +0x09, 0x20, 0x65, 0x6e, 0x92, 0x02, 0x2f, 0x64, 0x2e, 0x38, +0x01, 0x00, 0x11, 0x4a, 0x2f, 0x0d, 0x0f, 0x3d, 0x01, 0x03, +0x41, 0x67, 0x65, 0x6e, 0x65, 0x86, 0x02, 0x72, 0x72, 0x61, +0x6e, 0x64, 0x6f, 0x6d, 0x6c, 0x29, 0x0d, 0x09, 0xa2, 0x10, +0x1e, 0x2e, 0xbe, 0x00, 0x08, 0x4d, 0x0e, 0x01, 0x35, 0x02, +0x05, 0xad, 0x00, 0x00, 0x2f, 0x08, 0x12, 0x6e, 0x2f, 0x06, +0x02, 0xcb, 0x02, 0x5b, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x05, +0x0f, 0x0d, 0xe6, 0x03, 0x22, 0x60, 0x43, 0x02, 0x02, 0x03, +0x26, 0x0b, 0x30, 0x52, 0x6f, 0x77, 0xef, 0x0c, 0x41, 0x6f, +0x78, 0x65, 0x73, 0xde, 0x0e, 0x00, 0x01, 0x04, 0x01, 0x0e, +0x07, 0x50, 0x72, 0x65, 0x61, 0x73, 0x6f, 0xef, 0x0d, 0x34, +0x79, 0x20, 0x79, 0x86, 0x11, 0x22, 0x74, 0x6f, 0x4e, 0x00, +0x06, 0x49, 0x04, 0x10, 0x67, 0x0e, 0x0a, 0x22, 0x65, 0x72, +0x1b, 0x0c, 0x10, 0x31, 0x64, 0x00, 0x42, 0x62, 0x6f, 0x74, +0x68, 0x50, 0x00, 0x22, 0x3b, 0x20, 0x0e, 0x01, 0x02, 0xcd, +0x0d, 0x20, 0x68, 0x61, 0x57, 0x00, 0x07, 0x29, 0x02, 0x03, +0x8f, 0x01, 0x05, 0xd9, 0x00, 0x05, 0xb1, 0x0a, 0x00, 0xbb, +0x06, 0x02, 0xda, 0x0c, 0x20, 0x62, 0x65, 0xce, 0x04, 0x26, +0x72, 0x69, 0x22, 0x06, 0x2a, 0x69, 0x66, 0x87, 0x06, 0x3f, +0x20, 0x69, 0x74, 0x87, 0x01, 0x01, 0x11, 0x4b, 0xdc, 0x0b, +0x0f, 0x87, 0x01, 0x0a, 0x01, 0xb7, 0x06, 0x10, 0x65, 0x2e, +0x01, 0x00, 0x03, 0x00, 0x01, 0xf7, 0x0d, 0x04, 0x58, 0x12, +0x2d, 0x61, 0x72, 0xa4, 0x01, 0x01, 0x9b, 0x00, 0x41, 0x64, +0x72, 0x61, 0x77, 0x67, 0x0e, 0x00, 0x8e, 0x0d, 0x52, 0x75, +0x74, 0x6c, 0x69, 0x6e, 0xc2, 0x03, 0x03, 0xe4, 0x0e, 0x33, +0x65, 0x6e, 0x74, 0x35, 0x0e, 0x36, 0x2e, 0x20, 0x45, 0x28, +0x11, 0x23, 0x73, 0x65, 0x73, 0x0d, 0x06, 0x16, 0x11, 0x00, +0x7b, 0x00, 0x20, 0x6d, 0x61, 0xa3, 0x00, 0x00, 0xc9, 0x0e, +0x03, 0x6d, 0x0d, 0x00, 0x10, 0x0e, 0x26, 0x77, 0x73, 0xfb, +0x0c, 0x07, 0x43, 0x0e, 0x09, 0xc6, 0x02, 0x12, 0x69, 0x22, +0x02, 0x02, 0x55, 0x00, 0x00, 0x2e, 0x07, 0x07, 0x42, 0x10, +0x09, 0xf9, 0x04, 0x21, 0x68, 0x65, 0x09, 0x07, 0x01, 0x28, +0x10, 0x71, 0x79, 0x6d, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x64, +0x00, 0x04, 0x2a, 0x0f, 0x05, 0x0a, 0x01, 0x16, 0x64, 0x05, +0x0d, 0x45, 0x4d, 0x6f, 0x72, 0x65, 0x2e, 0x00, 0x01, 0x9b, +0x0a, 0x17, 0x73, 0x27, 0x05, 0x90, 0x73, 0x20, 0x6c, 0x6f, +0x6f, 0x6b, 0x20, 0x70, 0x72, 0x3a, 0x11, 0x00, 0xd5, 0x0f, +0x11, 0x75, 0xac, 0x0e, 0x01, 0x7a, 0x00, 0x00, 0x2d, 0x00, +0x03, 0x6e, 0x08, 0x70, 0x65, 0x61, 0x73, 0x69, 0x65, 0x72, +0x2c, 0x16, 0x08, 0x01, 0x9d, 0x11, 0x06, 0x52, 0x00, 0x07, +0xff, 0x01, 0x00, 0xa4, 0x09, 0x01, 0xb7, 0x0c, 0x21, 0x63, +0x65, 0xd3, 0x08, 0x02, 0xd3, 0x0f, 0x02, 0x49, 0x02, 0x92, +0x6e, 0x65, 0x63, 0x65, 0x73, 0x73, 0x61, 0x72, 0x79, 0xde, +0x02, 0x01, 0x86, 0x07, 0x70, 0x65, 0x6e, 0x74, 0x2e, 0x20, +0x43, 0x6f, 0x08, 0x05, 0x63, 0x74, 0x65, 0x6c, 0x79, 0x20, +0x61, 0x54, 0x00, 0x24, 0x69, 0x63, 0x9d, 0x00, 0x01, 0xa4, +0x02, 0x02, 0x03, 0x10, 0x86, 0x72, 0x65, 0x65, 0x64, 0x6f, +0x6d, 0x20, 0x74, 0x61, 0x04, 0x00, 0x04, 0x0d, 0x24, 0x65, +0x77, 0x38, 0x10, 0x14, 0x73, 0x02, 0x09, 0x00, 0x97, 0x06, +0x57, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0xfc, 0x10, 0x0a, 0x44, +0x01, 0x01, 0xdd, 0x01, 0x00, 0x63, 0x09, 0x10, 0x74, 0xe3, +0x0c, 0x0f, 0x38, 0x01, 0x05, 0x16, 0x44, 0x25, 0x00, 0x52, +0x6c, 0x65, 0x76, 0x65, 0x6c, 0x9c, 0x10, 0x41, 0x6a, 0x75, +0x64, 0x67, 0x0e, 0x0e, 0x02, 0x07, 0x08, 0x01, 0xbd, 0x00, +0x26, 0x78, 0x69, 0x49, 0x00, 0x82, 0x74, 0x65, 0x63, 0x68, +0x6e, 0x69, 0x71, 0x75, 0xa2, 0x0f, 0x41, 0x64, 0x65, 0x64, +0x75, 0x03, 0x07, 0x04, 0x77, 0x0f, 0x01, 0x38, 0x0c, 0x57, +0x73, 0x6f, 0x6c, 0x76, 0x65, 0x84, 0x01, 0x11, 0x3a, 0xe1, +0x05, 0x02, 0x66, 0x00, 0x06, 0xa0, 0x0f, 0x12, 0x61, 0x65, +0x03, 0x22, 0x6f, 0x66, 0xb8, 0x03, 0x00, 0x16, 0x0b, 0x03, +0x56, 0x02, 0x11, 0x77, 0x78, 0x03, 0x16, 0x74, 0x54, 0x01, +0x02, 0xfe, 0x01, 0x01, 0x55, 0x01, 0x10, 0x76, 0xa2, 0x0e, +0x00, 0x7c, 0x05, 0x00, 0x78, 0x04, 0x07, 0x4c, 0x0a, 0x10, +0x2c, 0x9c, 0x03, 0x1d, 0x64, 0xd3, 0x00, 0x83, 0x60, 0x54, +0x72, 0x69, 0x76, 0x69, 0x61, 0x6c, 0x3b, 0x04, 0x70, 0x42, +0x61, 0x73, 0x69, 0x63, 0x27, 0x20, 0xba, 0x11, 0x04, 0x95, +0x04, 0x06, 0xa9, 0x15, 0x04, 0x4d, 0x01, 0x01, 0x05, 0x08, +0x04, 0x48, 0x15, 0x04, 0x2a, 0x0a, 0x06, 0xf1, 0x09, 0x12, +0x74, 0xdf, 0x02, 0x22, 0x69, 0x6d, 0x7e, 0x03, 0x10, 0x65, +0xbe, 0x00, 0x00, 0x16, 0x00, 0x20, 0x60, 0x49, 0x68, 0x04, +0x30, 0x6d, 0x65, 0x64, 0x80, 0x08, 0x13, 0x27, 0xee, 0x00, +0x20, 0x61, 0x6e, 0x2e, 0x11, 0x40, 0x79, 0x6f, 0x6e, 0x64, +0x5e, 0x00, 0x07, 0xd7, 0x06, 0x12, 0x74, 0x7e, 0x02, 0x02, +0xc2, 0x00, 0x26, 0x61, 0x6c, 0x4a, 0x01, 0x11, 0x73, 0x29, +0x0b, 0x02, 0x8f, 0x06, 0x56, 0x5f, 0x73, 0x65, 0x74, 0x5f, +0x35, 0x13, 0x16, 0x73, 0xc5, 0x04, 0x13, 0x63, 0x88, 0x11, +0x11, 0x20, 0x34, 0x0d, 0x01, 0xa2, 0x0f, 0x03, 0x1b, 0x04, +0x01, 0x22, 0x00, 0x04, 0xb4, 0x0b, 0x05, 0x28, 0x00, 0x08, +0x8f, 0x0a, 0x00, 0x42, 0x13, 0x51, 0x74, 0x20, 0x60, 0x55, +0x6e, 0x78, 0x01, 0x00, 0x19, 0x06, 0x04, 0xaf, 0x00, 0x03, +0x9e, 0x11, 0x11, 0x74, 0xc5, 0x06, 0x02, 0x84, 0x01, 0x20, +0x65, 0x6e, 0x39, 0x10, 0x38, 0x2c, 0x20, 0x61, 0xc2, 0x00, +0x10, 0x65, 0xd0, 0x0f, 0x01, 0xb1, 0x16, 0x09, 0xcd, 0x00, +0x00, 0x90, 0x0b, 0x35, 0x75, 0x65, 0x73, 0x6c, 0x08, 0x00, +0x0f, 0x05, 0x60, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x2d, +0x08, 0x10, 0x66, 0x28, 0x05, 0x00, 0x1b, 0x0a, 0x10, 0x73, +0x8a, 0x04, 0x03, 0x27, 0x03, 0x91, 0x77, 0x72, 0x6f, 0x6e, +0x67, 0x2e, 0x20, 0x0a, 0x47, 0xa0, 0x02, 0x00, 0xed, 0x11, +0x06, 0xc5, 0x01, 0x05, 0x25, 0x03, 0x00, 0x8e, 0x00, 0x56, +0x74, 0x73, 0x65, 0x6c, 0x66, 0x1c, 0x00, 0x1a, 0x3a, 0x58, +0x08, 0x00, 0x11, 0x02, 0x06, 0xdd, 0x0f, 0x4e, 0x67, 0x68, +0x65, 0x72, 0x0c, 0x02, 0x03, 0x51, 0x05, 0x2a, 0x6d, 0x61, +0xb5, 0x00, 0x01, 0x80, 0x17, 0x00, 0x49, 0x0d, 0x00, 0x2e, +0x0f, 0x01, 0xc9, 0x01, 0x15, 0x67, 0x8c, 0x00, 0x06, 0x61, +0x12, 0x30, 0x62, 0x65, 0x66, 0xf1, 0x03, 0x00, 0x50, 0x17, +0x30, 0x69, 0x6e, 0x64, 0x81, 0x02, 0x00, 0x1f, 0x06, 0x23, +0x72, 0x64, 0x20, 0x01, 0x22, 0x20, 0x66, 0xc3, 0x0c, 0x31, +0x2e, 0x20, 0x42, 0xa6, 0x02, 0x23, 0x70, 0x61, 0x0b, 0x03, +0xc1, 0x77, 0x61, 0x69, 0x74, 0x2c, 0x20, 0x65, 0x73, 0x70, +0x65, 0x63, 0x69, 0x30, 0x01, 0x25, 0x69, 0x66, 0x9c, 0x06, +0x0a, 0xfe, 0x04, 0x00, 0xb1, 0x05, 0x67, 0x20, 0x6c, 0x61, +0x72, 0x67, 0x65, 0xd5, 0x12, 0x50, 0x65, 0x2e, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 6245; const char quick_help_text[] = "Fill in the grid so that each row, column and square block contains one of every digit."; diff --git a/apps/plugins/puzzles/help/tents.c b/apps/plugins/puzzles/help/tents.c index 28d45301d0..51674e33b8 100644 --- a/apps/plugins/puzzles/help/tents.c +++ b/apps/plugins/puzzles/help/tents.c @@ -1,66 +1,149 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2139 comp 1397 ratio 0.653109 level 11 saved 742 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 25: Tents " -"\n" -"You have a grid of squares, some of which contain trees. Your aim is " -"to place tents in some of the remaining squares, in such a way that " -"the following conditions are met: " -"\n" -"- There are exactly as many tents as trees. " -"\n" -"- The tents and trees can be matched up in such a way that each " -"tent is directly adjacent (horizontally or vertically, but not " -"diagonally) to its own tree. However, a tent may be adjacent to " -"other trees as well as its own. " -"\n" -"- No two tents are adjacent horizontally, vertically _or " -"diagonally_. " -"\n" -"- The number of tents in each row, and in each column, matches the " -"numbers given round the sides of the grid. " -"\n" -"This puzzle can be found in several places on the Internet, and was " -"brought to my attention by e-mail. I don't know who I should credit " -"for inventing it. " -"\n" -"\n#25.1 Tents controls " -"\n" -"Left-clicking in a blank square will place a tent in it. Right-\n" -"clicking in a blank square will colour it green, indicating that you " -"are sure it _isn't_ a tent. Clicking either button in an occupied " -"square will clear it. " -"\n" -"If you _drag_ with the right button along a row or column, every " -"blank square in the region you cover will be turned green, and no " -"other squares will be affected. (This is useful for clearing the " -"remainder of a row once you have placed all its tents.) " -"\n" -"You can also use the cursor keys to move around the grid. Pressing " -"the return key over an empty square will place a tent, and pressing " -"the space bar over an empty square will colour it green; either key " -"will clear an occupied square. Holding Shift and pressing the cursor " -"keys will colour empty squares green. Holding Control and pressing " -"the cursor keys will colour green both empty squares and squares " -"with tents. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#25.2 Tents parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. More difficult " -"puzzles require more complex deductions, but at present none " -"of the available difficulty levels requires guesswork or " -"backtracking. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x25, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x35, 0x3a, 0x20, 0x54, 0x65, 0x6e, 0x74, 0x73, +0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, 0x65, +0x20, 0x61, 0x20, 0x67, 0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, +0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, +0x73, 0x6f, 0x6d, 0x65, 0x11, 0x00, 0xf1, 0x1c, 0x77, 0x68, +0x69, 0x63, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, +0x6e, 0x20, 0x74, 0x72, 0x65, 0x65, 0x73, 0x2e, 0x20, 0x59, +0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, +0x20, 0x74, 0x6f, 0x20, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x20, +0x74, 0x55, 0x00, 0x25, 0x69, 0x6e, 0x3b, 0x00, 0xd5, 0x74, +0x68, 0x65, 0x20, 0x72, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, +0x6e, 0x67, 0x5a, 0x00, 0x01, 0x22, 0x00, 0xe1, 0x75, 0x63, +0x68, 0x20, 0x61, 0x20, 0x77, 0x61, 0x79, 0x20, 0x74, 0x68, +0x61, 0x74, 0x2a, 0x00, 0x90, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, +0x77, 0x69, 0x6e, 0x67, 0x6d, 0x00, 0xf1, 0x0a, 0x64, 0x69, +0x74, 0x69, 0x6f, 0x6e, 0x73, 0x20, 0x61, 0x72, 0x65, 0x20, +0x6d, 0x65, 0x74, 0x3a, 0x20, 0x0a, 0x2d, 0x20, 0x54, 0x68, +0x65, 0x72, 0x65, 0x12, 0x00, 0xf3, 0x00, 0x65, 0x78, 0x61, +0x63, 0x74, 0x6c, 0x79, 0x20, 0x61, 0x73, 0x20, 0x6d, 0x61, +0x6e, 0x79, 0x7a, 0x00, 0x23, 0x61, 0x73, 0x9f, 0x00, 0x03, +0x2d, 0x00, 0x04, 0x17, 0x00, 0x22, 0x6e, 0x64, 0x18, 0x00, +0xff, 0x03, 0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x65, 0x20, +0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x64, 0x20, 0x75, 0x70, +0x8b, 0x00, 0x01, 0x41, 0x65, 0x61, 0x63, 0x68, 0x3a, 0x00, +0x00, 0xdc, 0x00, 0x42, 0x64, 0x69, 0x72, 0x65, 0x6a, 0x00, +0x40, 0x64, 0x6a, 0x61, 0x63, 0x15, 0x00, 0x60, 0x28, 0x68, +0x6f, 0x72, 0x69, 0x7a, 0x0e, 0x01, 0xd0, 0x6c, 0x6c, 0x79, +0x20, 0x6f, 0x72, 0x20, 0x76, 0x65, 0x72, 0x74, 0x69, 0x63, +0x0e, 0x00, 0xf0, 0x01, 0x2c, 0x20, 0x62, 0x75, 0x74, 0x20, +0x6e, 0x6f, 0x74, 0x20, 0x64, 0x69, 0x61, 0x67, 0x6f, 0x6e, +0x14, 0x00, 0x10, 0x29, 0x1f, 0x01, 0x62, 0x69, 0x74, 0x73, +0x20, 0x6f, 0x77, 0x3d, 0x01, 0xc2, 0x2e, 0x20, 0x48, 0x6f, +0x77, 0x65, 0x76, 0x65, 0x72, 0x2c, 0x20, 0x61, 0x67, 0x00, +0x65, 0x6d, 0x61, 0x79, 0x20, 0x62, 0x65, 0x62, 0x00, 0x00, +0x31, 0x00, 0x51, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x2f, 0x00, +0x01, 0xd6, 0x00, 0x74, 0x77, 0x65, 0x6c, 0x6c, 0x20, 0x61, +0x73, 0x48, 0x00, 0x01, 0xe0, 0x00, 0x64, 0x4e, 0x6f, 0x20, +0x74, 0x77, 0x6f, 0xe3, 0x00, 0x17, 0x72, 0x40, 0x00, 0x08, +0xa1, 0x00, 0x17, 0x2c, 0x9f, 0x00, 0x47, 0x20, 0x5f, 0x6f, +0x72, 0x9a, 0x00, 0x15, 0x5f, 0x27, 0x01, 0x95, 0x6e, 0x75, +0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0xc2, 0x01, 0x02, +0x05, 0x01, 0x40, 0x72, 0x6f, 0x77, 0x2c, 0x3e, 0x01, 0x05, +0x11, 0x00, 0x73, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x2c, +0x41, 0x01, 0x35, 0x73, 0x20, 0x74, 0x3d, 0x00, 0xd1, 0x73, +0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x72, 0x6f, 0x75, +0x6e, 0x64, 0x18, 0x00, 0x53, 0x73, 0x69, 0x64, 0x65, 0x73, +0x05, 0x02, 0x01, 0x5d, 0x02, 0xe4, 0x2e, 0x20, 0x0a, 0x54, +0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, +0x8c, 0x01, 0x10, 0x66, 0x31, 0x00, 0x01, 0x87, 0x01, 0x00, +0x14, 0x01, 0x21, 0x61, 0x6c, 0x4b, 0x02, 0x00, 0x39, 0x00, +0x11, 0x6e, 0x39, 0x00, 0x82, 0x49, 0x6e, 0x74, 0x65, 0x72, +0x6e, 0x65, 0x74, 0x88, 0x00, 0xa1, 0x77, 0x61, 0x73, 0x20, +0x62, 0x72, 0x6f, 0x75, 0x67, 0x68, 0x26, 0x01, 0x80, 0x6d, +0x79, 0x20, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x2a, 0x02, 0xf0, +0x28, 0x20, 0x62, 0x79, 0x20, 0x65, 0x2d, 0x6d, 0x61, 0x69, +0x6c, 0x2e, 0x20, 0x49, 0x20, 0x64, 0x6f, 0x6e, 0x27, 0x74, +0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x20, 0x77, 0x68, 0x6f, 0x20, +0x49, 0x20, 0x73, 0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x63, +0x72, 0x65, 0x64, 0x69, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x20, +0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, 0x6e, 0x02, 0xb2, 0x69, +0x74, 0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x32, 0x35, 0x2e, 0x31, +0x18, 0x03, 0x01, 0xed, 0x02, 0xf1, 0x01, 0x72, 0x6f, 0x6c, +0x73, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, 0x6c, +0x69, 0x63, 0x6b, 0x2a, 0x00, 0x93, 0x6e, 0x20, 0x61, 0x20, +0x62, 0x6c, 0x61, 0x6e, 0x6b, 0xcd, 0x02, 0x43, 0x20, 0x77, +0x69, 0x6c, 0xb3, 0x00, 0x04, 0xce, 0x01, 0x21, 0x69, 0x6e, +0x51, 0x00, 0x7f, 0x52, 0x69, 0x67, 0x68, 0x74, 0x2d, 0x0a, +0x3b, 0x00, 0x0c, 0x00, 0x52, 0x01, 0x00, 0x4a, 0x03, 0x80, +0x69, 0x74, 0x20, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x1c, 0x03, +0x40, 0x64, 0x69, 0x63, 0x61, 0x98, 0x00, 0x02, 0x8e, 0x02, +0x31, 0x79, 0x6f, 0x75, 0xde, 0x01, 0x40, 0x73, 0x75, 0x72, +0x65, 0x27, 0x00, 0x73, 0x5f, 0x69, 0x73, 0x6e, 0x27, 0x74, +0x5f, 0x6e, 0x00, 0x34, 0x2e, 0x20, 0x43, 0x61, 0x00, 0x20, +0x65, 0x69, 0x34, 0x02, 0x00, 0x82, 0x02, 0x31, 0x74, 0x6f, +0x6e, 0x6f, 0x00, 0xaa, 0x6e, 0x20, 0x6f, 0x63, 0x63, 0x75, +0x70, 0x69, 0x65, 0x64, 0x73, 0x00, 0x42, 0x6c, 0x65, 0x61, +0x72, 0xf5, 0x00, 0x21, 0x49, 0x66, 0x60, 0x00, 0xb2, 0x5f, +0x64, 0x72, 0x61, 0x67, 0x5f, 0x20, 0x77, 0x69, 0x74, 0x68, +0xb3, 0x03, 0x00, 0xbc, 0x00, 0x04, 0x4a, 0x00, 0x70, 0x61, +0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x61, 0x0d, 0x02, 0x35, 0x20, +0x6f, 0x72, 0x03, 0x02, 0x00, 0xae, 0x01, 0x1a, 0x79, 0xd1, +0x00, 0x23, 0x69, 0x6e, 0xf1, 0x03, 0x41, 0x67, 0x69, 0x6f, +0x6e, 0x59, 0x00, 0x51, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x76, +0x00, 0x00, 0xeb, 0x01, 0x62, 0x74, 0x75, 0x72, 0x6e, 0x65, +0x64, 0xe9, 0x00, 0x02, 0xd0, 0x01, 0x13, 0x6e, 0xea, 0x02, +0x04, 0x1b, 0x04, 0x05, 0x2b, 0x00, 0xb0, 0x61, 0x66, 0x66, +0x65, 0x63, 0x74, 0x65, 0x64, 0x2e, 0x20, 0x28, 0x34, 0x02, +0x00, 0x8a, 0x03, 0x60, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, +0xbb, 0x01, 0x02, 0xc2, 0x00, 0x37, 0x69, 0x6e, 0x67, 0x60, +0x04, 0x11, 0x64, 0xc0, 0x02, 0x04, 0xa7, 0x00, 0x53, 0x6e, +0x63, 0x65, 0x20, 0x79, 0xdb, 0x04, 0x02, 0x9e, 0x01, 0x50, +0x64, 0x20, 0x61, 0x6c, 0x6c, 0x40, 0x03, 0x02, 0xe3, 0x02, +0x22, 0x2e, 0x29, 0xfc, 0x04, 0x20, 0x63, 0x61, 0xe1, 0x00, +0x20, 0x73, 0x6f, 0x5e, 0x00, 0x01, 0x4e, 0x00, 0xb1, 0x63, +0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x73, +0x62, 0x02, 0x10, 0x6f, 0x1c, 0x05, 0x01, 0xd5, 0x02, 0x07, +0xc8, 0x02, 0x56, 0x50, 0x72, 0x65, 0x73, 0x73, 0x80, 0x00, +0x00, 0xd8, 0x00, 0x00, 0x32, 0x00, 0x10, 0x20, 0xee, 0x00, +0x00, 0x77, 0x01, 0x5f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x22, +0x02, 0x05, 0x03, 0xcb, 0x02, 0x18, 0x70, 0x44, 0x00, 0x20, +0x73, 0x70, 0x1f, 0x00, 0x3a, 0x62, 0x61, 0x72, 0x43, 0x00, +0x0f, 0x2a, 0x02, 0x09, 0x12, 0x3b, 0xf1, 0x01, 0x01, 0xab, +0x00, 0x07, 0xd8, 0x01, 0x0e, 0xf6, 0x01, 0x01, 0x71, 0x04, +0x20, 0x6c, 0x64, 0x6b, 0x00, 0x59, 0x53, 0x68, 0x69, 0x66, +0x74, 0x7e, 0x00, 0x0c, 0xf4, 0x00, 0x08, 0x6b, 0x00, 0x09, +0x84, 0x00, 0x12, 0x73, 0x76, 0x00, 0x06, 0x4c, 0x00, 0x12, +0x43, 0x23, 0x03, 0x0f, 0x4e, 0x00, 0x16, 0x02, 0x40, 0x00, +0x59, 0x20, 0x62, 0x6f, 0x74, 0x68, 0x59, 0x00, 0x01, 0x9f, +0x05, 0x07, 0x00, 0x02, 0x12, 0x74, 0x7c, 0x05, 0x00, 0xc4, +0x05, 0x41, 0x28, 0x41, 0x6c, 0x6c, 0x53, 0x00, 0x22, 0x61, +0x63, 0x0c, 0x06, 0x83, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, +0x62, 0x65, 0x30, 0x04, 0x11, 0x63, 0xf8, 0x03, 0x30, 0x32, +0x2e, 0x31, 0x21, 0x03, 0x02, 0xc7, 0x01, 0xb3, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xd3, +0x03, 0x13, 0x32, 0xd3, 0x03, 0xa0, 0x70, 0x61, 0x72, 0x61, +0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x87, 0x04, 0x36, 0x65, +0x73, 0x65, 0x12, 0x00, 0x01, 0x3f, 0x05, 0x06, 0x3b, 0x00, +0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x78, 0x00, 0xe0, 0x60, +0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, +0x20, 0x6f, 0x70, 0x6e, 0x00, 0x04, 0x97, 0x04, 0xf0, 0x0b, +0x60, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, +0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, +0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x3b, 0x03, 0x60, 0x5f, +0x20, 0x0a, 0x53, 0x69, 0x7a, 0x02, 0x07, 0x02, 0x56, 0x07, +0x24, 0x69, 0x6e, 0xe1, 0x00, 0x00, 0x2d, 0x00, 0xd3, 0x44, +0x69, 0x66, 0x66, 0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, +0x20, 0x0a, 0x47, 0x01, 0x02, 0x4b, 0x05, 0x15, 0x64, 0x1a, +0x00, 0x05, 0x38, 0x05, 0x83, 0x65, 0x6e, 0x65, 0x72, 0x61, +0x74, 0x65, 0x64, 0x36, 0x05, 0x57, 0x2e, 0x20, 0x4d, 0x6f, +0x72, 0x29, 0x00, 0x03, 0x17, 0x00, 0x70, 0x73, 0x20, 0x72, +0x65, 0x71, 0x75, 0x69, 0x2b, 0x07, 0x00, 0x1f, 0x00, 0xc2, +0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x78, 0x20, 0x64, 0x65, +0x64, 0x75, 0x3b, 0x01, 0x02, 0x9a, 0x06, 0x21, 0x61, 0x74, +0xab, 0x01, 0x20, 0x65, 0x6e, 0xa5, 0x06, 0x13, 0x6e, 0xa2, +0x07, 0x06, 0xfa, 0x00, 0x09, 0x81, 0x00, 0x53, 0x6c, 0x65, +0x76, 0x65, 0x6c, 0x58, 0x00, 0x01, 0xff, 0x01, 0x80, 0x75, +0x65, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x6b, 0x05, 0x04, 0xf0, +0x01, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0x63, 0x6b, +0x69, 0x6e, 0x67, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2139; const char quick_help_text[] = "Place a tent next to each tree."; diff --git a/apps/plugins/puzzles/help/towers.c b/apps/plugins/puzzles/help/towers.c index ad42bd9447..ffa44746f4 100644 --- a/apps/plugins/puzzles/help/towers.c +++ b/apps/plugins/puzzles/help/towers.c @@ -1,95 +1,230 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3527 comp 2209 ratio 0.626311 level 11 saved 1318 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 31: Towers " -"\n" -"You have a square grid. On each square of the grid you can build " -"a tower, with its height ranging from 1 to the size of the grid. " -"Around the edge of the grid are some numeric clues. " -"\n" -"Your task is to build a tower on every square, in such a way that: " -"\n" -"- Each row contains every possible height of tower once " -"\n" -"- Each column contains every possible height of tower once " -"\n" -"- Each numeric clue describes the number of towers that can be " -"seen if you look into the square from that direction, assuming " -"that shorter towers are hidden behind taller ones. For example, " -"in a 5x5 grid, a clue marked `5' indicates that the five tower " -"heights must appear in increasing order (otherwise you would " -"not be able to see all five towers), whereas a clue marked `1' " -"indicates that the tallest tower (the one marked 5) must come " -"first. " -"\n" -"In harder or larger puzzles, some towers will be specified for you " -"as well as the clues round the edge, and some edge clues may be " -"missing. " -"\n" -"This puzzle appears on the web under various names, particularly " -"`Skyscrapers', but I don't know who first invented it. " -"\n" -"\n#31.1 Towers controls " -"\n" -"Towers shares much of its control system with Solo, Unequal and " -"Keen. " -"\n" -"To play Towers, simply click the mouse in any empty square and then " -"type a digit on the keyboard to fill that square with a tower of " -"the given height. If you make a mistake, click the mouse in the " -"incorrect square and press Space to clear it again (or use the Undo " -"feature). " -"\n" -"If you _right_-click in a square and then type a number, that " -"number will be entered in the square as a `pencil mark'. You can " -"have pencil marks for multiple numbers in the same square. A square " -"containing a tower cannot also contain pencil marks. " -"\n" -"The game pays no attention to pencil marks, so exactly what you " -"use them for is up to you: you can use them as reminders that a " -"particular square needs to be re-examined once you know more about " -"a particular number, or you can use them as lists of the possible " -"numbers in a given square, or anything else you feel like. " -"\n" -"To erase a single pencil mark, right-click in the square and type " -"the same number again. " -"\n" -"All pencil marks in a square are erased when you left-click and type " -"a number, or when you left-click and press space. Right-clicking and " -"pressing space will also erase pencil marks. " -"\n" -"As for Solo, the cursor keys can be used in conjunction with the " -"digit keys to set numbers or pencil marks. Use the cursor keys to " -"move a highlight around the grid, and type a digit to enter it in " -"the highlighted square. Pressing return toggles the highlight into a " -"mode in which you can enter or remove pencil marks. " -"\n" -"Pressing M will fill in a full set of pencil marks in every square " -"that does not have a main digit in it. " -"\n" -"Left-clicking a clue will mark it as done (grey it out), or unmark " -"it if it is already marked. Holding Control or Shift and pressing an " -"arrow key likewise marks any clue in the given direction. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#31.2 Towers parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Grid size_ " -"\n" -"Specifies the size of the grid. Lower limit is 3; upper limit is " -"9 (because the user interface would become more difficult with " -"`digits' bigger than 9!). " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. At Unreasonable " -"level, some backtracking will be required, but the solution " -"should still be unique. The remaining levels require " -"increasingly complex reasoning to avoid having to backtrack. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x25, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x31, 0x3a, 0x20, 0x54, 0x6f, 0x77, 0x65, 0x72, +0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, 0x76, +0x65, 0x20, 0x61, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, 0x65, +0x20, 0x67, 0x72, 0x69, 0x64, 0x2e, 0x20, 0x4f, 0x6e, 0x20, +0x65, 0x61, 0x63, 0x68, 0x15, 0x00, 0x52, 0x6f, 0x66, 0x20, +0x74, 0x68, 0x1c, 0x00, 0xf0, 0x03, 0x20, 0x79, 0x6f, 0x75, +0x20, 0x63, 0x61, 0x6e, 0x20, 0x62, 0x75, 0x69, 0x6c, 0x64, +0x20, 0x61, 0x20, 0x74, 0x4b, 0x00, 0xf1, 0x14, 0x2c, 0x20, +0x77, 0x69, 0x74, 0x68, 0x20, 0x69, 0x74, 0x73, 0x20, 0x68, +0x65, 0x69, 0x67, 0x68, 0x74, 0x20, 0x72, 0x61, 0x6e, 0x67, +0x69, 0x6e, 0x67, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x31, +0x20, 0x74, 0x6f, 0x42, 0x00, 0x39, 0x73, 0x69, 0x7a, 0x4e, +0x00, 0x81, 0x2e, 0x20, 0x41, 0x72, 0x6f, 0x75, 0x6e, 0x64, +0x11, 0x00, 0x3a, 0x65, 0x64, 0x67, 0x6b, 0x00, 0x00, 0x7b, +0x00, 0xf1, 0x04, 0x73, 0x6f, 0x6d, 0x65, 0x20, 0x6e, 0x75, +0x6d, 0x65, 0x72, 0x69, 0x63, 0x20, 0x63, 0x6c, 0x75, 0x65, +0x73, 0x2e, 0xb7, 0x00, 0xca, 0x72, 0x20, 0x74, 0x61, 0x73, +0x6b, 0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x8c, 0x00, 0x93, +0x20, 0x6f, 0x6e, 0x20, 0x65, 0x76, 0x65, 0x72, 0x79, 0xbe, +0x00, 0xf0, 0x0b, 0x2c, 0x20, 0x69, 0x6e, 0x20, 0x73, 0x75, +0x63, 0x68, 0x20, 0x61, 0x20, 0x77, 0x61, 0x79, 0x20, 0x74, +0x68, 0x61, 0x74, 0x3a, 0x20, 0x0a, 0x2d, 0x20, 0x45, 0xe2, +0x00, 0xc3, 0x72, 0x6f, 0x77, 0x20, 0x63, 0x6f, 0x6e, 0x74, +0x61, 0x69, 0x6e, 0x73, 0x37, 0x00, 0x84, 0x70, 0x6f, 0x73, +0x73, 0x69, 0x62, 0x6c, 0x65, 0xcb, 0x00, 0x25, 0x6f, 0x66, +0x59, 0x00, 0x25, 0x63, 0x65, 0x39, 0x00, 0x6f, 0x63, 0x6f, +0x6c, 0x75, 0x6d, 0x6e, 0x3c, 0x00, 0x22, 0x09, 0xd0, 0x00, +0xd1, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, +0x73, 0x20, 0x74, 0x68, 0xeb, 0x00, 0x35, 0x62, 0x65, 0x72, +0x38, 0x00, 0x11, 0x73, 0xaf, 0x00, 0x02, 0x71, 0x01, 0x91, +0x65, 0x20, 0x73, 0x65, 0x65, 0x6e, 0x20, 0x69, 0x66, 0x84, +0x01, 0x72, 0x6c, 0x6f, 0x6f, 0x6b, 0x20, 0x69, 0x6e, 0x59, +0x01, 0x03, 0xeb, 0x00, 0x01, 0x6e, 0x01, 0x02, 0x32, 0x00, +0xf2, 0x04, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, +0x6e, 0x2c, 0x20, 0x61, 0x73, 0x73, 0x75, 0x6d, 0x69, 0x6e, +0x67, 0x19, 0x00, 0x73, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, +0x72, 0x5f, 0x00, 0x01, 0x64, 0x01, 0x50, 0x68, 0x69, 0x64, +0x64, 0x65, 0x61, 0x00, 0x20, 0x68, 0x69, 0x8b, 0x01, 0x31, +0x61, 0x6c, 0x6c, 0xb1, 0x00, 0x00, 0x6b, 0x01, 0xa2, 0x46, +0x6f, 0x72, 0x20, 0x65, 0x78, 0x61, 0x6d, 0x70, 0x6c, 0x48, +0x01, 0x51, 0x61, 0x20, 0x35, 0x78, 0x35, 0x9e, 0x01, 0x32, +0x2c, 0x20, 0x61, 0xc0, 0x00, 0xf2, 0x04, 0x6d, 0x61, 0x72, +0x6b, 0x65, 0x64, 0x20, 0x60, 0x35, 0x27, 0x20, 0x69, 0x6e, +0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0xb6, 0x00, 0x01, 0x99, +0x00, 0x42, 0x66, 0x69, 0x76, 0x65, 0x6c, 0x00, 0x03, 0x13, +0x01, 0xd0, 0x73, 0x20, 0x6d, 0x75, 0x73, 0x74, 0x20, 0x61, +0x70, 0x70, 0x65, 0x61, 0x72, 0x53, 0x00, 0x70, 0x69, 0x6e, +0x63, 0x72, 0x65, 0x61, 0x73, 0xa1, 0x00, 0xf1, 0x01, 0x6f, +0x72, 0x64, 0x65, 0x72, 0x20, 0x28, 0x6f, 0x74, 0x68, 0x65, +0x72, 0x77, 0x69, 0x73, 0x65, 0xe9, 0x00, 0x90, 0x77, 0x6f, +0x75, 0x6c, 0x64, 0x20, 0x6e, 0x6f, 0x74, 0x02, 0x01, 0x30, +0x61, 0x62, 0x6c, 0x4f, 0x00, 0x00, 0x0a, 0x01, 0x47, 0x20, +0x61, 0x6c, 0x6c, 0x5f, 0x00, 0x70, 0x73, 0x29, 0x2c, 0x20, +0x77, 0x68, 0x65, 0x4b, 0x00, 0x0c, 0x9a, 0x00, 0x1f, 0x31, +0x9a, 0x00, 0x01, 0x02, 0xe8, 0x00, 0x23, 0x73, 0x74, 0x9d, +0x00, 0x10, 0x28, 0x13, 0x00, 0x25, 0x6f, 0x6e, 0x35, 0x00, +0x22, 0x35, 0x29, 0xa8, 0x00, 0x30, 0x63, 0x6f, 0x6d, 0xc5, +0x00, 0xb1, 0x72, 0x73, 0x74, 0x2e, 0x20, 0x0a, 0x49, 0x6e, +0x20, 0x68, 0x61, 0xa4, 0x00, 0xf1, 0x03, 0x6f, 0x72, 0x20, +0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, 0x20, 0x70, 0x75, 0x7a, +0x7a, 0x6c, 0x65, 0x73, 0x2c, 0xaa, 0x02, 0x04, 0x56, 0x01, +0x41, 0x77, 0x69, 0x6c, 0x6c, 0xb1, 0x01, 0xc1, 0x70, 0x65, +0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x20, 0x66, 0x6f, 0x72, +0xce, 0x00, 0x91, 0x61, 0x73, 0x20, 0x77, 0x65, 0x6c, 0x6c, +0x20, 0x61, 0xef, 0x01, 0x02, 0xd2, 0x02, 0x1a, 0x20, 0x04, +0x03, 0x50, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x4f, 0x00, 0x01, +0x0f, 0x00, 0x04, 0x24, 0x00, 0x30, 0x6d, 0x61, 0x79, 0x52, +0x00, 0x30, 0x6d, 0x69, 0x73, 0x2b, 0x01, 0x73, 0x2e, 0x20, +0x0a, 0x54, 0x68, 0x69, 0x73, 0x7e, 0x00, 0x03, 0x4e, 0x01, +0x41, 0x73, 0x20, 0x6f, 0x6e, 0x46, 0x00, 0x60, 0x77, 0x65, +0x62, 0x20, 0x75, 0x6e, 0xa8, 0x00, 0xb0, 0x76, 0x61, 0x72, +0x69, 0x6f, 0x75, 0x73, 0x20, 0x6e, 0x61, 0x6d, 0xa4, 0x00, +0xf2, 0x21, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, +0x61, 0x72, 0x6c, 0x79, 0x20, 0x60, 0x53, 0x6b, 0x79, 0x73, +0x63, 0x72, 0x61, 0x70, 0x65, 0x72, 0x73, 0x27, 0x2c, 0x20, +0x62, 0x75, 0x74, 0x20, 0x49, 0x20, 0x64, 0x6f, 0x6e, 0x27, +0x74, 0x20, 0x6b, 0x6e, 0x6f, 0x77, 0x20, 0x77, 0x68, 0x6f, +0xfa, 0x00, 0xb0, 0x20, 0x69, 0x6e, 0x76, 0x65, 0x6e, 0x74, +0x65, 0x64, 0x20, 0x69, 0x06, 0x01, 0x63, 0x0a, 0x23, 0x33, +0x31, 0x2e, 0x31, 0x44, 0x04, 0x01, 0x01, 0x03, 0x63, 0x72, +0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x11, 0x00, 0x50, 0x73, 0x68, +0x61, 0x72, 0x65, 0xe6, 0x01, 0x20, 0x63, 0x68, 0xc7, 0x02, +0x25, 0x69, 0x74, 0x24, 0x00, 0x72, 0x20, 0x73, 0x79, 0x73, +0x74, 0x65, 0x6d, 0x2c, 0x04, 0xd1, 0x53, 0x6f, 0x6c, 0x6f, +0x2c, 0x20, 0x55, 0x6e, 0x65, 0x71, 0x75, 0x61, 0x6c, 0xf2, +0x00, 0x50, 0x4b, 0x65, 0x65, 0x6e, 0x2e, 0x47, 0x00, 0x52, +0x20, 0x70, 0x6c, 0x61, 0x79, 0x60, 0x00, 0x00, 0x58, 0x01, +0xb1, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x20, 0x63, 0x6c, 0x69, +0x63, 0x6b, 0xde, 0x00, 0x51, 0x6d, 0x6f, 0x75, 0x73, 0x65, +0x8d, 0x02, 0x84, 0x6e, 0x79, 0x20, 0x65, 0x6d, 0x70, 0x74, +0x79, 0xff, 0x02, 0x12, 0x61, 0x46, 0x01, 0x50, 0x6e, 0x20, +0x74, 0x79, 0x70, 0xd4, 0x04, 0x54, 0x64, 0x69, 0x67, 0x69, +0x74, 0x15, 0x01, 0xa0, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, +0x72, 0x64, 0x20, 0x74, 0xd7, 0x00, 0x21, 0x6c, 0x6c, 0x0a, +0x02, 0x03, 0x3a, 0x00, 0x01, 0x93, 0x00, 0x04, 0x41, 0x04, +0x05, 0x84, 0x04, 0x43, 0x69, 0x76, 0x65, 0x6e, 0xb6, 0x02, +0x32, 0x2e, 0x20, 0x49, 0x77, 0x03, 0x60, 0x6d, 0x61, 0x6b, +0x65, 0x20, 0x61, 0x87, 0x01, 0x5e, 0x74, 0x61, 0x6b, 0x65, +0x2c, 0x97, 0x00, 0x01, 0x6d, 0x00, 0x00, 0xd5, 0x02, 0x20, +0x6f, 0x72, 0x82, 0x03, 0x08, 0x9b, 0x00, 0xa1, 0x70, 0x72, +0x65, 0x73, 0x73, 0x20, 0x53, 0x70, 0x61, 0x63, 0xc4, 0x02, +0x21, 0x63, 0x6c, 0x02, 0x03, 0xc0, 0x74, 0x20, 0x61, 0x67, +0x61, 0x69, 0x6e, 0x20, 0x28, 0x6f, 0x72, 0x20, 0x42, 0x00, +0x00, 0x3f, 0x00, 0xd0, 0x55, 0x6e, 0x64, 0x6f, 0x20, 0x66, +0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x29, 0x79, 0x02, 0x02, +0x7d, 0x00, 0x20, 0x5f, 0x72, 0x8c, 0x00, 0x21, 0x5f, 0x2d, +0x75, 0x00, 0x01, 0x02, 0x01, 0x0f, 0xfa, 0x00, 0x04, 0x03, +0x47, 0x04, 0x11, 0x2c, 0xe4, 0x00, 0x03, 0x0d, 0x00, 0x05, +0x95, 0x02, 0x00, 0xcb, 0x01, 0x10, 0x72, 0xcd, 0x01, 0x18, +0x6e, 0x3b, 0x04, 0x01, 0x37, 0x03, 0x71, 0x60, 0x70, 0x65, +0x6e, 0x63, 0x69, 0x6c, 0x05, 0x03, 0x42, 0x27, 0x2e, 0x20, +0x59, 0xec, 0x05, 0x02, 0x23, 0x06, 0x07, 0x1b, 0x00, 0x11, +0x73, 0xcf, 0x02, 0x74, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, +0x6c, 0xb4, 0x04, 0x15, 0x73, 0x51, 0x00, 0x24, 0x61, 0x6d, +0x56, 0x00, 0x33, 0x2e, 0x20, 0x41, 0x0a, 0x00, 0x04, 0x29, +0x05, 0x34, 0x69, 0x6e, 0x67, 0x68, 0x01, 0x00, 0x5b, 0x00, +0x00, 0xd7, 0x03, 0x44, 0x61, 0x6c, 0x73, 0x6f, 0x1f, 0x00, +0x09, 0x66, 0x00, 0x00, 0x0d, 0x02, 0x00, 0x88, 0x01, 0x00, +0x50, 0x00, 0xd0, 0x70, 0x61, 0x79, 0x73, 0x20, 0x6e, 0x6f, +0x20, 0x61, 0x74, 0x74, 0x65, 0x6e, 0xd8, 0x04, 0x38, 0x20, +0x74, 0x6f, 0x2d, 0x00, 0x01, 0x81, 0x03, 0x00, 0xab, 0x04, +0x90, 0x63, 0x74, 0x6c, 0x79, 0x20, 0x77, 0x68, 0x61, 0x74, +0x32, 0x01, 0x04, 0x51, 0x01, 0x10, 0x6d, 0xb1, 0x00, 0x00, +0x2d, 0x06, 0x50, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x1a, 0x00, +0x14, 0x3a, 0xc9, 0x06, 0x05, 0x23, 0x00, 0x00, 0x02, 0x01, +0x65, 0x72, 0x65, 0x6d, 0x69, 0x6e, 0x64, 0x77, 0x05, 0x17, +0x61, 0x31, 0x03, 0x04, 0xc8, 0x00, 0x42, 0x6e, 0x65, 0x65, +0x64, 0x75, 0x06, 0x50, 0x65, 0x20, 0x72, 0x65, 0x2d, 0x1d, +0x05, 0x40, 0x69, 0x6e, 0x65, 0x64, 0xe1, 0x05, 0x01, 0xb0, +0x04, 0x02, 0x3c, 0x03, 0x30, 0x6d, 0x6f, 0x72, 0xad, 0x04, +0x2a, 0x6f, 0x75, 0x45, 0x00, 0x05, 0x98, 0x01, 0x2f, 0x6f, +0x72, 0x80, 0x00, 0x02, 0x53, 0x6c, 0x69, 0x73, 0x74, 0x73, +0x80, 0x02, 0x03, 0x4c, 0x06, 0x0a, 0x60, 0x01, 0x12, 0x61, +0x96, 0x02, 0x05, 0xdb, 0x06, 0x20, 0x6f, 0x72, 0x06, 0x03, +0x20, 0x74, 0x68, 0x57, 0x01, 0x23, 0x65, 0x6c, 0x32, 0x05, +0x92, 0x66, 0x65, 0x65, 0x6c, 0x20, 0x6c, 0x69, 0x6b, 0x65, +0x4e, 0x03, 0x40, 0x65, 0x72, 0x61, 0x73, 0x14, 0x02, 0x00, +0x38, 0x04, 0x19, 0x6c, 0xc8, 0x01, 0x21, 0x2c, 0x20, 0x51, +0x02, 0x02, 0x50, 0x02, 0x0c, 0x10, 0x02, 0x21, 0x6e, 0x64, +0x4d, 0x02, 0x04, 0xd3, 0x01, 0x04, 0x87, 0x00, 0x01, 0xae, +0x02, 0x00, 0xa8, 0x03, 0x39, 0x41, 0x6c, 0x6c, 0x81, 0x01, +0x0a, 0x90, 0x02, 0x22, 0x72, 0x65, 0x78, 0x00, 0x10, 0x64, +0x95, 0x05, 0x12, 0x6e, 0xb2, 0x06, 0x23, 0x65, 0x66, 0x6b, +0x00, 0x06, 0x5d, 0x00, 0x17, 0x61, 0x12, 0x01, 0x0f, 0x2a, +0x00, 0x01, 0x07, 0x38, 0x03, 0x10, 0x73, 0x38, 0x03, 0x36, +0x2e, 0x20, 0x52, 0xb2, 0x00, 0x34, 0x69, 0x6e, 0x67, 0x20, +0x00, 0x01, 0x15, 0x05, 0x02, 0x23, 0x00, 0x01, 0xe8, 0x02, +0x00, 0x55, 0x02, 0x03, 0xfa, 0x00, 0x0c, 0x53, 0x02, 0x11, +0x41, 0xbe, 0x02, 0x02, 0x80, 0x04, 0x02, 0x84, 0x05, 0x50, +0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x04, 0x14, 0x73, 0x69, +0x07, 0x20, 0x75, 0x73, 0x20, 0x03, 0x01, 0xde, 0x07, 0x31, +0x6a, 0x75, 0x6e, 0x48, 0x07, 0x01, 0x23, 0x04, 0x00, 0x30, +0x00, 0x02, 0x56, 0x04, 0x01, 0x2f, 0x00, 0x02, 0x8a, 0x06, +0x15, 0x74, 0xa1, 0x01, 0x2b, 0x6f, 0x72, 0x6d, 0x00, 0x37, +0x55, 0x73, 0x65, 0x63, 0x00, 0x05, 0x34, 0x00, 0x21, 0x6d, +0x6f, 0x73, 0x09, 0x51, 0x68, 0x69, 0x67, 0x68, 0x6c, 0x27, +0x08, 0x15, 0x61, 0x02, 0x06, 0x04, 0x5c, 0x07, 0x2a, 0x6e, +0x64, 0xc5, 0x04, 0x21, 0x74, 0x6f, 0xb8, 0x03, 0x00, 0x30, +0x04, 0x03, 0xa9, 0x01, 0x06, 0x3f, 0x00, 0x25, 0x65, 0x64, +0x6f, 0x03, 0x14, 0x50, 0x0b, 0x01, 0x50, 0x72, 0x65, 0x74, +0x75, 0x72, 0x25, 0x03, 0x5a, 0x67, 0x67, 0x6c, 0x65, 0x73, +0x30, 0x00, 0x01, 0x37, 0x08, 0x00, 0xc5, 0x04, 0x21, 0x6f, +0x64, 0xb1, 0x04, 0x54, 0x77, 0x68, 0x69, 0x63, 0x68, 0x90, +0x02, 0x03, 0x67, 0x00, 0x20, 0x6f, 0x72, 0x0d, 0x03, 0x2d, +0x6f, 0x76, 0x3f, 0x01, 0x05, 0x62, 0x00, 0x11, 0x4d, 0x69, +0x01, 0x01, 0x4b, 0x05, 0x02, 0xfb, 0x01, 0x41, 0x66, 0x75, +0x6c, 0x6c, 0x0f, 0x01, 0x2b, 0x6f, 0x66, 0x19, 0x02, 0x0a, +0x91, 0x09, 0x03, 0xa1, 0x08, 0x30, 0x6f, 0x65, 0x73, 0xd6, +0x07, 0x04, 0x80, 0x0a, 0x43, 0x6d, 0x61, 0x69, 0x6e, 0xec, +0x00, 0x22, 0x69, 0x6e, 0x69, 0x06, 0x36, 0x4c, 0x65, 0x66, +0xea, 0x01, 0x02, 0xd5, 0x07, 0x01, 0xde, 0x01, 0x02, 0x58, +0x00, 0x01, 0x3a, 0x05, 0x30, 0x73, 0x20, 0x64, 0xb5, 0x07, +0x60, 0x28, 0x67, 0x72, 0x65, 0x79, 0x20, 0xec, 0x05, 0x31, +0x75, 0x74, 0x29, 0x4c, 0x02, 0x24, 0x75, 0x6e, 0x24, 0x00, +0x10, 0x69, 0x84, 0x06, 0x00, 0xfc, 0x03, 0x73, 0x61, 0x6c, +0x72, 0x65, 0x61, 0x64, 0x79, 0xe2, 0x07, 0x60, 0x2e, 0x20, +0x48, 0x6f, 0x6c, 0x64, 0x59, 0x00, 0x13, 0x43, 0x9e, 0x06, +0x00, 0x15, 0x02, 0x4a, 0x68, 0x69, 0x66, 0x74, 0x54, 0x02, +0x80, 0x61, 0x6e, 0x20, 0x61, 0x72, 0x72, 0x6f, 0x77, 0xbd, +0x01, 0x01, 0x55, 0x03, 0x00, 0x99, 0x08, 0x02, 0xd9, 0x00, +0x00, 0x7b, 0x03, 0x02, 0x95, 0x00, 0x26, 0x69, 0x6e, 0x32, +0x06, 0x05, 0x7b, 0x09, 0x00, 0x25, 0x03, 0x41, 0x28, 0x41, +0x6c, 0x6c, 0x1b, 0x00, 0x11, 0x61, 0x12, 0x00, 0x15, 0x73, +0xee, 0x09, 0x11, 0x64, 0x96, 0x0a, 0x12, 0x65, 0x5b, 0x02, +0x30, 0x32, 0x2e, 0x31, 0x32, 0x03, 0x02, 0xb5, 0x02, 0x50, +0x61, 0x76, 0x61, 0x69, 0x6c, 0xe8, 0x08, 0x23, 0x2e, 0x29, +0x6c, 0x07, 0x13, 0x32, 0x0c, 0x07, 0x00, 0x49, 0x04, 0x71, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x05, 0x24, +0x73, 0x65, 0x12, 0x00, 0x03, 0xca, 0x09, 0x05, 0x3c, 0x00, +0x05, 0x0a, 0x0a, 0xf0, 0x01, 0x65, 0x20, 0x60, 0x43, 0x75, +0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, +0x70, 0x6f, 0x00, 0x04, 0x11, 0x07, 0xf1, 0x04, 0x60, 0x54, +0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, +0x20, 0x0a, 0x5f, 0x47, 0x72, 0x69, 0x64, 0xa1, 0x0b, 0x43, +0x5f, 0x20, 0x0a, 0x53, 0xb8, 0x08, 0x1f, 0x73, 0xb6, 0x0b, +0x04, 0x11, 0x4c, 0xc0, 0x05, 0x32, 0x6c, 0x69, 0x6d, 0x5a, +0x01, 0x68, 0x33, 0x3b, 0x20, 0x75, 0x70, 0x70, 0x12, 0x00, +0x74, 0x39, 0x20, 0x28, 0x62, 0x65, 0x63, 0x61, 0xd0, 0x06, +0x20, 0x75, 0x73, 0xba, 0x02, 0x00, 0x59, 0x02, 0x43, 0x66, +0x61, 0x63, 0x65, 0xd3, 0x09, 0x20, 0x62, 0x65, 0x5d, 0x09, +0x02, 0x2b, 0x05, 0x40, 0x64, 0x69, 0x66, 0x66, 0x23, 0x05, +0x12, 0x74, 0x67, 0x03, 0x11, 0x60, 0x09, 0x02, 0x90, 0x73, +0x27, 0x20, 0x62, 0x69, 0x67, 0x67, 0x65, 0x72, 0x32, 0x02, +0x50, 0x6e, 0x20, 0x39, 0x21, 0x29, 0xa8, 0x00, 0x14, 0x44, +0x2b, 0x00, 0x53, 0x79, 0x5f, 0x20, 0x0a, 0x43, 0x7e, 0x08, +0x02, 0x99, 0x03, 0x05, 0x1a, 0x00, 0x05, 0xae, 0x00, 0x82, +0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x29, 0x09, +0x00, 0x90, 0x06, 0x40, 0x74, 0x20, 0x55, 0x6e, 0x25, 0x0a, +0x21, 0x6f, 0x6e, 0x28, 0x01, 0x53, 0x6c, 0x65, 0x76, 0x65, +0x6c, 0xbd, 0x09, 0x71, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, +0x61, 0x6f, 0x02, 0x05, 0x2e, 0x07, 0x81, 0x72, 0x65, 0x71, +0x75, 0x69, 0x72, 0x65, 0x64, 0x21, 0x09, 0x02, 0x0f, 0x01, +0x31, 0x6f, 0x6c, 0x75, 0x48, 0x01, 0x21, 0x73, 0x68, 0xc8, +0x00, 0x23, 0x73, 0x74, 0x2b, 0x00, 0xb0, 0x75, 0x6e, 0x69, +0x71, 0x75, 0x65, 0x2e, 0x20, 0x54, 0x68, 0x65, 0x3d, 0x03, +0x02, 0xee, 0x06, 0x02, 0x62, 0x00, 0x14, 0x73, 0x48, 0x00, +0x07, 0xef, 0x0a, 0x00, 0xd5, 0x08, 0x10, 0x6f, 0x5a, 0x0b, +0x22, 0x78, 0x20, 0x91, 0x00, 0x01, 0xa4, 0x0b, 0x00, 0x01, +0x02, 0x30, 0x6f, 0x69, 0x64, 0x17, 0x03, 0x02, 0x10, 0x00, +0x05, 0x97, 0x00, 0x50, 0x6b, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3527; const char quick_help_text[] = "Complete the latin square of towers in accordance with the clues."; diff --git a/apps/plugins/puzzles/help/tracks.c b/apps/plugins/puzzles/help/tracks.c index e60c71afb7..8110e37e16 100644 --- a/apps/plugins/puzzles/help/tracks.c +++ b/apps/plugins/puzzles/help/tracks.c @@ -1,59 +1,137 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1858 comp 1275 ratio 0.686222 level 11 saved 583 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 40: Tracks " -"\n" -"You are given a grid of squares, some of which are filled with train " -"tracks. You need to complete the track from A to B so that the " -"rows and columns contain the same number of track segments as are " -"indicated in the clues to the top and right of the grid. " -"\n" -"There are only straight and 90 degree curved rails, and the track " -"may not cross itself. " -"\n" -"Tracks was contributed to this collection by James Harvey. " -"\n" -"\n#40.1 Tracks controls " -"\n" -"Left-clicking on an edge between two squares adds a track segment " -"between the two squares. Right-clicking on an edge adds a cross on " -"the edge, indicating no track is possible there. " -"\n" -"Left-clicking in a square adds a colour indicator showing that " -"you know the square must contain a track, even if you don't know " -"which edges it crosses yet. Right-clicking in a square adds a cross " -"indicating it contains no track segment. " -"\n" -"Left- or right-dragging between squares allows you to lay a straight " -"line of is-track or is-not-track indicators, useful for filling in " -"rows or columns to match the clue. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#40.2 Tracks parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of the grid, in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle: at Tricky " -"level, you are required to make more deductions regarding " -"disregarding moves that would lead to impossible crossings " -"later. " -"\n" -"_Disallow consecutive 1 clues_ " -"\n" -"Controls whether the Tracks game generation permits two adjacent " -"rows or columns to have a 1 clue, or permits the row or column " -"of the track's endpoint to have a 1 clue. By default this is " -"not permitted, to avoid long straight boring segments of track " -"and make the games more twiddly and interesting. If you want to " -"restore the possibility, turn this option off. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2b, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x34, 0x30, 0x3a, 0x20, 0x54, 0x72, 0x61, 0x63, 0x6b, +0x73, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, +0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, +0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, +0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x6f, 0x6d, 0x65, +0x11, 0x00, 0x51, 0x77, 0x68, 0x69, 0x63, 0x68, 0x2b, 0x00, +0xf1, 0x04, 0x66, 0x69, 0x6c, 0x6c, 0x65, 0x64, 0x20, 0x77, +0x69, 0x74, 0x68, 0x20, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x20, +0x74, 0x4d, 0x00, 0x20, 0x2e, 0x20, 0x4d, 0x00, 0xf2, 0x05, +0x6e, 0x65, 0x65, 0x64, 0x20, 0x74, 0x6f, 0x20, 0x63, 0x6f, +0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x20, 0x74, 0x68, 0x65, +0x21, 0x00, 0x70, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x41, +0x1d, 0x00, 0x91, 0x42, 0x20, 0x73, 0x6f, 0x20, 0x74, 0x68, +0x61, 0x74, 0x1e, 0x00, 0xf1, 0x09, 0x72, 0x6f, 0x77, 0x73, +0x20, 0x61, 0x6e, 0x64, 0x20, 0x63, 0x6f, 0x6c, 0x75, 0x6d, +0x6e, 0x73, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, +0x1d, 0x00, 0xe3, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x6e, 0x75, +0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x4a, 0x00, 0xb1, +0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x20, 0x61, +0x73, 0x93, 0x00, 0xa3, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, +0x74, 0x65, 0x64, 0x20, 0x36, 0x00, 0x82, 0x63, 0x6c, 0x75, +0x65, 0x73, 0x20, 0x74, 0x6f, 0x7e, 0x00, 0x21, 0x6f, 0x70, +0x5f, 0x00, 0x51, 0x72, 0x69, 0x67, 0x68, 0x74, 0x45, 0x00, +0x21, 0x68, 0x65, 0xe9, 0x00, 0x81, 0x2e, 0x20, 0x0a, 0x54, +0x68, 0x65, 0x72, 0x65, 0x44, 0x00, 0x90, 0x6f, 0x6e, 0x6c, +0x79, 0x20, 0x73, 0x74, 0x72, 0x61, 0x26, 0x00, 0x01, 0x30, +0x00, 0xf0, 0x08, 0x39, 0x30, 0x20, 0x64, 0x65, 0x67, 0x72, +0x65, 0x65, 0x20, 0x63, 0x75, 0x72, 0x76, 0x65, 0x64, 0x20, +0x72, 0x61, 0x69, 0x6c, 0x73, 0x2c, 0x1c, 0x00, 0x07, 0xd6, +0x00, 0xf3, 0x08, 0x6d, 0x61, 0x79, 0x20, 0x6e, 0x6f, 0x74, +0x20, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x20, 0x69, 0x74, 0x73, +0x65, 0x6c, 0x66, 0x2e, 0x20, 0x0a, 0x61, 0x01, 0x22, 0x77, +0x61, 0xcf, 0x00, 0x72, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, +0x64, 0x93, 0x00, 0x20, 0x69, 0x73, 0xeb, 0x00, 0xf2, 0x11, +0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x62, 0x79, +0x20, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x48, 0x61, 0x72, +0x76, 0x65, 0x79, 0x2e, 0x20, 0x0a, 0x0a, 0x23, 0x34, 0x30, +0x2e, 0x31, 0xa4, 0x01, 0x03, 0x3f, 0x00, 0xf4, 0x1a, 0x6f, +0x6c, 0x73, 0x20, 0x0a, 0x4c, 0x65, 0x66, 0x74, 0x2d, 0x63, +0x6c, 0x69, 0x63, 0x6b, 0x69, 0x6e, 0x67, 0x20, 0x6f, 0x6e, +0x20, 0x61, 0x6e, 0x20, 0x65, 0x64, 0x67, 0x65, 0x20, 0x62, +0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x74, 0x77, 0x6f, +0xba, 0x01, 0x7a, 0x20, 0x61, 0x64, 0x64, 0x73, 0x20, 0x61, +0x31, 0x01, 0x06, 0x29, 0x00, 0x28, 0x68, 0x65, 0x2d, 0x00, +0x6f, 0x2e, 0x20, 0x52, 0x69, 0x67, 0x68, 0x5c, 0x00, 0x02, +0x03, 0x48, 0x00, 0x03, 0xdf, 0x00, 0x11, 0x6f, 0x3b, 0x00, +0x01, 0x19, 0x00, 0x14, 0x2c, 0x76, 0x01, 0x00, 0x30, 0x00, +0x23, 0x6e, 0x6f, 0x69, 0x00, 0xa1, 0x69, 0x73, 0x20, 0x70, +0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0xfa, 0x01, 0x3b, 0x72, +0x65, 0x2e, 0xb7, 0x00, 0x00, 0xa2, 0x01, 0x12, 0x61, 0x78, +0x00, 0x06, 0x5c, 0x00, 0x54, 0x6f, 0x6c, 0x6f, 0x75, 0x72, +0x50, 0x00, 0xa2, 0x6f, 0x72, 0x20, 0x73, 0x68, 0x6f, 0x77, +0x69, 0x6e, 0x67, 0x23, 0x02, 0x80, 0x79, 0x6f, 0x75, 0x20, +0x6b, 0x6e, 0x6f, 0x77, 0x50, 0x00, 0x04, 0x39, 0x00, 0x44, +0x6d, 0x75, 0x73, 0x74, 0x27, 0x02, 0x04, 0xe5, 0x00, 0x30, +0x2c, 0x20, 0x65, 0xc4, 0x02, 0x21, 0x69, 0x66, 0x32, 0x00, +0x51, 0x64, 0x6f, 0x6e, 0x27, 0x74, 0x38, 0x00, 0x02, 0xbb, +0x02, 0x01, 0xb4, 0x00, 0x33, 0x73, 0x20, 0x69, 0xa9, 0x01, +0x65, 0x65, 0x73, 0x20, 0x79, 0x65, 0x74, 0xf8, 0x00, 0x0e, +0x9d, 0x00, 0x0a, 0xf9, 0x00, 0x08, 0xec, 0x00, 0x15, 0x69, +0x7a, 0x00, 0x4a, 0x73, 0x20, 0x6e, 0x6f, 0x61, 0x01, 0x04, +0xee, 0x00, 0x32, 0x20, 0x6f, 0x72, 0x6f, 0x02, 0x94, 0x2d, +0x64, 0x72, 0x61, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x7b, 0x01, +0x06, 0xa0, 0x01, 0x50, 0x6c, 0x6c, 0x6f, 0x77, 0x73, 0xac, +0x00, 0x00, 0x15, 0x02, 0x56, 0x6c, 0x61, 0x79, 0x20, 0x61, +0x7f, 0x02, 0x31, 0x6c, 0x69, 0x6e, 0x76, 0x03, 0x32, 0x69, +0x73, 0x2d, 0x60, 0x00, 0x20, 0x6f, 0x72, 0x0c, 0x00, 0x32, +0x6e, 0x6f, 0x74, 0x10, 0x00, 0x06, 0x2c, 0x01, 0xd1, 0x73, +0x2c, 0x20, 0x75, 0x73, 0x65, 0x66, 0x75, 0x6c, 0x20, 0x66, +0x6f, 0x72, 0x9c, 0x03, 0x02, 0xc8, 0x00, 0x02, 0x56, 0x03, +0x23, 0x6f, 0x72, 0x55, 0x03, 0x01, 0x0d, 0x03, 0x54, 0x6d, +0x61, 0x74, 0x63, 0x68, 0x20, 0x03, 0x00, 0x9a, 0x01, 0x41, +0x28, 0x41, 0x6c, 0x6c, 0x10, 0x00, 0x11, 0x61, 0x8b, 0x02, +0x92, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, +0x49, 0x03, 0x13, 0x73, 0xa1, 0x02, 0x41, 0x32, 0x2e, 0x31, +0x20, 0x11, 0x01, 0xf3, 0x00, 0x6c, 0x73, 0x6f, 0x20, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0xa9, 0x02, 0x14, 0x32, 0xa9, 0x02, 0xa1, 0x70, 0x61, 0x72, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x58, 0x03, 0x26, +0x73, 0x65, 0x12, 0x00, 0x01, 0xa7, 0x03, 0x06, 0x3c, 0x00, +0x01, 0x0b, 0x04, 0x01, 0x79, 0x00, 0xe0, 0x60, 0x43, 0x75, +0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, +0x70, 0x6f, 0x00, 0x04, 0x64, 0x02, 0xf0, 0x0b, 0x60, 0x54, +0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, +0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, +0x20, 0x5f, 0x48, 0x65, 0x22, 0x01, 0x78, 0x5f, 0x20, 0x0a, +0x53, 0x69, 0x7a, 0x65, 0xce, 0x03, 0x00, 0x91, 0x02, 0x06, +0xd1, 0x02, 0xf3, 0x01, 0x0a, 0x5f, 0x44, 0x69, 0x66, 0x66, +0x69, 0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x20, 0x0a, 0x43, +0x45, 0x03, 0x01, 0x2e, 0x00, 0x15, 0x64, 0x1a, 0x00, 0x05, +0x40, 0x00, 0x41, 0x65, 0x6e, 0x65, 0x72, 0x41, 0x04, 0xf3, +0x0b, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x3a, 0x20, 0x61, +0x74, 0x20, 0x54, 0x72, 0x69, 0x63, 0x6b, 0x79, 0x20, 0x6c, +0x65, 0x76, 0x65, 0x6c, 0x2c, 0x20, 0x79, 0x2a, 0x05, 0x82, +0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x51, 0x01, +0xc3, 0x6b, 0x65, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, 0x64, +0x65, 0x64, 0x75, 0x44, 0x01, 0x60, 0x72, 0x65, 0x67, 0x61, +0x72, 0x64, 0x86, 0x01, 0x36, 0x64, 0x69, 0x73, 0x0d, 0x00, +0x52, 0x6d, 0x6f, 0x76, 0x65, 0x73, 0xd2, 0x02, 0x91, 0x77, +0x6f, 0x75, 0x6c, 0x64, 0x20, 0x6c, 0x65, 0x61, 0x45, 0x00, +0x24, 0x69, 0x6d, 0x32, 0x03, 0x02, 0x6c, 0x02, 0xa2, 0x69, +0x6e, 0x67, 0x73, 0x20, 0x6c, 0x61, 0x74, 0x65, 0x72, 0xc6, +0x00, 0x11, 0x73, 0x2a, 0x02, 0x00, 0x74, 0x02, 0xa2, 0x73, +0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x20, 0x31, 0xe1, +0x04, 0x08, 0xd8, 0x00, 0x30, 0x77, 0x68, 0x65, 0x70, 0x03, +0x00, 0xce, 0x00, 0x04, 0x90, 0x01, 0x34, 0x67, 0x61, 0x6d, +0xda, 0x00, 0x01, 0x59, 0x01, 0x71, 0x70, 0x65, 0x72, 0x6d, +0x69, 0x74, 0x73, 0xf9, 0x03, 0x8f, 0x61, 0x64, 0x6a, 0x61, +0x63, 0x65, 0x6e, 0x74, 0x27, 0x02, 0x01, 0x63, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x65, 0x00, 0x44, 0x2c, 0x20, 0x6f, +0x72, 0x3a, 0x00, 0x04, 0xae, 0x05, 0x06, 0x30, 0x00, 0x36, +0x20, 0x6f, 0x66, 0x0b, 0x05, 0xbd, 0x27, 0x73, 0x20, 0x65, +0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x47, 0x00, 0xc2, +0x2e, 0x20, 0x42, 0x79, 0x20, 0x64, 0x65, 0x66, 0x61, 0x75, +0x6c, 0x74, 0x02, 0x05, 0x20, 0x69, 0x73, 0x37, 0x05, 0x03, +0x5b, 0x00, 0x60, 0x74, 0x65, 0x64, 0x2c, 0x20, 0x74, 0x5e, +0x02, 0x86, 0x6f, 0x69, 0x64, 0x20, 0x6c, 0x6f, 0x6e, 0x67, +0x0c, 0x03, 0x65, 0x62, 0x6f, 0x72, 0x69, 0x6e, 0x67, 0xf4, +0x05, 0x05, 0x06, 0x06, 0x00, 0x88, 0x05, 0x01, 0x82, 0x01, +0x02, 0xc2, 0x01, 0x00, 0x43, 0x05, 0x02, 0x8c, 0x01, 0x71, +0x74, 0x77, 0x69, 0x64, 0x64, 0x6c, 0x79, 0x20, 0x00, 0x70, +0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0xb9, 0x03, 0x32, +0x2e, 0x20, 0x49, 0x1b, 0x04, 0x22, 0x77, 0x61, 0xa1, 0x00, +0x00, 0x18, 0x00, 0x21, 0x6f, 0x72, 0x3f, 0x00, 0x03, 0xb5, +0x04, 0xb1, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x2c, 0x20, 0x74, +0x75, 0x72, 0x6e, 0xa5, 0x00, 0x05, 0x93, 0x02, 0x60, 0x66, +0x66, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 1858; const char quick_help_text[] = "Fill in the railway track according to the clues."; diff --git a/apps/plugins/puzzles/help/twiddle.c b/apps/plugins/puzzles/help/twiddle.c index a1684a6654..31e4ccd45c 100644 --- a/apps/plugins/puzzles/help/twiddle.c +++ b/apps/plugins/puzzles/help/twiddle.c @@ -1,75 +1,196 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 2914 comp 1863 ratio 0.639327 level 11 saved 1051 */ /* 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" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x06, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x37, 0x3a, 0x20, 0x54, 0x77, 0x69, 0x64, 0x64, 0x6c, +0x65, 0x20, 0x0a, 0x09, 0x00, 0xf3, 0x33, 0x69, 0x73, 0x20, +0x61, 0x20, 0x74, 0x69, 0x6c, 0x65, 0x2d, 0x72, 0x65, 0x61, +0x72, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, +0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x20, 0x76, +0x69, 0x73, 0x75, 0x61, 0x6c, 0x6c, 0x79, 0x20, 0x73, 0x69, +0x6d, 0x69, 0x6c, 0x61, 0x72, 0x20, 0x74, 0x6f, 0x20, 0x53, +0x69, 0x78, 0x74, 0x65, 0x65, 0x6e, 0x20, 0x28, 0x73, 0x65, +0x65, 0x20, 0x63, 0x5d, 0x00, 0xf1, 0x13, 0x36, 0x29, 0x3a, +0x20, 0x79, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, 0x20, 0x67, +0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, 0x72, 0x69, +0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, +0x65, 0x67, 0x00, 0xf0, 0x11, 0x73, 0x2c, 0x20, 0x65, 0x61, +0x63, 0x68, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, +0x69, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x6e, 0x75, 0x6d, 0x62, +0x65, 0x72, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x44, 0x00, 0x80, +0x72, 0x20, 0x61, 0x69, 0x6d, 0x20, 0x69, 0x73, 0x6c, 0x00, +0x03, 0x94, 0x00, 0x43, 0x20, 0x74, 0x68, 0x65, 0x27, 0x00, +0x40, 0x73, 0x20, 0x69, 0x6e, 0x19, 0x00, 0x50, 0x73, 0x63, +0x65, 0x6e, 0x64, 0x40, 0x00, 0xf4, 0x01, 0x6f, 0x72, 0x64, +0x65, 0x72, 0x2e, 0x20, 0x0a, 0x49, 0x6e, 0x20, 0x62, 0x61, +0x73, 0x69, 0x63, 0xe5, 0x00, 0x12, 0x2c, 0x4c, 0x00, 0x43, +0x6d, 0x6f, 0x76, 0x65, 0x4d, 0x00, 0x84, 0x72, 0x6f, 0x74, +0x61, 0x74, 0x65, 0x20, 0x61, 0x91, 0x00, 0x50, 0x67, 0x72, +0x6f, 0x75, 0x70, 0xa1, 0x00, 0x42, 0x66, 0x6f, 0x75, 0x72, +0x9f, 0x00, 0x60, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x6f, +0x00, 0xf0, 0x0f, 0x69, 0x72, 0x20, 0x63, 0x6f, 0x6d, 0x6d, +0x6f, 0x6e, 0x20, 0x63, 0x65, 0x6e, 0x74, 0x72, 0x65, 0x2e, +0x20, 0x28, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, +0x69, 0x6f, 0x6e, 0x52, 0x00, 0xf0, 0x03, 0x6e, 0x6f, 0x74, +0x20, 0x73, 0x69, 0x67, 0x6e, 0x69, 0x66, 0x69, 0x63, 0x61, +0x6e, 0x74, 0x20, 0x69, 0x6e, 0x38, 0x00, 0x02, 0x85, 0x00, +0x05, 0x41, 0x01, 0x81, 0x61, 0x6c, 0x74, 0x68, 0x6f, 0x75, +0x67, 0x68, 0x1d, 0x01, 0xf4, 0x1b, 0x63, 0x61, 0x6e, 0x20, +0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x20, 0x69, 0x74, 0x2e, +0x29, 0x20, 0x4f, 0x6e, 0x20, 0x6d, 0x6f, 0x72, 0x65, 0x20, +0x61, 0x64, 0x76, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x20, 0x73, +0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2c, 0x2f, 0x00, +0x06, 0xb4, 0x00, 0x6c, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x72, +0xbb, 0x00, 0x02, 0xb6, 0x00, 0x00, 0xfe, 0x00, 0xd0, 0x20, +0x66, 0x69, 0x72, 0x73, 0x74, 0x20, 0x73, 0x61, 0x77, 0x20, +0x74, 0x68, 0xf0, 0x00, 0x63, 0x79, 0x70, 0x65, 0x20, 0x6f, +0x66, 0x89, 0x00, 0x04, 0x9d, 0x00, 0xf2, 0x13, 0x47, 0x61, +0x6d, 0x65, 0x43, 0x75, 0x62, 0x65, 0x20, 0x67, 0x61, 0x6d, +0x65, 0x20, 0x60, 0x4d, 0x65, 0x74, 0x72, 0x6f, 0x69, 0x64, +0x20, 0x50, 0x72, 0x69, 0x6d, 0x65, 0x20, 0x32, 0x27, 0x2e, +0x20, 0x49, 0x28, 0x00, 0xd0, 0x4d, 0x61, 0x69, 0x6e, 0x20, +0x47, 0x79, 0x72, 0x6f, 0x20, 0x43, 0x68, 0x61, 0x77, 0x01, +0x02, 0x41, 0x00, 0x21, 0x61, 0x74, 0x39, 0x00, 0x10, 0x2c, +0x24, 0x00, 0x12, 0x72, 0x3e, 0x02, 0x03, 0x61, 0x00, 0x01, +0xb1, 0x00, 0x50, 0x73, 0x6f, 0x6c, 0x76, 0x65, 0x6a, 0x01, +0xf2, 0x05, 0x75, 0x6e, 0x6c, 0x6f, 0x63, 0x6b, 0x20, 0x61, +0x20, 0x64, 0x6f, 0x6f, 0x72, 0x2c, 0x20, 0x77, 0x68, 0x69, +0x63, 0x68, 0x2e, 0x00, 0xb0, 0x73, 0x70, 0x65, 0x63, 0x69, +0x61, 0x6c, 0x20, 0x63, 0x61, 0x73, 0x9f, 0x00, 0x04, 0xad, +0x01, 0xd1, 0x2e, 0x20, 0x49, 0x20, 0x64, 0x65, 0x76, 0x65, +0x6c, 0x6f, 0x70, 0x65, 0x64, 0xc1, 0x00, 0x02, 0xa2, 0x00, +0x20, 0x61, 0x73, 0x48, 0x02, 0x82, 0x65, 0x6e, 0x65, 0x72, +0x61, 0x6c, 0x69, 0x73, 0x7b, 0x01, 0x20, 0x6f, 0x66, 0x8a, +0x00, 0x04, 0xa4, 0x02, 0x84, 0x2e, 0x20, 0x0a, 0x0a, 0x23, +0x37, 0x2e, 0x31, 0x4a, 0x00, 0x01, 0x5b, 0x02, 0xd6, 0x72, +0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x6f, 0x20, 0x70, 0x6c, +0x61, 0x79, 0x11, 0x02, 0x51, 0x63, 0x6c, 0x69, 0x63, 0x6b, +0xe0, 0x00, 0x44, 0x6d, 0x6f, 0x75, 0x73, 0x15, 0x01, 0x03, +0xe1, 0x01, 0x02, 0x58, 0x00, 0x19, 0x65, 0x62, 0x01, 0x01, +0xd6, 0x00, 0x45, 0x77, 0x69, 0x73, 0x68, 0x3f, 0x02, 0x00, +0xaa, 0x00, 0x08, 0xe8, 0x01, 0x32, 0x6d, 0x6f, 0x64, 0x6a, +0x02, 0x06, 0xaa, 0x01, 0x33, 0x32, 0x78, 0x32, 0x45, 0x00, +0x04, 0xfa, 0x00, 0x51, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x25, +0x00, 0x21, 0x68, 0x61, 0x21, 0x01, 0x03, 0x8a, 0x00, 0xf0, +0x04, 0x61, 0x74, 0x20, 0x61, 0x20, 0x63, 0x6f, 0x72, 0x6e, +0x65, 0x72, 0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x20, 0x77, +0x58, 0x01, 0x08, 0x90, 0x02, 0x40, 0x6d, 0x65, 0x65, 0x74, +0xdf, 0x01, 0x0b, 0x2a, 0x02, 0x01, 0x78, 0x00, 0x02, 0x53, +0x00, 0x82, 0x6d, 0x69, 0x67, 0x68, 0x74, 0x20, 0x62, 0x65, +0x81, 0x00, 0x00, 0x12, 0x03, 0xa4, 0x33, 0x78, 0x33, 0x20, +0x6f, 0x72, 0x20, 0x65, 0x76, 0x65, 0x36, 0x00, 0x11, 0x74, +0xe6, 0x03, 0x53, 0x6d, 0x65, 0x3b, 0x20, 0x69, 0xe5, 0x00, +0x29, 0x69, 0x7a, 0xf1, 0x00, 0x02, 0xcd, 0x01, 0x30, 0x6f, +0x64, 0x64, 0x12, 0x00, 0x12, 0x6e, 0xcd, 0x01, 0x52, 0x69, +0x6d, 0x70, 0x6c, 0x79, 0xaa, 0x00, 0x08, 0x2a, 0x01, 0x02, +0xca, 0x03, 0x0b, 0x3e, 0x00, 0x02, 0x29, 0x01, 0x38, 0x61, +0x6e, 0x74, 0x29, 0x01, 0x20, 0x0a, 0x43, 0x3c, 0x00, 0x00, +0x92, 0x00, 0x41, 0x77, 0x69, 0x74, 0x68, 0x2e, 0x00, 0x43, +0x6c, 0x65, 0x66, 0x74, 0x7d, 0x01, 0x54, 0x62, 0x75, 0x74, +0x74, 0x6f, 0xe1, 0x02, 0x44, 0x73, 0x20, 0x74, 0x68, 0x74, +0x01, 0x50, 0x61, 0x6e, 0x74, 0x69, 0x63, 0x40, 0x02, 0x6e, +0x77, 0x69, 0x73, 0x65, 0x2e, 0x20, 0x45, 0x00, 0x10, 0x72, +0xf2, 0x00, 0x0c, 0x40, 0x00, 0x37, 0x69, 0x74, 0x20, 0x35, +0x00, 0x23, 0x0a, 0x59, 0x40, 0x03, 0x42, 0x61, 0x6c, 0x73, +0x6f, 0x04, 0x04, 0x95, 0x61, 0x6e, 0x20, 0x6f, 0x75, 0x74, +0x6c, 0x69, 0x6e, 0xb4, 0x00, 0x51, 0x61, 0x72, 0x6f, 0x75, +0x6e, 0xf2, 0x00, 0x01, 0xab, 0x04, 0x06, 0x61, 0x00, 0xca, +0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, +0x73, 0x3b, 0x23, 0x01, 0x06, 0x3d, 0x01, 0x20, 0x61, 0x62, +0x55, 0x00, 0x10, 0x28, 0xed, 0x01, 0xe3, 0x62, 0x79, 0x20, +0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x2c, 0x20, 0x6f, +0x72, 0xaa, 0x03, 0xb2, 0x29, 0x2e, 0x20, 0x50, 0x72, 0x65, +0x73, 0x73, 0x69, 0x6e, 0x67, 0xb5, 0x00, 0x50, 0x65, 0x74, +0x75, 0x72, 0x6e, 0x54, 0x00, 0x00, 0x24, 0x00, 0x40, 0x73, +0x70, 0x61, 0x63, 0x43, 0x02, 0x63, 0x72, 0x20, 0x77, 0x69, +0x6c, 0x6c, 0xc5, 0x00, 0x04, 0x7c, 0x00, 0x43, 0x72, 0x65, +0x6e, 0x74, 0x73, 0x00, 0x0a, 0x0d, 0x01, 0x00, 0x3a, 0x00, +0x06, 0x0d, 0x00, 0x20, 0x72, 0x65, 0x4d, 0x03, 0xd1, 0x74, +0x69, 0x76, 0x65, 0x6c, 0x79, 0x2e, 0x20, 0x0a, 0x28, 0x41, +0x6c, 0x6c, 0x42, 0x00, 0x20, 0x61, 0x63, 0x27, 0x03, 0xd0, +0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, +0x64, 0x20, 0x69, 0x77, 0x04, 0x11, 0x63, 0x3d, 0x03, 0x30, +0x32, 0x2e, 0x31, 0xa4, 0x05, 0x02, 0x18, 0x01, 0xb2, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0x46, 0x03, 0x15, 0x32, 0x46, 0x03, 0x70, 0x70, 0x61, 0x72, +0x61, 0x6d, 0x65, 0x74, 0x70, 0x05, 0x15, 0x0a, 0x14, 0x00, +0x40, 0x72, 0x6f, 0x76, 0x69, 0x77, 0x02, 0x30, 0x73, 0x65, +0x76, 0x91, 0x03, 0x00, 0x6b, 0x03, 0x53, 0x66, 0x69, 0x67, +0x75, 0x72, 0x98, 0x03, 0x12, 0x70, 0x78, 0x00, 0x31, 0x76, +0x69, 0x61, 0x88, 0x00, 0x83, 0x60, 0x43, 0x75, 0x73, 0x74, +0x6f, 0x6d, 0x27, 0x19, 0x00, 0x32, 0x20, 0x6f, 0x6e, 0x17, +0x00, 0xf3, 0x00, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, +0x65, 0x6e, 0x75, 0x3a, 0x20, 0x0a, 0x2d, 0x20, 0xaa, 0x01, +0x05, 0x4d, 0x00, 0x02, 0x07, 0x01, 0x51, 0x77, 0x69, 0x64, +0x74, 0x68, 0x12, 0x06, 0x20, 0x68, 0x65, 0xef, 0x01, 0x03, +0x6f, 0x02, 0x02, 0xf5, 0x03, 0x02, 0xb0, 0x01, 0x1f, 0x2e, +0x3e, 0x00, 0x02, 0x05, 0xa2, 0x01, 0x07, 0x7a, 0x06, 0x10, +0x62, 0x34, 0x01, 0x01, 0x35, 0x04, 0x04, 0x2f, 0x02, 0x06, +0x13, 0x03, 0x09, 0x46, 0x00, 0x52, 0x61, 0x73, 0x6b, 0x20, +0x66, 0x3b, 0x03, 0x25, 0x72, 0x79, 0xf6, 0x01, 0x16, 0x6e, +0x23, 0x02, 0x20, 0x74, 0x6f, 0x6a, 0x03, 0x30, 0x64, 0x69, +0x73, 0x69, 0x03, 0x40, 0x75, 0x69, 0x73, 0x68, 0x3e, 0x01, +0x54, 0x20, 0x28, 0x74, 0x68, 0x65, 0x03, 0x02, 0x11, 0x29, +0x04, 0x02, 0x1b, 0x79, 0x51, 0x00, 0x12, 0x61, 0x4f, 0x03, +0x56, 0x69, 0x66, 0x69, 0x65, 0x64, 0x93, 0x05, 0x02, 0x1f, +0x04, 0x03, 0x4d, 0x05, 0x05, 0x75, 0x04, 0x10, 0x73, 0xba, +0x00, 0x30, 0x69, 0x64, 0x65, 0xfa, 0x01, 0x24, 0x61, 0x6c, +0xf7, 0x06, 0x04, 0x78, 0x04, 0x0e, 0x49, 0x00, 0x09, 0x34, +0x07, 0x48, 0x6a, 0x75, 0x73, 0x74, 0x39, 0x07, 0x13, 0x61, +0x15, 0x02, 0x12, 0x31, 0x38, 0x07, 0x00, 0x0c, 0x00, 0x03, +0x2a, 0x06, 0x45, 0x72, 0x6f, 0x77, 0x2c, 0x1f, 0x00, 0x16, +0x32, 0x1f, 0x00, 0x00, 0x2b, 0x02, 0x30, 0x6f, 0x6e, 0x64, +0x20, 0x00, 0x02, 0x93, 0x07, 0x5f, 0x73, 0x6f, 0x20, 0x6f, +0x6e, 0x6d, 0x01, 0x03, 0x00, 0xb0, 0x04, 0x00, 0xbe, 0x00, +0x01, 0x38, 0x00, 0x17, 0x6f, 0x1f, 0x07, 0x24, 0x6f, 0x66, +0xc0, 0x04, 0x32, 0x61, 0x74, 0x74, 0xbe, 0x00, 0x10, 0x66, +0xa8, 0x00, 0x06, 0x11, 0x01, 0x14, 0x6e, 0x30, 0x00, 0x24, +0x62, 0x6c, 0xd6, 0x01, 0x02, 0x1c, 0x08, 0x01, 0x39, 0x00, +0x01, 0x17, 0x03, 0x01, 0x2e, 0x05, 0x00, 0xa7, 0x01, 0xd0, +0x72, 0x69, 0x61, 0x6e, 0x67, 0x6c, 0x65, 0x20, 0x64, 0x72, +0x61, 0x77, 0x6e, 0x38, 0x01, 0x43, 0x69, 0x74, 0x2e, 0x20, +0xef, 0x02, 0x03, 0x1e, 0x00, 0x01, 0x6c, 0x00, 0x20, 0x75, +0x73, 0x09, 0x05, 0x01, 0x4b, 0x05, 0x01, 0x09, 0x05, 0x60, +0x75, 0x70, 0x77, 0x61, 0x72, 0x64, 0xfc, 0x07, 0x00, 0xcc, +0x07, 0x56, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x02, 0x0f, +0xfa, 0x01, 0x02, 0x00, 0x69, 0x07, 0x40, 0x69, 0x6d, 0x69, +0x74, 0x8c, 0x07, 0x51, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x62, +0x08, 0x22, 0x70, 0x65, 0xe3, 0x02, 0x03, 0xff, 0x01, 0x92, +0x70, 0x65, 0x72, 0x66, 0x6f, 0x72, 0x6d, 0x65, 0x64, 0xd3, +0x02, 0x04, 0x8e, 0x02, 0x16, 0x42, 0x07, 0x04, 0x02, 0x47, +0x03, 0x03, 0xc7, 0x00, 0x03, 0x4a, 0x00, 0x16, 0x65, 0x46, +0x02, 0x00, 0x93, 0x04, 0x11, 0x75, 0xf9, 0x01, 0x00, 0x87, +0x02, 0x38, 0x6e, 0x79, 0x20, 0x7b, 0x09, 0x14, 0x69, 0x85, +0x08, 0x20, 0x61, 0x73, 0x72, 0x03, 0x11, 0x62, 0x21, 0x01, +0x21, 0x61, 0x73, 0x28, 0x00, 0x10, 0x6f, 0x6d, 0x01, 0x15, +0x2e, 0xb5, 0x00, 0x81, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, +0x64, 0x65, 0x31, 0x07, 0x00, 0x87, 0x04, 0x51, 0x72, 0x65, +0x71, 0x75, 0x65, 0x9c, 0x02, 0x00, 0x99, 0x07, 0x54, 0x72, +0x65, 0x63, 0x69, 0x73, 0x38, 0x09, 0x36, 0x20, 0x6f, 0x66, +0xd3, 0x00, 0x01, 0x12, 0x05, 0x1c, 0x73, 0xcf, 0x00, 0x70, +0x2e, 0x20, 0x54, 0x79, 0x70, 0x69, 0x63, 0xf0, 0x09, 0x0a, +0x88, 0x09, 0x21, 0x68, 0x65, 0xfb, 0x00, 0x10, 0x64, 0x10, +0x04, 0x31, 0x6d, 0x69, 0x6e, 0xca, 0x00, 0x04, 0x5f, 0x00, +0x00, 0xb4, 0x08, 0x0e, 0x5c, 0x00, 0x00, 0xaf, 0x00, 0x00, +0x78, 0x04, 0x31, 0x76, 0x65, 0x72, 0x4e, 0x09, 0xd1, 0x6d, +0x20, 0x65, 0x78, 0x61, 0x63, 0x74, 0x6c, 0x79, 0x2c, 0x20, +0x73, 0x6f, 0xf8, 0x00, 0x02, 0x0e, 0x02, 0xd1, 0x6e, 0x73, +0x77, 0x65, 0x72, 0x20, 0x28, 0x73, 0x61, 0x79, 0x29, 0x20, +0x61, 0xf8, 0x06, 0x10, 0x2d, 0x3f, 0x00, 0x04, 0x33, 0x01, +0x01, 0x93, 0x05, 0x0a, 0x19, 0x00, 0x50, 0x6f, 0x6c, 0x75, +0x74, 0x69, 0x90, 0x02, 0x21, 0x4e, 0x6f, 0xce, 0x01, 0x11, +0x61, 0x60, 0x00, 0x01, 0xe8, 0x06, 0x02, 0x7a, 0x00, 0x08, +0x67, 0x02, 0x16, 0x2c, 0x1c, 0x00, 0x80, 0x6c, 0x69, 0x6b, +0x65, 0x6c, 0x79, 0x20, 0x69, 0x61, 0x01, 0x01, 0x37, 0x00, +0x05, 0x4b, 0x00, 0x71, 0x73, 0x20, 0x73, 0x68, 0x6f, 0x72, +0x74, 0xc6, 0x02, 0x22, 0x61, 0x6e, 0x54, 0x02, 0x00, 0xc3, +0x05, 0x82, 0x74, 0x20, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, +0xc5, 0x01, 0x01, 0xbe, 0x05, 0x01, 0x1c, 0x0a, 0x12, 0x6f, +0x64, 0x02, 0xa0, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2e, +0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 2914; const char quick_help_text[] = "Rotate the tiles around themselves to arrange them into order."; diff --git a/apps/plugins/puzzles/help/undead.c b/apps/plugins/puzzles/help/undead.c index 2b8cccc9d6..d2f61d17f9 100644 --- a/apps/plugins/puzzles/help/undead.c +++ b/apps/plugins/puzzles/help/undead.c @@ -1,88 +1,221 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3275 comp 2117 ratio 0.646412 level 11 saved 1158 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 37: Undead " -"\n" -"You are given a grid of squares, some of which contain diagonal " -"mirrors. Every square which is not a mirror must be filled with one " -"of three types of undead monster: a ghost, a vampire, or a zombie. " -"\n" -"Vampires can be seen directly, but are invisible when reflected in " -"mirrors. Ghosts are the opposite way round: they can be seen in " -"mirrors, but are invisible when looked at directly. Zombies are " -"visible by any means. " -"\n" -"You are also told the total number of each type of monster in the " -"grid. Also around the edge of the grid are written numbers, which " -"indicate how many monsters can be seen if you look into the grid " -"along a row or column starting from that position. (The diagonal " -"mirrors are reflective on both sides. If your reflected line of " -"sight crosses the same monster more than once, the number will count " -"it each time it is visible, not just once.) " -"\n" -"This puzzle type was invented by David Millar, under the name " -"`Haunted Mirror Maze'. See [20] for more details. " -"\n" -"Undead was contributed to this collection by Steffen Bauer. " -"\n" -"[20] http://www.janko.at/Raetsel/Spukschloss/index.htm " -"\n" -"\n#37.1 Undead controls " -"\n" -"Undead has a similar control system to Solo, Unequal and Keen. " -"\n" -"To play Undead, click the mouse in any empty square and then type " -"a letter on the keyboard indicating the type of monster: `G' for " -"a ghost, `V' for a vampire, or `Z' for a zombie. If you make a " -"mistake, click the mouse in the incorrect square and press Space to " -"clear it again (or use the Undo feature). " -"\n" -"If you _right_-click in a square and then type a letter, the " -"corresponding monster will be shown in reduced size in that square, " -"as a `pencil mark'. You can have pencil marks for multiple monsters " -"in the same square. A square containing a full-size monster cannot " -"also contain pencil marks. " -"\n" -"The game pays no attention to pencil marks, so exactly what you " -"use them for is up to you: you can use them as reminders that a " -"particular square needs to be re-examined once you know more about " -"a particular monster, or you can use them as lists of the possible " -"monster in a given square, or anything else you feel like. " -"\n" -"To erase a single pencil mark, right-click in the square and type " -"the same letter again. " -"\n" -"All pencil marks in a square are erased when you left-click and type " -"a monster letter, or when you left-click and press Space. Right-\n" -"clicking and pressing space will also erase pencil marks. " -"\n" -"As for Solo, the cursor keys can be used in conjunction with the " -"letter keys to place monsters or pencil marks. Use the cursor keys " -"to move a highlight around the grid, and type a monster letter to " -"enter it in the highlighted square. Pressing return toggles the " -"highlight into a mode in which you can enter or remove pencil marks. " -"\n" -"If you prefer plain letters of the alphabet to cute monster " -"pictures, you can press `A' to toggle between showing the monsters " -"as monsters or showing them as letters. " -"\n" -"Left-clicking a clue will mark it as done (grey it out), or unmark " -"it if it is already marked. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#37.2 Undead parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2b, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x37, 0x3a, 0x20, 0x55, 0x6e, 0x64, 0x65, 0x61, +0x64, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, +0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, +0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, +0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x73, 0x6f, 0x6d, 0x65, +0x11, 0x00, 0xf3, 0x16, 0x77, 0x68, 0x69, 0x63, 0x68, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x64, 0x69, +0x61, 0x67, 0x6f, 0x6e, 0x61, 0x6c, 0x20, 0x6d, 0x69, 0x72, +0x72, 0x6f, 0x72, 0x73, 0x2e, 0x20, 0x45, 0x76, 0x65, 0x72, +0x79, 0x37, 0x00, 0x03, 0x2d, 0x00, 0x83, 0x69, 0x73, 0x20, +0x6e, 0x6f, 0x74, 0x20, 0x61, 0x25, 0x00, 0xf1, 0x08, 0x20, +0x6d, 0x75, 0x73, 0x74, 0x20, 0x62, 0x65, 0x20, 0x66, 0x69, +0x6c, 0x6c, 0x65, 0x64, 0x20, 0x77, 0x69, 0x74, 0x68, 0x20, +0x6f, 0x6e, 0x5e, 0x00, 0xb0, 0x74, 0x68, 0x72, 0x65, 0x65, +0x20, 0x74, 0x79, 0x70, 0x65, 0x73, 0x0f, 0x00, 0x12, 0x75, +0x9e, 0x00, 0x80, 0x6d, 0x6f, 0x6e, 0x73, 0x74, 0x65, 0x72, +0x3a, 0x98, 0x00, 0xf2, 0x11, 0x68, 0x6f, 0x73, 0x74, 0x2c, +0x20, 0x61, 0x20, 0x76, 0x61, 0x6d, 0x70, 0x69, 0x72, 0x65, +0x2c, 0x20, 0x6f, 0x72, 0x20, 0x61, 0x20, 0x7a, 0x6f, 0x6d, +0x62, 0x69, 0x65, 0x2e, 0x20, 0x0a, 0x56, 0x17, 0x00, 0x50, +0x73, 0x20, 0x63, 0x61, 0x6e, 0x64, 0x00, 0x30, 0x73, 0x65, +0x65, 0xa6, 0x00, 0xb1, 0x72, 0x65, 0x63, 0x74, 0x6c, 0x79, +0x2c, 0x20, 0x62, 0x75, 0x74, 0xe7, 0x00, 0x80, 0x69, 0x6e, +0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0xa3, 0x00, 0xf6, 0x00, +0x65, 0x6e, 0x20, 0x72, 0x65, 0x66, 0x6c, 0x65, 0x63, 0x74, +0x65, 0x64, 0x20, 0x69, 0x6e, 0xcb, 0x00, 0x10, 0x47, 0x6c, +0x00, 0x11, 0x73, 0x30, 0x00, 0xf0, 0x08, 0x74, 0x68, 0x65, +0x20, 0x6f, 0x70, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x65, 0x20, +0x77, 0x61, 0x79, 0x20, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x3a, +0x18, 0x00, 0x18, 0x79, 0x6b, 0x00, 0x07, 0x40, 0x00, 0x0f, +0x6d, 0x00, 0x06, 0x95, 0x6c, 0x6f, 0x6f, 0x6b, 0x65, 0x64, +0x20, 0x61, 0x74, 0x98, 0x00, 0x31, 0x2e, 0x20, 0x5a, 0xc0, +0x00, 0x02, 0x6c, 0x00, 0x04, 0x2d, 0x00, 0xd6, 0x62, 0x79, +0x20, 0x61, 0x6e, 0x79, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x73, +0x2e, 0xa2, 0x01, 0x91, 0x61, 0x6c, 0x73, 0x6f, 0x20, 0x74, +0x6f, 0x6c, 0x64, 0x95, 0x00, 0xc0, 0x74, 0x6f, 0x74, 0x61, +0x6c, 0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x32, 0x01, +0x40, 0x65, 0x61, 0x63, 0x68, 0x40, 0x01, 0x00, 0x4e, 0x01, +0x04, 0x38, 0x01, 0x30, 0x20, 0x69, 0x6e, 0x2c, 0x00, 0x01, +0xd4, 0x01, 0x30, 0x2e, 0x20, 0x41, 0x40, 0x00, 0x10, 0x61, +0xc0, 0x00, 0x02, 0x42, 0x00, 0x33, 0x65, 0x64, 0x67, 0x7b, +0x01, 0x12, 0x65, 0xf6, 0x01, 0x01, 0xb9, 0x01, 0x63, 0x72, +0x69, 0x74, 0x74, 0x65, 0x6e, 0x59, 0x00, 0x24, 0x73, 0x2c, +0xca, 0x01, 0xd0, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, +0x20, 0x68, 0x6f, 0x77, 0x20, 0x6d, 0x9e, 0x00, 0x03, 0x63, +0x00, 0x1a, 0x73, 0x05, 0x01, 0x51, 0x66, 0x20, 0x79, 0x6f, +0x75, 0xe9, 0x00, 0x57, 0x20, 0x69, 0x6e, 0x74, 0x6f, 0x5c, +0x00, 0xa0, 0x6c, 0x6f, 0x6e, 0x67, 0x20, 0x61, 0x20, 0x72, +0x6f, 0x77, 0xb9, 0x01, 0xf1, 0x0b, 0x63, 0x6f, 0x6c, 0x75, +0x6d, 0x6e, 0x20, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, +0x67, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x20, 0x74, 0x68, 0x61, +0x74, 0x20, 0x6b, 0x01, 0x9c, 0x69, 0x6f, 0x6e, 0x2e, 0x20, +0x28, 0x54, 0x68, 0x65, 0x68, 0x02, 0x01, 0x29, 0x01, 0x04, +0xb6, 0x01, 0xf1, 0x05, 0x69, 0x76, 0x65, 0x20, 0x6f, 0x6e, +0x20, 0x62, 0x6f, 0x74, 0x68, 0x20, 0x73, 0x69, 0x64, 0x65, +0x73, 0x2e, 0x20, 0x49, 0x81, 0x00, 0x17, 0x72, 0xd8, 0x01, +0x22, 0x6c, 0x69, 0x61, 0x02, 0xd1, 0x73, 0x69, 0x67, 0x68, +0x74, 0x20, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x73, 0x98, +0x00, 0x45, 0x73, 0x61, 0x6d, 0x65, 0x2a, 0x01, 0x21, 0x6d, +0x6f, 0xed, 0x01, 0x80, 0x61, 0x6e, 0x20, 0x6f, 0x6e, 0x63, +0x65, 0x2c, 0x21, 0x00, 0x04, 0x5d, 0x01, 0xd3, 0x77, 0x69, +0x6c, 0x6c, 0x20, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x20, 0x69, +0x74, 0x68, 0x01, 0x30, 0x69, 0x6d, 0x65, 0x0d, 0x00, 0x24, +0x69, 0x73, 0xb5, 0x01, 0x11, 0x2c, 0xea, 0x02, 0x41, 0x6a, +0x75, 0x73, 0x74, 0x41, 0x00, 0xe1, 0x2e, 0x29, 0x20, 0x0a, +0x54, 0x68, 0x69, 0x73, 0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, +0xd9, 0x02, 0x00, 0x3f, 0x02, 0x10, 0x73, 0x13, 0x02, 0x50, +0x65, 0x6e, 0x74, 0x65, 0x64, 0xe5, 0x01, 0xd1, 0x44, 0x61, +0x76, 0x69, 0x64, 0x20, 0x4d, 0x69, 0x6c, 0x6c, 0x61, 0x72, +0x2c, 0xf3, 0x02, 0x12, 0x72, 0x78, 0x00, 0x00, 0x99, 0x00, +0x41, 0x60, 0x48, 0x61, 0x75, 0x29, 0x00, 0x12, 0x4d, 0x3c, +0x03, 0xf3, 0x03, 0x4d, 0x61, 0x7a, 0x65, 0x27, 0x2e, 0x20, +0x53, 0x65, 0x65, 0x20, 0x5b, 0x32, 0x30, 0x5d, 0x20, 0x66, +0x6f, 0xb5, 0x00, 0x60, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, +0x29, 0x02, 0x02, 0xd3, 0x03, 0x00, 0x67, 0x00, 0x01, 0xa7, +0x03, 0x40, 0x72, 0x69, 0x62, 0x75, 0x41, 0x00, 0x01, 0x87, +0x01, 0x20, 0x69, 0x73, 0x74, 0x01, 0x01, 0x36, 0x01, 0x20, +0x6f, 0x6e, 0x7d, 0x00, 0xf1, 0x01, 0x53, 0x74, 0x65, 0x66, +0x66, 0x65, 0x6e, 0x20, 0x42, 0x61, 0x75, 0x65, 0x72, 0x2e, +0x20, 0x0a, 0x55, 0x00, 0xf3, 0x2a, 0x68, 0x74, 0x74, 0x70, +0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x6a, 0x61, 0x6e, +0x6b, 0x6f, 0x2e, 0x61, 0x74, 0x2f, 0x52, 0x61, 0x65, 0x74, +0x73, 0x65, 0x6c, 0x2f, 0x53, 0x70, 0x75, 0x6b, 0x73, 0x63, +0x68, 0x6c, 0x6f, 0x73, 0x73, 0x2f, 0x69, 0x6e, 0x64, 0x65, +0x78, 0x2e, 0x68, 0x74, 0x6d, 0x20, 0x0a, 0x0a, 0x23, 0x33, +0x37, 0x2e, 0x31, 0x4f, 0x04, 0x02, 0x78, 0x00, 0x35, 0x6f, +0x6c, 0x73, 0x8d, 0x00, 0xd4, 0x68, 0x61, 0x73, 0x20, 0x61, +0x20, 0x73, 0x69, 0x6d, 0x69, 0x6c, 0x61, 0x72, 0x1f, 0x00, +0x70, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x9a, 0x00, +0xf3, 0x11, 0x53, 0x6f, 0x6c, 0x6f, 0x2c, 0x20, 0x55, 0x6e, +0x65, 0x71, 0x75, 0x61, 0x6c, 0x20, 0x61, 0x6e, 0x64, 0x20, +0x4b, 0x65, 0x65, 0x6e, 0x2e, 0x20, 0x0a, 0x54, 0x6f, 0x20, +0x70, 0x6c, 0x61, 0x79, 0x59, 0x00, 0x71, 0x2c, 0x20, 0x63, +0x6c, 0x69, 0x63, 0x6b, 0x1f, 0x01, 0x40, 0x6d, 0x6f, 0x75, +0x73, 0x5c, 0x03, 0x01, 0x25, 0x03, 0x45, 0x65, 0x6d, 0x70, +0x74, 0x76, 0x04, 0x12, 0x61, 0xda, 0x02, 0x12, 0x6e, 0x6f, +0x01, 0x60, 0x61, 0x20, 0x6c, 0x65, 0x74, 0x74, 0x1e, 0x03, +0x02, 0x06, 0x03, 0x83, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, +0x72, 0x64, 0xcd, 0x02, 0x00, 0x78, 0x02, 0x00, 0x18, 0x00, +0x0c, 0x35, 0x03, 0x50, 0x3a, 0x20, 0x60, 0x47, 0x27, 0x5f, +0x01, 0x06, 0x75, 0x04, 0x21, 0x60, 0x56, 0x11, 0x00, 0x0b, +0x7d, 0x04, 0x59, 0x60, 0x5a, 0x27, 0x20, 0x66, 0x85, 0x04, +0x12, 0x49, 0xff, 0x02, 0x41, 0x6d, 0x61, 0x6b, 0x65, 0xf5, +0x04, 0x5d, 0x73, 0x74, 0x61, 0x6b, 0x65, 0xbb, 0x00, 0x04, +0x96, 0x03, 0x50, 0x69, 0x6e, 0x63, 0x6f, 0x72, 0x08, 0x04, +0x08, 0xbf, 0x00, 0xb0, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, +0x53, 0x70, 0x61, 0x63, 0x65, 0x1f, 0x01, 0x50, 0x63, 0x6c, +0x65, 0x61, 0x72, 0x6a, 0x02, 0x20, 0x61, 0x67, 0x76, 0x05, +0x61, 0x28, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x96, 0x04, 0x00, +0x19, 0x01, 0xd3, 0x6f, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, +0x72, 0x65, 0x29, 0x2e, 0x20, 0x0a, 0x7d, 0x00, 0x20, 0x5f, +0x72, 0xe9, 0x02, 0x21, 0x5f, 0x2d, 0x75, 0x00, 0x01, 0x26, +0x01, 0x0f, 0x1e, 0x01, 0x0b, 0x02, 0xeb, 0x02, 0x01, 0x8a, +0x00, 0x82, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x69, 0x6e, 0x67, +0x0a, 0x01, 0x03, 0xfa, 0x02, 0x01, 0xdc, 0x03, 0x31, 0x68, +0x6f, 0x77, 0xe2, 0x04, 0xb3, 0x72, 0x65, 0x64, 0x75, 0x63, +0x65, 0x64, 0x20, 0x73, 0x69, 0x7a, 0xc7, 0x00, 0x14, 0x61, +0xbe, 0x00, 0x21, 0x2c, 0x20, 0xea, 0x01, 0xf1, 0x03, 0x60, +0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x20, 0x6d, 0x61, 0x72, +0x6b, 0x27, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x21, 0x04, 0x57, +0x68, 0x61, 0x76, 0x65, 0x20, 0x1b, 0x00, 0x12, 0x73, 0xc0, +0x02, 0x65, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x86, 0x03, +0x00, 0x1f, 0x03, 0x05, 0x9b, 0x03, 0x03, 0x58, 0x00, 0x33, +0x2e, 0x20, 0x41, 0x0a, 0x00, 0x04, 0x7c, 0x06, 0x11, 0x69, +0x49, 0x04, 0x85, 0x66, 0x75, 0x6c, 0x6c, 0x2d, 0x73, 0x69, +0x7a, 0x3d, 0x00, 0x00, 0x68, 0x00, 0x31, 0x6e, 0x6f, 0x74, +0x27, 0x05, 0x04, 0x2b, 0x00, 0x09, 0x73, 0x00, 0x00, 0x55, +0x02, 0x00, 0x8f, 0x04, 0x00, 0x5c, 0x00, 0x30, 0x70, 0x61, +0x79, 0x9c, 0x06, 0x20, 0x20, 0x61, 0xed, 0x04, 0x01, 0x13, +0x03, 0x28, 0x74, 0x6f, 0x2d, 0x00, 0x01, 0xf8, 0x06, 0x40, +0x20, 0x65, 0x78, 0x61, 0xa6, 0x05, 0x50, 0x20, 0x77, 0x68, +0x61, 0x74, 0x5d, 0x01, 0x04, 0x7c, 0x01, 0x10, 0x6d, 0xbe, +0x00, 0x00, 0xfd, 0x03, 0x50, 0x75, 0x70, 0x20, 0x74, 0x6f, +0x1a, 0x00, 0x32, 0x3a, 0x20, 0x79, 0xea, 0x00, 0x05, 0x23, +0x00, 0x00, 0x0f, 0x01, 0x40, 0x72, 0x65, 0x6d, 0x69, 0xd6, +0x03, 0x12, 0x73, 0x29, 0x01, 0x30, 0x61, 0x20, 0x70, 0xef, +0x04, 0x54, 0x63, 0x75, 0x6c, 0x61, 0x72, 0xd4, 0x00, 0x50, +0x6e, 0x65, 0x65, 0x64, 0x73, 0x45, 0x00, 0x10, 0x62, 0xd7, +0x04, 0x91, 0x2d, 0x65, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, +0x64, 0x45, 0x04, 0x01, 0x54, 0x00, 0x42, 0x6b, 0x6e, 0x6f, +0x77, 0xe9, 0x03, 0x4a, 0x61, 0x62, 0x6f, 0x75, 0x45, 0x00, +0x04, 0xfb, 0x00, 0x00, 0x8f, 0x02, 0x0f, 0x81, 0x00, 0x02, +0x53, 0x6c, 0x69, 0x73, 0x74, 0x73, 0xe4, 0x05, 0x00, 0x5a, +0x05, 0x01, 0xab, 0x04, 0x08, 0x1e, 0x06, 0x12, 0x61, 0xf8, +0x07, 0x05, 0xc4, 0x01, 0x20, 0x6f, 0x72, 0x56, 0x03, 0x20, +0x74, 0x68, 0x64, 0x01, 0x32, 0x65, 0x6c, 0x73, 0x83, 0x00, +0x92, 0x66, 0x65, 0x65, 0x6c, 0x20, 0x6c, 0x69, 0x6b, 0x65, +0x97, 0x03, 0x51, 0x65, 0x72, 0x61, 0x73, 0x65, 0xd5, 0x03, +0x39, 0x6e, 0x67, 0x6c, 0xd6, 0x01, 0x21, 0x2c, 0x20, 0x7d, +0x02, 0x02, 0x7c, 0x02, 0x03, 0xcc, 0x01, 0x07, 0x7e, 0x02, +0x01, 0x79, 0x02, 0x05, 0xe0, 0x01, 0x03, 0x80, 0x02, 0x01, +0xda, 0x02, 0x00, 0xf1, 0x03, 0x39, 0x41, 0x6c, 0x6c, 0x82, +0x01, 0x0a, 0xbc, 0x02, 0x22, 0x72, 0x65, 0x78, 0x00, 0x11, +0x64, 0x4b, 0x07, 0x02, 0x66, 0x06, 0x23, 0x65, 0x66, 0x6b, +0x00, 0x06, 0x5d, 0x00, 0x14, 0x61, 0xdd, 0x00, 0x05, 0xde, +0x02, 0x2f, 0x6f, 0x72, 0x32, 0x00, 0x01, 0x0c, 0x6c, 0x03, +0x31, 0x2e, 0x20, 0x52, 0xba, 0x00, 0x11, 0x0a, 0x1e, 0x00, +0x36, 0x69, 0x6e, 0x67, 0x21, 0x00, 0x00, 0x0d, 0x00, 0x10, +0x73, 0x24, 0x00, 0x01, 0x0f, 0x03, 0x00, 0x5f, 0x02, 0x03, +0x03, 0x01, 0x0c, 0x5d, 0x02, 0x11, 0x41, 0xd5, 0x02, 0x01, +0xd2, 0x04, 0x03, 0x55, 0x03, 0x50, 0x75, 0x72, 0x73, 0x6f, +0x72, 0x78, 0x04, 0x05, 0x26, 0x07, 0x21, 0x75, 0x73, 0x6b, +0x08, 0x00, 0xa0, 0x02, 0x31, 0x6a, 0x75, 0x6e, 0x8d, 0x05, +0x02, 0x07, 0x09, 0x23, 0x74, 0x68, 0x11, 0x01, 0x03, 0x30, +0x00, 0x11, 0x74, 0xff, 0x04, 0x17, 0x63, 0x1b, 0x03, 0x2b, +0x6f, 0x72, 0x71, 0x00, 0x36, 0x55, 0x73, 0x65, 0x67, 0x00, +0x06, 0x37, 0x00, 0x30, 0x6d, 0x6f, 0x76, 0x08, 0x01, 0x50, +0x68, 0x69, 0x67, 0x68, 0x6c, 0xd4, 0x00, 0x03, 0xf3, 0x07, +0x05, 0x8b, 0x07, 0x1f, 0x2c, 0x2e, 0x01, 0x07, 0x00, 0x3f, +0x00, 0x00, 0x9e, 0x06, 0x00, 0x72, 0x04, 0x03, 0xbf, 0x01, +0x06, 0x48, 0x00, 0x25, 0x65, 0x64, 0x92, 0x03, 0x14, 0x50, +0x18, 0x01, 0x50, 0x72, 0x65, 0x74, 0x75, 0x72, 0x3c, 0x03, +0x5a, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x30, 0x00, 0x01, 0x01, +0x08, 0x01, 0x63, 0x00, 0x10, 0x64, 0x2c, 0x04, 0x02, 0x49, +0x08, 0x04, 0xa6, 0x02, 0x03, 0x67, 0x00, 0x20, 0x6f, 0x72, +0x24, 0x03, 0x1b, 0x6f, 0x1c, 0x04, 0x05, 0xcd, 0x04, 0x00, +0x81, 0x01, 0x30, 0x66, 0x65, 0x72, 0x0a, 0x01, 0x23, 0x69, +0x6e, 0xa4, 0x00, 0x05, 0xcf, 0x02, 0x81, 0x61, 0x6c, 0x70, +0x68, 0x61, 0x62, 0x65, 0x74, 0x27, 0x05, 0x26, 0x75, 0x74, +0xd7, 0x02, 0x50, 0x70, 0x69, 0x63, 0x74, 0x75, 0xbb, 0x0a, +0x04, 0x6d, 0x00, 0x03, 0xe9, 0x01, 0x63, 0x60, 0x41, 0x27, +0x20, 0x74, 0x6f, 0xad, 0x00, 0x81, 0x20, 0x62, 0x65, 0x74, +0x77, 0x65, 0x65, 0x6e, 0xdc, 0x04, 0x02, 0x0a, 0x06, 0x07, +0x6c, 0x01, 0x28, 0x61, 0x73, 0x78, 0x01, 0x04, 0x24, 0x00, +0x04, 0x57, 0x03, 0x03, 0x8a, 0x00, 0x00, 0xa8, 0x00, 0x15, +0x4c, 0x52, 0x02, 0x02, 0x96, 0x04, 0x31, 0x63, 0x6c, 0x75, +0x28, 0x02, 0x02, 0xca, 0x00, 0x01, 0xb9, 0x05, 0x30, 0x73, +0x20, 0x64, 0xe4, 0x0a, 0x50, 0x28, 0x67, 0x72, 0x65, 0x79, +0x11, 0x00, 0x41, 0x6f, 0x75, 0x74, 0x29, 0x97, 0x02, 0x24, +0x75, 0x6e, 0x24, 0x00, 0x23, 0x69, 0x66, 0x4d, 0x08, 0x71, +0x61, 0x6c, 0x72, 0x65, 0x61, 0x64, 0x79, 0x3d, 0x00, 0x92, +0x65, 0x64, 0x2e, 0x20, 0x0a, 0x28, 0x41, 0x6c, 0x6c, 0xee, +0x00, 0x01, 0x2c, 0x02, 0x92, 0x73, 0x20, 0x64, 0x65, 0x73, +0x63, 0x72, 0x69, 0x62, 0x46, 0x02, 0x13, 0x73, 0xcf, 0x07, +0x36, 0x32, 0x2e, 0x31, 0x22, 0x0a, 0xb3, 0x61, 0x76, 0x61, +0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0x9e, 0x07, +0x13, 0x32, 0x45, 0x07, 0x00, 0x3a, 0x04, 0x30, 0x61, 0x6d, +0x65, 0xbb, 0x00, 0x01, 0x0b, 0x05, 0x25, 0x73, 0x65, 0x12, +0x00, 0x02, 0x59, 0x09, 0x06, 0x3c, 0x00, 0x04, 0x91, 0x09, +0xf0, 0x01, 0x65, 0x20, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, +0x6d, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x6f, 0x00, +0x04, 0x50, 0x07, 0xf1, 0x0b, 0x60, 0x54, 0x79, 0x70, 0x65, +0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, +0x57, 0x69, 0x64, 0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, +0x65, 0x82, 0x06, 0x50, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x59, +0x07, 0x02, 0x01, 0x0a, 0x24, 0x69, 0x6e, 0x53, 0x0c, 0x00, +0x2d, 0x00, 0x40, 0x44, 0x69, 0x66, 0x66, 0xc4, 0x04, 0x64, +0x74, 0x79, 0x5f, 0x20, 0x0a, 0x43, 0x35, 0x08, 0x10, 0x74, +0xf1, 0x09, 0x05, 0x1a, 0x00, 0x05, 0x9c, 0x0a, 0x50, 0x65, +0x6e, 0x65, 0x72, 0x61, 0x80, 0x02, 0xa0, 0x70, 0x75, 0x7a, +0x7a, 0x6c, 0x65, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3275; const char quick_help_text[] = "Place ghosts, vampires and zombies so that the right numbers of them can be seen in mirrors."; diff --git a/apps/plugins/puzzles/help/unequal.c b/apps/plugins/puzzles/help/unequal.c index 45b6b38942..affdae1867 100644 --- a/apps/plugins/puzzles/help/unequal.c +++ b/apps/plugins/puzzles/help/unequal.c @@ -1,107 +1,245 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 3917 comp 2359 ratio 0.602247 level 11 saved 1558 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 27: Unequal " -"\n" -"You have a square grid; each square may contain a digit from 1 to " -"the size of the grid, and some squares have clue signs between them. " -"Your aim is to fully populate the grid with numbers such that: " -"\n" -"- Each row contains only one occurrence of each digit " -"\n" -"- Each column contains only one occurrence of each digit " -"\n" -"- All the clue signs are satisfied. " -"\n" -"There are two modes for this game, `Unequal' and `Adjacent'. " -"\n" -"In `Unequal' mode, the clue signs are greater-than symbols " -"indicating one square's value is greater than its neighbour's. In " -"this mode not all clues may be visible, particularly at higher " -"difficulty levels. " -"\n" -"In `Adjacent' mode, the clue signs are bars indicating one square's " -"value is numerically adjacent (i.e. one higher or one lower) than " -"its neighbour. In this mode all clues are always visible: absence of " -"a bar thus means that a square's value is definitely not numerically " -"adjacent to that neighbour's. " -"\n" -"In `Trivial' difficulty level (available via the `Custom' game type " -"selector), there are no greater-than signs in `Unequal' mode; the " -"puzzle is to solve the Latin square only. " -"\n" -"At the time of writing, the `Unequal' mode of this puzzle is " -"appearing in the Guardian weekly under the name `Futoshiki'. " -"\n" -"Unequal was contributed to this collection by James Harvey. " -"\n" -"\n#27.1 Unequal controls " -"\n" -"Unequal shares much of its control system with Solo. " -"\n" -"To play Unequal, simply click the mouse in any empty square and then " -"type a digit or letter on the keyboard to fill that square. If you " -"make a mistake, click the mouse in the incorrect square and press " -"Space to clear it again (or use the Undo feature). " -"\n" -"If you _right_-click in a square and then type a number, that " -"number will be entered in the square as a `pencil mark'. You can " -"have pencil marks for multiple numbers in the same square. Squares " -"containing filled-in numbers cannot also contain pencil marks. " -"\n" -"The game pays no attention to pencil marks, so exactly what you " -"use them for is up to you: you can use them as reminders that a " -"particular square needs to be re-examined once you know more about " -"a particular number, or you can use them as lists of the possible " -"numbers in a given square, or anything else you feel like. " -"\n" -"To erase a single pencil mark, right-click in the square and type " -"the same number again. " -"\n" -"All pencil marks in a square are erased when you left-click and type " -"a number, or when you left-click and press space. Right-clicking and " -"pressing space will also erase pencil marks. " -"\n" -"As for Solo, the cursor keys can be used in conjunction with the " -"digit keys to set numbers or pencil marks. You can also use the `M' " -"key to auto-fill every numeric hint, ready for removal as required, " -"or the `H' key to do the same but also to remove all obvious hints. " -"\n" -"Alternatively, use the cursor keys to move the mark around the grid. " -"Pressing the return key toggles the mark (from a normal mark to a " -"pencil mark), and typing a number in is entered in the square in the " -"appropriate way; typing in a 0 or using the space bar will clear a " -"filled square. " -"\n" -"Left-clicking a clue will mark it as done (grey it out), or unmark " -"it if it is already marked. Holding Control or Shift and pressing " -"an arrow key likewise marks any clue adjacent to the cursor in the " -"given direction. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#27.2 Unequal parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Mode_ " -"\n" -"Mode of the puzzle (`Unequal' or `Adjacent') " -"\n" -"_Size (s*s)_ " -"\n" -"Size of grid. " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. At Trivial " -"level, there are no greater-than signs; the puzzle is to solve " -"the Latin square only. At Recursive level (only available via " -"the `Custom' game type selector) backtracking will be required, " -"but the solution should still be unique. The levels in between " -"require increasingly complex reasoning to avoid having to " -"backtrack. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf4, 0x23, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x32, 0x37, 0x3a, 0x20, 0x55, 0x6e, 0x65, 0x71, 0x75, +0x61, 0x6c, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x68, 0x61, +0x76, 0x65, 0x20, 0x61, 0x20, 0x73, 0x71, 0x75, 0x61, 0x72, +0x65, 0x20, 0x67, 0x72, 0x69, 0x64, 0x3b, 0x20, 0x65, 0x61, +0x63, 0x68, 0x12, 0x00, 0xf2, 0x1d, 0x6d, 0x61, 0x79, 0x20, +0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x20, 0x61, 0x20, +0x64, 0x69, 0x67, 0x69, 0x74, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x20, 0x31, 0x20, 0x74, 0x6f, 0x20, 0x74, 0x68, 0x65, 0x20, +0x73, 0x69, 0x7a, 0x65, 0x20, 0x6f, 0x66, 0x20, 0x74, 0x68, +0x40, 0x00, 0xa3, 0x2c, 0x20, 0x61, 0x6e, 0x64, 0x20, 0x73, +0x6f, 0x6d, 0x65, 0x44, 0x00, 0x12, 0x73, 0x65, 0x00, 0x30, +0x63, 0x6c, 0x75, 0x2d, 0x00, 0xb0, 0x67, 0x6e, 0x73, 0x20, +0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x33, 0x00, 0xe0, +0x6d, 0x2e, 0x20, 0x59, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, +0x6d, 0x20, 0x69, 0x73, 0x54, 0x00, 0xe5, 0x66, 0x75, 0x6c, +0x6c, 0x79, 0x20, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x74, +0x65, 0x57, 0x00, 0xf0, 0x0e, 0x20, 0x77, 0x69, 0x74, 0x68, +0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x20, 0x73, +0x75, 0x63, 0x68, 0x20, 0x74, 0x68, 0x61, 0x74, 0x3a, 0x20, +0x0a, 0x2d, 0x20, 0x45, 0xb1, 0x00, 0x34, 0x72, 0x6f, 0x77, +0xaa, 0x00, 0xf0, 0x05, 0x73, 0x20, 0x6f, 0x6e, 0x6c, 0x79, +0x20, 0x6f, 0x6e, 0x65, 0x20, 0x6f, 0x63, 0x63, 0x75, 0x72, +0x72, 0x65, 0x6e, 0x63, 0xa4, 0x00, 0x01, 0xda, 0x00, 0x02, +0xc5, 0x00, 0x05, 0x37, 0x00, 0x6f, 0x63, 0x6f, 0x6c, 0x75, +0x6d, 0x6e, 0x3a, 0x00, 0x1c, 0x69, 0x41, 0x6c, 0x6c, 0x20, +0x74, 0x68, 0xd4, 0x00, 0x00, 0x2d, 0x01, 0xf1, 0x02, 0x73, +0x61, 0x74, 0x69, 0x73, 0x66, 0x69, 0x65, 0x64, 0x2e, 0x20, +0x0a, 0x54, 0x68, 0x65, 0x72, 0x65, 0x16, 0x00, 0xf3, 0x0b, +0x74, 0x77, 0x6f, 0x20, 0x6d, 0x6f, 0x64, 0x65, 0x73, 0x20, +0x66, 0x6f, 0x72, 0x20, 0x74, 0x68, 0x69, 0x73, 0x20, 0x67, +0x61, 0x6d, 0x65, 0x2c, 0x20, 0x60, 0x8a, 0x01, 0x11, 0x27, +0x32, 0x01, 0xf6, 0x00, 0x60, 0x41, 0x64, 0x6a, 0x61, 0x63, +0x65, 0x6e, 0x74, 0x27, 0x2e, 0x20, 0x0a, 0x49, 0x6e, 0x1e, +0x00, 0x01, 0x3d, 0x00, 0x1c, 0x2c, 0x70, 0x00, 0x02, 0xaf, +0x01, 0xf4, 0x11, 0x65, 0x61, 0x74, 0x65, 0x72, 0x2d, 0x74, +0x68, 0x61, 0x6e, 0x20, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, +0x73, 0x20, 0x69, 0x6e, 0x64, 0x69, 0x63, 0x61, 0x74, 0x69, +0x6e, 0x67, 0x20, 0x6f, 0x6e, 0x84, 0x01, 0x50, 0x27, 0x73, +0x20, 0x76, 0x61, 0x3d, 0x00, 0x24, 0x69, 0x73, 0x36, 0x00, +0x11, 0x20, 0x36, 0x00, 0xf1, 0x04, 0x69, 0x74, 0x73, 0x20, +0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x75, 0x72, 0x27, +0x73, 0x2e, 0x20, 0x49, 0x6e, 0xa3, 0x00, 0x01, 0x75, 0x00, +0x81, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x61, 0x6c, 0x6c, 0x78, +0x00, 0x11, 0x73, 0x0c, 0x02, 0xf0, 0x18, 0x62, 0x65, 0x20, +0x76, 0x69, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x2c, 0x20, 0x70, +0x61, 0x72, 0x74, 0x69, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x6c, +0x79, 0x20, 0x61, 0x74, 0x20, 0x68, 0x69, 0x67, 0x68, 0x65, +0x72, 0x20, 0x64, 0x69, 0x66, 0x66, 0x17, 0x00, 0x91, 0x74, +0x79, 0x20, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x73, 0xd0, 0x00, +0x06, 0xe0, 0x00, 0x0f, 0xd1, 0x00, 0x08, 0x3f, 0x62, 0x61, +0x72, 0xc1, 0x00, 0x0f, 0x00, 0x05, 0x02, 0x60, 0x65, 0x72, +0x69, 0x63, 0x61, 0x6c, 0x77, 0x00, 0x03, 0x55, 0x00, 0x60, +0x20, 0x28, 0x69, 0x2e, 0x65, 0x2e, 0x31, 0x00, 0x04, 0x87, +0x00, 0x21, 0x6f, 0x72, 0x0e, 0x00, 0x6f, 0x6c, 0x6f, 0x77, +0x65, 0x72, 0x29, 0xed, 0x00, 0x00, 0x0a, 0xeb, 0x00, 0x07, +0xe7, 0x00, 0x20, 0x61, 0x72, 0x0e, 0x00, 0x44, 0x77, 0x61, +0x79, 0x73, 0xeb, 0x00, 0x54, 0x3a, 0x20, 0x61, 0x62, 0x73, +0x0a, 0x02, 0x40, 0x61, 0x20, 0x62, 0x61, 0x3d, 0x01, 0x81, +0x75, 0x73, 0x20, 0x6d, 0x65, 0x61, 0x6e, 0x73, 0x87, 0x02, +0x2f, 0x20, 0x61, 0xa8, 0x00, 0x00, 0xa0, 0x64, 0x65, 0x66, +0x69, 0x6e, 0x69, 0x74, 0x65, 0x6c, 0x79, 0x49, 0x01, 0x0f, +0xb7, 0x00, 0x03, 0x21, 0x74, 0x6f, 0x40, 0x00, 0x07, 0x84, +0x01, 0x04, 0x2f, 0x01, 0x8d, 0x54, 0x72, 0x69, 0x76, 0x69, +0x61, 0x6c, 0x27, 0x50, 0x01, 0xa0, 0x20, 0x28, 0x61, 0x76, +0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x8c, 0x01, 0x11, 0x61, +0x48, 0x01, 0x81, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x27, 0x5a, 0x02, 0xf5, 0x03, 0x20, 0x74, 0x79, 0x70, 0x65, +0x20, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x6f, 0x72, 0x29, +0x2c, 0x20, 0x74, 0x8c, 0x02, 0x29, 0x6e, 0x6f, 0x35, 0x02, +0x03, 0x7b, 0x01, 0x1c, 0x69, 0x6e, 0x02, 0x11, 0x3b, 0x55, +0x00, 0x63, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x97, 0x03, +0x42, 0x73, 0x6f, 0x6c, 0x76, 0x8e, 0x03, 0x10, 0x4c, 0x9c, +0x01, 0x03, 0xef, 0x00, 0x01, 0x2f, 0x03, 0x51, 0x2e, 0x20, +0x0a, 0x41, 0x74, 0x1b, 0x00, 0x31, 0x74, 0x69, 0x6d, 0x24, +0x01, 0x30, 0x77, 0x72, 0x69, 0xc0, 0x01, 0x01, 0x7a, 0x00, +0x0a, 0x5b, 0x00, 0x03, 0x2b, 0x04, 0x27, 0x69, 0x73, 0x5e, +0x00, 0x60, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0xf0, 0x01, +0x21, 0x69, 0x6e, 0x32, 0x00, 0xf1, 0x06, 0x47, 0x75, 0x61, +0x72, 0x64, 0x69, 0x61, 0x6e, 0x20, 0x77, 0x65, 0x65, 0x6b, +0x6c, 0x79, 0x20, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x1a, 0x00, +0x10, 0x6e, 0xdf, 0x00, 0xa0, 0x60, 0x46, 0x75, 0x74, 0x6f, +0x73, 0x68, 0x69, 0x6b, 0x69, 0x2b, 0x03, 0x04, 0xcf, 0x04, +0x31, 0x77, 0x61, 0x73, 0xc6, 0x03, 0x72, 0x72, 0x69, 0x62, +0x75, 0x74, 0x65, 0x64, 0x5a, 0x01, 0x20, 0x69, 0x73, 0xe1, +0x03, 0x00, 0x09, 0x01, 0xf0, 0x03, 0x69, 0x6f, 0x6e, 0x20, +0x62, 0x79, 0x20, 0x4a, 0x61, 0x6d, 0x65, 0x73, 0x20, 0x48, +0x61, 0x72, 0x76, 0x65, 0xb8, 0x00, 0x64, 0x0a, 0x23, 0x32, +0x37, 0x2e, 0x31, 0x13, 0x05, 0x02, 0x40, 0x00, 0x36, 0x6f, +0x6c, 0x73, 0x56, 0x00, 0x21, 0x73, 0x68, 0xc2, 0x04, 0x10, +0x6d, 0x70, 0x04, 0x20, 0x6f, 0x66, 0x42, 0x02, 0x04, 0x25, +0x00, 0x72, 0x20, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x98, +0x04, 0x40, 0x53, 0x6f, 0x6c, 0x6f, 0xf5, 0x03, 0x64, 0x6f, +0x20, 0x70, 0x6c, 0x61, 0x79, 0x50, 0x00, 0xe1, 0x2c, 0x20, +0x73, 0x69, 0x6d, 0x70, 0x6c, 0x79, 0x20, 0x63, 0x6c, 0x69, +0x63, 0x6b, 0xc1, 0x00, 0x60, 0x6d, 0x6f, 0x75, 0x73, 0x65, +0x20, 0x4d, 0x05, 0x83, 0x6e, 0x79, 0x20, 0x65, 0x6d, 0x70, +0x74, 0x79, 0x4a, 0x01, 0x00, 0x04, 0x04, 0x00, 0x22, 0x00, +0x11, 0x6e, 0xbe, 0x01, 0x04, 0x6c, 0x05, 0x00, 0xc6, 0x02, +0x40, 0x6c, 0x65, 0x74, 0x74, 0xd0, 0x02, 0x02, 0x1c, 0x01, +0x81, 0x6b, 0x65, 0x79, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x2b, +0x05, 0x31, 0x69, 0x6c, 0x6c, 0x3f, 0x02, 0x03, 0x44, 0x00, +0xc0, 0x2e, 0x20, 0x49, 0x66, 0x20, 0x79, 0x6f, 0x75, 0x20, +0x6d, 0x61, 0x6b, 0x43, 0x00, 0x8c, 0x6d, 0x69, 0x73, 0x74, +0x61, 0x6b, 0x65, 0x2c, 0x80, 0x00, 0x04, 0x68, 0x01, 0x98, +0x69, 0x6e, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x84, +0x00, 0xb0, 0x70, 0x72, 0x65, 0x73, 0x73, 0x20, 0x53, 0x70, +0x61, 0x63, 0x65, 0x64, 0x00, 0xb0, 0x63, 0x6c, 0x65, 0x61, +0x72, 0x20, 0x69, 0x74, 0x20, 0x61, 0x67, 0x04, 0x06, 0x62, +0x28, 0x6f, 0x72, 0x20, 0x75, 0x73, 0x09, 0x02, 0xd0, 0x55, +0x6e, 0x64, 0x6f, 0x20, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, +0x65, 0x29, 0xb6, 0x02, 0x02, 0x7d, 0x00, 0x81, 0x5f, 0x72, +0x69, 0x67, 0x68, 0x74, 0x5f, 0x2d, 0x75, 0x00, 0x01, 0xeb, +0x00, 0x0f, 0xe3, 0x00, 0x04, 0x03, 0xce, 0x05, 0x11, 0x2c, +0xc3, 0x00, 0x03, 0x0d, 0x00, 0x50, 0x20, 0x77, 0x69, 0x6c, +0x6c, 0x66, 0x04, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x72, 0x65, +0x64, 0xab, 0x00, 0x05, 0x42, 0x00, 0xf1, 0x02, 0x73, 0x20, +0x61, 0x20, 0x60, 0x70, 0x65, 0x6e, 0x63, 0x69, 0x6c, 0x20, +0x6d, 0x61, 0x72, 0x6b, 0x27, 0x40, 0x06, 0x42, 0x20, 0x63, +0x61, 0x6e, 0x66, 0x06, 0x07, 0x1b, 0x00, 0x02, 0x70, 0x05, +0x84, 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x70, 0x6c, 0x65, 0x3b, +0x06, 0x05, 0x51, 0x00, 0x35, 0x61, 0x6d, 0x65, 0x37, 0x01, +0x12, 0x53, 0xa9, 0x06, 0x04, 0x06, 0x06, 0x31, 0x69, 0x6e, +0x67, 0x5c, 0x01, 0x54, 0x65, 0x64, 0x2d, 0x69, 0x6e, 0x39, +0x00, 0x00, 0x64, 0x00, 0x02, 0x10, 0x05, 0x24, 0x73, 0x6f, +0x29, 0x00, 0x09, 0x6f, 0x00, 0x02, 0xf5, 0x05, 0x02, 0x82, +0x03, 0x40, 0x70, 0x61, 0x79, 0x73, 0x6d, 0x03, 0x51, 0x61, +0x74, 0x74, 0x65, 0x6e, 0x7c, 0x02, 0x29, 0x74, 0x6f, 0x2d, +0x00, 0xe0, 0x2c, 0x20, 0x73, 0x6f, 0x20, 0x65, 0x78, 0x61, +0x63, 0x74, 0x6c, 0x79, 0x20, 0x77, 0x00, 0x01, 0x34, 0x79, +0x6f, 0x75, 0x5a, 0x01, 0x10, 0x6d, 0xba, 0x00, 0x00, 0x1a, +0x03, 0x50, 0x75, 0x70, 0x20, 0x74, 0x6f, 0x1a, 0x00, 0x32, +0x3a, 0x20, 0x79, 0xe6, 0x00, 0x05, 0x23, 0x00, 0x00, 0x0b, +0x01, 0x40, 0x72, 0x65, 0x6d, 0x69, 0x1b, 0x03, 0x04, 0x84, +0x04, 0x07, 0x92, 0x05, 0x04, 0x31, 0x01, 0x40, 0x6e, 0x65, +0x65, 0x64, 0xc0, 0x03, 0x00, 0x53, 0x01, 0xd0, 0x72, 0x65, +0x2d, 0x65, 0x78, 0x61, 0x6d, 0x69, 0x6e, 0x65, 0x64, 0x20, +0x6f, 0xce, 0x04, 0x00, 0x54, 0x00, 0x70, 0x6b, 0x6e, 0x6f, +0x77, 0x20, 0x6d, 0x6f, 0x5c, 0x01, 0x3a, 0x62, 0x6f, 0x75, +0x45, 0x00, 0x05, 0xa1, 0x01, 0x2f, 0x6f, 0x72, 0x80, 0x00, +0x02, 0x54, 0x6c, 0x69, 0x73, 0x74, 0x73, 0xfc, 0x07, 0x6a, +0x70, 0x6f, 0x73, 0x73, 0x69, 0x62, 0x69, 0x01, 0x64, 0x61, +0x20, 0x67, 0x69, 0x76, 0x65, 0x2d, 0x04, 0x00, 0x48, 0x00, +0x00, 0xf8, 0x02, 0x20, 0x74, 0x68, 0x61, 0x01, 0x32, 0x65, +0x6c, 0x73, 0x82, 0x00, 0x92, 0x66, 0x65, 0x65, 0x6c, 0x20, +0x6c, 0x69, 0x6b, 0x65, 0x41, 0x03, 0x41, 0x65, 0x72, 0x61, +0x73, 0x93, 0x08, 0x49, 0x69, 0x6e, 0x67, 0x6c, 0xd1, 0x01, +0x21, 0x2c, 0x20, 0x5a, 0x02, 0x02, 0x59, 0x02, 0x0c, 0x19, +0x02, 0x21, 0x6e, 0x64, 0x56, 0x02, 0x04, 0xdc, 0x01, 0x04, +0x87, 0x00, 0x02, 0xb7, 0x02, 0x00, 0xa2, 0x04, 0x29, 0x6c, +0x6c, 0x81, 0x01, 0x0a, 0x99, 0x02, 0x22, 0x72, 0x65, 0x78, +0x00, 0x61, 0x64, 0x20, 0x77, 0x68, 0x65, 0x6e, 0x97, 0x00, +0x33, 0x6c, 0x65, 0x66, 0x6b, 0x00, 0x06, 0x5d, 0x00, 0x17, +0x61, 0x12, 0x01, 0x0f, 0x2a, 0x00, 0x01, 0x07, 0x41, 0x03, +0x10, 0x73, 0x41, 0x03, 0x36, 0x2e, 0x20, 0x52, 0xb2, 0x00, +0x35, 0x69, 0x6e, 0x67, 0x20, 0x00, 0x00, 0xdd, 0x00, 0x02, +0x23, 0x00, 0x01, 0xf1, 0x02, 0x00, 0x55, 0x02, 0x03, 0xfa, +0x00, 0x0c, 0x53, 0x02, 0x11, 0x41, 0xc7, 0x02, 0x01, 0x61, +0x04, 0x03, 0x33, 0x07, 0x50, 0x75, 0x72, 0x73, 0x6f, 0x72, +0x08, 0x04, 0x01, 0x93, 0x02, 0x00, 0xd9, 0x01, 0x20, 0x75, +0x73, 0x29, 0x03, 0x01, 0xc5, 0x08, 0x31, 0x6a, 0x75, 0x6e, +0xec, 0x04, 0x01, 0x97, 0x04, 0x00, 0x30, 0x00, 0x02, 0x48, +0x04, 0x00, 0x2f, 0x00, 0x02, 0xc7, 0x05, 0x25, 0x65, 0x74, +0xa1, 0x01, 0x29, 0x6f, 0x72, 0x6d, 0x00, 0x05, 0x4a, 0x03, +0x01, 0x8e, 0x00, 0x05, 0xe6, 0x03, 0x30, 0x60, 0x4d, 0x27, +0x3e, 0x00, 0x00, 0x3d, 0x00, 0x51, 0x61, 0x75, 0x74, 0x6f, +0x2d, 0x75, 0x04, 0x54, 0x65, 0x76, 0x65, 0x72, 0x79, 0xd2, +0x06, 0xc0, 0x20, 0x68, 0x69, 0x6e, 0x74, 0x2c, 0x20, 0x72, +0x65, 0x61, 0x64, 0x79, 0xad, 0x00, 0x00, 0x98, 0x02, 0x42, +0x6f, 0x76, 0x61, 0x6c, 0xa3, 0x02, 0x60, 0x71, 0x75, 0x69, +0x72, 0x65, 0x64, 0x32, 0x01, 0x02, 0x4f, 0x00, 0x15, 0x48, +0x4f, 0x00, 0x26, 0x64, 0x6f, 0xae, 0x01, 0x23, 0x62, 0x75, +0x5a, 0x03, 0x22, 0x74, 0x6f, 0x3f, 0x00, 0x02, 0x92, 0x07, +0x71, 0x6f, 0x62, 0x76, 0x69, 0x6f, 0x75, 0x73, 0x62, 0x00, +0x11, 0x73, 0xc6, 0x01, 0xc0, 0x74, 0x65, 0x72, 0x6e, 0x61, +0x74, 0x69, 0x76, 0x65, 0x6c, 0x79, 0x2c, 0xa4, 0x00, 0x0d, +0x14, 0x01, 0x10, 0x74, 0x6e, 0x09, 0x02, 0xab, 0x06, 0x01, +0xd8, 0x00, 0x75, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, 0x64, +0x49, 0x0a, 0x34, 0x2e, 0x20, 0x50, 0x81, 0x01, 0x20, 0x74, +0x68, 0x15, 0x03, 0x43, 0x74, 0x75, 0x72, 0x6e, 0x93, 0x00, +0x56, 0x67, 0x67, 0x6c, 0x65, 0x73, 0x3a, 0x00, 0x10, 0x28, +0xea, 0x0a, 0x00, 0xf5, 0x01, 0x42, 0x6f, 0x72, 0x6d, 0x61, +0x26, 0x01, 0x01, 0x07, 0x01, 0x08, 0x37, 0x01, 0x24, 0x29, +0x2c, 0x1f, 0x02, 0x35, 0x69, 0x6e, 0x67, 0x21, 0x02, 0x00, +0x8e, 0x01, 0x2f, 0x69, 0x73, 0xc5, 0x04, 0x02, 0x04, 0x7e, +0x05, 0x00, 0xf7, 0x06, 0x50, 0x72, 0x6f, 0x70, 0x72, 0x69, +0xe6, 0x0a, 0x43, 0x77, 0x61, 0x79, 0x3b, 0x44, 0x00, 0x02, +0x99, 0x02, 0x20, 0x30, 0x20, 0x69, 0x05, 0x04, 0xa6, 0x00, +0x03, 0x2b, 0x02, 0x22, 0x62, 0x61, 0x20, 0x05, 0x03, 0x95, +0x05, 0x13, 0x61, 0xa5, 0x04, 0x05, 0xc7, 0x04, 0x48, 0x0a, +0x4c, 0x65, 0x66, 0x6d, 0x02, 0x00, 0xd1, 0x08, 0x01, 0x61, +0x02, 0x03, 0xbc, 0x00, 0x20, 0x69, 0x74, 0x93, 0x01, 0x10, +0x64, 0x17, 0x09, 0x60, 0x28, 0x67, 0x72, 0x65, 0x79, 0x20, +0x61, 0x06, 0x41, 0x75, 0x74, 0x29, 0x2c, 0x6d, 0x00, 0x14, +0x6e, 0x24, 0x00, 0x10, 0x69, 0xe8, 0x06, 0x01, 0x99, 0x07, +0x11, 0x6c, 0xd4, 0x01, 0x01, 0x3d, 0x00, 0x00, 0xd5, 0x0a, +0x40, 0x48, 0x6f, 0x6c, 0x64, 0x59, 0x00, 0x13, 0x43, 0x02, +0x07, 0x00, 0x98, 0x02, 0x4a, 0x68, 0x69, 0x66, 0x74, 0xd7, +0x02, 0x00, 0x41, 0x02, 0x40, 0x72, 0x72, 0x6f, 0x77, 0x54, +0x01, 0x01, 0xd8, 0x03, 0x42, 0x77, 0x69, 0x73, 0x65, 0x63, +0x02, 0x00, 0xfe, 0x03, 0x01, 0x95, 0x00, 0x08, 0x01, 0x09, +0x07, 0xc2, 0x01, 0x03, 0x1b, 0x01, 0x03, 0x36, 0x04, 0x31, +0x64, 0x69, 0x72, 0xb9, 0x07, 0x00, 0xbf, 0x03, 0x14, 0x28, +0x73, 0x0b, 0x11, 0x61, 0x12, 0x00, 0x00, 0x5d, 0x09, 0x52, +0x73, 0x63, 0x72, 0x69, 0x62, 0x5d, 0x01, 0x13, 0x73, 0xe1, +0x07, 0x30, 0x32, 0x2e, 0x31, 0xcc, 0x03, 0x02, 0x4a, 0x02, +0x05, 0x26, 0x09, 0x23, 0x2e, 0x29, 0xe9, 0x07, 0x14, 0x32, +0x99, 0x07, 0x00, 0xe4, 0x04, 0x71, 0x61, 0x6d, 0x65, 0x74, +0x65, 0x72, 0x73, 0xb5, 0x05, 0x26, 0x73, 0x65, 0x12, 0x00, +0x01, 0x01, 0x0a, 0x06, 0x3d, 0x00, 0x01, 0xee, 0x0c, 0x08, +0x64, 0x09, 0x70, 0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, +0x70, 0x00, 0x04, 0x94, 0x07, 0xf2, 0x08, 0x60, 0x54, 0x79, +0x70, 0x65, 0x27, 0x20, 0x6d, 0x65, 0x6e, 0x75, 0x2e, 0x20, +0x0a, 0x5f, 0x4d, 0x6f, 0x64, 0x65, 0x5f, 0x20, 0x0a, 0x4d, +0xee, 0x08, 0x08, 0x4b, 0x09, 0x16, 0x28, 0x0c, 0x09, 0x27, +0x6f, 0x72, 0x12, 0x0b, 0x50, 0x29, 0x20, 0x0a, 0x5f, 0x53, +0x48, 0x0d, 0x92, 0x28, 0x73, 0x2a, 0x73, 0x29, 0x5f, 0x20, +0x0a, 0x53, 0x55, 0x0d, 0x03, 0xb1, 0x02, 0x35, 0x0a, 0x5f, +0x44, 0x04, 0x0a, 0x33, 0x5f, 0x20, 0x0a, 0x7f, 0x01, 0x01, +0xa9, 0x02, 0x07, 0x1e, 0x0a, 0x05, 0x85, 0x0d, 0x83, 0x65, +0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0x76, 0x00, 0x53, +0x2e, 0x20, 0x41, 0x74, 0x20, 0x4e, 0x0a, 0x02, 0x42, 0x0a, +0x0f, 0x12, 0x0a, 0x0e, 0x0f, 0x00, 0x0a, 0x1b, 0x01, 0x61, +0x00, 0x20, 0x52, 0x65, 0xc3, 0x01, 0x34, 0x69, 0x76, 0x65, +0xa5, 0x0a, 0x01, 0x49, 0x0d, 0x0f, 0xaa, 0x0a, 0x1b, 0x81, +0x20, 0x62, 0x61, 0x63, 0x6b, 0x74, 0x72, 0x61, 0xbf, 0x02, +0x04, 0x0a, 0x08, 0x07, 0x43, 0x04, 0x21, 0x62, 0x75, 0x67, +0x0a, 0x00, 0x8c, 0x00, 0x11, 0x75, 0x80, 0x01, 0x93, 0x73, +0x68, 0x6f, 0x75, 0x6c, 0x64, 0x20, 0x73, 0x74, 0x2b, 0x00, +0xa2, 0x75, 0x6e, 0x69, 0x71, 0x75, 0x65, 0x2e, 0x20, 0x54, +0x68, 0x87, 0x00, 0x01, 0x0f, 0x0d, 0x04, 0x6f, 0x0e, 0x03, +0x49, 0x00, 0x01, 0xf7, 0x08, 0x31, 0x72, 0x65, 0x61, 0x60, +0x06, 0x00, 0xdd, 0x0e, 0x60, 0x6d, 0x70, 0x6c, 0x65, 0x78, +0x20, 0x12, 0x00, 0x21, 0x6f, 0x6e, 0x70, 0x03, 0x00, 0x3b, +0x02, 0x30, 0x6f, 0x69, 0x64, 0x51, 0x08, 0x02, 0x10, 0x00, +0x05, 0x98, 0x00, 0x50, 0x6b, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 3917; const char quick_help_text[] = "Complete the latin square in accordance with the > signs."; diff --git a/apps/plugins/puzzles/help/unruly.c b/apps/plugins/puzzles/help/unruly.c index 78239d1b25..bf67cf7f16 100644 --- a/apps/plugins/puzzles/help/unruly.c +++ b/apps/plugins/puzzles/help/unruly.c @@ -1,55 +1,133 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 1684 comp 1231 ratio 0.730998 level 11 saved 453 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 38: Unruly " -"\n" -"You are given a grid of squares, which you must colour either black " -"or white. Some squares are provided as clues; the rest are left for " -"you to fill in. Each row and column must contain the same number " -"of black and white squares, and no row or column may contain three " -"consecutive squares of the same colour. " -"\n" -"This puzzle type was invented by Adolfo Zanellati, under the name " -"`Tohu wa Vohu'. See [21] for more details. " -"\n" -"Unruly was contributed to this collection by Lennard Sprong. " -"\n" -"[21] http://www.janko.at/Raetsel/Tohu-Wa-Vohu/index.htm " -"\n" -"\n#38.1 Unruly controls " -"\n" -"To play Unruly, click the mouse in a square to change its colour. " -"Left-clicking an empty square will turn it black, and right-clicking " -"will turn it white. Keep clicking the same button to cycle through " -"the three possible states for the square. If you middle-click in a " -"square it will be reset to empty. " -"\n" -"You can also use the cursor keys to move around the grid. Pressing " -"the return or space keys will turn an empty square black or white " -"respectively (and then cycle the colours in the same way as the " -"mouse buttons), and pressing Backspace will reset a square to empty. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#38.2 Unruly parameters " -"\n" -"These parameters are available from the `Custom...' option on the " -"`Type' menu. " -"\n" -"_Width_, _Height_ " -"\n" -"Size of grid in squares. (Note that the rules of the game " -"require both the width and height to be even numbers.) " -"\n" -"_Difficulty_ " -"\n" -"Controls the difficulty of the generated puzzle. " -"\n" -"_Unique rows and columns_ " -"\n" -"If enabled, no two rows are permitted to have exactly the same " -"pattern, and likewise columns. (A row and a column can match, " -"though.) " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x4c, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x33, 0x38, 0x3a, 0x20, 0x55, 0x6e, 0x72, 0x75, 0x6c, +0x79, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, 0x72, 0x65, +0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, 0x20, 0x67, +0x72, 0x69, 0x64, 0x20, 0x6f, 0x66, 0x20, 0x73, 0x71, 0x75, +0x61, 0x72, 0x65, 0x73, 0x2c, 0x20, 0x77, 0x68, 0x69, 0x63, +0x68, 0x20, 0x79, 0x6f, 0x75, 0x20, 0x6d, 0x75, 0x73, 0x74, +0x20, 0x63, 0x6f, 0x6c, 0x6f, 0x75, 0x72, 0x20, 0x65, 0x69, +0x74, 0x68, 0x65, 0x72, 0x20, 0x62, 0x6c, 0x61, 0x63, 0x6b, +0x20, 0x6f, 0x72, 0x26, 0x00, 0x84, 0x74, 0x65, 0x2e, 0x20, +0x53, 0x6f, 0x6d, 0x65, 0x3b, 0x00, 0x01, 0x57, 0x00, 0xf1, +0x0c, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x64, 0x20, +0x61, 0x73, 0x20, 0x63, 0x6c, 0x75, 0x65, 0x73, 0x3b, 0x20, +0x74, 0x68, 0x65, 0x20, 0x72, 0x65, 0x73, 0x74, 0x20, 0x00, +0x81, 0x6c, 0x65, 0x66, 0x74, 0x20, 0x66, 0x6f, 0x72, 0x61, +0x00, 0xf0, 0x09, 0x74, 0x6f, 0x20, 0x66, 0x69, 0x6c, 0x6c, +0x20, 0x69, 0x6e, 0x2e, 0x20, 0x45, 0x61, 0x63, 0x68, 0x20, +0x72, 0x6f, 0x77, 0x20, 0x61, 0x6e, 0x64, 0x75, 0x00, 0x34, +0x75, 0x6d, 0x6e, 0x81, 0x00, 0x51, 0x6e, 0x74, 0x61, 0x69, +0x6e, 0x47, 0x00, 0xe2, 0x73, 0x61, 0x6d, 0x65, 0x20, 0x6e, +0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, 0x8e, 0x00, +0x00, 0x31, 0x00, 0x02, 0x8f, 0x00, 0x05, 0xc4, 0x00, 0x01, +0x13, 0x00, 0x21, 0x6e, 0x6f, 0x4f, 0x00, 0x25, 0x6f, 0x72, +0x4e, 0x00, 0x27, 0x61, 0x79, 0x4d, 0x00, 0x30, 0x72, 0x65, +0x65, 0x0e, 0x00, 0x76, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, +0x76, 0xc5, 0x00, 0x25, 0x6f, 0x66, 0x6a, 0x00, 0x03, 0xfc, +0x00, 0xf1, 0x2c, 0x2e, 0x20, 0x0a, 0x54, 0x68, 0x69, 0x73, +0x20, 0x70, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x20, 0x74, 0x79, +0x70, 0x65, 0x20, 0x77, 0x61, 0x73, 0x20, 0x69, 0x6e, 0x76, +0x65, 0x6e, 0x74, 0x65, 0x64, 0x20, 0x62, 0x79, 0x20, 0x41, +0x64, 0x6f, 0x6c, 0x66, 0x6f, 0x20, 0x5a, 0x61, 0x6e, 0x65, +0x6c, 0x6c, 0x61, 0x74, 0x69, 0x2c, 0x20, 0x75, 0x6e, 0x64, +0x65, 0x72, 0x4b, 0x00, 0x10, 0x6e, 0x4b, 0x00, 0xf1, 0x09, +0x60, 0x54, 0x6f, 0x68, 0x75, 0x20, 0x77, 0x61, 0x20, 0x56, +0x6f, 0x68, 0x75, 0x27, 0x2e, 0x20, 0x53, 0x65, 0x65, 0x20, +0x5b, 0x32, 0x31, 0x5d, 0x0c, 0x01, 0xf2, 0x00, 0x6d, 0x6f, +0x72, 0x65, 0x20, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, +0x2e, 0x20, 0x0a, 0xab, 0x01, 0x00, 0x64, 0x00, 0x01, 0xb0, +0x00, 0x70, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x64, 0x2e, +0x01, 0x40, 0x74, 0x68, 0x69, 0x73, 0x96, 0x00, 0x70, 0x6c, +0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x7a, 0x00, 0xf1, 0x02, +0x4c, 0x65, 0x6e, 0x6e, 0x61, 0x72, 0x64, 0x20, 0x53, 0x70, +0x72, 0x6f, 0x6e, 0x67, 0x2e, 0x20, 0x0a, 0x56, 0x00, 0xf0, +0x0d, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x77, 0x77, +0x77, 0x2e, 0x6a, 0x61, 0x6e, 0x6b, 0x6f, 0x2e, 0x61, 0x74, +0x2f, 0x52, 0x61, 0x65, 0x74, 0x73, 0x65, 0x6c, 0x2f, 0x8a, +0x00, 0x40, 0x2d, 0x57, 0x61, 0x2d, 0x8a, 0x00, 0xf3, 0x03, +0x2f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x2e, 0x68, 0x74, 0x6d, +0x20, 0x0a, 0x0a, 0x23, 0x33, 0x38, 0x2e, 0x31, 0x29, 0x02, +0x02, 0x7a, 0x00, 0xc3, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, +0x6f, 0x20, 0x70, 0x6c, 0x61, 0x79, 0x19, 0x00, 0x71, 0x2c, +0x20, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0xda, 0x00, 0xa3, 0x6d, +0x6f, 0x75, 0x73, 0x65, 0x20, 0x69, 0x6e, 0x20, 0x61, 0x3f, +0x01, 0x00, 0xa4, 0x00, 0xa5, 0x63, 0x68, 0x61, 0x6e, 0x67, +0x65, 0x20, 0x69, 0x74, 0x73, 0x40, 0x01, 0x51, 0x4c, 0x65, +0x66, 0x74, 0x2d, 0x37, 0x00, 0xc4, 0x69, 0x6e, 0x67, 0x20, +0x61, 0x6e, 0x20, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x34, 0x00, +0x10, 0x77, 0x03, 0x02, 0x72, 0x74, 0x75, 0x72, 0x6e, 0x20, +0x69, 0x74, 0xd3, 0x01, 0x02, 0xc1, 0x01, 0x46, 0x72, 0x69, +0x67, 0x68, 0x37, 0x00, 0x09, 0x27, 0x00, 0x04, 0x7f, 0x02, +0x54, 0x4b, 0x65, 0x65, 0x70, 0x20, 0x22, 0x00, 0x06, 0xb8, +0x01, 0x61, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x8d, 0x00, +0x40, 0x79, 0x63, 0x6c, 0x65, 0xee, 0x01, 0x40, 0x6f, 0x75, +0x67, 0x68, 0x21, 0x00, 0x03, 0xfa, 0x01, 0xf1, 0x00, 0x70, +0x6f, 0x73, 0x73, 0x69, 0x62, 0x6c, 0x65, 0x20, 0x73, 0x74, +0x61, 0x74, 0x65, 0x73, 0x86, 0x01, 0x24, 0x74, 0x68, 0x06, +0x02, 0x42, 0x2e, 0x20, 0x49, 0x66, 0x02, 0x03, 0x52, 0x69, +0x64, 0x64, 0x6c, 0x65, 0x84, 0x00, 0x09, 0xe8, 0x00, 0x22, +0x69, 0x74, 0x90, 0x00, 0x11, 0x62, 0xdb, 0x02, 0x52, 0x65, +0x74, 0x20, 0x74, 0x6f, 0xd5, 0x00, 0x12, 0x2e, 0x62, 0x03, +0xc1, 0x63, 0x61, 0x6e, 0x20, 0x61, 0x6c, 0x73, 0x6f, 0x20, +0x75, 0x73, 0x65, 0x59, 0x00, 0xb0, 0x63, 0x75, 0x72, 0x73, +0x6f, 0x72, 0x20, 0x6b, 0x65, 0x79, 0x73, 0x2c, 0x00, 0xb0, +0x6d, 0x6f, 0x76, 0x65, 0x20, 0x61, 0x72, 0x6f, 0x75, 0x6e, +0x64, 0x1f, 0x00, 0x01, 0x86, 0x03, 0x74, 0x2e, 0x20, 0x50, +0x72, 0x65, 0x73, 0x73, 0xca, 0x00, 0x20, 0x72, 0x65, 0xed, +0x00, 0x00, 0xc0, 0x02, 0x51, 0x73, 0x70, 0x61, 0x63, 0x65, +0x3b, 0x00, 0x06, 0x05, 0x01, 0x0c, 0x46, 0x01, 0x0a, 0x9a, +0x03, 0x01, 0x96, 0x00, 0x30, 0x70, 0x65, 0x63, 0xda, 0x02, +0x52, 0x6c, 0x79, 0x20, 0x28, 0x61, 0x67, 0x00, 0x15, 0x6e, +0x10, 0x01, 0x04, 0xdc, 0x02, 0x28, 0x73, 0x20, 0x5a, 0x03, +0x65, 0x77, 0x61, 0x79, 0x20, 0x61, 0x73, 0xdb, 0x01, 0x04, +0x49, 0x01, 0x22, 0x73, 0x29, 0x91, 0x01, 0x14, 0x70, 0x9f, +0x00, 0x40, 0x42, 0x61, 0x63, 0x6b, 0x95, 0x00, 0x02, 0xbc, +0x01, 0x02, 0x02, 0x01, 0x05, 0x1c, 0x01, 0x08, 0x0b, 0x01, +0x41, 0x28, 0x41, 0x6c, 0x6c, 0x4f, 0x00, 0x11, 0x61, 0xb0, +0x02, 0xb0, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, +0x62, 0x65, 0x64, 0x78, 0x00, 0x13, 0x73, 0xc6, 0x02, 0x30, +0x32, 0x2e, 0x31, 0x1c, 0x04, 0x02, 0x31, 0x01, 0xb3, 0x61, +0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, +0x93, 0x02, 0x14, 0x32, 0x93, 0x02, 0xa0, 0x70, 0x61, 0x72, +0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x92, 0x03, 0x36, +0x65, 0x73, 0x65, 0x12, 0x00, 0x01, 0x7d, 0x04, 0x06, 0x3c, +0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, 0x79, 0x00, 0xe1, +0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x2e, 0x2e, 0x2e, +0x27, 0x20, 0x6f, 0x70, 0x6f, 0x00, 0x22, 0x6f, 0x6e, 0x1a, +0x00, 0xf0, 0x0a, 0x54, 0x79, 0x70, 0x65, 0x27, 0x20, 0x6d, +0x65, 0x6e, 0x75, 0x2e, 0x20, 0x0a, 0x5f, 0x57, 0x69, 0x64, +0x74, 0x68, 0x5f, 0x2c, 0x20, 0x5f, 0x48, 0x65, 0x78, 0x02, +0xa2, 0x5f, 0x20, 0x0a, 0x53, 0x69, 0x7a, 0x65, 0x20, 0x6f, +0x66, 0x22, 0x05, 0x24, 0x69, 0x6e, 0x22, 0x04, 0x60, 0x2e, +0x20, 0x28, 0x4e, 0x6f, 0x74, 0x45, 0x01, 0x22, 0x61, 0x74, +0xa9, 0x01, 0x26, 0x75, 0x6c, 0x38, 0x04, 0x30, 0x67, 0x61, +0x6d, 0x7d, 0x01, 0x30, 0x71, 0x75, 0x69, 0x94, 0x01, 0x22, +0x6f, 0x74, 0x75, 0x02, 0x10, 0x77, 0x5d, 0x00, 0x01, 0x44, +0x01, 0x10, 0x68, 0x5e, 0x00, 0x00, 0x2f, 0x02, 0x00, 0x3b, +0x02, 0x43, 0x65, 0x76, 0x65, 0x6e, 0xcf, 0x04, 0x10, 0x73, +0xef, 0x00, 0xf2, 0x00, 0x5f, 0x44, 0x69, 0x66, 0x66, 0x69, +0x63, 0x75, 0x6c, 0x74, 0x79, 0x5f, 0x20, 0x0a, 0x43, 0x82, +0x03, 0x02, 0x90, 0x01, 0x15, 0x64, 0x1a, 0x00, 0x05, 0x6a, +0x00, 0x83, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, +0x99, 0x04, 0x00, 0xc5, 0x00, 0x60, 0x55, 0x6e, 0x69, 0x71, +0x75, 0x65, 0xf8, 0x04, 0x17, 0x73, 0x48, 0x05, 0x90, 0x73, +0x5f, 0x20, 0x0a, 0x49, 0x66, 0x20, 0x65, 0x6e, 0x1b, 0x01, +0x20, 0x64, 0x2c, 0x1a, 0x05, 0x21, 0x74, 0x77, 0x1e, 0x05, +0x03, 0xb4, 0x05, 0x53, 0x65, 0x72, 0x6d, 0x69, 0x74, 0x63, +0x04, 0xc6, 0x68, 0x61, 0x76, 0x65, 0x20, 0x65, 0x78, 0x61, +0x63, 0x74, 0x6c, 0x79, 0x1a, 0x02, 0x72, 0x70, 0x61, 0x74, +0x74, 0x65, 0x72, 0x6e, 0x08, 0x02, 0x83, 0x6c, 0x69, 0x6b, +0x65, 0x77, 0x69, 0x73, 0x65, 0x5f, 0x00, 0x00, 0x12, 0x01, +0x15, 0x41, 0xbb, 0x05, 0x14, 0x61, 0x6f, 0x05, 0x20, 0x63, +0x61, 0x73, 0x05, 0xf0, 0x01, 0x74, 0x63, 0x68, 0x2c, 0x20, +0x74, 0x68, 0x6f, 0x75, 0x67, 0x68, 0x2e, 0x29, 0x20, 0x0a, +0x00, +}; +const unsigned short help_text_len = 1684; const char quick_help_text[] = "Fill in the black and white grid to avoid runs of three."; diff --git a/apps/plugins/puzzles/help/untangle.c b/apps/plugins/puzzles/help/untangle.c index e0f2f4447e..b81ac20325 100644 --- a/apps/plugins/puzzles/help/untangle.c +++ b/apps/plugins/puzzles/help/untangle.c @@ -1,33 +1,71 @@ -/* auto-generated by genhelp.sh */ +/* auto-generated on Aug 16 2017 by genhelp.sh */ +/* orig 747 comp 620 ratio 0.829987 level 4 saved 127 */ /* DO NOT EDIT! */ -const char help_text[] = -"#Chapter 18: Untangle " -"\n" -"You are given a number of points, some of which have lines drawn " -"between them. You can move the points about arbitrarily; your aim is " -"to position the points so that no line crosses another. " -"\n" -"I originally saw this in the form of a Flash game called Planarity " -"[7], written by John Tantalo. " -"\n" -"[7] http://planarity.net " -"\n" -"\n#18.1 Untangle controls " -"\n" -"To move a point, click on it with the left mouse button and drag it " -"into a new position. " -"\n" -"(All the actions described in section 2.1 are also available.) " -"\n" -"\n#18.2 Untangle parameters " -"\n" -"There is only one parameter available from the `Custom...' option on " -"the `Type' menu: " -"\n" -"_Number of points_ " -"\n" -"Controls the size of the puzzle, by specifying the number of " -"points in the generated graph. " -"\n" -; + +#include "help.h" +const char help_text[] = { +0xf0, 0x2e, 0x23, 0x43, 0x68, 0x61, 0x70, 0x74, 0x65, 0x72, +0x20, 0x31, 0x38, 0x3a, 0x20, 0x55, 0x6e, 0x74, 0x61, 0x6e, +0x67, 0x6c, 0x65, 0x20, 0x0a, 0x59, 0x6f, 0x75, 0x20, 0x61, +0x72, 0x65, 0x20, 0x67, 0x69, 0x76, 0x65, 0x6e, 0x20, 0x61, +0x20, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x20, 0x6f, 0x66, +0x20, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x73, 0x2c, 0x20, 0x73, +0x6f, 0x6d, 0x65, 0x10, 0x00, 0xf0, 0x16, 0x77, 0x68, 0x69, +0x63, 0x68, 0x20, 0x68, 0x61, 0x76, 0x65, 0x20, 0x6c, 0x69, +0x6e, 0x65, 0x73, 0x20, 0x64, 0x72, 0x61, 0x77, 0x6e, 0x20, +0x62, 0x65, 0x74, 0x77, 0x65, 0x65, 0x6e, 0x20, 0x74, 0x68, +0x65, 0x6d, 0x2e, 0x20, 0x4f, 0x00, 0x80, 0x63, 0x61, 0x6e, +0x20, 0x6d, 0x6f, 0x76, 0x65, 0x13, 0x00, 0x03, 0x46, 0x00, +0xf8, 0x1c, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x61, +0x72, 0x62, 0x69, 0x74, 0x72, 0x61, 0x72, 0x69, 0x6c, 0x79, +0x3b, 0x20, 0x79, 0x6f, 0x75, 0x72, 0x20, 0x61, 0x69, 0x6d, +0x20, 0x69, 0x73, 0x20, 0x74, 0x6f, 0x20, 0x70, 0x6f, 0x73, +0x69, 0x74, 0x69, 0x6f, 0x6e, 0x36, 0x00, 0xa1, 0x73, 0x6f, +0x20, 0x74, 0x68, 0x61, 0x74, 0x20, 0x6e, 0x6f, 0x73, 0x00, +0xf2, 0x1b, 0x20, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x65, 0x73, +0x20, 0x61, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, 0x2e, 0x20, +0x0a, 0x49, 0x20, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, +0x6c, 0x6c, 0x79, 0x20, 0x73, 0x61, 0x77, 0x20, 0x74, 0x68, +0x69, 0x73, 0x20, 0x69, 0x46, 0x00, 0x40, 0x66, 0x6f, 0x72, +0x6d, 0xba, 0x00, 0xf4, 0x3a, 0x61, 0x20, 0x46, 0x6c, 0x61, +0x73, 0x68, 0x20, 0x67, 0x61, 0x6d, 0x65, 0x20, 0x63, 0x61, +0x6c, 0x6c, 0x65, 0x64, 0x20, 0x50, 0x6c, 0x61, 0x6e, 0x61, +0x72, 0x69, 0x74, 0x79, 0x20, 0x5b, 0x37, 0x5d, 0x2c, 0x20, +0x77, 0x72, 0x69, 0x74, 0x74, 0x65, 0x6e, 0x20, 0x62, 0x79, +0x20, 0x4a, 0x6f, 0x68, 0x6e, 0x20, 0x54, 0x61, 0x6e, 0x74, +0x61, 0x6c, 0x6f, 0x2e, 0x20, 0x0a, 0x5b, 0x37, 0x5d, 0x20, +0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x70, 0x34, 0x00, +0xc6, 0x2e, 0x6e, 0x65, 0x74, 0x20, 0x0a, 0x0a, 0x23, 0x31, +0x38, 0x2e, 0x31, 0x4c, 0x01, 0xc2, 0x63, 0x6f, 0x6e, 0x74, +0x72, 0x6f, 0x6c, 0x73, 0x20, 0x0a, 0x54, 0x6f, 0x01, 0x01, +0x12, 0x61, 0xc9, 0x00, 0xf1, 0x03, 0x2c, 0x20, 0x63, 0x6c, +0x69, 0x63, 0x6b, 0x20, 0x6f, 0x6e, 0x20, 0x69, 0x74, 0x20, +0x77, 0x69, 0x74, 0x68, 0x9f, 0x00, 0xf0, 0x06, 0x6c, 0x65, +0x66, 0x74, 0x20, 0x6d, 0x6f, 0x75, 0x73, 0x65, 0x20, 0x62, +0x75, 0x74, 0x74, 0x6f, 0x6e, 0x20, 0x61, 0x6e, 0x64, 0x56, +0x01, 0x10, 0x67, 0x27, 0x00, 0x40, 0x69, 0x6e, 0x74, 0x6f, +0x90, 0x01, 0x25, 0x65, 0x77, 0x1b, 0x01, 0x71, 0x2e, 0x20, +0x0a, 0x28, 0x41, 0x6c, 0x6c, 0x3d, 0x00, 0x20, 0x61, 0x63, +0x12, 0x00, 0xb0, 0x73, 0x20, 0x64, 0x65, 0x73, 0x63, 0x72, +0x69, 0x62, 0x65, 0x64, 0xf5, 0x00, 0x21, 0x73, 0x65, 0x16, +0x00, 0x41, 0x20, 0x32, 0x2e, 0x31, 0xd5, 0x01, 0xf3, 0x01, +0x61, 0x6c, 0x73, 0x6f, 0x20, 0x61, 0x76, 0x61, 0x69, 0x6c, +0x61, 0x62, 0x6c, 0x65, 0x2e, 0x29, 0xb4, 0x00, 0x16, 0x32, +0xb4, 0x00, 0x90, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, +0x65, 0x72, 0xb6, 0x00, 0x40, 0x68, 0x65, 0x72, 0x65, 0x8e, +0x01, 0x77, 0x6f, 0x6e, 0x6c, 0x79, 0x20, 0x6f, 0x6e, 0x1e, +0x00, 0x06, 0x45, 0x00, 0x51, 0x20, 0x66, 0x72, 0x6f, 0x6d, +0x82, 0x00, 0xe1, 0x60, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, +0x2e, 0x2e, 0x2e, 0x27, 0x20, 0x6f, 0x70, 0x78, 0x00, 0x03, +0xbe, 0x01, 0xfb, 0x01, 0x60, 0x54, 0x79, 0x70, 0x65, 0x27, +0x20, 0x6d, 0x65, 0x6e, 0x75, 0x3a, 0x20, 0x0a, 0x5f, 0x4e, +0x53, 0x02, 0x44, 0x5f, 0x20, 0x0a, 0x43, 0x2b, 0x01, 0x00, +0x2f, 0x00, 0x31, 0x73, 0x69, 0x7a, 0x61, 0x02, 0x01, 0xf9, +0x01, 0x60, 0x75, 0x7a, 0x7a, 0x6c, 0x65, 0x2c, 0x88, 0x01, +0xa1, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x79, 0x69, 0x6e, +0x67, 0x1a, 0x00, 0x0c, 0x99, 0x02, 0x04, 0xe5, 0x01, 0xf0, +0x04, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, +0x20, 0x67, 0x72, 0x61, 0x70, 0x68, 0x2e, 0x20, 0x0a, 0x00, +}; +const unsigned short help_text_len = 747; const char quick_help_text[] = "Reposition the points so that the lines do not cross."; diff --git a/apps/plugins/puzzles/lz4tiny.c b/apps/plugins/puzzles/lz4tiny.c new file mode 100644 index 0000000000..8244ede1cc --- /dev/null +++ b/apps/plugins/puzzles/lz4tiny.c @@ -0,0 +1,201 @@ +/* + LZ4 - Fast LZ compression algorithm + Copyright (C) 2011-2017, Yann Collet. + BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following disclaimer + in the documentation and/or other materials provided with the + distribution. + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + You can contact the author at : + - LZ4 homepage : http://www.lz4.org + - LZ4 source repository : https://github.com/lz4/lz4 +*/ + +/* modified for reduce code size by Franklin Wei */ +/* currently compiles to 324 bytes when thumb is used */ + +#ifndef ROCKBOX +#include +#include +#else +#include "rbcompat.h" +#include "lz4tiny.h" +#endif + +typedef uint8_t BYTE; +typedef uint16_t U16; +typedef uint32_t U32; +typedef int32_t S32; +typedef uint64_t U64; +typedef uintptr_t uptrval; + +#if (defined(__GNUC__) && (__GNUC__ >= 3)) || (defined(__INTEL_COMPILER) && (__INTEL_COMPILER >= 800)) || defined(__clang__) +# define expect(expr,value) (__builtin_expect ((expr),(value)) ) +#else +# define expect(expr,value) (expr) +#endif + +#define likely(expr) expect((expr) != 0, 1) +#define unlikely(expr) expect((expr) != 0, 0) + +/*-************************************ +* Local Structures and types +**************************************/ +typedef enum { notLimited = 0, limitedOutput = 1 } limitedOutput_directive; +typedef enum { byPtr, byU32, byU16 } tableType_t; + +typedef enum { noDict = 0, withPrefix64k, usingExtDict } dict_directive; +typedef enum { noDictIssue = 0, dictSmall } dictIssue_directive; + +typedef enum { endOnOutputSize = 0, endOnInputSize = 1 } endCondition_directive; +typedef enum { full = 0, partial = 1 } earlyEnd_directive; + +/*-************************************ +* Common Constants +**************************************/ +#define MINMATCH 4 + +#define WILDCOPYLENGTH 8 +#define LASTLITERALS 5 +#define MFLIMIT (WILDCOPYLENGTH+MINMATCH) + +#define KB *(1 <<10) +#define MB *(1 <<20) +#define GB *(1U<<30) + +#define MAXD_LOG 16 +#define MAX_DISTANCE ((1 << MAXD_LOG) - 1) + +#define ML_BITS 4 +#define ML_MASK ((1U<>ML_BITS)) == RUN_MASK) { + unsigned s; + do { + s = *ip++; + length += s; + } while ( 1 & (s==255) ); + } + + /* copy literals */ + cpy = op+length; + memcpy(op, ip, length); + if (op + length > oend - WILDCOPYLENGTH) + break; /* Necessarily EOF, due to parsing restrictions */ + ip += length; op = cpy; + + /* get offset */ + offset = LZ4_readLE16(ip); ip+=2; + match = op - offset; + LZ4_write32(op, (U32)offset); /* costs ~1%; silence an msan warning when offset==0 */ + + /* get matchlength */ + length = token & ML_MASK; + if (length == ML_MASK) { + unsigned s; + do { + s = *ip++; + length += s; + } while (s==255); + } + length += MINMATCH; + + /* copy match within block */ + cpy = op + length; + if (unlikely(offset<8)) { + const int dec64 = dec64table[offset]; + op[0] = match[0]; + op[1] = match[1]; + op[2] = match[2]; + op[3] = match[3]; + match += dec32table[offset]; + memcpy(op+4, match, 4); + match -= dec64; + } else { memcpy(op, match, 8); match+=8; } + op += 8; + + if (unlikely(cpy>oend-12)) { + BYTE* const oCopyLimit = oend-(WILDCOPYLENGTH-1); + if (op < oCopyLimit) { + LZ4_wildCopy(op, match, oCopyLimit); + match += oCopyLimit - op; + op = oCopyLimit; + } + while (op16) LZ4_wildCopy(op+8, match+8, cpy); + } + op=cpy; /* correction */ + } +} + +/* testing code */ +#ifndef ROCKBOX +#include "help.h" +#include +#include +int main() +{ + char *buf = malloc(help_text_len); + LZ4_decompress_tiny(help_text, buf, help_text_len); + puts(buf); + free(buf); +} +#endif diff --git a/apps/plugins/puzzles/lz4tiny.h b/apps/plugins/puzzles/lz4tiny.h new file mode 100644 index 0000000000..67008e4053 --- /dev/null +++ b/apps/plugins/puzzles/lz4tiny.h @@ -0,0 +1 @@ +void LZ4_decompress_tiny(const char* const source, char* const dest, int outputSize); diff --git a/apps/plugins/puzzles/rockbox.c b/apps/plugins/puzzles/rockbox.c index 5a00c47a61..10c8efc22b 100644 --- a/apps/plugins/puzzles/rockbox.c +++ b/apps/plugins/puzzles/rockbox.c @@ -34,6 +34,7 @@ #include "lib/xlcd.h" #include "fixedpoint.h" +#include "lz4tiny.h" /* how many ticks between timer callbacks */ #define TIMER_INTERVAL (HZ / 50) @@ -1311,7 +1312,12 @@ static void full_help(const char *name) unload_fonts(); rb->lcd_setfont(FONT_UI); - view_text(name, help_text); + char *buf = smalloc(help_text_len); + LZ4_decompress_tiny(help_text, buf, help_text_len); + + view_text(name, buf); + + sfree(buf); rb->lcd_set_background(old_bg);