Skip to content

Releases: DFHack/dfhack

DFHack 50.11-r7

03 Mar 06:29
2905866
Compare
Choose a tag to compare

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

Extended notification and quick-zoom panel, Tweaks and bugfixes, Animal assignment UI improvements, Toggle animal designations from the animal info sheet

Extended notification and quick-zoom panel

gui_petitions

There are some things that the game doesn't notify you about, despite being very useful to know. The DFHack notification panel fills in those gaps. A small panel will now appear in the lower left corner when you're on the main map and specific conditions are met:

  • When agitated creatures enter the map. Clicking on the notification will zoom you to the first one. You can zoom to each agitated creature in turn by repeatedly clicking on the notification (or hitting the Enter key).
  • When invaders (or other hostiles) enter the map. You can zoom to each individual hostile just like you can for agitated creatures.
  • When a production mandate is nearing its deadline and someone will soon be punished for violating the mandate. Clicking on the notification will open the nobles screen so you can see what you're supposed to be producing. It will be the icon in angry red.
  • When a dwarf is in a strange mood. The notification will tell you what stage of the mood they are in (finding workshop, gathering materials, working on artifact) and will tell you if they can't find what they are looking for or are otherwise stuck.
  • When you have agreed to build a guildhall or temple, but have not yet done so. Clicking on the notification will give you details about what it was that you agreed to build.
  • When a merchant finishes unloading goods and is ready to trade. Clicking on the notification will zoom you to the trade depot.
  • When a unit is starving or stranded. Clicking on the notification will zoom you to the unit(s).
  • When a "curious" creature enters the map that will seek to steal your stuff.

If there are notifications you'd rather not see, click on the gear icon on the notification window and turn those notifications off. Don't worry if you don't see the notification window at all -- if there aren't any notifications to show, the notification window won't be visible. You can still get to the configuration interface by running gui/notify directly.

gui_notify

Tweaks and bugfixes

eggs_fertile

The tweak tool has been reinstated, along with its library of small tweaks that improve the UI or fix bugs from the DF bug tracker. These tweaks are on by default, but can be disabled (if you so wish) on the "Bug Fixes" tab of gui/control-panel.

It includes the following tweaks/fixes:

  • adamantine-cloth-wear: Prevents adamantine clothing from wearing out while being worn (Bug 6481).
  • craft-age-wear: Fixes crafted items not wearing out over time (Bug 6003). With this tweak, items made from cloth and leather will gain a level of wear every 20 in-game years.
  • eggs-fertile: Displays an indicator on fertile eggs.
  • fast-heat: Improves temperature update performance by ensuring that 1 degree of item temperature is crossed in no more than 100 ticks when updating from the environment temperature. This reduces the time it takes for temperature to reach equilibrium and improves FPS when there are many items.
  • flask-contents: Names filled waterskins, flasks, and vials according to their contents, the same way other containers such as barrels, bins, and cages are named. (Bug 4914)
  • partial-items: Displays percentages on partially-consumed items such as hospital cloth.
  • reaction-gloves: Fixes reactions to produce gloves in sets with correct handedness (Bug 6273).

partial_items

Animal assignment UI improvements

assign_animal

The DFHack animal assignment screen now displays the distance the creature is from the selected pasture/pit/cage/restraint. You can now also sort by distance.

There is now also an indicator for how many creatures you have assigned to the pasture/pit/cage/restraint.

Toggle animal designations from the animal info sheet

animal_info_toggle

When viewing the info sheet for an animal, you'll now get a small panel that allows you to mark (or unmark) the animal for butchering, gelding, or adoption. If the animal is not already domesticated, you'll also get a toggle for whether a trainer is assigned.

animal_info_toggle

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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

  • add-thought: (reinstated) add custom thoughts to a dwarf
  • combat-harden: (reinstated) set a dwarf's resistence to being affected by visible corpses
  • devel/input-monitor: interactive UI for debugging input issues
  • gui/notify: display important notifications that vanilla doesn't support yet and provide quick zoom links to notification targets.
  • gui/petitions: (reinstated) show outstanding (or all historical) petition agreements for guildhalls and temples
  • list-waves: (reinstated) show migration wave information
  • make-legendary: (reinstated) make a dwarf legendary in specified skills
  • pet-uncapper: (reinstated, renamed from petcapRemover) allow pets to breed beyond the default population cap of 50
  • tweak: (reinstated) a collection of small bugfixes and gameplay tweaks
  • undump-buildings: (reinstated) remove dump designation from in-use building materials

New Features

  • cleanowned: Add a "nodump" option to allow for confiscating items without dumping
  • tweak: Add "flask-contents", makes flasks/vials/waterskins be named according to their contents

Fixes

  • autoclothing: Fix enabled behavior
  • caravan: display book and scroll titles in the goods and trade dialogs instead of generic scroll descriptions
  • dig-now: fix digging stairs in the surface sometimes creating u...
Read more

DFHack 50.11-r6

02 Feb 23:10
af6b17f
Compare
Choose a tag to compare

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!

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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 Features

  • zone: Add overlay for toggling butchering/gelding/adoption/taming options in animal "Overview" tabs

Fixes

  • dig-now:
    • remove diagonal ramps rendered unusable by digging
    • fix error propagating "light" and "outside" properties to newly exposed tiles when piercing the surface
  • item: fix missing item categories when using --by-type
  • makeown: fix error when adopting units that need a historical figure to be created
  • sort: fix potential crash when switching between certain info tabs
  • suspendmanager: overlays for suspended building info panels no longer disappear when another window has focus

