forked from DFHack/scripts
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathchangelog.txt
1204 lines (993 loc) · 77.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
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
===[[[
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.
Template for new versions:
## New Tools
## New Features
## Fixes
## Misc Improvements
## Removed
]]]
# Future
## New Tools
## New Features
## Fixes
- `full-heal`: fix ``-r --all_citizens`` option combination not resurrecting citizens
- `open-legends`: don't intercept text bound for vanilla search widgets
- `gui/unit-info-viewer`: correctly display skill levels when rust is involved
- `build-now`: fix error when building buildings that (in previous DF versions) required the architecture labor
## Misc Improvements
- `build-now`: if `suspendmanager` is running, run an unsuspend cycle immediately before scanning for buildings to build
## Removed
# 50.13-r3
## New Tools
- `advtools`: collection of useful commands and overlays for adventure mode
- `advtools`: added an overlay that automatically fixes corrupt throwing/shooting state, preventing save/load crashes
- `advtools`: advtools party - promotes one of your companions to become a controllable adventurer
- `advtools`: advtools pets - fixes pets you gift in adventure mode.
- `pop-control`: (reinstated) limit the maximum size of migrant waves
- `bodyswap`: (reinstated) take control of another unit in adventure mode
- `gui/sitemap`: list and zoom to people, locations, and artifacts
- `devel/tree-info`: print a technical visualization of tree data
- `gui/tiletypes`: interface for modifying map tiles and tile properties
- `fix/population-cap`: fixes the situation where you continue to get migrant waves even when you are above your configured population cap
- `fix/occupancy`: fixes issues where you can't build somewhere because the game tells you an item/unit/building is in the way but there's nothing there
- `fix/sleepers`: (reinstated) fixes sleeping units belonging to a camp that never wake up.
- `timestream`: (reinstated) keep the game running quickly even when there are large numbers of units on the map
- `gui/journal`: fort journal with a multi-line text editor
- `devel/luacov`: (reinstated) add Lua script coverage reporting for use in testing and performance analysis
## New Features
- `buildingplan`: dimension tooltip is now displayed for constructions and buildings that are designated over an area, like bridges and farm plots
- `gui/notify`: new notification type: injured citizens; click to zoom to injured units; also displays a warning if your hospital is not functional (or if you have no hospital)
- `gui/notify`: new notification type: drowning and suffocation progress bars for adventure mode
- `prioritize`: new info panel on under-construction buildings showing if the construction job has been taken and by whom. click to zoom to builder; toggle high priority status for job if it's not yet taken and you need it to be built ASAP
- `gui/unit-info-viewer`: new overlay for displaying progress bars for skills on the unit info sheet
- `gui/pathable`: new "Depot" mode that shows whether wagons can path to your trade depot
- `advtools`: automatically add a conversation option to "ask whereabouts of" for all your relationships (before, you could only ask whereabouts of people involved in rumors)
- `gui/design`: all-new visually-driven UI for much improved usability
## Fixes
- `assign-profile`: fix handling of ``unit`` option for setting target unit id
- `gui/gm-unit`: correctly display skill levels above Legendary+5
- `gui/gm-unit`: fix errors when editing/randomizing colors and body appearance
- `quickfort`: fix incorrect handling of stockpiles that are split into multiple separate areas but are given the same label (indicating that they should be part of the same stockpile)
- `makeown`: set animals to tame and domesticated
- `gui/sandbox`: spawned citizens can now be useful military squad members
- `gui/sandbox`: spawned undead now have a purple shade (only after save and reload, though)
- `caravan`: fix errors in trade dialog if all fort items are traded away while the trade dialog is showing fort items and the `confirm` trade confirmation is shown
- `control-panel`: restore non-default values of per-save enabled/disabled settings for repeat-based commands
- `confirm`: fix confirmation prompt behavior when overwriting a hotkey zoom location
- `quickfort`: allow farm plots to be built on muddy stone (as per vanilla behavior)
- `suspend`: remove broken ``--onlyblocking`` option; restore functionality to ``suspend all``
- `gui/create-item`: allow creation of adamantine thread, wool, and yarn
- `gui/notify`: the notification panel no longer responds to the Enter key so Enter key is passed through to the vanilla UI
- `clear-smoke`: properly tag smoke flows for garbage collection to avoid memory leak
- `warn-stranded`: don't warn for babies carried by mothers who happen to be gathering fruit from trees
- `prioritize`: also boost priority of already-claimed jobs when boosting priority of a job type so those jobs are not interrupted
## Misc Improvements
- `item`: option for ignoring uncollected spider webs when you search for "silk"
- `gui/launcher`: "space space to toggle pause" behavior is skipped if the game was paused when `gui/launcher` came up to prevent accidental unpausing
- `gui/unit-info-viewer`: add precise unit size in cc (cubic centimeters) for comparison against the wiki values. you can set your preferred number format for large numbers like this in the preferences of `control-panel` or `gui/control-panel`
- `gui/unit-info-viewer`: now displays a unit's weight relative to a similarly-sized well-known creature (dwarves, elephants, or cats)
- `gui/unit-info-viewer`: shows a unit's size compared to the average for the unit's race
- `caravan`: optional overlay to hide vanilla "bring trade goods to depot" button (if you prefer to always use the DFHack version and don't want to accidentally click on the vanilla button). enable ``caravan.movegoods_hider`` in `gui/control-panel` UI Overlays tab to use.
- `caravan`: bring goods to depot screen now shows (approximate) distance from item to depot
- `gui/design`: circles are more circular (now matches more pleasing shape generated by ``digcircle``)
- `gui/quickfort`: you can now delete your blueprints from the blueprint load dialog
- `caravan`: remember filter settings for pedestal item assignment dialog
- `quickfort`: new ``delete`` command for deleting player-owned blueprints (library and mod-added blueprints cannot be deleted)
- `quickfort`: support enabling `logistics` features for autoforbid and autoclaim on stockpiles
- `gui/quickfort`: allow farm plots, dirt roads, and paved roads to be designated around partial obstructions without callling it an error, matching vanilla behavior
- `gui/launcher`: refresh default tag filter when mortal mode is toggled in `gui/control-panel` so changes to which tools autocomplete take effect immediately
- `gui/civ-alert`: you can now register multiple burrows as civilian alert safe spaces
- `exterminate`: add ``all`` target for convenient scorched earth tactics
- `empty-bin`: select a stockpile, tile, or building to empty all containers in the stockpile, tile, or building
- `exterminate`: add ``--limit`` option to limit number of exterminated creatures
- `exterminate`: add ``knockout`` and ``traumatize`` method for non-lethal incapacitation
- `caravan`: add shortcut to the trade request screen for selecting item types by value (e.g. so you can quickly select expensive gems or cheap leather)
- `gui/notify`: notification panel extended to apply to adventure mode
- `gui/control-panel`: highlight preferences that have been changed from the defaults
- `gui/quickfort`: buildings can now be constructed in a "high priority" state, giving them first dibs on `buildingplan` materials and setting their construction jobs to the highest priority
- `prioritize`: add ``ButcherAnimal`` to the default prioritization list (``SlaughterAnimal`` was already there, but ``ButcherAnimal`` -- which is different -- was missing)
- `prioritize`: list both unclaimed and total counts for current jobs when the --jobs option is specified
- `prioritize`: boost performance of script by not tracking number of times a job type was prioritized
- `gui/unit-syndromes`: make werecreature syndromes easier to search for
## Removed
- `max-wave`: merged into `pop-control`
- `devel/find-offsets`, `devel/find-twbt`, `devel/prepare-save`: remove development scripts that are no longer useful
- `fix/item-occupancy`, `fix/tile-occupancy`: merged into `fix/occupancy`
- `adv-fix-sleepers`: renamed to `fix/sleepers`
- `adv-rumors`: merged into `advtools`
# 50.13-r2
## New Tools
- Updated for adventure mode: `gui/sandbox`, `gui/create-item`, `gui/reveal`
- `ghostly`: (reinstated) allow your adventurer to phase through walls
- `markdown`: (reinstated) export description of selected unit or item to a text file
- `adaptation`: (reinstated) inspect or set unit cave adaptation levels
- `fix/engravings`: fix corrupt engraving tiles
- `unretire-anyone`: (reinstated) choose anybody in the world as an adventurer
- `reveal-adv-map`: (reinstated) reveal (or hide) the adventure map
- `resurrect-adv`: (reinstated) allow your adventurer to recover from death
- `flashstep`: (reinstated) teleport your adventurer to the mouse cursor
## New Features
- `instruments`: new subcommand ``instruments order`` for creating instrument work orders
## Fixes
- `modtools/create-item`: now functions properly when the ``reaction-gloves`` tweak is active
- `quickfort`: don't designate multiple tiles of the same tree for chopping when applying a tree chopping blueprint to a multi-tile tree
- `gui/quantum`: fix processing when creating a quantum dump instead of a quantum stockpile
- `caravan`: don't include undiscovered divine artifacts in the goods list
- `quickfort`: fix detection of valid tiles for wells
- `combine`: respect container volume limits
## Misc Improvements
- `gui/autobutcher`: add shortcuts for butchering/unbutchering all animals
- `combine`: reduce combined drink sizes to 25
- `gui/launcher`: add button for copying output to the system clipboard
- `deathcause`: automatically find and choose a corpse when a pile of mixed items is selected
- `gui/quantum`: add option for whether a minecart automatically gets ordered and/or attached
- `gui/quantum`: when attaching a minecart, show which minecart was attached
- `gui/quantum`: allow multiple feeder stockpiles to be linked to the minecart route
- `prioritize`: add PutItemOnDisplay jobs to the default prioritization list -- when these kinds of jobs are requested by the player, they generally want them done ASAP
# 50.13-r1.1
## Fixes
- `gui/quantum`: accept all item types in the output stockpile as intended
- `deathcause`: fix error on run
# 50.13-r1
## New Tools
- `gui/unit-info-viewer`: (reinstated) give detailed information on a unit, such as egg laying behavior, body size, birth date, age, and information about their afterlife behavior (if a ghost)
- `gui/quantum`: (reinstated) point and click interface for creating quantum stockpiles or quantum dumps
## Fixes
- `open-legends`: don't interfere with the dragging of vanilla list scrollbars
- `gui/create-item`: properly restrict bags to bag materials by default
- `gui/create-item`: allow gloves and shoees to be made out of textiles by default
- `exterminate`: don't classify dangerous non-invader units as friendly (e.g. snatchers)
## Misc Improvements
- `open-legends`: allow player to cancel the "DF will now exit" dialog and continue browsing
- `gui/gm-unit`: changes to unit appearance will now immediately be reflected in the unit portrait
# 50.12-r3
## New Tools
- `gui/aquifer`: interactive aquifer visualization and editing
- `open-legends`: (reinstated) open legends mode directly from a loaded fort
## New Features
- `quickfort`: add options for setting warm/damp dig markers when applying blueprints
- `gui/quickfort`: add options for setting warm/damp dig markers when applying blueprints
- `gui/reveal`: new "aquifer only" mode to only see hidden aquifers but not reveal any tiles
- `gui/notify`: optional notification for general wildlife (not on by default)
## Fixes
- `fix/loyaltycascade`: fix edge case where loyalties of renegade units were not being fixed
- `quickfort`: reject tiles for building that contain magma or deep water
- `armoks-blessing`: fix error when making "Normal" attributes legendary
- `emigration`: remove units from burrows when they emigrate
- `agitation-rebalance`: fix calculated percent chance of cavern invasion
- `gui/launcher`: don't pop up a result dialog if a command run from minimal mode has no output
## Misc Improvements
- `gui/reveal`: show aquifers even when not in mining mode
- `gui/control-panel`: add alternate "nodump" version for `cleanowned` that does not cause citizens to toss their old clothes in the dump. this is useful for players who would rather sell old clothes than incinerate them
- `agitation-rebalance`: when more than the maximum allowed cavern invaders are trying to enter the map, prefer keeping the animal people invaders instead of their war animals
## Removed
- `drain-aquifer`: replaced by ``aquifer drain --all``; an alias now exists so ``drain-aquifer`` will automatically run the new command
# 50.12-r2.1
## Fixes
- `fix/noexert-exhaustion`: fix typo in control panel registry entry which prevented the fix from being run when enabled
- `gui/suspendmanager`: fix script startup errors
- `control-panel`: properly auto-enable newly added bugfixes
## Misc Improvements
- `gui/unit-syndromes`: make syndromes searchable by their display names (e.g. "necromancer")
# 50.12-r2
## New Tools
- `agitation-rebalance`: alter mechanics of irriation-related attacks so they are less constant and are more responsive to recent player bahavior
- `fix/ownership`: fix instances of multiple citizens claiming the same items, resulting in "Store owned item" job loops
- `fix/stuck-worship`: fix prayer so units don't get stuck in uninterruptible "Worship!" states
- `instruments`: provides information on how to craft the instruments used by the player civilization
- `modtools/item-trigger`: (reinstated) modder's resource for triggering scripted content when specific items are used
- `modtools/if-entity`: (reinstated) modder's resource for triggering scripted content depending on the race of the loaded fort
- `devel/block-borders`: (reinstated) highlights boundaries of map blocks or embark tile blocks
- `fix/noexert-exhaustion`: fix "Tired" NOEXERT units. Enabling via `gui/control-panel` prevents NOEXERT units from getting stuck in a "Tired" state
## New Features
- `gui/settings-manager`: add import, export, and autoload for work details
- `exterminate`: new "disintegrate" kill method that additionally destroys carried items
- `quickfort`: allow setting of workshop profile properties (e.g. labor, skill restrictions) from build blueprints
## Fixes
- `gui/launcher`: fix history scanning (Up/Down arrow keys) being slow to respond when in minimal mode
- `control-panel`: fix filtering not filtering when running the ``list`` command
- `gui/notify`: don't zoom to forbidden depots for merchants ready to trade notification
- `catsplosion`: only cause pregnancies in adults
## Misc Improvements
- `gui/launcher`: add interface for browsing and filtering commands by tags
- `gui/launcher`: add support for history search (Alt-s hotkey) when in minimal mode
- `gui/launcher`: add support for the ``clear`` command and clearing the scrollback buffer
- `control-panel`: enable tweaks quietly on fort load so we don't spam the console
- `devel/tile-browser`: simplify interface now that SDL automatically normalizes texture scale
- `exterminate`: make race name matching case and space insensitive
- `gui/gm-editor`: support opening engraved art for inspection
- `gui/notify`: Shift click or Shift Enter on a zoomable notification to zoom to previous target
- `allneeds`: select a dwarf in the UI to see a summary of needs for just that dwarf
- `allneeds`: provide options for sorting the cumulative needs by different criteria
- `prioritize`: print out custom reaction and hauling jobs in the same format that is used for ``prioritize`` command arguments so the player can just copy and paste
# 50.12-r1
## Fixes
- `gui/notify`: persist notification settings when toggled in the UI
## Misc Improvements
- `gui/launcher`: developer mode hotkey restored to Ctrl-D
# 50.11-r7
## New Tools
- `undump-buildings`: (reinstated) remove dump designation from in-use building materials
- `gui/petitions`: (reinstated) show outstanding (or all historical) petition agreements for guildhalls and temples
- `gui/notify`: display important notifications that vanilla doesn't support yet and provide quick zoom links to notification targets.
- `list-waves`: (reinstated) show migration wave information
- `make-legendary`: (reinstated) make a dwarf legendary in specified skills
- `combat-harden`: (reinstated) set a dwarf's resistence to being affected by visible corpses
- `add-thought`: (reinstated) add custom thoughts to a dwarf
- `devel/input-monitor`: interactive UI for debugging input issues
## Fixes
- `gui/design`: clicking the center point when there is a design mark behind it will no longer simultaneously enter both mark dragging and center dragging modes. Now you can click once to move the shape, and click twice to move only the mark behind the center point.
- `fix/retrieve-units`: prevent pulling in duplicate units from offscreen
- `warn-stranded`: when there was at least one truly stuck unit and miners were actively mining, the miners were also confusingly shown in the stuck units list
- `source`: fix issue where removing sources would make some other sources inactive
- `caravan`: display book and scroll titles in the goods and trade dialogs instead of generic scroll descriptions
- `item`: avoid error when scanning items that have no quality rating (like bars and other construction materials)
- `gui/blueprint`: changed hotkey for setting blueprint origin tile so it doesn't conflict with default map movement keys
- `gui/control-panel`: fix error when toggling autostart settings
## Misc Improvements
- `exportlegends`: make progress increase smoothly over the entire export and increase precision of progress percentage
- `gui/autobutcher`: ask for confirmation before zeroing out targets for all races
- `caravan`: move goods to trade depot dialog now allocates more space for the display of the value of very expensive items
- `extinguish`: allow selecting units/items/buildings in the UI to target them for extinguishing; keyboard cursor is only required for extinguishing map tiles that cannot be selected any other way
- `item`: change syntax so descriptions can be searched for without indicating the ``--description`` option. e.g. it's now ``item count royal`` instead of ``item count --description royal``
- `item`: add ``--verbose`` option to print each item as it is matched
- `gui/mod-manager`: will automatically unmark the default mod profile from being the default if it fails to load (due to missing or incompatible mods)
- `gui/quickfort`: can now dynamically adjust the dig priority of tiles designated by dig blueprints
- `gui/quickfort`: can now opt to apply dig blueprints in marker mode
## Removed
- `gui/manager-quantity`: the vanilla UI can now modify manager order quantities after creation
- `gui/create-tree`: replaced by `gui/sandbox`
- `warn-starving`: combined into `gui/notify`
- `warn-stealers`: combined into `gui/notify`
# 50.11-r6
## Fixes
- `makeown`: fix error when adopting units that need a historical figure to be created
- `item`: fix missing item categories when using ``--by-type``
# 50.11-r5
## 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
- `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
- `gui/biomes`: visualize and inspect biome regions on the map
- `gui/embark-anywhere`: bypass those pesky warnings and embark anywhere you want to
- `item`: perform bulk operations on groups of items.
## New Features
- `uniform-unstick`: add overlay to the squad equipment screen to show a equipment conflict report and give you a one-click button to (attempt to) fix
- `gui/settings-manager`: save and load embark difficulty settings and standing orders; options for auto-load on new embark
## Fixes
- `source`: water and magma sources and sinks now persist with fort across saves and loads
- `gui/design`: fix incorrect dimensions being shown when you're placing a stockpile, but a start coordinate hasn't been selected yet
- `warn-stranded`: don't warn for citizens who are only transiently stranded, like those on stepladders gathering plants or digging themselves out of a hole
- `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)
- `caravan`: ensure items are marked for trade when the move trade goods dialog is closed even when they were selected and then the list filters were changed such that the items were no longer actively shown
- `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
- `suspendmanager`: correctly handle building collisions with smoothing designations when the building is on the edge of the map
- `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
## Misc Improvements
- `warn-stranded`: center the screen on the unit when you select one in the list
- `gui/control-panel`: reduce frequency for `warn-stranded` check to once every 2 days
- `gui/control-panel`: tools are now organized by type: automation, bugfix, and gameplay
- `confirm`: updated confirmation dialogs to use clickable widgets and draggable windows
- `confirm`: added confirmation prompt for right clicking out of the trade agreement screen (so your trade agreement selections aren't lost)
- `confirm`: added confirmation prompts for irreversible actions on the trade screen
- `confirm`: added confirmation prompt for deleting a uniform
- `confirm`: added confirmation prompt for convicting a criminal
- `confirm`: added confirmation prompt for re-running the embark site finder
- `confirm`: added confirmation prompt for reassigning or clearing zoom hotkeys
- `confirm`: added confirmation prompt for exiting the uniform customization page without saving
- `gui/autobutcher`: interface redesigned to better support mouse control
- `gui/launcher`: now persists the most recent 32KB of command output even if you close it and bring it back up
- `gui/quickcmd`: clickable buttons for command add/remove/edit operations
- `uniform-unstick`: warn if a unit belongs to a squad from a different site (can happen with migrants from previous forts)
- `gui/mass-remove`: can now differentiate planned constructions, stockpiles, and regular buildings
- `gui/mass-remove`: can now remove zones
- `gui/mass-remove`: can now cancel removal for buildings and constructions
- `fix/stuck-instruments`: now handles instruments that are left in the "in job" state but that don't have any actual jobs associated with them
- `gui/launcher`: make autocomplete case insensitive
# 50.11-r4
## New Tools
- `build-now`: (reinstated) instantly complete unsuspended buildings that are ready to be built
## Fixes
- `combine`: prevent stack sizes from growing beyond quantities that you would normally see in vanilla gameplay
- `gui/design`: Center dragging shapes now track the mouse correctly
## Misc Improvements
- `caravan`: enable searching within containers in trade screen when in "trade bin with contents" mode
# 50.11-r3
## New Tools
- `sync-windmills`: synchronize or randomize movement of active windmills
- `trackstop`: (reimplemented) integrated overlay for changing track stop and roller settings after construction
## New Features
- `gui/design`: show selected dimensions next to the mouse cursor when designating with vanilla tools, for example when painting a burrow or designating digging
- `quickfort`: new ``burrow`` blueprint mode for designating or manipulating burrows
- `unforbid`: now ignores worn and tattered items by default (X/XX), use -X to bypass
- `fix/dead-units`: gained ability to scrub dead units from burrow membership lists
## Fixes
- `gui/unit-syndromes`: show the syndrome names properly in the UI
- `emigration`: fix clearing of work details assigned to units that leave the fort
## Misc Improvements
- `warn-stranded`: don't warn for units that are temporarily on unwalkable tiles (e.g. as they pass under a waterfall)
## Removed
- `gui/control-panel`: removed always-on system services from the ``System`` tab: `buildingplan`, `confirm`, `logistics`, and `overlay`. The base services should not be turned off by the player. Individual confirmation prompts can be managed via `gui/confirm`, and overlays (including those for `buildingplan` and `logistics`) are managed on the control panel ``Overlays`` tab.
- `gui/control-panel`: removed `autolabor` from the ``Fort`` and ``Autostart`` tabs. The tool does not function correctly with the new labor types, and is causing confusion. You can still enable `autolabor` from the commandline with ``enable autolabor`` if you understand and accept its limitations.
# 50.11-r2
## 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)
- `fix/corrupt-jobs`: prevents crashes by automatically removing corrupted jobs
- `burial`: (reinstated) create tomb zones for unzoned coffins
## 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
- `drain-aquifer`: 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
## New Scripts
- `warn-stranded`: new repeatable maintenance script to check for stranded units, similar to `warn-starving`
## Fixes
- `suspendmanager`: fix errors when constructing near the map edge
- `gui/sandbox`: fix scrollbar moving double distance on click
- `hide-tutorials`: fix the embark tutorial prompt sometimes not being skipped
- `full-heal`: fix removal of corpse after resurrection
- `toggle-kbd-cursor`: clear the cursor position when disabling, preventing the game from sometimes jumping the viewport around when cursor keys are hit
## Misc Improvements
- `prioritize`: refuse to automatically prioritize dig and smooth/carve job types since it can break the DF job scheduler; instead, print a suggestion that the player use specialized units and vanilla designation priorities
- `gui/overlay`: filter overlays by current context so there are fewer on the screen at once and you can more easily click on the one you want to reposition
- `quickfort`: now allows constructions to be built on top of constructed floors and ramps, just like vanilla. however, to allow blueprints to be safely reapplied to the same area, for example to fill in buildings whose constructions were canceled due to lost items, floors will not be rebuilt on top of floors and ramps will not be rebuilt on top of ramps
- `gui/gm-editor`: for fields with primitive types, change from click to edit to click to select, double-click to edit. this should help prevent accidental modifications to the data and make hotkeys easier to use (since you have to click on a data item to use a hotkey on it)
# 50.11-r1
## New Tools
- `startdwarf`: (reinstated) set number of starting dwarves
## New Features
- `startdwarf`: overlay scrollbar so you can scroll through your starting dwarves if they don't all fit on the screen
- A new searchable, sortable, filterable dialog for selecting items for display on pedestals and display cases
## Fixes
- `suspendmanager`: fixed a bug where floor grates, bars, bridges etc. wouldn't be recognised as walkable, leading to unnecessary suspensions in certain cases.
## Misc Improvements
- `devel/inspect-screen`: display total grid size for UI and map layers
- `suspendmanager`: now suspends constructions that would cave-in immediately on completion
# 50.10-r1
## Fixes
- 'fix/general-strike: fix issue where too many seeds were getting planted in farm plots
# 50.09-r4
## Misc Improvements
- `autofish`: changed ``--raw`` argument format to allow explicit setting to on or off
- `caravan`: move goods to depot screen can now see/search/trade items inside of barrels and pots
- `gui/launcher`: show tagged tools in the autocomplete list when a tag name is typed
# 50.09-r3
## New Tools
- `devel/scan-vtables`: scan and dump likely vtable addresses (for memory research)
- `hide-interface`: hide the vanilla UI elements for clean screenshots or laid-back fortress observing
- `hide-tutorials`: hide the DF tutorial popups; enable in the System tab of `gui/control-panel`
- `set-orientation`: tinker with romantic inclinations (reinstated from back catalog of tools)
## New Features
- `exportlegends`: new overlay that integrates with the vanilla "Export XML" button. Now you can generate both the vanilla export and the extended data export with a single click!
## Fixes
- `suspendmanager`: Fix the overlay enabling/disabling `suspendmanager` unexpectedly
- `caravan`: correct price adjustment values in trade agreement details screen
- `caravan`: apply both import and export trade agreement price adjustments to items being both bought or sold to align with how vanilla DF calculates prices
- `caravan`: cancel any active TradeAtDepot jobs if all caravans are instructed to leave
- `emigration`: fix errors loading forts after dwarves assigned to work details or workshops have emigrated
- `emigration`: fix citizens sometimes "emigrating" to the fortress site
- `suspendmanager`: improve the detection on "T" and "+" shaped high walls
- `starvingdead`: ensure sieges end properly when undead siegers starve
- `fix/retrieve-units`: fix retrieved units sometimes becoming duplicated on the map
- `quickfort`: cancel old dig jobs that point to a tile when a new designation is applied to the tile
- `gui/launcher`, `gui/gm-editor`: recover gracefully when the saved frame position is now offscreen
- `gui/sandbox`: correctly load equipment materials in modded games that categorize non-wood plants as wood
## Misc Improvements
- `devel/lsmem`: added support for filtering by memory addresses and filenames
- `gui/gm-editor`: hold down shift and right click to exit, regardless of how many substructures deep you are
- `quickfort`: linked stockpiles and workshops can now be specified by ID instead of only by name. this is mostly useful when dynamically generating blueprints and applying them via the `quickfort` API
- `gui/quickfort`: blueprint details screen can now be closed with Ctrl-D (the same hotkey used to open the details)
- `suspendmanager`: display a different color for jobs suspended by suspendmanager
- `caravan`: optionally display items within bins in bring goods to depot screen
- `gui/gm-editor`: display in the title bar whether the editor window is scanning for live updates
- `gui/design`: change "auto commit" hotkey from ``c`` to ``Alt-c`` to avoid conflict with the default keybinding for z-level down
- `gui/liquids`: support removing river sources by converting them into stone floors
# 50.09-r2
## New Scripts
- `caravan`: new trade screen UI replacements for bringing goods to trade depot and trading
- `fix/empty-wheelbarrows`: new script to empty stuck rocks from all wheelbarrows on the map
## Fixes
- `gui/autodump`: when "include items claimed by jobs" is on, actually cancel the job so the item can be teleported
- `gui/gm-unit`: fix commandline processing when a unit id is specified
- `suspendmanager`: take in account already built blocking buildings
- `suspendmanager`: don't consider tree branches as a suitable access path to a building
## Misc Improvements
- `gui/unit-syndromes`: make lists searchable
- `suspendmanager`: display the suspension reason when viewing a suspended building
- `quickfort`: blueprint libraries are now moddable -- add a ``blueprints/`` directory to your mod and they'll show up in `quickfort` and `gui/quickfort`!
# 50.09-r1
## Misc Improvements
- `caravan`: new overlay for selecting all/none on trade request screen
- `suspendmanager`: don't suspend constructions that are built over open space
# 50.08-r4
## Fixes
- `gui/create-item`: allow blocks to be made out of wood when using the restrictive filters
- `emigration`: reassign home site for emigrating units so they don't just come right back to the fort
- `gui/sandbox`: allow creatures that have separate caste-based graphics to be spawned (like ewes/rams)
- `gui/liquids`: ensure tile temperature is set correctly when painting water or magma
- `workorder`: prevent ``autoMilkCreature`` from over-counting milkable animals, which was leading to cancellation spam for the MilkCreature job
- `gui/quickfort`: allow traffic designations to be applied over buildings
- `gui/quickfort`: protect against meta blueprints recursing infinitely if they include themselves
## Misc Improvements
- `gui/control-panel`: add some popular startup configuration commands for `autobutcher` and `autofarm`
- `gui/control-panel`: add option for running `fix/blood-del` on new forts (enabled by default)
- `gui/sandbox`: when creating citizens, give them names appropriate for their races
- `gui/autodump`: add option to clear the ``trader`` flag from teleported items, allowing you to reclaim items dropped by merchants
- `quickfort`: significant rewrite for DF v50! now handles zones, locations, stockpile configuration, hauling routes, and more
- `suspendmanager`: now suspends construction jobs on top of floor designations, protecting the designations from being erased
- `prioritize`: add wild animal management tasks and lever pulling to the default list of prioritized job types
- `suspendmanager`: suspend blocking jobs when building high walls or filling corridors
- `workorder`: reduce existing orders for automatic shearing and milking jobs when animals are no longer available
- `gui/quickfort`: adapt "cursor lock" to mouse controls so it's easier to see the full preview for multi-level blueprints before you apply them
- `gui/quickfort`: only display post-blueprint messages once when repeating the blueprint up or down z-levels
- `combine`: reduce max different stacks in containers to 30 to prevent contaners from getting overfull
## Removed
- `gui/automelt`: replaced by an overlay panel that appears when you click on a stockpile
# 50.08-r3
# 50.08-r2
## New Scripts
- `diplomacy`: view or alter diplomatic relationships
- `exportlegends`: (reinstated) export extended legends information for external browsing
- `modtools/create-item`: (reinstated) commandline and API interface for creating items
- `light-aquifers-only`: (reinstated) convert heavy aquifers to light
- `necronomicon`: search fort for items containing the secrets of life and death
- `fix/stuck-instruments`: fix instruments that are attached to invalid jobs, making them unusable. turn on automatic fixing in `gui/control-panel` in the ``Maintenance`` tab.
- `gui/mod-manager`: automatically restore your list of active mods when generating new worlds
- `gui/autodump`: point and click item teleportation and destruction interface (available only if ``armok`` tools are shown)
- `gui/sandbox`: creation interface for units, trees, and items (available only if ``armok`` tools are shown)
- `assign-minecarts`: (reinstated) quickly assign minecarts to hauling routes
## Fixes
- `quickfort`: properly allow dwarves to smooth, engrave, and carve beneath walkable tiles of buildings
- `deathcause`: fix incorrect weapon sometimes being reported
- `gui/create-item`: allow armor to be made out of leather when using the restrictive filters
- `gui/design`: Fix building and stairs designation
- `quickfort`: fixed detection of tiles where machines are allowed (e.g. water wheels *can* be built on stairs if there is a machine support nearby)
- `quickfort`: fixed rotation of blueprints with carved track tiles
## Misc Improvements
- `gui/quickfort`: blueprints that designate items for dumping/forbidding/etc. no longer show an error highlight for tiles that have no items on them
- `gui/quickfort`: place (stockpile layout) mode is now supported. note that detailed stockpile configurations were part of query mode and are not yet supported
- `gui/quickfort`: you can now generate manager orders for items required to complete bluerpints
- `gui/create-item`: ask for number of items to spawn by default
- `light-aquifers-only`: now available as a fort Autostart option in `gui/control-panel`. note that it will only appear if "armok" tools are configured to be shown on the Preferences tab.
- `gui/gm-editor`: when passing the ``--freeze`` option, further ensure that the game is frozen by halting all rendering (other than for DFHack tool windows)
- `gui/gm-editor`: Alt-A now enables auto-update mode, where you can watch values change live when the game is unpaused
# 50.08-r1
## Fixes
- `deteriorate`: ensure remains of enemy dwarves are properly deteriorated
- `suspendmanager`: Fix over-aggressive suspension of jobs that could still possibly be done (e.g. jobs that are partially submerged in water)
## Misc Improvements
- `combine`: Now supports ammo, parts, powders, and seeds, and combines into containers
- `deteriorate`: add option to exclude useable parts from deterioration
- `gui/gm-editor`: press ``g`` to move the map to the currently selected item/unit/building
- `gui/gm-editor`: press ``Ctrl-D`` to toggle read-only mode to protect from accidental changes; this state persists across sessions
- `gui/gm-editor`: new ``--freeze`` option for ensuring the game doesn't change while you're inspecting it
- `gui/launcher`: DFHack version now shown in the default help text
- `gui/prerelease-warning`: widgets are now clickable
# 50.07-r1
## New Scripts
## Fixes
-@ `caravan`: fix trade good list sometimes disappearing when you collapse a bin
-@ `gui/gm-editor`: no longer nudges last open window when opening a new one
- `warn-starving`: no longer warns for dead units
-@ `gui/control-panel`: the config UI for `automelt` is no longer offered when not in fortress mode
## Misc Improvements
- `gui/gm-editor`: can now jump to material info objects from a mat_type reference with a mat_index using ``i``
- `gui/gm-editor`: the key column now auto-fits to the widest key
- `prioritize`: revise and simplify the default list of prioritized jobs -- be sure to tell us if your forts are running noticeably better (or worse!)
-@ `gui/control-panel`: add `faststart` to the system services
## Removed
# 50.07-beta2
## New Scripts
- `fix/general-strike`: fix known causes of the general strike bug (contributed by Putnam)
- `gui/seedwatch`: GUI config and status panel interface for `seedwatch`
- `gui/civ-alert`: configure and trigger civilian alerts
## Fixes
-@ `caravan`: item list length now correct when expanding and collapsing containers
-@ `prioritize`: fixed all watched job type names showing as ``nil`` after a game load
-@ `suspendmanager`: does not suspend non-blocking jobs such as floor bars or bridges anymore
-@ `suspendmanager`: fix occasional bad identification of buildingplan jobs
- `warn-starving`: no longer warns for enemy and neutral units
## Misc Improvements
- `gui/control-panel`: Now detects overlays from scripts named with capital letters
- `gui/cp437-table`: now has larger key buttons and clickable backspace/submit/cancel buttons, making it fully usable on the Steam Deck and other systems that don't have an accessible keyboard
-@ `gui/design`: Now supports placing constructions using 'Building' mode. Inner and Outer tile constructions are configurable. Uses buildingplan filters set up with the regular buildingplan interface.
- `exterminate`: add support for ``vaporize`` kill method for when you don't want to leave a corpse
- `combine`: you can select a target stockpile in the UI instead of having to use the keyboard cursor
- `combine`: added ``--quiet`` option for no output when there are no changes
- `stripcaged`: added ``--skip-forbidden`` option for greater control over which items are marked for dumping
- `stripcaged`: items that are marked for dumping are now automatically unforbidden (unless ``--skip-forbidden`` is set)
-@ `gui/control-panel`: added ``combine all`` maintenance option for automatic combining of partial stacks in stockpiles
-@ `gui/control-panel`: added ``general-strike`` maintenance option for automatic fixing of (at least one cause of) the general strike bug
- `gui/cp437-table`: dialog is now fully controllable with the mouse, including highlighting which key you are hovering over and adding a clickable backspace button
## Removed
- `autounsuspend`: replaced by `suspendmanager`
-@ `gui/dig`: renamed to `gui/design`
# 50.07-beta1
## New Scripts
- `suspendmanager`: automatic job suspension management (replaces `autounsuspend`)
- `gui/suspendmanager`: graphical configuration interface for `suspendmanager`
- `suspend`: suspends building construction jobs
## Fixes
-@ `quicksave`: now reliably triggers an autosave, even if one has been performed recently
- `gui/launcher`: tab characters in command output now appear as a space instead of a code page 437 "blob"
## Misc Improvements
- `quickfort`: now reads player-created blueprints from ``dfhack-config/blueprints/`` instead of the old ``blueprints/`` directory. Be sure to move over your personal blueprints to the new directory!
- `gui/gm-editor`: can now open the selected stockpile if run without parameters
# 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/design`: digging and construction designation tool with shapes and patterns
- `makeown`: makes the selected unit a citizen 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 and status monitor for the `autochop` plugin
- `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)