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!