Misc Improvements

  • autonestbox: don't automatically assign partially trained egg-layers to nestboxes if they don't have an ongoing trainer assigned since they might revert to wild
  • buildingplan: replace [edit filters] button in planner overlay with abbreviated filter information
  • reveal: automatically reset saved map state when a new save is loaded

Removed

  • nopause: functionality has moved to spectate

API

  • Gui::getAnyJob: get the job associated with the selected game element (item, unit, workshop, etc.)
  • Gui::getAnyWorkshopJob: get the first job associated with the selected workshop
  • Units::assignTrainer: assign a trainer to a trainable animal
  • Units::unassignTrainer: unassign a trainer from an animal

Lua

  • dfhack.gui.getAnyJob: expose API to Lua
  • dfhack.gui.getAnyWorkshopJob: expose API to Lua
  • dfhack.units.assignTrainer: expose API to Lua
  • dfhack.units.isTamable: return false for invaders to match vanilla logic
  • dfhack.units.unassignTrainer: expose API to Lua

Structures

  • soundst: fix alignment

DFHack 50.11-r5

25 Jan 20:36
314b4b0
Compare
Choose a tag to compare

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

gui/embark-anywhere, bulk item and building management, squad equipment fixer, biome visualizer, auto-restore difficulty settings and standing orders

The end-of-year holidays have brought a surge of DFHack development! There are many new features and tools to play with. In order to keep these highlights to a reasonable length, we can't even go through them all in detail -- see the Changelog section for a full list.


Be master of your domain with gui/embark-anywhere

embark_anywhere

By popular request, you can now ask Armok to allow you to embark wherever you please!

If you run gui/embark-anywhere when you’re choosing a site for embark, you can bypass any warnings the game gives you about potential embark locations. Want to embark in an inaccessible location on top of a mountain range? Go for it! Want to try a brief existence in the middle of the ocean? Nobody can stop you! Want to tempt fate by embarking inside of a necromancer tower? !!FUN!!

Any and all consequences of embarking in strange locations are up to you to handle (possibly with other armok tools).

The DFHack logo isn't shown on the embark screen (since it would cover the vanilla embark size adjustment widgets), but DFHack hotkeys still work, so you can still bring up the logo menu with Ctrl-Shift-C. There is also a convenience hotkey for running gui/embark-anywhere directly: Ctrl-A, which is only active when on the site choosing screen.

Note that this command (and its hotkey) will not be shown for those who have DFHack's "Mortal Mode" enabled in the gui/control-panel Preferences tab.

embark_anywhere

Bulk item management

item_melt

The new item commandline tool allows you to filter items in you fort by various properties (item type, material, wear-level, quality, etc.), and perform bulk operations like forbid, dump, melt, and their inverses. With one command, you can hide all boulders that are not in stockpiles, or mark all metal items that are less than masterwork quality for melting!

This tool also provides the underlying logic for a planned (but not yet written) GUI-based item management screen.

item_boulder

item_melt

Squad equipment assignment fixing tool

uniform_unstick_report

When you look at your squad equipment, there will be a new button that says "Detect conflicts". This will bring up a report of squad equipment issues, like:

  • squad members assigned to labors that cause issues with military uniforms: mining, hunting, and tree chopping
  • a single piece of equipment assigned to multiple squad members
  • citizens retaining squad membership (and equipment configuration) from previous forts (this can happen with migrants from forts that you have retired)

There's a button at the top of the report that attempts to fix all the problems. It will remove assignments for conflicting gear or will force your dwarves to drop what they have so they can pick it up in the correct order. Remember to click "Update equipment" after running the fixer so that new equipment gets assigned to units that need it.

It may take a few tries (give your dwarves some time to go get their new gear before you try again), but your forever-yellow equipment icons should finally turn green!

uniform_unstick

Visualize biome boundaries with gui/biomes

gui_biomes

If you have embarked at the intersection of two or more biomes, you may have trouble finding a place for your farm plots so that you can grow the crops you want. gui/biomes can show you where the boundaries are, and will also give you information about the biomes themselves, such as their savagery rating.

gui_biomes

Bulk building management with gui/mass-remove

gui_mass_remove

gui/mass-remove has been around for a while, but has received a significant overhaul. You can box select a region and schedule all buildings, constructions, stockpiles, and/or zones for removal. Planned and fully built buildings/constructions can be selected independently. No need to rage quit if you accidentally plan a solid block of 400 walls instead of flooring! Clear it all away in a few clicks!

It can easily cancel removal of buildings or constructions that you have marked for removal as well.

Bring it up when on the main map with the Ctrl-M hotkey.

gui_mass_remove

Auto-restore difficulty settings and standing orders for new embarks

difficulty_restore

Do you find yourself having to remember to go turn corpse hauling off for your dear, bearded, impressionable children? Now, you can set it once, export, and have your settings automatically restored when you start a new embark. It's seamless, and is a huge time-saver for people with highly customized settings!

Both difficulty settings (in the pre-embark setup screen or the Settings screen when a fort is loaded) and standing orders (Labor -> Standing orders) can be saved and restored independently. When on those configuration screens, look for a DFHack overlay toggle where you can enable auto-restore for new embarks.

standing_orders

Announcements

DFHack control panel changes, Plugin ABI bump, PSAs

DFHack control panel changes

gui_control_panel

