Rocks'n'Diamonds 0.9 released 25 years ago!

25 years ago to the day, the very first version 0.9 of Rocks’n’Diamonds was released!

Here’s the historic LSM (“Linux Software Map”) file used for the first release:

Title:          Rocks'n'Diamonds
Version:        0.9 (Pre-Release)
Entered-date:   23OCT95
Description:    Arcade style game for color X11 with stereo sounds.
                A game like "Boulderdash" (C=64) or "Emerald Mine" (Amiga).
                Sound server takes advantage of some features of VoxWare(tm),
                but works on plain /dev/audio, too.
                Comes with full source code.
Keywords:       game x11 boulderdash emeraldmine color stereo sound
Author: (Holger Schemel)
Maintained-by: (Holger Schemel)
Primary-site:  /pub/Linux/games/x11/video
                941953 rocks_n_diamonds-0.9.tgz
Alternate-site:  /contrib/games
                941953 rocks_n_diamonds-0.9.tar.gz
Platforms:      Should run on any UN*X system with color X11 (8bit or better).
                Expected to work on Linux, HP-UX, SUN, Net-BSD, AIX and IRIX.
                Linux binary included.
Copying-policy: Freely distributable copyrighted software

Interestingly, mirrors of the original FTP sites used for the initial release are still available (here and here), although they do not have the package file for the first version anymore, but only for the second version 0.9b (released a few days later).

Of course, the initial version 0.9 package is still available as a direct download from this web site, and the Git repository of Rocks’n’Diamonds has a special branch to compile the historic version with modern compilers and systems.

For nostalgic impressions, here are some screenshots of Rocks’n’Diamonds 0.9:

I wish you all a lot of fun playing Rocks’n’Diamonds also for the next 25 years! :-)

Rocks'n'Diamonds released!

This is another bugfix release which fixes and adds the following:

  • fixed some problems with wrap-around levels in Emerald Mine engine
  • added full compatibility for wrap-around levels in Emerald Mine engine
  • fixed single-step mode for wrap-around levels in Emerald Mine engine
  • fixed playing tapes recorded with old Emerald Mine game engine
  • added command “autofix” to fix tapes recorded with old EM game engine
  • fixed key shortcut to start/end game (which was broken since
  • fixed some other key shortcuts that require entering upper case letters
  • added menu command “:undo-tape” to undo/restore last recorded tape
  • fixed potential crash bug that may occur when loading custom artwork
  • fixed single-step mode when using custom elements with mouse click events
  • added creating undo/redo snapshots when using mouse click events
  • fixed problems with virtual buttons and showing envelopes on Android
  • improved startup speed by optimizing parsing of parameter values
  • improved handling output of warnings, errors and debug messages
  • fixed showing source date on version page of info screen menu
  • added showing commit hash on version page of info screen menu

Now available on the download page!

Rocks'n'Diamonds released!

This is mainly a bugfix release which fixes and adds the following:

  • fixed broken tapes (for various reasons) recorded with old EM engine
  • fixed support for initially moving spring in EM game engine
  • added support for initially moving spring to R’n’D game engine
  • fixed potential crash bug when reading from artwork info cache
  • fixed wrong eater content when loading native EM levels
  • added support for variable number of eater arrays for EM engine
  • fixed vsync mode when not using OpenGL renderer (like “Metal” on Mac)
  • added option for setting hint for render driver to setup config file
  • added displaying render driver on info screen page

Now available on the download page!

Rocks'n'Diamonds released!

This is a bugfix release which fixes the following bugs:

  • fixed loading dynamic libraries shipped with the Linux package
  • fixed level editor key shortcuts (broken by regression)
  • fixed support for wrap-around levels in EM engine for old tapes

Now available on the download page!

Rocks'n'Diamonds released!

A new major release of Rocks’n’Diamonds is finally available!

The most important change is the long-awaited update of the Emerald Mine game engine, which was based on an old version of David Tritscher’s “Emerald Mine for X11” from 2000/2001. The new game engine uses a more recent code base from 2009, which contains new features and bug fixes and improves the compatibility of the game engine with many levels from the Emerald Mine Club level collection (while preserving compatibility of already recorded tapes).

The most important Emerald Mine game engine related changes are:

  • support for wrap-around levels (like level 80 from level set “Ruppelmine 2”)
  • improved handling of chain-explosions of the “bug” game element
  • improved handling of the “fake acid” game element
  • improved handling of various other game elements (like burning dynamite)

As another important improvement, the whole build system was updated for all platforms to support today’s development tools and to support the most recent versions of the SDL libraries, which removes several problems when building the game on current systems. This also includes native 64-bit support for the Windows version.

Here’s an overview of the most important build system changes:

  • added support for cross-compiling to Windows 64-bit platform
  • added CPU architecture (32/64 bit) to version info screen
  • added build support for older versions of Mac OS X
  • changed build system for Android from Ant to Gradle
  • updated SDL libraries to the latest versions for all platforms

The following features and bug fixes were added to custom elements:

  • added being able to use CE condition “CE value/score gets 0”
  • added mouse click events to CE change events (experimental)
  • added new change action “move player new” to CE change actions
  • added support for tapes with both keyboard/joystick and mouse actions
  • fixed bug with reanimating killed player by CE condition

The following additions and fixes are related to global animations:

  • added option to generally set global animations to block clicks
  • added missing handling of animation mode “random” for global animations
  • fixed drawing global animations when switching screens without fading

Additionally, there are the following new features and bug fixes:

  • added workaround for a bug in SDL 2.0.12 which prevents transparency
  • fixed potential crash bug if personal user level set cannot be found
  • changed move speed for some elements for older game engine versions
  • fixed element property that caused levels/tapes to be unsolvable
  • moved game engine settings to separate setup menu screen
  • fixed bug with scrollbar still active on virtual buttons config screen
  • replaced ILBM graphics source files in repository with converted PNG files
  • fixed text event handling for newer SDL versions on Android
  • fixed screen rotation for newer SDL versions on Android
  • fixed screen size for newer SDL versions on Android
  • updated custom game controller mappings for newer SDL versions on Android
  • added disabling overlay touch buttons when using joystick

Now available on the download page!