Introduction

This site exists to make available a small collection of computer games, namely: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku and Suguru. All of the thousands of puzzles contained in the games can be solved by logic: no guessing is required, even when playing Minesweeper. Every game has a hint option.

Contents

The programs can be downloaded for free and are easy to install and run on Linux, Windows and Mac OS X. The programs are written in the language Python and the download includes their source code. This means that those who are interested can see how the programs are written and can change them.

Site Overview

Each of the games is described on its own page. These pages will give an idea of the capabilities and use of the individual games but the best way to find out if you'll like a game is to download and try it. Download and installation information is on the Downloads page. How to report a bug or make suggestions for improvements or additions is described under Contacts. The majority of the announcements about new programs, bug fixes and website changes are contained on the Old News page

Some programs, such as sudoku, kakuro and sokoban have options which enable players to read in external puzzle files. The accepted file formats are on the Formats page. Information about how the programs are structured and written is on the Coding page. The Patterns page contains Python code and video examples of some of the non-periodic tiling patterns used in the jigsaw game. Similarly, the L-Systems page contains Python code and video examples of some of the L-Systems patterns used in the jigsaw game. Numerous people and web sites have provided help or information which has contributed to the creation of the programs and some are acknowledged are on the Thanks page.


Selected News

October 15th 2016. "Number Blocks": 7.0

A new game Suguru has been added to the download. It is also known as "Number Blocks" and "Tectonic". Small changes have been made to sudoku, futoshiki and kakuro, and some sloppy cut and paste work in the website's algorithm descriptions have been corrected. As usual, please report any problems.

August 15th 2016. "Division by Boxes": 6.0

A new game Shikaku or Divide by Box has been added to the download. It is a good game, probably easier than most of the others, and ideal for a quick diversion. In the relatively carefree days back in June we had the "Building Bridges" release, but how appropriate that, after an unforgiveable referendum and the spineless response of the majority of our Parliamentary representatives, our current release is named "Division by Boxes". Unsurprisingly the team are not in the best of spirits and it has been difficult to motivate them to do the testing, but please report any problems found and we'll fix them as quickly as possible.

May 14th 2014 PZL Games rated 5 stars by Softpedia

The package is now available from the Softpedia site and has been awarded 5 out of 5 by the Softpedia editor.

January 29th 2014 PZL Games Launched

Here at PZL Towers we are justifiably proud of our dedicated and highly skilled team of designers, developers and programmers. They have just completed an excellent set of computer games, namely: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword and Sumpuzzle. These programs are fitting examples of the team's inventiveness, expertise and attention to detail.

Not only are these people outstanding in their respective fields, they are also strong supporters of Open Source and Cross Platform Software, and though it conflicts with management policy and our responsibility to our shareholders, we have decided to respect the team's wishes and to allow these potentially valuable programs to be downloaded at no cost, complete with their source code. Though some may interpret this as a cynical PZL PR stunt we hope that the sensible majority will acknowledge it as a generous gift from a sometimes misunderstood organisation.

 

The Games

The newer games are shown as videos and the others are shown as a series of screenshots, each of which, when clicked will reveal a time-lapsed animation of the game being played using its hint options.

As a courtesy to visitors who may be unfamiliar with the games, and hence need a little extra time to take in what they are seeing, we employ the least dextrous and most slow witted of the team to solve the puzzles displayed in these videos. While it may not show the games in their best light, using this person to make the videos is also good for team spirit, as it affords an opportunity for much warm hearted banter and mutual amusement among the members of the group as they stand around the screen and cheer him on.

Suguru Example

A video from suguru showing a puzzle being solved. The player selects puzzle number 801 and immediately applies a right-click to the hint button (wand) to remove all the trivial candidates. She makes good progress removing candidates and setting answers, occasionally clicking on the thumb to check that no errors have been made. At one point a hint is requested and prior to a Hidden Single hint being displayed some cells are filled in automatically.

Shikaku Example

