Introduction

This site exists to make available a large collection of free computer puzzle games and to provide clear explanations, with examples, of how to solve them. The games include: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku, Suguru, Hidato, Fillomino, Wordwheel, Wordladder, Nurikabe, Othello, Arrowsudoku, Jigsawsudoku, Ajs, Hitori, Numberlink, Masyu, Ripple, Tetrofit, gol and binary.

Contents

All of the thousands of puzzles (29,000 as of September 2017) contained in the games can be solved by logic: no guessing is required, even when playing Minesweeper. Every game has a hint option.

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, especially their demonstration videos, 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. The Videos page contains worked example videos for each of the games. 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 16th, 2020. "binary": 23.0

The puzzle game binary with 3000 built-in puzzles has been added to the download.

The download now contains the following 30 games: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku, Suguru, Hidato, Fillomino, Wordwheel, Wordladder, Nurikabe, Othello, Arrowsudoku, Jigsawsudoku, Ajs, Hitori, Numberlink, Masyu, Ripple, Tetrofit, gol and binary.

August 16, 2020. "gol bug fix": 22.1

Bug fix for gol. SF reported bug which produced an error message when the user failed to select a pattern name before clicking on "Text" or "Plot".

August 10, 2020. "gol": 22.0

The program gol has been added to the download. It is a simple viewer for Conway's game of life.

The download now contains the following 29 games: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku, Suguru, Hidato, Fillomino, Wordwheel, Wordladder, Nurikabe, Othello, Arrowsudoku, Jigsawsudoku, Ajs, Hitori, Numberlink, Masyu, Ripple, Tetrofit and gol.

February 5th 2020. "Tetrofit": 21.0

The game tetrofit has been added to the download.

The download now contains the following 28 games: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku, Suguru, Hidato, Fillomino, Wordwheel, Wordladder, Nurikabe, Othello, Arrowsudoku, Jigsawsudoku, Ajs, Hitori, Numberlink, Masyu, Ripple and Tetrofit.

November 27th 2019. "Ripple Effect": 20.0

The game ripple, with 1000 built-in puzzles has been added to the download.

The download now contains the following 27 games: Sudoku, Kakuro, Sokoban, Minesweeper, Futoshiki, Boggle, Codeword, Sumpuzzle, Jigsaw, Scrabbler, Akari, Bridges, Shikaku, Suguru, Hidato, Fillomino, Wordwheel, Wordladder, Nurikabe, Othello, Arrowsudoku, Jigsawsudoku, Ajs, Hitori, Numberlink, Masyu and Ripple.

October 28th 2019. "Masyu": 19.0

The game masyu, with 1000 built-in puzzles has been added to the download.

March 29th 2019. "Numberlink": 18.0

The game numberlink, with 1000 built-in puzzles has been added to the download.

December 13th 2018. "Hitori": 17.0

The game hitori, has been added to the download. Hope you like it. As requested, from this release onwards we will include a brief change log file to the download. For this release it is named change_log_17_0.

September 28th 2018. "Sudoku Encore": 16.0

This release contains two new games: jigsawsudoku, arrowjigsawsudoku (ajs), new puzzle data for sudoku and arrowsudoku, and a bug fix for sudoku, arrowsudoku, kakuro, futoshiki. Consequently there are a large number of code changes! Please report bugs. We generated new arrowsudoku puzzles because we decided that the original puzzles had too many arrows and consequently the arrows played too big a part in their solution. We note that arrowjigsawsudoku (ajs) may be unique to PZL. The bug was in the "most effective" hint mode. We've added a Videos page to the website which contains worked example videos for each of the games.

August 7th 2018. "Arrowsudoku": 15.0

This release includes a new game: Arrowsudoku which is a variant of sudoku. The testing team are away following the course of this year's Tour de France on their own cycles and have been too tired to perform their duties for this release, so please report any problems found.

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 Puzzles

Between them the games contain around 29,000 built-in puzzles and many games can read in external puzzles and solve them. In addition, Minesweeper, Scrabbler and Sumpuzzle do not contain predefined puzzles but instead generate new ones every time they are run. Jigsaw can generate a large range of patterns to use as puzzles and can read external images.

Using Hints

One of the aims of the games is to help players to learn how to solve the puzzles. Every game has a hint button labelled with a wand icon. When the button is clicked the program will apply its solving algorithms to the current state of the puzzle and display the result by colouring the candidate buttons. Green coloured candidates are the "reason" why the algorithm is applicable and the red candidates are the ones which can be deleted. For some games the reasons are too complicated to be shown. When the hint is active the wand slopes backwards and if players middle mouse click on the backward sloping wand an information box explaining the hint will appear. A left click on the backward sloping wand will cause the red candidates to be deleted.

The programs can solve all the puzzles using only the hint algorithms. Indeed, the puzzles were created by finding patterns of clues that the programs could solve. However, it is theoretically possible that players may partially solve a puzzle and then find that pressing the hint button does not produce a regular hint. This is because each hint algorithm requires particular patterns/configurations of the puzzle in order to operate, and if none of those are present they would not be able to function. Most games using candidates have a fallback procedure for this possibility: they simply supply display a hint in which the answer for a cell is shown as a "cause" and all the other candidates in the cell are marked in red and will be deleted when the hint button is pressed. When a game has to cheat in this way the algorithm "name" is displayed as "**".

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 Naked Pairs 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. For all games a left-click on this button will load a randomly chosen puzzle and for most games a right-click will load the next puzzle in sequence. Image files for these game icons are included in the download and can be arranged externally as the shortcut icon for launching the individual games.

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.

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.

The configuration values set in the games' main menu can be saved so that they are used next time the program is started. Almost all the games have an option in the main menu for setting the font size. Note that the font size choice will determine the size of many of the components that make up the game window. Once choices like this have been made players need to use the "Save Settings" option in the same menu if they want the program so use the current configuration next time the program is used.

The Installation

Installation is achieved by use of the pzl_installer program. This will create a hidden directory (.pzl) in your home directory and there copy over all the required files.

The programs are normally activated using the pzl_launcher program. On many Linux flavours pzl_installer will also create a Desktop launcher for pzl_launcher and also add it to the Games menu.

Configuration

When a game, say sudoku, is activated for the first time it will create an eponymous directory in .pzl ie .pzl/sudoku. If a player saves a sudoku game it will be stored in directory .pzl/sudoku/SAVES. As mentioned in The Interface players can configure many aspects of each game, and, using the "Save Settings" option in the game, can save that configuration for use in the future. Until they do this the configuration file will not exist and the program will always start with its default settings. That configuration file (always named preferences.txt) is also stored in the eponymous directory for the game and the program will read and apply it each time it is started.

An example configuration file for the program gol is shown below.

max_ticks 50
cell_size 5
edge_wrapping wrapping_on
font_size 1
Born_Colour yellow
selection_mode Select
margin_size 10
pattern_files /home/me/.pzl/gol/RLE
delay 100
max_cells 90000
pattern_name Glasses
Survived_Colour red
max_ani_time 10
set_colour Born_Colour
Table_Colour black

The configuration file for program gol.