v50 Steam/Premium information for editors
- 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.
This notice may be cached—the current version can be found here.
Editing Utility:Dwarf Therapist/Addons Repository
Jump to navigation
Jump to search
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | + | Over the years [[Utilities#Dwarf_Therapist|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 [http://dffd.wimbli.com/ 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 [[Utilities#Dwarf_Therapist|Dwarf Therapist]], as it is the only version that implements many of these features. | ||
− | |||
− | |||
== What are all these? == | == What are all these? == | ||
For a detailed explanation of all things Dwarf Therapist, with screenshots and everything, download ResMar's [http://dffd.wimbli.com/file.php?id=7889 User Guide]. | For a detailed explanation of all things Dwarf Therapist, with screenshots and everything, download ResMar's [http://dffd.wimbli.com/file.php?id=7889 User Guide]. | ||
+ | |||
'''Custom professions''' are templates that dictate what labors a dwarf should have enabled. | '''Custom professions''' are templates that dictate what labors a dwarf should have enabled. | ||
Line 12: | Line 15: | ||
'''Custom roles''' allow you to define groups of [[attributes]] (e.g, strength); [[Personality_trait|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. | '''Custom roles''' allow you to define groups of [[attributes]] (e.g, strength); [[Personality_trait|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 | + | 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 | + | 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. | '''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. | ||
Line 20: | Line 23: | ||
'''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. | '''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 | + | '''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 Professions == | ||
− | |||
− | |||
− | |||
{{DTAddon | {{DTAddon | ||
− | | type = Custom | + | | type = Custom Professions |
− | | download link = [ | + | | download link = [https://docs.google.com/file/d/0B7lZhfwcz0boYUFYRzkxa1Izbzg/edit?usp=sharing Google Drive] |
− | | author = [ | + | | author = [http://www.reddit.com/u/Nameless_Archon /u/Nameless_Archon] |
− | | comments = Last Updated | + | | current version = 1.0 |
− | + | | comments = Last Updated June, 2013 | |
− | + | These are Nameless Archon's custom professions. He discusses their usage in his [https://www.youtube.com/playlist?list=PLLiFqDG3lSdOyRWlcCLOxGCL4y5nAWNWw tutorial video series]. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== Custom Roles == | == Custom Roles == | ||
Line 315: | Line 49: | ||
These are the Melee and Ranged Roles seen in Thistleknot's [https://www.youtube.com/watch?v=gNVci8h1MkY Efficiently Assign Militia/Labors] tutorial video, at least I think they are. I typed them in manually from what was visible on screen. | These are the Melee and Ranged Roles seen in Thistleknot's [https://www.youtube.com/watch?v=gNVci8h1MkY Efficiently Assign Militia/Labors] tutorial video, at least I think they are. I typed them in manually from what was visible on screen. | ||
}} | }} | ||
+ | |||
+ | |||
+ | == Labor Optimizer Tutorial == | ||
+ | |||
+ | http://www.youtube.com/embed/Jz_6hMZahU4 | ||
== Optimization Plans == | == Optimization Plans == | ||
Line 327: | Line 66: | ||
From [http://www.reddit.com/r/dwarffortress/comments/1d39kd/anyone_have_a_good_optimizer_plan/ a reddit thread]. Emphasizes trapping and hunting, which may not be to everyone's playstyle. | From [http://www.reddit.com/r/dwarffortress/comments/1d39kd/anyone_have_a_good_optimizer_plan/ a reddit thread]. Emphasizes trapping and hunting, which may not be to everyone's playstyle. | ||
− | The author noted: When starting with the optimization plan on a new embark, set max jobs to 10. The | + | The author noted: When starting with the optimization plan on a new embark, set max jobs to 10. The dwarfs will usually have enough skills in certain areas to get 1-2 of each of the jobs that they should be good/great at. As you get more dwarfs in the fort you will if you see fit need to lower the max jobs to 7, then 5 and then fiddle with the percent total jobs to keep the workers and haulers how you would like. |
− | I tend to use 5-10 max jobs, and a hauler percent that is less than the max jobs. You only want to have | + | I tend to use 5-10 max jobs, and a hauler percent that is less than the max jobs. You only want to have dwarfs who don't have many important jobs running around hauling. I suggest fiddling with your percent jobs and hauler percent until you find something that you enjoy for your forts. |
}} | }} | ||
Line 342: | Line 81: | ||
Naming convention is | Naming convention is | ||
− | Name, % of | + | Name, % of dwarfs, # of Labors to assign |
Vanilla 8 Labor's Per (early fort) | Vanilla 8 Labor's Per (early fort) | ||
Line 575: | Line 314: | ||
=== Using AutoLabor to manage hauling jobs alongside Labor Optimizer === | === Using AutoLabor to manage hauling jobs alongside Labor Optimizer === | ||
− | Since I prefer Dwarf Therapist's %'s on calculating my roles to labor mappings via the Labor Optimizer, I found the dynamic ability that autolabor has missing. So to alleviate this. I still do my own labor optimizations every few migrant waves; however, I get the advantage of autolabor's hauling behaviour (I believe it doesn't enable hauling on | + | Since I prefer Dwarf Therapist's %'s on calculating my roles to labor mappings via the Labor Optimizer, I found the dynamic ability that autolabor has missing. So to alleviate this. I still do my own labor optimizations every few migrant waves; however, I get the advantage of autolabor's hauling behaviour (I believe it doesn't enable hauling on dwarfs that have a labor enabled for queued job). |
− | |||
− | |||
− | + | run this inside a DFHack console | |
{{gamedata | {{gamedata | ||
Line 585: | Line 322: | ||
| | | | ||
<nowiki> | <nowiki> | ||
+ | |||
+ | note: | ||
+ | I just realized, copying and pasting this doesn't work too well. So what I propose, is downloading notepad++, do a search & replace for the word " disable" and replace with " disable\n" and check the checkbox next to "regular expressions" before you hit replace all, it will save you the headache of manually doing the newlines. | ||
autolabor 1 | autolabor 1 | ||
Line 653: | Line 393: | ||
</nowiki> | </nowiki> | ||
}} | }} | ||
+ | |||
+ | === Using AutoLabor to disable hauling jobs on your important dwarfs === | ||
+ | |||
+ | Autolabor allows one to disable autolabor on dwarves inside burrows. | ||
+ | |||
+ | I've found when hauling jobs trump regular jobs, there's not much I can do about it. So the "core" of my work can't get done because my main dwarfs are constantly being spammed for hauling jobs. | ||
+ | |||
+ | To resolve this, I'll use my criteria to mark out my "worker" dwarfs in Therapist (say I'll sort by health issues, exclude military and nobles via a filter script). Then I assign my "core" to an optimization plan, then I Mass Nickname them, and assign them to a fortress burrow (using dfhack Sort by Name). For example, nicknamed to "NH-" To signify these dwarves [at the time of labor assignment] had no health issues. It also serves as a reminder that these dwarfs are my burrow restricted dwarf's (aka my non hauling). | ||
+ | |||
+ | Then I do the rest of my dwarf's (injured, nobles, militar, etc) however I want, I usually just assign skilled using the right click menu option when clicking on a dwarf name. | ||
== Mass Nickname Assignment for Sub-set Identification == | == Mass Nickname Assignment for Sub-set Identification == | ||
Line 659: | Line 409: | ||
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, Alt Shift N sorts alphabetically). | 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, Alt Shift N sorts alphabetically). | ||
− | This is useful for workshops in various mods that train skills that you wish were limited to certain | + | This is useful for workshops in various mods that train skills that you wish were limited to certain dwarfs, such as dwarfs who have a skill that is to be trained. (ex... train your axedwarf for your militia dwarfs (these would be the dwarfs that would be tagged with the nickname), via the warfare library) |
=== Using Labors to Mark dwarf's for Custom Professions/Super Labors, or for Militia purposes === | === 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. | 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 | + | 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). | One could use the same method to assign a dwarf to a custom profession that covers multiple labors (i.e. super labor concept). | ||
Line 670: | Line 420: | ||
It goes without saying that one should unassign the meaningless labor. | 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. | ||
+ | |||
+ | {{gamedata | ||
+ | | title = Ramblurr's Filter Pack | ||
+ | | | ||
+ | <nowiki>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) | ||
+ | </nowiki> | ||
+ | }} | ||
+ | |||
+ | === 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. | |
− | + | {{gamedata | |
+ | | title = Thistleknot's Filter Pack | ||
+ | | | ||
+ | <nowiki> | ||
+ | 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 | ||
− | + | </nowiki> | |
+ | }} | ||
− | + | == Grid Views == | |
− | + | === Masterwork Dwarf Therapist === | |
+ | Highly customized version of Dwarf Therapist for use with Masterwork dwarf fortress. It uses the same binary build as Splinterminds, just uses a new .dtg (default grid view) as well as a .ini file that covers name changes for Masterwork. | ||
− | + | http://www.bay12forums.com/smf/index.php?topic=132010.0 | |
− | + | === ResMar's Advanced Labor View === | |
− | + | {{DTAddon | |
+ | | image = [[Image:ResMar Advanced Labor View.png|256px|link=File:ResMar_Advanced_Labor_View_full.png|click for full view]] | ||
+ | | type = Grid View | ||
+ | | download link = [http://dffd.wimbli.com/file.php?id=7880 DFFD File] | ||
+ | | author = [[User:Resident Mario]] | ||
+ | | current version = 1.0 | ||
+ | | comments = Last Updated Aug 05, 2013 | ||
+ | This is a heavily modified version of the "Labors NO SPACERS" view that comes packaged with the program. Useless or never-turned-off labors removed, and columns organized for better readability.}} | ||
+ | |||
+ | == Tutorials/Documentation == | ||
+ | |||
+ | === ResMar's Dwarf Therapist User Guide === | ||
+ | |||
+ | {{DTAddon | ||
+ | | image = [[Image:ResMar_DT_guide.png|256px|link=http://dffd.wimbli.com/file.php?id=7889]] | ||
+ | | type = Documentation | ||
+ | | download link = [http://dffd.wimbli.com/file.php?id=7889 DFFD File] | ||
+ | | author = [[User:Resident Mario]] | ||
+ | | current version = 20.4 | ||
+ | | comments = Last Updated Nov 02, 2013 | ||
+ | This is an exceptionally crafted Dwarf Therapist User Guide. On the cover is a picture of a dwarf in virtual leather. | ||
+ | |||
+ | All of the features available in Dwarf Therapist are covered in the guide, which is a hefty 49 pages worth of (I hope) well-illustrated content crafted in LaTeX. | ||
+ | |||
+ | Whether you a new player who wants to learn how to use Dwarf Therapist, or an experienced one who's never explored any of the power features the utility has to offer, this guide will teach you what's what in an intuitive and non-painful manner. | ||
+ | }} |