Minestein: Home

Next page

Introduction

Minestein is a version of the famous Minesweeper game. But, unlike the original Minesweeper, in its default mode Minestein will always produce puzzles that can be solved using logic - no guessing is required. For traditionalists, Minestein also has an "Original" mode which is equivalent to the standard program. If users get stuck or are still learning, Minestein has a button providing a two stage hint mechanism, plus "show answer" and "show solution" buttons. It can produce puzzles with a minimum difficulty rating. The Python source code is included in the download.

Overview

Figure 1 shows a typical view of Minestein soon after a puzzle has been started. The figure legend gives an overview of the game play. Cell positions are defined by column,row coordinates with 1,1 at the bottom left.

Minestein example
Figure 1. The smileys are buttons and, other than the first, which starts a new game, their faces have been chosen to indicate increasing levels of desperation: the second gives a clue; the next reveals the answer for a single cell; the next reveals the solution for the whole grid. The three sets of figures give the number of remaining mines, the 3BV score, and the time taken. When this puzzle was started it contained 20 hidden mines, four of which have since been flagged by the user. The user reveals a cell by clicking on it with the left mouse button. If a mine is revealed the game finishes in failure. If the cell is touching mine(s) their count is revealed. If the revealed cell has a zero mine count the program automatically reveals all connected cells with zero counts plus the counts for all surrounding cells. The game finishes successfully when all mines have been correctly flagged or all unmined cells are revealed.

What is Minesweeper?

For those that don't know, the aim of the game is to find the location of all the mines hidden in a grid. To start the game the user left clicks anywhere on the grid. This reveals the content of a few cells around that position. Content is either a mine or a count of the number of mines that touch the cell, zero being shown as a blank cell. Apart from those at the edge of the grid, each cell touches 8 other cells (up, down, left, right and four diagonals). The user left clicks, in turn, on the cells that he believes to be unmined. This left clicking reveals the contents of the cell. If the cell is unmined the touching mine count is shown. If the cell is mined the game is over and the user has failed. Success comes when all the unmined cells are revealed. Optionally the user can mark the cells that are thought to be mined. This is done using a right click and places a flag in the cell without revealing its contents.

As mentioned above, an important characteristic of Minestein, and one which separates it from the original Minesweeper, is that it produces puzzles that can be solved logically. To many this will be seen as a great advantage. If they get stumped users can resort to a hint system.

News

February 18th 2011

Latest changes described here.

September 12th 2010

Changes to web pages. Reading through the text after a long break realised that I had denoted cell positions by row,column numbered down from the top left! Converted to column,row numbering from the bottom left to give the more conventional x,y. Never let the coder write the user documentation.

December 8th 2008

Version 0.03 released: Expert mode logical puzzle creation time greatly reduced: it now takes 1/260 of the original time!

December 1st 2008

Version 0.02 released: halved the time taken to generate puzzles that can be solved by logic - though it is still too slow for large grids with many mines.

Last updated: 2012-10-28    Sitemap