SUPFLY – как создать службу доставки за три дня

​Промо-арт SUPFLY на <a href="https://korogames.itch.io/supfly" rel="nofollow noreferrer noopener" target="_blank">itch.io</a> <a href="http://koro.games/" rel="nofollow noreferrer noopener" target="_blank">koro.games</a>
​Промо-арт SUPFLY на itch.io koro.games

Игра была сделана в рамках Siberian Game Jam 2020 за три дня, хочу поделиться процессом разработки! В последнюю версию можно поиграть в браузере или на Windows:

Концепция

Тема этого джема «Человечеством правят...», а мы как раз обсуждали, что в сложившихся условиях вся власть окажется у служб доставки. Таким образом, было решено делать игру про доставку вещей. Нужно было придумать геймплей и выбор встал между игрой-менеджером и аркадой.Выбрали... оба варианта! Теперь нужно было соблюсти баланс между экшеном и разнообразием.

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

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

Управление частично перекочевало из Flappy Bird, хотя и стало менее хардкорным и более отзывчивым. (Летать роботом действительно получилось очень приятно!)

​Кривые и быстрые наброски — ключевая часть разработки концепта <a href="http://koro.games/" rel="nofollow noreferrer noopener" target="_blank">koro.games</a>
​Кривые и быстрые наброски — ключевая часть разработки концепта koro.games

Организация

Для меня это не дебютный джем (кстати, про него я писал тут), поэтому первое, что мы сделали с моим напарником — распределили задачи в trello и настроили git.

Это очень важно, если вы не хотите тратить время на одни и те же задачи, и сталкиваться с вопросом "Так. А что делать дальше?..."

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

​Использовать Trello в качества баг-трекера и бэклога удобно с маленьким проектом <a href="http://koro.games/" rel="nofollow noreferrer noopener" target="_blank">koro.games</a>
​Использовать Trello в качества баг-трекера и бэклога удобно с маленьким проектом koro.games

Разработка

Чтобы не тратить время на рисование, мы выбрали пикселизацию и ограничение в 3 цвета. таким образом все спрайты рисовались быстро и не было проблем с настройкой палитры.

​Прототипом главного героя стал WALL-E — квадратный робот с добрыми глазами. Поэтому для большей эмоциональности у нашего робота появился подвижный глаз и руки koro.games

В рамках сжатых сроков нужно было создать максимальное разнообразие. Поэтому я снова сделал процедурную генерацию окружения. Я использую ее почти в каждой игре, мне это действительно нравится! (1, 2)

Кроме того, каждый дом содержит места для размещения пропсов, таким образом, сделав 10 видов домов и 6 элементов экстерьера, мы получили тысячи вариантов городской среды.

Задний фон тоже генерируется из префабов!

Алгоритм генерации новых домов следующий:Каждый дом при спавне проверяет, есть ли у него соседи. Если сосед справа, то спавнится левый дом и так далее. Префабы энвайронмента спавнятся при спавне самого дома.

​Генератор окружения, в этой версии всего 2 варианта дома. koro.games

Чтобы не позволить игроку расслабиться на полет тратится энергия. Логичным стало и создание станций подзарядки. Была идея сделать отдельную шкалу степени поломки робота от ударов, но эту задачу на себя взяла та же шкала уровня заряда, чтобы не портить аркадность.

Было несколько вариантов процесса зарядки, проще был беспроводной, но уж очень хотелось поиграться с кабелями!

​Для полной зарядки достаточно пары секунд. Вперед за новым заказом! koro.games

Чтобы поиск места доставки или самого груза был не таким тривиальным у каждого дома был сделан вход, который виден, только если подлететь к нему вплотную. Сначала думали сделать максимально хардкорно, но затем все же облегчили задачу и добавили подсказки на миникарту.

Кстати миникарта — это обычная проекция определенного слоя со второй камеры на текстуру интерфейса.

​Поторопитесь, с каждой секундой награда все меньше! koro.games

Заделом на будущее стало добавление управление мышью. Таким образом, адаптировать игру под мобильный будет намного проще. Как показало тестирование играть удобно как на клавиатуре, так и на тачскрине и мыши.

​С окружением можно взаимодействовать — есть много разных активностей. Может, за выполнение определенных стоит давать ачивку? koro.games

Финальные штрихи

Последний день я выделил на оформление игры и тестирование. Сделал меню, нарисовал промо-арт, записал звуки и музыку в меню. Отдельно о том, как записывался звук вращения лопастей :)

Сначала хотелось записать много звуков разной высоты, но было найдено более элегантное решение!

​Вот как происходит запись звуков (За обросший внешний вид спасибо карантину) koro.games
​Каждый новый звук вращения сопровождается выбором одного из двух звуков из списка, а также случайной скоростью воспроизведения. Так финальный звук полета не звучит монотонно. <a href="http://koro.games/" rel="nofollow noreferrer noopener" target="_blank">koro.games</a>
​Каждый новый звук вращения сопровождается выбором одного из двух звуков из списка, а также случайной скоростью воспроизведения. Так финальный звук полета не звучит монотонно. koro.games

Что дальше?

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

Игра почти готова для порта на мобильные, так что и этот момент не за горами.

Жду комментариев и советов, а так же приглашаю подписаться на наш блог об инди-разработке. Так выходит, что игры у нас выходят каждые две недели, поэтому интересного контента очень много!

66 показов
105105 открытий
4 комментария

Привет! Рад прочитать, что вы готовитесь к полноценному релизу! Как мне кажется, одна из наиболее интересных механик на джеме.

Каким способом/инструментом/как вы сделали гибкий провод при подключении? Смотрится хорошо. 

Ответить

Спасибо! Тут использование метода Верле (https://en.wikipedia.org/wiki/Verlet_integration) для создания симуляции физики. Визуализация через LineRenderer.

Ответить

Служба доставки, Володя - есть в этом что-то знакомое... https://youtu.be/wt-jj1qNScI

Ответить

Не ну амазон нервно курит в сторонке - он то точно не за три дня создавался)
Ну а по серьёзному - трелло как раз таки неплох для небольших проектов. Сам им пользовался. Правда если ты один он не слишком помогает если с самоорганизацией проблем нет.

Ответить