forked from DFHack/scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
changelog.txt
579 lines (484 loc) · 36.9 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
===[[[
This file contains changes specific to the scripts repo. See docs/changelog.txt
in the dfhack repo for a full description, or
https://docs.dfhack.org/en/latest/docs/dev/Documentation.html#building-the-changelogs
NOTE: currently, gen_changelog.py expects a "Future" section to exist at the
top of this file (even if no changes are listed under it), or you will get a
"Entry without section" error. Also, to maintain proper sorting in the generated
changelogs when making a new release, docs/changelog.txt in the dfhack repo must
have the new release listed in the right place, even if no changes were made in
that repo.
]]]
# Future
## New Scripts
## Fixes
## Misc Improvements
- `quickfort`: now reads player-created blueprints from ``dfhack-config/blueprints/`` instead of the old ``blueprints/`` directory. Be sure to move over your blueprints to the new directory!
## Removed
# 50.07-alpha3
## Fixes
-@ `gui/create-item`: fix generic corpsepiece spawning
## Misc Improvements
- `gui/create-item`: added ability to spawn 'whole' corpsepieces (every layer of a part)
-@ `gui/dig`: Allow placing an extra point (curve) while still placing the second main point
-@ `gui/dig`: Allow placing n-point shapes, shape rotation/mirroring
-@ `gui/dig`: Allow second bezier point, mirror-mode for freeform shapes, symmetry mode
# 50.07-alpha2
## New Scripts
- `combine`: combines stacks of food and plant items.
## Fixes
- `troubleshoot-item`: fix printing of job details for chosen item
- `makeown`: fixes errors caused by using makeown on an invader
-@ `gui/blueprint`: correctly use setting presets passed on the commandline
-@ `gui/quickfort`: correctly use settings presets passed on the commandline
- `devel/query`: can now properly index vectors in the --table argument
-@ `forbid`: fix detection of unreachable items for items in containers
-@ `unforbid`: fix detection of unreachable items for items in containers
## Misc Improvements
- `troubleshoot-item`: output as bullet point list with indenting, with item description and ID at top
- `troubleshoot-item`: reports on items that are hidden, artifacts, in containers, and held by a unit
- `troubleshoot-item`: reports on the contents of containers with counts for each contained item type
- `devel/visualize-structure`: now automatically inspects the contents of most pointer fields, rather than inspecting the pointers themselves
- `devel/query`: will now search for jobs at the map coordinate highlighted, if no explicit job is highlighted and there is a map tile highlighted
- `caravan`: add trade screen overlay that assists with seleting groups of items and collapsing groups in the UI
- `gui/gm-editor` will now inspect a selected building itself if the building has no current jobs
## Removed
- `combine-drinks`: replaced by `combine`
- `combine-plants`: replaced by `combine`
# 50.07-alpha1
## New Scripts
- `gui/dig`: digging designation tool for shapes and patterns
- `makeown`: adds the selected unit as a member of your fortress
## Fixes
-@ `gui/unit-syndromes`: allow the window widgets to be interacted with
-@ `fix/protect-nicks`: now works by setting the historical figure nickname
-@ `gui/liquids`: fixed issues with unit pathing after adding/removing liquids
-@ `gui/dig`: Fix for 'continuing' auto-stair designation. Avoid nil index issue for tile_type
## Misc Improvements
- `gui/gm-editor`: now supports multiple independent data inspection windows
- `gui/gm-editor`: now prints out contents of coordinate vars instead of just the type
- `rejuvenate`: now takes an --age parameter to choose a desired age.
- `gui/dig` : Added 'Line' shape that also can draw curves, added draggable center handle
# 50.05-alpha3.1
## Fixes
-@ `gui/launcher`: no longer resets to the Help tab on every keystroke
# 50.05-alpha3
## New Scripts
- `autofish`: auto-manage fishing labors to control your stock of fish
- `gui/autofish`: GUI config and status panel interface for autofish
- `gui/automelt`: GUI config and status panel interface for automelt
- `gui/control-panel`: quick access to DFHack configuration
- `fix/civil-war`: removes negative relations with own government
- `fix/protect-nicks`: restore nicknames when DF loses them
- `forbid`: forbid and list forbidden items on the map
- `gui/unit-syndromes`: browser for syndrome information
## Fixes
- `build-now`: now correctly avoids adjusting non-empty tiles above constructions that it builds
- `catsplosion`: now only affects live, active units
- `quickfort`: allow floor bars, floor grates, and hatches to be placed over all stair types like vanilla allows
## Misc Improvements
- `ban-cooking`: ban announcements are now hidden by default; use new option ``--verbose`` to show them.
- `ban-cooking`: report number of items banned.
- `build-now`: now handles dirt roads and initializes farm plots properly
- `devel/click-monitor`: report on middle mouse button actions
-@ `gui/autochop`: hide uninteresting burrows by default
-@ `gui/blueprint`: allow map movement with the keyboard while the UI is open
- `gui/create-item`: support spawning corpse pieces (e.g. shells) under "body part"
- `gui/create-item`: added search and filter capabilities to the selection lists
- `gui/launcher`: make command output scrollback separate from the help text so players can continue to see the output of the previous command as they type the next one
- `gui/launcher`: allow double spacebar to pause/unpause the game, even while typing a command
- `gui/launcher`: clarify what is being shown in the autocomplete list (all commands, autocompletion of partially typed command, or commands related to typed command)
- `gui/launcher`: support running commands directly from the autocomplete list via double-clicking
- `gui/liquids`: interface overhaul, also now allows spawning river sources, setting/adding/removing liquid levels, and cleaning water from being salty or stagnant
- `gui/overlay`: now focuses on repositioning overlay widgets; enabling, disabling, and getting help for overlay widgets has moved to the new `gui/control-panel`
-@ `gui/quickcmd`: now acts like a regular window instead of a modal dialog
- `gui/quickfort`: don't close the window when applying a blueprint so players can apply the same blueprint multiple times more easily
- `locate-ore`: now only searches revealed tiles by default
- `modtools/spawn-liquid`: sets tile temperature to stable levels when spawning water or magma
- `prioritize`: pushing minecarts is now included in the default priortization list
- `prioritize`: now automatically starts boosting the default list of job types when enabled
- `unforbid`: avoids unforbidding unreachable and underwater items by default
- `gui/create-item`: added whole corpse spawning alongside corpsepieces. (under "corpse")
## Removed
- `show-unit-syndromes`: replaced by `gui/unit-syndromes`; html export is no longer supported
# 50.05-alpha2
## Fixes
-@ `gui/gm-editor`: fix errors displayed while viewing help screen
- `build-now`: don't error on constructions that do not have an item attached
## Removed
- `create-items`: replaced by `gui/create-item` ``--multi``
# 50.05-alpha1
## New Scripts
- `gui/autochop`: configuration frontend for the `autochop` plugin. you can pin the window and leave it up on the screen somewhere for live monitoring of your logging industry.
- `devel/tile-browser`: page through available textures and see their texture ids
- `allneeds`: list all unmet needs sorted by how many dwarves suffer from them.
## Fixes
- `make-legendary`: "MilitaryUnarmed" option now functional
## Misc Improvements
- `autounsuspend`: now saves its state with your fort
- `emigration`: now saves its state with your fort
- `prioritize`: now saves its state with your fort
- `unsuspend`: overlay now displays different letters for different suspend states so they can be differentiated in graphics mode (P=planning, x=suspended, X=repeatedly suspended)
- `unsuspend`: overlay now shows a marker all the time when in graphics mode. ascii mode still only shows when paused so that you can see what's underneath.
- `gui/gm-editor`: converted to a movable, resizable, mouse-enabled window
- `gui/launcher`: now supports a smaller, minimal mode. click the toggle in the launcher UI or start in minimal mode via the ``Ctrl-Shift-P`` keybinding
- `gui/launcher`: can now be dragged from anywhere on the window body
- `gui/launcher`: now remembers its size and position between invocations
- `gui/gm-unit`: converted to a movable, resizable, mouse-enabled window
- `gui/cp437-table`: converted to a movable, mouse-enabled window
- `gui/quickcmd`: converted to a movable, resizable, mouse-enabled window
- `gui/quickcmd`: commands are now stored globally so you don't have to recreate commands for every fort
- `devel/inspect-screen`: updated for new rendering semantics and can now also inspect map textures
- `exterminate`: added drown method. magma and drown methods will now clean up liquids automatically.
## Documentation
- `devel/hello-world`: updated to be a better example from which to start new gui scripts
# 0.47.05-r8
## New Scripts
- `gui/overlay`: configuration interface for the DFHack overlays and overlay widgets. includes a click-and-drag interface for repositioning widgets!
## Fixes
- `dwarf-op`: fixed error when matching dwarves by name
- `gui/gm-unit`: fixed behavior of ``+`` and ``-`` to adjust skill values instead of populating the search field
- `warn-stealers`: register callback with correct event name so that units entering the map are detected
- `warn-stealers`: announce thieving creatures that spawn already revealed
- `warn-stealers`: cache unit IDs instead of unit objects to avoid referencing stale pointers
- `workorder`: fix interpretation of json-specified orders that set the ``item_type`` field
## Misc Improvements
- `gui/blueprint`: support new blueprint phases and options
- `gui/create-item`: restrict materials to those normally allowed by the game by default, introduce new ``--unrestricted`` option for full freedom in choosing materials
- `gui/launcher`: show help for commands that start with ':' (like ``:lua``)
- `gui/quantum`: add option to allow corpses and refuse in your quantum stockpile
- `modtools/create-unit`: better unit naming, more argument checks, assign nemesis save data for units without civilization so they can be properly saved when offloaded
- `unsuspend`: new `overlay` for displaying status of suspended buildings (functionality migrated from removed `resume` plugin)
## Removed
- `gui/create-item`: removed ``--restricted`` option. it is now the default behavior
# 0.47.05-r7
## New Scripts
- `gui/kitchen-info`: adds more info to the Kitchen screen
- `gui/workorder-details`: adjusts work orders' input item, material, traits
- `warn-stealers`: warn when creatures that may steal your food, drinks, or items become visible
- `gui/launcher`: in-game command launcher with autocomplete, history, and context-sensitive help
- `max-wave`: dynamically limit the next immigration wave, can be set to repeat
- `pop-control`: persistent per fortress population cap, `hermit`, and `max-wave` management
## Fixes
- `devel/query`: fixed error when --tile is specified
- `gui/unit-info-viewer`: fix logic for displaying undead creature names
- `gui/workflow`: restore functionality to the add/remove/order hotkeys on the workflow status screen
- `emigration`: fix emigrant logic so unhappy dwarves leave as designed
- `gui/gm-unit`: allow ``+`` and ``-`` to adjust skill values as intended instead of letting the filter intercept the characters
- `dwarf-op`: fixed error when applying the Miner job to dwarves
- `view-item-info`: fixed a couple errors when viewing items without materials
- `modtools/moddable-gods`: fixed an error when assigning spheres
## Misc Improvements
- `devel/query`: inform the user when a query has been truncated due to ``--maxlength`` being hit.
- `devel/query`: increased default maxlength value from 257 to 2048
- `gui/gm-unit`: don't clear the list filter when you adjust a skill value
- `gui/quickfort`: better formatting for the generated manager orders report
- `gui/quickfort`: you can now click on the map to move the blueprint anchor point to that tile instead of having to use the cursor movement keys
- `gui/quickfort`: display an error message when the blueprints directory cannot be found
- `prioritize`: new ``defaults`` keyword to prioritize the list of jobs that the community agrees should generally be prioritized. Run ``prioritize -a defaults`` to try it out in your fort!
- `quickfort`: library blueprints are now included by default in ``quickfort list`` output. Use the new ``--useronly`` (or just ``-u``) option to filter out library bluerpints.
- `quickfort`: better error message when the blueprints directory cannot be found
- `dwarf-op`: replaces [ a b c ] option lists with a,b,c option lists
## Removed
- `fix/build-location`: The corresponding DF bug (5991) was fixed in DF 0.40.05
- `fix/diplomats`: DF bug 3295 fixed in 0.40.05
- `fix/fat-dwarves`: DF bug 5971 fixed in 0.40.05
- `fix/feeding-timers`: DF bug 2606 is fixed in 0.40.12
- `fix/merchants`: DF bug that prevents humans from making trade agreements has been fixed
- `gui/assign-rack`: No longer useful in current DF versions
- `gui/hack-wish`: Replaced by `gui/create-item`
- `gui/no-dfhack-init`: No longer useful since players don't have to create their own ``dfhack.init`` files anymore
# 0.47.05-r6
## New Scripts
- `assign-minecarts`: automatically assign minecarts to hauling routes that don't have one
- `deteriorate`: combines, replaces, and extends previous `deteriorateclothes`, `deterioratecorpses`, and `deterioratefood` scripts.
- `gui/petitions`: shows petitions. now you can see which guildhall/temple you agreed to build!
- `gui/quantum`: point-and-click tool for creating quantum stockpiles
- `gui/quickfort`: shows blueprint previews on the live map so you can apply them interactively
- `modtools/fire-rate`: allows modders to adjust the rate of fire for ranged attacks
## Fixes
- `build-now`: walls built above other walls can now be deconstructed like regularly-built walls
- `gui/dfstatus`: no longer count items owned by traders
- `gui/unit-info-viewer`: fix calculation/labeling of unit size
## Misc Improvements
- `build-now`: buildings that were just designated with `buildingplan` are now built immediately (as long as there are items available to build the buildings with) instead of being skipped until buildingplan gets around to doing its regular scan
- `caravan`: new ``unload`` command, fixes endless unloading at the depot by reconnecting merchant pack animals that were disconnected from their owners
- `deteriorate`: new ``now`` command immediately deteriorates items of the specified types
- `list-agreements`: now displays translated guild names, worshipped deities, petition age, and race-appropriate professions (e.g. "Craftsdwarf" instead of "Craftsman")
- `workorder`: a manager is no longer required for orders to be created (matching bevavior in the game itself)
## Removed
- `devel/unforbidall`: please use `unforbid` instead. You can silence the output with ``unforbid all --quiet``
- `deteriorateclothes`: please use ``deteriorate --types=clothes`` instead
- `deterioratecorpses`: please use ``deteriorate --types=corpses`` instead
- `deterioratefood`: please use ``deteriorate --types=food`` instead
# 0.47.05-r5
## New Scripts
- `devel/eventful-client`: useful for testing eventful events
## Fixes
- `devel/query`: fixed a problem printing parents when the starting path had lua pattern special characters in it
- `devel/query`: fixed a crash when trying to iterate over linked lists
- `gui/advfort`: encrust and stud jobs no longer consume reagents without actually improving the target item
- `quickfort`: contructions and bridges are now properly placed over natural ramps
- `setfps`: keep internal ratio of processing FPS to graphics FPS in sync when updating FPS
## Misc Improvements
- `autonick`: now displays help instead of modifying dwarf nicknames when run without parameters. use ``autonick all`` to rename all dwarves.
- `autonick`: added ``--quiet`` and ``--help`` options
- `gui/blueprint`: support new `blueprint` options and phases
- `quickfort`: support transformations for blueprints that use expansion syntax
- `quickfort`: adjust direction affinity when transforming buildings (e.g. bridges that open to the north now open to the south when rotated 180 degrees)
- `quickfort`: automatically adjust cursor movements on the map screen in ``#query`` and ``#config`` modes when the blueprint is transformed. e.g. ``{Up}`` will be played back as ``{Right}`` when the blueprint is rotated clockwise and the direction key would move the map cursor
- `quickfort`: new blueprint mode: ``#config``; for playing back key sequences that don't involve the map cursor (like configuring hotkeys, changing standing orders, or modifying military uniforms)
- `quickfort`: API function ``apply_blueprint`` can now take ``data`` parameters that are simple strings instead of coordinate maps. This allows easier application of blueprints that are just one cell.
# 0.47.05-r4
## Fixes
- `quickfort`: produce a useful error message instead of a code error when a bad query blueprint key sequence leaves the game in a mode that does not have an active cursor
- `quickfort`: restore functionality to the ``--verbose`` commandline flag
- `quickfort`: don't designate tiles for digging if they are within the bounds of a planned or constructed building
- `quickfort`: allow grates, bars, and hatches to be built on flat floor (like DF itself allows)
- `quickfort`: allow tracks to be built on hard, natural rock ramps
- `quickfort`: allow dig priority to be properly set for track designations
- `quickfort`: fix incorrect directions for tracks that extend south or east from a track segment pair specified with expansion syntax (e.g. T(4x4))
- `quickfort`: fix parsing of multi-part extended zone configs (e.g. when you set custom supply limits for hospital zones AND set custom flags for a pond)
- `quickfort`: fix error when attempting to set a custom limit for plaster powder in a hospital zone
- `exportlegends`: fix issue where birth year was outputted as birth seconds
## Misc Improvements
- `gui/blueprint`: support the new ``--splitby`` and ``--format`` options for `blueprint`
- `gui/blueprint`: hide help text when the screen is too short to display it
- `quickfort`: add ``quickfort.apply_blueprint()`` API function that can be called directly by other scripts
- `quickfort`: by default, don't designate tiles for digging that have masterwork engravings on them. quality level to preserve is configurable with the new ``--preserve-engravings`` param
- `quickfort`: implement single-tile track aliases so engraved tracks can be specified tile-by-tile just like constructed tracks
- `quickfort`: allow blueprints to jump up or down multiple z-levels with a single command (e.g. ``#>5`` goes down 5 levels)
- `quickfort`: blueprints can now be repeated up and down a specified number of z-levels via ``repeat`` markers in meta blueprints or the ``--repeat`` commandline option
- `quickfort`: blueprints can now be rotated, flipped, and shifted via ``transform`` and ``shift`` markers in meta blueprints or the corresponding commandline options
## Removed
- `digfort`: please use `quickfort` instead
# 0.47.05-r3
## New Scripts
- `autonick`: gives dwarves unique nicknames
- `build-now`: instantly completes planned building constructions
- `do-job-now`: makes a job involving current selection high priority
- `prioritize`: automatically boosts the priority of current and/or future jobs of specified types, such as hauling food, tanning hides, or pulling levers
- `reveal-adv-map`: exposes/hides all world map tiles in adventure mode
## Fixes
- `devel/export-dt-ini`: fixed incorrect vtable address on Windows
- `quickfort`: allow machines (e.g. screw pumps) to be built on ramps just like DF allows
- `quickfort`: fix error message when the requested label is not found in the blueprint file
## Misc Improvements
- `assign-beliefs`, `assign-facets`: now update needs of units that were changed
- `devel/query`: updated script to v3.2 (i.e. major rewrite for maintainability/readability)
- `devel/query`: merged options ``-query`` and ``-querykeys`` into ``-search``
- `devel/query`: merged options ``-depth`` and ``-keydepth`` into ``-maxdepth``
- `devel/query`: replaced option ``-safer`` with ``-excludetypes`` and ``-excludekinds``
- `devel/query`: improved how tile data is dealt with identification, iteration, and searching
- `devel/query`: added option ``-findvalue``
- `devel/query`: added option ``-showpaths`` to print full data paths instead of nested fields
- `devel/query`: added option ``-nopointers`` to disable printing values with memory addresses
- `devel/query`: added option ``-alignto`` to set the value column's alignment
- `devel/query`: added options ``-oneline`` and alias ``-1`` to avoid using two lines for fields with metadata
- `devel/query`: added support for matching multiple patterns
- `devel/query`: added support for selecting the highlighted job, plant, building, and map block data
- `devel/query`: added support for selecting a Lua script (e.g. `dorf_tables`)
- `devel/query`: added support for selecting a Json file (e.g. dwarf_profiles.json)
- `devel/query`: removed options ``-listall``, ``-listfields``, and ``-listkeys`` - these are now simply default behaviour
- `devel/query`: ``-table`` now accepts the same abbreviations (global names, ``unit``, ``screen``, etc.) as `lua` and `gui/gm-editor`
- `dorf_tables`: integrated `devel/query` to show the table definitions when requested with ``-list``
- `geld`: fixed ``-help`` option
- `gui/gm-editor`: made search case-insensitive
- `quickfort`: accept multiple commands, list numbers, and/or blueprint lables on a single commandline
- `unretire-anyone`: replaced the 'undead' descriptor with 'reanimated' to make it more mod-friendly
- `warn-starving`: added an option to only check sane dwarves
## Internals
- Install tests in the scripts repo into hack/scripts/test/scripts when the CMake variable BUILD_TESTS is defined
# 0.47.05-r2
## New Scripts
- `clear-webs`: removes all webs on the map and/or frees any webbed creatures
- `devel/block-borders`: overlay that displays map block borders
- `devel/luacov`: generate code test coverage reports for script development. Define the ``DFHACK_ENABLE_LUACOV=1`` environment variable to start gathering coverage metrics.
- `fix/drop-webs`: causes floating webs to fall to the ground
- `gui/blueprint`: interactive frontend for the `blueprint` plugin (with mouse support!)
- `gui/mass-remove`: mass removal/suspension tool for buildings and constructions
- `reveal-hidden-sites`: exposes all undiscovered sites
- `set-timeskip-duration`: changes the duration of the "Updating World" process preceding the start of a new game, enabling you to jump in earlier or later than usual
## Fixes
- `bodyswap`: stopped prior party members from tagging along after bodyswapping and reloading the map
- `bodyswap`: made companions of bodyswapping targets get added to the adventurer party - they can now be viewed using the in-game party system
- `color-schemes`: fixed an error in the ``register`` subcommand when the DF path contains certain punctuation characters
- `gui/advfort`: fixed an issue where starting a workshop job while not standing at the center of the workshop required advancing time manually
- `gui/unit-info-viewer`: fixed size description displaying unrelated values instead of size
- `quickfort`: comments in blueprint cells no longer prevent the rest of the row from being read. A cell with a single '#' marker in it, though, will still stop the parser from reading further in the row.
- `quickfort`: fixed an off-by-one line number accounting in blueprints with implicit ``#dig`` modelines
- `quickfort`: changed to properly detect and report an error on sub-alias params with no values instead of just failing to apply the alias later (if you really want an empty value, use ``{Empty}`` instead)
- `quickfort`: improved handling of non-rectangular and non-solid extent-based structures (like fancy-shaped stockpiles and farm plots)
- `quickfort`: fixed conversion of numbers to DF keycodes in ``#query`` blueprints
- `quickfort`: fixed various errors with cropping across the map edge
- `quickfort`: properly reset config to default values in ``quickfort reset`` even if if the ``dfhack-config/quickfort/quickfort.txt`` config file doesn't mention all config vars. Also now works even if the config file doesn't exist.
## Misc Improvements
- `devel/annc-monitor`: added ``report enable|disable`` subcommand to filter combat reports
- `gui/advfort`: added workshop name to workshop UI
- `quickfort`: added the ``--cursor`` option for running a blueprint at specific coordinates instead of starting at the game cursor position
- `quickfort`: added more helpful error messages for invalid modeline markers
- `quickfort`: added support for extra space characters in blueprints
- `quickfort`: added a warning when an invalid alias is encountered instead of silently ignoring it
- `quickfort`: made more quiet when the ``--quiet`` parameter is specified
- `setfps`: improved error handling
- `unretire-anyone`: the historical figure selection list now includes the ``SYN_NAME`` (necromancer, vampire, etc) of figures where applicable
# 0.47.05-r1
## Misc Improvements
- `gui/no-dfhack-init`: clarified how to dismiss dialog that displays when no ``dfhack.init`` file is found
- `quickfort`: an active cursor is no longer required for running #notes blueprints (like the dreamfort walkthrough)
- `quickfort`: you can now be in any mode with an active cursor when running ``#query`` blueprints (before you could only be in a few "approved" modes, like look, query, or place)
- `quickfort`: refined ``#query`` blueprint sanity checks: cursor should still be on target tile at end of configuration, and it's ok for the screen ID to change if you are destroying (or canceling destruction of) a building
- `quickfort`: now reports how many work orders were added when generating manager orders from blueprints in the gui dialog
- `quickfort`: added ``--dry-run`` option to process blueprints but not change any game state
- `quickfort`: you can now specify the number of desired barrels, bins, and wheelbarrows for individual stockpiles when placing them
- `quickfort`: ``quickfort orders`` on a ``#place`` blueprint will now enqueue manager orders for barrels, bins, or wheelbarrows that are explicitly set in the blueprint.
- `quickfort`: you can now add alias definitions directly to your blueprint files instead of having to put them in a separate aliases.txt file. makes sharing blueprints with custom alias definitions much easier.
## Documentation
- `digfort`: added deprecation warnings - digfort has been replaced by `quickfort`
# 0.47.05-beta1
## Fixes
- `quickfort`: raw numeric `quickfort-dig-priorities` (e.g. ``3``, which is a valid shorthand for ``d3``) now works when used in .xlsx blueprints
## Misc Improvements
- `quickfort`: new commandline options for setting the initial state of the gui dialog. for example: ``quickfort gui -l dreamfort notes`` will start the dialog filtered for the dreamfort walkthrough blueprints
# 0.47.04-r5
## New Scripts
- `gui/quickfort`: fast access to the quickfort interactive dialog
- `workorder-recheck`: resets the selected work order to the ``Checking`` state
## Fixes
- `quickfort`: zones are now created in the active state by default
- `quickfort`: solve rare crash when changing UI modes
## Misc Improvements
- `quickfort`: new blueprint mode: ``#ignore``, useful for scratch space or personal notes
- `quickfort`: implement ``{Empty}`` keycode for use in quickfort aliases; useful for defining blank-by-default alias values
- `quickfort`: more flexible commandline parsing allowing for more natural parameter ordering (e.g. where you used to have to write ``quickfort list dreamfort -l`` you can now write ``quickfort list -l dreamfort``)
- `quickfort`: print out blueprint names that a ``#meta`` blueprint is applying so it's easier to understand what meta blueprints are doing
- `quickfort`: whitespace is now allowed between a marker name and the opening parenthesis in blueprint modelines. for example, ``#dig start (5; 5)`` is now valid (you used to be required to write ``#dig start(5; 5)``)
# 0.47.04-r4
## New Scripts
- `fix/corrupt-equipment`: fixes some military equipment-related corruption issues that can cause DF crashes
## Fixes
- `adaptation`: fixed handling of units with no cave adaptation suffered yet
- `assign-goals`: fixed error preventing new goals from being created
- `assign-preferences`: fixed handling of preferences for flour
- `deathcause`: fixed an error when inspecting certain corpses
- `quickfort`: fixed handling of modifier keys (e.g. ``{Ctrl}`` or ``{Alt}``) in query blueprints
- `quickfort`: fixed misconfiguration of nest boxes, hives, and slabs that were preventing them from being built from build blueprints
- `quickfort`: fixed valid placement detection for floor hatches, floor grates, and floor bars (they were erroneously being rejected from open spaces and staircase tops)
- `quickfort`: fixed query blueprint statistics being added to the wrong metric when both a query and a zone blueprint are run by the same meta blueprint
- `quickfort`: added missing blueprint labels in gui dialog list
- `quickfort`: fixed occupancy settings for extent-based structures so that stockpiles can be placed within other stockpiles (e.g. in a checkerboard or bullseye pattern)
- `unsuspend`: now leaves buildingplan-managed buildings alone and doesn't unsuspend underwater tasks
## Misc Improvements
- `devel/export-dt-ini`: updated for Dwarf Therapist 41.2.0
- `gui/advfort`: added support for linking to hatches and pressure plates with mechanisms
- `modtools/add-syndrome`: added support for specifying syndrome IDs instead of names
- `quickfort`: query blueprint aliases can now accept parameters for dynamic expansion - see dfhack-config/quickfort/aliases.txt for details
- `quickfort`: alias names can now include dashes and underscores (in addition to letters and numbers)
- `quickfort`: improved speed of first call to ``quickfort list`` significantly, especially for large blueprint libraries
- `quickfort`: added ``query_unsafe`` setting to disable query blueprint error checking - useful for query blueprints that send unusual key sequences
- `quickfort`: added support for bookcases, display cases, and offering places (altars)
- `quickfort`: added configuration support for zone pit/pond, gather, and hospital sub-menus in zone blueprints
- `quickfort`: removed ``buildings_use_blocks`` setting and replaced it with more flexible functionality in `buildingplan`
- `quickfort`: added support for creating uninitialized stockpiles with :kbd:`c`
# 0.47.04-r3
## New Scripts
- `quickfort`: DFHack-native implementation of quickfort with many new features and integrations - see the `quickfort-user-guide` for details
- `timestream`: controls the speed of the calendar and creatures
- `uniform-unstick`: prompts units to reevaluate their uniform, by removing/dropping potentially conflicting worn items
## Fixes
- `ban-cooking`: fixed an error in several subcommands
## Misc Improvements
- `unretire-anyone`: made undead creature names appear in the historical figure list
# 0.47.04-r2
## New Scripts
- `animal-control`: helps manage the butchery and gelding of animals
- `devel/kill-hf`: kills a historical figure
- `geld`: gelds or ungelds animals
- `list-agreements`: lists all guildhall and temple agreements
- `list-waves`: displays migration wave information for citizens/units
- `ungeld`: ungelds animals (wrapper around `geld`)
## Fixes
- `digfort`: fixed y-line tracking when .csv files contain lines with only commas
- `digfort`: fixed an issue causing blueprints touching the southern or eastern edges of the map to be rejected (northern and western edges were already allowed). This allows blueprints that span the entire embark area.
- `exportlegends`: fixed an issue where two different ``<reason>`` tags could be included in a ``<historical_event>``
- `exportlegends`: stopped including some tags with ``-1`` values which don't provide useful information
- `gui/advfort`: fixed "operate pump" job
- `gui/load-screen`: fixed an issue causing longer timezones to be cut off
- `names`: fixed an error preventing the script from working
- `names`: fixed an issue causing renamed units to display their old name in legends mode and some other places
- `modtools/moddable-gods`: fixed an error when creating the historical figure
- `modtools/moddable-gods`: removed unused ``-domain`` and ``-description`` arguments
- `modtools/moddable-gods`: made ``-depictedAs`` argument work
- `pref-adjust`: fixed some compatibility issues and a potential crash
## Misc Improvements
- `add-recipe`: added tool recipes (minecarts, wheelbarrows, stepladders, etc.)
- `add-recipe`: added a command explanation or error message when entering an invalid command
- `armoks-blessing`: added adjustments to values and needs
- `devel/query`: added many new query options
- `digfort`: handled double quotes (") at the start of a string, allowing .csv files exported from spreadsheets to work without manual modification
- `digfort`: documented that removing ramps, cutting trees, and gathering plants are indeed supported
- `digfort`: added a ``force`` option to truncate blueprints if the full blueprint would extend off the edge of the map
- `dwarf-op`: added ability to select dwarves based on migration wave
- `dwarf-op`: added ability to protect dwarves based on symbols in their custom professions
- `exportlegends`: changed some flags to be represented by self-closing tags instead of true/false strings (e.g. ``<is_volcano/>``) - note that this may require changes to other XML-parsing utilities
- `exportlegends`: changed some enum values from numbers to their string representations
- `exportlegends`: added ability to save all files to a subfolder, named after the region folder and date by default
- `gui/advfort`: added support for specifying the entity used to determine available resources
- `gui/gm-editor`: added support for automatically following ref-targets when pressing the ``i`` key
- `modtools/moddable-gods`: added support for ``neuter`` gender
- `pref-adjust`: added support for adjusting just the selected dwarf
- `pref-adjust`: added a new ``goth`` profile
- `remove-stress`: added a ``-value`` argument to enable setting stress level directly
- `workorder`: changed default frequency from "Daily" to "OneTime"
# 0.47.04-r1
## Fixes
- `catsplosion`: fixed error when handling races with only one caste (e.g. harpies)
-@ `exportlegends`: fixed error when exporting maps
- `spawnunit`: fixed an error when forwarding some arguments but not a location to `modtools/create-unit`
## Misc Improvements
- `exportlegends`:
- made interaction export more robust and human-readable
- removed empty ``<item_subtype>`` and ``<claims>`` tags
- `modtools/create-unit`:
- added ``-equip`` option to equip created units
- added ``-skills`` option to give skills to units
- added ``-profession`` and ``-customProfession`` options to adjust unit professions
# 0.47.04-beta1
## New scripts
- `color-schemes`: manages color schemes
- `devel/print-event`: prints the description of an event by ID or index
- `gui/color-schemes`: an in-game interface for `color-schemes`
- `light-aquifers-only`: changes heavy aquifers to light aquifers
- `on-new-fortress`: runs DFHack commands only in a new fortress
- `once-per-save`: runs DFHack commands unless already run in the current save
- `resurrect-adv`: brings your adventurer back to life
- `reveal-hidden-units`: exposes all sneaking units
- `workorder`: allows queuing manager jobs; smart about shear and milk creature jobs
## Fixes
- `devel/visualize-structure`: fixed padding detection for globals
- `exportlegends`:
- added UTF-8 encoding and XML escaping for more fields
- added checking for unhandled structures to avoid generating invalid XML
- fixed missing fields in ``history_event_assume_identityst`` export
- `full-heal`:
- when resurrected by specifying a corpse, units now appear at the location of the corpse rather than their location of death
- resurrected units now have their tile occupancy set (and are placed in the prone position to facilitate this)
## Misc Improvements
- `devel/export-dt-ini`: updated some field names for DT for 0.47
- `devel/visualize-structure`: added human-readable lengths to containers
- `exportlegends`:
- added evilness and force IDs to regions
- added profession and weapon info to relevant entities
- added support for many new history events in 0.47
- added historical event relationships and supplementary data
- `full-heal`:
- made resurrection produce a historical event viewable in Legends mode
- made error messages more explanatory
- `install-info`: added DFHack build ID to report
- `modtools/create-item`: added ``-matchingGloves`` and ``-matchingShoes`` arguments
- `modtools/create-unit`:
- added ``-duration`` argument to make the unit vanish after some time
- added ``-locationRange`` argument to allow spawning in a random position within a defined area
- added ``-locationType`` argument to specify the type of location to spawn in
- `unretire-anyone`:
- added ``-dead`` argument to revive and enable selection of a dead historical figure to use as an adventurer in adv mode