github DFHack/dfhack 52.03-r2
DFHack 52.03-r2

latest release: 52.04-r1
11 days ago

Q: How do I download DFHack?

A: Either add to your Steam library from our Steam page or scroll to the latest release on our GitHub releases page, expand the "Assets" list, and download the file for your platform (e.g. dfhack-XX.XX-rX-Windows-64bit.zip. If you are on Windows and are manually installing from the zip file, please remember to right click on the file after downloading, open the file properties, and select the "Unblock" checkbox. This will prevent issues with Windows antivirus programs.


This release is compatible with all distributions of Dwarf Fortress: Steam, Itch, and Classic.

Please report any issues (or feature requests) on the DFHack GitHub issue tracker. When reporting issues, please upload a zip file of your savegame and a zip file of your mods directory to the cloud and add links to the GitHub issue. Make sure your files are downloadable by "everyone with the link". We need your savegame to reproduce the problem and test the fix, and we need your active mods so we can load your savegame. Issues with savegames and mods attached get fixed first!

Highlights

New Features, Bug Fixes

New Features

This release has several new features:

  • autotraining (and its companion gui/autotraining) now automates putting units into a military squad as needed to satisfy the "Martial Training" need
  • entomb can assist in cleaning up scattered body parts or corpses that aren't being buried automatically for whatever reasons
  • husbandry provides an alternative to automilk and autocheese for automating these processes with less cancel spam and more efficiency
  • nestboxes can now optionally be configured to only operate within a specified burrow
  • stonesense now offers day/night cycle lighting while in fortress mode
  • tailor can now automate the production of dyed cloth for use in clothing

Bug Fixes

We also fixed a lot of bugs: ban-cooking all will no longer crash if there is no honey in the world, confirm got a lot of adjustments, immortal-cravings should now work a lot better than it used to, stockpiles will export furniture stockpiles correctly now, uniform-unstick won't cause units to equip multiple copies of assigned items, and deities should no longer have stray commas added after their names in various DFHack displays.

Announcements ----------------------------------
Annc 1, PSAs

Annc 1

Text

PSAs

As always, remember that, just like the vanilla DF game, DFHack tools can also have bugs. It is a good idea to save often and keep backups of the forts that you care about.

Some DFHack tools that worked in previous (pre-Steam) versions of DF have not been updated yet and are marked with the "unavailable" tag in their docs. If you try to run them, they will show a warning and exit immediately. You can run the command again to override the warning (though of course the tools may not work). We make no guarantees of reliability for the tools that are marked as "unavailable".

The in-game interface for running DFHack commands (gui/launcher) will not show "unavailable" tools by default. You can still run them if you know their names, or you can turn on dev mode by hitting Ctrl-D while in gui/launcher and they will be added to the autocomplete list. Some tools listed as "unavailable" in the docs do not compile yet and are not accessible at all, even when in dev mode.

If you see a tool complaining about the lack of a cursor, know that it's referring to the keyboard cursor (which used to be the only real option in Dwarf Fortress). You can enable the keyboard cursor by entering mining mode or selecting the dump/forbid tool and hitting Alt-K (the DFHack keybinding for toggle-kbd-cursor). We're working on making DFHack tools more mouse-aware and accessible so this step isn't necessary in the future.

Changelog

New tools, fixes, and improvements

New Tools

  • autotraining: new tool to assign citizens to a military squad when they need Martial Training
  • entomb: allow any unit that has a corpse or body parts to be assigned a tomb zone
  • gui/autotraining: configuration tool for autotraining
  • husbandry: Automatically milk and shear animals at nearby farmer's workshops

New Features

  • deathcause: added functionality to this script to fetch cause of death programatically
  • nestboxes: allow limiting egg protection to nestboxes inside a designated burrow
  • stonesense: stonesense now has visible day/night cycle lighting in fortress mode
  • tailor: tailor now provides optional dye automation

Fixes

  • ban-cooking: will not fail trying to ban honey if the world has no honey
  • caravan:
    • in the pedestal item assignment dialog, add new items at the end of the list of displayed items instead of at a random position
    • in the pedestal item assignment dialog, consistently remove items from the list of displayed items
  • confirm:
    • only show pause option for pausable confirmations
    • when editing a uniform, confirm discard of changes when exiting with Escape
    • when removing a manager order, show correct order description when using non-100% interface setting
    • when removing a manager order, show correct order description after prior order removal or window resize (when scrolled to bottom of order list)
    • when removing a manager order, show specific item/job type for ammo, shield, helm, gloves, shoes, trap component, and meal orders
    • the pause option now pauses individual confirmation types, allowing multiple different confirmations to be paused independently
  • immortal-cravings: prioritize high-value meals, properly split of portions, and don't go eating or drinking on a full stomach
  • stockpiles: fixed off-by-one error in exporting furniture stockpiles
  • stonesense: fixed the announcements not using the bright bool (now matches vanilla DF colors)
  • uniform-unstick: no longer causes units to equip multiples of assigned items
  • Units::getReadableName will no longer append a comma to the names of histfigs with no profession

Misc Improvements

  • devel/hello-world: updated to show off the new Slider widget

API

  • Job: new functions createLinked and assignToWorkshop
  • Units: new functions getFocusPenalty, unbailableSocialActivity, isJobAvailable

Lua

  • New functions: dfhack.jobs.createLinked, dfhack.jobs.assignToWorkshop, dfhack.units.getFocusPenalty, dfhack.units.unbailableSocialActivity, and dfhack.units.isJobAvailable

Structures

  • added default values for material and mat_index in reaction_reagentst and reaction_productst child classes

Don't miss a new dfhack release

NewReleases is sending notifications on new releases.