У меня возникло непреодолимое желание рассказать вам небольшую историю. Я уверен, что вы пришли сюда за историями, не так ли?
История
Давным-давно, в стране, где дым, загрязнение и геноцид являются нормой, жили-были разработчики. Они добавили в свою игру различные методы логистики, и эти методы не всегда гармонировали между собой.
В сообществе создавались лагеря, и иногда возникали споры. Однажды и эти разработчики высказали свою точку зрения, которую можно было назвать лишь топливом для костра. В ход пошли факелы и вилы… Были идеи, как утихомирить этот спор, но из этого мало что вышло. За исключением 96 форумных страниц споров, вместе с фильтрами и приоритетами выхода сплиттеров.
Но некоторые идеи убить сложнее, чем другие, и однажды в пятницу один из разработчиков копнул слишком глубоко. «Ради лулза и дискордных реакций!» подумал он в пылу обсуждений на FFF и погнал своего коня вперед. Безумие последовало за ним.
Наступило время ереси, Boskid сходит с ума за точкой невозврата. Это была гифка, опубликованная в Дискорде с первыми экспериментальными изменениями.
Справедливость восторжествовала, так как в ответ я дал этому благородно-безумному рыцарю основания, почему его ересь не выдерживает критики. Причины уже неоднократно обсуждались в прошлом. Хотя я также поделился своей симпатией к этому виду греха, ведь он мне тоже не раз снился.
Ужас прошел по нашему внутреннему каналу #random, и Коварекс Могучий тоже откликнулся с любопытством и интересом.
И вы знаете, как это обычно происходит. Повторение причин, по которым это не может быть сделано, заставляет вас думать, как это сделать, снова… и я действительно нашел способ, который мы не рассматривали раньше.
Святой Грааль теперь будет называться Bulk Inserter (Объёмный? Укладочный? Упаковочный? Оставим пока «Bulk-манипулятор»).
Bulk-манипулятор
Bulk-манипулятор- единственный способ загрузить конвейер сложенными предметами. Новая ключевая деталь, благодаря которой он работает, заключается в том, что Bulk-манипулятор перекладывает предметы только тогда, когда его рука заполнена. Это гарантирует, что на конвейер будут загружаться только полные стопки предметов.
Внезапно все кусочки встают на свои места:
Манипуляторы могут помещать предметы только в пустые места на конвейере, но не в существующие стопки.
Боковая загрузка и сплиттеры вообще не изменяют высоту стопки.
Если с конвейером взаимодействуют только Bulk-манипулятор, то стопки будут только максимально полными.
Если у манипулятора, берущего предметы с конвейера, рука меньше, чем размер стопки на конвейере, он возьмет только столько предметов, сколько может унести его рука, оставив неполную стопку на месте.
Если вы хотите уложить конвейер по максимуму, вы можете поднимать и снова опускать предметы с помощью Bulk-манипулятора.
Привет,
Еще один год подошел к концу, от всех нас здесь мы желаем вам удачи в наступающем году.
Мод-портал подводит итоги 2023 года
Vinzenv
Наступил конец 2023 года, и, сюрприз, мы все еще подсчитываем количество загрузок модов. Хотя большинство из них загружается через встроенный менеджер модов, некоторые из вас любят автоматизировать установку Factorio с помощью скриптов загрузки или Docker-контейнеров.
Некоторые из них падают при обновлении модов, затем перезапускаются, снова скачивают все моды, падают, перезапускаются, и через некоторое время вполне вероятно, что сервер Factorio auth начинает игнорировать скрипт загрузки. Так что, возможно, именно в этот праздничный сезон вы вспомните, как ваш бедный мини-ПК сидел в забытом шкафу, бездумно скачивая «Power Armor MK3» снова и снова.
В 2023 году у нас было:
⚙️ 676 651 инженеров, загрузивший 44 954 072 мода.
⚙️ 2 043 новых мода и 7 832 обновлений модов.
⚙️ 1 368 активных создателей модов, которых поддерживают 105 соавторов.
Если вы хотите посмотреть статистику использования вашего личного мод-портала, вы можете зайти в свой личный кабинет здесь.
В прошлом году мы наблюдали за тем, сколько различных модов обычно скачивают игроки.
В этом году я хотел бы показать вам разнообразие модов, выложенных на мод-портал. На этой диаграмме показаны категории модов, которые были выпущены в 2023 году.
Вторая диаграмма показывает все загрузки игроков в 2023 году по каждой категории. Это подтверждает мнение о том, что люди здесь преимущественно ради контента, и мне следовало бы подготовить эту статистику для тегов модов…
Журнал изменений портала модов 2023
Vinzenv
В этом году мы продолжили наше стремление улучшить ✨ доступность ✨. Сначала мы добавили автомагическую страницу Избранных модов(Highlighted mods) — каждую неделю она пытается с умом подобрать интересную подборку модов. Это работает хорошо, но пока находится на стадии «эксперимента», и мы еще не решили, куда двигаться дальше.
Чуть позже мы переработали поиск по порталу модов и запустили страницу Explore. Она обеспечивает быстрый поиск по типу «как у вас» с настройкой фильтров.
Мы также проделали довольно много закулисной работы, некоторые из которых я хочу осветить здесь:
Когда в апреле Imgur начал удалять изображения, Sanqui создал систему, которая автоматически репостит внешние изображения, размещенные на страницах модов или в обсуждениях. Таким образом, сохраняются старые скриншоты и улучшается время загрузки.
Чтобы сократить расходы, мы перевели страницу Explore с Algolia на Meilisearch (Algolia и Meilisearch — поисковые системы).
Мы изменили наше хранилище модов с sftp на s3-подобное объектное хранилище, что должно улучшить доступность конечной точки загрузки модов
Улучшения менеджера модов
raiguard
Моддинг является неотъемлемой частью Factorio, и мы приложили огромные усилия, чтобы обеспечить хороший опыт управления модами. Однако сторонние моды всегда были вторичны по отношению к работе над базовой игрой, поэтому, хотя опыт и «хороший», он не «отличный», и есть много точек трения, которые так и остались нерешенными. Начиная с версии 2.0, мы будем поставлять игру с несколькими встроенными модами, так что менеджер модов и управление зависимостями теперь подпадают под зонтик «опыт базовой игры». Благодаря своему обширному опыту в моддинге я лично заинтересован в улучшении управления модами как для пользователей, так и для моддеров, и я хорошо знаком с болевыми точками текущей системы. Я составил список своих самых больших пожеланий и разочарований и взялся за их решение.
Ошибки зависимостей модов
Представьте себе это: Вы только что настроили список модов для нового прохождения Krastorio 2 и начинаете новую игру. Не зная об этом, вы случайно включили мод Power Armor MK3, который в Krastorio 2 был помечен как несовместимый. Только через час после начала игры вы понимаете, что контент Krastorio 2 пропал, и теперь вам придется выкинуть сохранения и начать игру с нуля.
С подобной ситуацией я сталкивался много раз и как игрок, и как автор модов. В версии 1.1 игра не сообщает вам о конфликтах, а просто молча загружает те моды, которые может, и продолжает работу. Это привело к тому, что многие авторы модов стали отказываться от использования зависимостей, а пользователи жалуются, когда мод имеет много зависимостей. Проблемы, связанные с этим, настолько распространены, что Space Exploration реализовала собственную систему ошибок зависимостей, которая информирует пользователей о том, каких модов не хватает.
Factorio 2.0 будет информировать вас о возникновении ошибок зависимостей и не позволит игре загрузиться до их устранения.
Теперь, когда у нас есть информативные ошибки зависимостей, нам нужно улучшить процесс их устранения. В версии 1.1 при возникновении ошибки вам предоставляется два варианта: отключить затронутые моды или отключить все моды. Если для решения проблемы требуется включить мод, изменить версию активного мода или обновить мод, то сначала нужно отключить мод, чтобы игра загрузилась, прежде чем вы сможете получить доступ к графическому интерфейсу менеджера модов для их устранения. Это настолько раздражало меня в процессе работы над модами, что я написал мод-менеджер на основе командной строки, чтобы избежать постоянных перезагрузок игры.
Решение было простым: В версии 2.0 я добавил новую кнопку Manage mods, которая позволяет получить полный доступ к графическому интерфейсу менеджера модов, включая все функции портала модов. Вы можете увидеть ее на скриншоте выше.
Установка модов
В 1.1 вкладка установки в менеджере модов относительно проста: у вас есть список модов с базовыми опциями сортировки/фильтрации и информационная панель для отображения деталей мода. Игра получает весь список модов и создает всю таблицу за один раз, что приводит к заметным проблемам с производительностью, а в режиме отладки игра вообще практически не работает.
С появлением новой страницы Explore на сайте портала модов разница в удобстве использования между сайтом портала модов и внутриигровым браузером модов стала еще больше. Я привык искать мод на сайте и искать его в игре только после того, как найду нужный мне мод. Разве не было бы здорово, если бы в игре был такой же опыт, с такими же возможностями поиска и фильтрации?
В версии 2.0 появилась новая вкладка » Explore», в которой реализована именно такая возможность.
При реализации этого нового интерфейса мне пришлось принять во внимание несколько соображений. В версии 1.1 использование метода получения всего списка модов каждый раз было не лучшим решением по причинам производительности и использования сети, и потребовало бы повторной реализации сложных алгоритмов поиска на стороне клиента на C++. Это привело бы к неизбежным различиям между поиском на сайте и поиском в игре, что не лучшим образом сказалось бы на пользовательском опыте. С другой стороны, реализация API поиска на портале модов обеспечила бы паритет между результатами поиска на сайте и в игре.
Мы выбрали серверный подход. Чтобы быстрее запустить проект, я решил реализовать *mock-сервер на Go, который будет получать данные из существующих API мод-порталов и предоставлять их в новом формате. Благодаря встроенным в Go библиотекам HTTP и очень простому в использовании разбору JSON, на то, чтобы запустить этот сервер на моем ноутбуке, ушло всего несколько часов. По мере реализации графического интерфейса я мог свободно корректировать API по мере необходимости, не отнимая время у DevOps. Это позволило мне не торопиться и провести необходимую чистку и рефакторинг графического интерфейса менеджера модов, чтобы облегчить реализацию вкладки explore и подготовить почву для дальнейших изменений в будущем.
Как только реализация на стороне клиента была завершена, Vinzenz’у предстояло реализовать настоящий API. Благодаря устойчивости mock-сервера, во время тестирования реального API было обнаружено лишь несколько проблем, и объединение функций прошло относительно гладко.
Mock-сервер (или мок-сервер) — это программное обеспечение или сервис, который эмулирует поведение реального сервера, но не выполняет реальной бизнес-логики. Вместо этого он возвращает заранее определенные ответы на запросы клиентов. Mock-серверы используются в разработке программного обеспечения для тестирования, отладки и разработки, когда реальный сервер или его компоненты еще не доступны или находятся в процессе разработки.
Планы на будущее
Я чувствую, что эти изменения исправили мои самые большие претензии к менеджменту модов. Мой список далеко не полный, но в интересах скорейшего выхода 2.0 большинство моих планов придется отложить до следующих версий. Следите за новостями!
Сегодня мы поговорим о расширении, которое называется Factorio: Space Age.
Factorio: Space Age продолжает путешествие игрока после запуска ракет в космос. Откройте для себя новые миры с уникальными задачами, используйте их новые ресурсы для достижения передовых технологических успехов и управляйте своим флотом межпланетных космических платформ.
Что такое Factorio: Space Age? (kovarex)
Ванильная Factorio заканчивается запуском ракеты в космос, поэтому я всегда ожидал, что будет вполне очевидно, что мы будем делать дальше. Честно говоря, геймплей, связанный с космическими платформами, был запланирован очень давно, и мы немного показали его в FFF-74. Похожая история была и с Паукотроном. Впервые его концепция была представлена на FFF-120, но затем была тихо заброшена и возрождена 4 года спустя.
Но, как вы, возможно, знаете или не знаете, название «WUBE» — это аббревиатура от Wszystko będzie, что означает что-то вроде «Все будет сделано в конце концов». Мы не отказались от этой затеи, просто поняли, что будет слишком амбициозно пытаться вписать ее в релиз Factorio 1.0, поэтому в итоге она была просто отложена до выхода расширения. Оглядываясь назад, можно сказать, что это была хорошая идея.
Основная структура
Вместо того чтобы отправлять в космос одну ракету, приходится отправлять много, поскольку с их помощью нужно перевозить материалы для строительства больших космических платформ на орбите. Ракета в Space Age дешевле, чтобы не тянуть ее вечно, но все же предполагается, что вы будете строить больше, готовясь к тому, что вас ждет в будущем.
Космические платформы сами по себе используются для создания космической науки, но в основном они используются для путешествий на различные планеты и для автоматизированной межпланетной логистики.
Мы решили пойти по пути создания небольшого количества предопределенных планет, которые отражают ваше продвижение по игре.
Расширение содержит 4 дополнительные планеты. Каждая из них имеет свою уникальную тематику, ресурсы, проблемы и геймплейные механики. Большинство из них также имеют различные военные цели.
Каждая планета ведет к производству определенных научных пакетов и технологий.
Порядок освоения планет является важным стратегическим выбором.
Награды
Поскольку у нас появилось много новых задач, нам также пришлось сбалансировать набор наград, которые вы получаете за каждый этап игры. В расширении есть множество новых классных вещей, но в конце прохождения «Ванилы» игрок становится достаточно всемогущим, поэтому нам пришлось принять несколько сложных решений.
Поскольку целью было сделать общее впечатление от расширения как можно лучше, мы перебалансировали дерево технологий. Это означает, что при включении Space Age некоторые предметы, доступные в ваниле, будут открыты позже на какой-либо планете. В частности, это относится к артиллерии, взрывчатке для скал (это я как мазохист говорю), паукотрону, модулям лучшего уровня и некоторым улучшениям личного снаряжения.
Судя по результатам тестирования, эти изменения сделали выбор места и времени полета еще более осмысленным. С другой стороны, космос будет доступен раньше, и некоторые приятные дополнения будут доступны непосредственно на Наувисе (ванильной планете).
Это означает, что технически вы можете просто взять свою ванильную базу, активировать расширение и продолжить игру. Но лучшим способом испытать это будет игра с Space Age от начала и до конца.Версия 2.0 — это не только расширение
В предыдущей новости о расширении FFF-367 мы заявили, что его содержание будет технически являться модом, использующим преимущества обновленного движка. Это означает, что многие улучшения будут доступны всем игрокам, независимо от того, есть у них расширение или нет.
В частности, в обновлении 2.0 будет улучшено управление железнодорожными системами, улучшено создание чертежей, улучшено поведение летающих роботов и многое другое. Более подробно обо всем этом будет рассказано в будущих FFF.Хорошие и плохие новости (kovarex)
Начнем с (скорее всего) плохих новостей. Поскольку мы знаем, где мы находимся и какова цель, мы можем начать приблизительно определять дату выхода расширения, которая планируется примерно через год. Это все еще много, но, по крайней мере, сроки становятся более конкретными.
Текущее состояние
В предыдущем посте FFF-367 мы объявили о 7-шаговом плане, в котором мы находились на 4-м шаге. Сейчас мы находимся в конце 5-го шага и уже приступили к некоторым вещам из 6-го шага.
Игра от начала до конца длится уже больше года. Это означает, что мы уже сделали несколько итераций улучшений на основе пройденных этапов.
Мы проводим 3 вида тестирования, которые все оказались очень полезными:
Просто играем в игру в одиночку и размышляем о том, каково это.
Офисная LAN-вечеринка, которая также является отличным способом тестирования мультиплеера.
Индивидуальные тестеры. У нас было несколько сторонних тестеров, которые прошли игру от начала до конца и дали нам подробные отзывы.
Обратная связь заставила нас внести различные изменения, например:
Две планеты были слишком повторяющимися и похожими на Наувис, и нам пришлось полностью переделать их, чтобы сделать более разными.
Игра была слишком медленной и затянутой, поэтому мы ускоряли ее, но не отупляли. Цель заключалась в том, чтобы опытный игрок смог пройти игру в режиме не скоростного прохождения менее чем за 80 часов. Мы пытались сохранить механику и просто сократить количество рецептов и затраты.
Мы много раз улучшали пользовательский интерфейс, связанный с новыми (а иногда и старыми) частями игры.
Переделывать столько всего было довольно утомительно, но, судя по результату и реакции, оно того стоило.
Это означает, что у нас есть что-то, чем мы довольны, что оно достаточно стабильно, и мы не ожидаем дальнейших серьезных изменений. У нас есть относительно стабильный список задач, которые необходимо решить как программистам, так и художникам, что дает нам уверенность в том, что мы сможем выпустить готовый продукт примерно через год.
Хорошие новости
Но есть и (надеюсь) хорошие новости! С этого момента мы прекращаем эмбарго на содержание расширения и будем еженедельно публиковать «Пятничные факты» о различных аспектах расширения вплоть до его выхода!
В основном мы будем рассказывать о том, что уже сделано или над чем мы работаем. Мы также с нетерпением ждем обратной связи от сообщества, которая уже не раз оказывалась полезной. При том количестве материалов, которое у нас есть, я уверен, что мы не исчерпаем темы до самого релиза.«Для этого уже есть мод» (Earendel)
Многие будут сравнивать расширение Space Age с модом Space Exploration. Я работал над дизайном игры для обоих: В Space Age я сделал первые прототипы космоса и планет, а также участвовал в большинстве обсуждений геймплея. Что касается Space Exploration, то это мой мод, я его сделал.
Думаю, это делает меня наиболее компетентным для того, чтобы говорить о том, что эти две вещи очень сильно отличаются друг от друга с самого начала. Конечно, есть некоторое совпадение в общих темах: вы летите в космос, посещаете планеты; но эти сходства оказываются довольно поверхностными, когда все решения на этом пути принимаются с разными дизайнерскими целями:
Целевая аудитория: Space Exploration ориентирована на небольшой круг любителей сложных заданий, она не для всех по своей сути. Space Age ориентирована на всех игроков Factorio и отличается большей доступностью.
Продолжительность игры: Space Exploration — это длительное приключение, рассчитанное на постепенное раскрытие множества взаимосвязанных задач в течение 150-500 часов (или более). Задачи «Космической эры» более упорядочены и самостоятельны и рассчитаны на более быстрый темп прохождения — 60-100 часов (приблизительная оценка).
Сложность: Сложность задач, связанных с освоением космоса, возрастает к концу до очень высокой. Некоторые из последних заданий не могут быть автоматизированы без использования комбинаторов, поэтому не ожидается, что все игроки смогут их выполнить. В Space Age много различных задач, но они не слишком экстремальны, а использование комбинаторов достаточно легкое, поэтому мы ожидаем, что большинство игроков смогут пройти эту игру.
Поддержка движка: Есть много вещей, которые Space Exploration просто не может сделать, потому что это мод. Space Age обладает совершенно иными возможностями, поскольку игровой движок может быть создан для его поддержки. Большая часть расширения посвящена игровым механикам, которые просто невозможны иначе, поэтому игровой процесс будет уникальным и новым даже для ветеранов Space Exploration.
Существует еще много отличий, которые станут очевидными при рассмотрении отдельных особенностей расширения в следующих FFF.
В первом выпуске последнего месяца года GreenFlag представляет свой первый большой проект в создании модов, цель которого — добавить в игру кампанию в стиле RTS в духе обучающих уровней игры. Это довольно сложно и очень весело!
Story Missions: The Story GreenFlag
Я хочу поговорить о моем моде Story Missions. Мне действительно сложно решить, с чего начать, потому что идея дополнительных целей для кампании родилась в моей голове более года назад. После 200 часов Factorio я начал чувствовать слегка повторяющийся игровой процесс и начал скучать. В то же время я не хотел продолжать создавать новую игру, снова и снова создавать и разрабатывать все с нуля. Так что мне пришла в голову идея создать свои собственные карты по теме учебника, только теперь это будет не учебник, а регулярные миссии.
Когда я впервые попробовал редактор Factorio, я был удивлен, что на самом деле он был довольно ограниченным. У меня был большой опыт работы с редакторами для StarCraft / Warcraft, в которых вы писали сценарии в игре, используя систему, основанную на «триггерах». По сути, вам нужно найти хороший триггер, который максимально соответствует вашим требованиям, затем вам нужно просто добавить значения и все. Мне было грустно, что в Factorio все скрипты не могут быть предварительно определены в каком-либо интерфейсе непосредственно в игре, а вместо этого могут быть представлены в виде чистого кода. В основе всего этого лежат файлы .lua. Обнаружив эту проблему и фактически потратив время на то, чтобы заново научиться программировать я закрыл игру навсегда и не включал ее в течение нескольких месяцев. (Я надеюсь, что ни один программист не станет меня винить.) Продолжить чтение