Утилита:DFHack: различия между версиями
Antropia (обсуждение | вклад) (→Утилиты, встраиваемые в игру: Search) |
Antropia (обсуждение | вклад) |
||
Строка 1005: | Строка 1005: | ||
На экране складов поиск появляется только когда курсор находится в самой правой колонке. <br /> | На экране складов поиск появляется только когда курсор находится в самой правой колонке. <br /> | ||
Note that the 'Permit XXX'/'Forbid XXX' keys conveniently operate only on items actually shown in the rightmost list, so it is possible to select only fat or tallow by forbidding fats, then searching for fat/tallow, and using Permit Fats again while the list is filtered. | Note that the 'Permit XXX'/'Forbid XXX' keys conveniently operate only on items actually shown in the rightmost list, so it is possible to select only fat or tallow by forbidding fats, then searching for fat/tallow, and using Permit Fats again while the list is filtered. | ||
=== AutoMaterial === | |||
[[Файл:DFHack_Automaterial_material_screen.png|300px|thumb|rigth|Automaterial. Экран выбора материала]] | |||
Этот плагин облегчает возведение конструкций (walls, floors, fortifications и т.д.), освобождая вас от поиска по большому листу материалов, когда вы используете какой-то один. <br /> | |||
Плагин перемещает последний использованный для данной конструкции материал на верх списка, если он еще остался. Так, если вы построите стену из блоков мела, в следующий раз, когда вы будете строить стену эти блоки будут не вершине списка, независимо от расстояния (только в режиме группировки, в режиме выбора отдельных предметов список слишком огромен). Таким образом вы можете строить множество конструкций без поиска необходимого материала. <br /> | |||
Нажатие клавиши {{k|a}}, когда материал подсвечен, включит автовыбор этого материала для данной конструкции. Вы можете включить автовыбор для нескольких материалов. В следующий раз, когда вы будете возводить эту постройку, плагин автоматически выберет эти материалы, и если их достаточно, конструкция будет установлена, вы даже не увидите меню выбора материала.<br /> | |||
Выбрав постройку конструкции вы увидите несколько опций:<br /> | |||
{{k|a}} для временного отключения автовыбора материала. После этого вы, например, можете перейти на экран выбора материалов и включить/отключить автовыбор нескольких материалов. <br /> | |||
{{k|t}} - автовыбор типа постройки. Тогда, после постройки, вместо того, чтобы вернуться в главное меню построек, вы окажетесь в меню постройки этого же типа. Вместе с автовыбором материала это позволит разметить сложную конструкцию намного быстрее. | |||
[[Категория:Утилиты]] | [[Категория:Утилиты]] |
Версия от 06:35, 5 сентября 2013
Данная статья помечена как не оконченная. Вы можете прочитать эту статью на английском или помочь проекту её переводом. |
DFhack — библиотека доступа к памяти и набор основных утилит, использующих данную библиотеку. Библиотека и утилиты находятся в активной разработке, выпускаются новые релизы и создаются новые утилиты. Существует большое количество сторонних программ использующих данную библиотеку для совершенно разных задач: визуализация, манипуляции с существами, сбор статистики и т.п.
Использование
Если DFHack установлен корректно, под Windows он автоматически запустится вместе с DF. В Linux и MacOS требуется запустить его из теминала, а затем использовать терминал для ввода команд.
Примечание:
Исполняемый файл DFHack предназначен для вызова команд DFHack из внешних скриптов и программ, когда DF+DFHack уже запущены, а не для обычного использования DFHack.
DFHack расширяет функционал Dwarf Fortress как выпадающая консоль расширяет его в играх на движке Quake.
Простейший способ использования DFHack — ввод команд в консоль.
Команда help выведет на экран небольшую справку.
ls — список всех доступных команд.
У многих команд есть собственная справка или детальное описание, которое можно посмотреть, введя <Имя_команды> help или <Имя_команды> ?
Командная строка имеет несколько удобных фич, например, историю введенных команд (используйте стрелки вверх и вниз).
Еще один способ — назначение команд в качестве внутриигровых горячих клавиш. Это можно сделать двумя способами:
Старым способом это делается через меню Hot Keys. Там, с помощью пункта Change name нужно ввести команду в качестве имени соответствующей горячей клавиши.
Новый, более гибкий способ — назначение горячей клавиши через консоль DFHack. К сожалению, созданные таким образом горячие клавиши не запоминаются автоматически между запусками игры, поэтому необходимо использовать файл dfhack.init, чтобы быть уверенным, что эти сочетания будут воссоздаваться при каждом запуске игры.
Интерактивные команды, такие как liquids нельзя назначать в качестве сочетания клавиш.
DFHack.init
Если в вашей директории с DF лежит файл dfhack.init, то его содержимое будет выполняться при каждом запуске игры. Файл содержит список горячих клавиш, которые нужно пересоздавать при каждом запуске. В качестве примера вы можете использовать файл dfhack.init-example, исправив его под свои нужды и переименовав в dfhack.init.
Назначение горячих клавиш
Для назначения горячих клавиш используйте команду keybinding. Ее можно использовать как в консоли, так и в файле DFHack.init. На текущий момент поддерживаются любые сочетания клавиш Ctrl / Alt / Shift клавишами F1 - F9 или A - Z.
Способы вызова команды:
- keybinding list <сочетание_клавиш> — показывает команды, назначенные для этого сочетания клавиш.
- keybinding clear <сочетание_клавиш> <сочетание_клавиш>... — удаляет команды, привязанные к этим клавишам.
- keybinding add <сочетание_клавиш> "команда" "команда"... — назначает сочетание клавиш для этого сочетания клавиш
- keybinding set <сочетание_клавиш> "команда" "команда"... — удаляет команды, привязанные к сочетанию клавиш, а затем назначает новые.
Параметр <сочетание_клавиш> имеет следующий, чувствительный к регистру символов, синтаксис:
[Ctrl-][Alt-][Shift-]KEY[@context]
где KEY — клавиша F1 - F9 или A - Z, а в скобках [] заключены необязательные параметры (используются без скобок).
Когда несколько команд назначены для одного сочетания клавиш DFHack выбирает первую команду, которую можно выполнить в данной ситуации. Команды, добавленные позднее, имеют приоритет над теми, что добавлены ранее. Если несколько команд перечислено в команде keybinding add приоритет будет отдан порядку команд.
Команды, которые не предназначены напрямую для использования в сочетаниях клавиш будут всегда считаться выполнимыми.
В примере выше тег "context" используется для ограничения состояний игры, в которых это сочетание будет выполняться. Если вызвано без параметров, команда "keybinding", среди прочего, выводит строку с текущим контекстом (напр. "The current context is: dwarfmode/DesignateMine" - контекст: режим крепости, экран Designations, в нем выбрано Mine). Такие сочетания выполняются только в том случае,если их тег "context" совпадает с текущим контекстом полностью или до разделителя "/". Например, для контекста foo/bar/baz выполнимыми будут только теги @foo/bar/baz, @foo/bar и @foo.
Пример:
keybinding add Ctrl-V digv
Добавляет сочетание клавиш Ctrl - V для команды digv.
Команды
Синтаксис команд DFHack состоит из имени команды, за которой следуют аргументы, разделенные пробелами. Если аргумент сам содержит пробелы - его нужно заключить в двойные кавычки. Чтобы использовать двойные кавычки внутри двойных кавычек - используйте \".
Если первый символ в строке - #, то он не выполняется и считается комментарием.
Если первый символ в строке - :, это альтернативный режим. В таком случае символы от : до пробела - имя команды, а то, что после - первый аргумент. Две команды в примере ниже эквиваленты:
:foo a b "c d" e f foo "a b \"c d\" e f"
Это предназначано для команд вроде "rb_eval", оперирующих выражениями на скриптовом языке.
Команды. Игровой процесс
die
Мгновенно завершает DF без сохранения.
forcepause
Принуждает игру встать на паузу. Полезно, когда ваш FPS падает ниже 1 и вы теряете контроль на игрой.
- forcepause 1 — включение.
- forcepause 0 — отключение.
nopause
Отключает паузу (и ручную и автоматическую). Исключение — пауза при обнаружении ада. Полезно, например, если нужно копать под рекой.
fastdwarf
Данная команда включает в себя два режима: speedydwarf и teledwarf. Speedydwarf заставляет дварфов двигаться и делать работу невероятно быстро. Teledwarf позволяет дварфам двигаться мгновенно, не оказывая влияния на скорость работы.
- fastdwarf 0 0 — выключает оба режима
- fastdwarf 0 1 — выключает speedydwarf и включает teledwarf
- fastdwarf 1 0 — включает speedydwarf и выключает teledwarf
- fastdwarf 1 1 — включает оба
- fastdwarf 0 — выключает оба режима
- fastdwarf 1 — включает speedydwarf и выключает teledwarf
- fastdwarf 2 — ставит нативный дебаг-флаг в памяти игры, что добавляет агрессивности режиму speedydwarf
Команды. Интерфейс
follow
Игра будет следовать за перемещениями текущего юнита. Полезно, чтобы следить за шляющимися дварфами. Отключается ручным перемещением области видимости.
tidlers
Переключает положение счетчика бездельников (idlers) между всеми возможными позициями на экране.
twaterlvl
Включает/выключает показ глубины жидкостей цифрами.
copystock
Копирует параметры текущего склада в настройки произвольного склада en и переключает в режим размещения произвольного склада, позволяя быстро и легко копировать/вставлять склады.
rename
Позволяет переименовать:
- rename squad <индекс> "имя" — переименовывает отряд по индексу. У отряда a в меню отрядов будет индекс 1, у отряда b — 2 и т. д.
- rename hotkey <индекс> "имя" — переименовывает горячую клавишу по индексу. Позволяет задать в соответствие горячей клавише длинную команду.
- rename unit "nickname" — переименовывает текущего выбранного в окне игры существа.
- rename unit-profession "custom profession" — меняет название профессии выбранного в окне игры существа.
- rename building "имя" — устанавливает имя для выбранного сооружения. Сооружение должно быть складом, мастерской, печью, ловушкой, осадным орудием или зоной активности.
Команды. Режим приключенца
adv-bodyswap
В режиме приключений команда позволяет брать под контроль ваших компаньонов или других существ. Например, вы можете взять контроль над ними и подобрать новое оружие, броню и т.д.
Использование:
- Откройте информацию о существе/компаньоне. Выполните команду. Вы перехватите контроль над существом.
- Для того, чтобы вернуться обратно, откройте экран статуса z и выполните команду снова.
advtools
Пакет утилит для режима приключенца (на текущий момент содержит лишь одну).
- list-equipped [all] — Выводит список металлического оружия и доспехов на вас и ваших компаньонах. При использовании с параметром all показывает также неметаллические предметы.
- metal-detector [all-types] [non-trader] — Показывает металлические доспехи и оружие в магазинах. Параметр all-types отключает проверку на тип объекта, а non-trader — показывает также объекты, находящиеся вне магазина.
Команды. Модификация карты
changelayer
Меняет материал геологического слоя под курсором на требуемый из числа неорганических RAW-материалов. Может затронуть не только зону высадки, но и окружающую ее местность.
По умолчанию не допускается менять камень на почву и наоборот.
По умолчанию меняется только слой под курсором. Не забывайте, что один слой может занимать несколько z-уровней.
По умолчанию меняется только геология, связанная с биомом под курсором, несмотря на то, что она может быть связана и с другими биомами. Жилы и кластеры внутри слоя сохранятся. Для их изменения нужно использовать команду changevein.
Параметры:
- all_biomes — изменить выбранный слой на всех биомах карты. Остерегайтесь неприятных последствий, т.к. один слой может И БУДЕТ располагаться на нескольких z-уровнях нескольких биомов. Используйте команду probe, чтобы получить представление о том, как слои и биомы расположены на карте.
- all_layers — меняет все слои на карте (но только для одного биома, если не использовать параметр all biomes). Сделает карту скучной, но аккуратной.
- force — разрешает менять камень на почву и обратно. Осторожно! Может привести к неожиданным последствиям! Обратите внимание, что почва не будет магическим образом заменена камнем, а камень не будет магически заменен почвой. Однако у вас будет каменный пол после раскопок, если вы заменили почву камнем, так что вы можете сделать на нем гравировку. И наоборот, если вы заменили камень почвой, после раскопок вы получите пол из почвы и сможете выращивать на нем растения.
- verbose — выводит некоторые подробности о том, что изменится.
- trouble — предупреждает о возможных проблемах
Примеры:
changelayer GRANITE
Меняет слой под курсором на гранит.
changelayer SILTY_CLAY force
Меняет слой под курсором на почву, даже если там камень.
changelayer MARBLE all_biomes all_layers
Меняет все слои (кроме почвы) всех биомов на мрамор.
Примечания:
- Если вы воспользовались командой, но ничего не произошло, попробуйте ненадолго поставить игру на паузу, а потом продолжить игру, двинуть курсор на другую клетку. Если не помогло, попробуйте еще раз. Если это не помогает — попробуйте временно изменить какой-нибудь другой слой, верните его обратно, а потом снова попробуйте заменить требуемый слой. Также может помочь перезапуск.
- Все должно быть в порядке, если вы меняете только один слой, не используя force, однако лучше все-таки предварительно сохраниться.
- Если вы меняете почву на камень — могут возникнуть странные последствия (клетки мигают, клетки заменены повсюду и т.д.). Попробуйте откатить изменения вручную, а лучше загрузите сохранение. Вы ведь сохранились, прежде чем?..
changevein
Меняет материал жилы под курсором требуемым неорганическим RAW-материалом. Затрагивает только клетки в пределах текущего блока 16х16. Для больших жил и кластеров используйте команду несколько раз.
Пример:
changevein NATIVE_PLATINUM — заменяет материал жилы под курсором самородной платиной.
changeitem
Позволяет менять материал и качество предмета. По умолчанию меняет выбранный в игре материал (например, выбранный клавишей k или внутри контейнера, инвентаря). По умолчанию менять разрешается только в пределах одного подтипа (дерево <-> дерево, камень <-> камень и т.д.). Это ограничение можно обойти с помощью команды force. Обратите внимание, что некоторые аттрибуты не будуз затронуты, что может привести к странным результатам. Для того, чтобы получить представление о том, как выглядит идентификатор RAW-материала, проверьте несколько предметов с помощью info. С помощью force можно получить предметы, которые невозможно сделать в мастерских (золотые кровати!)
Параметры:
- info — ничего не меняет, просто выводит некоторую информацию о предмете.
- here — меняет все предметы под курсором.
- material, m — требуемый материал. Должен соответствовать корректному идентификатору RAW.
- quality, q — меняет качество. Цифра от 0 до 5.
- force — игнорирует подтипы, позволяет менять на любой материал.
Примеры:
changeitem m INORGANIC:GRANITE here
Делает все предметы под курсором гранитными.
changeitem q 5
Меняет качество выбранного предмета на шедевр.
colonies
Выводит список всех колоний вредителей на карте. Также может заменить их на колонии медоносных пчел.
Параметры:
- bees — заменяет колонии на колонии медоносных пчел.
createitem
Позволяет создать преметы любых типов из любых материалов. Предмет появится у ног выбранного существа.
Информация о типе предмета и материала записывается в том же виде, как и в RAW-файлах с реакциями, но с небольшими отличиями:
- Предпочтительнее отделять предмет от материала пробелом, а не двоеточием.
- Если предмет не имеет подтипа, не указывайте ":NONE".
- Если предмет - REMAINS, FISH, FISH_RAW, VERMIN, PET, или EGG, укажите CREATURE:CASTE вместо материала.
Утилитой нельзя создать трупы, части тел и приготовленную еду.
Примеры:
createitem GLOVES:ITEM_GLOVES_GAUNTLETS INORGANIC:STEEL 2
Создать две пары стальных рукавиц.
createitem WOOD PLANT_MAT:TOWER_CAP:WOOD
Создать бревно tower-cap.
createitem FISH FISH_SHAD:MALE 5
Создать 5 очищенных shad, готовых к употреблению.
deramp (by zilpin)
Удаляет с карты все рампы, помеченные на удаление. Также удаляет все рампы вниз, оставшиеся от обвалов (вам даже не нужно ничего помечать на удаление для этого).
feature
Позволяет управлять особенностями карты:
- Открывать магму, что позволяет строить магменные мастерские и печи.
- Открывать пещеры, что запускает рост подземных растений и деревьев внутри почвенных слоев крепости.
Параметры:
- list — показывает все особенности в зоне высадки
- showX — помечает выбранную особенность (пещеру, озеро магмы и т.д.) как обнаруженную.
- hideX — помечает выбранную особенность как не обнаруженную.
liquids
Позволяет добавить магму, обсидиан и воду. Заменяет обычную консоль DFHack, поэтому не может быть назначена для сочетания клавиш. Настройки команды стираются при закрытии DFHack. Предназначена для использования с командой liquids-here (которая может быть назначена для сочетания клавиш).
Режимы:
- m — магма
- w — вода
- o — сделать обсидиановую стену
- of — обсидиановый пол
- rs — сделать исток реки
- f — только менять поток
- wcclean — убрать из параметров клетки флаги соленой и стоячей воды
Параметры (только для воды/магмы):
- s+ — только увеличивать уровень жидкости.
- s. — установить выбранный уровень жидкости.
- s- — только уменьшать уровень жидкости.
- f+ — жидкость будет с течением.
- f. — не менять течение.
- f- — жидкость будет стоячей.
- 0-7 — установить уровень жидкости
Кисть:
- point — одна клетка [p].
- range — блок с курсором в нижнем северо-западном углу [r] (любое место и размер).
- block — стандартный блок DF, внутри которого курсор (обычно 16х16х1).
- column — колонна от курсора вверх до открытого пространства.
- flood — клетки под курсором, покрытые полом (Используется только вместе с wclean).
Другое:
- q — выход в консоль DFHack.
- help или ? — справка.
- Пустая строка — поместить жидкость.
Заметка:
Создание и удаление жидкости через DFhack может испортить данные для поиска путей, а также карты температуры (создавая тепловые ловушки).
liquids-here
Помещает жидкость под курсором, используя настройки из liquids (по умолчанию поместит под курсором клетку магмы уровнем 7/7). Курсор должен был активен. Команде можно назначить сочетание клавиш.
tiletypes
Используется для редактирования клеток карты, во многом похожа на liquids. Оперирует двумя наборами настроек и кистью. Кисть определяет какие клетки будут обработаны. Первый набор настроек — фильтр, может исключить из-под кисти клетки с определенными свойствами. Второй набор настроек — краска, определяет как выбранные клетки будут изменены.
Оба наборы настроек имеют кучу параметров, таких как форма (стена, пол и т.д.), материал (почва, камень, минерал и т.д.), состояние флагов назначений designated, hidden, освещенности.
Настройки могут быть заданы не полностью, так что вы можете сделать что-нибудь такое:
filter material STONE
filter shape FORTIFICATION
paint shape FLOOR
Это заменит все каменные фортификации полом, сохранив материал.
Или такое:
filter shape FLOOR
filter material MINERAL
paint shape WALL
Обращает полы из минералов обратно в стены.
Можно также менять некоторые флаги клетки:
paint hidden 1
paint hidden 0
Единица спрячет ранее разведанную клетку, 0 — откроет неразведанную.
Любые настройки можно отключить напрямую, используя ключевое слово ANY:
paint hidden ANY
paint shape ANY
filter material any
filter shape any
filter any
Можно использовать несколько кистей:
- point — точка.
- range — прямоугольник.
- column — колонка от курсора вверх до первой твердой клетки.
- block — стандартный блок DF (16x16).
Пример:
range 10 10 1
Делает кисть прямоугольником размером 10х10 и глубиной 1 уровень. Курсор должен находиться в нижнем северо-западном углу.
tiletypes-commands
Запускает команды утилиты tiletypes, разделенные ;. Это дает возможность менять режимы tiletypes с помощью горячих клавиш.
tiletypes-here
Применяет текущие настройки утилиты tiletypes к клетке, в которой находится курсор (а также в тех, которые затрагивает кисть). Можно использовать с горячей клавишей.
tiletypes-here-point
Применяет текущие настройки утилиты tiletypes к клетке, в которой находится курсор, но игнорирует настройки кисти, затрагивая только клетку под курсором. Можно использовать с горячей клавишей.
tubefill
Заново заполняет раскопанные адамантиновые жилы, но флаг вторжения демонов может остаться (известный баг).
extirpate
Помогает избавиться от кустов и деревьев, оставляя от них только кучку пепла. По умолчанию уничтожает только дерево/куст под курсором.
Параметры:
- shrubs — уничтожить все кусты на карте.
- trees — уничтожить все деревья на карте.
- all — уничтожить все кусты и деревья.
grow
Все молодые деревья на карте (почти) мгновенно вырастут до взрослых деревьев.
immolate
Почти как extirpate, но деревья будут гореть. Огонь от них может (и будет!) распространяться.
regrass
Regrows grass. Not much to it ;)
weather
По умолчанию показывает погоду на данный момент. Но может также управлять ею:
- snow — вызвать снег.
- rain — призвать дождь.
- clear — сделать ясную погоду.
Команды. Исследование карты
cursecheck
Проверяет одну клетку или всю карту на проклятых существ (привидений, вампиров, некромантов, оборотней, зомби). Если курсор в игре активен — будет обследована только клетка под ним. Иначе будет проверена вся карта. По умолчанию будет выведен только счетчик проклятых существ на случай, если вы просто хотите убедиться, не шляются ли такие по вашей крепости. Мертвые и неактивные создания (упокоившиеся привидения, мертвые вампиры и т.д.) будут проигнорированы. Вся нежить (скелеты, трупы, куски тел и пр.) будут помещена в категорию "зомби" en. Неизвестные зомби и восставшие части тел будут показаны как "безымянные создания" en.
Параметры:
- detail — выводит полное имя, дату рождения, день, когда был проклят и некоторую другую информацию (хотя некоторые вампиры подделывают свою историю).
- nick — устанавливает тип проклятия как никнейм (не всегда показывается в игре, некоторые вампиры не любят ников).
- all — включает в список мертвых и неактивных. Можно получить очень длинный список после веселья с некромантами.
- verbose — выводит все теги проклятий (если вам и правда хочется знать их все).
Примеры:
cursecheck detail all
Выводит расширенную информацию обо всех проклятых существах, в том числе мертвых и неактывных (курсор в игре неактивен)
cursecheck nick
Устанавливает ник всем живым/активным проклятым (курсор в игре неактивен)
Заметка:
Если вы делаете полный поиск (используя all) бывшие привидения будут выводиться с типом проклятия "неизвестно" en потому что флаг, который определяет их как привидений, уже снят. Но если неизвестный тип проклятия появится при поиске среди живых/активных проклятых, создатели DFHack просят поставить их в известность. К примеру, такое может случиться с модами, которые вводят в игру новые типы проклятий.
flows
Инструмент, позволяющий проверить, сколько на карте текущей жидкости. Если вы подозреваете, что ваше море магмы стекает в HFS, с помощью этого инструмента можно узнать это, не раскрывая карты.
probe
Выводит множество информации о клетке под курсором. Можно мерять температуру.
prospect
Вывобит список всех материалов и растений. По умолчанию выводит только список тех, которые представлены на открытой части карты.
Параметры:
- all — сканирует всю карту, как если бы она была исследована целиком.
- value — выводит ценность. Полезно для самоцветов.
- hell — выводит z-уровни трубок HFS. Включает в себя "all".
Перед высадкой
Если использовать команду на экране выбора места для высадки, то она покажет оценку наличия слоев камней. В данном случает оценка будет только приблизительной (±30% от реального значения, а то и хуже). В частности, не совсем понятно, как вычислить сколько слоев почвы будет в месте высадки, так что она может накинуть лишних, а может и пропустить существующий.
- all — выведет также оценку жил минералов.
reveal
Открывает карту. По умолчанию HFS останется скрытым, так что триггер на вторжение демонов не сработает. Можно использовать "reveal hell", чтобы открыть всю карту, но тогда вы не сможете снять игру с паузы, пока не спрячете карту обратно. Если все-таки нужно снять игру с паузы с разведанным адом — используйте "reveal demons".
Reveal работает и в режиме приключенца, но действие команды будет исчезать каждый раз, когда вы двигаетесь, так что в данном случае вам не нужно использовать "unreveal".
unreveal
Возвращает карту в исходное состояние после команды "reveal".
revtoggle
Переключает между "reveal" и "unreveal".
revflood
Скрывает всю карту, а затем открывает только те клетки, к которым есть путь от курсора.
revforget
Когда вы используете "reveal", исходное состояние карты сохраняется. "Unreveal" использует эту информацию, чтобы вернуть все обратно. Данная команда стирает эту информацию.
showmood
Показывает все предметы, которые необходимы для странного настроения, активного на данный момент.
Команды. Указания
burrow
Предоставляет широкие возможности по управлению норами en, в том числе позволяет делать норы, автоматически расширяющиеся при раскопках.
Параметры:
- enable feature ... — подключить функцию плагина
- disable feature ... — отключить функцию плагина.
- clear-units "Название норы 1" "Название норы 2" ... — удаляет из норы всех приписанных юнитов.
- clear-tiles "Название норы 1" "Название норы 2" ... — удаляет из норы все приписанные клетки карты.
- set-units "Целевая нора" "Нора-источник 1" ... — удаляет юнитов из целевой норы, затем добавляет в нее юнитов, приписанных к норам-источникам.
- add-units "Целевая норма" "Нора-источник 1" ... — добавляет юнитов из нор-источников в целевую нору.
- remove-units "Целевая норма" "Нора-источник 1" ... — удаляет из целевой норы тех юнитов, которые есть и в норах-источниках (разность множеств).
- set-tiles "Целевая нора" "Нора-источник 1" ... — удаляет клетки карты из целевой норы, затем добавляет в нее клетки, приписанные к норам-источникам.
- add-tiles "Целевая нора" "Нора-источник 1" ... — добавляет клетки из нор-источников в целевую нору.
- remove-tiles "Целевая нора" "Нора-источник 1" ... — удаляет из целевой норы те клетки, которые есть и в норах-источниках (разность множеств).
Для трех последних парамертров вместо нор-источников можно использовать следующие ключевые слова:
ABOVE_GROUND ru, SUBTERRANEAN ru, INSIDE ru, OUTSIDE ru, LIGHT ru, DARK ru, HIDDEN ru, REVEALED ru.
Функции:
- auto-grow — когда стена внутри норы, имя которой заканчивается на "+", раскопана, то нора автоматически расширяется до прилегающих свежераскопанных стен. Этот "+" в конце имени, можно опускать, если вы используете имя норы в параметрах команды burrow. Внимание: шахтер, находящийся внутри норы, будет копать одноклеточный коридор очень-очень долго.
digv
Дать указание на раскопку жилы целиком. Требуется активный курсор, указывающий на жилу. С параметром "x" будут учитываться также z-уровни (будут вырезаны лестницы в клетках того же материала).
digvx
Постоянный псевдоним для "digv x".
digl
Дает указание на раскопку слоя камней. Курсор должен указывать на слой. С параметром "x" будут учитываться также z-уровни (будут вырезаны лестницы в клетках того же материала). С параметром "undo" отменяет указание на раскопку (вдруг вам покажется, что раскопка слоя в 50 z-уровней — не такая хорошая идея?).
diglx
Постоянный псевдоним для "digl x".
digexp
Команда для геологической разведки. Команда оперирует двумя переменными: паттерном и фильтром.
Паттерны:
- diag5 — диагонали, разделенные пятью клетками.
- diag5r — то же самое, но повернуто на 90 градусов.
- ladder — ступенчатый паттерн.
- ladderr — ступенчатый паттерн, повернутый на 90 градусов.
- clear — удалить все указания на раскопки.
- cross — крест в самом центре карты.
Фильтры:
- all — разместить паттерн на всем z-уровне.
- hidden — разместить паттерн только на скрытых клетках уровня (по умолчанию).
- designated — разместить паттерн внутри размеченных областей.
Для того, чтобы заново применить предыдущий фильтр и паттерн, можно использовать команду digexp без параметров.
Примеры:
expdig diag5 hidden
Разметить для раскопок диагональный паттерн на всех скрытых клетках уровня.
expdig
Применить последние паттерн и фильтр.
expdig ladder designated
Взять текущие указания для раскопок и подменить их ступенчатым паттерном.
digcircle
Команда для легкой разметки кругов и окружностей. Имеет несколько типов опций.
Форма:
- hollow — окружность (по умолчанию).
- filled — круг.
- # — диаметр в клетках (по умолчанию — 0, ничего не делает).
Действия:
- set — разметить фигуру (по умолчанию).
- inset — убрать разметку.
- invert — убирает/размечает последнюю фигуру.
Указания:
- dig — просто копать (по умолчанию).
- ramp — копать рампы.
- ustair — копать лестницы вверх.
- dstair — лестницы вниз.
- xstair — двунаправленные лестницы
- chan — канал.
Если вы уже установили набор параметров, то команду можно выполнять без них.
Примеры:
digcircle filled 3
Копать круг диаметром 3
digcircle
То же самое еще раз.
digtype
Это команда дает каждой клетке карты с жилой того же типа то же указание, что у клетки под курсором. Если у выбранного файла нет указания — будет дано указание копать. Если же дан аргумент, то указание выбранной клетки игнорируется в пользу аргумента.
Аргументы:
- dig — копать.
- channel — канал.
- ramp — рампа.
- updown — двунаправленная лестница.
- up — лестница вверх.
- down — лестница вниз.
- clear — удалить указания.
filltraffic
Назначить приоритет зоны передвижения на клетки, покрытые полом, начиная от курсора. Коды приоритетов:
- H — высокий траффик.
- N — обычный траффик.
- L — низкий траффик.
- R — нежелательная для передвижения зона.
Другие параметры:
- X — назначать сквозь z-уровни.
- B — включая здания и склады.
- P — включая пустое пространство.
Пример:
filltraffic H
Если использовать в комнате с дверьми, назначит высокий траффик только внутри комнаты.
alltraffic
Установить приоритет зоны передвижения всем клеткам карты (полезно для сброса приоритетов). Коды приоритетов:
- H — высокий траффик.
- N — обычный траффик.
- L — низкий траффик.
- R — нежелательная для передвижения зона.
Пример:
alltraffic N
Установить обычный приоритет для всех клеток карты.
restrictliquid
Установить приоритет передвижения restricted для всех видимых тайлов с жидкостями.
restrictice
Установить приоритет передвижения restricted для всех видимых тайлов, покрытых льдом.
getplants
Команда позволяет по идентификатору RAW собрать определенные растения или вырубить конкретный вид деревьев. Имена должны быть разделены пробелом, если типов растений/деревьев несколько.
Параметры:
- -t — выбрать только деревья (исключить кусты).
- -s — выбрать только кусты (исключить деревья).
- -c — очистить указания вместо их установки.
- -x — применить ко всем растениям, кроме указанных (обратить выделение).
Выбор параметров "-t" и "-s" одновременно не даст никакого результата. Если не указано ни одного ID, будут выбраны все корректные ID растений.
Команды. Очистка и вывоз мусора
clean
Удаляет всю грязь, скопившуюся на карте, предметах и существах. В старой крепости это может значительно повысить FPS. Также может заспойлерить !!FUN!!, так что хорошенько подумайте перед использованием.
Параметры:
- map — очищает клетки карты. По умолчанию не трогает ил и снег.
- units — очищает сущевств. Даже враждебных.
- items — очистит все предметы. Даже отравленный нож.
Аттрибуты для "map":
- mud — удаляет еще и ил.
- snow — удаляет и снег.
spotclean
То же, что и "clean map snow mud", но чистит только клетку под курсором.
autodump
Утилита, позволяющая быстро переместить все предметы, помеченные, как мусор. Предметы мгновенно переместятся в позицию курсора, причем флаг "dump" будет снят, а флаг "forbid" поставлен — словно они были выкинуты обычным путем. Имейте в виду, что все активные задачи по выносу мусора так и будут указывать на объект. Курсор нужно поместить над клеткой пола.
Параметры:
- destroy — Не выкидывать, а просто уничтожить. Курсор не нужен.
- destroy-here — уничтожить только те помеченные предметы, что под курсором.
- visible — обрабатывать только объекты, которые не скрыты.
- hidden — обрабатывать только скрытые объекты.
- forbidden — обрабатывать только запрещенные объекты (по умолчанию обрабатываются только не запрещенные).
autodump-destroy-here
Уничтожить предметы под курсором помеченные как мусор. Аналогично "autodump destroy-here", но можно использовать с сочетанием клавиш.
autodump-destroy-item
Уничтожить выбранную вещь. Вещь может быть выбрана как внутри контейнера, так и в списке по клавише k. Если выполнена второй раз прежде, чем игра будет возобновлена — отменит уничтожение.
cleanowned
Конфискует собственность дварфа. По умолчанию конфискуются и выбрасываются испорченные вещи и еда, валяющаяся на полу.
Параметры:
- all — конфискуются все вещи.
- scattered — конфискуются и выбрасываются все вещи, разбросанные на полу.
- x — конфискуются и выбрасываются вещи с износом "x" и более.
- X конфискуются и выбрасываются вещи с износом "X" и более.
- dryrun — тестовый прогон. Используйте с другими параметрами, чтобы посмотреть, что произошло бы, не будь это репетицией.
Пример:
cleanowned scattered X
Будет конфискована испорченная и брошенная еда, разбросанные на полу вещи и любые вещи со степенью износа "X" и выше.
Команды. Багфиксы
drybuckets
Удаляет воду из всех ведер, позволяя использовать их для производства щелочи.
fixdiplomats
До версии 0.31.12 эльфы посылали дипломатов только для того, чтобы обсудить квоты на вырубку деревьев, что было признано багом. С тех пор, как баг поправлен, эльфы перестали волноваться о вырубке деревьев. Команда добавляет эльфийской цивилизации должность дипломата, позволяя им вести переговоры о квотах вырубки деревьев, а вам - злить их, провоцируя на военные действия.
fixmerchants
Добавляет все человеческим цивилизациям должность торгового представителя, позволяя им заключать торговые соглашения (как они делали это до версии 0.28.181.40d).
fixveins
Удаляет некорректные ссылки на включения минералов, восстанавливает потерянные. Полезно, если вы накосячили с утилитами вроде tiletypes или случайно возвели конструкцию на полу из ценного минерала.
tweak
Исправления мелких багов.
Субкоманды:
- clear-missing - Удаляет статус "пропавший" en у выбранного юнита. Позволяет выгравировать мемориальную плиту для привидения существа, тело которого не найдено.
- clear-ghostly - Удаляет статус "пропавший" en у выбранного юнита и помечает его как мертвого. Позволяет упокоить забагованных призраков, которые не показываются в меню гравировки мемориальной плиты даже после команды clear-missing. Работает, но возможно представляет большую опасность, так что будьте осторожны. Вероятно (почти точно) это не даст того же эффекта, что и нормальные похороны. Вас предупредили.
- fixmigrant - Удаляет у вабранного юнита флаг "житель/торговец". Предназначено для исправления бага с мигрантами/торговцами, которые застыли на краю карты и не идут в крепость. Работает только на дварфах (или на расе игрока, если это мод). Не злоупотребляйте этим на нормальных торговцах. (если уж вам так хочется их похитить - используйте "tweak makeown", иначе их одежда будет forbidden ru и т.д.).
- makeown - вынуждает выбранного юнита стать членом вашей крепости. Так можно грабить караваны вместе с торговцами и их эскортом, даже если они не принадлежат к расе игрока. Иностранцы (люди, эльфы) могут работать, но им нельза назначать комнаты и они не будут отображаться в DwarfTherapist, потому что игра считает их чем-то вроде домашних животных. Захват животных с каравана может дать странные эффекты (животные сходят с ума, становятся берсерками или вовсе не считаются прирученными), но вы можете отправить их на скотобойню. Grabbing wagons results in some funny spam, then they are scuttled.
Субкоманды, которые действуют до перезапуска DF:
- stable-cursor - в режиме крепости сохраняет позицию курсора при переключении между меню t, q, k, d и т.п.
- patrol-duty - делает так, чтобы приказы на тренировку не считались патрулями, что препятствует накоплению плохих мыслей. Не решает проблемы, когда солдаты уходят со службы, становясь гражданскими.
- readable-build-plate - исправляет показ весового лимита в меню постройки нажимной плиты.
- stable-temp - Fixes performance bug 6012 by squashing jitter in temperature updates. In very item-heavy forts with big stockpiles this can improve FPS by 50-100%
- fast-heat - Further improves temperature update performance by ensuring that 1 degree of item temperature is crossed in no more than specified number of frames when updating from the environment temperature. This reduces the time it takes for stable-temp to stop updates again when equilibrium is disturbed.
- fix-dimensions - исправляет вычитание небольшого количества нити/ткани/жидкости из стека путем разделения стека и вычитания оттуда одной вещи. Обязательное дополнение к патчу для бага 808.
- advmode-contained - Works around bug 6202, i.e. custom reactions with container inputs in advmode. The issue is that the screen tries to force you to select the contents separately from the container. This forcefully skips child reagents.
- fast-trade - делает так, чтобы нажание Shift - Enter на экране торговли и в меню Move Goods to Depot выбирало текущую вещь (полностью, если это стек) и перемещало курсор на следующую строку.
- military-stable-assign - сохраняет позицию курсора в меню назначения в отряд, т.е. курсор в меню со списком дварфов не будет постоянно оказываться вверху списка.
- military-color-assigned - окрашивает имена солдат, уже назначенных в другие отряды в зеленый/коричневый цвет в списке кандидатов на назначение в отряд.
- military-training - ускоряет тренировку отряда за счет устранения почти наверняка неумышленно сделанной Toady обратной зависимости скорости тренировки к количеству юнитов. (Т.е. чем больше юнитов - тем медленней). Также заставляет юнитов болше спарринговаться.
fix-armory
Включает хранение экипировки отряда в бараках.
Не дает носильщикам таскать экипировку отряда на склады, а с них обратно в weapon racks, armor stands и контейнеры.
Примечание:
Чтобы это действительно работало необходимо пропатчить weapon racks и вручную приписать их к отряду. См. ниже документацию на gui/assign-rack.
К тому же, стандартная вместимость armor stand'ов довольно низка. Возможно вам заохочется увеличить ее патчем armorstand-capacity. Подробности.
Постройки в оружейной используются так:
- Weapon rack (пропатченные) хранят любое оружие отряда. Каждый принадлежит конкретному отряду и может хранить до пяти предметов.
- Armor stand принадлежат членам конкретного отряда и хранят броню и щиты. По умолчанию один armor stand хранит один предмет (вплоть до единственного ботинка или перчатки). Пропатченный хранит 2 предмета, этого должно быть достаточно.
- Cabinet хранит одежду, приписанную члену конкретного отряда. Никогда не хранят их собственную одежду.
- Chest (box и т.д.) хранит flask, backpack или quiver члена конкретного отряда. Возможно баг, но еда вываливается из рюкзака, когда тот хранится.
Warning:
Although armor stands, cabinets and chests properly belong only to one squad member, the owner of the building used to create the barracks will randomly use any containers inside the room. Thus, it is recommended to always create the armory from a weapon rack.
Contrary to the common misconception, all these uses are controlled by the Individual Equipment usage flag. The Squad Equipment flag is actually intended for ammo, but the game does even less in that area than for armor and weapons. This plugin implements the following rules almost from scratch:
- Combat ammo is stored in chests inside rooms with Squad Equipment enabled.
- If a chest is assigned to a squad member due to Individual Equipment also being set, it is only used for that squad's ammo; otherwise, any squads with Squad Equipment on the room will use all of the chests at random.
- Training ammo is stored in chests inside archery ranges designated from archery targets, and controlled by the same Train flag as archery training itself. This is inspired by some defunct code for weapon racks.
There are some minor traces in the game code to suggest that the first of these rules is intended by Toady; the rest are invented by this plugin.
Команды. Переключение режимов игры и возврат крепости
lair
Позволяет пометить карту как "логово монстров", что предотвращает разбрасывание предметов, когда вы бросаете крепость. "lair reset" делает снимает метку. В отличие от "reveal", эта команда не сохраняет информацию, так что вы не сможете восстановить информацию о настоящих логовах с помощью "lair reset".
Параметры:
- lair - помечает карту как логово монстров.
- lair reset - помечает карту обычной (не логовом).
mode
Позволяет напрямую менять режим игры. Не все комбинации хороши, многие приведут к неприятным последствиям.
Пример:
Вы управляете крепостью и ставите игру на паузу. Затем переключаетесь в режим арены и берете существо под контроль en и переключаетесь в режим приключенца. Вы только что потеряли крепость и стали приключенцем. Можно вот еще что: вы управляете из режима крепости, ставите игру на паузу, перейдя в главное меню Esc. Переключаетесь в режим приключенца, потом используете Dfusion для того, чтобы взять существо под контроль en, затем сохраняетесь или уходите в отставку en. Вы создали возвращаемую крепость и стали приключенцем.
Автор не несет ответственности за последствия использования этой команды.
Команды. Визуализатор и экспорт данных
ssense / stonesense
Stonesense - изометрический визуализатор, работающий в другом окне. Для работы требуется графический ускоритель и по крайней мере двухядерный процессор (иначе программа замедлит DF).
Все данные хранятся в директории "stonesense". Более подробная инструкция в stonesense/README.txt
Совместима с Windows XP sp3 и выше, а также с современными дистрибутивами Linux.
Старые версии, поддержка, дополнительная графика здесь.
Дополнительные ресурсы.
mapexport
Экспортирует текущую карту в файл. Можно будет использовать с визуализаторами.
dwarfexport
Экспортирует дварфов в RuneSmith-совместимый XML.
Команды. Управление заданиями
job
Команда для получения информации о заданиях и управления заданиями.
Параметры:
- без параметров - выводит подробную информацию о работе, выбранной в мастерской или на экранах юнитов en и работ en.
- list - выводит информацию обо всех работах в выбранной мастерской.
- item-material <item-idx> <material[:subtoken]> - подставляет ID конкретного материала в задание на работу.
- item-type <item-idx> <type[:subtype]> - подставляет точный ID типа предмета в задание.
job-material
Меняет материал, используемый в выбранной работе.
Работает так:
job-material <inorganic-token>
Используется с сочетанием клавиш:
- В меню q, когда работа выбрана в мастерской или печи, меняет материал используемый для работы. Можно использовать только неорганические материалы.
- В меню b, в ходе выбора компонентов постройки, курсор переместится на первый попавшийся компонент с выбранным материалом.
job-duplicate
- В меню q, когда работа выбрана в мастерской или печи, дублирует ее.
workflow/GUI
Управление прозводственным потоком. Для этой команды существует также консольный интерфейс, детали обращения с которым здесь не приводится. workflow enable [option...], workflow disable [option...] Привяжите сочетание клавиш (пример настроек предлагает Alt-W), потом активируйте её при задав работу в мастерской (q - режим).
Скрипт предлагает простой интерфейс управления ограничениями workflow плагина. После активацииGUI содержит список ограничений для данной реакции и их статус на данный момент.
Ограничение задает краевые значения, с которыми будет сравниваться либо общее количество вещей данного типа (опционально — материала), либо число стаков. Когда количество вещей падает ниже меньшего значения диапазона — работа запускается. Если ниже верхнего предела — работа продолжается. Если значение выше или равно верхнему пределу — выпуск продукции опять прекращается.
Pressing 'I' switches the current constraint between counting stacks or items. Pressing 'R' lets you input the range directly; 'e', 'r', 'd', 'f' adjust the bounds by 5, 10, or 20 depending on the direction and the 'I' setting (counting items and expanding the range each gives a 2x bonus).
Pressing 'A' produces a list of possible outputs of this job as guessed by workflow, and lets you create a new constraint by choosing one as template. If you don't see the choice you want in the list, it likely means you have to adjust the job material first using job item-material or gui/workshop-job, as described in workflow documentation above. In this manner, this feature can be used for troubleshooting jobs that don't match the right constraints.
Команды. Управление крепостью
seedwatch
Включает и выключает приготовление семян и растений в зависимости от их количества. Для каждого вида растений может быть назначен свой лимит. Когда количество растений и семян этого типа падает ниже лимита - их приготовление запрещается. Когда количество вырастает больше лимита + 20 штук, приготовление разрешается.
Плагин требует того, чтобы игра работала в режиме крепости, иначе он автоматически завершает работу. Вам потребуется перезапускать его при каждом запуске режима крепости с помощью "seedwatch start".
Параметры:
- seedwatch all - добавляет в список мониторинга все растения из листа аббревиатур.
- seedwatch start - запускает мониторинг.
- seedwatch stop - останавливает мониторинг.
- seedwatch info - показывает осуществляется ли мониторинг, выводит список мониторинга.
- seedwatch clean - очистка списка мониторинга.
Можно использовать следующие аббревиатуры для растений:
- bs -> SLIVER_BARB
- bt -> TUBER_BLOATED
- bw -> WEED_BLADE
- cw -> GRASS_WHEAT_CAVE
- dc -> MUSHROOM_CUP_DIMPLE
- fb -> BERRIES_FISHER
- hr -> ROOT_HIDE
- kb -> BULB_KOBOLD
- lg -> GRASS_LONGLAND
- mr -> ROOT_MUCK
- pb -> BERRIES_PRICKLE
- ph -> MUSHROOM_HELMET_PLUMP
- pt -> GRASS_TAIL_PIG
- qb -> BUSH_QUARRY
- rr -> REED_ROPE
- rw -> WEED_RAT
- sb -> BERRY_SUN
- sp -> POD_SWEET
- vh -> HERB_VALLEY
- ws -> BERRIES_STRAW_WILD
- wv -> VINE_WHIP
Примеры:
seedwatch MUSHROOM_HELMET_PLUMP 30
Добавить Plump helmet в список мониторинга, лимит - 30.
seedwatch MUSHROOM_HELMET_PLUMP
Удаляет Plump helmet из списка мониторинга.
seedwatch ph 30
То же самое, что и "seedwatch MUSHROOM_HELMET_PLUMP 30".
seedwatch all 30
Добавить все растения из списка аббревиатур в список мониторинга. Лимит - 30.
zone
Небольшая помощь в управлении зонами активности (пастбищами, ямами, прудами) и клетками.
Параметры:
- set - устанавливает зону или клетку под курсором как клетку/зону по умолчанию для приписывания животных в будущем.
- assign - привязать юнита/юнитов к пастбищу или яме, выбранной параметром "set". Если фильтры не заданы - юнит должен быть выбран в игре. Параметру может следовать ID зоны, которая будет использоваться взамен той, что по умолчанию.
- unassign - открепить выбранное существо от его зоны.
- nick <nickname> - массовое назначение ников.
- rem-nick - массовое удаление ников.
- tocages - разместить юнита/юнитов в клетках внутри пастбища.
- uinfo - вывести данные о юните/юнитах. Если фильтры не заданы - юнит должен быть выбран в игре.
- zinfo - вывести данные о зоне/зонах. Без фильтров будет выведена информация о зонах под курсором.
- verbose - еще информация.
- filters - вывести список параметров фильтра.
- examples - вывести примеры использования.
- not - "НЕ", отрицание следующего ключевого слова (для фильтра).
Фильтры:
- all - обработать всех юнитов (для использования вместе с другими фильтрами).
- count <N> - Обработать только N юнитов, где N - число. (для использования вместе с другими фильтрами).
- unassugned - выбирать не приписанных к зоне, цепи или установленной клетке.
- minage <age> - Минимальный возраст для отбора. Age - возраст.
- maxage <age> - Максимальный возраст для отбора. Age - возраст.
- race <rase RAW ID> - Раса для выбора. Должно употребляться с идентификатором расы (напр. BIRD_TURKEY, ALPACA и т.п.). Можно использовать с NOT.
- caged - выбрать находящихся в установленной клетке. Можно использовать с NOT.
- own - выбирать из принадлежащих цивилизации. Можно использовать с NOT.
- merchant - торговец/принадлежащие торговцу. Должно использоваться для размещения животных в ямах, а не ждя их кражи (убой скота должен работать).
- war - выбор боевых животных. Можно использовать с NOT.
- hunting - выбор охотничьих животных. Можно использовать с NOT.
- tamed - выбор питомцев. Можно использовать с NOT.
- trained - тренированное животное. Находит охотничьих/боевых животных так же как и тех, чей уровень тренировки выше чем "одомашненный". Если вам нужны именно охотничьи/боевые особи ищите по "war" или "hunting". Можно использовать с NOT.
- trainablewar - существо может быть тренировано для боя (но еще не тренировано). Можно использовать с NOT.
- trainablehunt - может быть тренировано для охоты (но еще не тренировано). Можно использовать с NOT.
- male - самец. Можно использовать с NOT.
- female - самка. Можно использовать с NOT.
- egglayer - раса относится к яйцекладущим. Можно использовать с NOT.
- grazer - травоядное. Можно использовать с NOT.
- milkable - млекопитающее. Можно использовать с NOT.
Использование с отдельными юнитами:
Один из удобных способов использования команды - назначение сочетания клавиш на команду "zone assign", а может еще и "zone set". Поместите курсор на пастбище или яму, используйте "zone set", чтобы пометить его. Теперь вы можете выбирать юнитов на карте (с помощью v или k) и использовать "zone assign", чтобы приписать их к новому дому (который вы пометили командой "zone set"). Кстати, позволяет сажать в ямы дварфов.
Использование с фильтрами:
Все фильтры можно использовать с командой "assign".
Ограничения: невозможно назначать юнитов, которые находятся внутри установленной клетки или на цепи потому, что в большинстве случаев это весьма нежелательно. Невозможно засунуть в клетку животное, у которого есть владелец, потому что владелец вскоре вытащит его из клетки, что приведет к бесконечному тасканию животного туда-сюда.
Обычно стоит использовать фильтр "own" (включающий в себя "tame"), если вы конечно не хотите использовать команду для того, чтобы садить в яму гостей. "own" игнорирует дварфов, если вы не укажете конкретно "race DWARF" (поэтому можно без опасений использовать "assign all own" для того, чтобы согнать всех ваших животных на одно большое пастбище). "egglayer" и "milkable" должно использоваться вместе с "female", если только у вас не установлен мод, который делает эльфийских мужиков яйцекладущими и все такое. Тогровцы и их животные игнорируются, если не использовать "merchant" (их можно засадить в ямы без всяких проблем, но красть и пасти их животных - не такая хорошая идея, т.к. они толком не значатся вашими. При этом их вполне можно пустить на убой).
Многие фильтры могут идти с отрицанием (напр. "not grazer" - не травоядное).
Массовое переименование
Командой "nick" можно дать одинаковый ник множеству юнитов. Если используется без "assign", "all" или "count" - переименует всех юнитов в целевой зоне. В комбинации с "assign", "all" или "count" (и другими фильтрами) команда переименует юнитов, попадающих под условия фильтра.
Зоны с клетками
Используя "tocages" вы можете отправить юнитов в набор клеток, например в комнаты рядом со скотобойней. Животные будут распределены между доступными клетками, чтобы оптимизировать работы по переноске в клетки и из клеток (на бойню). Чтобы все это работало нужно установить клетки, а потом поместить одну зону pen/pasture над ними, закрыв ей все клетки, которые вы хотите использовать. Затем используйте "zone set" и "zone tocages filter1 filter2 ...". "tocages" затирает "assign", потому что их использование вместе не имеет смысла, но может использоваться с "nick", "remnick" и всеми фильтрами.
Примеры:
zone assign all own ALPACA minage 3 maxage 10
Отправить всех принадлежащих вашей крепости альпаков, возрастом от 3 до 10 лет на выбранное пастбище.
zone assign all own caged grazer nick ineedgrass
Отправить всех принадлежащих вашей крепости травоядных, сидящих в клетках на складах (напр. после покупки у каравана) на выбранное пастбище и дать им ник "ineedgrass".
zone assign all own not grazer not race CAT
Привязать к зоне всех принадлежащих вашей крепости НЕ травоядных, кроме котов.
zone assign count 5 own female milkable
Отправить до 5 принадлежащих вашей крепости самок сущевств, дающих молоко, на выбранное пастбище.
zone assign all own race DWARF maxage 2
Сбросить всех ваших бесполезных детей в яму:)
zone nick donttouchme
Переименовать всех юнитов в текущей зоне или клетке по умолчанию в "donttouchme". Полезнее всего использовать для специальных пастбищ или клеток, которые не помечены, как комнаты, а вы хотите защитить их от "autobutcher".
zone tocages count 50 own tame male not grazer
Отправить до 50 животных, принадлежащих вашей крепости, принадлежащих кому-то из дварфов, мужского пола, не травоядных, в клетки, построенные в текущей зоне по умолчанию.
autonestbox
Назначает яйцекладущих самок, не находящихся на пастбище в зоны с гнездовищами. Для этого нужно создать зоны pen/pasture над гнездовищами. Если пастбище больше, чем 1х1, гнездовище должно находиться в верхнем левом углу. На каждое пастбище, независимо от размера, будет назначено только одно животное. Возраст на текущий момент не проверяется, большинство птиц быстро взрослеют. Яйцекладущие, являющиеся еще и травоядными игнорируются, т.к. сажать их на пастбище в одну клетку - не слишком здравая мысль. Обработаны будут только питомцы и одомашненные особи, принадлежащие крепости, потому что полудикие особи разрушат ваши красивые зоны с насестами, если вновь одичают. Команда, вызванная без параметров будет выполнена один раз.
Параметры:
- start - начать выполнение через каждые Х тиков. По умолчанию Х = 6000, примерно каждые 60 секунд при 100 FPS.
- stop - остановить автоматическое выполнение.
- sleep X - меняет время ожидания между автозапусками команды на Х тиков.
autobutcher
Autobutcher (автомясник) назначает на убой скот, когда его количество превышает определенное число (по умолчанию — 1 мужской, 5 женских детей; 1 мужской, 5 женских взрослых). Только tame (прирученные) животные будут назначаться. Именованные, боевые, охотничьи животные не будут назначаться.
- autobutcher start — запустить скрипт
- autobutcher stop — остановить скрипт
- autobutcher sleep X — количество фреймов между запусками скрипта
- autobutcher watch R — наблюдать за расой, R — id расы из равов (ALPACA, BIRD_TURKEY, RAT_GIANT, etc) или all
- autobutcher unwatch R — прекратить наблюдать за расой R
- autobutcher forget R — прекратить наблюдать и обнулить настройки для расы
- autobutcher autowatch — включить автоматическое добавление новых рас
- autobutcher noautowatch — выключить автоматическое добавление новых рас
- autobutcher list — статус и список наблюдаемых рас
- autobutcher list_export — сохранить в файл, который можно использовать, чтоб копировать настройки autobutcher в другой сейв.
Последовательность операций для копирования сейва: 1 — запустить сейв с нужными настройками; 2 — Зайти в папку с ДФ проводником или другим файловым менеджером; 3 — набрать в командной строке "dfhack-run autobutcher list_export > autobutcher.bat"; 4 — Закрыть текущий сейв, открыть новый, куда настройки копировать планируется; 5 — запустить autobutcher.bat.
- autobutcher target fk mk fa ma R — установить допустимое количество особей для расы, где fk — дети женского пола, mk — дети мужского пола, fa — взрослые женского пола, ma — взрослые мужского пола, R — id расы (можно использовать также значения all — настройки для всех, и new — для будущих добавлений.
Примеры:
Итак, ваша цель - держать до 7 детенышей (4 самки, 3 самца) и до 3 взрослых (2 самки, 1 самец) альпак. Когда детеныши вырастают - старейшие из взрослых особей идут на забой. При этом детенышей будут забивать самых молодых, чтобы другие могли вырастать до взрослых особей. Любая кошка без имени будет зарезана при первой возможности:
autobutcher target 4 3 2 1 ALPACA BIRD_TURKEY autobutcher target 0 0 0 0 CAT autobutcher watch ALPACA BIRD_TURKEY CAT autobutcher start
Автоматически добавлять все новые расы в список наблюдения и помечать безымянных животных на убой как только они окажутся в крепости. Настройки по умолчанию уже содержат список особых рас, которых не все это не затронет:
autobutcher target 0 0 0 0 new autobutcher autowatch autobutcher start
Прекратить наблюдение за расами альпак и кошек, но помнить настройки для этих рас, чтобы потом не вводить настройки заново. Чтобы добиться этого, нужно использовать "unwatch".
Важно: "autobutcher unwatch all" работает, но имеет смысл только если вы держите плагин запущенным в режиме "autowatch" или вручную добавили несколько новых рас с помощью "watch". Если вы просто хотите остановить работу плагина - используйте "autobutcher stop".
autobutcher unwatch ALPACA CAT
autolabor
Автоматически управляет рабочими обязанностями дварфов.
Будучи запущенным, autolabor периодически проверяет дварфов, включает и выключает их labors. Утилита пытается держать загруженными работой как можно больше дварфов, но при этом сделать из них специалистов.
Предупреждение: работая, утилита перезапишет любые ручные изменения, внесенные вами в рабочие обязанности.
Использование:
- autolabor enable - включить плагин.
- autolabor disable - выключить.
- autolabor <labor> <минимум> [<максимум>] - установить количество дварфов для работы <labor>. Максимум - необязательный параметр.
- autolabor <labor> haulers - работа <labor> будет выполняться переносчиками.
- autolabor <labor> disable - отключить autolabor для работы <labor>.
- autolabor <labor> reset - сбросить настройки для этой работы к умолчаниям.
- autolabor reset-all - сбросить настройки всех работ.
- autolabor list - текущая информация обо всех рабочих обязанностях.
- autolabor status - показать общую информацию.
Примеры:
autolabor MINE 2
Держать минимум двух шахтеров.
autolabor CUT_GEM 1 1
Держать одного и только одного дварфа как огранщика.
autolabor FEED_WATER_CIVILIANS haulers
Переносчики будут кормить больных дварфов и давать им воду.
autolabor CUTWOOD disable
Отключает autolabor для рубки леса.
Команды. Прочее
catsplosion
Мгновенно размножает котов. Использовать эту команду более одного-двух раз - довольно плохая идея.
dfusion
DFusion - сборник lua-плагинов от warmist/darius, запускаемый как плагин DFHack. Подтверждена работа следующих плагинов DFusion:
- simple_embark - позволяет изменить число дварфов на этапе высадки.
Примечание:
- Некоторые из плагинов DFusion пока не портированы до конца. Это может привести к падениям.
- На текущий момент работает только под Windows.
- Игра будет заморожена, пока вы используете этот плагин. Если она не отвечает - не паникуйте.
misery
Если включена, то все новые плохие мысли будут умножаться (по умолчанию на 2).
Использование:
- misery enable n - включить misery c множителем n. Множитель должен быть положительным.
- misery n - то же, что и "misery enable n".
- misery enable - то же, что и "misery enable 2".
- misery disable - прекратить добавление дополнительных плохих мыслей. Не удаляет уже накопившиеся. Эквивалент - "misery 1".
- misery clear - удаляет фальшивые плохие мысли, добавленные в этой сессии DF. После сохранения мысли остаются навсегда! Не меняет множитель.
Скрипты
Скрипты на lua и ruby, помещенные в папку hack/scripts можно запускать, будто они являются командами DFHack. Они будут перечислены в конце списка, выводимого командой "ls".
Примечание: скрипты в подпапках директории hack/scripts также можно вызывать, но по команде "ls" они будут выводиться, только если использовать "ls -a". Это предназначено для того, чтобы скрыть неактуальные скрипты, скрипты для разработчиков и те, что предназначены для использования в сочетаниях клавиш.
fix/*
Скрипты в этой подпапке исправляют разные баги:
- fix/dead-units - удаляет никому не интересных мертвых из unit List. Не дает какого-либо заметного выигрыша в производительности, однако, когда список юнитов достигает примерно 3000 - мигранты перестают приходить. Этот скрипт позволить волнам мигрантов снова прибывать в вашу крепость.
- fix/population-cap - запускайте этот скрипт после каждой волны мигрантов, чтобы убедиться, что population cap ru не превышен. Штука в том, что этот предел сравнивается с населением на момент последнего каравана, так что если он падает ниже ограничения - мигранты будут приходить до следующего обновления.
- fix/stable-temp - мгновенно приводит температуру всех валяющихся предметов в равновесие с их окруженим и останавливает обновления температуры. Однако, эффективнее использовать "tweak stable-temp" и "tweak fast-heat".
- fix/item-occupancy - выявляет и исправляет случаи с несуществующими "items occupying site", что обычно является следствием багов "autodump" или другими неудачными взломами.
gui/*
В этой папке лежат скрипты, интерфейс которых встраивается прямо в окно игры.
quicksave
Будучи вызванной в режиме крепости, скрипт делает мгновенное автосохранение, используя флаг сезонного автосохранения.
setfps
- setfps <число> - устанавливает ограничение FPS на случай, если вы хотите посмотреть битву в замедленном действии или что-нибудь в этом роде.
siren
Поднимает спящих, отменяет перерывы, останавливает вечеринки и воскрешает мертвых. По умолчанию - везде и всех, но можно использовать нору в качестве аргумента. Взамен дает плохие мысли о шуме, усталости и чувстве незащищенности. К тому же, юниты, оторванные от перерыва, довольно скоро снова пойдут отдыхать. Скрипт предназначен для ситуаций чрезвычайных, вроде той, когда к вам пришла осада, а все военные бухают.
growcrops
Мгновенно сажает семена на ваших фермах.
Без аргументов команда засадит фермы теми семенами, что указаны в их настройках. Если указать тип семян - посадит 100 таких семян из тех, что готовы к посадке. Вторым аргументом вы можете изменить это число.
Пример:
growcrops plump 40
Посадит 40 plump helmet
removebadthoughts
Удаляет плохие мысли. Скрипт помечает мысли как слишком старые, так что игра удаляет их, когда вы снимаетесь с паузы. Эффективное лекарство от тантрум-спиралей. Если выполнить с выбранным в меню v юнитом - очистит только его мысли. В противном случае - прочистит мозги всей крепости.
Счастье каждого отдельного дварфа может не повыситься сразу после выполнения этой команды, но вскоре они станут куда веселей.
С необязательным параметром "-v" the script will dump the negative thoughts it removed.
slayrace
Убивает всех юнитов нужной расы.
Если запустить без агрументов - выводит список рас.
С аргументом "him" - только выбранное существо.
У любого не мертвого, не помещенного в клетку существа выбранной расы "blood_count" будет установлен на 0, что сулит им неизбежную гибель на следующем тике игры. Для таких существ, как вампиры, также устанавливает "animal.vanish_countdown = 2".
Также можно использовать второй аргумент - "magma". Тогда на существ будет обрушиваться магма 7/7, пока они не умрут. Не рекомендуется использовать на существах с иммунитетом к магме и птицах.
Поразит любого на разведанной части карты, даже если он в засаде.
Примеры:
slayrace gob
Убьет всех гоблинов.
slayrace him
Убивает выбранное в режиме v существо.
slayrace elve magma
Обрушит магму на всех эльфов на карте (могут быть !!побочные эффекты!!).
magmasource
Создает в выбранное клетке бесконечный источник магмы. Скрипт помечает клетку карты как magma source, и каждые 12 тиков в этой клетке будет добавляться один 1 уровень магмы.
Поместите курсор в нужное место (оно должно пропускать течение en и не находиться где-нибудь за облаками) и выполните команду "magmasource here".
Чтобы добавлять больше, чем одни уровень магмы за раз, вызовите команду еще раз.
Чтобы удалить один источник - поместите на него курсор и выполните "delete-here".
Для удаления всех установленных вами источников используйте "magmasourse stop".
Без аргументов команда выведет справку и список существующих источников магмы.
digfort
Скрипт для назначения области для копания, согласно плану, записанному в файле .csv вроде этого:
# this is a comment d;d;u;d;d;skip this tile;d d;d;d;i
Допустимые команды для разметки (на самом деле все то же, что и в меню Designations): d - копать, u - лестница вверх, j - лестница вниз, i - двунаправленная лестница, h - канал, r - рампа, x - удалить назначение.
Неопознанные символы игнорируются (как "skip this tile" в примере).
Пустые строки и текст после символа "#" игнорируется как комментарий. Чтобы пропустить строку в макете крепости - используйте строку с одним ";".
Ища файл с планом, скрипт понимает под корневой директорией папку корневую папку DF.
superdwarf
Почти как fastdwarf, но для отдельных существ.
Вы можете сделать любое существо сверхбыстрым, выбрав его в игре по клавише v и выполнив "superdwarf add".
Другие опции: del (удалить), clear (очистить список) и list (список).
Также плагин укорачивает им время сна и перерывов.
drainaquifer
Удаляет теги aquifer ru со всех клеток карты. Необратимо.
deathcause
Наведите курсор на часть тела - и скрипт покажет причину смерти этого существа.
lua
Есть несколько способов вызвать эту команду:
- lua (без параметров) - запускает интерактивный интерпретатор lua.
- lua -f "filename" или lua --file "filename" - загружает и выполняет файл "filename".
- lua -s ["filename"] или lua --save ["filename"] - загружает и выполняет файл "filename" из директории save. Если имя файла не задано - загружается "dfhack.lua".
- :lua lua statement... - выполняет выражение lua, как это бы сделал интерпретатор.
embark
Позволяет высадиться где угодно. Пока только для Windows.
lever
Позволяет манипулировать рычагами из консоли.
Может вывести список рычагов, их состояние, и то, к чему прикреплены:
lever list
Чтобы заставить дварфов дернуть рычаг 42:
lever pull 42
Это будет сделано так же, как если бы вы дали задание вручную.
Чтобы чудесным образом мгновенно дернуть рычаг:
lever pull 42 --now
stripcaged
Для мусора в клетках. Пометит выбранные вещи как мусор, тогда дварф сможет прийти и выкинуть их. См. также "autodump".
С аргументом "items" пометит на выброс только вещи, лежащие в клетке, исключая то, что одето на существах. "weapons" выбросит оружие, armor выбросит все, одетое на сидящих в клетке (включая одежду и броню). "all" выбросит все.
"stripcaged list" выведет в консоль список клеток и их содержимого.
Без дополнительных аргументов все эти команды отработают на всех клетках и ловушках для животных на карте. С аргументом "here" обработают только выбранную клетку (или клетку под курсором). Чтобы задать целью только конкретные клетки нужно вводить их ID:
stripcaged weapons 25321 34228
create-items
Создает нужные объекты под курсором.
Первый аргумент - категория, второй - материал, третий (необязательный) - количество объектов для создания (по умолчанию 20).
Сейчас поддерживаются категории: boulder, bar, plant, log, web.
Если использовать "list" вместо материала - будет выведен список допустимых материалов.
Категория "web" создаст на полу не собранную паутину.
Скрипт ни к чему не принуждает и спокойно позволит создать булыжник из жабьей крови, но список по команде "list" содержит только нармальные материалы.
Примеры:
create-items boulders COAL_BITUMINOUS 12 create-items plant tail_pig create-items log list create-items web CREATURE:SPIDER_CAVE_GIANT:SILK create-items bar CREATURE:CAT:SOAP create-items bar adamantine
locate-ore
Сканирует карту на наличие руд.
Находит и помечает на раскопку один тайл с заданной рудой. Работает только с природными материалами, не с результатами реакций, вроде стали.
С аргументом "list" выводит список руд на карте.
Пример:
locate-ore list locate-ore hematite locate-ore iron
soundsense-season
Как известно, soundsense не может определить время года, когда игра загружена и играет музыку к рандомным временам года до тех пор, пока время года не сменится. Скрипт выводит в gamelog.txt строку о наступлении времени года. Эффективнее вызывать команду из файла dfhack.init.
multicmd
Запустить несколько команд DFHack. Команды разделяются символом ";" и выполняются последовательно и независимо. Можно использовать с горячими клавишами.
Пример:
multicmd locate-ore iron ; digv
Утилиты, встраиваемые в игру
Здесь представлены утилиты, которые добавляют в интерфейс DF диалоги и "заплатки", большей частью lua-скрипты.
Примечание:
Чтобы избежать недоразумения все эти утилиты выводят на экран слово "DFHack", когда активны. В тех случаях, когда это неуместно, потому что они просто добавляют подсказки к сочетаниям клавиш в существующие меню DF, используется красный цвет клавиши вместо зеленого. Исключение составляет плагин "tweak", описанный выше, потому что он всего лишь исправляет маленькие баги.
Dwarf Manipulator
Утилита, предоставляющая интерфейс, похожий на Dwarf Therapist, но, в отличие от последнего, встроена в игровое окно. Для запуска откройте экран units и нажмите l.
Крайняя левая колонка показывает счастье юнитов, выделяя цветом ее величину. Правая половина экрана показывает настройки рабочих обязанностей и уровни навыков каждого дварфа. Цифра от 0 до 9 означает навыки от Dabbing до Professional, буквы A-E - от Great до Grand Master, а U-Z - от Legendary до Legendary+5. Ячейки зеленовато-голубого цвета подсвечивают навыки, которые не контроллируются рабочими обязанностями (военные и социальные навыки).
Используйте клавиши стрелок (← / → / ↑ / ↓) или Num Pad чтобы передвигать курсор. Удерживайте при этом Shift, чтобы двигать курсор на 10 клеток за раз.
z + < и z + > - быстрое перемещение между категориями навыков. Клавиши numpad'а Z-Up и Z-Down перемещают к первому и последнему юнитам списка. Backspace перемещает в левый верхний угол.
Нажмите Enter, чтобы назначить выбранный навык выбранному юниту, Shift + Enter - назначить выбранному юниту все labors в выбранной категории.
Клавиши + / - сортируют список юнитов по выбранному навыку/рабочей обязанности,
* / / сортируют по имени, профессии, счастью или волне миграции (используйте Tab, чтобы выбирать использующийся здесь критерий сортировки).
Выбрав юнита, можно нажать v, чтобы посмотреть его свойства или c, чтобы выйти из утилиты и перейти в местоположение юнита.
Использование мыши:
- Щелчок по заголовку колонки - сортировка списка. Левыцй щелчок - в одном направлении (по убыванию для счастья или labors/skills, по возрастанию для имен или профессий), правый - в обратном.
- Левый щелчок по ячейке с рабочей обязанности назначает ее. Правый перемещает в нее курсор, не назначая обязанности.
- Левый щелчок на имени или профессии покажет свойства юнита. Правый перенесет в его местоположение.
Клавиша Esc возвращает на экран юнитов, но Shift + Esc переносит на главное окно режима крепости.
Search
Плагин добавляет поиск по экранам: Stocks, Animals, Trading, Stockpile, Noble (утверждение кандидатов), Military (назначение новобранцев), Burrows (список юнитов), Rooms, Announcements, Job List и Unit List.
Поиск работает так же, как и поиск на экране "Move to Depot". На перечисленных экранах вы увидите подсказку к горячей клавише (обычно s). После нажатия этой клавиши можно печатать запрос, а соответствующий список будет обновляться автоматически.
Нажатие Enter, Esc или клавиш со стрелками позволит вам вернуться к просмотру списка, теперь уже фильтрованного. Чтобы очистить фильтр вы можете снова нажать s и стереть написанное или просто нажать Shift + s. Выход из экрана автоматически очистит фильтр.
In the Trade screen, the actual trade will always only act on items that are actually visible in the list; the same effect applies to the Trade Value numbers displayed by the screen. Поэтому клавиша t недоступна во время поиска, чтобы снова воспользоваться ей нужно очистить фильтр. Alt + c очистит обе поисковые строки.
На экране складов поиск появляется только когда курсор находится в самой правой колонке.
Note that the 'Permit XXX'/'Forbid XXX' keys conveniently operate only on items actually shown in the rightmost list, so it is possible to select only fat or tallow by forbidding fats, then searching for fat/tallow, and using Permit Fats again while the list is filtered.
AutoMaterial
Этот плагин облегчает возведение конструкций (walls, floors, fortifications и т.д.), освобождая вас от поиска по большому листу материалов, когда вы используете какой-то один.
Плагин перемещает последний использованный для данной конструкции материал на верх списка, если он еще остался. Так, если вы построите стену из блоков мела, в следующий раз, когда вы будете строить стену эти блоки будут не вершине списка, независимо от расстояния (только в режиме группировки, в режиме выбора отдельных предметов список слишком огромен). Таким образом вы можете строить множество конструкций без поиска необходимого материала.
Нажатие клавиши a, когда материал подсвечен, включит автовыбор этого материала для данной конструкции. Вы можете включить автовыбор для нескольких материалов. В следующий раз, когда вы будете возводить эту постройку, плагин автоматически выберет эти материалы, и если их достаточно, конструкция будет установлена, вы даже не увидите меню выбора материала.
Выбрав постройку конструкции вы увидите несколько опций:
a для временного отключения автовыбора материала. После этого вы, например, можете перейти на экран выбора материалов и включить/отключить автовыбор нескольких материалов.
t - автовыбор типа постройки. Тогда, после постройки, вместо того, чтобы вернуться в главное меню построек, вы окажетесь в меню постройки этого же типа. Вместе с автовыбором материала это позволит разметить сложную конструкцию намного быстрее.