От SRTM-30 и GAN до гексагонального мира: история создания 8 More Lives
Карта компании в 8 More Lives
Ретроспективный материал, посвященный созданию глубокой пошаговой тактики 8 More Lives. Публикация скоро появится в официальном блоге студии Luden.io, а поскольку я уже не впервые перевожу их статьи для SE7ENа, авторский стиль и подача от первого лица остались неизменными.
Создатели с радостью разрешили опубликовать текст раньше официального релиза. Кстати, у вас есть возможность попасть в закрытый плейтест на Steam вне очереди: загляните в Discord-сообщество проекта и шепните администраторам кодовое слово от DMinsky. Приятного погружения!
Сложно, но невероятно затягивает
Приветствую! Меня зовут Иван, и я проектирую видеоигры уже целое десятилетие. Мое портфолио включает while True: learn(), Learning Factory и SuperWEIRD, однако сегодняшний рассказ посвящен совершенно другому проекту.
8 More Lives представляет собой бескомпромиссную пошаговую стратегию, где под вашим началом оказывается элитный отряд котов-наемников. Толчком к разработке стала моя давняя страсть к многоуровневым, взаимопроникающим игровым системам, особенно в рамках тактического жанра.
Истоки и эволюция концепции
Проект не возник по щелчку пальцев в готовом виде. Его ДНК складывалась из бесчисленных экспериментов, ранних набросков и опыта, накопленного за десять лет работы в индустрии. Именно эти идеи сформировали облик игры, которую вы видите сегодня.
Средневековые пошаговые баталии
Мои попытки создать пошаговую тактику в антураже Средневековья начались еще в 2015–2016 годах. Тот концепт можно охарактеризовать как «XCOM в декорациях феодализма», где противостоять приходилось силам зла. Прототип собрался довольно резво, однако дальше публикации на itch.io дело тогда не сдвинулось.

Главный вывод, который я вынес: классический ордерный бой плохо уживается с привычной по XCOM микромодификацией отряда, векторами атак и жесткой квадратной сеткой. От большинства этих находок пришлось отказаться. Геймплей ощущался неповоротливым, хотя некоторые задумки — вроде вариативных очков действия и радиальных меню — работали вполне сносно.
Примерно в тот же период вышла Battle Brothers. Пусть ванильная версия страдала от нехватки контента, механически она функционировала безупречно. Желание пилить собственный аналог сразу ушло на второй год, уступив место бесчисленным часам в Battle Brothers, ведь разработчики уже создали ровно то, что я безуспешно пытался воплотить сам.

Процедурная картография, биомы и трансформация ландшафта
В 2019 году мне захотелось прокачать Civilization V, внедрив туда алгоритм, способный анализировать реальные географические паттерны и конвертировать их в сбалансированные игровые карты вместо банального шума.
Источники картографических данных
Базой послужила SRTM-30 — глобальная матрица высот от NASA/JPL с шагом в 30 угловых секунд. Для движка массива данных оказались избыточными, поэтому пришлось спроектировать отдельный препроцессор.
TIFF-формат конвертировался в PNG, после чего скользящее окно вырезало фрагменты 1081×1081 с шагом в 200 пикселей. Значения высот нормализовались и распределялись по 11 градациям. Пустые, перегруженные или плоские участки отсеивались: доля суши должна была составлять от 15% до 85%, стандартное отклонение превышало 1,25, а статистические показатели попадали в строго очерченные рамки. Это гарантировало наличие естественных берегов и выраженного рельефа.
Далее фрагменты ранжировались по характеру прилегания суши к границам. Изображения зеркалились и стыковались для бесшовного объединения береговых линий. Длинные прямолинейные контуры детектировались через алгоритм Кэнни и преобразование Хафа, размывались фрактальным шумом и сглаживались. Если площадь суши падала ниже 44%, кусок смешивался с альтернативными картами. Финальный этап включал рескейл, вращение и перевод в 256 оттенков серого.
Обучение нейросети
Полученный массив использовался для тренировки генеративно-состязательной сети (GAN) с функцией потерь BCEWithLogitsLoss.

