Fixed, Script Editor: in some cases clicking on an error in the errors list didn't navigate to the error location.
Fixed, Script Editor: in some cases incorrect error line number was shown.
Fixed, Text lump parsers: fixed a crash when trying to get a filename from a quoted string with missing closing quote.
Fixed, Text lump parsers: in several cases parsing errors were ignored by overlaying data structures.
Fixed: in some cases Thing Filter thing flags were cleared when switching game configurations in the "Game Configurations" window.
Changed, PK3 reader: loading of files with invalid path chars is now skipped instead of skipping loading of the whole resource. Also more helpful warning message is now displayed.
Updated SharpCompress library to v.0.11.2.0.
Internal, Renderer2D.RenderArrows(): only visible lines are now rendered.
Internal, API: renamed public Line3D properties: v1 to Start, v2 to End, color to Color, renderarrowhead to RenderArrowhead.
Added: Tab text now looks differently when appropriate script was changed.
Added: Script Editor now has it's own status bar.
Added: several files can now be opened at once when using "Open File" command.
Added: ACS scripts navigator now shows script and function arguments.
Changed: when closing a tab, previous tab is selected instead of the first tab.
Changed: SCRIPTS lump can't be compiled as a library.
Changed: external acs files can only be compiled as libraries.
Changed: when an external acs file is marked as #library, it will be saved as [library name].o alongside [filename].acs.
Fixed: files opened using "Open File" command were immediately flagged as changed.
Fixed: Script Editor was unable to navigate to error location after clicking on the error description when the error was in include file.
Updated ZDoom ACC.
MODELDEF support: model frame number / frame name are now taken into account when loading MD2 models.
Compiling: changed the way /LARGEADDRESSAWARE flag is applied so it works when building using VS and batch files.
Changed, ACC compiler: when building includes list, the compiler no longer tries to find/copy include files defined in current script configuration (previously it was hardcoded to skip "zcommon.acs" and "common.acs" only).
Fixed, Visual mode: things with Additive RenderStyle were rendered as additive only when their alpha was less than 1.0.
Added "Paste Properties Special" actions in "Classic" and "Visual" categories. They work the same way as "Paste Special" action.
Added: "Copy Properties", "Paste Properties" and "Paste Properties Special" options are now shown in the Edit menu if current classic mode supports them.
Changed, Paste Properties Special window: only options relevant to current map format are now displayed.
Changed, Paste Properties Special window, UDMF: all UI-managed options are now available.
Fixed: MAPINFO parser was unable to process "include" directives.
Fixed, General interface: selection info was reset to "Nothing selected" after few seconds regardless of current selection.
Fixed, Visual mode: thing bounding boxes were not updated when changing things positions using Randomize mode.
Fixed, Visual mode: event lines were displayed at incorrect height when entering Visual mode for the first time.
Fixed, Texture Browser window: when MixTexturesFlats Game Configuration option is disabled, textures/flats are no longer shown in the Used group when flats/textures with the same names are used in the map.
Fixed(?): probably fixed an exception some users reported when trying to initialize a Classic mode after switching from Visual mode with "Sync cameras" option enabled.
Changed, Game configurations, Thing Categories: a block must have at least one thing category property to be recognized as a thing category.
Changed, Visplane Explorer: the plugin now outputs more info when it fails to initialize vpo.dll.
Cosmetic, Thing Edit window, Doom/Hexen map format: adjusted UI layout so thing flags control no longer displays scrollbars in Hexen map format.
Internal: merged methods from UDMFTools into UniFields, removed UDMFTools.
Updated Inno Setup script (added VC++ 2008 SP1 distributive).
Updated ZDoom_DECORATE.cfg (A_CheckBlock).
Updated documentation (added "System Requirements" page).
Visual mode: fog distance calculation is now much closer to GZDoom one.
Visual mode: thing brightness calculation when a thing is affected by floor glow is now much closer to GZDoom one.
Linedef edit window, UDMF: added "Reset front/back brightness" buttons.
Sector edit window, UDMF: added "Reset ceiling/floor brightness" buttons.
Internal, Visual mode, Things mode: persistent event lines are now updated only when map objects are changed instead of doing it on every display redraw.
Internal: improved Dictionary lookup times when using map objects and textures as keys.
Internal: added "Release + Profiler" solution configuration.
Updated ZDoom_ACS.cfg (Warp).
High-DPI: fixed many issues with incorrect controls size (Tag selector width, Comment Editor size, icons size, tabs size etc.).
Cosmetic: changed map geometry dragging undo messages to more descriptive ones.
Fixed, Textures Browser, cosmetic: "Show textures in subdirectories" checkbox should be repositioned when "Long texture names" one is invisible.
Updated ZDoom_DECORATE.cfg (added A_SetFloatSpeed + a couple of fixes).
Changed: OS name, GPU name and GZDB revision info are now added to the exception text and GZCrash.log.
Fixed, cosmetic: toolstrip separators visibility must be updated when resizing the main window.
Internal: removed Plug.DisplaySize, Plug.DisplayLocationAbs and Renderer.ViewportSize. The same data can be accessed from anywhere using General.Interface.Display.Size and General.Interface.Display.LocationAbs. Also Plug.DisplayLocationAbs returned incorrect coordinates...
Removed, Texture Browser: removed "Show image sizes" checkbox. "Show texture and flat sizes in browsers" preferences setting is now used instead.
Fixed, Things mode: event line between pre-last and the last PatrolPoint was not drawn.
Fixed, Things mode: highlight range for sizeless things (things with "fixedsize" game configuration property) was calculated incorrectly.
Fixed: fixed a crash when opening Script Editor after using "Open map in current wad" command to switch to UDMF map with SCRIPTS lump when current script configuration was not saved in the wad's .dbs file.
Fixed: map closing events were not triggered when using "Open map in current wad" command, which could potentially result in plugin crashes/incorrect behavior.
Fixed: Sector Drawing overrides panel could trigger an exception when closing the map during resource loading.
Internal: added "Debug + Profiler" solution configuration, added 2 profiling methods to DebugConsole.
Internal: rewrote MainForm.DisplayStatus() / StatusInfo to handle selection info in a more structured way.
Fixed, internal: some destructors could potentially be executed more than once potentially leading to exceptions. Other destructors were not called at all.
Updated ZDoom_DECORATE.cfg.
Changed, Visual mode: changed thing fog calculation logic. Should be closer to GZDoom now.
Fixed, GLDEFS parser: "height" texture parameter was not treated as optional.
Fixed, text lump parsers: in some cases incorrect line number was displayed in error and warning messages.
Fixed, Visual mode: glow effect was not applied to sectors with 3 sidedefs.
Fixed, Visual mode: in some cases glow effect was not updated when replacing textures.
Fixed, general interface: "Full Brightness" button state was not updated during map loading.
Fixed, Drag Linedefs/Vertices/Sectors/Things modes: positions of line length labels were not updated while panning the view.
Cosmetic: added a bunch of new icons.
Cosmetic: changed Visual mode crosshair.
Changed, General interface: all main menu toolbars are now visible when starting the editor for the first time.
Changed, General interface: "Prefabs" and "Edit" menus are now hidden when no map is loaded.
Changed, General interface: moved "Dynamic Grid Size" menu item to the "Edit" menu, also moved the button to the matching position on the toolbar.
Changed, General interface: changed "Show Comments" menu item position in the "View" menu, also moved the button to the matching position on the toolbar.
Game configurations: removed "gamedetect" block, because it was unused by the editor.
Updated documentation ("Map Format Settings" page).
Game configurations: removed "GZDoom only" from FraggleScript actions (because FraggleScript can be used in ZDoon).
Internal: fixed a couple of bugs in DebugConsole.StopTimer();
Added, Things mode: the editor will try to reconnect the path when deleting InterpolationPoints and PatrolPoints.
Internal: RenderArrows method now works the same way in Renderer2D and Renderer3D.
Internal: Line3D now has "renderarrowhead" property.
Linedef Color Presets: Linedef Color Presets can now be disabled.
Things Filters window: a warning icon is now displayed near the filter name in the filters list when the filter has no usable settings.
Change Map in Current WAD window: keyboard focus was not set to initially selected item.
Changed the default wad filename from "unnamed.wad" to "[map name].wad".
Updated documentation ("Custom linedef colors" page).
Changed, Linedef/Thing Info panel: when displaying a linedef/thing with an ACS special, which uses a script with arguments, appropriate action argument names are replaced with script argument names.
Changed, Sector/Linedef/Thing Edit windows, Comments tab: window is no longer closed when pressing Enter while editing a comment. Newline is inserted instead.
Changed: Script Editor window is now toggled to normal state when pressing "Show Script Editor" button if said window was already open, but minimized.
Fixed: in some cases action arguments were not cleared during setup when displaying multiple map elements with mixed argument values.
Internal: added ArgumentsControl.
General interface: selection info is now always displayed.
Visual mode: you can now hold Alt-Shift or Ctrl-Alt while selecting sidedefs to stop selecting connected sidedefs when already (un)selected sidedef is encountered.
Added, Numeric Textbox: you can now use "+++" and "---" prefixes to incrementally increase or decrease result values by given value.
Fixed, Numeric Textbox: fixed a potential divide by zero exception when using "/" prefix in numeric textboxes with decimal input enabled.
Fixed, Thing Info panel: relative z position of things with "+SPAWNCEILING" flag was incorrect.
Changed: Update checker now displays messages using MessageBoxes when called manually.
Map Analysis: changed result descriptions for Unknown Texture and Missing Texture checks.
Doom map format: renamed "Secret" linedef flag to "Shown as 1-sided on automap".
Updated ZDoom_DECORATE.cfg (A_RadiusGive stuff).
Fixed, Classic modes: MODELDEF model scale was not taken into account when calculating model visibility, which resulted in models with increased scaled disappearing when near screen edges.
Changed, Classic modes: increased maximum zoom level to 9000% (was 3000%).
Added, General interface: added "800%" zoom level to the bottom toolbar zoom menu.
Added, General interface: added "400%" and "800%" zoom levels to "View -> Zoom" menu.
MAPINFO: added "DoomEdNum" and "SpawnNums" blocks support.
MAPINFO: added "#include" directive support.
MAPINFO: added "$gzdb_skip" special comment support.
DECORATE: "spawnthing" Game Configuration block is now updated using "SpawnID" actor property.
Game configurations: added "class" property to the most of ZDoom things.
Actions: removed "Reload MAPINFO" action.
Documentation: merged "GLDEFS and MODELDEF support", "(Z)MAPINFO support" and "TEXTURES support" topics into "(G)ZDoom text lumps support", added info about the other text lumps GZDB can use.
Added, Visual mode, UDMF: added "Increase Scale" and "Decrease Scale" actions.
Added, Visual mode, UDMF: "Reset Texture Offsets" action now resets scale when used on things.
Added, Visual mode, UDMF: "Reset Local Texture Offsets" action now resets scale, pitch and roll when used on things.
Changed, Visual mode, UDMF: "Reset Texture Offsets" action now only resets texture offsets (previously it also reset texture scale).
Changed, Visual mode, UDMF: "Reset Local Texture Offsets" action now resets texture offsets, scale and brightness of sidedefs and also rotation of floors/ceilings.
Changed, Visual mode, UDMF: thing box arrow now displays pitch and roll for things, which have attached model and appropriate MODELDEF flags.
Changed, Thing Edit Form, UDMF: negative pitch and roll can now be entered.
Updated documentation.
Changed, Numeric textboxes: trailing zeros are no longer displayed to reduce visual noise.
Fixed, paired numeric controls: in some cases culture-specific decimal separator was not used.
Fixed, map loading: inability to initialize D3D device is now handled a bit more gracefully.
Fixed, main toolbar context menu: we should suppress context menu closing only when user clicks on a menu item while holding Shift key.
Fixed, Game configurations: several Skulltag things were not included in many Zandronum game configurations.
Event lines: added event lines for polyobject anchor -> polyobject start spot pairs.
Fixed, Things mode: event lines were not drawn after finishing panning.
Fixed, Visual mode, UDMF: sector geometry cache was not updated after using "Match Brightness" and "Change Brightness" actions on ceilings, so the changes made by them were not visible when using Classic modes in "View Ceiling Textures" mode.
Fixed, Visual mode, UDMF: "Match Brightness" and "Change Brightness" actions set brightness incorrectly in some cases.
Fixed: ACS script names gathering logic was unable to process relative #include and #import paths (like '#import "..\acs\qtilt.acs"').
Updated ZDoom_DECORATE.cfg.
Fixed, long texture names support: in some cases long texture names were not processed correctly when pasting map geometry.
Fixed, Visual mode: in some cases combined sidedef brightness was calculated incorrectly. Also, MAPINFO FadeColor and OutsideFogColor properties are now taken into account.
Hexen_linedefs.cfg: "Door Raise" and "Door Locked Raise" used incorrect enums for "Close Delay".
Moved stuff around a bit in PK3Reader. Will it fix random crashes? I dunno, a least I was no longer able to trigger them...
Recompiled SharpCompress library using VS 2008, so it no longer references .net 4.0 stuff. Will it fix random crashes? See above.
Changed: Thing Browser Form is now resizeable.
Changed: made default Texture Browser Form size smalled, so it properly fits the screen when using low display resolution.
Internal: changed the way apppath is acquired. It should no longer fail when launching the editor from a shared network folder.
Main Form: changed some labels of dynamic light and model rendering selectors to be less confusing.
Updated ZDoom_DECORATE.cfg.
Fixed: PairedFloatControl had incorrect initial link icon.
Internal, AngleControl: rewritten AngleChanged event so it behaves like the rest of custom events.
Updated GZDB icon.
Visual mode: removed "Fit Texture's Width" and "Fit Texture's Height" actions.
Visual mode: "Auto-align texture offsets" actions were incorrectly aligning double-sided middle walls in some cases.
Visual mode: "Auto-align texture offsets" actions now align non-wrapped double-sided middle walls to vertical offset closest to their initial vertical offset.
Visual mode: middle parts of double-sided walls were ignored when Shift-selecting walls.
Nodebuilders/Game configurations: GL nodes definitions were missing from game configurations.
Nodebuilders/Game configurations: "~MAP" wildcard can now be a part of a lump name.
Nodebuilders: GL nodes were not properly handled by the editor.
Main Window: the window is now moved into the view when stored position is ouside of screen bounds.
Classic and Visual modes: changing thing pitch was ignored in some cases.
Visual mode: raising and lowering a thing with "+SPAWNCEILING" flag now works the same way as when raising/lowering a regular thing.
Visual mode: using "Raise/Lower Floor/Ceiling to adjacent sector" actions on a thing with "+SPAWNCEILING" flag now works the same way as when using them on a regular thing.
Rendering: even more fixes to MODELDEF and UDMF properties-related model rendering logic.
Internal, ResourceListEditor: rewritten resource validation check in a more OOP-ish way.
Configurations: fixed an infinite loop crash when a file was trying to include() itself.
UDMF thing flags: added Skill 6-8 to the flags list (because there are thing filters for these).
ZDoom_ACS.cfg: added definitions for SetTeleFog and SwapTeleFog.
ZDoom_DECORATE.cfg: added definitions for A_SetTeleFog and A_SwapTeleFog.
Updated ZDoom ACC.
Updated documentation.
Bit Flags form now changes width to show flags with long names without scrolling.
Bit Flags form: flag numbers are now shown as well as names.
Game configurations: updated Hexen and ZDoom linedef definitions. Now they (hopefully) fully match ZDoom ones.
Action Selector Control: fixed a crash when trying to increase action above maximum value using mouse wheel.
Sector/Linedef/Thing tag lists are now handled by corresponding TypeHandlers (and not by dirty hacks as before).
Linedef info panel: line peggedness labels were obscured by effect label in Doom/Hexen map formats.
Fixed, Texture Browser Form: well, I broke "Tab" key functionality again (in previous commit)...
Maintenance: changed curly braces style to match DB2 one (hopefully not breaking anything in the process...).
Maintenance: changed private method names casing to match DB2 one.
Open Map in Current WAD: resources are now reloaded when current and target map's resources don't match.
Added some boilerplate to UniversalParser and PK3FileImage.
Internal: ImageSelectorControl now has "UsePreviews" property.
Internal: added ConfigurablePictureBox.
Updated ZDoom_DECORATE.cfg.
Thing Edit form: when selection contains more than one thing, thing types form selected category are now randomly applied to it.
Fixed, Thing Edit form: selection change was not processed in some cases.
Changed, Thing Edit form: multi-select mode is now disabled when only one thing is edited.
Internal: different implementation of MultiSelectTreeview (http://sourceforge.net/projects/mstreeview/) is now used.
Fixed, DECORATE parser: error status was not cleared when switching to different resource.
Fixed, DECORATE parser: fixed a parse error when DB2-specific actor properties (like "//$category") were located outside of actor's scope.
Added icons for "Save Screenshot" menu items.
Development: "Save Screenshot (active window)" action will work on a child Form only if it is inherited from DelayedForm.
Renamed "Toggle dynamic lights rendering" action to "Show dynamic lights".
Changed: "Show dynamic lights" action now toggles between available dynamic light rendering modes.
Renamed "Toggle models rendering" action to "Show models".
Changed: "Show models" action now toggles between available model rendering modes.
Removed "Toggle dynamic lights animation" and "Render selected/all models" actions.
Fixed, Randomize Sectors form: selection highlight was not updated after applying the changes when the form was shown in Sectors mode.
Consistency: selection is now cleared after applying changes done in Randomize Things and Randomize Vertices forms.
Fixed, Classic modes: sprites of things with attached models were not rendered when model rendering was disabled.
Updated documentation.
Visual mode: "Lower/Raise Floor/Ceiling" actions now work on surfaces with sector slopes.
Cosmetic: numeric textboxes, which support relative values, now have differently colored text and a tooltip.
Internal: renamed Sector.CeilingSlopeOffset to Sector.CeilSlopeOffset, Sector.CeilingSlope to Sector.CeilSlope to match their names with similar sector properties.
Textures Browser form: PK3/Directory TEXTURES images are now shown in a separate folder in the resources tree.
Fixed, Textures Browser form: fixed a logic error when trying to select initial flat when mix textures & flats was disabled in the current game configuration (this resulted in the blank textures list after opening the form).
Fixed, Textures Browser form: resources tree showed textures count even when browsing flats.
Fixed, Textures Browser form: PK3/Directory textures took precedence even when browsing flats (this means when there were a flat and a texture with the same name, a texture was displayed when browsing flats).
Fixed, Classic modes: actor's scale set in DECORATE was ignored when rendering models.
Fixed, MODELDEF parser: in some cases, several model definitions were skipped when trying to skip the current one.
Fixed, resource management: flat and sprite TEXTURES definitions were loaded only from TEXTURES files named "TEXTURES".
Fixed/added, PK3/folder resource management: patch locations for sprites defined in TEXTURES are now checked the same way as in ZDoom (previously only the "sprites" folder was checked).
Fixed/added, PK3/folder resource management: patch locations for textures defined in TEXTURES are now checked the same way as in ZDoom (previously only the "textures" folder was checked).
Fixed, PK3/folder resource management: flats defined in TEXTURES were not added to the global Flats image list.
Fixed, PK3/folder resource management: in some cases, the image search algorithm could find flats, textures, patches or sprites in incorrect folders (for example, it could find a flat in "flats_backup" folder).
The editor will fail more gracefully when no D3D device is detected.
In some cases the editor was constantly checking D3D device availability when minimized.
Added more DX-related debug output (only in Debug builds).
Map Analysis mode: export to file command will now show "Save File" dialog instead of putting the file in the same folder as the map, also added some boilerplate.
Tag Explorer plugin: save to file command will now show "Save File" dialog instead of putting the file in the same folder as the map, also added some boilerplate.
Internal: reformatted GZCrash.log a bit.
Also, I would like to use this opportunity to thank Siberian Tiger from DTD Team for helping me with SVN builds for more than two years. You made my constant wrestling with the code a much less tedious process.
Internal: UDMF sector slopes and offsets are no longer stored in sector.Fields. Use sector.FloorSlope, sector.FloorSlopeOffset, sector.CeilingSlope and sector.CeilingSlopeOffset.
BCC script compiler (https://github.com/wormt/bcc/) is now bundled with GZDB.
Main Form, "File" menu: only existing files are now added to the "recent files" list.