Статья про тонкости игрового процесса в игре Factorio.
В этой статье кратко разберёмся в настройках разделителей в Factorio.
-----------------------------------------
Важное замечание! Эта статья была написана для первой версии игры Factorio. Некоторые механики игры, предметы или их свойства могут не совпадать с текущей версией игры.
-----------------------------------------
Предисловие.
- Вероятно, бόльшая часть написанного в статье известна многим игрокам. Вероятно, многие игроки смогли бы привести иные, чем в статье, примеры использования разделителей. Тем не менее, кому-то эта информация может оказаться полезной.
- Разделители в Factorio предназначены для разделения потока из одного конвейера на два конвейера, а также для объединения потоков с двух конвейеров на один конвейер, помимо этого для фильтрации потоков и для управления движением потоков с конвейеров на конвейеры.
- Разделители, как и конвейеры, в Factorio могут отличаться по стоимости производства и скорости пропускной способности, но их функции совпадают независимо от этого.
Разделители.
Все разделители имеют два входа и два выхода. На оба входа могут быть подключены две ленты конвейеров и на оба выхода могут быть так же подключены две ленты конвейеров. Таким образом, разделитель будет передавать оба потока с двух конвейеров дальше, на два последующих конвейера. При появлении пустого места на одном из конвейеров разделитель будет делить поток другого конвейера и раскладывать поровну на оба конвейера. Этим достигается смешивание потоков конвейеров и их выравнивание. Про выравнивание потоков на конвейере можно почитать в этой статье.
Давайте рассматривать возможные вариации подключения конвейеров к разделителю. Например, один поток с одной ленты входящего конвейера можно поделить пополам разделителем на два выходящих конвейера:
Таким же образом можно потоки двух входящих конвейеров объединить разделителем в один поток выходящего конвейера:
Например, если два производства складывают железные пластины на крайние стороны лент конвейеров и нужно как-то объединить их в один поток, то разделителем это делается так:
Приоритеты.
Каждый разделитель имеет в настройках возможность установки приоритета входа влево или вправо. Эта настройка позволяет указать с какого конвейера будет входить поток в разделитель по умолчанию. Соответственно, если в настройках установлен приоритет какого-либо входящего потока, то второй поток будет простаивать пока в основном потоке не появится пропуск на ленте. В этот момент разделитель заполнит пропуск из простаивающего потока.
Также каждый разделитель имеет в настройках возможность установки приоритета выхода влево или вправо. Эта полезная настройка позволяет указать направление движения потока по умолчанию. Если игроку необходимо направить всю продукцию в левый или правый поток, он выбирает соответствующий приоритет выхода. И вся продукция начинает движение только в этот поток. Если приоритетный поток переполнился, то разделитель начинает выдавать продукцию на второй, не приоритетный, поток.
Эту настройку с приоритетом выхода можно использовать для отбора продукции с конвейера на нужды производства. Например, имеется производство, требующее медные пластины. На конвейер с медными пластинами ставим разделитель и устанавливаем приоритет выхода вправо, на конвейер, который идёт к производству:
Таким образом мы стали забирать максимум медных пластин для производства. Но что делать, если хочется хоть немного медных пластин оставлять на конвейере, который унесёт их на другие нужды? Наверное, самое разумное решение в этой ситуации – подвести откуда-нибудь хоть немного медных пластин с помощью дополнительного конвейера. Приводим конвейер с излишками медных пластин из ближайшего завода и присоединяем к правому входу в разделитель. Но теперь нам бы хотелось, чтобы с приведённого конвейера забиралось не много медных пластин, так как они нужны на том заводе, откуда мы их утянули.
Для решения этой задачи устанавливаем в разделителе приоритет входа «Влево», а приоритет выхода оставляем «Вправо»:
Что даёт такая настройка: лента конвейера, указанная прямой белой стрелкой на рисунке 7 будет всегда приоритетной, все медные пластины будут в первую очередь забираться с неё и уходить вправо, на ленту ведущую на завод. А вот лента конвейера, указанная пунктирной белой стрелкой на рисунке 7 будет дополнительной, и с неё будут забираться не все медные пластины, а лишь при нехватке их на приоритетной ленте. Таким образом, и с дополнительного конвейера не сильно забираем, и на завод даём полную ленту, и по конвейеру уходят медные пластины на наши остальные нужды.
Этот способ подключения дополнительного конвейера в разделитель часто удобен для «подпитывания» конвейеров извне, со стороны. Допустим, если опустела главная шина, можно врезаться разделителем в крайний конвейер и подпитывать шину с ж/д станции разгрузки.
Ещё один вариант использовать такую настройку приоритетов в разделителе: при опустошении крайней ленты / крайних лент на главной шине. Нужно забирать ресурс на нужды завода, а крайний конвейер пустой! В таком случае устанавливаются друг за другом разделители с подобной настройкой и позволяют отбирать ресурсы с полных лент на пустую, а затем, с помощью отдельного разделителя на ленту конвейера, идущую на завод:
Примерно, как на рисунке 7 мы вводили дополнительный конвейер в разделитель для подачи дополнительных медных пластин, так и в следующем примере используем ввод конвейера в разделитель, но теперь поменяем направления.
Итак, на первых этапах игры были построены некоторые заводы, электростанции, разработаны месторождения. Игрок начал добывать и перерабатывать нефть. Излишки нефти перегнал в мазут, дизельное топливо и попутный газ, заодно их излишки начал перерабатывать в твёрдое топливо. Экономически и энергетически твёрдое топливо намного эффективнее угля, об этом можно почитать в статье про топливо. Твёрдое топливо, в Factorio ко всему прочему вырабатывается из нефти, которая бесконечна, а значит, его можно жечь в электростанции не в ущерб экономике.
Как в таком случае использовать этот факт чтобы сэкономить уголь? Нужно подмешивать твёрдое топливо на конвейер с углём. Врезаемся разделителем в ленту конвейера, но теперь настройки устанавливаем иначе. Нам нужно, чтобы по умолчанию на конвейер выходило твёрдое топливо, а уголь подмешивался только в том случае, если твёрдого топлива маловато. Поэтому приоритет входа устанавливаем вправо – с того конвейера, по которому в разделитель поступает твёрдое топливо. А приоритет выхода, естественно, влево, на ленту конвейера, который идёт на электростанцию. Мы знаем, что смешивать различные виды топлива в подаче на электростанцию можно, об этом есть в статье про утилизацию древесины. Теперь, пока твёрдое топливо поступает непрерывным потоком, уголь по умолчанию не будет попадать на ленту конвейера. Но, как только в производстве твёрдого топлива начнутся перебои и он будет идти с промежутками – разделитель будет заполнять эти промежутки взятым со второго входа углём:
При желании, таким же образом, с противоположной стороны можно ввести в шину с углём древесину, которая будет приходить из любого вашего сундука. Когда древесина имеется – она будет поступать вместо угля. Когда древесина заканчивается, уголь снова заполняет конвейер:
Только будьте внимательны – подмешивание различного топлива допустимо там, где оно сгорит и энергетически допустимо. Следите, чтобы в уголь не подмешивалось ничего, если он идёт в производство другой продукции.
Фильтры.
Теперь обернём предыдущий пример в обратную сторону: мы много смешивали уголь, твёрдое топливо, древесину, но в какой-то момент нам понадобилось на определённом участке конвейера всё это разделить на составные части, каждую на отдельный конвейер.
Если сжигать всё топливо в электростанции можно было одной свалкой, то сейчас нужно выполнить работу Золушки и провести сортировку. Для таких целей в разделителе будем использовать фильтр. Например, для того чтобы вся древесина выходила на левый поток разделителя, нам нужно установить фильтр древесины с приоритетом выхода влево.
Щёлкаем по разделителю, в открывшемся окошке настроек щёлкаем ячейку фильтра и выбираем древесину. Проверяем, что приоритет выхода установлен влево:
Соответствующим образом устанавливаем на нужном участке конвейерной ленты разделитель и по описанному выше сценарию включаем влево фильтр древесины. Подводим к левому выходу разделителя конвейерную ленту для транспортировки древесины.
Естественно, твёрдое топливо и уголь будут подаваться в противоположный фильтру поток, а именно вправо. Значит, после установленного разделителя с фильтром древесины устанавливаем новый разделитель, в котором по уже известному принципу включаем фильтр для твёрдого топлива, но уже с приоритетом выхода вправо:
Чего удалось добиться двумя разделителями с фильтрами: на левый конвейер фильтруется вся древесина, на правый конвейер фильтруется всё твёрдое топливо, а уголь проходит на конвейер посередине. Наше топливо отсортировано и теперь его возможно применить в чистом виде на любые нужды.
Сразу стоит заметить, что такая сортировка теоретически сортирует безупречно, но на практике нужно учитывать, что смешанное топливо может поступать неравномерно. Переизбыток любого из трёх видов топлива перекроет фильтр другим видам топлива и в этом месте всё остановится, сортировка прекратится, а конвейерные ленты станут пустыми. Работа такого фильтра гарантирована только при равномерном распределении всех видов топлива на ленте. Более продвинутые схемы фильтрации ресурсов, основанные на разделителях с фильтрами описаны в статье о сортировке ресурсов.
Блокировка выхода.
Для следующего примера искусственно создадим ситуацию, которая может наблюдаться на плотной застройке вокруг главной шины: нужно прокинуть конвейер с медными кабелями через шину с углём из 4 лент. Искусственно создадим проблемы: с левой стороны установим разделитель с конвейером, который подпитывает шину, с правой стороны установим разделитель, который отбирает часть угля с шины. Между разделителями оставляем одну пустую клетку. Предположим, что вокруг больше нет свободного места, есть только этот узкий промежуток. Вот сюда-то и нужно «впихнуть» подземный конвейер проходящий через шину:
Опытные игроки знают, что при таком взаимном расположении с правого потока разделителя на подземный конвейер начнёт поступать уголь. На рисунке 14 показано пунктирной стрелкой. Конечно, это недопустимо, чтобы с медным кабелем смешался уголь и застопорил производство. Поэтому применим фильтр для блокировки.
Так как фильтр на выход вправо из разделителя устанавливает какое-то условие для прохождения, выход влево из разделителя остаётся свободным для прохождения любых ресурсов не указанных в фильтре. Воспользуемся этим и заблокируем выход вправо ресурсом, который не используется на ленте. На рисунке 15 это «План сноса». Теперь вправо должны поступать только чертежи плана сноса и больше ничего. А весь уголь уйдёт в выход налево. Мы именно этого и добивались. Уголь будет идти на шину через левый выход из разделителя, а правый выход ничего выдавать не будет:
Точно так же в фильтре может быть указан локомотив, или помпа, или урановая руда, или что угодно. Но «План сноса» всё же выглядит эффектно, как запрещающий красный квадрат указывающий на блокировку выхода. При этом план улучшения, или чертёж, или книга чертежей так же могут оказаться на месте блокирующего фильтра, как и другие предметы. Вот только важно не заиграться и случайно не указать реальную продукцию, идущую по конвейерам.
После установки блокирующего фильтра немного угля всё же проскочит на конвейер – это ранее прошедший через разделитель и застрявший на выходе уголь. Проще всего поставить один конвейер, дождаться, когда несколько кусков угля уедут из разделителя, и затем удалить конвейер.
Теперь можно смело строить подземный конвейер и пускать ленту с медными кабелями, не опасаясь попадания угля из разделителя:
Что характерно для таких ситуаций, если разделитель установить ещё до пуска ресурсов и настроить в нём блокировку выхода, или поставить готовым чертежом, то ресурсы сразу пойдут только в свободный выход.
Типичный пример.
Типичный пример – защитный периметр на пулемётных турелях вокруг первой фабрики. Вдоль периметра по окружности или по другой кривой линии зациклена лента конвейера. По ней доставляются боеприпасы вдоль всего периметра защиты. Необходимо пополнять конвейер свежими боеприпасами с завода.
От завода вытягивается лента конвейера кратчайшим путём к периметру защиты. При помощи разделителя врезается в зацикленный конвейер. На разделителе приоритет входа стоит с ленты защитного периметра, так как по ней всё ещё перемещаются неиспользованные боеприпасы. Таким образом, с основной ленты будут забираться оставшиеся боеприпасы, а с ленты идущей с завода, будут лишь заполняться пустоты на конвейере. Блокирующий фильтр из предыдущего примера не пропускает боеприпасы в свободную сторону разделителя. Здесь его можно и не использовать. Но ведь опрятность в проектировании и строительстве украшает инженера?
Тот же пример, но с условием, что изначально использовались обычные боеприпасы, которые затем требуется заменить по всему периметру на более продвинутые. Необходимо не просто подмешивать на ленту защитного периметра более продвинутые боеприпасы, но и одновременно отбирать с ленты устаревшие боеприпасы, которые должны уйти на завод для переработки.
По-прежнему, приоритет входа остаётся вправо – с основной ленты защитного периметра. Более продвинутые боеприпасы будут лишь заполнять пустоты на конвейере. А вот на второй выход из разделителя подключается конвейер, уносящий устаревшие боеприпасы на завод. Соответственно, в фильтре разделителя на выход влево должен быть указан устаревший боеприпас:
Понятно, что таких замен боеприпасов может быть две:
- с магазина с патронами на магазин с бронебойными патронами
- с магазина с бронебойными патронами на магазин с урановыми патронами
Послесловие.
Примеры, приведённые в статье были показаны как наглядное пособие для освоения материала. В реальной игре Factorio различных случаев использования разделителей множество.
Чертежи.
К этой статье нет чертежей. Чертежи к другим статьям можно скачать в текстовых файлах в моём канале Telegram.
-----------------------------------------
Прямая ссылка на канал Telegram: https://t.me/format_aa
-----------------------------------------
Подпишись на канал и узнавай больше +
#Формат_АА
#Factorio
#схемы
#чертежи
#разделитель
#фильтр
#приоритет