From 6c760d1a3d5d4f92240e1f996aa282213b3d6052 Mon Sep 17 00:00:00 2001 From: myk002 Date: Mon, 18 Jul 2022 14:33:24 -0700 Subject: [PATCH] update docs for autohauler --- docs/plugins/autohauler.rst | 59 +++++++++++++++++++++++++++---------- plugins/autohauler.cpp | 42 ++------------------------ 2 files changed, 47 insertions(+), 54 deletions(-) diff --git a/docs/plugins/autohauler.rst b/docs/plugins/autohauler.rst index 289874f94..4defac18d 100644 --- a/docs/plugins/autohauler.rst +++ b/docs/plugins/autohauler.rst @@ -1,20 +1,49 @@ autohauler ========== -Autohauler is an autolabor fork. -Rather than the all-of-the-above means of autolabor, autohauler will instead -only manage hauling labors and leave skilled labors entirely to the user, who -will probably use Dwarf Therapist to do so. +Automatically manage hauling labors. Similar to `autolabor`, but instead of +managing all labors, ``autohauler`` only addresses hauling labors, leaving the +assignment of skilled labors entirely up to you. You can use the in-game +`manipulator` UI or an external tool like Dwarf Therapist to do so. -Idle dwarves will be assigned the hauling labors; everyone else (including -those currently hauling) will have the hauling labors removed. This is to -encourage every dwarf to do their assigned skilled labors whenever possible, -but resort to hauling when those jobs are not available. This also implies -that the user will have a very tight skill assignment, with most skilled -labors only being assigned to just one dwarf, no dwarf having more than two -active skilled labors, and almost every non-military dwarf having at least -one skilled labor assigned. +Idle dwarves who are not on active military duty will be assigned the hauling +labors; everyone else (including those currently hauling) will have the hauling +labors removed. This is to encourage every dwarf to do their assigned skilled +labors whenever possible, but resort to hauling when those jobs are not +available. This also implies that the user will have a very tight skill +assignment, with most skilled labors only being assigned to just a few dwarves +and almost every non-military dwarf having at least one skilled labor assigned. -Autohauler allows skills to be flagged as to prevent hauling labors from -being assigned when the skill is present. By default this is the unused -ALCHEMIST labor but can be changed by the user. +Autohauler allows a skill to be used as a flag to exempt a dwarf from +``autohauler``'s effects. By default, this is the unused ALCHEMIST labor, but it +can be changed by the user. + +Usage: + +- ``enable autohauler`` + Start managing hauling labors. +- ``autohauler status`` + Show autohauler status and status of fort dwarves. +- ``autohauler haulers`` + Set whether a particular labor should be assigned to haulers. +- ``autohauler allow|forbid`` + Set whether a particular labor should mark a dwarf as exempt from hauling. + By default, only the ``ALCHEMIST`` labor is set to ``forbid``. +- ``autohauler reset-all| reset`` + Reset a particular labor (or all labors) to their default + haulers/allow/forbid state. +- ``autohauler list`` + Show the active configuration for all labors. +- ``autohauler frameskip `` + Set the number of frames between runs of autohauler. +- ``autohauler debug`` + In the next cycle, output the state of every dwarf. + +Examples: +- ``autohauler HAUL_STONE haulers`` + Set stone hauling as a hauling labor (this is already the default). +- ``autohauler RECOVER_WOUNDED allow`` + Allow the "Recover wounded" labor to be manually assigned by the player. By + default it is automatically given to haulers. +- ``autohauler MINE forbid`` + Don't assign hauling labors to dwarves with the Mining labor enabled. diff --git a/plugins/autohauler.cpp b/plugins/autohauler.cpp index 35bf90ca1..b52e9cfb5 100644 --- a/plugins/autohauler.cpp +++ b/plugins/autohauler.cpp @@ -712,45 +712,9 @@ DFhackCExport command_result plugin_init ( color_ostream &out, std::vector haulers\n" - " Set a labor to be handled by hauler dwarves.\n" - " autohauler allow\n" - " Allow hauling if a specific labor is enabled.\n" - " autohauler forbid\n" - " Forbid hauling if a specific labor is enabled.\n" - " autohauler reset\n" - " Return a labor to the default handling.\n" - " autohauler reset-all\n" - " Return all labors to the default handling.\n" - " autohauler frameskip \n" - " Set the number of frames between runs of autohauler.\n" - " autohauler list\n" - " List current status of all labors.\n" - " autohauler status\n" - " Show basic status information.\n" - " autohauler debug\n" - " In the next cycle, will output the state of every dwarf.\n" - "Function:\n" - " When enabled, autohauler periodically checks your dwarves and assigns\n" - " hauling jobs to idle dwarves while removing them from busy dwarves.\n" - " This plugin, in contrast to autolabor, is explicitly designed to be\n" - " used alongside Dwarf Therapist.\n" - " Warning: autohauler will override any manual changes you make to\n" - " hauling labors while it is enabled...but why would you make them?\n" - "Examples:\n" - " autohauler HAUL_STONE haulers\n" - " Set stone hauling as a hauling labor.\n" - " autohauler BOWYER allow\n" - " Allow hauling when the bowyer labor is enabled.\n" - " autohauler MINE forbid\n" - " Forbid hauling while the mining labor is disabled." - )); + "autohauler", + "Automatically manage hauling labors.", + autohauler)); // Initialize plugin labor lists init_state(out);