SamuKata
teedeezet
teedeezet

boosty


Итоги месяца: май 2025

Привет всем спонсорам!
 
В течение мая я делал ровно то, что обещал вам до этого: отдыхал на праздниках, занимался восьмой серией видео и переосмыслял все возможные идеи для ГВ.
 
Формат сегодняшнего поста будет не совсем обычным. Да, это "итоги месяца", но осязаемых результатов у меня на руках нет. Всё, что происходило с проектом - это мыслительная деятельность, и пост будет посвящён в первую очередь ей.
 
[GRIM WILD]

 
Итоги мозгоштурма
 
Игра наконец-то выбралась из стадии реализации фундамента, и настала пора решать, что же делать дальше. Главная задача - как можно быстрее насытить игру контентом и довести проект до состояния тестирования со спонсорами. В теории, его можно начать и сейчас, но вам там просто нечего делать. Совсем. Все самые интересные фишки пока что недоступны игрокам, и с ними никак нельзя взаимодействовать.
 
Стоит сказать, что я совсем не жалею, что потратил на фундамент очень много времени. Отрисовка, виртуальные ассеты, компоненты и логическая стыковка, моды и скрипты - это всё работа из категории "Must have". Она важна и обязательна. А вот про элементы геймплея такого уже не скажешь. Они могут время от времени меняться, адаптироваться или даже удаляться - как раз такое произошло в этом мае с динамическими жидкостями.
 
Уход от симуляции воды
 
Итогом мозгоштурма стало осознание того, что динамическую воду из игры придётся убрать (но симуляции тепла и воздуха всё-таки останутся).
 
Новые планы такие: все лужи на уровне (вода, грязная вода, лава...) становятся статичными (то есть их положение и количество на клетках фиксировано), а остальные жидкости (пиво, кровь, молоко, нефть, жидкое топливо...) существуют только в формате предметов ("ведро молока") или значений в трубопроводе ("1000л нефти в резервуаре").
 
Почему я принял такое непростое и непопулярное решение - давайте разберёмся.
 
Доводы ЗА динамические жидкости
 
• Симуляция воды - это инструмент, применение которого ограничено лишь фантазией игроков. Можно создавать с их помощью ловушки, механизмы и изысканные способы разделаться с врагами и их поселениями.
 
• Жидкости - ценный и ограниченный ресурс. Бесконечно качать насосом лужу 2x2 клетки было бы нельзя.
 
• Изменение условий на уровнях и планетах: приливы и отливы; засухи и потопы; подъем мирового океана из-за потепления.
 
Мелочи:
• Течение воды двигает лежащие там объекты
• Есть возможность реализовать механику подводных лодок после релиза игры
 
Доводы ПРОТИВ динамических жидкостей
 
Самое очевидное - это отсутствие гетерогенных симуляций (то есть тех, где есть много жидкостей, а не одна вода). Их я сделать просто не смог, мне не хватило навыков и желания. Получается, динамической могла бы быть только вода, а всё остальное было бы только предметом. А как тогда делать лаву? А грязную воду на болоте?
 
В заметках о GPU симуляциях сейчас написано 4200 слов (это как 3 стандартных поста "Итогов месяца"). Сложной и запутанной информации там так много, что я даже не хочу к ней прикасаться.
 
В 2025 году вода - не такая уж важная часть игрового процесса. Она нужна разве что для полива растений и для некоторых технологических процессов. Все остальные идеи (например, жажда у людей или затопление построек) были по разным причинам за эти годы выброшены. Отсюда следует, что эта второстепенная механика не должна быть слишком продвинутой и уж тем более не должна отнимать у меня много времени.
 
Что мы получаем после отказа от симуляции воды
 
• Перепады высот на уровне оказываются не нужны. Не будет затопления базы после ливня в случае постройки в низине. Не будет нужды в механике терраформирования и изменения мировой высоты клеток.
 
