3.6.3 is a minor update that contains mostly features that did not end up in 3.6.2 due to time constraints. These are few improvements to the Editor UI, and additions to the script API which expose previously hardcoded data that was not available in script, or data that was inconvenient to access.
It also adds game saves compression, which significantly reduces sizes of saves made by big games.
Changes in 3.6.3 - Beta 1:
Editor:
- In General Settings added "GUI common controls handle only left mouse button" option that lets prevent RMB from activating gui controls, except those that have separate actions for left and right mouse buttons.
- In Default Setup added "Compress saves" option, enabled by default.
- For the Fonts added CharacterSpacing property that lets define additional spacing between each pair of characters.
- In Project Explorer added context menu command "Go to X" for each applicable item type, which lets to find an item by its numeric ID.
- Redesigned Font Preview panel. Now the table of glyphs displays all the characters present in the font and lets jump to a chosen character. Added text preview, where user may input any multiline text and see it printed with the current font.
- Font Preview and GUI Editor now display fonts with their respective outlines.
- In View Editor added context menu commands for copying, cutting and pasting individual frames and frame ranges; commands for reversing a range of frames, and reversing loop.
Script API:
- Added new game-wide option OPT_GUICONTROLMOUSEBUT that defines whether common GUI controls are affected by the right mouse button or not (InventoryWindows are excluded from this, because they have their own special handling for RMB).
- Added GameInfo struct that contains meta-information about the game, such as developer's name, developer's URL, version, and so forth.
- Added DialogOptionsNumbering enum, to use when setting dialog options numbering mode.
- Added multiple new properties to Dialog type: OptionsBulletGraphic, OptionsFont, OptionsGap, OptionsGUI, OptionsGUIX, OptionsGUIY, OptionsHighlightColor, OptionsMaxGUIWidth, OptionsMinGUIWidth, OptionsNumbering, OptionsPaddingX, OptionsPaddingY, OptionsReadColor, OptionsTextAlignment.
Most of these are replacing previously existing old-style variables in "game" struct and OPT_* options. OptionsFont, OptionsGUIX/Y and OptionsTextAlignment are completely new features. - Added RestoredSaveInfo.GameVersion property that lets read the value of "Game Version" that was set at the time this save was made (applies only for saves made in 3.6.3 and higher).
- Added number of readonly properties to TextWindowGUI which return respective border graphics: LeftGraphic, RightGraphic, and so forth.
- Added VideoPlayStyle enum, PlayVideo() now uses VideoPlayStyle as "flags" argument.
Engine:
- Support compressing game saves using Deflate (aka zip) algorithm. Added config option "compress_saves" in "misc" section, enabled by default.
- Always compress a screenshot in game save using Deflate (aka zip) algorithm.
- ListBoxes do not unconditionally select the first item as soon as one is added (or when the list is filled with files or saves). The selection has to be explicitly set using SelectedIndex property.
- Standard Dialog options now support Right-to-left text mode.
- Improved video playback's synchronization between video and audio streams.
- Engine does not quit with error when DrawImage is called with a non-existant sprite, only logs a warning.
Compatibility:
- Don't use alpha channel when drawing textwindow gui in pre-3.* games.
WinSetup:
- Renamed "Custom Paths" tab to "Game Files", added "Compress saves" option.