Wait For SLADEScript(tm)? (New Beta)
Mon, Jul 31 2017
Update Aug 2 - Beta 4 is available which fixes a fairly major issue with beta 3, among other things
A new beta release for v3.1.2 is now available for download.
This beta introduces a fairly major new feature - scripting. This allows lua scripts to be written that can interact with SLADE and perform various functions. Some documentation for the types and functions that are available in scripts can be found here (the examples are a good place to start and see some things that are possible).
As the docs page says, this feature is still pretty WIP - I'd like to add a fair bit more functionality to it, and existing API details may change before 3.1.2 is released.
As for what else is new, here:
New Scripting Feature
- Added ability to run lua scripts to perform various functions in SLADE
- Added a new 'Script Manager' window for writing/running SLADE editor scripts. Available in the 'Tools' menu
script console command to run a lua script. Arguments are concatenated and separated by spaces, to allow entering something like:
script App.logMessage('This is a log message')
- Added ability to define 'Archive' scripts. These are added under the 'Archive -> Scripts' menu, selecting one will run the
execute function in the script, passing it the current archive. Custom archive scripts can be put in the
<user slade3 dir>/scripts/archive folder on disk (ability to create them in the script manager will come in the next beta)
- Added an option to control the behaviour of the directory archive external changes check:
- Always ignore changes
- Always apply changes
- Ask (previous behaviour)
- The 'Run' button in the run dialog is now the default button (so pressing enter will activate it)
- Updated the start page with a new look and layout, including some other new features:
- Shows the latest news post from the website if an internet connection is available
- Optional dark theme (Preferences -> Interface), which also applies to the online documentation
- The 'Update Available' alert will show on the start page if it is open
- Added 'View -> Start Page' menu item to the main window to show (or reopen) the start page
- Fixed a potential crash if timidity fails to launch
- Fixed a potential crash when sorting the entry list
- Added keybinds to comment and uncomment code (thanks @crisisinaptica)
/ will comment out the current or selected lines with line comments (eg.
//), or uncomment them if they are already commented out
/ works as above, but uses block comments (eg.
. is no longer counted as a 'word' character, so eg. double clicking to select a word will stop at any
. rather than including it
- Fixed issues with certain mouse actions not working when the map view lost focus
- Fixed a possible crash when deleting map objects/structures
- Fixed a possible crash when closing the map editor
- Fixed issues with 3d mode on MacOS with high-DPI displays (thanks @alexey-lysiuk)
- Fixed line flags in UDMF not using the correct names
SLADE v3.1.2 Beta 2 Released
Tue, Jun 06 2017
Not a whole lot of changes since beta 1, though some fairly major bugs have been fixed. See the changes below:
- Translations now work on truecolour images
- Added support for SiN archives
- Fixed an issue in the configuration files preventing some text entry formats being correctly detected
- Fixed crashing on exit
- Updated ZDoom UDMF configuration with new properties
- Various minor tweaks, fixes and improvements
- Fixed the sector and sidedef counts not resetting in the map preview
- Fixed duplicate 'save changes' prompts when clicking away from a modified entry in linux
- Fixed a crash when removing a patch from the patch table
- The shape draw options should now show up again during shape drawing
- Fixed a potential crash upon entering 3d mode
- Fixed 'Quick Thing Angle' feature spamming undo steps
First v.3.1.2 Beta Released
Wed, May 24 2017
Long long overdue, finally the first beta version of SLADE 3.1.2 is released. I had wanted to get a bit more done before releasing this (namely proper ZScript support), however that was proving much more complicated than I anticipated, so it's on hold for now.
3.1.2 has seen lots of changes over 3.1.1, which you can see a (somewhat condensed) list below:
- New and updated Eternity engine configurations (thanks @Altazimuth)
- Various speed improvements (thanks @Monsterovich and @anotak)
- Added support for vanilla-compatible tall gfx patches
- Lots of refactoring and changes under the hood to fix some long standing bugs and improve maintainability - will likely introduce new issues too but that's what beta releases are for
- Various minor UI tweaks and improvements
- (Very) Many other minor improvements and fixes
- Added basic pixel-editing tools in the gfx editor
- Multpile painting modes: draw, erase, translate
- Various brush shape presets, including dithered patterns
- Added new Palette Gradient tool (thanks @jmickle66666666)
- Added new Crop Gfx tool
- Palette colours can now be used in colourise/tint/translate tools (right click colour boxes for palette colour selection)
- Improvements to the gfx translation tool:
- Colourise and tint effects can now be used in colour remap
- Added a checkbox so that the translation string only reports palette ranges, regardless of which translation types are used
- Added metadata display for most audio types
- Added filter text box to texture list
- Added code folding feature, can fold code blocks (eg. between
}), preprocessor blocks (eg.
#endregion) and comment blocks.
- Added option to override the text editor font globally (rather than using what is defined in the style)
- Added a simple preview to the text editor styles preferences page
- Moved everything from the bottom TextEntryPanel toolbar to a new 'Text' entry menu (word wrap, jump to, find+replace)
- Indent guides and right margin line colours are now configurable
- Revamped the Find+Replace feature:
- Is now a panel that pops up below the text editor, so it doesn't get in the way of the text like the old dialog did
- 'Find Previous' button
- Extra matching options - match start of word, regular expression (isn't 'real' regex, but scintilla's version of it), and backslash expressions
- Can press enter while the find text is highlighted to find next (also shift+enter to find previous)
- When activated, the find text will be populated by either the current selection or the word under the cursor, and the 'find' text box will be focused and selected
- Added 'Jump to Line #' feature
- Vastly improved calltips:
- No longer look like something straight out of windows 95
- (Optionally) colourise function name and parameter types
- (Optionally) dim function parameters that are optional
- Limit width of calltips and split to multiple lines so they are less lilely to extend off the screen (they still can, though)
- Pressing escape while a calltip is open will close it
- Pressing up/down while a calltip with multiple function parameter sets is open will cycle through the sets (can also click on the up/down arrows as before)
- Corrected some issues where calltips would hang around when they shouldn't or not show up when they should
- Added ability to define function descriptions, which will show up in calltips
- Changed function config behaviour to override a previously defined function if another with the same name is encountered, rather than adding the new args as a set (so no more 2x identical arg sets for ACS_Execute, etc.)
- Comment, preprocessor and block start/end tokens are now configurable via TextLanguage
- Allow more word lists to be defined for syntax highlighting (added 'Type' and 'Property' word lists configurable via TextLanguage, in addition to the existing keyword/constant/function lists)
- Changed the 'Jump To' option/dialog to an auto-updating dropdown that is always showing on the top toolbar
- Added (optional) highlighting of all occurrences of the word under the cursor
- Added (optional) highlight for current line
- Added new styles for 'Comment (Doc)', 'Type', 'Property', 'Word Match' and 'Current Line'
- Created new SLADE default colour sets (light and dark) and an additional 'Material' colour set
- Fixed refresh issues with multi-line brace matching in windows
- Fixed text editor stealing focus from other controls (most noticeable in text controls - the cursor would show up in the wrong spot)
- String args are now shown in the info overlay
- Added Z height changes for things.
mousewheel will change thing height, floor/ceiling heights, and wall vertical offsets.
- Added floodfill. This pastes the texture to every adjacent texture. Default key is
middle click because that's the key in DB2/GZDB(BF), and because it's consistent with
left click for flood-select.
- Because of that, default key for simple paste texture has been changed to
- Added new map checks:
- Check for missing tagged objects
- Check for unknown line and thing specials
- Check for unknown sector types
- Check for obsolete things
- Added new 'Special Presets' feature for hexen and UDMF format maps - select from a list of pre-defined specials (currently generated from ZDoom's XLAT) for quickly setting args and activation trigger flags (custom presets support coming in a later beta)
Note that this version also has many under-the-hood changes which could potentially have caused some bugs to creep in, so be warned that some things may be broken that were fine before. Please report any issues on the issue tracker (or alternatively SLADE Discord or the ZDoom forums thread if you prefer).
I hope (yeah I know I keep saying this stuff :P) to have more rapid releases from now on, more than a year between major versions is too long. Also expect more rapid/minor beta releases as bugs are fixed etc before the final 3.1.2 release.
SLADE v18.104.22.168 Released, WinXP Support Returns (For Now)
Wed, Jan 18 2017
Another minor bugfix release for 3.1.1 is here, as usual you can see the changes over at the change log, and can download it at the downloads page.
On Windows XP Support
Since v22.214.171.124, SLADE has not run on Windows XP, which was due to the crash report sending feature introduced in that version. With v126.96.36.199 I have provided a Windows XP build that disables this feature, so it should run again.
Going forward, if another issue preventing SLADE from running on Windows XP crops up, I will not be implementing another workaround to correct it and at that point SLADE will no longer officially support Windows XP.
It is becoming increasingly difficult to keep XP compatibility while moving forward with modern development tools and libraries, not to mention the OS is no longer supported by Microsoft itself.
Now that a new stable release is out, I plan to get the first beta for 3.1.2 out fairly soon, which should include some kind of ZScript support.
As it's been so long since 3.1.1 and the planned features for 3.1.2 aren't even half done yet, I think some of the map editing features planned for it will need to be pushed back, unfortunately. There are already other good map editors around but not much else for resource editing, so I will likely be focusing on that side of SLADE for the next few versions at least.
Of course, that doesn't mean the map editor will be neglected - often new features are implemented depending on what I feel like doing at the time rather than what I think is most important, SLADE is a hobby project after all :P
SLADE v188.8.131.52 Released
Mon, Sep 26 2016
Here's another minor release, with mostly bug fixes - including a pretty bad one on macOS. For a full list of changes see here.