The DFHack gui/control-panel interface received a significant overhaul. Tools are now categorized into subtabs, gathering the automation, bugfix, and gameplay tools into sublists. The file format for storing control panel configuration has changed as well. When you load this release of DFHack, your previous control panel settings will be seamlessly migrated to the new format. Other than the layout changes, which should make the tools you want easier to find, the primary behavior change is that some things that were only configured globally (like the tools on the now-gone "Maintenance" tab) are now configurable per-fort. There is also more information about what things are and what they do. For example, each overlay now has a short description.

Stonesense, 3D renderer of DF forts, needs your help!

Calling C++ developers!

DFHack's stonesense plugin, the source of the majority of 3D fort renders you see, needs help. The original authors are unavailable, and the plugin, popular as it is, needs a new owner.

The first major task is to port the renderer from the current 10-year old Allegro framework to either a modern version of Allegro or SDL2, whichever turns out to be more appropriate.

Secondly, the codebase needs some overall work to improve stability. There are several known crash bugs in the Stonesense issue tracker that need attention.

Finally, new features and new direction! There are currently o...

Read more

DFHack 50.11-r5rc3

19 Jan 18:11
fe4ef09
Compare
Choose a tag to compare
DFHack 50.11-r5rc3 Pre-release
Pre-release

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 BETA 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!

New features in need of feedback and testing

gui/embark-anywhere, item bulk management, difficulty settings and standing orders auto-restore, retire unused locations

Embark wherever you please

By popular request, you can now laugh at Armok and embark wherever you please.

If you run gui/embark-anywhere when you’re choosing a site for embark, you can bypass any warnings the game gives you about potential embark locations. Want to embark in an inaccessible location on top of a mountain range? Go for it! Want to try a brief existence in the middle of the ocean? Nobody can stop you! Want to tempt fate by embarking inside of a necromancer tower? !!FUN!!

Any and all consequences of embarking in strange locations are up to you to handle (possibly with other armok tools).

Item bulk management

The item commandline tool allows you to filter items in you fort by various properties (e.g., item type, material, wear-level, quality, …), and perform bulk operations like forbid, dump, melt, and their inverses. With one command, you can hide all boulders that are not in stockpiles, or mark all metal items that are less than masterwork quality for melting!

This tool also provides the underlying logic for a planned (but not yet written) GUI-based item management screen.

Difficulty settings and standing orders auto-restore

If you have preferred custom settings for difficulty or standing orders, it is toilsome to have to go in and manually set them for every embark. Do you find yourself having to remember to go turn corpse hauling off for your children? Now, you can set it once, export, and have your settings automatically restored when you start a new embark. It's seamless, and is a huge time-saver for people with highly customized settings!

Retire unused locations

If you have locations (taverns, libraries, hospitals, temples) you don't need anymore, they just hang around and clutter up your list. Now, there's a button on the location details screen that you can click to retire the location and get it out of the way.

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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

  • control-panel: new commandline interface for control panel functions
  • gui/biomes: visualize and inspect biome regions on the map
  • gui/embark-anywhere: bypass those pesky warnings and embark anywhere you want to
  • gui/reveal: temporarily unhide terrain and then automatically hide it again when you're ready to unpause
  • gui/teleport: mouse-driven interface for selecting and teleporting units
  • item: perform bulk operations on groups of items.
  • uniform-unstick: (reinstated) force squad members to drop items that they picked up in the wrong order so they can get everything equipped properly

New Features

  • gui/mass-remove: new global keybinding: Ctrl-M while on the fort map
  • gui/settings-manager: save and load (optionally automatically) embark difficulty settings and standing orders
  • sort: search and sort for the "choose unit to elevate to the barony" screen. units are sorted by the number of item preferences they have and the units are annotated with the items that they have preferences for
  • uniform-unstick: add overlay to the squad equipment screen to show a equipment conflict report and give you a one-click button to fix
  • zone: add button to location details page for retiring unused locations

Fixes

  • DFHack tabs (e.g. in gui/control-panel) are now rendered correctly when there are certain vanilla screen elements behind them
  • Dreamfort: fix holes in the "Inside+" burrow on the farming level (burrow autoexpand is interrupted by the pre-dug miasma vents to the surface)
  • When passing map movement keys through to the map from DFHack tool windows, also pass fast z movements (shift-scroll by default)
  • ban-cooking: fix banning creature alcohols resulting in error
  • buildingplan:
    • when you save a game and load it again, newly planned buildings are now correctly placed in line after existing planned buildings of the same type
    • show correct number of materials required when laying down areas of constructions and some of those constructions are on invalid tiles
  • confirm: properly detect clicks on the remove zone button even when the unit selection screen is also open (e.g. the vanilla assign animal to pasture panel)
  • empty-bin: now correctly sends ammunition in carried quivers to the tile underneath the unit instead of teleporting them to an invalid (or possibly just far away) location
  • getplants: fix crash when processing mod-added plants with invalid materials
  • gui/design: fix incorrect dimensions being shown when placing stockpiles, but a start coordinate hasn't been selected yet
  • misery: fix error when changing the misery factor
  • quickfort: if a blueprint specifies an up/down stair, but the tile the blueprint is applied to cannot make an up stair (e.g. it has already been dug out), still designate a down stair if possible
  • reveal: now avoids revealing blocks that contain divine treasures, encased horrors, and deep vein hollows (so the surprise triggers are not triggered prematurely)
  • sort:
    • fix mouse clicks falling through the squad assignment overlay panel when clicking on the panel but not on a clickable widget
    • fix potential crash when removing jobs directly from the Tasks info screen
  • source: water and magma sources now persist with fort across saves and loads
  • suspendmanager: correctly handle building collisions with smoothing designations when the building is on the edge of the map
  • warn-stranded:
    • Automatically ignore citizens who are gathering plants or digging to avoid issues with gathering fruit via stepladders and weird issues with digging
    • Update onZoom to use df's centering functionality

