Здравствуйте!
Сегодня мы рассмотрим функцию, которую некоторые из нас мечтали изменить уже много лет, — передачу маяка.
Основная цель маяков — позволить значительно увеличить производительность в поздней игре, оставаясь при этом нечто большим чем просто модулем или более быстрой машиной. Чтобы использовать маяки, вам необходимо настроить под них планировку здания.
Маяки справляются с этой ролью, но...
Проблема
Мы не уверены, что получившиеся раскладки настолько интересны — об этом и мы, и многие игроки говорили уже много раз.
Сборка из 12 маяков
Первая из двух типичных компоновок — окружение машины максимальным количеством маяков (на каждую сборочную машину влияет 12 маяков).
- Лучшая вычислительная производительность
- Не так эффективно
- Дорогостоящие как по конструкционным материалам, так и по потребляемой мощности.
Через него легко проложить множество ремней, так как вокруг крафт-машины есть место, на самом деле это настолько просто, что кажется, что конечный макет игры не так уж и сложно построить.
Вид на карту сборки 12 маяковЕсть несколько небольших изменений, которые вы можете сделать, например, приблизить боковые маяки, но в целом большинство из 12 макетов маяков выглядят одинаково для подавляющего большинства рецептов, поэтому фабрики в поздней игре в конечном итоге выглядят как массивы квадратов.
Сборка на 8 маяков
Другой вариант — чередование рядов машин и маяков (по 8 маяков на каждую сборочную машину).
- Высокая эффективность использования пространства
- Хорошее соотношение цена/прибыль
- Мало места для ремней
Из-за зазора всего в 2 клетки между маяками и машинами вы можете пропустить лишь очень небольшое количество транспортных лент. Есть несколько приемов, которые помогут вставить до 2 транспортных лент и вытащить 1 транспортировочный ремень, но как только вы освоите эти приемы, вы просто будете повторять их снова и снова. В качестве альтернативы, поскольку это довольно экономно, это хорошо для логистики роботов, и в этом случае вы просто копируете пары сундуков запросчика + поставщика рядом с машинами, что тоже не совсем креативно.
Поскольку других существенных альтернатив этим двум макетам не так много, в целом использование маяков кажется ограничивающим разнообразием сборок и имеет тенденцию казаться монотонным и неинтересным, особенно по сравнению с тем, насколько разнообразны ранние этапы игры.
Идеи
На протяжении многих лет обсуждалась эта проблема, у нас возникали разные идеи. Также проводились различные эксперименты с тем, что позволяет API моддинга, что также является явным признаком того, что многие люди хотели бы каких-то изменений.
Перегрузка маяка
Перегрузка маяка — механика из мода Earendel Space Exploration . Это приводит к отключению любой машины, на которую воздействует более чем один маяк. Это означает, что схемы с 12 маяками, 8 маяками или любые другие схемы просто невозможны. С обычным диапазоном маяков вы все равно можете сделать обратную схему с 12 маяками и окружить один маяк машинами, но становится непрактично повторять и размещать плитки, потому что теперь есть 12 машин, которым нужны входы и выходы вместо одной. При попытке перегрузки маяка поначалу кажется, что все в порядке. Маяки более мощные на базовом уровне и имеют больше слотов для модулей, поэтому отдельный маяк более гибок. Отключение случайного одиночного маяка для увеличения случайных областей производства дает гораздо большую выгоду, но вы должны быть осторожны, чтобы не перекрыть машину двумя маяками и не перегрузить ее. Проблема в том, что в расположении маяков нет особой гибкости: обычно вы просто строите маяки в сетке, избегающей перекрытия, поэтому это не намного интереснее, чем базовая игра. Но, по крайней мере, выглядит лучше.
Макет перегрузки маякаЧто становится более разнообразным, так это широкомасштабный маяк из Space Exploration, поскольку в конечном итоге вы проектируете целые сборки вокруг одной структуры. Однако это становится довольно неудобным для плитки, поскольку вам нужно избегать перекрытия машин с несколькими маяками. Размер всей сборки определяется дальностью действия маяка, поэтому она почти всегда группируется вокруг одного маяка или короткой линии маяков по модульному принципу.
Примеры расположения радиомаяков на большой территории от Sticklord и Oblivion, двух спидранеров Space Exploration.
Они ориентированы на прямую установку, чтобы сделать ключевой продукт в радиусе действия одного радиомаяка большой площади.
У вас есть большая гибкость в том, как вы строите в области маяка, поэтому это может быть удобно для сборок с прямой вставкой. В целом, вся свобода дизайна предоставляется при строительстве внутри пространства маяков, но варианты размещения самих маяков становятся довольно скучными, это просто еще одна сетка.
Довольно типичная установка радиомаяка в Space Exploration.
Эта сборка от Xylokite имеет 3 маяка большой площади в линию и предназначена для вертикального расположения, чтобы маяки образовывали сетку.
Эксперимент, который проповедует философию того что, в игре нет надобности в существовании отдельных маяков, а вместо этого мы просто можем встроить функционал маяка в сами машины.
Стандартная, но более быстрая планировка со встроенными маяками.Результатом этого является то, что фабрикам никогда не придется переходить к повышению производительности за счет изменений в компоновке, кроме маршрутизации большего количества лент, что можно рассматривать как отрицательное, так и положительное явление.
С одной стороны, у вас все еще есть все возможности, как и на более ранних этапах, и протащить больше поясов - это здорово, но в то же время это не привносит ничего нового.
Схема прямой вставки со встроенными маяками
Единственное новое, что мод вводит, это то, что становится возможным напрямую вставлять предметы между машинами, не теряя при этом в скорости крафта. Вы можете создавать сборки, которые, например, создают полезные научные пакеты в основном из сырья, что, очевидно, можно сделать самыми разными способами. Хотя это довольно безумно разрабатывать, часто с чрезмерным использованием калькуляторов ставок. Лично мне это показалось крутым, но я не ожидаю, что многим другим это понравится.
Ограничения мода (Эарендель)
Никто из нас не предполагал, что наши моды станут правильным решением для базовой игры. Мы знали о недостатках, но моды очень ограничены в том, что они могут делать с маяками в версии 1.1.
Другие моды тоже экспериментировали с различной механикой маяков, но что-то более интересное, чем некоторые изменения базовых значений, требует множества неприятных обходных путей и сценариев во время выполнения. Существуют некоторые творческие подходы, но ни одна из этих механик не подходит для базовой игры.
Даже в контексте освоения космоса перегрузка маяка не была тем решением, которое мне нужно. Это было лучшее решение, которое я смог найти, учитывая имеющиеся у меня варианты и несколько простых сценариев. Я рассмотрел множество вариантов, но постепенно исключил большинство из них как невозможные или непрактичные из-за ограничений движка, и в итоге остановился на Beacon Overload.
Очевидно, что эти ограничения не являются проблемой, если мы можем «просто изменить игровой движок», но мы не можем менять игровой движок для каждой нашей идеи, иначе все замедлится. В идеале, если у нас есть хорошая идея, мы быстро прототипируем ее как мод для тестирования. Интерактивная демонстрация помогает другим людям оценить идею. Проблема в данном случае в том, что мы знали, что «решение» будет настолько далеко за пределами возможностей игрового движка, что создание мода для него было бы непрактично. Вместо этого нам нужно было бы детально рассмотреть все наши идеи, найти лучшую и убедиться, что она правильная, прежде чем мы создадим версию прототипа.
Решение (В453000)
Наши мечты всегда заключались в идее убывающей отдачи. Чем большим количеством маяков вы окружите машину, тем меньший эффект будет иметь каждый из них.
Однако встречные вопросы и сомнения имелись:
- Уверены ли мы, что это действительно лучше, или мы просто обмениваем одну ошибочную систему на другую?
- По крайней мере, мы знаем недостатки нынешней системы, и это не так уж и плохо.
- Не было бы хуже, если бы эффект результата было сложнее просчитать в голове, если бы он не был линейным?
- У нас нет времени реализовывать то, в чем мы не уверены.
И до версии 1.0 минусы, казалось, перевешивали потенциальные плюсы, но мечта всегда была в глубине наших мыслей (в первую очередь у меня и Эарендела). Фактически, мы были настолько известны этим, что, когда Боскид проводил рефакторинг некоторых частей кода эффекта маяка, он делал это таким образом, чтобы можно было что-то подобное, на случай, если в конечном итоге это понадобится...
И желание это было! Эарендель выдвинул свое предложение:
- Эффект передачи равен квадратному корню из количества маяков.
- Усиление базового эффекта передачи с 50% (0,5).
- Добавление масштабирования качества для передачи эффекта
Я протестировал его и окончательно определил значения.
История цифр
Первоначальная идея Эарендела включала вычисление квадратного корня, но мы предполагали увеличить передачу маяков с 0,5 до 1,0, отчасти потому, что это хорошее число.
Вдобавок ко всему, сделав маяки менее сумасшедшими при большом количестве, мы могли бы позволить им масштабироваться с повышением качества.
В более раннем FFF мы заявили, что маяки снижают потребление энергии только за счет более высокого качества, потому что мы думали, что качество уже делает вещи достаточно сумасшедшими, и мы не хотим продвигаться дальше. Но с тех пор мы в 4 раза усилили ремни с возможностью штабелирования предметов, так что теперь это звучит намного привлекательнее. Поигравшись с этим, я быстро пришел к выводу, что 2-кратного усиления недостаточно, и небольшое количество маяков по-прежнему кажется слабым, в то время как более высокие значения также ослабляются. Я решил, что попробую удвоить его еще раз, и пошел с 4-кратным усилением - когда я позже говорил об этом с Эаренделем, он отметил, что это также значение, которое он выбрал для перегрузки маяка, и я был рад получить подтвеждение своих мыслей, когда мы независимо пришли к одному и тому же мнению.
Когда я готовил изменения и готовился презентовать их финальному боссу (Коварексу), я сделал листы и график.
Я чувствовал себя глупо, потому что не осознавал, что квадратный корень из 16 маяков равен 4, поэтому, если мы усилим маяки в 4 раза, это означает, что все сборки с количеством маяков менее 16 будут усилены. Мне показалось, что это слишком много, поэтому я остановился на 3x, что дает мощность передачи 1,5.
При усилении 4x или 3x масштабирование качества необходимо было немного снизить, поэтому вместо 1–2,5, как в большинстве других вещей, мощность передачи масштабируется от 1,5 до 2,5 для маяков, что по-прежнему отлично. В конце концов, они все еще уменьшают потребление энергии.
Я чуть не расплакался, увидев, какими красивыми оказались значения:
Для существующих заводов это изменение на удивление незначительно. Машины, на которые установлено 8 маяков, фактически будут работать на 6% быстрее, а машины с 12 маяками — на 13% медленнее.
Это удивительно, потому что это означает, что базовая игра остается почти такой же, мы получаем те усиления, которые всегда хотели, а качество позволяет еще больше прогрессировать.
Результаты
Использование маяков действительно дает эффект, даже если вы разместите всего несколько из них. В космическую эпоху это особенно важно, поскольку обычно именно тогда вы хотите увеличить производство для запуска большого количества ракет.
Поскольку модули производительности снижают скорость машины, в старой системе первые два маяка возвращают машине скорость крафта выше 100%. В этот момент вы осознаете, что сделали обновление благодаря возросшей производительности, но на самом деле это не так увлекательно, когда воспринимаемая скорость примерно такая же.
Теперь, поскольку одиночный маяк имеет в 3 раза больший эффект, этого более чем достаточно, чтобы преодолеть негативный эффект производительности, который ощущается намного лучше.
Базовая электронная схема, теперь с +24% производительностью и +50% скоростью всего с несколькими маяками.
В некоторых ситуациях речь идет не только о маяках, но и о том, что пространство здания ограничено, поэтому высокоэффективные маяки естественным образом подходят для таких мест, как космические платформы.
Космическая платформа с маяком
Будучи полной новинкой, один маяк с зелеными модулями может значительно снизить энергопотребление машины. Это становится особенно заметным с более высокими качествами, поскольку передача эффекта маяка увеличивается, модуль эффективности становится более мощным, а маяк снижает энергопотребление с более высоким качеством, так что оно того стоит еще больше. Все машины на скриншоте выше потребляют -80% энергии.
В результате космические платформы смогут выбирать баланс между скоростью создания, энергоэффективностью и производительностью. Все это действительно важно в ограниченном пространстве, так что это интересное решение, над которым стоит подумать.
Более крупные структуры, такие как Литейная, обычно имеют высокую скорость крафта, чтобы чувствовать себя мощными и достаточно эффективно использовать пространство по сравнению с меньшими объектами. Из-за размера до них можно добраться с помощью большего количества маяков (16 для Литейной плитки 5x5), что слишком сильно увеличивает их и без того сумасшедшую скорость крафта. Убывающая отдача делает эти различия более разумными.
Не волнуйтесь, Литейная по-прежнему сходит с ума, особенно со всеми бонусами качества к концу игры.
Обмен нескольких маяков на машины, расположенные рядом друг с другом, вероятно, приведет к появлению некоторых новых возможностей для некоторых сборок, оптимизированных для ИБП.
Я не смею утверждать, что это эффективная конструкция ИБП, но вы поняли идею, и я очень рад видеть, какие конструкции вы придумаете.
Благодаря качеству вы сможете еще лучше использовать несколько дорогих модулей, которые вы получили, поместив их в маяки самого высокого качества, которые вы можете получить.
Еще одна вещь, которую следует учитывать при выборе качества, это то, что, возможно, у вас не так много легендарных модулей скорости, но много модулей производительности или наоборот, что может существенно повлиять на то, какая сборка будет более доступной для вас в данный момент, и это может даже повлиять на долгосрочная стратегия: какую планету вы посетите в первую очередь.
Заключение
Я раздражал все свое окружение, включая коварекса, постоянными разговорами о механике включения и выключения маяка вот уже около 7 лет. Дошло до того, что, если бы я поднял этот вопрос, я бы получил реакцию: «О, ты снова со своими маяками» , и, честно говоря, я не мог их винить.
В последние месяцы я уже оставил надежду, что мы когда-нибудь реализуем это, поскольку расширение, казалось, становилось полнофункциональным...
Но однажды у нас была дискуссия с Эаренделем, и я спросил его, какие последние функции он хотел бы реализовать. Эарендель ответил всего одним словом, очень взволнованным и, на удивление, очень уверенным голосом: «Маяки!» .
Информация, которую мне не хватало, заключалась в том, что он ранее уже провел некоторое исследование с помощью boskid и сказал мне, что код в основном готов для этого.
Я был потрясен самым положительным образом.
Нам потребовалось всего несколько дней, чтобы получить рабочую версию, а поиск правильных значений занял всего несколько недель, что очень хорошо, учитывая масштаб изменений. Полученные значения оказались лучше, чем я когда-либо мог себе представить, что сделало изменение действительно привлекательным, поэтому убедить kovarex в этом в конечном итоге тоже не составило труда.
В версии 2.0 увеличение количества маяков по-прежнему будет хорошей практикой для быстрого выполнения задач и экономии производительности компьютера. Однако теперь появится гораздо больше возможностей для творчества, а качество окупаемости инвестиций становится под большим вопросом.
В целом это можно рассматривать как улучшение маяков, которое должно помочь вам прогрессировать быстрее, особенно на ранних этапах игры, что снова делает Space Age менее утомительным и более интересным.
Деталь, которая делает реализацию boskid неоправданно интересной, заключается в том, что это поведение определяется очень простой так называемой таблицей «профиля» в Lua.
Это означает, что моды могут возвращать маяки к работе, как в 1.1.x, тривиально реализовывать перегрузку маяков, создавать перегрузку маяков, которая допускает перекрытие, увеличивать эффект маяков с увеличением количества маяков или что-то еще, что они могут придумать.
Я невероятно рад, что Эарендель рядом со мной. Как вы, вероятно, можете сказать по тому, что мы оба пишем этот пост в блоге, вместе мы можем воплотить в жизнь очень многие мечты. Огромное спасибо также выражаем boskid, который выслушал нас и позаботился о том, чтобы очистить код, чтобы быть готовым к тому, чего мы хотим.
Мы все чрезвычайно гордимся тем, что наконец нашли способ внести изменения, к которым многие из вас призывали на протяжении многих лет.
Мы вас услышали, всему свое время и место.
Дайте нам знать, если вы так же как и мы, взволнованы эффектом, который принесет это изменение:
Форум Редит
Отличный комментарий!