rnd-20100107-2-src
[rocksndiamonds.git] / ChangeLog
index 8349425ea1bef0e7f925aa04d6c1a42f24edc76a..17c8df158fa44910511d888fe915fba09405632b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,167 @@
+2010-01-07
+       * added handling of gravity ports when converting Supaplex style R'n'D
+         levels to native Supaplex levels for playing with Supaplex engine
+
+2010-01-06
+       * fixed bug in Supaplex engine regarding initial screen scroll position
+
+2009-12-17
+       * fixed EMC style pushing animations in the R'n'D graphics engine (when
+         using ".2nd_movement_tile" for animations having start and end tile)
+       * for this to work (look) properly for two-tile pushing animations with
+         non-black (i.e. opaque) background, the pushing graphics drawing order
+         was changed to first draw the pushed element, then the player (maybe
+         this should be controlled by an ".anim_mode" flag yet to be added)
+       * two-tile animations for moving or pushing should have 7 frames for
+         normal speed, 15 frames for half speed etc. to display correct frames
+       * two-tile animations are also displayed correctly with different speed
+         settings for the player (for pushing animations) or moving elements
+
+2009-12-16
+       * added searching for template level (file "template.level") not only
+         inside the level set directory, but also in above level directories;
+         this makes is possible to use the same single template level file
+         (placed in a level group directory) for many level sub-directories
+
+2009-12-10
+       * fixed bug with steel exit being destructible during opening phase
+       * added token "special_flags" to "levelinfo.conf" (currently with the
+         only recognized value "load_xsb_to_ces", doing the same as the flag
+         "-Dload_xsb_to_ces" on the command line, but as a permanent flag for
+         converting all elements in native (XSB) Sokoban level files to CEs)
+
+2009-12-08
+       * fixed some problems with Supaplex engine when compiling for Windows
+
+2009-12-05
+       * added special mode to convert elements of Sokoban XSB levels to CEs
+         by adding "-Dload_xsb_to_ces" to the command line starting the game
+         (also adding a dependency to a template level file "template.level")
+
+2009-12-01
+       * added reading native Sokoban levels and level packages (XSB files)
+
+2009-11-25
+       * fixed bugs in (auto)scrolling behaviour when passing ports or when
+         wrapping around the playfield through "holes" in the playfield border
+
+2009-11-24
+       * changed internal playfield bitmap handling from playfield sized bitmap
+         to screen sized bitmap (visible scrolling area), therefore speeding up
+         graphics operations (by eliminating bitmap updates in invisible areas)
+         and removing playfield size limitations due to increasing bitmap size
+         for larger playfield sizes (while the new implementation always uses
+         a fixed playfield bitmap size for arbitrary internal playfield sizes)
+
+2009-11-12
+       * fixed bug with single step mode (there were some cases where the game
+         did not automatically return to pause mode, e.g. when trying to push
+         things that cannot be pushed or when trying to run against a wall)
+
+2009-11-01
+       * added support for loading Supaplex levels in MPX level file format
+
+2009-10-31
+       * fixed SP engine to set "game over" not before lead out counter done
+
+2009-10-30
+       * fixed (potential) compile error when using GCC option "-std=gnu99"
+         (thanks to Tom "spot" Callaway)
+
+2009-10-28
+       * fixed array allocation in native Supaplex engine to correctly handle
+         preceding scratch buffers (needed because of missing border checking)
+       * fixed playfield initialization to correctly add raw header bytes as
+         subsequent scratch buffer (needed because of missing border checking)
+
+2009-10-24
+       * most important parts of native Supaplex engine integration working:
+         - native Supaplex levels can be played in native Supaplex engine
+         - native Supaplex level/demo files ("*.sp" files) can be re-played
+         - all 111 classic original Supaplex levels automatically solvable
+         - native Supaplex engine can be selected and used from level editor
+         - logic of re-playing Supaplex demos migrated to R'n'D tape logic
+
+2009-09-25
+       * fixed another translation problem from VisualBasic to C (where "int"
+         should be "short") causing unsolvable demos with bugs and terminals
+         ("bugs" being related to the Supaplex "buggy base" element here ;-) )
+
+2009-09-23
+       * fixed bug when reading Supaplex single level files (preventing loader
+         from seeking to level position like in Supaplex level package files)
+
+2009-08-01
+       * first classic Supaplex level running and solved by solution/demo tape
+
+2009-06-20
+       * started with integration of native Supaplex engine, using source code
+         of Megaplex from Frank Schindler, based on original Supaplex engine
+
+2009-06-16
+       * version number set to 3.2.6.2
+
+2009-06-15
+       * version 3.2.6.1 released
+
+2009-05-31
+       * fixed bug with element_info[e].gfx_element not being initialized in
+         early game stage, causing native graphics in EMC level sets to be
+         mapped completely to EL_EMPTY (causing a blank screen when playing)
+         (this only happened when starting the program with an EMC set with
+         native graphics, but not when switching to such a set at runtime)
+
+2009-03-30
+       * deactivated blit-to-same-surface workaround again (see 2009-03-24)
+         and using self-compiled, patched SDL.dll that solves this problem
+         (interim solution until release of SDL 1.2.14 that should fix this)
+
+2009-03-26
+       * extended backwards compatibility mode to allow already fixed bug with
+         change actions (see "2008-02-05") for existing levels (especially the
+         Zelda and Zelda II levels and other cool stuff by Alan Bond like FMV)
+
+2009-03-24
+       * reactivated workaround to prevent program crashes due to blitting to
+         the same SDL surface that apparently only occurs on Windows systems
+         (this is no final solution; this problem needs further investigation)
+
+2008-11-05
+       * version number set to 3.2.6.1
+
+2008-11-04
+       * version 3.2.6.0 released
+
+2008-10-11
+       * fixed behaviour of player option "no centering when relocating" which
+         was incorrect when disabled and relocation target inside visible area
+         and "no scrolling when relocating" enabled at the same time
+
+2008-10-06
+       * fixed problems with re-mapping players on playfield to input devices:
+         previously, players found on the level playfield were changed to the
+         players connected to input devices (for example, player 3 in the level
+         was changed to player 1 (using artwork of player 3, to be able to use
+         a player with a different color)); this had the disadvantage that CE
+         conditions using player elements did not work (because the players in
+         the level definition are different to those effectively used in-game);
+         the new system uses the same player elements as defined in the level
+         playfield and re-maps the input devices of connected players to the
+         corresponding player elements when playing the level (in the above
+         example, player 3 now really exists in the game and is moved using the
+         events from input device 1); level tapes still store the events from
+         input devices 1 to 4, which are then re-mapped to players accordingly
+         when re-playing the tape (just as it is done when playing the level)
+
+2008-09-29
+       * fixed bug with player relocation while the player switches an element
+
+2008-09-24
+       * fixed bug with EM/DC style exit and EM/DC style steel exit which was
+         not walkable (and did not let the player enter) when in process of
+         opening, but not fully open yet (which can cause the player not being
+         able to enter the exit in EM/DC style levels in time)
+
 2008-08-02
        * fixed some bugs regarding the new level/CE random seed reset options