Misc Improvements

  • Dreamfort: put more chairs adjacent to each other to make the tavern more "social"
  • The "PAUSE FORCED" badge will blink briefly to draw attention if the player attempts to unpause when a DFHack tool window requires the game to be paused
  • wherever units are listed in DFHack tools, properties like "agitated" or (-trained-) are now shown
  • autochop: better error output when target burrows are not specified on the commandline
  • autoclothing : now does not consider worn (x) clothing as usable/available, should help with using with tailor at same time
  • `build...
Read more

DFHack 50.11-r5rc2

14 Jan 11:02
e41f249
Compare
Choose a tag to compare
DFHack 50.11-r5rc2 Pre-release
Pre-release

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 BETA 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!

New features in need of feedback and testing

gui/control-panel, gui/autobutcher, confirm, uniform-unstick, gui/mass-remove, gui/reveal, gui/biomes, gui/teleport

gui/control-panel layout overhaul

The control panel received a significant overhaul. Tools are now categorized into subtabs, gathering the automation, bugfix, and gameplay tools into sublists. The file format for storing control panel configuration has changed as well. When you load this release of DFHack, your previous control panel settings should be seamlessly migrated to the new format. The main behavior change is that some things that were only configured globally (like the tools on the now-gone "Maintenance" tab) are now configurable per-fort. There is also more information about what things are. For example, each overlay now has a short description.

What do you think of the new layout and tab structure? Is it easier to find the tools you're looking for? Do you feel more confident about enabling new things?

gui/autobutcher mousification

gui/autobutcher finally got updated with modern widgets and mouse gestures. You can now select fields to edit by double clicking on them. The list of livestock now also shows you the total counts per race, and the list of race targets is sortable and filterable. What do you think? Is it easier to use than the previous version? Pro tip: to unmark the slaughter tag from all animals of a particular race, double click on the number in the "Butchering ordered" column.

confirm rewrite and new prompts

The confirm framework has been completely rewritten, and thanks to many good suggestions on Reddit, there are now a wide variety of new confirmation prompts that protect you from accidentally invoking irreversible and highly impactful UI operations (like disbanding a squad or deconstructing the trade depot while merchants are using it). Is there anything you think we've missed? What do you think of the new confirmation prompts? Is it easy to pause them when you want to (e.g. when deleting a bunch of manager orders)?

uniform-unstick uniform fixing tool

When you look at your squad equipment, there will be a new button that says "Detect conflicts". This will bring up a report of squad equipment problems, such as squad members being assigned to conflicting labors like mining or hunting, or the same piece of equipment being assigned to multiple squad members, or even citizens being members of squads from different forts (this can happen with migrants from forts that you have retired). There's a button at the top of the report that attempts to fix all the problems. Does it work for you? Do your forever-yellow equipment icons finally turn green? Remember to click "Update equipment" after running the fixer so that new equipment gets assigned to units that need it.

gui/mass-remove now easier to use

gui/mass-remove is our tool for easily removing multiple buildings and other things. It gained much more configurability, so you can now, for example, have it just remove planned buildings and ignore fully built ones. It can also cancel removal of buildings and constructions via area select. It has a global hotkey for quick access: Ctrl-M while on the main fort map. Give it a try and tell us if it works well for you when you need to remove a bunch of stuff.

gui/reveal for temporary xray vision

I've seen people talk on Reddit and the Discord servers about how to plan your fort layout after you embark but before you unpause. Frequently, I see people advising use of reveal to see where the caverns are so you can plan your fort around them. This is always followed by the warning "Remember to run unreveal before you unpause! Otherwise the caverns get "discovered" early and then if you unreveal later then parts that you dug out will be hidden again and things get weird."

To make this process less error-prone, we now have gui/reveal. It reveals the map when it comes up and forces the game to pause while the gui/reveal window is open. You can scan around the map and designate digging for your fort. When you right click on the little gui/reveal window to close it, the map is hidden again, and you can play the game as normal.

You can choose to keep the map revealed, of course, but the more common case where only a temporary reveal is desired is much easier to handle now.

gui/biomes for biome boundary visualization

If you have embarked at the intersection of two or more biomes, you may have trouble finding a place for your farm plots so that you can grow the crops you want. gui/biomes can show you where the boundaries are, and will also give you information about the biomes themselves, such as their wildness rating.

gui/teleport for mouse-driven unit teleporting

Another painful process I've seen discussed on Reddit relates to when a unit gets into an impossible situation, like when they dodge into a wall or (sometimes) into the unexplored regions of a cavern and they can't get out. This tends to tank your FPS and make the game unplayable. The commandline teleport command does exist, but it's a multi-step process. You have to find the unit ID of the rogue unit, enable the keyboard cursor, get the position of where to teleport the unit to, and feed all that information into the teleport command. Now, with gui/teleport, it's point and click. It also comes with some handy filters for when you're trying to rescue friendly units from among hostiles. You can area select and only pick out the citizens and friendly units.

Announcements

Plugin ABI version bump, PSAs

Plugin ABI version bump

If you are developing an external plugin for DFHack, be aware that the plugin binary interface (ABI) has changed to support the new site-local persistence model. See changes to the sample code in https://github.com/DFHack/dfhack/tree/develop/plugins/examples for details.

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.

Many 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 do not compile yet and are not available 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

  • control-panel: new commandline interface for control panel functions
  • gui/biomes: visualize and inspect biome regions on the map
  • gui/reveal: temporarily unhide terrain and then automatically hide it again when you're ready to unpause
  • gui/teleport: mouse-driven interface for selecting and teleporting units
  • uniform-unstick: (reinstated) force squad members to drop items that they picked up in the wrong order so they can get everythin...
Read more

DFHack 50.11-r5rc1

05 Jan 11:01
bb9bc27
Compare
Choose a tag to compare
DFHack 50.11-r5rc1 Pre-release
Pre-release

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 BETA 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!

New features in need of feedback and testing

gui/control-panel, gui/autobutcher, confirm, uniform-unstick, gui/mass-remove

gui/control-panel layout overhaul

The control panel received a significant overhaul. Tools are now categorized into subtabs, gathering the automation, bugfix, and gameplay tools into sublists. The file format for storing control panel configuration has changed as well. When you load this release of DFHack, your previous control panel settings should be seamlessly migrated to the new format.

What do you think of the new layout and tab structure? Is it easier to find the tools you're looking for? Do you feel more confident about enabling new things?

gui/autobutcher mousification

gui/autobutcher finally got updated with modern widgets and mouse gestures. You can now select fields to edit by double clicking on them. The list of livestock now also shows you the total counts per race, and the list of race targets is sortable and filterable. What do you think? Is it easier to use than the previous version? Pro tip: to unmark the slaughter tag from all animals of a particular race, double click on the number in the "Butchering ordered" column.

confirm rewrite and new prompts

The confirm framework has been completely rewritten, and thanks to many good suggestions on Reddit, there are now a wide variety of new confirmation prompts that protect you from accidentally invoking irreversible and highly impactful UI operations (like disbanding a squad or deconstructing the trade depot while merchants are using it). Is there anything you think we've missed? What do you think of the new confirmation prompts? Is it easy to pause them when you want to (e.g. when deleting a bunch of manager orders)?

uniform-unstick uniform fixing tool

When you look at your squad equipment, there will be a new button that says "Detect conflicts". This will bring up a report of squad equipment problems, such as squad members being assigned to conflicting labors like mining or hunting, or the same piece of equipment being assigned to multiple squad members. There's a button at the top of the report that attempts to fix all the problems. Does it work for you? Do your forever-yellow equipment icons finally turn green? Remember to click "Update equipment" after running the fixer so that new equipment gets assigned to units that need it.

gui/mass-remove now easier to use

gui/mass-remove is our tool for easily removing multiple buildings and other things. It gained much more configurability, so you can now, for example, have it just remove planned buildings and ignore fully built ones. It now also has a global hotkey for quick access: Ctrl-M while on the main fort map. Give it a try and tell us if it works well for you when you need to remove a bunch of stuff.

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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

  • control-panel: new commandline interface for control panel functions
  • uniform-unstick: (reinstated) force squad members to drop items that they picked up in the wrong order so they can get everything equipped properly

New Features

  • gui/mass-remove: new global keybinding: Ctrl-M while on the fort map
  • sort: search and sort for the "choose unit to elevate to the barony" screen. units are sorted by the number of item preferences they have and the units are annotated with the items that they have preferences for
  • uniform-unstick: add overlay to the squad equipment screen to show a equipment conflict report and give you a one-click button to fix

Fixes

  • ban-cooking: fix banning creature alcohols resulting in error
  • confirm: properly detect clicks on the remove zone button even when the unit selection screen is also open (e.g. the vanilla assign animal to pasture panel)
  • misery: fix error when changing the misery factor
  • reveal: now avoids revealing blocks that contain divine treasures, encased horrors, and deep vein hollows (so the surprise triggers are not triggered prematurely)
  • sort:
    • fix mouse clicks falling through the squad assignment overlay panel when clicking on the panel but not on a clickable widget
    • fix potential crash when removing jobs directly from the Tasks info screen
  • warn-stranded:
    • Automatically ignore citizens who are gathering plants or digging to avoid issues with gathering fruit via stepladders and weird issues with digging
    • Update onZoom to use df's centering functionality

Misc Improvements

  • wherever units are listed in DFHack tools, properties like "agitated" or (-trained-) are now shown
  • autochop: better error output when target burrows are not specified on the commandline
  • confirm:
    • updated confirmation dialogs to use clickable widgets and draggable windows
    • added confirmation prompt for right clicking out of the trade agreement screen (so your trade agreement selections aren't lost)
    • added confirmation prompts for irreversible actions on the trade screen
    • added confirmation prompt for deleting a uniform
    • added confirmation prompt for convicting a criminal
    • added confirmation prompt for re-running the embark site finder
    • added confirmation prompt for reassigning or clearing zoom hotkeys
    • added confirmation prompt for exiting the uniform customization page without saving
  • gui/autobutcher: interface redesigned to better support mouse control
  • gui/control-panel:
    • reduce frequency for warn-stranded check to once every 2 days
    • tools are now organized by type: automation, bugfix, and gameplay
  • gui/launcher: now persists the most recent 32KB of command output even if you close it and bring it back up
  • gui/mass-remove:
    • can now differentiate planned constructions, stockpiles, and regular buildings
    • can now remove zones
  • gui/quickcmd: clickable buttons for command add/remove/edit operations
  • work-now: now saves its enabled status with the fort

Structures

  • alert_button_announcement_id: now int32_t vector (contains report ids)
  • announcement_alertst: defined
  • announcement_alert_type: enum defined
  • announcement_type: added alert_type enum attribute
  • markup_text_boxst: updated based on information from Bay12
  • markup_text_linkst, markup_text_wordst, script_environmentst: defined
  • ``...
Read more

DFHack 50.11-r4

22 Nov 19:41
eb14a3f
Compare
Choose a tag to compare

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 50.11 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!


This is a quick release that addresses some small but important bug fixes and quality of life improvements. See the Changelog below for details.

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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

  • build-now: (reinstated) instantly complete unsuspended buildings that are ready to be built

Fixes

  • RemoteServer: don't shut down the socket prematurely, allowing continuing connections from, for example, dfhack-run
  • buildingplan: fix choosing the wrong mechanism (or something that isn't a mechanism) when linking a lever and manually choosing a mechanism, but then canceling the selection
  • combine: prevent stack sizes from growing beyond quantities that you would normally see in vanilla gameplay
  • sort:
    • fix potential crash when exiting and re-entering a creatures subtab with a search active
    • prevent keyboard keys from affecting the UI when search is active and multiple keys are hit at once
  • tailor: fix corner case where existing stock was being ignored, leading to over-ordering

Misc Improvements

  • buildingplan:
    • save magma safe mechanisms for when magma safety is requested when linking levers and pressure plates to targets
    • when choosing mechanisms for linking levers/pressure plates, filter out unreachable mechanisms
  • caravan: enable searching within containers in trade screen when in "trade bin with contents" mode
  • sort: when searching on the Tasks tab, also search the names of the things the task is associated with, such as the name of the stockpile that an item will be stored in

DFHack 50.11-r3

16 Nov 16:32
ed9e6c8
Compare
Choose a tag to compare

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 v50.11: 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

Selection dimension indicator, Choose mechanisms for linking, Burrows!

Selection dimension indicator

dimensions

At long last, we have a measurement tooltip that follows the cursor when you are designating an area, for example when painting burrows, stockpiles, or digging designations.

dimensions

Choose mechanisms for linking

mechanisms

Have you ever needed to link a lever to a floodgate or bridge that will be holding back magma, and then been frustrated when you found you had no control over whether a magma-safe mechanism was chosen to make the link?

The mechanism linking dialog is now integrated with buildingplan, giving you quick filters for autoselecting a mechanism based on how much heat it will need to withstand or letting you choose a specific mechanism from your stock. This feature is available for linking both levers and pressure plates.

mechanisms

Burrows!

Burrows got a lot of attention in this release. In DF, burrows are useful for defining areas that limit:

  • where assigned units perform tasks
  • where civilians can go for protection during an emergency (using gui/civ-alert)
  • where woodcutters harvest (or clearcut) trees (using gui/autochop)
  • where squad members gather to defend against threats

but they can be a bit of a pain to work with. For example, setting up the burrow area across a multi-level fortress requires tedious box selection on every z-level. And when you have a 'Safe/Inside' burrow, it's difficult to remember to extend the burrow whenever you do some digging and expand your living area.

Also, if you have your units assigned to burrows for job purposes, it's also difficult to manage who is assigned where. Notably, if a unit dies while assigned to a burrow, you can't unassign that (dead) unit from the burrow and your count of assigned units will be inaccurate.

In light of all this, DFHack now provides a wide range of new burrow-related capabilities that should make them more fun and efficient to use.

Special thanks to Black-Talon for excellent suggestions and significant help with testing these features!

3D box select

3d_box_select

First of all, the vanilla box select that was limited to painting a single z-level at a time is replaced with a 3D selection box that can paint a burrow across your fort's z-levels at once!

3d_box_select

Flood fill

flood_fill

Second, if you double click on a tile, you'll get a handy flood fill. This means that if you double click on the floor inside of your fort, the selection will flood to your entire fort on that level. The selection will include the adjacent walls so they can be smoothed and engraved by units that are assigned to the burrow itself.

flood_fill

Hold down Shift when you double click and you'll allow the flood to expand across z-levels. You can define a burrow for your entire fort with one shift-double click! The flood stops at forbidden doors and closed bridges, so it won't include the caverns if you have them blocked off. If you do accidentally include the caverns, erase a boundary between your fort and the caverns and shift-double click on the cavern side to remove just the cavern tiles from your burrow, just like the bucket tool in a painting app.

bucket_flood_fill

Auto-expanding burrows

burrow_auto_expand

Third, you can set a burrow to auto-expand as you dig. If you name a burrow with a trailing plus symbol (+), like "Inside+", then as your miners dig, the burrow will automatically expand to include the newly exposed tiles. Make sure to include the surrounding walls in your original burrow designation so the auto expansion checks know which wall tiles to monitor.

burrow_auto_expand

Search filters

burrow_filter

Fourth, there are updated unit search and filters for easier unit burrow assignment. The search widgets on the burrow assignment screen have gained the ability to filter by burrow membership, so you can easily add or remove one burrow's members when working with another burrow.

burrow_filter

Supporting tools

burrow_control_panel

There are also supporting tools that make burrows more useful. If you turn on dead-units-burrow in the gui/control-panel "Maintenance" tab, then units will automatically be removed from your burrows when they die. The quickfort blueprinting tool can now create new burrows and add tiles to existing ones. It can even register a burrow with gui/civ-alert or autochop, saving you some manual steps when you are laying down plans for your fortress. The Dreamfort set of quickfort blueprints takes advantage of this to set up more of your fort for you automatically.

burrow_quickfort

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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.

Generated release notes

New tools, fixes, and improvements

New Tools

  • burrow: (reinstated) automatically expand burrows as you dig
  • sync-windmills: synchronize or randomize movement of active windmills
  • trackstop: (reimplemented) integrated overlay for changing track stop and roller settings after construction

New Features

  • buildingplan: allow specific mechanisms to be selected when linking levers or pressure pl...
Read more

DFHack 50.11-r2

19 Oct 15:08
fa78ec5
Compare
Choose a tag to compare

Q: How do I install 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.


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

Search! Search! Search!, Preserve tomb assignments, Collapse all for stocks screen, Automatic tomb zones, Stranded citizen alert

Search! Search! Search!

We finally have search widgets for many of the screens with long lists. No longer will you need to scroll endlessly to find Bim Zasitisos, Cook. You can just type "bim", or "cook", or maybe "knifedales", since that's what "Zasitisos" translates to and it's the name you see in some contexts. You can also search by the name of the job they're currently doing. Or hey, search for "forgotten" on the "Others" tab to see which forgotten beasts you've actually forgotten about in the caverns:

image

search_units

For each screen, you can click on the search field to focus it or hit the keyboard hotkey (Alt-s) and start typing. Just like all DFHack text entry fields, you can hit Ctrl-x to clear the text or Ctrl-v to paste from your operating system clipboard.

Remember that you can search for more than just the name. Some examples:

  • Search for "steel short sword" when choosing artifacts to send a raid for
  • Search for "appraisal" when choosing a broker

Some screens come with additional filters. For example, in the "Engrave slab" menu, you can click a button and see just the units that you need to engrave a slab for to prevent ghosts. Similarly, when choosing which guildhall or temple to establish, you can now filter out the ones that you've already established. Now you can create chapels for each of the 40 deities that your dwarves somehow find time to worship and be confident that you aren't wasting space on duplicates.

The Justice tabs in particular received the most filtering capabilities. You can now easily see just the high-risk visitors you should be paying attention to (e.g. intelligent undead or professional criminals).

In all, DFHack has added search widgets to more than 30 screens/lists:

  • Info -> Creatures -> Citizens
  • Info -> Creatures -> Pets/Livestock
  • Info -> Creatures -> Pets/Livestock -> Overall Training
  • Info -> Creatures -> Pets/Livestock -> Assign Trainer
  • Info -> Creatures -> Others
  • Info -> Creatures -> Dead/Missing
  • Info -> Tasks
  • Info -> Labor -> Work details
  • Info -> Nobles -> Choose candidate
  • Info -> Objects -> Artifacts
  • Info -> Objects -> Symbols
  • Info -> Objects -> Named objects
  • Info -> Objects -> Written content
  • Info -> Justice -> * -> Interrogate
  • Info -> Justice -> * -> Convict
  • Location selector -> Temple
  • Location selector -> Guildhall
  • Unit selector -> Bedroom
  • Unit selector -> Office
  • Unit selector -> Dining hall
  • Unit selector -> Tomb
  • Unit selector -> Workshop worker
  • Unit selector -> Occupation
  • Unit selector -> Burrow
  • Unit selector -> Squad kill order
  • Unit selector -> Squad assignment
  • Stoneworker's workshop -> Engrave slab -> Choose unit to memorialize

In addition, DFHack assists these workflows with searchable/filterable selection dialogs:

  • Zone -> Pasture -> Assignment
  • Zone -> Pit -> Assignment
  • Cage -> Assignment
  • Restraint -> Assignment
  • Pedestal -> Choose item for display
  • Trade depot -> Bring items to depot
  • Trade depot -> Trade

Preserve tomb assignments

Have you noticed that your nobles don't actually get buried in the nice tombs you assigned to them while they were alive and demanding nice tombs? This is because DF loses track of that assignment when they die, which is amusingly and tragically ironic.

preserve_tombs

Enable preserve-tombs in the DFHack gui/control-panel ("Fort" and "Autostart" tabs) to keep track of those tomb assignments and ensure they are actually used for their intended purposes.

Single click collapse all for stocks screen

Often, you just want to know how many of each category of thing you have. The group info bars have that information, but you need to click on each of them to collapse them to see more than one of them at a time. Now there is a solution to collapse all visible groups with one click. There is now a button off the right side of the stocks panel that says "collapse all". Click that button or hit the hotkey (Ctrl-x) to collapse everything down to a single line each.

stocks_collapse

stocks_collapse

Automatic tomb zone creation

Setting up tombs is a chore. You have to place the coffins, and then for each coffin, you have to declare a Tomb zone. With the burial command, you can get those Tomb zones created for you automatically. Just run the command after you place the coffins to get the Tomb zones for free. No extra clicks!

burial

Get notified for stranded citizens

Have you ever closed off the caverns and only later noticed that you had dwarves trapped down there? With warn-stranded, you can get notified quickly that you have citizens that can't reach their peers. You'll then have enough time to organize a rescue mission before they start starving. It also catches units stuck in trees or in pits.

warn_stranded

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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.

Generated release notes

New tools, fixes, and improvements

New Tools

  • add-recipe: (reinstated) add reactions to your civ (e.g. for high boots if your civ didn't start with the ability to make high boots)
  • burial: (reinstated) create tomb zones for unzoned coffins
  • fix/corrupt-jobs: prevents crashes by automatically removing corrupted jobs
  • preserve-tombs: keep tombs assigned to units when they die
  • spectate: (reinstated) automatically follow dwarves, cycling among interesting ones

New Scripts

  • warn-stranded: new repeatable maintenance script to check for stranded units, similar to warn-starving

New Features

  • burial: new options to configure automatic burial and limit scope to the current z-level
  • drain-aquifer:
    • gained ability to drain just above or below a certain z-level
    • new option to drain all layers except for the first N aquifer layers, in case you want some aquifer layers but not too many
  • gui/control-panel: drain-aquifer --top 2 added as an autostart option
  • logistics: automelt now optionally supports melting masterworks; click on gear icon ...
Read more

DFHack 50.11-r2rc1

12 Oct 19:31
db08110
Compare
Choose a tag to compare
DFHack 50.11-r2rc1 Pre-release
Pre-release

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.


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

If installing from Steam, remember to switch to the beta branch in the properties for DFHack in the Steam client.

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

Search! Search! Search!, Preserve tomb assignments

Search! Search! Search!

We finally have search widgets for many of the screens with long lists. No longer will you need to scroll endlessly to find Bim Zasitisos, Cook. You can just type "bim", or "cook", or maybe "knifedales", since that's what "Zasitisos" translates to and it's the name you see in some contexts. Or hey, search for "forgotten" on the "Others" tab to see which forgotten beasts you've forgotten about in the caverns:

image

Search units on the Citizens tab:
search_units

Search (and filter) interview candidates on the Justice tab:
search_interview

Search artifacts on the world screen (for raids):
search_artifact

Search religions for dedicating a new temple:
search_religion

So far, here are the screens that are covered:

  • Info -> Creatures -> Citizens
  • Info -> Creatures -> Pets/Livestock
  • Info -> Creatures -> Pets/Livestock -> Overall Training
  • Info -> Creatures -> Pets/Livestock -> Assign Trainer
  • Info -> Creatures -> Others
  • Info -> Creatures -> Dead/Missing
  • Info -> Tasks
  • Info -> Labor -> Work details
  • Info -> Objects -> Artifacts
  • Info -> Objects -> Symbols
  • Info -> Objects -> Named objects
  • Info -> Objects -> Written content
  • Info -> Justice -> * -> Interrogate
  • Info -> Justice -> * -> Convict
  • Location selector -> Temple
  • Location selector -> Guildhall
  • Unit selector -> Bedroom
  • Unit selector -> Office
  • Unit selector -> Dining hall
  • Unit selector -> Tomb
  • Unit selector -> Workshop worker
  • Unit selector -> Occupation
  • Unit selector -> Burrow
  • Unit selector -> Squad kill order

Plus the screens that were already covered in previous DFHack versions:

  • Unit selector -> Squad assignment
  • Zone -> Pasture -> Animal assignment
  • Zone -> Pit -> Animal assignment
  • Building -> Cage -> Animal assignment
  • Building -> Restraint -> Animal assignment

Preserve tomb assignments

Have you noticed that your nobles don't actually get buried in the nice tombs you assigned to them while they were alive and demanding nice tombs? This is because DF loses track of that assignment when they die, which is amusingly and tragically ironic.

Enable preserve-tombs in the DFHack gui/control-panel ("Fort" and "Autostart" tabs) to keep track of those tomb assignments and ensure they are actually used for their intended purposes.

Announcements

PSAs

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.

Many 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 do not compile yet and are not available 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.

Generated release notes

New tools, fixes, and improvements

New Tools

  • add-recipe: (reinstated) add reactions to your civ (e.g. for high boots if your civ didn't start with the ability to make high boots)
  • preserve-tombs: keep tombs assigned to units when they die
  • spectate: (reinstated) automatically follow dwarves, cycling among interesting ones

New Features

  • drain-aquifer:
    • gained ability to drain just above or below a certain z-level
    • new option to drain all layers except for the first N aquifer layers, in case you want some aquifer layers but not too many
  • gui/control-panel: drain-aquifer --top 2 added as an autostart option
  • logistics: automelt now optionally supports melting masterworks; click on gear icon on stockpiles overlay frame
  • sort:
    • new search widgets for Info panel tabs, including all "Creatures" subtabs, all "Objects" subtabs, "Tasks", and the "Work details" subtab under "Labor"
    • new search and filter widgets for the "Interrogate" and "Convict" screens under "Justice"
    • new search widgets for location selection screen (when you're choosing what kind of guildhall or temple to dedicate)
    • new search widgets for burrow assignment screen and other unit assignment dialogs
    • new search widgets for artifacts on the world/raid screen

Fixes

  • gui/sandbox: fix scrollbar moving double distance on click
  • hide-tutorials: fix the embark tutorial prompt sometimes not being skipped
  • suspendmanager: fix errors when constructing near the map edge
  • zone: don't show animal assignment link for cages and restraints linked to dungeon zones (which aren't normally assignable)

Misc Improvements

  • orders: recheck command now only resets orders that have conditions that can be rechecked
  • overlay: allow overlay_onupdate_max_freq_seconds to be dynamically set to 0 for a burst of high-frequency updates
  • sort: added help button for squad assignment search/filter/sort
  • zone: animals trained for war or hunting are now labeled as such in animal assignment screens

Removed

  • FILTER_FULL_TEXT: moved from gui.widgets to utils; if your full text search preference is lost, please reset it in gui/control-panel

Lua

  • added GRAY color aliases for GREY colors
  • utils.search_text: text search routine (generalized from internal widgets.FilteredList logic)

Structures

  • add new global: translate_name
  • artifact_rumor_locationst: defined
  • viewscreen_worldst: defined types for view_mode and artifacts_arl fields
  • world_view_mode_type: defined