A video from Shikaku showing the easiest 10x10 puzzle being solved with the grey scale shading switched on. The player selects puzzle number 300 and spots immediately that the 2 clue in the top right is the only one which can reach the corner cell and that a 6 clue can only have a single rectangle. Notice the operations required. Later the player fills in a complete solution for an 8 clue and then uses the thumb icon to check if it is correct. It isn't, and the program colours two incorrect cells black. A further click on the thumb corrects the errors. Further on the player uses the hint button to request a clue. Note throughout how the shading changes as the number of possible solutions diminishes.

Bridges Example

A video from bridges. An unskilled player is shown muddling through, at one point using the hint option to find the next bridge to place, but eventually getting the puzzle solved.

Jigsaw Example

A video from jigsaw showing two puzzles being completed. The first an image file and the second a built in pattern. First the board is set to the desired image size, and then the file is read in and automatically scaled to fit the board. Next the board is enlarged to make space for the jigsaw pieces. Then the pieces are created and scattered about the board. Finally the puzzle is solved using the mouse. The same steps are used for the pattern. To save time for the demonstation the puzzles have been broken into the minimum number of pieces.

Sudoku Example

Sudoku Example

A screenshot from sudoku. The large digits are the current answers and the small digits are the remaining candidate answers for the individual squares. Click to see an animation showing the use of the hint button to solve this complete puzzle. The delay between images is 2 seconds.

Futoshiki Example

Futoshiki Example

A screenshot from futoshiki. The large digits are the current answers and the small digits are the remaining candidate answers for the individual squares. The inequality symbols < and > indicate the relative value of the answers to adjacent squares. Click to see an animation showing the use of the hint button to solve this complete puzzle. The delay between images is 2 seconds.

Kakuro Example

Kakuro Example

A screenshot from kakuro. The strips of squares to be solved are shown in white with their possible answers written in tiny numbers around their edges. The sum squares at the ends of the strips contain the numbers that the strip's answers must make when added together. Here the player has clicked on the 21 at the left end of the horizontal strip of 3, and the program has popped up a list of the 3 combinations of three digits which sum to 21. Click to see an animation showing the use of the hint button to solve this complete puzzle. The delay between images is 2 seconds.

Sumpuzzle Example

Sumpuzzle Example

A screenshot from sumpuzzle showing the beginning of a game. Here only the operators +, -, x and / and the results are shown. The values that make up the sums are missing and each of their squares contains tiny "candidate" numbers 1-9. These are buttons which can be left clicked for removal or middle clicked for setting the number for the square. A right click will replace a deleted candidate. Also seen in this figure is the fact that the player has left clicked on the green icon at the end of the second horizontal sum. This has brought up a list of the 4 possible sets of numbers which satisfy that sum. The player hence knows that the first number in this sum is 5, 6, 8, or 9, that the second is 9, 8, 6 or 5, and the third is 8 or 5. Click to see an animation showing the use of the buttons to solve this complete puzzle. The delay between images is 2 seconds.

Codeword Example

Codeword Example

A screenshot from codeword showing a newly started game. At the top of the window is a Toolbar, a box containing the puzzle number and a clock. Below this are two rows of squares containing the numbers 1-26. Below this is a row of smaller squares containing the letters A-Z. Below this is the crossword grid. To serve as clues three numbers have had their letter assignments (C,F,G) revealed. As the mouse cursor passes over squares in the top two rows it lights up in green the corresponding squares in the crossword grid. Here the cursor is currently on the square for number 7 and their pattern is revealed. It looks like 7 may be assigned to the letter E. Click to see an animation showing this puzzle being solved (though the sharp-eyed will notice that the letter-number assignments are different). The delay between images is 2 seconds.

Boggle Example

Boggle Example

A screenshot from boggle showing a newly started game. At the top of the window is a Toolbar and a clock. Below this is the randomly generated grid. Here shading is being used to indicate the number of words originating from each square. Not surprisingly there are none starting on the letter 'X'. Below the grid is an entry box, here containing the letter 'S' as the player has just left-clicked on the 'S' at the top left of the grid. Correct completed words are automatically transfered to the scrolling list underneath. Click to see an animation showing the first few words being found in this grid. Notice the shading of the letter 'T' fading as the words are entered. The delay between images is 2 seconds.

