@@ -103,7 +103,11 @@ Editor:
103103 accuracy mistakes, resulting in slightly different values than the engine would use.
104104 - Fixed Editor refusing to open a project if one or more of the sections are missing in the file.
105105 - Fixed an unhandled exception occuring when rebuilding rooms if any script's header is missing.
106+ - Fixed a check for an imported room mask size did not correctly account for the room's
107+ mask resolution setting (it worked, but mishandled some edge cases).
106108 - Fixed a "unterminated string" error in Dialogs was not pointing to the actual error location.
109+ - Fixed translation compiler mistreating escaped opening bracket in a text line ("\[");
110+ it must keep it as-is, because "[" char is a old-style line break in AGS.
107111 - Fixed double warning message when trying to close the Editor while a game test is running.
108112 - Fixed Editor may display a "save project" confirmation when run with "/compile" command-line
109113 parameter.
@@ -132,6 +136,7 @@ Script API:
132136 - Added DateTime.CreateFromDate() and CreateFromRawTime().
133137 - Added static Dialog.CurrentDialog property and non-static ExecutedOption and AreOptionsDisplayed
134138 properties.
139+ - Added static Dialog.Stop() function, a OO-style alias to StopDialog().
135140 - Added RenderLayer enum, and optional "layers" parameter to DynamicSprite.CreateFromScreenShot(),
136141 that tells which of the game's render layers to capture when making a screenshot.
137142 - Added File.Copy() and File.Rename().
@@ -141,6 +146,8 @@ Script API:
141146 - Added File.GetFileTime() that returns file's modification time.
142147 - Added File.ReadFloat(), WriteFloat(), ReadRawFloat(), WriteRawFloat(), ReadRawBytes() and
143148 WriteRawBytes().
149+ - Added Game.InBlockingWait property, that tells whether game is waiting for any blocking action
150+ or a Wait* call to complete.
144151 - Added SaveGameSortStyle enum and Game.GetSaveSlots() function that returns a dynamic array
145152 of save slot indexes, optionally sorted in certain way.
146153 - Added Game.GetSaveSlotTime() that returns a time this save slot was last written.
@@ -165,6 +172,8 @@ Script API:
165172 - Added optional save slot range (min/max) parameters to RestoreGameDialog() and SaveGameDialog().
166173 - Added optional "sprite" parameter to SaveGameSlot(), that lets to pass a number of an arbitrary
167174 sprite to write into this save instead of a standard "screenshot".
175+ - Added optional "width", "height" and "layer" parameters to SaveScreenShot().
176+ SaveScreenShot() now accepts paths containing standard file tokens ($SAVEGAMEDIR$ etc).
168177 - Added SendEvent() function that allows to trigger "on_event" function calls in script.
169178 Special event value eEventUserEvent may be used as a base index for user-defined events.
170179 - Added System.DisplayFPS property that toggles FPS counter (a replacement to Debug(4, 1)).
@@ -215,6 +224,8 @@ Engine:
215224 dialog options are displayed. That will schedule dialog's stop to be performed after current
216225 script finishes.
217226 - Removed arbitrary limit of 2k bytes for the result of String.Format().
227+ - Engine will no longer quit with error if any object is assigned a non-existing sprite, but
228+ continue, using a sprite 0 as a placeholder instead.
218229 - Ensure that the objects with identical z-order (baseline) always keep same relative sort order
219230 when being drawn (note: engine does not guarantee a predefined order, only a persistent one).
220231 - Implemented video buffering on a separate thread. Allow to drop late video frames.
@@ -232,16 +243,31 @@ Engine:
232243 - Fixed Software renderer being unable to restore a windowed mode on certain monitors,
233244 when switching from a real fullscreen mode.
234245 - Fixed character may get stuck inside a non-walkable area after Character.WalkStraight().
246+ - Fixed character may rarely finish walking on a non-walkable pixel.
247+ - Fixed calling Character.StopMoving() after AddWaypoint() succeeded a regular Walk() call with
248+ eWalkableAreas parameter will wrongfully teleport the character to the nearest walkable area,
249+ even though AddWaypoint is supposed to ignore walkable areas.
250+ - Fixed a number of region or hotspot's "Stand on hotspot" events may unexpectedly run after a
251+ blocking character's walk, even if character is no longer standing on that region/hotspot.
235252 - Fixed Lucas-Arts style character speech displaying offscreen if character is standing below the
236253 bottom of a room viewport.
237254 - Fixed calling Dialog.Start() inside a dialog script would create a nested "dialog state",
238255 which could eventually lead to internal mistakes and program stack overflow. Dialog.Start()
239256 will now schedule a proper dialog topic switch, equivalent to "goto-dialog" command.
257+ - Fixed a AudioChannel did not report a correct Position right after a AudioClip.PlayFrom() call.
258+ - Fixed Button resizing to sprite 0 size if NormalGraphic is set to 0 (default button look).
259+ - Fixed object's look not updated after it was assigned a dynamic sprite, redrawn, sprite deleted,
260+ object redrawn without a sprite (used a placeholder), and then another dynamic sprite assigned
261+ with coincidentally the same number.
262+ - Fixed font outline index limited to 127 (although we theoretically support higher font numbers).
263+ - Fixed font outline parameters not initialized correctly if engine is built by a system that
264+ treats "char" as unsigned 8-bit type.
240265 - Fixed displaying room masks with Debug command in legacy "upscale" mode.
241266 - Fixed a potential lockup that may occur when the engine is run from the editor, and is told
242267 to stop at a breakpoint.
243268 - Fixed 48khz OGG clips may have extra silence added to them in the end, causing "hickups" when
244269 the sound playback is looped.
270+ - Fixed SDL log level was defaulting to "verbose" if not read from config (should be "info").
245271
246272Engine Plugin API:
247273 - Updated few callback and function prototypes in order to make them 64-bit compatible
@@ -256,6 +282,7 @@ Compatibility:
256282 - Fixed loading of games made in AGS 2.55-56 which include plugins.
257283 - Fixed loading of rare games made with AGS 2.5 or higher, which contained deprecated
258284 "room animations" (animations themselves are currently not functional).
285+ - Fixed old rooms with rare x3 resolution not displaying correctly.
259286 - Fixed old pathfinder imprecision affecting few pre-3.0 games.
260287 - Allow pre-2.7 games to have RestartGame() command be followed and overridden by a NewRoom().
261288 This is necessary for some older games to be able to proceed.
@@ -271,6 +298,8 @@ WinSetup:
271298 - Added "Accessibility" settings for skipping speech and text messages, for text reading speed.
272299 - In "disabled" section of config "access_skipstyle" setting lets disable all options in setup
273300 related to the speech and text skipping.
301+ - Fixed "Save and Run" command sometimes caused 2 engine processes, one of which terminated later.
302+ This did not prevent a game from running, but could result in temporary CPU and memory overload.
274303
275304---------------------------------------------------------------------------------------------------
276305
0 commit comments