- v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
- Use this page to report any issues related to the migration.
Utility:Dwarf Therapist/Addons Repository
Over the years Dwarf Therapist has evolved to boast quite a number of advanced features that streamline the managing of labors in a fort. Most of the power and benefit derived from these features depends on having a good set of roles, professions, optimization plans, and filter scripts.
Please include your additions on this page, including them inline when appropriate or as links to DFFD submissions. Please refrain from linking to other third-party file hosters unless you can ensure the links will still work years from now.
NOTE: This page is for splinterz's fork of Dwarf Therapist, as it is the only version that implements many of these features.
What are all these?
For a detailed explanation of all things Dwarf Therapist, with screenshots and everything, download ResMar's User Guide.
Custom professions are templates that dictate what labors a dwarf should have enabled.
It also changes their profession name in the game so you can easily tell who you have assigned to what professions, though the custom professions do not get written into history nor appear in engravings, etc. When applied to a dwarf, the custom profession will enable all its related labors for him/her and disable any existing labors not in the profession.
Custom roles allow you to define groups of attributes (e.g, strength); traits (e.g, self-discipline); skills (e.g, appraiser); and preferences (e.g., fondness for fire opals) that, when considered together, determine how suited a particular dwarf is for that role.
On their own roles don't do anything, but when combined with the labor optimizer you can assign professions based on how suitable the dwarf is for that labor. For example, melee dwarfs should have high agility (attribute), low anger (trait), be skilled with the various weapon skills (armor user, shield user), and perhaps have a preference for armors. If a dwarf meets this criteria, he is said to fill the melee-dwarf role.
Note that in vanilla Dwarf Fortress roles are simply professions. A "Mason" is a role/profession that says a dwarf has some skills/traits/attributes that make up a good mason. This usage of profession is different than Dwarf Therapist's, as a DT profession is really a collection of labors, and by default has nothing to do with roles.
Optimization plans are used by Dwarf Therapist to automatically assign labors to dwarves based on how suited they are for the labor. The goal in a plan is to minimize the number if idle dwarves by ensuring they all have enough labors assigned, and also to ensure that dwarves get labors they are well suited to. An automatic labor assigner does no good if it never gives the Mining labor to your legendary miner.
Filter scripts are simple commands that determine what dwarves to show in the main DT window. For example, a "military only" filter script would hide all the non-military dwarves. It is like a "search" for your dwarves.
Grid views are the main list view in Dwarf Fortress they are accessible via the tabs at the top of the list view (Labors, Military, Social, etc).
Community Submitted Addons
Custom Professions
|
Custom Roles
Thistleknot's Melee and Ranged Roles
|
Labor Optimizer Tutorial
http://www.youtube.com/embed/Jz_6hMZahU4
Optimization Plans
Slyrdvs's Optimization Plan
|
Thistleknot's Optimization Plan
Thistleknot's Optimization Plans |
---|
Import these as .csv
Naming convention is
Name, % of dwarfs, # of Labors to assign
Vanilla 8 Labor's Per (early fort)
Latest Plan100-8,8,100,0,0,0,0,0,0
Animal Caretaker,16,0.0243,1
Animal Trainer,15,0.265,1
Architect,14,0.9,1
Armorsmith,47,0.7929,1
Metalsmith,48,0.7929,1
Bone Carver,54,0.613,0.75
Brewer,29,0.9108,1
Butcher,24,0.265,1.25
Carpenter,11,0.826,1.25
Cheesemaker,36,0.1379,0.75
Clothier,33,0.1379,1.25
Cook,38,0.5495,1.25
Bowyer,59,0.7067,1
Chief Medical,17,0.826,1
Wound Dresser,21,0.7433,0.75
Dyer,63,0.1081,1.25
Farmer,39,0.9343,2
Fish Cleaner,42,0.3228,1.25
Fisherdwarf,41,0.3851,1.25
Furnace Operator,45,0.0243,1.25
Gem Cutter,50,0.8461,1
Hunter,44,0.6438,1
Leatherworker,27,0.9134,1.25
Lyemaker,62,0.6438,0.75
Mason,13,0.826,2.5
Mechanic,60,0.7433,1.25
Metalcrafter,49,0.7929,1
Milker,37,0.0243,0.75
Miller,34,0.5171,0.75
Miner,0,0.9771,2.5
Herbalist,40,0.5495,2.5
Thresher,35,0.7433,1
Potash Maker,61,0.1676,0.75
Bone Doctor,19,0.7433,0.75
,66,0.0243,0.75
Siege Engineer,57,0.3078,1.25
Siege Operator,58,0.8461,1.25
Soaper,31,0.2131,0.75
,67,0.3078,1.25
Engraver,12,0.6438,1
Stone Crafter,53,0.613,0.75
Surgeon,18,0.7433,0.75
Suturer,20,0.7433,0.75
Tanner,28,0.3078,1
Trapper,25,0.5333,0.75
Weaponsmith,46,0.7929,1
Weaver,32,0.2011,1.25
Wood Burner,64,0.0243,1.5
Woodcutter,10,0.4506,1.5
Wood Crafter,52,0.613,0.75
Vanilla 12 Labor's Per
Latest Plan100-12,12,100,0,0,0,0,0,0
Animal Caretaker,16,0.0243,1
Animal Trainer,15,0.265,1
Architect,14,0.9,1
Armorsmith,47,0.7929,1
Metalsmith,48,0.7929,1
Bone Carver,54,0.613,0.75
Brewer,29,0.9108,1
Butcher,24,0.75,1.25
Carpenter,11,0.826,1.25
Cheesemaker,36,0.1379,0.75
Clothier,33,0.1379,1.25
Cook,38,0.5495,1.25
Bowyer,59,0.7067,1
Chief Medical,17,0.826,1
Wound Dresser,21,0.7433,0.75
Dyer,63,0.1081,1.25
Farmer,39,0.9343,2
Fish Cleaner,42,0.3228,1.25
Fisherdwarf,41,0.3851,1.25
Furnace Operator,45,0.0243,1.25
Gem Cutter,50,0.8461,1
Hunter,44,0.6438,1
Leatherworker,27,0.9134,1.25
Lyemaker,62,0.6438,0.75
Mason,13,0.826,2.5
Mechanic,60,0.7433,1.25
Metalcrafter,49,0.7929,1
Milker,37,0.0243,0.75
Miller,34,0.5171,0.75
Miner,0,0.9771,2.5
Herbalist,40,0.5495,2.5
Thresher,35,0.7433,1
Potash Maker,61,0.1676,0.75
Bone Doctor,19,0.7433,0.75
,66,0.0243,0.75
Siege Engineer,57,0.3078,1.25
Siege Operator,58,0.8461,1.25
Soaper,31,0.2131,0.75
,67,0.3078,1.25
Engraver,12,0.6438,1
Stone Crafter,53,0.613,0.75
Surgeon,18,0.7433,0.75
Suturer,20,0.7433,0.75
Tanner,28,0.3078,1
Trapper,25,0.5333,0.75
Weaponsmith,46,0.7929,1
Weaver,32,0.2011,1.25
Wood Burner,64,0.0243,1.5
Woodcutter,10,0.4506,1.5
Wood Crafter,52,0.613,0.75
Masterwork 8 Labor's Per (early fort)
Latest Plan100-8 MW - 2nd,8,100,0,0,0,1,0,0
Stone Crafter,53,0.95,0.75
Soaper,31,0.75,0.75
Surgeon,18,0.9,0.75
Gem Cutter,50,0.85,1
Architect,14,0.85,1
Leatherworker,27,1,1.25
Tanner,28,0.8,1
,47,1,1
Carpenter,11,1,1.25
Animal Caretaker,16,0.75,1
Miller,34,0.8,0.75
Miner,0,1,2
,61,0.75,0.75
Hunter,44,0.85,1
Metalcrafter,49,0.95,1
Brewer,29,0.85,1
Weaponsmith,46,1,1
,15,0.85,1
Mechanic,60,0.8,1.5
Furnace Operator,45,0.75,1.25
,25,0.8,0.75
Miller,35,0.8,1
Spinner,67,0.8,1.25
Suturer,20,0.9,0.75
Milker,37,0.75,0.75
,66,0.75,0.75
Weaver,32,0.75,1.25
Bowyer,59,1,1
,33,0.75,1.25
Farmer,39,1,2
Cook,57,0.8,1.25
,62,0.8,0.75
Bone Doctor,19,0.9,0.75
Cook,38,0.85,1.25
Cheesemaker,36,0.75,0.75
Fish Cleaner,42,0.8,1.25
Bone Carver,54,0.95,0.75
Metalsmith,48,0.95,1
,10,0.85,1.5
Dodger,63,0.75,1.25
,12,0.95,1
Fisherdwarf,41,0.8,0.65
Macedwarf,13,0.95,1.75
Gem Cutter,40,1,2
Butcher,24,0.8,1.25
Siege Operator,58,0.85,1.25
Weaver,21,0.9,0.75
Chief Medical,17,0.9,1
,64,0.21,1.5
Wood Crafter,52,0.95,0.75
,70,0.75,1
,56,1,1
,68,1,0.75
,26,0.75,0.75
,43,0.8,0.65
Masterwork 12 Labor's Per
Latest Plan100-12 MW - 1st,12,100,0,0,0,1,0,0
,61,0.75,0.75
Animal Caretaker,16,0.75,0.75
Animal Trainer,15,0.85,0.75
Miller,34,0.8,1.15
Architect,14,1,1
Armorsmith,47,1,1
Metalsmith,48,0.95,1
Bone Carver,54,0.95,0.75
Brewer,29,0.85,1
Butcher,24,0.8,1.25
Carpenter,11,1,1.25
Cheesemaker,36,0.75,0.75
Lyemaker,62,0.8,0.75
Cook,38,0.85,1.25
Bowyer,59,1,1
Chief Medical,17,0.9,1
,28,0.8,1
Wound Dresser,21,0.9,0.75
Dyer,63,0.75,1.25
Farmer,39,1,2
Fish Cleaner,42,0.8,1.25
Fisherdwarf,41,0.8,1.25
Furnace Operator,45,0.75,1.25
Gem Cutter,50,0.85,1
Herbalist,40,0.85,2.5
Hunter,44,0.85,1
Leatherworker,27,1,1.25
Mason,13,0.95,2.5
Mechanic,60,0.8,1.25
Metalcrafter,49,0.95,1
Milker,37,0.75,0.75
Miller,35,0.8,1
Miner,0,1,2.5
Furnace Operator,64,0.75,1.5
,31,0.75,0.75
Bone Doctor,19,0.9,0.75
,66,0.75,0.75
,57,0.8,1.25
Siege Operator,58,0.85,1.25
Spinner,67,0.8,1.25
,12,0.95,1
,53,0.95,1.5
Surgeon,18,0.9,0.75
Suturer,20,0.9,0.75
,33,0.75,1.25
,25,0.8,0.75
Weaponsmith,46,1,1
Weaver,32,0.75,1.25
,10,0.85,1.5
Wood Crafter,52,0.95,0.75
,30,1,1
,70,0.75,1
,68,1,0.75
|
Dwarf Therapist work-arounds (or what Splintermind calls "hacks")
Workshop Profiles
By mass assigning nicknames inside Dwarf Therapist to "mark" dwarves, they can be easily found in workshop profiles (if using Masterwork Mod, dfhack is included, Ctrl Shift N sorts alphabetically).
This is useful for workshop in various mods that train skills that you wish was limited to certain dwarfs, such as dwarfs who have skill in a labor that is trained.
Using Labors to Mark dwarf's for Custom Professions/Super Labors, or for Militia purposes
In this video (http://www.youtube.com/watch?v=gNVci8h1MkY), I actually do this method to assign my militia, but it could be extended for "super labors" as well.
What I do is assign a custom role to something I wish to assign that Dwarf Therapist doesn't currently support (such as assign militia dwarfs via the labor optimizer). So I use an optimization plan to assign a specific role (such as melee dwarfs) to a meaningless labor, then when the labors are assigned. I hand assign them inside the Therapist tool to the melee role.
One could use the same method to assign a dwarf to a custom profession that covers multiple labors (i.e. super labor concept).
It goes without saying that one should unassign the meaningless labor.
Filter Scripts
Ramblurr's Filter Pack
A small collection of filter scripts useful when using the labor optimizer.
Ramblurr's Filter Pack |
---|
Military
d.squad_id() >= 0
Nobles
d.noble_position()
Non-Mil
d.squad_id() < 0
Non Noble
!d.noble_position()
Non-Mil and Non-Noble
!d.noble_position() && d.squad_id() < 0
Not Missing Limbs
!d.has_health_issue(31,0) && !d.has_health_issue(31,1)
Missing Limbs
d.has_health_issue(31,0) || d.has_health_issue(31,1)
|
Thistleknot's Filter Pack
I pretty much use the 1st three every migrant wave. I use an optimization plan to single out militia dwarfs (ranged and melee) to weaving (weapon, melee) and alchemy (archers, i.e. crossbowdwarfs).
Then I run the second script to see who rates high for noble roles, and pick them
Then I run the 3rd to apply a labor optimization plan.
Thistleknot's Filter Pack |
---|
1. Not Injured/Missing Limb && Not Cursed (Used to find military candidates)
d.current_job_id()!=52
//not missing limbs
(
(
!d.has_health_issue(31,0) &&
!d.has_health_issue(31,1))
//OR
||
!d.has_health_issue(31,-1)
)
)
&&
d.curse_name() == ""
2. Non military && Not Injured && Not Cursed (Used to find noble candidates)
d.squad_id() < 0
&&
d.current_job_id()!=52
&&
d.curse_name() == ""
3. Non Military, Non Noble, Not Injured && Not Cursed (Used to apply optimization plan to workers, I always enable hauling on them as well)
!d.noble_position()
&&
d.squad_id()<0
&&
d.current_job_id()!=52
&&
d.curse_name()==""
Military
d.squad_id() >= 0
Noble & Non_military
d.noble_position()
&&
d.squad_id()<0
|
Grid Views
ResMar's Advanced Labor View
|
Tutorials/Documentation
ResMar's Dwarf Therapist User Guide
|