prioritize¶
Command: prioritize
Automatically boost the priority of selected job types.
This tool can force specified types of jobs to get assigned and completed as soon as possible. Finally, you can be sure your food will be hauled before rotting, your hides will be tanned before going bad, and the corpses of your enemies will be cleared from your entranceway expediently.
You can prioritize a bunch of active jobs that you need done right now, or you
can mark certain job types as high priority, and prioritize
will watch for
and boost the priority of those types of jobs as they are created. This is
especially useful for ensuring important (but low-priority – according to DF)
jobs don’t get ignored indefinitely in busy forts.
It is important to automatically prioritize only the most important job types.
If you add too many job types, or if there are simply too many jobs of those
types in your fort, the other tasks in your fort can get ignored. This causes
the same problem that prioritize
is designed to solve. The script provides
a good default set of job types to prioritize that have been suggested and
playtested by the DF community.
Also see the do-job-now tweak and the do-job-now script for boosting the priority of specific individual jobs.
Usage¶
prioritize [<options>] [defaults|<job_type> ...]
Examples¶
prioritize
Print out which job types are being automatically prioritized and how many jobs of each type we have prioritized since we started watching them.
prioritize -a defaults
Prioritize the default set of job types that the community has suggested and playtested (see below for details).
prioritize -j
Print out the list of active jobs that you can prioritize right now.
prioritize ConstructBuilding DestroyBuilding
Prioritize all current building construction and destruction jobs.
prioritize -a --haul-labor=Food,Body StoreItemInStockpile
Prioritize all current and future food and corpse hauling jobs.
Options¶
-a
,--add
Prioritize all current and future jobs of the specified job types.
-d
,--delete
Stop automatically prioritizing new jobs of the specified job types.
-j
,--jobs
Print out how many unassigned jobs of each type there are. This is useful for discovering the types of the jobs that you can prioritize right now. If any job types are specified, only returns the count for those types.
-l
,--haul-labor <labor>[,<labor>...]
For StoreItemInStockpile jobs, match only the specified hauling labor(s). Valid
labor
strings are: “Stone”, “Wood”, “Body”, “Food”, “Refuse”, “Item”, “Furniture”, and “Animals”. If not specified, defaults to matching all StoreItemInStockpile jobs.-n
,--reaction-name <name>[,<name>...]
For CustomReaction jobs, match only the specified reaction name(s). See the registry output (
-r
) for the full list of reaction names. If not specified, defaults to matching all CustomReaction jobs.-q
,--quiet
Suppress informational output (error messages are still printed).
-r
,--registry
Print out the full list of valid job types, hauling labors, and reaction names.
Which job types should I prioritize?¶
In general, you should prioritize job types that you care about getting done especially quickly and that the game does not prioritize for you. Time-sensitive tasks like food hauling, medical care, and lever pulling are good candidates.
For greater fort efficiency, you should also prioritize jobs that can block the completion of other jobs. For example, dwarves often fill a stockpile up completely, ignoring the barrels, pots, and bins that could be used to organize the items more efficiently. Prioritizing those organizational jobs can mean the difference between having space in your food stockpile for fresh meat and being forced to let it rot in the butcher shop.
It is also convenient to prioritize tasks that block you (the player) from doing other things. When you designate a group of trees for chopping, it’s often because you want to do something with that space. Prioritizing tree chopping will get your dwarves on the task and keep you from waiting too long.
You may be tempted to automatically prioritize ConstructBuilding
jobs, but
beware that if you engage in megaprojects where many constructions must be
built, these jobs can consume your entire fortress if prioritized. It is often
better to run prioritize ConstructBuilding
by itself (i.e. without the
-a
parameter) as needed to just prioritize the construction jobs that you
have ready at the time.
Default list of job types to prioritize¶
The community has assembled a good default list of job types that most players
will benefit from. They have been playtested across a wide variety of fort
types. Add prioritize -aq defaults
to your
dfhack-config/init/onMapLoad.init
file to have them automatically
prioritized for you in your fort.
They include:
Handling items that can rot before they rot
Medical, hygiene, and hospice tasks
Putting items in bins/barrels/pots/minecarts
Interactions with animals
Dumping items, pulling levers, felling trees, and other tasks that you, as a player, might stare at and internally scream “why why why isn’t this getting done??”.