@ -489,49 +489,50 @@ access DF memory and allow for easier development of new tools.</p>
< li > < a class = "reference internal" href = "#scripts" id = "id114" > Scripts< / a > < ul >
< li > < a class = "reference internal" href = "#scripts" id = "id114" > Scripts< / a > < ul >
< li > < a class = "reference internal" href = "#fix" id = "id115" > fix/*< / a > < / li >
< li > < a class = "reference internal" href = "#fix" id = "id115" > fix/*< / a > < / li >
< li > < a class = "reference internal" href = "#gui" id = "id116" > gui/*< / a > < / li >
< li > < a class = "reference internal" href = "#gui" id = "id116" > gui/*< / a > < / li >
< li > < a class = "reference internal" href = "#quicksave" id = "id117" > quicksave< / a > < / li >
< li > < a class = "reference internal" href = "#binpatch" id = "id117" > binpatch< / a > < / li >
< li > < a class = "reference internal" href = "#setfps" id = "id118" > setfps< / a > < / li >
< li > < a class = "reference internal" href = "#quicksave" id = "id118" > quicksave< / a > < / li >
< li > < a class = "reference internal" href = "#siren" id = "id119" > siren< / a > < / li >
< li > < a class = "reference internal" href = "#setfps" id = "id119" > setfps< / a > < / li >
< li > < a class = "reference internal" href = "#growcrops" id = "id120" > growcrops< / a > < / li >
< li > < a class = "reference internal" href = "#siren" id = "id120" > siren< / a > < / li >
< li > < a class = "reference internal" href = "#removebadthoughts" id = "id121" > removebadthoughts< / a > < / li >
< li > < a class = "reference internal" href = "#growcrops" id = "id121" > growcrops< / a > < / li >
< li > < a class = "reference internal" href = "#slayrace" id = "id122" > slayrace< / a > < / li >
< li > < a class = "reference internal" href = "#removebadthoughts" id = "id122" > removebadthoughts< / a > < / li >
< li > < a class = "reference internal" href = "#magmasource" id = "id123" > magmasource< / a > < / li >
< li > < a class = "reference internal" href = "#slayrace" id = "id123" > slayrace< / a > < / li >
< li > < a class = "reference internal" href = "#digfort" id = "id124" > digfort< / a > < / li >
< li > < a class = "reference internal" href = "#magmasource" id = "id124" > magmasource< / a > < / li >
< li > < a class = "reference internal" href = "#superdwarf" id = "id125" > superdwarf< / a > < / li >
< li > < a class = "reference internal" href = "#digfort" id = "id125" > digfort< / a > < / li >
< li > < a class = "reference internal" href = "#drainaquifer" id = "id126" > drainaquifer< / a > < / li >
< li > < a class = "reference internal" href = "#superdwarf" id = "id126" > superdwarf< / a > < / li >
< li > < a class = "reference internal" href = "#deathcause" id = "id127" > deathcause< / a > < / li >
< li > < a class = "reference internal" href = "#drainaquifer" id = "id127" > drainaquifer< / a > < / li >
< li > < a class = "reference internal" href = "#deathcause" id = "id128" > deathcause< / a > < / li >
< / ul >
< / ul >
< / li >
< / li >
< li > < a class = "reference internal" href = "#in-game-interface-tools" id = "id12 8 "> In-game interface tools< / a > < ul >
< li > < a class = "reference internal" href = "#in-game-interface-tools" id = "id12 9 "> In-game interface tools< / a > < ul >
< li > < a class = "reference internal" href = "#dwarf-manipulator" id = "id1 29 "> Dwarf Manipulator< / a > < / li >
< li > < a class = "reference internal" href = "#dwarf-manipulator" id = "id1 30 "> Dwarf Manipulator< / a > < / li >
< li > < a class = "reference internal" href = "#search" id = "id13 0 "> Search< / a > < / li >
< li > < a class = "reference internal" href = "#search" id = "id13 1 "> Search< / a > < / li >
< li > < a class = "reference internal" href = "#gui-liquids" id = "id13 1 "> gui/liquids< / a > < / li >
< li > < a class = "reference internal" href = "#gui-liquids" id = "id13 2 "> gui/liquids< / a > < / li >
< li > < a class = "reference internal" href = "#gui-mechanisms" id = "id13 2 "> gui/mechanisms< / a > < / li >
< li > < a class = "reference internal" href = "#gui-mechanisms" id = "id13 3 "> gui/mechanisms< / a > < / li >
< li > < a class = "reference internal" href = "#gui-rename" id = "id13 3 "> gui/rename< / a > < / li >
< li > < a class = "reference internal" href = "#gui-rename" id = "id13 4 "> gui/rename< / a > < / li >
< li > < a class = "reference internal" href = "#gui-room-list" id = "id13 4 "> gui/room-list< / a > < / li >
< li > < a class = "reference internal" href = "#gui-room-list" id = "id13 5 "> gui/room-list< / a > < / li >
< li > < a class = "reference internal" href = "#gui-choose-weapons" id = "id13 5 "> gui/choose-weapons< / a > < / li >
< li > < a class = "reference internal" href = "#gui-choose-weapons" id = "id13 6 "> gui/choose-weapons< / a > < / li >
< li > < a class = "reference internal" href = "#gui-guide-path" id = "id13 6 "> gui/guide-path< / a > < / li >
< li > < a class = "reference internal" href = "#gui-guide-path" id = "id13 7 "> gui/guide-path< / a > < / li >
< li > < a class = "reference internal" href = "#gui-workshop-job" id = "id13 7 "> gui/workshop-job< / a > < / li >
< li > < a class = "reference internal" href = "#gui-workshop-job" id = "id13 8 "> gui/workshop-job< / a > < / li >
< li > < a class = "reference internal" href = "#gui-workflow" id = "id13 8 "> gui/workflow< / a > < / li >
< li > < a class = "reference internal" href = "#gui-workflow" id = "id13 9 "> gui/workflow< / a > < / li >
< li > < a class = "reference internal" href = "#gui-assign-rack" id = "id1 39 "> gui/assign-rack< / a > < / li >
< li > < a class = "reference internal" href = "#gui-assign-rack" id = "id1 40 "> gui/assign-rack< / a > < / li >
< / ul >
< / ul >
< / li >
< / li >
< li > < a class = "reference internal" href = "#behavior-mods" id = "id14 0 "> Behavior Mods< / a > < ul >
< li > < a class = "reference internal" href = "#behavior-mods" id = "id14 1 "> Behavior Mods< / a > < ul >
< li > < a class = "reference internal" href = "#siege-engine" id = "id14 1 "> Siege Engine< / a > < ul >
< li > < a class = "reference internal" href = "#siege-engine" id = "id14 2 "> Siege Engine< / a > < ul >
< li > < a class = "reference internal" href = "#rationale" id = "id14 2 "> Rationale< / a > < / li >
< li > < a class = "reference internal" href = "#rationale" id = "id14 3 "> Rationale< / a > < / li >
< li > < a class = "reference internal" href = "#configuration-ui" id = "id14 3 "> Configuration UI< / a > < / li >
< li > < a class = "reference internal" href = "#configuration-ui" id = "id14 4 "> Configuration UI< / a > < / li >
< / ul >
< / ul >
< / li >
< / li >
< li > < a class = "reference internal" href = "#power-meter" id = "id14 4 "> Power Meter< / a > < / li >
< li > < a class = "reference internal" href = "#power-meter" id = "id14 5 "> Power Meter< / a > < / li >
< li > < a class = "reference internal" href = "#steam-engine" id = "id14 5 "> Steam Engine< / a > < ul >
< li > < a class = "reference internal" href = "#steam-engine" id = "id14 6 "> Steam Engine< / a > < ul >
< li > < a class = "reference internal" href = "#id1" id = "id14 6 "> Rationale< / a > < / li >
< li > < a class = "reference internal" href = "#id1" id = "id14 7 "> Rationale< / a > < / li >
< li > < a class = "reference internal" href = "#construction" id = "id14 7 "> Construction< / a > < / li >
< li > < a class = "reference internal" href = "#construction" id = "id14 8 "> Construction< / a > < / li >
< li > < a class = "reference internal" href = "#operation" id = "id14 8 "> Operation< / a > < / li >
< li > < a class = "reference internal" href = "#operation" id = "id14 9 "> Operation< / a > < / li >
< li > < a class = "reference internal" href = "#explosions" id = "id1 49 "> Explosions< / a > < / li >
< li > < a class = "reference internal" href = "#explosions" id = "id1 50 "> Explosions< / a > < / li >
< li > < a class = "reference internal" href = "#save-files" id = "id15 0 "> Save files< / a > < / li >
< li > < a class = "reference internal" href = "#save-files" id = "id15 1 "> Save files< / a > < / li >
< / ul >
< / ul >
< / li >
< / li >
< li > < a class = "reference internal" href = "#add-spatter" id = "id15 1 "> Add Spatter< / a > < / li >
< li > < a class = "reference internal" href = "#add-spatter" id = "id15 2 "> Add Spatter< / a > < / li >
< / ul >
< / ul >
< / li >
< / li >
< / ul >
< / ul >
@ -2593,18 +2594,28 @@ caused by autodump bugs or other hacking mishaps.</p>
< p > Scripts that implement dialogs inserted into the main game window are put in this
< p > Scripts that implement dialogs inserted into the main game window are put in this
directory.< / p >
directory.< / p >
< / div >
< / div >
< div class = "section" id = "binpatch" >
< h2 > < a class = "toc-backref" href = "#id117" > binpatch< / a > < / h2 >
< p > Checks, applies or removes binary patches directly in memory at runtime:< / p >
< pre class = "literal-block" >
binpatch check/apply/remove < patchname>
< / pre >
< p > If the name of the patch has no extension or directory separators, the
script uses < tt class = "docutils literal" > < span class = "pre" > hack/patches/< df-version> /< name> .dif< / span > < / tt > , thus auto-selecting
the version appropriate for the currently loaded executable.< / p >
< / div >
< div class = "section" id = "quicksave" >
< div class = "section" id = "quicksave" >
< h2 > < a class = "toc-backref" href = "#id117" > quicksave< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id11 8 "> quicksave< / a > < / h2 >
< p > If called in dwarf mode, makes DF immediately auto-save the game by setting a flag
< p > If called in dwarf mode, makes DF immediately auto-save the game by setting a flag
normally used in seasonal auto-save.< / p >
normally used in seasonal auto-save.< / p >
< / div >
< / div >
< div class = "section" id = "setfps" >
< div class = "section" id = "setfps" >
< h2 > < a class = "toc-backref" href = "#id118" > setfps< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id11 9 "> setfps< / a > < / h2 >
< p > Run < tt class = "docutils literal" > setfps < number> < / tt > to set the FPS cap at runtime, in case you want to watch
< p > Run < tt class = "docutils literal" > setfps < number> < / tt > to set the FPS cap at runtime, in case you want to watch
combat in slow motion or something :)< / p >
combat in slow motion or something :)< / p >
< / div >
< / div >
< div class = "section" id = "siren" >
< div class = "section" id = "siren" >
< h2 > < a class = "toc-backref" href = "#id1 19 "> siren< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id1 20 "> siren< / a > < / h2 >
< p > Wakes up sleeping units, cancels breaks and stops parties either everywhere,
< p > Wakes up sleeping units, cancels breaks and stops parties either everywhere,
or in the burrows given as arguments. In return, adds bad thoughts about
or in the burrows given as arguments. In return, adds bad thoughts about
noise, tiredness and lack of protection. Also, the units with interrupted
noise, tiredness and lack of protection. Also, the units with interrupted
@ -2612,7 +2623,7 @@ breaks will go on break again a lot sooner. The script is intended for
emergencies, e.g. when a siege appears, and all your military is partying.< / p >
emergencies, e.g. when a siege appears, and all your military is partying.< / p >
< / div >
< / div >
< div class = "section" id = "growcrops" >
< div class = "section" id = "growcrops" >
< h2 > < a class = "toc-backref" href = "#id12 0 "> growcrops< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 1 "> growcrops< / a > < / h2 >
< p > Instantly grow seeds inside farming plots.< / p >
< p > Instantly grow seeds inside farming plots.< / p >
< p > With no argument, this command list the various seed types currently in
< p > With no argument, this command list the various seed types currently in
use in your farming plots.
use in your farming plots.
@ -2624,7 +2635,7 @@ growcrops plump 40
< / pre >
< / pre >
< / div >
< / div >
< div class = "section" id = "removebadthoughts" >
< div class = "section" id = "removebadthoughts" >
< h2 > < a class = "toc-backref" href = "#id12 1 "> removebadthoughts< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 2 "> removebadthoughts< / a > < / h2 >
< p > This script remove negative thoughts from your dwarves. Very useful against
< p > This script remove negative thoughts from your dwarves. Very useful against
tantrum spirals.< / p >
tantrum spirals.< / p >
< p > The script can target a single creature, when used with the < tt class = "docutils literal" > him< / tt > argument,
< p > The script can target a single creature, when used with the < tt class = "docutils literal" > him< / tt > argument,
@ -2638,7 +2649,7 @@ but in the short term your dwarves will get much more joyful.</p>
quickly after you unpause.< / p >
quickly after you unpause.< / p >
< / div >
< / div >
< div class = "section" id = "slayrace" >
< div class = "section" id = "slayrace" >
< h2 > < a class = "toc-backref" href = "#id12 2 "> slayrace< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 3 "> slayrace< / a > < / h2 >
< p > Kills any unit of a given race.< / p >
< p > Kills any unit of a given race.< / p >
< p > With no argument, lists the available races.< / p >
< p > With no argument, lists the available races.< / p >
< p > With the special argument < tt class = "docutils literal" > him< / tt > , targets only the selected creature.< / p >
< p > With the special argument < tt class = "docutils literal" > him< / tt > , targets only the selected creature.< / p >
@ -2664,7 +2675,7 @@ slayrace elve magma
< / pre >
< / pre >
< / div >
< / div >
< div class = "section" id = "magmasource" >
< div class = "section" id = "magmasource" >
< h2 > < a class = "toc-backref" href = "#id12 3 "> magmasource< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 4 "> magmasource< / a > < / h2 >
< p > Create an infinite magma source on a tile.< / p >
< p > Create an infinite magma source on a tile.< / p >
< p > This script registers a map tile as a magma source, and every 12 game ticks
< p > This script registers a map tile as a magma source, and every 12 game ticks
that tile receives 1 new unit of flowing magma.< / p >
that tile receives 1 new unit of flowing magma.< / p >
@ -2679,7 +2690,7 @@ To remove all placed sources, call <tt class="docutils literal">magmasource stop
< p > With no argument, this command shows an help message and list existing sources.< / p >
< p > With no argument, this command shows an help message and list existing sources.< / p >
< / div >
< / div >
< div class = "section" id = "digfort" >
< div class = "section" id = "digfort" >
< h2 > < a class = "toc-backref" href = "#id12 4 "> digfort< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 5 "> digfort< / a > < / h2 >
< p > A script to designate an area for digging according to a plan in csv format.< / p >
< p > A script to designate an area for digging according to a plan in csv format.< / p >
< p > This script, inspired from quickfort, can designate an area for digging.
< p > This script, inspired from quickfort, can designate an area for digging.
Your plan should be stored in a .csv file like this:< / p >
Your plan should be stored in a .csv file like this:< / p >
@ -2697,7 +2708,7 @@ To skip a row in your design, use a single <tt class="docutils literal">;</tt>.<
< p > The script takes the plan filename, starting from the root df folder.< / p >
< p > The script takes the plan filename, starting from the root df folder.< / p >
< / div >
< / div >
< div class = "section" id = "superdwarf" >
< div class = "section" id = "superdwarf" >
< h2 > < a class = "toc-backref" href = "#id12 5 "> superdwarf< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 6 "> superdwarf< / a > < / h2 >
< p > Similar to fastdwarf, per-creature.< / p >
< p > Similar to fastdwarf, per-creature.< / p >
< p > To make any creature superfast, target it ingame using 'v' and:< / p >
< p > To make any creature superfast, target it ingame using 'v' and:< / p >
< pre class = "literal-block" >
< pre class = "literal-block" >
@ -2707,17 +2718,17 @@ superdwarf add
< p > This plugin also shortens the 'sleeping' and 'on break' periods of targets.< / p >
< p > This plugin also shortens the 'sleeping' and 'on break' periods of targets.< / p >
< / div >
< / div >
< div class = "section" id = "drainaquifer" >
< div class = "section" id = "drainaquifer" >
< h2 > < a class = "toc-backref" href = "#id12 6 "> drainaquifer< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 7 "> drainaquifer< / a > < / h2 >
< p > Remove all 'aquifer' tag from the map blocks. Irreversible.< / p >
< p > Remove all 'aquifer' tag from the map blocks. Irreversible.< / p >
< / div >
< / div >
< div class = "section" id = "deathcause" >
< div class = "section" id = "deathcause" >
< h2 > < a class = "toc-backref" href = "#id12 7 "> deathcause< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id12 8 "> deathcause< / a > < / h2 >
< p > Focus a body part ingame, and this script will display the cause of death of
< p > Focus a body part ingame, and this script will display the cause of death of
the creature.< / p >
the creature.< / p >
< / div >
< / div >
< / div >
< / div >
< div class = "section" id = "in-game-interface-tools" >
< div class = "section" id = "in-game-interface-tools" >
< h1 > < a class = "toc-backref" href = "#id12 8 "> In-game interface tools< / a > < / h1 >
< h1 > < a class = "toc-backref" href = "#id12 9 "> In-game interface tools< / a > < / h1 >
< p > These tools work by displaying dialogs or overlays in the game window, and
< p > These tools work by displaying dialogs or overlays in the game window, and
are mostly implemented by lua scripts.< / p >
are mostly implemented by lua scripts.< / p >
< div class = "note" >
< div class = "note" >
@ -2728,7 +2739,7 @@ display the word "DFHack" on the screen somewhere while active.</p>
guideline because it arguably just fixes small usability bugs in the game UI.< / p >
guideline because it arguably just fixes small usability bugs in the game UI.< / p >
< / div >
< / div >
< div class = "section" id = "dwarf-manipulator" >
< div class = "section" id = "dwarf-manipulator" >
< h2 > < a class = "toc-backref" href = "#id1 29 "> Dwarf Manipulator< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id1 30 "> Dwarf Manipulator< / a > < / h2 >
< p > Implemented by the manipulator plugin. To activate, open the unit screen and
< p > Implemented by the manipulator plugin. To activate, open the unit screen and
press 'l'.< / p >
press 'l'.< / p >
< p > This tool implements a Dwarf Therapist-like interface within the game UI. The
< p > This tool implements a Dwarf Therapist-like interface within the game UI. The
@ -2764,7 +2775,7 @@ cursor onto that cell instead of toggling it.</li>
directly to the main dwarf mode screen.< / p >
directly to the main dwarf mode screen.< / p >
< / div >
< / div >
< div class = "section" id = "search" >
< div class = "section" id = "search" >
< h2 > < a class = "toc-backref" href = "#id13 0 "> Search< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 1 "> Search< / a > < / h2 >
< p > The search plugin adds search to the Stocks, Trading and Unit List screens.< / p >
< p > The search plugin adds search to the Stocks, Trading and Unit List screens.< / p >
< p > Searching works the same way as the search option in " Move to Depot" does.
< p > Searching works the same way as the search option in " Move to Depot" does.
You will see the Search option displayed on screen with a hotkey (usually 's').
You will see the Search option displayed on screen with a hotkey (usually 's').
@ -2783,13 +2794,13 @@ Value numbers displayed by the screen. Because of this, pressing the 't'
key while search is active clears the search instead of executing the trade.< / p >
key while search is active clears the search instead of executing the trade.< / p >
< / div >
< / div >
< div class = "section" id = "gui-liquids" >
< div class = "section" id = "gui-liquids" >
< h2 > < a class = "toc-backref" href = "#id13 1 "> gui/liquids< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 2 "> gui/liquids< / a > < / h2 >
< p > To use, bind to a key and activate in the 'k' mode.< / p >
< p > To use, bind to a key and activate in the 'k' mode.< / p >
< p > While active, use the suggested keys to switch the usual liquids parameters, and Enter
< p > While active, use the suggested keys to switch the usual liquids parameters, and Enter
to select the target area and apply changes.< / p >
to select the target area and apply changes.< / p >
< / div >
< / div >
< div class = "section" id = "gui-mechanisms" >
< div class = "section" id = "gui-mechanisms" >
< h2 > < a class = "toc-backref" href = "#id13 2 "> gui/mechanisms< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 3 "> gui/mechanisms< / a > < / h2 >
< p > To use, bind to a key and activate in the 'q' mode.< / p >
< p > To use, bind to a key and activate in the 'q' mode.< / p >
< p > Lists mechanisms connected to the building, and their links. Navigating the list centers
< p > Lists mechanisms connected to the building, and their links. Navigating the list centers
the view on the relevant linked buildings.< / p >
the view on the relevant linked buildings.< / p >
@ -2798,7 +2809,7 @@ focus on the current one. Shift-Enter has an effect equivalent to pressing Enter
re-entering the mechanisms ui.< / p >
re-entering the mechanisms ui.< / p >
< / div >
< / div >
< div class = "section" id = "gui-rename" >
< div class = "section" id = "gui-rename" >
< h2 > < a class = "toc-backref" href = "#id13 3 "> gui/rename< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 4 "> gui/rename< / a > < / h2 >
< p > Backed by the rename plugin, this script allows entering the desired name
< p > Backed by the rename plugin, this script allows entering the desired name
via a simple dialog in the game ui.< / p >
via a simple dialog in the game ui.< / p >
< ul >
< ul >
@ -2814,14 +2825,14 @@ It is also possible to rename zones from the 'i' menu.</p>
< p > The < tt class = "docutils literal" > building< / tt > or < tt class = "docutils literal" > unit< / tt > options are automatically assumed when in relevant ui state.< / p >
< p > The < tt class = "docutils literal" > building< / tt > or < tt class = "docutils literal" > unit< / tt > options are automatically assumed when in relevant ui state.< / p >
< / div >
< / div >
< div class = "section" id = "gui-room-list" >
< div class = "section" id = "gui-room-list" >
< h2 > < a class = "toc-backref" href = "#id13 4 "> gui/room-list< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 5 "> gui/room-list< / a > < / h2 >
< p > To use, bind to a key and activate in the 'q' mode, either immediately or after opening
< p > To use, bind to a key and activate in the 'q' mode, either immediately or after opening
the assign owner page.< / p >
the assign owner page.< / p >
< p > The script lists other rooms owned by the same owner, or by the unit selected in the assign
< p > The script lists other rooms owned by the same owner, or by the unit selected in the assign
list, and allows unassigning them.< / p >
list, and allows unassigning them.< / p >
< / div >
< / div >
< div class = "section" id = "gui-choose-weapons" >
< div class = "section" id = "gui-choose-weapons" >
< h2 > < a class = "toc-backref" href = "#id13 5 "> gui/choose-weapons< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 6 "> gui/choose-weapons< / a > < / h2 >
< p > Bind to a key, and activate in the Equip-> View/Customize page of the military screen.< / p >
< p > Bind to a key, and activate in the Equip-> View/Customize page of the military screen.< / p >
< p > Depending on the cursor location, it rewrites all 'individual choice weapon' entries
< p > Depending on the cursor location, it rewrites all 'individual choice weapon' entries
in the selected squad or position to use a specific weapon type matching the assigned
in the selected squad or position to use a specific weapon type matching the assigned
@ -2831,13 +2842,13 @@ only that entry, and does it even if it is not 'individual choice'.</p>
and may lead to inappropriate weapons being selected.< / p >
and may lead to inappropriate weapons being selected.< / p >
< / div >
< / div >
< div class = "section" id = "gui-guide-path" >
< div class = "section" id = "gui-guide-path" >
< h2 > < a class = "toc-backref" href = "#id13 6 "> gui/guide-path< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 7 "> gui/guide-path< / a > < / h2 >
< p > Bind to a key, and activate in the Hauling menu with the cursor over a Guide order.< / p >
< p > Bind to a key, and activate in the Hauling menu with the cursor over a Guide order.< / p >
< p > The script displays the cached path that will be used by the order; the game
< p > The script displays the cached path that will be used by the order; the game
computes it when the order is executed for the first time.< / p >
computes it when the order is executed for the first time.< / p >
< / div >
< / div >
< div class = "section" id = "gui-workshop-job" >
< div class = "section" id = "gui-workshop-job" >
< h2 > < a class = "toc-backref" href = "#id13 7 "> gui/workshop-job< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 8 "> gui/workshop-job< / a > < / h2 >
< p > Bind to a key, and activate with a job selected in a workshop in the 'q' mode.< / p >
< p > Bind to a key, and activate with a job selected in a workshop in the 'q' mode.< / p >
< p > The script shows a list of the input reagents of the selected job, and allows changing
< p > The script shows a list of the input reagents of the selected job, and allows changing
them like the < tt class = "docutils literal" > job < span class = "pre" > item-type< / span > < / tt > and < tt class = "docutils literal" > job < span class = "pre" > item-material< / span > < / tt > commands.< / p >
them like the < tt class = "docutils literal" > job < span class = "pre" > item-type< / span > < / tt > and < tt class = "docutils literal" > job < span class = "pre" > item-material< / span > < / tt > commands.< / p >
@ -2865,7 +2876,7 @@ and then try to change the input item type, now it won't let you select <em>plan
you have to unset the material first.< / p >
you have to unset the material first.< / p >
< / div >
< / div >
< div class = "section" id = "gui-workflow" >
< div class = "section" id = "gui-workflow" >
< h2 > < a class = "toc-backref" href = "#id13 8 "> gui/workflow< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id13 9 "> gui/workflow< / a > < / h2 >
< p > Bind to a key, and activate with a job selected in a workshop in the 'q' mode.< / p >
< p > Bind to a key, and activate with a job selected in a workshop in the 'q' mode.< / p >
< p > This script provides a simple interface to constraints managed by the workflow
< p > This script provides a simple interface to constraints managed by the workflow
plugin. When active, it displays a list of all constraints applicable to the
plugin. When active, it displays a list of all constraints applicable to the
@ -2887,7 +2898,7 @@ as described in <tt class="docutils literal">workflow</tt> documentation above.
can be used for troubleshooting jobs that don't match the right constraints.< / p >
can be used for troubleshooting jobs that don't match the right constraints.< / p >
< / div >
< / div >
< div class = "section" id = "gui-assign-rack" >
< div class = "section" id = "gui-assign-rack" >
< h2 > < a class = "toc-backref" href = "#id1 39 "> gui/assign-rack< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id1 40 "> gui/assign-rack< / a > < / h2 >
< p > Bind to a key, and activate when viewing a weapon rack in the 'q' mode.< / p >
< p > Bind to a key, and activate when viewing a weapon rack in the 'q' mode.< / p >
< p > This script is part of a group of related fixes to make the armory storage
< p > This script is part of a group of related fixes to make the armory storage
work again. The existing issues are:< / p >
work again. The existing issues are:< / p >
@ -2907,7 +2918,7 @@ the intended user.</p>
< / div >
< / div >
< / div >
< / div >
< div class = "section" id = "behavior-mods" >
< div class = "section" id = "behavior-mods" >
< h1 > < a class = "toc-backref" href = "#id14 0 "> Behavior Mods< / a > < / h1 >
< h1 > < a class = "toc-backref" href = "#id14 1 "> Behavior Mods< / a > < / h1 >
< p > These plugins, when activated via configuration UI or by detecting certain
< p > These plugins, when activated via configuration UI or by detecting certain
structures in RAWs, modify the game engine behavior concerning the target
structures in RAWs, modify the game engine behavior concerning the target
objects to add features not otherwise present.< / p >
objects to add features not otherwise present.< / p >
@ -2918,20 +2929,20 @@ technical challenge, and do not represent any long-term plans to produce more
similar modifications of the game.< / p >
similar modifications of the game.< / p >
< / div >
< / div >
< div class = "section" id = "siege-engine" >
< div class = "section" id = "siege-engine" >
< h2 > < a class = "toc-backref" href = "#id14 1 "> Siege Engine< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id14 2 "> Siege Engine< / a > < / h2 >
< p > The siege-engine plugin enables siege engines to be linked to stockpiles, and
< p > The siege-engine plugin enables siege engines to be linked to stockpiles, and
aimed at an arbitrary rectangular area across Z levels, instead of the original
aimed at an arbitrary rectangular area across Z levels, instead of the original
four directions. Also, catapults can be ordered to load arbitrary objects, not
four directions. Also, catapults can be ordered to load arbitrary objects, not
just stones.< / p >
just stones.< / p >
< div class = "section" id = "rationale" >
< div class = "section" id = "rationale" >
< h3 > < a class = "toc-backref" href = "#id14 2 "> Rationale< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id14 3 "> Rationale< / a > < / h3 >
< p > Siege engines are a very interesting feature, but sadly almost useless in the current state
< p > Siege engines are a very interesting feature, but sadly almost useless in the current state
because they haven't been updated since 2D and can only aim in four directions. This is an
because they haven't been updated since 2D and can only aim in four directions. This is an
attempt to bring them more up to date until Toady has time to work on it. Actual improvements,
attempt to bring them more up to date until Toady has time to work on it. Actual improvements,
e.g. like making siegers bring their own, are something only Toady can do.< / p >
e.g. like making siegers bring their own, are something only Toady can do.< / p >
< / div >
< / div >
< div class = "section" id = "configuration-ui" >
< div class = "section" id = "configuration-ui" >
< h3 > < a class = "toc-backref" href = "#id14 3 "> Configuration UI< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id14 4 "> Configuration UI< / a > < / h3 >
< p > The configuration front-end to the plugin is implemented by the gui/siege-engine
< p > The configuration front-end to the plugin is implemented by the gui/siege-engine
script. Bind it to a key and activate after selecting a siege engine in 'q' mode.< / p >
script. Bind it to a key and activate after selecting a siege engine in 'q' mode.< / p >
< p > The main mode displays the current target, selected ammo item type, linked stockpiles and
< p > The main mode displays the current target, selected ammo item type, linked stockpiles and
@ -2952,7 +2963,7 @@ menu.</p>
< / div >
< / div >
< / div >
< / div >
< div class = "section" id = "power-meter" >
< div class = "section" id = "power-meter" >
< h2 > < a class = "toc-backref" href = "#id14 4 "> Power Meter< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id14 5 "> Power Meter< / a > < / h2 >
< p > The power-meter plugin implements a modified pressure plate that detects power being
< p > The power-meter plugin implements a modified pressure plate that detects power being
supplied to gear boxes built in the four adjacent N/S/W/E tiles.< / p >
supplied to gear boxes built in the four adjacent N/S/W/E tiles.< / p >
< p > The configuration front-end is implemented by the gui/power-meter script. Bind it to a
< p > The configuration front-end is implemented by the gui/power-meter script. Bind it to a
@ -2961,11 +2972,11 @@ key and activate after selecting Pressure Plate in the build menu.</p>
configuration page, but configures parameters relevant to the modded power meter building.< / p >
configuration page, but configures parameters relevant to the modded power meter building.< / p >
< / div >
< / div >
< div class = "section" id = "steam-engine" >
< div class = "section" id = "steam-engine" >
< h2 > < a class = "toc-backref" href = "#id14 5 "> Steam Engine< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id14 6 "> Steam Engine< / a > < / h2 >
< p > The steam-engine plugin detects custom workshops with STEAM_ENGINE in
< p > The steam-engine plugin detects custom workshops with STEAM_ENGINE in
their token, and turns them into real steam engines.< / p >
their token, and turns them into real steam engines.< / p >
< div class = "section" id = "id1" >
< div class = "section" id = "id1" >
< h3 > < a class = "toc-backref" href = "#id14 6 "> Rationale< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id14 7 "> Rationale< / a > < / h3 >
< p > The vanilla game contains only water wheels and windmills as sources of
< p > The vanilla game contains only water wheels and windmills as sources of
power, but windmills give relatively little power, and water wheels require
power, but windmills give relatively little power, and water wheels require
flowing water, which must either be a real river and thus immovable and
flowing water, which must either be a real river and thus immovable and
@ -2976,7 +2987,7 @@ it can be done just by combining existing features of the game engine
in a new way with some glue code and a bit of custom logic.< / p >
in a new way with some glue code and a bit of custom logic.< / p >
< / div >
< / div >
< div class = "section" id = "construction" >
< div class = "section" id = "construction" >
< h3 > < a class = "toc-backref" href = "#id14 7 "> Construction< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id14 8 "> Construction< / a > < / h3 >
< p > The workshop needs water as its input, which it takes via a
< p > The workshop needs water as its input, which it takes via a
passable floor tile below it, like usual magma workshops do.
passable floor tile below it, like usual magma workshops do.
The magma version also needs magma.< / p >
The magma version also needs magma.< / p >
@ -3000,7 +3011,7 @@ short axles that can be built later than both of the engines.</p>
< / div >
< / div >
< / div >
< / div >
< div class = "section" id = "operation" >
< div class = "section" id = "operation" >
< h3 > < a class = "toc-backref" href = "#id14 8 "> Operation< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id14 9 "> Operation< / a > < / h3 >
< p > In order to operate the engine, queue the Stoke Boiler job (optionally
< p > In order to operate the engine, queue the Stoke Boiler job (optionally
on repeat). A furnace operator will come, possibly bringing a bar of fuel,
on repeat). A furnace operator will come, possibly bringing a bar of fuel,
and perform it. As a result, a " boiling water" item will appear
and perform it. As a result, a " boiling water" item will appear
@ -3031,7 +3042,7 @@ decrease it by further 4%, and also decrease the whole steam
use rate by 10%.< / p >
use rate by 10%.< / p >
< / div >
< / div >
< div class = "section" id = "explosions" >
< div class = "section" id = "explosions" >
< h3 > < a class = "toc-backref" href = "#id1 49 "> Explosions< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id1 50 "> Explosions< / a > < / h3 >
< p > The engine must be constructed using barrel, pipe and piston
< p > The engine must be constructed using barrel, pipe and piston
from fire-safe, or in the magma version magma-safe metals.< / p >
from fire-safe, or in the magma version magma-safe metals.< / p >
< p > During operation weak parts get gradually worn out, and
< p > During operation weak parts get gradually worn out, and
@ -3040,7 +3051,7 @@ toppled during operation by a building destroyer, or a
tantruming dwarf.< / p >
tantruming dwarf.< / p >
< / div >
< / div >
< div class = "section" id = "save-files" >
< div class = "section" id = "save-files" >
< h3 > < a class = "toc-backref" href = "#id15 0 "> Save files< / a > < / h3 >
< h3 > < a class = "toc-backref" href = "#id15 1 "> Save files< / a > < / h3 >
< p > It should be safe to load and view engine-using fortresses
< p > It should be safe to load and view engine-using fortresses
from a DF version without DFHack installed, except that in such
from a DF version without DFHack installed, except that in such
case the engines won't work. However actually making modifications
case the engines won't work. However actually making modifications
@ -3051,7 +3062,7 @@ being generated.</p>
< / div >
< / div >
< / div >
< / div >
< div class = "section" id = "add-spatter" >
< div class = "section" id = "add-spatter" >
< h2 > < a class = "toc-backref" href = "#id15 1 "> Add Spatter< / a > < / h2 >
< h2 > < a class = "toc-backref" href = "#id15 2 "> Add Spatter< / a > < / h2 >
< p > This plugin makes reactions with names starting with < tt class = "docutils literal" > SPATTER_ADD_< / tt >
< p > This plugin makes reactions with names starting with < tt class = "docutils literal" > SPATTER_ADD_< / tt >
produce contaminants on the items instead of improvements. The produced
produce contaminants on the items instead of improvements. The produced
contaminants are immune to being washed away by water or destroyed by
contaminants are immune to being washed away by water or destroyed by