2015-09-24 23:47:13 -06:00
.. comment
This is the changelog file for DFHack. If you add or change anything, note
it here under the heading "DFHack Future", in the appropriate section.
2015-09-26 00:50:02 -06:00
Items within each section are listed in alphabetical order to minimise merge
conflicts. Try to match the style and level of detail of the other entries.
2015-09-24 23:47:13 -06:00
2016-12-14 10:56:54 -07:00
This file should not contain details specific to prereleases, but it should
contain changes from previous stable releases. For example, if a bug was
introduced in one alpha version and fixed in another, do not include it
here.
2015-10-18 21:59:35 -06:00
Sections for each release are added as required, and consist solely of the
following in order as subheadings::
2017-04-23 15:13:59 -06:00
New [Internal Commands | Plugins | Scripts | Tweaks | Features]
2015-10-18 21:59:35 -06:00
Fixes
Misc Improvements
Removed
2017-12-23 20:09:09 -07:00
Internals
Lua
Ruby
2015-10-18 21:59:35 -06:00
When referring to a script, plugin, or command, use backticks (`` ` ) to
create a link to the relevant documentation - and check that the docs are
still up to date!
2015-11-07 18:28:16 -07:00
When adding a new release, change "DFHack future" to the appropriate title
before releasing, and then add a new "DFHack future" section after releasing.
2016-03-16 06:38:01 -06:00
.. _changelog:
2015-10-18 21:59:35 -06:00
2015-09-27 19:11:11 -06:00
#########
Changelog
#########
.. contents ::
2015-10-19 20:29:46 -06:00
:depth: 2
2015-09-27 19:11:11 -06:00
2017-12-07 12:43:27 -07:00
DFHack future
=============
2017-12-23 20:08:04 -07:00
New Scripts
-----------
- `devel/check-other-ids` : Checks the validity of "other" vectors in the
`` world `` global
- `gui/cp437-table` : An in-game CP437 table
Fixes
-----
- Fixed issues with the console output color affecting the prompt on Windows
- `createitem` : stopped items from teleporting away in some forts
- `gui/gm-unit` : can now edit mining skill
- `gui/quickcmd` : stopped error from adding too many commands
Misc Improvements
-----------------
- The console now provides suggestions for built-in commands
- `devel/export-dt-ini` : avoid hardcoding flags
- `exportlegends` :
- reordered some tags to match DF's order
- added progress indicators for exporting long lists
- `gui/gm-editor` : added enum names to enum edit dialogs
- `gui/gm-unit` : made skill search case-insensitive
2017-12-29 21:36:43 -07:00
- `gui/pathable` : added tile types to sidebar
2017-12-23 20:08:04 -07:00
- `gui/rename` : added "clear" and "special characters" options
2017-12-29 21:36:43 -07:00
- `modtools/skill-change` :
- now updates skill levels appropriately
- only prints output if `` -loud `` is passed
2017-12-23 20:08:04 -07:00
- `remotefortressreader` : includes item stack sizes and some performance improvements
Removed
-------
- `warn-stuck-trees` : the corresponding DF bug was fixed in 0.44.01
2017-12-07 12:43:27 -07:00
2017-12-23 20:09:09 -07:00
Lua
---
- Added a new `` dfhack.console `` API
- Exposed `` get_vector() `` (from C++) for all types that support `` find() `` ,
e.g. `` df.unit.get_vector() == df.global.world.units.all ``
2017-12-26 10:52:18 -07:00
- Improved `` json `` I/O error messages
- Stopped a crash when trying to create instances of classes whose vtable
addresses are not available
2017-12-23 20:09:09 -07:00
2017-11-23 14:34:28 -07:00
DFHack 0.43.05-r3
=================
Internals
---------
- Fixed an uncommon crash that could occur when printing text to the console
- Added lots of previously-missing DF classes
- More names for fields: https://github.com/DFHack/df-structures/compare/0.43.05-r2...0.43.05
Fixes
-----
- Linux: fixed argument to `` setarch `` in the `` dfhack `` launcher script
- Ruby: fixed an error that occurred when the DF path contained an apostrophe
- `diggingInvaders` now compiles again and is included
- `labormanager` :
- stopped waiting for on-duty military dwarves with minor injuries to obtain care
- stopped waiting for meetings when participant(s) are dead
- fixed a crash for dwarves with no cultural identity
- `luasocket` : fixed `` receive() `` with a byte count
- `orders` : fixed an error when importing orders with material categories
- `siren` : fixed an error
- `stockpiles` : fixed serialization of barrel and bin counts
- `view-item-info` : fixed a `` CHEESE_MAT `` -related error
Misc Improvements
-----------------
- `devel/export-dt-ini` : added more offsets for new DT versions
- `digfort` : added support for changing z-levels
- `exportlegends` : suppressed ABSTRACT_BUILDING warning
- `gui/dfstatus` : excluded logs in constructions
- `labormanager` :
- stopped assigning woodcutting jobs to elves
- "recover wounded" jobs now weighted based on altruism
- `remotefortressreader` : added support for buildings, grass, riders, and
hair/beard styles
2017-07-12 17:00:24 -06:00
DFHack 0.43.05-r2
=================
Internals
---------
- Rebuilding DFHack can be faster if nothing Git-related has changed
- Plugins can now hook Screen::readTile()
- Improved Lua compatibility with plugins that hook into GUI functions (like TWBT)
- Expanded focus strings for jobmanagement and workquota_condition viewscreens
- `` Gui::getAnyUnit() `` : added support for viewscreen_unitst,
viewscreen_textviewerst, viewscreen_layer_unit_relationshipst
- Fixed (limited) keybinding support in PRINT_MODE:TEXT on macOS
- Added a new standardized `` Gui::refreshSidebar() `` function to fix behavior of
some plugins on the lowest z-level
- New `` Buildings `` module functions: `` markedForRemoval() `` , `` getCageOccupants() ``
- Limited recursive command invocations to 20 to prevent crashes
- Added an `` onLoad.init-example `` file
Lua
---
- Improved C++ exception handling for some native functions that aren't direct
wrappers around C++ functions (in this case, error messages could be nil and
cause the Lua interpreter to quit)
- Added support for a `` key_pen `` option in Label widgets
- Fixed `` to_first `` argument to `` dfhack.screen.dismiss() ``
- Added optional `` map `` parameters to some screen functions
- Exposed some more functions to Lua:
- `` dfhack.gui.refreshSidebar() ``
- `` dfhack.gui.getAnyUnit() ``
- `` dfhack.gui.getAnyBuilding() ``
- `` dfhack.gui.getAnyItem() ``
- `` dfhack.gui.getAnyPlant() ``
- `` dfhack.gui.getDepthAt() ``
- `` dfhack.units.getUnitsInBox() ``
- `` dfhack.units.isVisible() ``
- `` dfhack.maps.isTileVisible() ``
- `` dfhack.buildings.markedForRemoval() ``
- `` dfhack.buildings.getCageOccupants() ``
- `` dfhack.internal.md5() ``
- `` dfhack.internal.md5File() ``
- `` dfhack.internal.threadid() ``
- New function: `` widgets.Pages:getSelectedPage() ``
- Added a `` key `` option to EditField and FilteredList widgets
- Fixed an issue preventing `` repeatUtil.cancel() `` from working when called
from the callback
Ruby
----
- Fixed a crash when creating new instances of DF virtual classes (e.g. fixes a
`lever` crash)
- Ruby scripts can now be loaded from any script paths specified (from script-
paths.txt or registered through the Lua API)
- `` unit_find() `` now uses `` Gui::getSelectedUnit() `` and works in more places
(e.g. `exterminate` now works from more screens, like `command-prompt` )
New Internal Commands
---------------------
- `alias` : allows configuring aliases for other commands
New Plugins
-----------
- `orders` : Manipulate manager orders
- `pathable` : Back-end for `gui/pathable`
New Scripts
-----------
- `clear-smoke` : Removes all smoke from the map
- `empty-bin` : Empty a bin onto the floor
- `fix/retrieve-units` : Spawns stuck invaders/guests
- `fix/stuck-merchants` : Dismisses stuck merchants that haven't entered the map yet
- `gui/pathable` : View whether tiles on the map can be pathed to
- `gui/teleport` : A front-end for the `teleport` script
- `warn-stuck-trees` : Detects citizens stuck in trees
New Tweaks
----------
- `tweak` burrow-name-cancel: Implements the "back" option when renaming a
burrow, which currently does nothing (:bug: `1518` )
- `tweak` cage-butcher: Adds an option to butcher units when viewing cages with "q"
Fixes
-----
- Enforced use of `` stdout.log `` and `` stderr.log `` (instead of their `` .txt ``
counterparts) on Windows
- Fixed `` getItemBaseValue() `` for cheese, sheets and instruments
- Fixed alignment in:
- `` viewscreen_choose_start_sitest ``
- `` viewscreen_export_graphical_mapst ``
- `` viewscreen_setupadventurest ``
- `` viewscreen_setupdwarfgamest ``
- `adv-max-skills` : fixed error due to viewscreen changes
- `autolabor` : fixed a crash when assigning haulers while traders are active
- `buildingplan` : fixed an issue that prevented certain numbers from being used
in building names
- `confirm` :
- dialogs are now closed permanently when disabled from the settings UI
- fixed an issue that could have prevented closing dialogs opened by pressing "s"
- `embark-tools` : stopped the sand indicator from overlapping dialogs
- `exportlegends` : fixed some crashes and site map issues
- `devel/find-offsets` : fixed `` current_weather `` scan
- `gui/extended-status` : fixed an error when no beds are available
- `gui/family-affairs` : fixed issues with assigning lovers
- `gui/gm-editor` :
- made keybinding display order consistent
- stopped keys from performing actions in help screen
- `gui/manager-quantity` :
- now allows orders with a limit of 0
- fixed screen detection
- `gui/mechanisms` , `gui/room-list` : fixed an issue when recentering the map when exiting
- `lever` : prevented pulling non-lever buildings, which can cause crashes
- `markdown` : fixed file encoding
- `modtools/create-unit` :
- fixed when popup announcements are present
- added checks to ensure that the current game mode is restored
- `resume` : stopped drawing on the map border
- `show-unit-syndromes` : fixed an error when handling some syndromes
- `strangemood` : fixed some issues with material searches
- `view-item-info` : fixed a color-related error for some materials
Misc Improvements
-----------------
- Docs: prevented automatic hyphenation in some browsers, which was producing
excessive hyphenation sometimes
- `command-prompt` : invoking `` command-prompt `` a second time now hides the prompt
- `gui/extended-status` : added an option to assign/replace the manager
- `gui/load-screen` :
- adjusted dialog width for long folder names
- added modification times and DF versions to dialog
- `gui/mechanisms` , `gui/room-list` , `gui/siege-engine` : add and list "exit to map" options
- `lever` : added support for pulling levers at high priority
- `markdown` : now recognizes `` -n `` in addition to `` /n ``
- `remotefortressreader` : more data exported, used by Armok Vision v0.17.0
- `resume` , `siege-engine` : improved compatibility with GUI-hooking plugins (like TWBT)
- `sc-script` : improved help text
- `teleport` : can now be used as a module
- `tweak` embark-profile-name: now enabled in `` dfhack.init-example ``
- `tweak` hotkey-clear: fixed display on larger screens
2017-05-06 14:43:39 -06:00
DFHack 0.43.05-r1
=================
2016-08-09 18:09:50 -06:00
2016-10-15 14:37:16 -06:00
Internals
---------
- 64-bit support on all platforms
- Several structure fixes to match 64-bit DF's memory layout
2016-12-14 10:56:54 -07:00
- Added `` DFHack::Job::removeJob() `` function
2017-05-06 14:43:39 -06:00
- New module: `` Designations `` - handles designation creation (currently for plants only)
- Added `` Gui::getSelectedPlant() ``
- Added `` Units::getMainSocialActivity() `` , `` Units::getMainSocialEvent() ``
- Visual Studio 2015 now required to build on Windows instead of 2010
- GCC 4.8 or newer required to build on Linux and OS X (and now supported on OS X)
2016-12-14 10:56:54 -07:00
- Updated TinyXML from 2.5.3 to 2.6.2
2017-04-23 15:13:59 -06:00
- Added the ability to download files manually before building
2016-10-15 14:37:16 -06:00
Lua
---
- Lua has been updated to 5.3 - see http://www.lua.org/manual/5.3/readme.html for details
- Floats are no longer implicitly converted to integers in DFHack API calls
- `` df.new() `` supports more types: `` char `` , `` intptr_t `` , `` uintptr_t `` , `` long `` , `` unsigned long ``
- String representations of vectors and a few other containers now include their lengths
2016-12-28 20:12:22 -07:00
- Added a `` tile-material `` module
2017-04-23 15:13:59 -06:00
- Added a `` Painter:key_string() `` method
2017-05-06 14:43:39 -06:00
- Made `` dfhack.gui.revealInDwarfmodeMap() `` available
2016-10-15 14:37:16 -06:00
Ruby
----
- Added support for loading ruby 2.x libraries
2016-08-09 18:09:50 -06:00
New Plugins
-----------
2016-10-15 14:37:16 -06:00
- `dwarfvet` enables animal caretaking
2017-02-11 15:07:49 -07:00
- `generated-creature-renamer` : Renames generated creature IDs for use with graphics packs
2016-10-15 14:37:16 -06:00
- `labormanager` (formerly autolabor2): a more advanced alternative to `autolabor`
2016-12-10 16:22:28 -07:00
- `misery` : re-added and updated for the 0.4x series
2016-08-09 18:09:50 -06:00
- `title-folder` : shows DF folder name in window title bar when enabled
2016-08-11 10:51:18 -06:00
New Scripts
-----------
2017-04-23 15:13:59 -06:00
- `adv-rumors` : improves the "Bring up specific incident or rumor" menu in adventure mode
2016-12-28 20:12:22 -07:00
- `fix/tile-occupancy` : Clears bad occupancy flags on the selected tile.
2017-04-23 15:13:59 -06:00
- `install-info` : Logs basic troubleshooting information about the current DFHack installation
2016-08-11 10:51:18 -06:00
- `load-save` : loads a save non-interactively
2016-12-14 10:56:54 -07:00
- `modtools/change-build-menu` : Edit the build mode sidebar menus
- `modtools/if-entity` : Run a command if the current entity matches a given ID
- `season-palette` : Swap color palettes with the changes of the seasons
2017-05-06 14:43:39 -06:00
- `unforbid` : Unforbids all items
2016-08-11 10:51:18 -06:00
2017-04-23 15:13:59 -06:00
New Tweaks
----------
- `tweak condition-material <tweak>` : fixes a crash in the work order condition material list
- `tweak hotkey-clear <tweak>` : adds an option to clear bindings from DF hotkeys
2016-08-21 18:58:40 -06:00
Fixes
-----
2016-10-15 14:37:16 -06:00
- The DF path on OS X can now contain spaces and `` : `` characters
2016-08-21 18:58:40 -06:00
- Buildings::setOwner() changes now persist properly when saved
2017-02-11 15:07:49 -07:00
- `` ls `` now lists scripts in folders other than `` hack/scripts `` , when applicable
2017-04-23 15:13:59 -06:00
- Fixed `` plug `` output alignment for plugins with long names
2016-12-14 10:56:54 -07:00
- `add-thought` : fixed support for emotion names
2017-05-06 14:43:39 -06:00
- `autochop` :
- fixed several issues with job creation and removal
- stopped designating the center tile (unreachable) for large trees
- stopped options from moving when enabling and disabling burrows
- fixed display of unnamed burrows
2016-10-15 14:37:16 -06:00
- `devel/find-offsets` : fixed a crash when vtables used by globals aren't available
2017-05-06 14:43:39 -06:00
- `getplants` :
- fixed several issues with job creation and removal
- stopped designating the center tile (unreachable) for large trees
- `gui/workflow` : added extra keybinding to work with `gui/extended-status`
2016-12-28 20:12:22 -07:00
- `manipulator` :
- Fixed crash when selecting a profession from an empty list
- Custom professions are now sorted alphabetically more reliably
2016-10-15 14:37:16 -06:00
2017-05-13 19:55:18 -06:00
- `modtools/create-item` :
- made gloves usable by specifying handedness
- now creates pairs of boots and gloves
2017-04-23 15:13:59 -06:00
- `modtools/create-unit` :
- stopped permanently overwriting the creature creation menu in arena mode
- now uses non-English names
2017-05-13 19:55:18 -06:00
- added `` -setUnitToFort `` option to make a unit a civ/group member more easily
- fixed some issues where units would appear in unrevealed areas of the map
2017-04-23 15:13:59 -06:00
- `modtools/item-trigger` : fixed errors with plant growths
- `remotefortressreader` : fixed a crash when serializing the local map
2017-05-09 11:49:07 -06:00
- `ruby` : fixed a crash when unloading the plugin on Windows
2017-05-09 11:50:08 -06:00
- `stonesense` : disabled overlay in STANDARD-based print modes to prevent crashes
2017-02-11 15:07:49 -07:00
- `title-version` : now hidden when loading an arena
2016-10-15 14:37:16 -06:00
Misc Improvements
-----------------
2016-08-24 18:28:07 -06:00
- Documented all default keybindings (from :file: `dfhack.init-example` ) in the
docs for the relevant commands; updates enforced by build system.
2017-05-06 14:43:39 -06:00
- `autounsuspend` : reduced update frequency to address potential performance issues
2017-04-23 15:13:59 -06:00
- `gui/extended-status` : added a feature to queue beds
2016-10-15 14:37:16 -06:00
- `lua` and `gui/gm-editor` now support the same aliases (`` scr `` , `` unit `` , etc.)
2017-05-06 14:43:39 -06:00
- `manipulator` : added social activities to job column
2016-10-15 14:37:16 -06:00
- `remotefortressreader` : Added support for
- world map snow coverage
- spatters
- wall info
- site towers, world buildings
- surface material
2017-04-23 15:13:59 -06:00
- building items
- DF version info
2016-08-21 18:58:40 -06:00
2017-02-11 15:07:49 -07:00
- `title-version` : Added a prerelease indicator
2017-05-06 14:43:39 -06:00
- `workflow` : Re-added `` Alt-W `` keybindings
2017-02-11 15:07:49 -07:00
2016-07-06 18:59:49 -06:00
DFHack 0.43.03-r1
=================
2015-12-23 14:57:43 -07:00
2016-05-09 19:29:04 -06:00
Lua
---
- Label widgets can now easily register handlers for mouse clicks
2016-05-09 19:03:12 -06:00
New Features
------------
2016-07-06 18:59:49 -06:00
- `add-thought` : allow syndrome name as `` -thought `` argument
- `gui/gm-editor`
- Added ability to insert default types into containers. For primitive types leave the type entry empty, and for references use `` * `` .
- Added `` shift-esc `` binding to fully exit from editor
- Added `` gui/gm-editor toggle `` command to toggle editor visibility (saving position)
- `modtools/create-unit` :
- Added an option to attach units to an existing wild animal population
- Added an option to attach units to a map feature
2016-04-30 13:13:38 -06:00
2016-04-30 13:04:01 -06:00
Fixes
-----
2016-07-06 18:59:49 -06:00
- `autofarm` : Can now handle crops that grow for more than a season
- `combine-plants` : Fixed recursion into sub-containers
2016-05-11 15:54:37 -06:00
- `createitem` : Now moves multiple created items to cursor correctly
2016-04-30 13:04:01 -06:00
- `exportlegends` : Improved handling of unknown enum items (fixes many errors)
2016-05-09 19:03:12 -06:00
- `gui/create-item` : Fixed quality when creating multiple items
- `gui/mod-manager` : Fixed error when mods folder doesn't exist
- `modtools/item-trigger` : Fixed handling of items with subtypes
2017-05-10 08:40:53 -06:00
- `reveal` : `` revflood `` now handles constructed stairs with floors in generated fortresses
2016-07-06 18:59:49 -06:00
- `stockflow` :
- Can order metal mechanisms
- Fixed material category of thread-spinning jobs
2016-05-09 19:03:12 -06:00
Misc Improvements
-----------------
2016-07-06 18:59:49 -06:00
- The built-in `` ls `` command now wraps the descriptions of commands
2016-06-11 19:44:15 -06:00
- `catsplosion` : now a lua script instead of a plugin
2016-05-09 19:03:12 -06:00
- `fix/diplomats` : replaces `` fixdiplomats ``
- `fix/merchants` : replaces `` fixmerchants ``
2017-05-09 14:39:10 -06:00
- `prefchange` : added a `` help `` option
2017-05-10 10:40:57 -06:00
- `probe` : now displays raw tiletype names
2016-06-14 21:22:04 -06:00
- Unified script documentation and in-terminal help options
2016-05-09 19:03:12 -06:00
2016-05-11 15:51:57 -06:00
Removed
-------
- `tweak` manager-quantity: no longer needed
2016-05-09 19:03:12 -06:00
DFHack 0.42.06-r1
=================
2016-04-30 13:04:01 -06:00
2015-12-26 11:47:58 -07:00
Internals
---------
- Commands to run on startup can be specified on the command line with `` + ``
Example::
./dfhack +devel/print-args example
"Dwarf Fortress.exe" +devel/print-args example
2016-01-01 09:15:29 -07:00
- Prevented plugins with active viewscreens from being unloaded and causing a crash
2016-03-27 19:42:59 -06:00
- Additional script search paths can be specified in dfhack-config/script-paths.txt
2016-01-01 09:15:29 -07:00
2016-03-13 05:25:10 -06:00
Lua
---
2016-03-13 05:28:29 -06:00
- `building-hacks` now supports `` auto_gears `` flags. It automatically finds and animates gears in building definition
2016-03-13 05:25:10 -06:00
- Changed how `eventful` triggers reaction complete. Now it has `` onReactionComplete `` and `` onReactionCompleting `` . Second one can be canceled
2016-01-08 22:28:07 -07:00
New Plugins
-----------
- `autogems` : Creates a new Workshop Order setting, automatically cutting rough gems
2015-12-28 15:01:47 -07:00
New Scripts
-----------
- `devel/save-version` : Displays DF version information about the current save
2016-03-27 19:42:59 -06:00
- `modtools/extra-gamelog` : replaces `` log-region `` , `` soundsense-season `` , and `` soundsense ``
2015-12-28 15:01:47 -07:00
2015-12-23 14:57:43 -07:00
New Features
------------
2016-01-31 12:50:07 -07:00
- `buildingplan` : Support for floodgates, grates, and bars
2016-04-24 15:12:13 -06:00
- `colonies` : new `` place `` subcommand and supports any vermin (default honey bees)
2015-12-25 09:18:55 -07:00
- `confirm` : Added a confirmation for retiring locations
2016-01-16 09:34:12 -07:00
- `exportlegends` : Exports more information (poetic/musical/dance forms, written/artifact content, landmasses, extra histfig information, and more)
2015-12-27 13:49:10 -07:00
- `search-plugin` : Support for new screens:
- location occupation assignment
- civilization animal training knowledge
- animal trainer assignment
2015-12-26 09:47:55 -07:00
- `tweak` :
2016-01-08 17:27:11 -07:00
- `` tweak block-labors `` : Prevents labors that can't be used from being toggled
2016-01-04 17:29:30 -07:00
- `` tweak hide-priority `` : Adds an option to hide designation priority indicators
2015-12-26 09:47:55 -07:00
- `` tweak title-start-rename `` : Adds a safe rename option to the title screen "Start Playing" menu
2015-12-23 14:57:43 -07:00
2016-04-24 15:12:13 -06:00
- `zone` :
- Added `` unassign `` subcommand
- Added `` only `` option to `` assign `` subcommand
2016-02-01 00:12:38 -07:00
2015-12-24 19:34:38 -07:00
Fixes
-----
2016-03-10 07:16:03 -07:00
- Fixed a crash bug caused by the historical figures DFHack uses to store persistent data.
2016-03-04 18:18:59 -07:00
- More plugins should recognize non-dwarf citizens
2016-03-04 18:28:42 -07:00
- Fixed a possible crash from cloning jobs
2016-04-05 09:51:08 -06:00
- moveToBuilding() now sets flags for items that aren't a structural part of the building properly
2016-04-16 15:13:00 -06:00
- `autotrade` , `stocks` : Made trading work when multiple caravans are present but only some can trade
2016-03-04 18:34:46 -07:00
- `confirm` note-delete: No longer interferes with name entry
2016-01-01 08:30:02 -07:00
- `exportlegends` : Handles entities without specific races, and a few other fixes for things new to v0.42
2016-03-10 07:04:08 -07:00
- `fastdwarf` : Fixed a bug involving teleporting mothers but not the babies they're holding.
2016-03-04 18:18:59 -07:00
- `gaydar` : Fixed text display on OS X/Linux and failure with soul-less creatures
- `manipulator` :
- allowed editing of non-dwarf citizens
- stopped ghosts and visitors from being editable
- fixed applying last custom profession
- `modtools/create-unit` : Stopped making units without civs historical figures
- `modtools/force` :
- Removed siege option
- Prevented a crash resulting from a bad civilization option
2015-12-24 19:34:38 -07:00
- `showmood` : Fixed name display on OS X/Linux
2016-03-18 14:39:07 -06:00
- `view-item-info` : Fixed density units
2015-12-24 19:34:38 -07:00
2015-12-03 23:18:15 -07:00
Misc Improvements
-----------------
2016-04-12 17:52:51 -06:00
- `autochop` : Can now edit log minimum/maximum directly and remove limit entirely
2016-03-04 18:18:59 -07:00
- `autolabor` , `autohauler` , `manipulator` : Added support for new jobs/labors/skills
2016-03-27 19:42:59 -06:00
- `colonies` : now implemented by a script
2016-04-05 09:51:08 -06:00
- `createitem` : Can now create items anywhere without specifying a unit, as long as a unit exists on the map
2016-03-04 18:18:59 -07:00
- `devel/export-dt-ini` : Updated for 0.42.06
2016-03-27 19:42:59 -06:00
- `devel/find-offsets` : Automated several more scans
2016-04-17 14:41:46 -06:00
- `gui/gm-editor` : Now supports finding some items with a numeric ID (with `` i `` )
2016-03-04 18:18:59 -07:00
- `lua` : Now supports some built-in variables like `gui/gm-editor` , e.g. `` unit `` , `` screen ``
2016-03-27 19:42:59 -06:00
- `remotefortressreader` : Can now trigger keyboard events
2016-03-04 18:18:59 -07:00
- `stockflow` : Now offers better control over individual craft jobs
2015-12-03 23:18:15 -07:00
- `weather` : now implemented by a script
2016-04-24 15:12:13 -06:00
- `zone` : colored output
2016-03-27 19:42:59 -06:00
Removed
-------
- DFusion: legacy script system, obsolete or replaced by better alternatives
2015-12-03 23:18:15 -07:00
2015-12-24 19:34:38 -07:00
2015-11-27 14:45:39 -07:00
DFHack 0.40.24-r5
=================
2015-11-10 15:26:01 -07:00
2015-11-27 14:36:44 -07:00
New Features
------------
- `confirm` :
- Added a `` uniform-delete `` option for military uniform deletion
- Added a basic in-game configuration UI
2015-11-10 15:26:01 -07:00
Fixes
-----
2015-11-25 18:56:30 -07:00
- Fixed a rare crash that could result from running `keybinding` in onLoadWorld.init
- Script help that doesn't start with a space is now recognized correctly
2015-11-25 20:32:54 -07:00
- `confirm` : Fixed issues with haul-delete, route-delete, and squad-disband confirmations intercepting keys too aggressively
2015-11-27 14:36:44 -07:00
- `emigration` should work now
2015-11-25 18:56:30 -07:00
- `fix-unit-occupancy` : Significantly optimized - up to 2,000 times faster in large fortresses
- `gui/create-item` : Allow exiting quantity prompt
2015-11-27 14:36:44 -07:00
- `gui/family-affairs` : Fixed an issue where lack of relationships wasn't recognized and other issues
2015-11-25 18:56:30 -07:00
- `modtools/create-unit` : Fixed a possible issue in reclaim fortress mode
2015-11-27 14:36:44 -07:00
- `search-plugin` : Fixed a crash on the military screen
2015-11-25 18:56:30 -07:00
- `tweak` max-wheelbarrow: Fixed a minor display issue with large numbers
- `workflow` : Fixed a crash related to job postings (and added a fix for existing, broken jobs)
Misc Improvements
-----------------
- Unrecognized command feedback now includes more information about plugins
2015-11-16 21:25:43 -07:00
- `fix/dry-buckets` : replaces the `` drybuckets `` plugin
2015-11-17 00:13:56 -07:00
- `feature` : now implemented by a script
2015-11-16 21:25:43 -07:00
2015-11-07 18:28:37 -07:00
DFHack 0.40.24-r4
=================
2015-10-24 05:19:52 -06:00
Internals
2015-10-24 05:57:08 -06:00
---------
- A method for caching screen output is now available to Lua (and C++)
2015-11-06 18:17:52 -07:00
- Developer plugins can be ignored on startup by setting the `` DFHACK_NO_DEV_PLUGINS `` environment variable
2015-10-24 05:57:08 -06:00
- The console on Linux and OS X now recognizes keyboard input between prompts
- JSON libraries available (C++ and Lua)
- More DFHack build information used in plugin version checks and available to plugins and lua scripts
- Fixed a rare overflow issue that could cause crashes on Linux and OS X
- Stopped DF window from receiving input when unfocused on OS X
2016-03-16 06:28:34 -06:00
- Fixed issues with keybindings involving :kbd: `Ctrl` :kbd: `A` and :kbd: `Ctrl` :kbd: `Z` ,
as well as :kbd: `Alt` :kbd: `E` /:kbd: `U` /:kbd: `N` on OS X
2015-10-24 05:57:08 -06:00
- Multiple contexts can now be specified when adding keybindings
2016-03-16 06:28:34 -06:00
- Keybindings can now use :kbd: `F10` -:kbd: `F12` and :kbd: `0` -:kbd: `9`
2015-10-24 05:57:08 -06:00
- Plugin system is no longer restricted to plugins that exist on startup
- :file: `dfhack.init` file locations significantly generalized
2015-10-24 05:19:52 -06:00
Lua
2015-10-24 05:57:08 -06:00
---
2016-03-16 06:28:34 -06:00
- Scripts can be enabled with the built-in `enable` /`disable <disable>` commands
2015-11-06 18:17:52 -07:00
- A new function, `` reqscript() `` , is available as a safer alternative to `` script_environment() ``
2015-10-24 05:57:08 -06:00
- Lua viewscreens can choose not to intercept the OPTIONS keybinding
2015-10-24 05:19:52 -06:00
New internal commands
2015-10-24 05:57:08 -06:00
---------------------
2016-03-16 06:28:34 -06:00
- `kill-lua` : Interrupt running Lua scripts
- `type` : Show where a command is implemented
2015-10-24 05:19:52 -06:00
New plugins
2015-10-24 05:57:08 -06:00
-----------
- `confirm` : Adds confirmation dialogs for several potentially dangerous actions
- `fix-unit-occupancy` : Fixes issues with unit occupancy, such as faulty "unit blocking tile" messages (:bug: `3499` )
2016-03-16 06:28:34 -06:00
- `title-version` (formerly `` vshook `` ): Display DFHack version on title screen
2015-10-24 05:19:52 -06:00
New scripts
2015-10-24 05:57:08 -06:00
-----------
2015-11-06 18:18:38 -07:00
- `armoks-blessing` : Adjust all attributes, personality, age and skills of all dwarves in play
- `brainwash` : brainwash a dwarf (modifying their personality)
2015-10-24 05:57:08 -06:00
- `burial` : sets all unowned coffins to allow burial ("-pets" to allow pets too)
2015-10-30 18:47:13 -06:00
- `deteriorateclothes` : make worn clothes on the ground wear far faster to boost FPS
- `deterioratecorpses` : make body parts wear away far faster to boost FPS
- `deterioratefood` : make food vanish after a few months if not used
2015-11-06 18:18:38 -07:00
- `elevate-mental` : elevate all the mental attributes of a unit
- `elevate-physical` : elevate all the physical attributes of a unit
- `emigration` : stressed dwarves may leave your fortress if they see a chance
2015-10-24 05:57:08 -06:00
- `fix-ster` : changes fertility/sterility of animals or dwarves
2015-11-06 18:18:38 -07:00
- `gui/family-affairs` : investigate and alter romantic relationships
- `make-legendary` : modify skill(s) of a single unit
2015-10-24 05:57:08 -06:00
- `modtools/create-unit` : create new units from nothing
- `modtools/equip-item` : a script to equip items on units
- `points` : set number of points available at embark screen
- `pref-adjust` : Adjust all preferences of all dwarves in play
- `rejuvenate` : make any "old" dwarf 20 years old
2015-10-30 18:47:13 -06:00
- `starvingdead` : make undead weaken after one month on the map, and crumble after six
2015-11-06 18:18:38 -07:00
- `view-item-info` : adds information and customisable descriptions to item viewscreens
- `warn-starving` : check for starving, thirsty, or very drowsy units and pause with warning if any are found
2015-10-24 05:19:52 -06:00
New tweaks
2015-10-24 05:57:08 -06:00
----------
- embark-profile-name: Allows the use of lowercase letters when saving embark profiles
- kitchen-keys: Fixes DF kitchen meal keybindings
- kitchen-prefs-color: Changes color of enabled items to green in kitchen preferences
- kitchen-prefs-empty: Fixes a layout issue with empty kitchen tabs
2015-10-24 05:19:52 -06:00
Fixes
2015-10-24 05:57:08 -06:00
-----
- Plugins with vmethod hooks can now be reloaded on OS X
- Lua's `` os.system() `` now works on OS X
- Fixed default arguments in Lua gametype detection functions
- Circular lua dependencies (reqscript/script_environment) fixed
- Prevented crash in `` Items::createItem() ``
- `buildingplan` : Now supports hatch covers
- `gui/create-item` : fixed assigning quality to items, made :kbd: `Esc` work properly
- `gui/gm-editor` : handles lua tables properly
2016-03-16 06:28:34 -06:00
- `help` : now recognizes built-in commands, like `` help ``
2015-10-24 05:57:08 -06:00
- `manipulator` : fixed crash when selecting custom professions when none are found
- `remotefortressreader` : fixed crash when attempting to send map info when no map was loaded
2015-11-06 19:52:21 -07:00
- `search-plugin` : fixed crash in unit list after cancelling a job; fixed crash when disabling stockpile category after searching in a subcategory
2015-10-24 05:57:08 -06:00
- `stockpiles` : now checks/sanitizes filenames when saving
- `stocks` : fixed a crash when right-clicking
- `steam-engine` : fixed a crash on arena load; number keys (e.g. 2/8) take priority over cursor keys when applicable
- tweak fps-min fixed
- tweak farm-plot-select: Stopped controls from appearing when plots weren't fully built
- `workflow` : Fixed some issues with stuck jobs. Existing stuck jobs must be cancelled and re-added
- `zone` : Fixed a crash when using `` zone set `` (and a few other potential crashes)
2015-10-24 05:19:52 -06:00
Misc Improvements
2015-10-24 05:57:08 -06:00
-----------------
- DFHack documentation:
- massively reorganised, into files of more readable size
- added many missing entries
- indexes, internal links, offline search all documents
2015-11-06 18:17:52 -07:00
- includes documentation of linked projects (df-structures, third-party scripts)
2015-10-24 05:57:08 -06:00
- better HTML generation with Sphinx
- documentation for scripts now located in source files
- `autolabor` :
- Stopped modification of labors that shouldn't be modified for brokers/diplomats
- Prioritize skilled dwarves more efficiently
- Prevent dwarves from running away with tools from previous jobs
2015-11-06 18:17:52 -07:00
- `automaterial` : Fixed several issues with constructions being allowed/disallowed incorrectly when using box-select
2015-10-24 05:57:08 -06:00
- `dwarfmonitor` :
2016-03-16 06:28:34 -06:00
- widgets' positions, formats, etc. are now customizable
2015-10-24 05:57:08 -06:00
- weather display now separated from the date display
- New mouse cursor widget
- `gui/dfstatus` : Can enable/disable individual categories and customize metal bar list
2015-11-06 18:17:52 -07:00
- `full-heal` : `` -r `` option removes corpses
2015-10-24 05:57:08 -06:00
- `gui/gm-editor`
- Pointers can now be displaced
- Added some useful aliases: "item" for the selected item, "screen" for the current screen, etc.
- Now avoids errors with unrecognized types
- `gui/hack-wish` : renamed to `gui/create-item`
2016-03-16 06:28:34 -06:00
- `keybinding list <keybinding>` accepts a context
2015-10-24 05:57:08 -06:00
- `lever` :
- Lists lever names
2016-03-16 06:28:34 -06:00
- `` lever pull `` can be used to pull the currently-selected lever
2015-10-24 05:57:08 -06:00
2016-03-16 06:28:34 -06:00
- `` memview `` : Fixed display issue
2015-10-24 05:57:08 -06:00
- `modtools/create-item` : arguments are named more clearly, and you can specify the creator to be the unit with id `` df.global.unit_next_id-1 `` (useful in conjunction with `modtools/create-unit` )
2016-03-16 06:28:34 -06:00
- `` nyan `` : Can now be stopped with dfhack-run
- `plug` : lists all plugins; shows state and number of commands in plugins
2015-10-24 05:57:08 -06:00
- `prospect` : works from within command-prompt
- `quicksave` : Restricted to fortress mode
- `remotefortressreader` : Exposes more information
2015-11-06 19:52:21 -07:00
- `search-plugin` :
2015-10-24 05:57:08 -06:00
- Supports noble suggestion screen (e.g. suggesting a baron)
- Supports fortress mode loo[k] menu
- Recognizes ? and ; keys
- `stocks` : can now match beginning and end of item names
- `teleport` : Fixed cursor recognition
2015-11-07 05:42:14 -07:00
- `tidlers` , `twaterlvl` : now implemented by scripts instead of a plugin
2015-10-24 05:57:08 -06:00
- `tweak` :
- debug output now logged to stderr.log instead of console - makes DFHack start faster
- farm-plot-select: Fixed issues with selecting undiscovered crops
- `workflow` : Improved handling of plant reactions
2015-10-24 05:19:52 -06:00
Removed
2015-10-24 05:57:08 -06:00
-------
2015-10-24 05:19:52 -06:00
- `embark-tools` nano: 1x1 embarks are now possible in vanilla 0.40.24
2015-03-30 10:38:56 -06:00
DFHack 0.40.24-r3
2015-09-22 23:44:00 -06:00
=================
2015-10-18 21:59:35 -06:00
Internals
---------
2015-11-06 18:17:52 -07:00
- Ruby library now included on OS X - Ruby scripts should work on OS X 10.10
2015-10-18 21:59:35 -06:00
- libstdc++ should work with older versions of OS X
2016-03-16 06:28:34 -06:00
- Added support for `onMapLoad.init / onMapUnload.init <other_init_files>` scripts
2015-10-18 21:59:35 -06:00
- game type detection functions are now available in the World module
2015-11-06 18:17:52 -07:00
- The `` DFHACK_LOG_MEM_RANGES `` environment variable can be used to log information to `` stderr.log `` on OS X
2015-10-18 21:59:35 -06:00
- Fixed adventure mode menu names
- Fixed command usage information for some commands
Lua
---
- Lua scripts will only be reloaded if necessary
- Added a `` df2console() `` wrapper, useful for printing DF (CP437-encoded) text to the console in a portable way
- Added a `` strerror() `` wrapper
New Internal Commands
---------------------
2015-11-05 06:59:48 -07:00
- `hide` , `show` : hide and show the console on Windows
2016-03-16 06:28:34 -06:00
- `sc-script` : Allows additional scripts to be run when certain events occur (similar to `onLoad.init` scripts)
2015-10-18 21:59:35 -06:00
New Plugins
-----------
- `autohauler` : A hauling-only version of autolabor
New Scripts
-----------
- `modtools/reaction-product-trigger` : triggers callbacks when products are produced (contrast with when reactions complete)
New Tweaks
----------
- `fps-min <tweak>` : Fixes the in-game minimum FPS setting
- `shift-8-scroll <tweak>` : Gives Shift+8 (or `` * `` ) priority when scrolling menus, instead of scrolling the map
- `tradereq-pet-gender <tweak>` : Displays pet genders on the trade request screen
Fixes
-----
- Fixed game type detection in `3dveins` , `gui/create-item` , `reveal` , `seedwatch`
2016-03-16 06:28:34 -06:00
- `` PRELOAD_LIB `` : More extensible on Linux
2015-10-18 21:59:35 -06:00
- `add-spatter` , `eventful` : Fixed crash on world load
- `add-thought` : Now has a proper subthought arg.
- `building-hacks` : Made buildings produce/consume correct amount of power
- `fix-armory` : compiles and is available again (albeit with issues)
- `gui/gm-editor` : Added search option (accessible with "s")
- `hack-wish <gui/create-item>` : Made items stack properly.
- `modtools/skill-change` : Made level granularity work properly.
- `show-unit-syndromes` : should work
- `stockflow` :
- Fixed error message in Arena mode
- no longer checks the DF version
- fixed ballistic arrow head orders
2016-03-16 06:28:34 -06:00
- convinces the bookkeeper to update records more often
2015-10-18 21:59:35 -06:00
- `zone` : Stopped crash when scrolling cage owner list
Misc Improvements
-----------------
- `autolabor` : A negative pool size can be specified to use the most unskilled dwarves
- `building-hacks` :
2015-10-19 20:29:46 -06:00
- Added a way to allow building to work even if it consumes more power than is available.
2015-10-18 21:59:35 -06:00
- Added setPower/getPower functions.
- `catsplosion` : Can now trigger pregnancies in (most) other creatures
- `exportlegends` : `` info `` and `` all `` options export `` legends_plus.xml `` with more data for legends utilities
- `manipulator` :
- Added ability to edit nicknames/profession names
- added "Job" as a View Type, in addition to "Profession" and "Squad"
- added custom profession templates with masking
- `remotefortressreader` : Exposes more information
2015-01-31 21:22:42 -07:00
2015-01-31 21:36:34 -07:00
DFHack 0.40.24-r2
2015-09-22 23:44:00 -06:00
=================
2015-10-19 20:29:46 -06:00
Internals
---------
2016-03-16 06:28:34 -06:00
- Lua scripts can set environment variables of each other with `` dfhack.run_script_with_env ``
- Lua scripts can now call each others internal nonlocal functions with `` dfhack.script_environment(scriptName).functionName(arg1,arg2) ``
2015-10-19 20:29:46 -06:00
- `eventful` : Lua reactions no longer require LUA_HOOK as a prefix; you can register a callback for the completion of any reaction with a name
- Filesystem module now provides file access/modification times and can list directories (normally and recursively)
- Units Module: New functions::
isWar
isHunter
isAvailableForAdoption
isOwnCiv
isOwnRace
getRaceName
getRaceNamePlural
getRaceBabyName
getRaceChildName
isBaby
isChild
isAdult
isEggLayer
isGrazer
isMilkable
isTrainableWar
isTrainableHunting
isTamable
isMale
isFemale
isMerchant
isForest
isMarkedForSlaughter
- Buildings Module: New Functions::
isActivityZone
isPenPasture
isPitPond
isActive
findPenPitAt
Fixes
-----
- `` dfhack.run_script `` should correctly find save-specific scripts now.
- `add-thought` : updated to properly affect stress.
- `hfs-pit` : should work now
- `autobutcher` : takes gelding into account
2016-03-16 06:28:34 -06:00
- :file: `init.lua` existence checks should be more reliable (notably when using non-English locales)
2015-10-19 20:29:46 -06:00
Misc Improvements
-----------------
Multiline commands are now possible inside dfhack.init scripts. See :file: `dfhack.init-example` for example usage.
2015-01-23 20:58:23 -07:00
2015-01-25 12:21:00 -07:00
DFHack 0.40.24-r1
2015-09-22 23:44:00 -06:00
=================
2015-10-19 20:29:46 -06:00
Internals
---------
CMake shouldn't cache DFHACK_RELEASE anymore. People may need to manually update/delete their CMake cache files to get rid of it.
2015-01-25 12:21:00 -07:00
2015-01-23 20:58:23 -07:00
DFHack 0.40.24-r0
2015-09-22 23:44:00 -06:00
=================
2015-10-19 20:29:46 -06:00
Internals
---------
- `EventManager` : fixed crash error with EQUIPMENT_CHANGE event.
- key modifier state exposed to Lua (ie :kbd: `Ctrl` , :kbd: `Alt` , :kbd: `Shift` )
Fixes
-----
2015-11-06 18:17:52 -07:00
`` dfhack.sh `` can now be run from other directories on OS X
2015-10-19 20:29:46 -06:00
New Plugins
-----------
- `blueprint` : export part of your fortress to quickfort .csv files
New Scripts
-----------
- `hotkey-notes` : print key, name, and jump position of hotkeys
Removed
-------
- needs_porting/*
Misc Improvements
-----------------
Added support for searching more lists
2015-01-05 18:34:09 -07:00
2016-03-16 06:38:01 -06:00
Older Changelogs
================
Are kept in a seperate file: `HISTORY`
2015-10-19 20:29:46 -06:00
2016-03-16 06:38:01 -06:00
.. that's ``docs/history.rst``, if you're reading the raw text.