Одного прогона GAN было мало. Алгоритм перезапускался до тех пор, пока континенты не переставали упираться в кромку экрана. Если суша занимала менее 40% полотна, система вычисляла крупнейшую пустую зону и интегрировала туда дополнительный сгенерированный элемент с подгонкой под масштабы. Так рождались не просто изолированные атоллы, а сложные архипелаги.
После работы GAN вступала в дело классическая процедурная симуляция. Высоты дробились на 11 ярусов; периметр принудительно заливался океаном; плотность тверди вокруг тайла определяла статус прибрежной зоны, глубоководья или абиссали. Перепады высот формировали плато, горные цепи и каньоны, а фрактальный шум отвечал за сейсмическую активность.
Влажность исходила из океанов и рек, истощаясь по мере удаления и набора высоты. Исток рек привязывался к горным пикам и влажным зонам, прокладывая русло вниз с возможностью слияния или формирования водоемов во впадинах. Температурный режим зависел от широты, высоты и близости воды (с поправкой около 6,5 °C на километр). На пересечении 25 диапазонов влажности и 23 температурных зон определялся один из 15 биомов, поверх которого накладывались леса, топи, пустынные массивы, рифы и ценные ресурсы.
Генератор выдавал отличные результаты, но интегрировать его в Civilization V мне так и не посчастливилось. Тем не менее, кодовая база, датасет и общая парадигма «рельеф → гидрология/климат → биомы → геймплейные правила» благополучно дожили до лучших времен.

Эволюция наработок в генератор 8 More Lives
Спустя время этот заброшенный эксперимент лег в основу геокарты 8 More Lives. Правда, напрямую тащить нейросеть в проект было безумием: лишь чекпоинт модели весит порядка 213 МБ. К нему потребовалось бы прикрутить рантайм, библиотеки инференса, буферы под тензоры и кроссплатформенную поддержку Windows, macOS, Linux и будущих консолей. Для инструмента, отрабатывающего пару секунд на старте новой игры, это непозволительная роскошь в плане размера билда, времени загрузки и тестирования.
Игровой мир базируется на гексагональной сетке без прямоугольных обрезок масками. Радиус в 100 ячеек от центра до каждого из шести ребер дает в сумме 1 + 3R(R + 1) = 30 301 гекс. На данный момент доступен единственный тип генерации — «Континент». Мир можно вращать вокруг оси с шагом в 30°: для каждой ячейки заготовлено 12 проекций, обеспечивающих идеальную читаемость рельефа под любым углом.
От глубокого обучения мы отказались, но переняли его философию. Современный генератор стартует с шести октав детерминированного шума: координаты проецируются в гекс-пространство, частота каждой октавы удваивается, амплитуда уполовинивается с последующей нормализацией. Идентичный сид гарантирует абсолютно одинаковый мир на любых платформах без внешних зависимостей.

Поверх шумовой матрицы накладываются эвристические паттерны. В случайных зонах формируются равнинные биомы, тогда как другие участки превращаются в массивные плоскогорья. Края карты принудительно опускаются ниже уровня моря, окружая материковую часть замкнутым кольцом океана. Рисуя фьорды, алгоритм не идет по прямым линиям: от побережья прокладываются ломаные траектории со смещенными узлами, расширяющимися вокруг будущих русел.
Непрерывные значения высот маппятся на 21 пороговое значение. Замкнутые сухопутные котловины конвертируются обратно в твердь — в дальнейшем вспомогательный модуль превратит подходящие из них в живописные озера.
Затем активируются гидрологические скрипты, прокладывающие реки, броды и водные акватории.



Завершив с гидрографией, модуль пересчитывает климатические показатели.
Температурный диапазон варьируется от −25 до +50 °C с учетом высотного пояса. Влажность распространяется от океанических и речных артерий, угасая с коэффициентом 0,885 на каждой итерации и теряясь при преодолении возвышенностей (эффект дождевой тени). Один из теплых регионов принудительно засушивается для создания масштабной пустынной зоны.


Локальные флуктуации температур и осадков вносятся дополнительными шумовыми картами. На пересечении 24 градаций влажности и температуры матрица распределяет арктические ландшафты, тайгу, умеренные зоны, саванны или пустыни. В финале прорисовываются холодные пустоши, уникальные свойства тайлов, ручьи, региональные границы, дорожная сеть и поселения.


Тактические карты и доработки

Пандемийное затишье в мае 2020 года подтолкнуло меня стряхнуть пыль с архивного кода и поразмыслить, во что может эволюционировать средневековая пошаговая тактика. В то время безоговорочным монополистом в нише оставалась лишь Battle Brothers, так что вектор размышлений свелся к простому вопросу: «Что я могу внедрить такого, чего моддерам не реализовать на базе Battle Brothers?»
Первым прорывным решением стала возможность вращения карты.