• Из игры не будут убраны "сложные лужи". Дело в том, что реки в симуляции выглядели бы ужасно: вода там должна была не просто стоять как в озере или океане, а именно течь: появляться, протекать до границы уровня и уничтожаться. Сделать это красиво мне не получалось.
 
Ещё одна спорная ситуация была с лавой. Она источает свет и тепло, а ещё наносит урон всему, что в неё попадет. Такая сложная логика в динамическом исполнении создавала бы много лишней нагрузки на пустом месте.
 
С замерзанием жидкостей то же самое. Хоть я и не могу гарантировать, что оно будет реализовано, но сейчас это хотя бы стало технически возможно.
 
• Будет решена проблема с мостами: на какой мировой высоте раньше строились бы мосты? +1 метр от текущей поверхности воды? А если происходит прилив, и их снова затапливает? Или игрок должен был сам выбирать их мировую высоту? Это было бы странно.
 
Что будет теперь?
 
Статичный вариант реализации жидкостей предполагает это:
 
• Качать насосами жидкости можно бесконечно (как в Factorio), но чем меньше лужа по объёму, тем меньше генерируется напор. Получается, что для промышленных объемов добычи игроку всё равно будет нужно искать большие водоёмы.
• Излишки воды из цистерн появляются на уровне в формате предметов (например, вы ломаете цистерну с 1000л воды, и вам в таком случае просто выпадает 100 полных вёдер воды).
• В болоте вода всегда грязная. В радиоактивной пустоши - всегда токсичная. Игрок должен её собирать, чистить и фильтровать.
• Мосты всегда строятся на мировой высоте, равной поверхности жидкости. Можно строить и причалы, и даже плавучие дома - потопа не будет.
• Замерзание воды можно сделать через автоматическое появление "мостов" (то есть поверхностей из материала "лёд" над уровнем воды) при низкой температуре.
• Дождь ничего и никого не затапливает. Собирать его можно с помощью бочек или водостоков.
 
***
 
Это решение мне далось непросто. Я немного чувствую себя обманщиком, который сначала показал крутую фишку в ролике, собрал на этом спонсоров, а потом сказал "сорян, такого не будет". Да, ситуация неприятная, но я ничего другого не могу поделать. Идея динамических жидкостей теперь не входит в моё видение проекта.
 
P.S Ещё раз напоминаю, что симуляции воздуха и температуры в игре остаются. Они, в отличие от жидкостей, идеально вписались и в геймплейную, и в техническую часть игры.
 
P.P.S весь опыт, накопленный при реализации GPU симуляций, оказался очень полезен. Динамическая вода всё ещё выглядит для меня привлекательно. Просто не для ГВ, а для какого-нибудь другого 2D проекта, желательно с видом сбоку.
 
Многоярусных уровней тоже не будет
 
... И вы об этом уже знали, потому что их возвращения после отмены "полностью открытого мира" я не анонсировал. Тем не менее, всё это время они находились в неопределённом состоянии, пока в том же самом мае 2025 я не вычеркнул их из проекта навсегда.
 
Ярусы использовались бы для этого:
• Запертые подземные пространства, где кислород ограничен, а излишкам температуры некуда уходить. Правда, эти идеи можно реализовать и без ярусов. Жить можно просто в биоме "пещера", а бункеры создавать отдельными уровнями.
• Свобода действий игрока (подкопы под базы противников, ловушки для налётчиков), но это только создаёт дыры в логике.
• Чтобы "проект не был похож на RimWorld", что теперь меня не волнует.
• Жилы разных полезных ископаемых прямо под ногами (чем глубже, тем ценнее).
• Подземные воды. Которые после отказа от симуляции жидкостей оказались куда менее полезны.
 
