50.07-alpha1 release notes
Design your fort with gui/dig
:
In addition to the Steam version, this alpha release brings compatibility with DF Classic! Itch is WIP.
Installation instructions here: https://docs.dfhack.org/en/latest/docs/Installing.html#installing
Quickstart guide here: https://docs.dfhack.org/en/latest/docs/Quickstart.html#quickstart
Progress on updating existing DFHack tools is tracked here, and comments from players are welcome if an "untested" tool works for you. If you are waiting for a particular DFHack tool to get updated, please cast your vote for the tools that you'd like us to work on next: https://strawpoll.com/polls/61gDmBRx5Zw
Special thanks
We want to add this section to call out some of the fantastic community members that have helped improve DFHack so much in recent months (and I apologize to those of you I missed in this list):
- 20k: invaluable research into UI state and memory structure alignment issues
- AndrielChaoti:
autofish
- Baron Von Munchhausen (eamondo2):
automelt
, ongoing work on stockpiles - johncosker:
gui/dig
,autoslab
, UI widget improvements - kelvie: automated build improvements
- nuvu (vallode):
gui/liquids
,fix/civil-war
,forbid
, many ports of Ruby scripts to Lua - Robob27:
confirm
and updates for the entire core backend that provides DF context detection - seerskye: provider of some particularly tough reverse engineering insights
- TaxiService: DFHack art assets and invaluable UI design feedback
Thank you all so much!
See the full list of DFHack contributors here: https://docs.dfhack.org/en/latest/docs/about/Authors.html
Intro and announcements
Standard alpha release warnings:
- DFHack tools probably won't corrupt your savegame, but it would be really smart to keep backups of the forts that you care about. DFHack may not have fully adapted to the changes in the new version of Dwarf Fortress, and, especially at this early stage of release and ongoing rapid development, there WILL be bugs. Please always inform us quickly about crash bugs. We prioritize getting those fixed first.
- Most tools have not been tested thoroughly with Steam DF. The tools that are untested will show a warning if you try to run them and exit immediately. You can run the command again to override the warning.
- The in-game interface for running DFHack commands (
gui/launcher
) will not show untested 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 ingui/launcher
and they will autocomplete as normal. Some tools do not compile yet and are not available at all, even when in dev mode.
For those of you using sdl12compat, note that you will need to replace the "SDLreal.dll" file that DFHack installs with the SDL.dll (renamed to "SDLreal.dll") from sdl12compat. While we do not specifically recommend using sdl12compat, we have generally heard positive feedback about it.
Steam deck users: To avoid blocking the screen with the DFHack terminal window, please edit the dfhack-config/init/dfhack.init
file and add a line with the word hide
. This will hide the DFHack terminal and get it out of the way. You can show it again if you need it by running the command show
from gui/launcher
.
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 in the DF settings, and you can show it by entering mining mode or selecting the dump/forbid tool. We're working on making DFHack tools more mouse-aware and accessible.
Highlights
- We have been steadily squashing memory alignment issues and making DFHack tools more stable.
- Now that DF-50.07 has fixed issues with savegames overwriting each other, DFHack fort-specific settings should also now be saved properly. You can check which tools are enabled by bringing up the DFHack control panel (
gui/control-panel
) gui/dig
is our first entry into the realm of visual design tools. Draw geometric shapes, lay out exploratory mining patterns, and, finally, get your stairs set up the way you want them. Check it out!confirm
makes a reappearance in this version. You will now get a confirmation prompt (that you can pause or disable if you don't like) that will prevent you from accidentally deleting a squad, destroying the trade depot when traders are using it, and many other regret-inducing actions that you can't undo.
Newly tested/updated tools
These are the existing tools that have been reported as working on the tracking spreadsheet. Thank you for all the people who have left comments there detailing which tools work and which ones don't! Your testing allowed us to make these tools available much faster than we otherwise would have.
autolabor
: Automatically manage dwarf labors.autonestbox
: Auto-assign egg-laying female pets to nestbox zones.confirm
: Adds confirmation dialogs for destructive actions.
Generated release notes
New Scripts
gui/dig
: digging designation tool for shapes and patternsmakeown
: adds the selected unit as a member of your fortress
Fixes
- Fix persisted data not being written on manual save
- Fix right click sometimes closing both a DFHack window and a vanilla panel
- Fixed issue with scrollable lists having some data off-screen if they were scrolled before being made visible
autochop
: fixed bug related to lua stack smashing behavior in returned stockpile configsautomelt
: fixed bug related to lua stack smashing behavior in returned stockpile configschannel-safely
: fixed bug resulting in marker mode never being set for any designationfix/protect-nicks
: now works by setting the historical figure nicknamegui/liquids
: fixed issues with unit pathing after adding/removing liquidsgui/unit-syndromes
: allow the window widgets to be interacted withnestboxes
:- now cancels any in-progress hauling jobs when it protects a fertile egg
- now scans for eggs more frequently and cancels any in-progress hauling jobs when it protects a fertile egg
Units::isFortControlled
: Account for agitated wildlife
Misc Improvements
- replaced DFHack logo used for the hover hotspot with a crisper image
autobutcher
:- changed defaults from 5 females / 1 male to 4 females / 2 males so a single unfortunate accident doesn't leave players without a mating pair
- now immediately loads races available at game start into the watchlist
autodump
:- reinstate
autodump-destroy-item
, hotkey: Ctrl-K - new hotkey for
autodump-destroy-here
: Ctrl-H
- reinstate
automelt
: is now more resistent to vanilla savegame corruptionclean
: new hotkey forspotclean
: Ctrl-Cdig
: new hotkeys for vein designation on z-level (Ctrl-V) and vein designation across z-levels (Ctrl-Shift-V)gui/gm-editor
:- now supports multiple independent data inspection windows
- now prints out contents of coordinate vars instead of just the type
hotkeys
: DFHack logo is now hidden on screens where it covers important information when in the default position (e.g. when choosing an embark site)misery
: now persists state with the fortorders
: recipe for silver crossbows removed fromlibrary/military
as it is not a vanilla recipe, but is available inlibrary/military_include_artifact_materials
rejuvenate
: now takes an --age parameter to choose a desired age.stonesense
: added anINVERT_MOUSE_Z
option to invert the mouse wheel direction
Lua
overlay
: overlay widgets can now specify focus paths for the viewscreens they attach to so they only appear in specific contexts. seeoverlay-dev-guide
for details.widgets.CycleHotkeyLabel
: Addedkey_back
optional parameter to cycle backwards.widgets.FilteredList
: Addedcase_sensitive
optional paramter to determine if filtering is case sensitive.widgets.HotkeyLabel
:- Added
setLabel
method to allow easily updating the label text without mangling the keyboard shortcut. - Added
setOnActivate
method to allow easily updating theon_activate
callback.
- Added
Structures
- added missing tiletypes and corrected a few old ones based on a list supplied by Toady