YSudoku is an implementation of sudoku game. It has:
There are two modes to play sudoku:
In order to select which mode you want to play:
When playing internal puzzles one can select difficulty level of a puzzle to play.
There are 4 difficulty levels: Easy, Normal, Hard, Crazy and one Custom. In custom difficulty level one gets an empty board and creates his own puzzle.
In order to solve the puzzle: select difficulty level from combo box with levels and then press <New> button.
All given digits are in black all digits selected by the player are in gray (in screen shot they are marked with red circles).
As mentioned above in custom level one can create his own puzzle. Start by selecting difficulty level <Custom> and them press new. One will get empty board and can put whatever digit he wants on every place, all digits will be gray (player selected) if clicked normally or black (puzzle given) if clicked while holding down <Ctrl>.
To make already existing gray digit black (as given) click on it while holding down <Ctrl> (and vice-versa making it gray again).
Finally to save puzzle somewhere: copy it to clipboard and paste into a text file.
This option is to help creating own puzzles. When selected: Ctrl-O or from menu it will try to optimize the puzzle, by removing some of the given digits which do not need to be present, i.e. solution will be the same even without them.
For example. Right puzzle is optimized variant the left one puzzle (less digits, but same solution)
/-----------\ /-----------\ |6..|.53|...| |6..|..3|...| |.4.|2..|..8| |.4.|2..|..8| |5..|7..|.64| |5..|...|.64| |---+---+---| |---+---+---| |...|.4.|..6| |...|.4.|..6| |4.6|...|1.9| > Ctrl-O > |..6|...|1.9| |1..|.8.|...| |1..|.8.|...| |---+---+---| |---+---+---| |91.|..5|..3| |91.|..5|...| |8..|..4|.2.| |...|..4|.2.| |...|62.|..1| |...|62.|..1| \-----------/ \-----------/
During play one will notice that when mouse moves over cells it will display 9 possible helper digits in a cell (small ones) and clicking on them will actually select the digit for the cell.
Clicking again on a user selected digit it will be deselected.
Another possibility is to right click on a small digit, in such a case a digit will be marked (displayed black), to unmark it - right click again on it.
Mark has no meaning for the game at all, it's just some kind of mark a player may want to use (for example to mark that this digit is not possible or that it is possible).
When puzzle is completely and correctly (without errors) solved you will get congratulations on status bar.
There are following hint modes one can select.
Hint modes can be selected from a combo box (when playing in internal puzzles mode) or from menu (in both: internal and file modes)
It is possible to get even more help (not just hints) from a program. It is possible to ask for automatic selection of some of the very simple cases. So following mark types are available:
Marking types can be selected from a combo box (when playing in internal puzzles mode) or from menu (in both: internal and file modes)
All auto selected digits will be shown in green.
Note: when some digit is auto selected, then a board is analyzed again. Which may lead to auto selecting another digit and so on. So even if there is just one digit available for auto selection, if one activates auto selection this may lead to completely solving the puzzle.
In a following example left one has: Show always, Outline user and Emboss swithed to On. Right one has all of them swithed to off.
This is a button in internal puzzle mode and also available in menu.
In above example, the left one has <Show always> switched to On, the right one - to off.
This option is available only in menu
In above example, the left one has <Outline user> switched to On, the right one - to off.
This option is available only in menu
In above example, the left one has <Emboss> switched to On, the right one - to off.
Sometimes it's good to have a coordinate system (like in chess) in order to be able to discuss puzzle and/or describe solution.
There are two possible ruler modes. With horizontal letters (like in chess) or with vertical ones.
Ruler with horizontal letters is switched on with Ctrl-R or R
Ruler with vertical letters is switched on with Shift-R or Alt-R
For example. Left one is with horizontal, right one with vertical letters.
When saving something YSudoku will write data into SQLite database. This is a single file (entire database engine is inside YSudoku).
YSudoku can save pasted puzzles and/or solved puzzles.
When selected YSudoku will save every solved puzzle in a database file. On selection YSudoku will ask for a filename of database to save solved puzzles.
Puzzles will be saved without solution (because usually there are a lot of auto solvers for sudoku). The main purpose to save solved levels is to warn player that this puzzle (which he is going to play) was already solved by him.
Warning is given by displaying that puzzle was already solved in status line.
So in a solved puzzles database file YSudoku will save only unique puzzles. It may happen that two puzzles that look completely different are in fact equivalent. See saving which puzzles are considered equivalent below (in save pasted puzzles).
When selected YSudoku will save every pasted puzzle in a database file. On selection YSudoku will ask for a filename of database to save pasted puzzles.
Then on every paste of a puzzle this puzzle will be saved into a database. Later on one can export this database to a text file.
It is possible to save puzzles as they are pasted or just really different ones (unique puzzles).
If <save unique pasted> is not selected then every pasted puzzle will be save into database (if it does not already exist there).
If <save unique pasted> is selected then a puzzle is first converted to an smallest possible representation (comparing among all equal puzzles) and then preserved into database.
Following sudoku puzzles are considered equivalent:
1. Transposed (diagonal mirrored)
2. Change any lines which does not cross square boundary
/-----------\ |..3|6.4|9..| \ |...|.5.|...| > for example, swap line 1 & 3 |9..|...|..7| / |---+---+---| |2..|...|..6| |.4.|...|.5.| |8..|...|..1| |---+---+---| |1..|...|..5| |...|...|...| |.92|736|4..| \-----------/
3. Change any columns which does not cross square boundary
-----> for example swap this columns / \ /-----------\ |..3|6.4|9..| |...|.5.|...| |9..|...|..7| |---+---+---| |2..|...|..6| |.4.|...|.5.| |8..|...|..1| |---+---+---| |1..|...|..5| |...|...|...| |.92|736|4..| \-----------/
4. change any two lines of squares
/-----------\ |..3|6.4|9..| \ |...|.5.|...| > |9..|...|..7| / \ |---+---+---| \ |2..|...|..6| \ |.4.|...|.5.| > for example swap lines 1,2,3 and 7,8,9 |8..|...|..1| / |---+---+---| / |1..|...|..5| \ / |...|...|...| > |.92|736|4..| / \-----------/
5. change any two rows of squares
____________ for example swap columns 1,2,3 and 7,8,9 __/ \__ / \ / \ /-----------\ |..3|6.4|9..| |...|.5.|...| |9..|...|..7| |---+---+---| |2..|...|..6| |.4.|...|.5.| |8..|...|..1| |---+---+---| |1..|...|..5| |...|...|...| |.92|736|4..| \-----------/
6. Any permutation of digits: for example 123456789 -> 987654321
And of course any combination of above mentioned transformations.
For example sudoku puzzle on the left will be saved as right one (and any puzzle equivalent to that puzzle).
/-----------\ /-----------\ |..3|6.4|9..| |...|..1|..2| |...|.5.|...| |...|..2|..3| |9..|...|..7| |...|.4.|..5| |---+---+---| |---+---+---| |2..|...|..6| |...|..6|..1| |.4.|...|.5.| -> |..4|...|...| |8..|...|..1| |27.|3..|.4.| |---+---+---| |---+---+---| |1..|...|..5| |...|..5|..8| |...|...|...| |..1|...|..6| |.92|736|4..| |89.|6..|.7.| \-----------/ \-----------/
In order to select collection mode:
In this mode the main difference is that puzzles are read from text file and you have to select file with puzzles.
Select collection from combo box with collections (already used collections). Or press <Collection> button to select a collection from disk.
Nearly everything else is similar to the internal mode. Except you can select puzzle number to play. Or use ctrl-left/right arrow to move to prev/next puzzle in a file.
There are several methods to copy puzzle into clipboard:
1. Ctrl-C - copy puzzle (single line). This will copy the puzzle as a single line with '.' at empty cells. For example:
7.9.3...18.5.4...2.....16...4...58.....4.653.9.28...6..7...29.....5.978.3.67...1.
2. Ctrl-Shift-C - copy puzzle (single line with 0). Same as above, but with 0 at empty cells (instead of '.'). For example:
709030001805040002000001600040005800000406530902800060070002900000509780306700010
3. Ctrl-Alt-C - copy puzzle. 9 lines with 9 digits per line. For example:
7.9.3...1 8.5.4...2 .....16.. .4...58.. ...4.653. 9.28...6. .7...29.. ...5.978. 3.67...1.
4. Ctrl-Shift-Alt-C - copy puzzle (decorated)
/-----------\ |7.9|.3.|..1| |8.5|.4.|..2| |...|..1|6..| |---+---+---| |.4.|..5|8..| |...|4.6|53.| |9.2|8..|.6.| |---+---+---| |.7.|..2|9..| |...|5.9|78.| |3.6|7..|.1.| \-----------/
5. Ctrl-Ins does the same as Ctrl-C (with alt and shift modifiers if used)
Key | Action |
---|---|
Ctrl-A | activate auto select |
Ctrl-C | copy puzzle - single line with '.' at empty cells |
Ctrl-Shift-C | copy puzzle - single line with '0' at empty cells |
Ctrl-Alt-C | copy puzzle - 9 lines with 9 digits per line |
Ctrl-Shift-Alt-C | copy puzzle (decorated) |
Ctrl-O | optimize |
Ctrl-R or R | show/hide ruler (horizontal letters) |
Shift-R or Alt-R | show/hide ruler (vertical letters) |
Ctrl-V | paste puzzle - all digits as non changeable (puzzle values) |
Ctrl-Alt-V | paste puzzle, but leave all digits as user selected |
Ctrl-Shift-V | same as Ctrl-Alt-V |
Ctrl-Y | redo |
Ctrl-Z | undo |
Shift-Alt-Ins | same as Ctrl-Alt-V |
Esc | start solving again same puzzle (clear all user clicked digits) |
F1 | show help |
F10 | show menu |
Ctrl-Left/Right | goto prev/next puzzle in a collection |
backspace/space | undo/redo (also on mouse wheel) |
Ctrl-Ins | does the same as Ctrl-C (with alt and shift modifiers if used) |
Shift-Ins | same as Ctrl-V (paste puzzle) |