Руководство по размещению складов
Склады могут быть созданы практически в любом месте, быть любого размера, и могут иметь множество различных настроек. Выбор места, размера и настроек может представлять из себя целое искусство. Эффективность дизайна складов — один из самых критических аспектов эффективности всей крепости. Проектирование складов и потоков работы, вероятно, третья по необходимости вещь в вашей крепости, после еды и построения обороны. Крепость с плохим расположением складов убьёт FPS намного быстрее, чем та, в которой склады спроектированы с умом.
Как избежать проблем отмены заданий по переноске
Одна из главных проблем, с которой сталкивается крепость с неэффективным расположением складов, это бесконечный спам сообщений об отмене работ из-за переноса вещей. Пока предмет переносится, или находится внутри контейнера, который помечен заданием по переноске, он не может быть использован. Если задание по переноске занимает месяц, то все предметы, относящиеся к этому заданию, будут недоступны в течение целого месяца.
Способом решения этой проблемы является минимизация времени переноски контейнера, заполненного предметами, либо избегая использования контейнеров, либо минимизация пути переноски.
Классический пример этой проблемы — склад семян. Вашим фермерам нужны семена для посадки на фермах. Семена хранятся на складах еды в мешках; мешки, в свою очередь, могут храниться в бочках или горшках, если вы разрешите это, и если есть достаточное количество бочек или горшков. Если просто создать склад еды рядом с фермой и запретить складирование на нём всего, кроме семян, настройки по умолчанию позволят использовать бочки для хранения мешков с семенами. Это приведёт к отмене заданий. Рассмотрим причину.
В «спящем складе» (когда долгое время не производится новых семян) у нас, скорее всего, будет 1-2 полных бочки с мешками семян и одна пустая бочка (все использующие бочки и ящики склады стараются сохранять один контейнер на потом). Бочки могут хранить огромное количество мешков семян, поэтому будет очень маленькое количество полностью заполненных бочек.
Теперь предположим, какой-нибудь дварф съедает толстошлемник и, таким образом, появляются его семена (споры). В конечном итоге склад поймёт, что сгенерировались семена и создаст работу по переноске семени. Если на складе уже есть мешок с семенами толстошлемника, тогда работой будет "Положить предмет в мешок" en. Какой-нибудь дварф будет назначен на взятие мешка семян толстошлемника со склада, принесёт мешок в столовую, где лежат семена, и положит семя в мешок. Однако, как только эта работа будет создана, мешок будет помечен как часть задания по переноске. Все семена в нём станут недоступны для использования — дварф даже не сможет поднять его!
Дальше ещё хуже. Как только мешок принесён в столовую и в него положили семя (или несколько), склад создаёт новую работу по переноске этого мешка назад. Так как на складе уже есть неполная бочка, работой будет "Положить предмет в бочку en (потому как мешки могут храниться в бочках). Какой-нибудь дварф будет назначен на взятие бочки со склада, притащит её в столовую, где находится мешок, и положит мешок в бочку. Как только будет создана эта работа, целая бочка с мешками семян (которая может содержать все семена в крепости) помечается как переносимая и становится недоступной для других целей, включая посадку семян. Фермер не может использовать любое из этих семян до тех пор, пока бочка не будет обратно притащена на склад. И если будут появляться новые семена, пока это происходит — цикл будет бесконечными.
Есть несколько способов постройки складов, используя которые, можно смягчить проблему. Самый просто способ — запретить бочки на складе семян. Семена по-прежнему будут сохраняться в мешках (нельзя остановить это, если есть пустые не запрещённые мешки). Иногда всё же будут появляться сообщения об отмене работ по посадке семян, когда мешок будет забран со склада для переноски новых семян, но это намного лучше, чем ситуация при использовании бочек.
Размещение нескольких складов
Двойной склад
Другой план размещения склада, который хорошо работает с семенами, использует два склада. Первый склад настроен "принимать отовсюду" en, и запрещены бочки. Этот склад относительно небольшой по размеру, потому как используется только для временного хранения предметов. Второй склад настроен "принимать только с присоединённых" en и прилинкован к первому (оба склада расположены максимально близко друг к другу. Второй склад может принимать бочки. Такое расположение повышает вместимость склада с контейнерами (для долгого хранения), минимизируя время, которое бочки проводят не на складе. Вместо того, чтобы тащить бочку со склада семян в столовую (или винокурню, фермерскую мастерскую и т. д.), бочка должна пройти всего несколько тайлов до соседнего склада.
Ни один из вариантов не исключает полностью отмену работ, но они хорошо снижают количество спама об отмене (и время, которое фермер тратит на ожидание семян).
Размещение двойного склада хорошо справляется с хранением тяжёлых предметов, таких как броня. Склад брони, который принимает отовсюду и использует ящики, заставит дварфов таскать полные ящики брони в кузницы и обратно. Если вы используете магма-кузницы в сотнях этажей вниз, петляя коридорами вокруг пещер, такой путь займёт, буквально, недели. Броня в таком ящике недоступна всё время переноски. Но если создать небольшой склад без ящиков для снабжения, который будет принимать броню отовсюду, то дварфы будут просто приносить по одной броне за раз из кузницы на этот склад. Склад для более долгого хранения хранит броню в ящиках, принимая её только из присоединённых мест и соседнего небольшого склада. Тяжёлые ящики нужно будет нести только несколько тайлов и броня будет недоступна намного меньшее время.
Распределение из одного источника
Этот план хорошо работает для складов, заполняемых из одного источника (например, урожай с ферм), и используется разными потребителями. Вместо размещения склада растений возле каждой мастерской, использующей растения (хотя такой вариант можно применить для переноски бочек с этих мастерских на фермы для транспортировки растений), разместите один «склад-источник» для ферм (с запрещёнными бочками) с принятием отовсюду. Весь урожай с ферм сначала будет идти туда (напрямую, потому что бочки запрещены).
Теперь разместите склад возле каждой мастерской, использующей растения (винокурня, мастерская фермера, и т. д.), настройте принятие только с присоединённых и присоедините «склад-источник». В идеале на складах у мастерских будут храниться только нужные конкретной мастерской виды растений (винокурня использует только растения для перегонки, тогда как мастерская фермера для текстильной промышленности берет только растения, из которых можно изготовить нити и т. д.). Вы можете выбирать для каждого конкретного склада, использовать бочки или нет, в зависимости от того, сколько растений ожидается, насколько критична по времени их переработка и т. д.
Если хотите, можно использовать сверхкомпактный склад как «склад-источник». Это обеспечит огромное количество мест хранения в маленьком пространстве. В особых случаях с растениями это будет означать, что ваш урожай всегда куда-то движется и никогда не завянет на полях (только если ваши грузчики где-то сильно заняты).
Расположение мастерских для эффективной транспортировки
Нельзя обсуждать систему расположения складов без обращения к расположению мастерских (или потоку работы). Это две стороны одной медали.
Большинство мастерских используют некоторые предметы как «входящие» и производит из них другие предметы как «выходящие». Рассмотрим всю цепочку мастерских и продуктов, начиная с сырья и заканчивая готовым продуктом. Чем ближе к мастерской необходимые материалы, тем быстрее дварфы переработают их. Когда конечный продукт используется, в свою очередь, в другой мастерской, есть смысл расположить эти две мастерские близко друг к другу, чтобы минимизировать путь продукта до следующей стадии производства. Во многих случаях нет необходимости использовать склад для промежуточных продуктов; просто пусть они лежат в первой мастерской до тех пор, когда вторая мастерская будет готова к их приёму. Это зависит от самих продуктов и мастерских.
Как было уже отмечено, сильно загруженные коридоры неэффективны. Ваши туннели с высоким трафиком должны быть хотя бы в два тайла шириной, а лучше в три. Когда два дварфа пытаются протиснуться мимо друг друга, один из них останавливается, чтобы дать пройти другому. Хуже, когда два дварфа могут столкнуться — запускается алгоритм поиска пути (которые использует процессорное время), и если альтернативный маршрут найден, они идут по другому, вероятнее всего длинному пути, вместо того, чтобы просто остановиться и дать друг другу пройти. Избегайте этого.
Размещение склада
Первая стратегия заключается в размещении склада непосредственно вокруг мастерской. Это прекрасно работает с одиночными мастерскими с одним входящим предметом (например мастерская каменщика или механика).
ССССС С склад-источник СМММС М мастерская СМММС СМММС ССССС
Вторая стратегия заключается в расположении склада выше или ниже мастерской. Это позволяет складам оставаться близко к мастерским, и, в свою очередь, позволяет мастерским расширяться, даже добавляя дополнительный этаж мастерских. Это хорошо работает с похожими мастерскими, которые используют один и тот же склад.
прилегающий z-уровень МММ МММ ССССССС МММ<МММ ССС>ССС МММ МММ ССССССС
Схемы для отдельных видов промышленности
Фермоориентированная схема
Фермы снабжают несколько видов мастерских. Растениями с фермы могут напрямую снабжаться кухни, винокурни, жернова (или ручные жернова) и мастерская фермера. Мельница и мастерская фермера снабжают ткацкий станок и красильщика, которые снабжают ткача. Фермы, в свою очередь, снабжаются семенами с винокурни, мельницы, мастерской фермера и из столовых, завершая цикл жизни растения.
Идея расположить все (или большинство) этих складов вокруг мастерских сама по себе неплоха. Наземные фермы могут быть построены только в определённых местах, а подземные намного проще разместить на уровне с почвой, поэтому в большинстве случаев этим определяется расположение и расстановка.
Мясник и Дубильщик
Из-за того, что дубильщик снабжается напрямую мясником, лучше расположить их рядом друг с другом. Сделайте отдельный склад отходов для того, чтобы мясник брал тела. Разрешите шкурам храниться в мясницкой, чтобы дубильщик брал их прямо оттуда, без необходимости долгой переноски.
Размещайте склад отходов для хранения хрящей и других ненужных субпродуктов недалеко от воздуховода во избежание появления миазмов).
- Если рядом располагается башня некроманта, то склад отходов и мясницкая, где собираются трупы, должны размещаться внутри крепости, вдали от линии взгляда любого некроманта. В злом биоме, который заставляет тела восставать из мёртвых, трупы должны утилизироваться правильным способом, желательно в магме.
Кухня
Склад еды принимает мясо/рыбу, съедобные сырые растения*†, сыр, листья, перемолотые растения для готовки (любые, кроме красителей), сало†, экстракты для готовки (дварфийский сироп и все виды молока†). Приготовленная выпивка так же поступает на этот склад. Разрешите максимальное количество бочек на складе. Не забудьте отключить хранение приготовленной еды.
- (* plump helmet, навозный корень, вздутый клубень, колючая ягода, дикая земляника, крысиный сорняк, рыбацкая ягода и солнечная ягода)
- († У этих предметов есть лучшее применение, нежели готовка: молоко для сыра, сало для жира, которое используется для изготовления мыла; растения для винокурни лучше, чем готовка, потому что сохраняет семена. Подробнее в статье про кухню)
Перегонка
Склад с едой принимает на хранение доступные для перегонки растения. Некоторые из них имеют другое применение, например, свинохвост для производства нитей, поэтому вы можете захотеть запретить их хранение, если планируете использовать их как-нибудь ещё. Не забудьте отключить хранение приготовленной еды.
Разместите склад бочек рядом с вашей винокурней для бесперебойной доставки пустых бочек.
Использование тачек
Тачки чрезвычайно полезны при правильно применении. Они позволяют дварфам перемещать предметы с обычной скоростью их ходьбы, независимо от веса предмета. Но есть условия, при которых приходится применять их не на каждом складе.
Первое условие заключается в том, что возможно использовать максимум 3 тачки на один склад. Это ограничивает количество активных заданий по переноске до 3 (или до установленного количества тачек на складе). Это можно обойти созданием нескольких небольших складов по 3 тачки в каждом.
Второе условие состоит в том, что дварф сначала должен дойти до склада и взять тачку, затем довезти её до нужного предмета, и, наконец, вернуться на склад. Таким образом, каждая переноска может создавать большой путь, и, хотя переноска будет происходить на полной скорости, время работы может даже увеличиться.
Тачки по умолчанию используются на складе камней, потому что камни, как ни странно, тяжёлые! Дварфы, особенно слабые, без тачки или вагонетки будут передвигаться слишком медленно. Рекомендуется использовать тачки на всех складах, которые используют камни, особенно на складах-источниках камней, которые настроены на поставку камня в мастерские так, что каменщик не вынужден будет тащить камень из своей спальни всю дорогу. При таком раскладе, камень будут нести руками всего несколько тайлов, от склада до мастерской.
Склад мебели — ещё одно хорошее применение тачкам, так как некоторые виды мебели очень тяжелы (гранитная статуя весит 156Г, тогда как золотая статуя весит 1159Г, несмотря на то, что золотая сделана из трёх слитков по 115Г каждый — дварфы не особо сильны в математике).
Однако тачки не очень хороший выбор для склада дерева. Большинство брёвен весит около 30Г, что не замедлит дварфа со средней силой. Использование тачек там только увеличит время обработки каждого бревна из-за снижения количества заданий по переноске. Слабые или очень слабые дварфы будут переносить обычные бревна медленно, неплохой идеей будет отключить таким дварфам задания по переноске брёвен. По иронии, очень слабые дварфы становятся отличными перевозчиками камней, потому как могут великолепно толкать тачку.