Найти в Дзене
Pavel Kutejnikov

Вступительное слово

Здравствуйте. В этой статье я кратко расскажу о своём творчестве и основном проекте, который сейчас принимает участие в фестивале Игропрома. Долгое время работал в области 3д, в различных направлениях, от создания небольших ассетов и архитектурных элементов до огнестрельного оружия и техники. Возможно, вы уже встречали мои модели в играх - это башенки в PUBG: Battlegrounds, тележки в Last Epoch, чудной огнестрел в Hot Dogs, Horseshoes & Hand Grenades и Red Crucible т.д. Создавать игры думал давно и даже немного пытался - в конце нулевых сделал несколько несерьёзных поделок на VB, а затем на Blitz Basic, ещё что-то на флеше, после чего попытки прекратил до весны 2020, когда начались ограничительные мероприятия, а Unity Technologies решили на время (месяц или два) открыть для всех премиум-курсы по юнити. Потом они додумались оставить открытый доступ на постоянной основе, но тогда я решил пользуясь случаем отвлечься от 3d и за эти несколько месяцев освоить основы разработки игр. Результат

Здравствуйте. В этой статье я кратко расскажу о своём творчестве и основном проекте, который сейчас принимает участие в фестивале Игропрома.

Долгое время работал в области 3д, в различных направлениях, от создания небольших ассетов и архитектурных элементов до огнестрельного оружия и техники. Возможно, вы уже встречали мои модели в играх - это башенки в PUBG: Battlegrounds, тележки в Last Epoch, чудной огнестрел в Hot Dogs, Horseshoes & Hand Grenades и Red Crucible т.д.

Создавать игры думал давно и даже немного пытался - в конце нулевых сделал несколько несерьёзных поделок на VB, а затем на Blitz Basic, ещё что-то на флеше, после чего попытки прекратил до весны 2020, когда начались ограничительные мероприятия, а Unity Technologies решили на время (месяц или два) открыть для всех премиум-курсы по юнити. Потом они додумались оставить открытый доступ на постоянной основе, но тогда я решил пользуясь случаем отвлечься от 3d и за эти несколько месяцев освоить основы разработки игр.

Результатом стала простенькая игра по мотивам arkanoid (по мотивам breakout) с довольно трудным названием Caterpillarnoid (caterpillar - гусеница), законченная в июне и уже в июле опубликованная на бесплатной основе в стиме.

Оригинальный Caterpillarnoid в 2020
Оригинальный Caterpillarnoid в 2020

Итог мне понравился и, судя по отзывам, игрокам тоже. Поэтому в течении последующих двух лет я иногда возвращался к этому проекту, добавляя что-то новое. На данный момент игра содержит 3 различных режима игры, 72 уровня (без учёта уровней в idle-режиме) и несколько типов процедурной генерации.

Новый режим с физикой в 2021
Новый режим с физикой в 2021

Всего за это время я выпустил 11 небольших игр, часть из которых на уровне прототипов, тестирования механик или даже пародий, как например nesslime (вы же помните циркача Чарли для денди?). Собственно, игры для скачивания или онлайн публикую здесь https://kutejnikov.itch.io/

nesslime
nesslime

Несмотря на свой тридешный бэкграунд, я пока не выпустил ни одной 3д-игры. Хотелось начать осваивать 2d - как собственно рисование так и пиксельарт. Кроме того, 3d, особенно реалистичный стиль, требует много времени и визуально качественной реализации всего - окружения, освещения, анимаций и т.д., и в одиночку это всё тянуть будет не просто, особенно без покупки дополнительных ассетов. Для себя решил сторонние 2d/3d ассеты не использовать - хотелось создавать визуально оригинальные игры, покупая только музыку и звуковые эффекты. В приведённых играх вся графика нарисована вручную, за исключением пародийных - там заимствования с nes-игр smb, duck tales и circus charlie. Особенно над стилем я старался в небольшом платформере Slime!, атмосфера которого вдохновлена мрачными вселенными Цутому Нихэй.

Мрачный и тревожный платформер Slime!
Мрачный и тревожный платформер Slime!

В отдалённых планах есть проект 3d-игры, но стараясь трезво оценивать силы, предполагаю делать его в стилистике второй половины 90х - Might and Magic 6-7 / Ultima IX / Lands of Lore III, иначе разработка может сильно затянуться.

Теперь о Tzakol in Exile, который принимает участие в фестивале от Игропрома. Это мой первый по-настоящему серьёзный проект, который я начал в 2021 году. Изначально он планировался как не очень продолжительный рогалик, но, как это часто бывает, замечательные идеи начинают атаковать автора в процессе и многое меняется/дополняется по ходу разработки. Сейчас игра, представленная в виде демо-версии, содержит почти 80% игрового контента который планировался изначально (за исключением финального босса, некоторых персонажей и специальностей), включая два режима - медленный с мета-прогрессией и быстрый рогалик. В полной версии будут реализованы дополнительные режимы (блиц, сюжетные), большее количество контента и персонажей.

Торговый пост. Даже в глубинах подземелья обязаны быть торговцы с выгодными предложениями и акциями.
Торговый пост. Даже в глубинах подземелья обязаны быть торговцы с выгодными предложениями и акциями.

Игра пишется с нуля на юнити, из внешних скриптов используется только модуль локализации “Simple Localization with Google Sheets“, а из ассетов - честно купленные у humble bundle роялти-фри звуки и музыка.

Самым сложным и в тоже время интересным этапом для меня стало написание кода генерации уровней. Сейчас в игре присутствуют три типа карт - отрисованные вручную (база, босс и пр.), тропический остров и подземелье. Два последних процедурно генерируются случайным образом, как в любом уважающем себя рогалике. Много времени ушло на создание баланса между рандомным размещением всего (просто насыпьте мобов в комнаты и коридоры) и определёнными паттернами типовых комнат. В итоге получается карта с подземными озёрами, пещерами, торговцами и разнообразными интерактивными объектами. Открыв первую дверь вы вряд ли столкнётесь с непобедимым противником - сложность постепенно повышается по мере удаления от стартовой позиции, но растёт и награда.

Пример этажа подземелья
Пример этажа подземелья

Сохранение игры осуществляется только между этажами - если игрок погибнет, то этаж генерируется и начинается заново. Сохраняется только состояние и инвентарь игрока на момент начала этажа. Этим я упростил с трудом дававшийся мне момент с сохранением (и последующей корректной загрузкой) большого количества данных о всех объектах с их состояниями на уровне. Также мотивирует игрока играть аккуратнее.

В дальнейших планах добавить новые типы генерируемых карт (лес, пустыня) со своими ландшафтными особенностями и фауной. Так же планирую после релиза выпустить несколько бесплатных dlc с новыми биомами и типами приключений, но, как и с датой релиза, сейчас это всё очень неопределенно.

Забег начинается здесь - у столика с кофе. Старые терминалы служат для покупки апгрейдов, а соратники всегда помогут дружеским напутствием.
Забег начинается здесь - у столика с кофе. Старые терминалы служат для покупки апгрейдов, а соратники всегда помогут дружеским напутствием.

Всем творческих успехов!