Уход от ярусов означает это:
• Я не буду тратить свои силы на сомнительную механику, которая нужна далеко не всем.
• GPU симуляции: не нужно продумывать логику переходов тепла и воздуха между ярусами.
• Трубопровод и вентиляция: не нужно внедрять гравитацию, чтобы реалистично двигать воду и газы вниз/вверх.
• 2D геймплей в 2D игре, всё просто и логично.
• Отсутствие многоярусных построек (буры, колодцы и всё прочее, что раньше имело бы подземную часть).
• Подземные ресурсы добываются прямо с поверхности: буры для руды и колодцы для воды.
• Нет лишней нагрузки на ИИ (врагов и колонистов). Не надо просчитывать сложное многоярусное поведение и навигацию.
• Нет лишней нагрузки на ПК игроков от клеток подземных уровней (пользы от них мало, а ресурсов потребляется столько же, как и у надземных).
 
"А про что тогда игра? Оттуда убрали все фишки!"

 
Я считаю, что все эти изменения пойдут проекту на пользу, и он не потеряет ни капли привлекательности. Эмоции игроков - это моё главное стремление, и все мои идеи строятся вокруг их генерации.
 
Эмоциональное ядро проекта - развитие базы в агрессивной среде - остаётся. Остаются стадии развития, ветвистые события, насыщенная жизнью планета, сложная генерация мировых структур и открытый космос. И все технические новшества тоже. И эмоции, которые от игры должен получать игрок. Всё остаётся на своих местах, я просто выбрасываю самые неудачные и провальные идеи. Если где-то веселье убавляется, то оно обязательно прибавится в другом месте.
 
Проблемы Lua
 
Ещё одна тема для разговора - это скрипты на Lua. С ними всё получается не так радужно, как я себе раньше представлял.
 
Уточнение: здесь речь идёт только про скрипты для модов. Внутриигровые скрипты (например, в "командном блоке") устроены намного проще.
 
Что я хотел сделать: простой и понятный API, который скрывает от мододелов все сложности за простыми и интуитивно понятными функциями.
 
В реальности выходит так, что функционал для Lua скриптов всё равно сложный, и там есть много подводных камней.
 
Финальный облик скриптов складывается из трёх факторов:
 
1) Логика, связанная с Unreal Engine. Для написания сложных модов нужно понимать и паттерны движка, и жизненный цикл объектов, и логику сборки мусора.
 
2) Логика, связанная с Grim Wild. Как работает логическая стыковка и чем отличается статическая от общей или слабая от сильной. Статическая, например, не позволяет редактировать владельцу пристыкованный объект (другими словами, нельзя взять mutable объект, только const), и это важно.
 
3) Логика, связанная с Lua. Никакого const или static там нет, и в попытках надстроить костыли я могу всё только испортить.
 
В итоге мне представляется такая картина: мододел смотрит в документацию Луа и видит минное поле (шаг в сторону - получаешь ошибку и понимание того, что вся сделанная ранее работа неправильная). Каждый метод имеет кучу сносок о том, что делать не стоит и что в каком случае надо использовать взамен. Когда он начинает писать код, ему в лог влетает куча предупреждений и ошибок по типу "Индивидуальная стыковка доступна только для объектов из одного и того же мира". Хоть для меня эта строка имеет много смысла, но для вас - никакого. Как и для мододела, который после этого находится в замешательстве.
 
Вот и получается, что сделать круто всё - и интересный контент базовой игры, и высокую производительность, и широкий простор для модов - нельзя. Придётся уходить в одну из этих сторон, и если игра всё-таки идёт к
становлению платной, то для меня будет важнее то, что именно я предлагаю заплатившим за мой продукт игрокам. То есть базовый контент и производительность.  
 
Это уже не просто "платформа для модов", как я говорил в одном ролике. Моя ответственность после возможного* ухода от Free to Play сильно возрастает, я уже не могу скинуть половину работы на мододелов.
 
*Будет ли игра платной, я ничего вам до сих пор сказать не могу. Это зависит не от меня, а от будущих санкций.
 
