Mark Huckvale's
Su Doku Puzzle Generator Help


1. Operation

1.1 Web Interface

The generators can make these different su doku puzzles:

There are two main forms of operation of each generator:

Options allow control over difficulty rating and symmetry. Difficulty levels between 0 and 10 produce ordinary puzzles which may be made symmetric. Difficulty level -1 (diabolical) triggers the use of additional logical rules to make particularly hard puzzles. Currently, diabolical level puzzles may not be symmetric as well. Ratings are relative to the type of puzzle, not absolute. Thus a difficult 4x4 puzzle is still very easy compared to a difficult 9x9 puzzle.

Once the puzzle has been created there are options to download the generated puzzle in Text, Rich Text Format (RTF), Scalable Vector Graphics (SVG) or Bitmap Graphics (TIFF) formats.

1.2 Field Names

You can replace the provided input forms with your own web pages or create links on existing pages. These are the field names that can be used in a web form or URL:

Field name Available values and description
passwd Access control password supplied.
rating Whole number from 10 (easy) to -1 (diabolical) or any for random rating level.
symmetry no: no special symmetry
rotate: rotational symmetry
Note that a current limitation of the software is that "diabolical" level puzzles may not be perfectly symmetric even when this is set.
output text: plain text output format
html: web page output format
rtf: rich text format (RTF) output format
svg: scalable vector graphics (SVG) output format
tif: bitmap graphics (TIFF) output format (1200dpi)
input Text field containing puzzle to be analyzed. Use digits 1 to 9 for given digits and 0 or _ for the empty squares. Leave spaces between all elements, and include one line of text per puzzle line.
maxempty Number representing the maximum number of empty cells to be left to do (or any). Most useful in helping to create very easy 16x16 puzzles. Typical numbers between 150-50. Over-rides rating.
alphas Name string to be hidden in letter puzzle. Name must be nine characters or less. Some names containing repeating letters cannot be used as they cannot be placed in the puzzle. Sometimes the name is not hidden very well, in which case try again.
template Name of file containing template used to generate formatted puzzle. File is expected to be found in installation directory (e.g. c:/program files/sudoku/...)
submit create: create a new puzzle
analyze: analyze a puzzle supplied in input field.

For example, the link http://hostname/cgi-bin/sudokucgi.exe/sudoku.rtf?passwd=ABCDEF&output=rtf will jump directly to a new RTF formatted standard puzzle. The use of the "/sudoku.rtf" suffix to the program name can help some web servers to deliver the correct MIME type to the browser. Puzzle generation can be even driven by a script using a web-page download program like wget.

2. Template Files

Template files are stored in the Su Doku generator installation directory. They may be edited to give control over input and output forms used with the puzzle generator.

Template name Description
input−template4.htm HTML form to accept input for making mini 4x4 number puzzle.
input−template6.htm HTML form to accept input for making midi 6x6 number puzzle.
input−template.htm HTML form to accept input for making standard 9x9 number puzzle.
input−template16.htm HTML form to accept input for making super 16x16 number puzzle.
input−templatelet.htm HTML form to accept input for making letter 9x9 number puzzle.
analyze−template4.htm HTML template used to display analysis of mini 4x4 number puzzle.
analyze−template6.htm HTML template used to display analysis of midi 6x6 number puzzle.
analyze−template.htm HTML template used to display analysis of standard 9x9 number puzzle.
analyze−template16.htm HTML template used to display analysis of super 16x16 number puzzle.
analyze−templatelet.htm HTML template used to display analysis of letter 9x9 number puzzle.
create−template4.htm HTML template used to display created mini 4x4 puzzle in HTML format.
create−template6.htm HTML template used to display created midi 6x6 puzzle in HTML format.
create−template.htm HTML template used to display created standard 9x9 puzzle in HTML format.
create−template16.htm HTML template used to display created super 16x16 puzzle in HTML format.
create−templatelet.htm HTML template used to display created letter 9x9 puzzle in HTML format.
create−template4*.txt Text templates used to display created mini 4x4 puzzle in text format.
create−template6*.txt Text templates used to display created midi 6x6 puzzle in text format.
create−template*.txt Text templates used to display created standard 9x9 puzzle in text format.
create−template16*.txt Text templates used to display created super 16x16 puzzle in text format.
create−templatelet*.txt Text templates used to display created letter 9x9 puzzle in text format.
create−template4*.rtf RTF templates used to display created mini 4x4 puzzle in rich text format.
create−template6*.rtf RTF templates used to display created midi 6x6 puzzle in rich text format.
create−template*.rtf RTF templates used to display created standard 9x9 puzzle in rich text format.
create−template16*.rtf RTF templates used to display created super 16x16 puzzle in rich text format.
create−templatelet*.rtf RTF templates used to display created letter 9x9 puzzle in rich text format.
create−template4*.svg SVG templates used to display created mini 4x4 puzzle in vector graphic format.
create−template6*.svg SVG templates used to display created midi 6x6 puzzle in vector graphic format.
create−template*.svg SVG templates used to display created standard 9x9 puzzle in vector graphic format.
create−template16*.svg SVG templates used to display created super 16x16 puzzle in vector graphic format.
create−templatelet*.svg SVG templates used to display created letter 9x9 puzzle in vector graphic format.

All template files are text files which undergo textual substitution to generate the supplied puzzles. These are the substitution variable names used within the templates:

Variable Description
~digit~ Value of given digit or blank in generated puzzle. There should be 81 "~digit~" positions in a standard puzzle and 256 in a super puzzle.
~solve~ Value of solution digit in generated puzzle. There should be 81 "~solve~" positions in a standard puzzle and 256 in a super puzzle.
~ratingstr~ String value describing difficulty rating of generated puzzle.
~date~ String representing date and time at which puzzle was generated.
~alphas~ String representing letter string used to generate letter puzzle.
~aseq~ String representing alphabetically ordered letters required to solve letter puzzle.


© 2005 Mark Huckvale