X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=ChangeLog;h=8a72a75b6e30f2bb21202ccd404ba32f383d51b8;hp=42c67769f95a8a63f9f6162a39b038aaa2f0cf8d;hb=3da9c6a38081401af8c47d78330a199104f9ad2f;hpb=ba702cd338586991ab20176cf5587afbb4d77af7 diff --git a/ChangeLog b/ChangeLog index 42c67769..8a72a75b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,450 @@ +2008-10-06 + * fixed problems with re-mapping players on playfield to input devices + +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 + +2008-07-14 + * moved "level settings" and "editor settings" to two tabbed screens in + level editor to gain space for additional level property settings + * added level setting to start a level with always the same random seed + * added CE action "set random seed" to re-initialize random seed in game + (this is the only CE action that gets executed before the CE changes, + which is needed to use the newly set random seed during the CE change) + +2008-06-16 + * fixed redraw problem of special editor door when playing from editor + +2008-06-16 + * fixed initialization of gfx_element for level sketch image creation + +2008-06-15 + * added switch for EM style dynamite "[ ] explodes with chain reaction" + (with default set to "on" for existing levels, but "off" for all new + levels), as EM style dynamite does not chain-explode in original EM + +2008-02-05 + * added optional initial inventory for players (pre-collected elements) + * added change page actions "set player inventory" and "set CE artwork" + * added recognition of "player" parameter on change pages when player + actions are defined, but no trigger player in corresponding condition + (this resulted in actions that only affected the first player before) + * fixed bug with change actions being executed for newly created custom + elements resulting from custom element changes, when the intention was + only to check for change actions for the previous custom element + +2008-02-03 + * changed design and size of element drawing area in level editor + * added "element used as action parameter" to element change actions + +2008-01-27 + * added possibility to reanimate player immediately after his death + (for example, by "change to when explosion of ") + +2008-01-25 + * fixed bug with "gray" white door not being uncovered by magnifier + * added score for collecting (any) key to the white key config page + +2008-01-22 + * added condition "deadly when " for custom elements + that behaves a bit like the existing "deadly when ", + but with the following differences: + - it only kills players or friends when it was moving before it hits + - it does not kill players or friends that try to run into it + +2008-01-21 + * fixed the following change conditions where a player element is used + as the "element that is triggering the custom element change": + - touching + - hitting + - explosion of + - move of + (the last two conditions already worked partially, but only for the + first player, and not for the "Murphy" player when using "move of") + +2008-01-20 + * fixed crash bug caused by accessing invalid element (with value -1) + in UpdateGameControlValues() + * fixed graphical bug when using two-tile movement animations with EMC + game engine without explicitly using native EMC graphics engine + +2007-10-31 + * fixed bug in new "can dig" feature (see below) so that an unsuccessful + try to push something (due to push delay) does not cause a dig action + +2007-10-29 + * fixed bug with reference elements used as trigger elements on custom + element change pages not being recognized + * fixed bug with reference elements not being removed from the playfield + * added engine functionality that allows custom elements that "can dig" + other elements not only to do so when moving by themselves, but also + when being pushed by the player (therefore adding the functionality to + push one element over another element, replacing it with the new one) + +2007-10-23 + * added command line function to write level sketch images to directory + +2007-10-20 + * merged override and auto-override options into new override options + with a new data type than can take the values "no", "yes" and "auto" + +2007-10-18 + * fixed growing steel wall to also leave behind steel wall instead of + normal, destructible wall + * fixed handling of rocks falling through stacks of quicksand with + different speed (before, the rocks just got stuck in the quicksand) + +2007-10-09 + * fixed nasty bug with auto-override and normal override not working on + program startup (especially when current level set has custom artwork) + +2007-10-05 + * version 3.2.5 released as special edition "R'n'D jue" + +2007-10-05 + * fixed X11 crash bug when blitting masked title screens over background + +2007-10-04 + * changed build system to support special editions (like "R'n'D jue") + * added (hardcoded) loading graphics for "R'n'D jue" special edition + * fixed X11 crash bug when scaling images with width/height less than 32 + +2007-09-27 + * added "background.PLAYING" (only visible as two-pixel border in game) + * added default level set for first start of special R'n'D version + * changed door animations for editor always behaving like "quick doors" + +2007-09-26 + * added new custom artwork setup option "auto-override non-CE sets" for + automatic artwork override that is only used for level sets without + custom element artwork (as it does not make much sense to override + any artwork that redefines custom element artwork for sets using CEs) + * fixed default artwork for "special" R'n'D versions always using the + "classic" artwork as the base if base artwork is not explicitly + defined in "levelinfo.conf", regardless of different default artwork + used by the special R'n'D version -- this is needed because any such + custom artwork is designed using the "classic" artwork definitions as + the base (including menu definitions and screen positions etc., which + would otherwise be taken from the different special default artwork) + +2007-09-17 + * fixed drawing of animated "quicksand.filling" and "quicksand.emptying" + for both EMC and R'n'D graphics engine (heavy workarounds needed due + to massively broken handling of quicksand in R'n'D game engine) + * fixed off-limits access to array in DrawLevelFieldCrumbledSandExt() + * fixed crash bug (hopefully) when scrolling with cursor keys in editor + +2007-09-16 + * fixed small bug in toon drawing (introduced when fixing the crash bug) + +2007-09-15 + * added graphics definition "game.panel.highscore" to display the + current levels current high score in the game panel + +2007-09-13 + * version number set to 3.2.5 + +2007-09-13 + * version 3.2.4 released + +2007-09-13 + * fixed crash bug in toon drawing functions for large step offset values + +2007-09-12 + * fixed some problems with displaying game panel when quick-loading tape + +2007-09-07 + * fixed (experimental only) redrawing of every tile per frame (even if + unneeded) for the extended (R'n'D based) EMC graphics engine + * added optimization to only calculate element count for panel display + if really needed (that is, if element count values defined on panel) + * fixed problem with special editor door redraw when entering main menu + +2007-09-03 + * fixed bug with displaying background for title messages on info screen + * some code cleanup for the extended (R'n'D based) EMC graphics engine + +2007-09-01 + * fixed bug with CE action "move player" always resulting in player 4 + if there was a CE action with no trigger player (because the player + element was calculated by using log_2() from trigger player bits with + the value PLAYER_BITS_ANY) -- this is now fixed by also storing the + triggering player bit mask and handling all players in "move player" + * fixed bug when defined artwork cannot be found for artwork that has + default artwork cloned from other artwork (without default filename) + * added several fixes to the extended (R'n'D based) EMC graphics engine + +2007-08-26 + * fixed broken editor copy and paste for custom elements between levels + +2007-08-25 + * title messages are now also searched in graphics artwork directory; + those found in graphics directory have precendence over those found + in level directory -- this handles title messages stored in graphics + directories as part of the artwork set, just like title images; this + makes sense, as corresponding special font definitions for messages + are usually defined in the same graphics artwork directory, and also + because title images and title messages that are combined in a level + set introduction should usually not be separated when the level set + is used with a different artwork set (e.g. using "override graphics") + * fixed problem with door borders on main screen by first drawing doors + and then the corresponding border masks, but not vice versa + * fixed problem with artwork config entries using the value "[DEFAULT]"; + this does not what one might expect, but sets the value to an invalid + value -- solution: simply ignore such entries, which results in this + value keeping its previous (real) default value (in general, entries + that should use their default value should just not be defined here) + * fixed problem with wrong fading area size from main menu to setup menu + +2007-08-22 + * fixed problem with broken crumbled graphics after level set changes + when using R'n'D custom artwork with level sets using the EMC engine + +2007-05-07 + * fixed invisible "joysticks deactivated ..." text on setup input screen + +2007-04-27 + * added use of hashes created from static lists (element tokens, image + config, font tokens) to speed up lookup of configuration parameters + * fixed bug where element and graphic config token lookup was mixed up + +2007-04-26 + * added "busy" animation when initializing program and loading artwork + * added initialization profiling for program startup (debugging only) + +2007-04-25 + * fixed(?) very strange bug apparently triggered by memset() when code + was cross-compiled with MinGW cross-compiler for Windows XP platform + (this only happened when using SDL.dll also self-compiled with MinGW) + +2007-04-19 + * added graphics engine directive "border.draw_masked_when_fading" that + enables/disables drawing of border mask over screen that is just faded + +2007-04-18 + * fixed small problem with separate fading definition for game screen + +2007-04-14 + * added additional configuration directives for setup screen draw offset + menu.draw_xoffset.SETUP[XXX] and menu.draw_yoffset.SETUP[XXX] with XXX + in GAME, EDITOR, GRAPHICS, SOUND, ARTWORK, INPUT, SHORTCUTS_1, + SHORTCUTS_2, CHOOSE_ARTWORK, CHOOSE_OTHER (where "CHOOSE_ARTWORK" is + used to define draw offset on custom artwork selection screens and + "CHOOSE_OTHER" is used on all other list style selection screens, like + choosing game speed or screen mode for fullscreen mode) + * added additional configuration directives to define main menu buttons: + - menu.button_name and menu.button_name.active + - menu.button_levels and menu.button_levels.active + - menu.button_scores and menu.button_scores.active + - menu.button_editor and menu.button_editor.active + - menu.button_info and menu.button_info.active + - menu.button_game and menu.button_game.active + - menu.button_setup and menu.button_setup.active + - menu.button_quit and menu.button_quit.active + * added eight pure decoration graphic definitions for the game panel + +2007-04-08 + * added support for accessing native Diamond Caves II level packages + * fixed displaying of game panel values for Emerald Mine game engine + * fixed displaying end-of-level time and score values on new game panel + +2007-04-07 + * added game panel control to display arbitrary elements on game panel + * added game panel control to display custom element score (globally + unique for identical custom elements) either as value or as element + * added ".draw_masked" and ".draw_order" to game panel control drawing + +2007-04-05 + * fixed some general bugs with handling of ".active" elements and fonts + +2007-04-04 + * cleanup of game panel elements (some elements were not really needed) + * added displaying of gravity state (on/off) as new game panel control + * added animation for game panel elements (similar to game elements) + +2007-04-03 + * added new pseudo game mode "PANEL" to define panel fonts and graphics + - panel fonts now use ".PANEL" suffix instead of ".PLAYING" suffix + - panel graphics now use ".PANEL" suffix instead of ".DOOR" suffix + (else graphics would have to use ".PLAYING", which would be confusing) + * fixed bug when fading out to game screen with border mask defined + +2007-04-02 + * added attribute ".tile_size" for element style game panel controls + +2007-04-01 + * added key as additional valid key to use for confirm requester + +2007-03-31 + * improved menu fading, adding separate fading definitions for entering + and leaving a "content" screen (in general), and optional definitions + for the special "content" screens SCORES, EDITOR, INFO and PLAYING + +2007-03-30 + * added (currently invisible) setup option to define scroll delay value + * fixed small bug in priority handling when auto-detecting level start + position in levels without player element (but player from CE etc.) + * added option "game.forced_scroll_delay_value" to override user choice + of scroll delay value for certain level sets with "graphicsinfo.conf" + * replaced setup option "scroll delay: on/off" by new setup option that + directly allows selecting the desired scroll delay value from 0 to 8 + +2007-03-28 + * added displaying of most game panel control elements (not animated) + +2007-03-26 + * added new configuration directives to display additional game engine + values on the game control panel, like the following examples: + - game.panel.time_hh/time_mm/time_ss - level time in HH/MM/SS format + - game.panel.penguins - number of penguins to rescue + - game.panel.level_name - level name of current level + +2007-03-24 + * added support for preview tile sizes "1" and "2" (1x1 and 2x2 pixels) + +2007-03-23 + * added new player option "no centering when relocating" for "invisible" + teleportations to level areas that look exactly the same, giving the + illusion that the player did not relocate at all (this was the default + since 3.2.3, but caused visual problems with room creation in "Zelda") + * added new menu fading effect "melt", shamelessly stolen from "DOOM" + +2007-03-21 + * improved menu fading, adding separate fading definitions for entering + and leaving a menu and for fading between menu and "content" screens + * fixed small bug with recognizing also ".font_xyz" style definitions + +2007-03-20 + * improved menu fading, adding separate fading definitions for fading + between menu screens and fading between menu and "destination" screens + +2007-03-19 + * titlemessage_initial_x and titlemessage_x set to "[DEFAULT]" in static + configuration (set from "[titlemessage_initial]" and "[titlemessage]") + * fading settings of "[titlemessage_initial]" and "[titlemessage]" set + to "[DEFAULT]" in static configuration (set from "[title_initial]" and + "[title]") + * improved title fading, allowing fading animation types "none", "fade" + and "crossfade" (including cross-fading of last title to main menu) + +2007-03-18 + * added configurability of graphics, sounds and music for title screens, + which are separated into initial title screens (only shown once at + program startup) and title screens shown for a given level set; these + title screens can be composed of up to five title images and up to + five title text messages (each drawn using an optional background + image), also using background music and/or sounds; aspects like + background images, sounds and music of title screens can either be + defined generally (valid for all title screens) or specifically (and + therefore differently for each title screen) using these directives: + + to define a background image, sound or music file for all screens: + - background.TITLE_INITIAL (for all title screens for game startup) + - background.TITLE (for all title screens for level sets) + + to define a background image, sound or music file for a single screen: + - background.titlescreen_initial_x (with x in 1,2,3,4,5) + - background.titlescreen_x (with x in 1,2,3,4,5) + - background.titlemessage_initial_x (with x in 1,2,3,4,5) + - background.titlemessage_x (with x in 1,2,3,4,5) + + to define the title screen images: + - titlescreen_initial_x (with x in 1,2,3,4,5) + - titlescreen_x (with x in 1,2,3,4,5) + + to define the title text messages, place text files into the level set + directory that have the following file names: + - titlemessage_initial_x.txt (with x in 1,2,3,4,5) + - titlemessage_x.txt (with x in 1,2,3,4,5) + + to define the properties of the text messages, either use directives + that affect all text messages: + - [titlemessage_initial]. + - [titlemessage]. + or use directives that affect single text messages: + - titlemessage_initial_x. (with x in 1,2,3,4,5) + - titlemessage_x. (with x in 1,2,3,4,5) + + valid values for are the same as for readme. below; + use ".sort_priority" (default: 0) to define an arbitrary order for + title images and title messages (which can therefore be mixed) + +2007-03-14 + * added full configurability of "readme.txt" screen appearance: + - readme.x: + - readme.y: + - readme.width: + - readme.height: + - readme.chars: + - readme.lines: + - readme.align: left,center,right (default: center) + - readme.top: top,middle,bottom (default: top) + - readme.font: font name + - readme.autowrap: true,false (default: true) + - readme.centered: true,false (default: false) + - readme.parse_comments: true,false (default: true) + - readme.sort_priority: (not used here, but only for title screens) + when "readme.chars" and/or "readme.lines" is set to "-1" (this is the + default), they are automatically determined from "readme.width" and + "readme.height" accordingly; when they are not "-1", they have + precedence over "readme.width" and "readme.height" + * added internal ad-hoc config settings for displaying text files like + title messages or "readme.txt" style level set info files: + - .font: font name (default: readme.font) + - .autowrap: true,false (default: readme.autowrap) + - .centered: true,false (default: readme.centered) + - .parse_comments: true,false (default: readme.parse_comments) + (the leading '.' and the separating ':' are mandatory here); to use + these ad-hoc settings, they have to be written inside a comment, like + "# .autowrap: false" or "# .centered: true"; these settings then + override the above global settings (they can even be used more than + once, like "# .centered: true", then some text that should be drawn + centered, then "# .centered: false" to go back to non-centered text; + important note: after using "# .parse_comments: false", or when using + "readme.parse_comments: false", detecting and parsing comments inside + the file is disabled and comments are just printed like normal text; + also be aware that all automatic text size calculations are done with + the font defined in "readme.font", while using different fonts using + "# .font: " inside the text file may cause unexpected results + +2007-03-08 + * changed some numerical limits in the level editor from 255 to 999 + +2007-03-07 + * added option "system.sdl_videodriver" to select SDL video driver + * added output of SDL video and audio driver to "version info" page + +2007-03-06 + * added group element drawing to IntelliDraw drawing functions + * fixed animation resetting problem again (last try broke Snake Bite) + * fixed diagonal scrolling in screen scrolling (last try broke Pac Man) + +2007-03-01 + * added new (special) "include: " directive that works in all + configuration files (like "graphicsinfo.conf") and that has the same + effect as if that directive would be replaced with the content of the + specified file (this can be useful to split large configuration files + into several smaller ones and include them from one main file, or to + store configuration settings that always stay the same into a separate + file, while including it and only add those parts that really change) + +2007-02-24 + * fixed minor bug (screen redraw of player tiles) in EMC graphics engine + +2007-02-23 + * fixed bug in "InitMovingField()" where treating an integer array as + boolean caused wrong resetting of animations while elements are moving + * fixed problem with resetting animations when starting element change + 2007-02-08 * added sort priority for order of title screens and title messages