Тем не менее, не всё так плохо. Можно собирать свои ассеты из готовых компонентов через окно Asset Editor. Да, сделать из GW свою MMORPG не получится, но 80% потребностей мододелов всё-таки будут закрыты. Я считаю такую цель впечатляющей, учитывая нулевую модо-ориентированность игр на Unreal Engine.
  
[ПУБЛИЧНАЯ ДЕЯТЕЛЬНОСТЬ]
 
Это звучит странно, но сценарий восьмой серии готовился целый год. Я начал писать его весной 2024, и с тех пор время от времени дополнял, менял и несколько раз переписывал заново. Вот и в мае, когда я начал писать чистовой вариант (причём тот, который с минимальными правками будет переведён на английский), мне было проще выбросить всё старое и начать с нуля.
 
Старые серии строились по такой схеме: я выкидывал на зрителей какую-то тему и, не сильно вдаваясь в детали, переходил к следующей. Я боялся, что от излишних подробностей людям станет скучно, и они выключат видео.
 
Сейчас мне стало плевать на это. Ролик вряд ли привлечёт новую аудиторию, так что я делаю его "для своих". Так, как мне самому было бы интересно его посмотреть от лица зрителя. Без рваных предложений и огрызков обширных тем.
 
Текущее состояние восьмой серии: сценарий уже готов (но местами ещё полируется); озвучка постепенно записывается; сцены из игры и в Envision Video Editor уже создаются; музыка на фон подобрана (что является каждый раз очень сложной задачей - большинство мелодий без авторского права, доступные в интернете бесплатно - это полный шлак).
 
Превью для превью, которое кидаю вам на ревью и ставлю на превью (этого поста). Задний фон будет заменён с творения ИИ на сцену из ГВ. Какими бы простыми мои обложки не казались обычному зрителю, они всегда создаются из большого набора идей и вариантов.
 
[ПЛАНЫ НА ИЮНЬ]
 
Всё просто: делаю дальше ролик. Озвучиваю, монтирую. Смогу ли я успеть доделать его за месяц? Честно, не знаю, монтаж всегда занимает неопределённое количество времени, поэтому рискованных обещаний я вам давать не буду.
  
Спасибо за внимание!

Итоги месяца: май 2025 Итоги месяца: май 2025

Comments

<div ><div><span class="text">Rc2F6, течение это общая текстура воды которая просто изменяет координаты UV. Там можно и пошаманить с шейдером что бы было красиво, но это уже на вкус и цвет. Или просто стрелочки при включении информационного интерфейса типа температура, газы и показывает стрелочками направление воды. Всё что попадает в воду, либо тонет, либо перемещается по стрелочкам. Если утонуло и надо достать, тогда либо осушать это место строя дамбу, либо удочка и с маленьким шансом что выловят, или костюм водолазный или навык плаванья.</span></div><div></div></div>

Rc2F6

<div ><div><span class="text">Почему бы не сделать воду как в Dwarf Fortress. Заполнение одной ячейки 7 уровней. Только цифры и ни какой симуляции. до трёх можно ходить, больше трёх нужин навык плаванья или тонут. Тут даже не нужно смешивать разные жидкости, все остальные жидкости это либо грязная вода, либо спрайт лужи которую можно отчистить и из-за которой разносится грязь. Лава так же делается, лава + вода = камень. А этажей 10 было бы достаточно, всё что выше 5 этажей над землёй это небо и горы как в Римке. Всё что ниже 5 этажей под землёй это бесконечная лава или обсидиан который ни чем не разрушить, так же войды, типа пустоты наступая на которые просто погибаешь, типа падая в пустоту, все шмотки удаляются как и в лаве или когда обвал. По сути без фанатизма и реализуемо.</span></div><div></div></div>

Rc2F6

<div ><div><span class="text">ничего страшного, что ты ушёл от free to play, я даже рад этому. <br>и то что ты отказался от воды я понимаю, очень сложная механика.<br>за перепады высот конечно обидно, но ничего не поделаешь<br><br>рад что ты всё?е ещё продолжаешь разработку </span></div>

dmitrium12


More Creators