Minesweeper Example

Minesweeper Example

A screenshot from minesweeper showing a newly started game. The number in a square denotes the number of mines in adjacent squares. Click to see an animation showing the grid being solved entirely by the use of the hint button. The delay between images is 2 seconds.

Sokoban Example

Sokoban Example

A screenshot from sokoban showing a newly started game which has a very simple map with only one box (blue star) and one target (green concentric circles). Click to see an animation showing the puzzle being solved. The player moves the man by using the arrow keys or by clicking on the square he wants him to move to.

Scrabbler Example

Scrabbler Example

A screenshot from scrabbler. At the top of the display is a set of buttons, a clock and the player's and machine's current scores. Below this is a white entrybox for entering words, and the player's current rack of tiles is to its right. Underneath these is the board displaying the laid tiles, those of the player in yellow and of the computer in red. The last word played is always shown in white but will be given the appropriate colour when a new word is added to the board. Each letter has a value and these are summed to give a score for each turn. When tiles are placed on squares that are not green the word score is increased. The notional sack of tiles also contains 2 blank tiles which can be used to represent any letter. When placed on the board the letter designated to these tiles is shown in lower case (for example see the "e" in the bottom row of the board). Click to see an animation showing the player using the hint button for every turn! and with the machine's IQ set down to 10. The delay between images is 2 seconds.

Akari Example

Akari Example

A screenshot from pzl Akari part way through a simple game. The object of the game is to illuminate all the white cells with light bulbs. Bulbs are placed on white cells and each will light its row and column in both directions until blocked by a black cell. What makes the game interesting is that no bulb can illuminate another and that when the puzzle is completed the numbered cells must have exactly their given number of bulbs touching their four sides (any touching their corners do not count). Click to see an animation showing the use of the hint button to solve this complete puzzle. The delay between images is 2 seconds.


The Interface

As far as possible the user interface has been made consistent between games. Please see the adjacent figure in which as an example we show a screenshot from the sudoku game.

Interface Example

Interface Example

A screenshot from sudoku showing an active hint. The large digits are the current answers and the small digits are the remaining candidate answers for the individual squares. Where possible the hint display colours the candidates providing the "reason" for the hint in green and the candidates that can be deleted are coloured red. In row 9 there are two squares which contain only 2 different candidates (2,9, shaded green). As they are the only remaining candidates in these squares, they must be their answers. Therefore the other 2s and 9s in the row (shaded red) can be deleted.

The puzzle icon at the top left is a menu used for selecting options, loading and saving files, and configuring the game. It also includes a help option which summarises the use of each game. The button to its immediate right is the game's identifying icon. It is used within the game to load a new puzzle and can be arranged externally as the shortcut icon for launching the game.

Button Info

Button Info

An information box describing the function of the wand button.

Other buttons are used for requesting hints (wand), checking for errors (thumb) and showing the puzzle solution (sad smiley). Where relevant, immediately to the right of the sad smiley is a box for entering specific puzzle numbers so that they can be loaded. Other numbers show scores and clock ticks. The function of each button can be discovered by clicking on it with the middle mouse button. This causes an information box (see Button Info figure) describing the button to pop up.

Hint Info

Hint Info

An information box describing a currently active hint (here the Naked Pairs algorithm). These boxes can be popped up by clicking middle mouse on the wand icon when a hint is active and the wand is sloping backwards.

One of the aims of the games is to help players to learn how to solve the puzzles, hence the hints. When a hint is shown the wand icon switches to slope backwards. When it is in that position clicking on it with the middle mouse button will cause an information box giving a brief explanation of the hint to pop up (see Hint Info figure).

At any time the player can click on the thumb icon and the program will check the current state of the puzzle for errors. If errors are found they are highlighted and the thumb icon turns to the thumbs down position. A further click on the thumb will remove all the incorrect answers.