Затем подоспели биомы, научившие движок собирать боевые арены на стыке различных ландшафтов. Изначально их планировалось еще больше (часть из них до сих пор запрятана в недрах билда и ждет часа своего визуального оформления).

Динамическая генерация баталий из данных кампании
Что еще можно было привнести в жанр?

Вспомним бессмертную классику в лице Rome: Total War, где тактические арены выстраивались на основе глобальной геопозиции отряда. Чем мы хуже? Я взялся реставрировать эту подзабытую двадцатилетнюю технологию.
Вуаля — теперь боевые локации генерируются процедурно, с абсолютной точностью воспроизводя биомы, рельеф и особенности ландшафрта с глобальной карты.
Масштабные бойцы, пехота и концепция девяти жизней
Какие еще элементы обогатят геймплей? Как насчёт юнитов разного размера? Ограничиваться исключительно одногексовыми солдатами не хотелось!

Крупбагажные боевые единицы уже доступны для баталий, а миниатюрные юниты вернутся в игру в обозримом будущем.
Примерно в тот же момент родилась концепция котов: миф о девяти жизнях идеально лег на механику игрового процесса. Новичкам это дает щадящий буфер ошибок, а ветеранам развязывает руки для агрессивных тактических маневров и раннего риска.
Добавим сюда вайб «Рэдволла» и диснеевского «Робин Гуда», сдобренные щепоткой мрачного фэнтези — и пазл сошелся.

То, что в двух наших прошлых проектах ключевыми персонажами тоже выступали коты — чистейшая случайность. Честно-честно. Никаких сомнений. А заодно ловите фото моего домашнего питомца.
Дружелюбный интерфейс для хардкорной стратегии
К 2024–2025 годам прототип возмужал настолько, что я смог уделить пристальное внимание UX и эргономике. Требовалось доказать скептикам из команды, что этот «симулятор Excel про котиков» пригоден для комфортного прохождения живыми людьми.

Разработка велась урывками, в основном по вечерам, с использованием временных ассетов, Paint и подручного софта. Тем не менее, именно тогда внедрили многоуровневые тултипы, активные гиперссылки внутри текстовых блоков и прочие полезные фичи, которых вечно не хватает в комплексных стратегиях — те самые приятные мелочи, спасающие игрока от боли.

Аутентичное вооружение и многослойная баллистика брони
Еще одна гипотеза, требовавшая проверки — использование исторически достоверного оружия и экипировки. Без фанатичного занудства исторической реконструкции, но гораздо ближе к подлинным образцам, чем принято в видеоиграх. Это критически важно, поскольку в проект заложена сложная многоуровневая система защиты.

Для меня лично эти детали имеют огромный вес, но меня терзали сомнения: разделяют ли геймеры подобный интерес? К счастью, релиз Kingdom Come: Deliverance II триумфально влетел в чарты и развеял мои опасения.
От закрытого концепта к публичным плейтестам
В октябре 2025 года известный стример запустил наш прототип. Он провел два часа в абсолютно сырой, полусломанной сборке — и остался в восторге! Аудитория трансляции оценила задумку по достоинству.

Так мы дошагали до февраля 2026 года и полноценного этапа активной разработки — того самого идеального временного окна между «текущим кондиционным билдом» и моментом, когда «весь мир уйдет залипать в GTA 6», позволяющего нам открыто презентовать игру.
Мы непрерывно наполняем проект контентом, правим баги, дошлифовываем механики и готовимся к официальному запуску в Steam через серию плейтестов. Присоединяйтесь! Оставляйте заявки на участие, делитесь фидбеком и добавляйте проект в свой список желаемого!
Добавляйте в вишлист и тестируйте вместе с нами!
Ссылка на страницу магазина Steam для добавления в избранное и записи на плейтест:

Sony назвала игры, которые покажет на выставке Tokyo Game Show 2026
DLSS 5 работает не только на RTX 5090, так как технология запустилась и на бюджетных видеокартах
Inart готовится открыть предзаказ на фигурку Дефстроука из Batman Arkham Origins
Мои игровые странствия
Создатель Devil May Cry рассказал, чего боится больше исчезновения дисков
Новая игра Tomb Raider: Catalyst сохранит образ Лары Крофт из трилогии 2013 года по заявлению разработчиков
Hot Toys анонсировала коллекционную фигурку Тора по фильму Мстители Доктор Дум
Тестируем Gemini 3.8: реально ли написать 3D-шутер с нуля без игрового движка?