Minesweeper 3D
Version 20050904, by Eelis van der Weegen
This software has been released into the Public domain
Screenshots:
Table of contents
- Introduction
- Download
- Building & (un)installing
- Feedback
- Changelog
1. Introduction
Minesweeper 3D is a three-dimensional, free, open-source remake of the classic Minesweeper game, written for GNU/Linux. Minesweeper 3D uses OpenGL to efficiently render minefield grids.
2. Download
3. Building & (un)installing
Prerequisites
- GCC ≥ 3.3.5
- Python ≥ 1.6
- SCons ≥ 0.96.90
- Boost ≥ 1.32
- gtkmm ≥ 2.6
- librsvg ≥ 2.11
Older versions (≥ 2.0) may work, but they contain inaccuracies in the rasterizing algorithms leading to artifacts in the resulting bitmap, which consequently prevent certain optimizations (for example for textures that are completely filled with a single color, or textures that contain no transparent parts) from being used. For optimal performance and graphics quality, use ≥ 2.11.
- libglademm ≥ 2.6
- gtkglextmm ≥ 1.1
- the Arial font
The following filesystem locations are relevant to Minesweeper 3D's installation:
- executable_path: the location where the executable is installed. This defaults to install_prefix
/bin
, but can be overridden by passing install_prefix=/foo/bar to scons.
- resource_path: the location where some support files are stored. This defaults to install_prefix
/share/minesweeper3d
, but can be overridden by passing resource_path=/foo/bar to scons.
- locale_path: the location where language files are stored. This defaults to
/usr/share/locale
, but can be overridden by passing locale_path=/foo/bar to scons.
- The location where per-user files such as settings and saved games are stored. For now, this is always
~/.minesweeper3d
.
install_prefix defaults to /usr
, but can be overridden by passing install_prefix=/foo/bar to scons. If both executable_path and resource_path are overridden, install_prefix is not used.
If you build and install separately as described below, make sure you pass the exact same values at both scons invocations.
To build Minesweeper 3D, do:
cd minesweeper3d-20050904
scons
Note: When building is complete, Minesweeper 3D is not runnable from this location. The directory structure here merely facilitates the build process. Minesweeper 3D must be installed before it can be run.
To install Minesweeper 3D, do (as root if necessary):
scons install
To uninstall Minesweeper 3D, do (as root if necessary):
scons -c uninstall
Upgrading an existing installation is currently not supported. Instead, just uninstall and reinstall. Additionally, the configuration file and savegame file formats may not be backwards compatible, so it's recommended to delete ~/.minesweeper3d
as well.
4. Feedback
I'd love to hear what people think of Minesweeper 3D.
Please send all your comments, questions, suggestions and bug reports to [minesweeper3d AT contacts DOT eelis DOT net].
5. Changelog
-
20050904
- Reintroduced textured solids and general skin support. Added skinning.txt to /doc. Also included a simple but fresh new skin (in addition to the existing default skin).
- Digit size is now configurable.
- Added support for localization using GNU gettext.
- Added a trackball-like rotation style.
- Bugfixes.
-
20050828
- Substantial parts rewritten/reorganized.
- Replaced Emmer based build infrastructure with SCons based solution.
- Ported to Linux.
- Dropped Windows support (for now).
- Moved to gtkmm toolkit.
- Highlighting has been added.
- New versioning scheme. Some tools (notably RPM) got confused by the dashes in the ISO 6801 datestamp.
- Settings can no longer be saved/loaded to/from files on request. Settings are remembered between runs.
- Skin "management" has been removed.
- Unopened fields are now always drawn as single-color solids. They can no longer be textured or be displayed as sprites.
- The canvas background is now always drawn in a single color.
- The remaining sprites (digits, mine graphic, explosion) are now loaded from sprites.svg and rendered internally. Texture size for these sprites is now a configurable parameter.
- A 0-field is now always opened on startup (this used to be optional).
- Grid lines are no longer supported.
-
2005-01-02
- Undo/redo.
- Rhombic dodecahedron shaped fields.
- Spherical grids.
- Some performance improvements.
- Added "Subtract flagged count from mine count" option.
- Lots of internal restructuring, removing/introducing bugs.
- Replaced GNU-Make based build infrastructure with Emmer based solution.
-
2004-05-14
- Added 'solid' skins feature and some solid skins. Solid skins support lighting and transparency.
- Fixed a bug (which was introduced in the previous version) that caused the auto-open option to be disabled automatically after having been enabled under certain circumstances.
-
2004-05-06
- Added saving/loading of games.
- Added Windows installer.
- Added configurable mouse speed.
- Removed zooming.
- Camera is now only reset when absolutely necessary.
- Added help menu linking to documentation and new about box.
- Combobox for skin selection.
- New skin specification.
- Lots of changes in this manual.
- Numerous bugs fixed, most likely introduced numerous new ones.
-
2003-10-22
- New versioning scheme (I have no intention of distinguishing between beta/stable/etc versions, so a datestamp is enough for me).
- Large portions rewritten, fixed numerous bugs and most likely introduced numerous new ones ;-).
- Removed the 'wrap detection areas' option, even with scrolling it was too hard.
-
1.1 (2003-09-14)
- Added a new minimal auto opener that is used when the 'extended' auto opener is disabled. This minimal auto opener only auto opens fields surrounding an opened field with mine count 0, just like Minesweeper 2D's auto opener.
- Disabled 'extended' auto opening and enabled potential-mine markers in the default profile. Much more like MS Windows' Minesweeper 2D config now.
- Added sliders for grid size and mine ratio instead of text boxes. Changed mine ratio to more intuitive percentage scale. Removed mine ratio from manual descriptions.
- Added automatic restarting when a generated grid is won before the user ever got a chance to play, with a maximum currently set to 10 (and an error if 10 restarts have occurred).
-
1.0 (2003-07-04)
Minesweeper 3D is powered by:
Minesweeper 3D supports: