Как мы за 48 часов на хакатоне игру делали

И почему мы будем участвовать в новых хакатонах снова

В середине апреля мы в SATORI Ent. впервые решили выйти из своей зоны комфорта. За два года существования студии мы почти полностью работали над одним большим проектом BERENICE: videogame, поэтому команда у нас была маленькая.

Как мы за 48 часов на хакатоне игру делали

На идею поучаствовать в хакатоне согласились только я — разработчик — и один из композиторов. Без бюджета. Без грандиозных планов. Только ради драйва и ради того, чтобы показать, что SATORI живет.

Честно говоря, поводом послужило ещё и то, что в чате и в комментариях в Telegram канале царила полная тишина. Иногда мне кажется, что подписчики SATORI вообще не интересуются играми, а всё, что делается, — это будто бы только для себя и для маленькой команды, которую я каждый раз собираю под новый проект. Хотелось наконец-то сделать что-то живое, что-то, что сдвинет этот лёд.

О чем пойдет речь

  • Подготовка и создание плана
  • Брейншторм и концепция
  • Эскизный документ: набросали скелет игры
  • Разработка MVP
  • Бета-тест черного экрана
  • Отправка на джем
  • После джема
  • Итог

Подготовка: создание плана

Перед стартом я как обычно организовал все рабочее пространство:

  • Таблицы задач в Google Docs
  • Карты идей в Miro
  • Чёткое планирование: брейншторм → концепция → эскизный документ → MVP → тестирование → правки.

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

Брейншторм и концепция

По началу, мы даже не смотрели на предложенные темы и не предлагали. В итоге, организаторы анонсировали две темы: "Мир без времени" и "Нулевые характеристики".

Мы взялись за брейншторм. На Miro появлялись всё новые идеи: персонаж без памяти, временные окна, механика выбора. И тогда родилась концепция:

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

Из референсов было только один концепт-арт с Pinterest - главной героини.

Эскизный документ: набросали скелет игры

На втором этапе мы написали первый эскизный дизайн-документ. В нём:

  • Идея "временных окон", где можно двигаться только в определённые моменты.
  • Поглощение NPC с моральной дилеммой: стать кем-то или исчезнуть, сохраняя мир.
  • Атмосфера застывшего времени, пульсирующего дыхания мира.

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

У игры, как и у документа - названия не было. Но только в последние минуты дедлайна, оценив все написанное я написал первое попавшееся в голову слово - "Паразит"

Разработка MVP: баги, код и эмбиент

Я взял движок — Godot 4, потому что он простой и легко компилирует под HTML5 - буквально за пару минут. Сразу занялся основной механикой движения, система "временных окон", поглощения способностей и этими способностями.

Итог первого дня разработки.

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

Композитор за это время сделал:

  • Главную тему в жанре эмбиент-минимализма
  • Постоянный атмосферный эмбиент для мира
  • Спецэффекты для поглощений и временных окон

Один из треков, написанных композитором

Техническое ТЗ для композитора звучало как музыка безысходности:

  • эмбиент с glitch-шумами
  • тревожные вдохи во время поглощений
  • тихие обрывки мелодий
  • дыхание мира

В целом, мы как будто и успевали все. Но это только казалось...

Бета-тест черного экрана

К утру второго дня я начал финальную сборку. Планировал выпустить только для подписчиков бета версию на sat-ent.com и собрать фидбек, чтобы на джеме вышло качественно. Всё шло по плану, пока... на сайте появился чёрный экран.

Godot4 сломался: autoload-синглтоны не подхватывались в HTML5-билде. Логи молчали. Сайт показывал пустоту.

Ситуация была безнадёжной. На исправление оставался один час. И знаете, что самое страшное? Это уже случалось в SATORI раньше.

В 2021 году я готовил к релизу первую игру бренда — "No Remorse". Тогда я тоже в последний момент столкнулся с багом Unreal Engine 4.26, который ломал сборку. Тогда исправление заняло почти год.

Сейчас — у меня был один час.

Что я сделал? Пересобрал весь проект с нуля.

Новое окно. Новый проект. Новый билд. Вставлял всё вручную и тестировал.

На последнем часу до дедлайна хакатона компилятор соизволил упаковать все правильно и просмотреть кэш движка. Игра была отправлена в submission на itch, но артдизайна и нормальной полировки, к сожалению, я так и не успел сделать.

Отправка на джем уже как победа

48 часов — звучит весело, пока не наступает последние пару часов. Особенно когда половина времени уходит только на механику, которую ещё надо отладить, объяснить игроку во время игры и хотя бы как-то "упаковать" в презентабельный вид.

К концу второго дня стало очевидно: кое-что я физически не успел. В игре остались спрайты-заглушки вместо артдизайна. Сюжетные квесты и диалоги хоть и были написаны, но финальную интеграцию я уже не потянул. Анимированные катсцены? Их черновики тихо лежали в папках, но в самой игре до релиза так и не попали.

Зато: механика работала. Временные окна мерцали, "поглощение" действительно давало способности, физика перетаскиваемых предметов вела себя как надо. Саундтрек и звуки — отдельная гордость: композитор реально вытащил всю атмосферу на себе.

Игроки, правда, не сразу понимали, как вообще нужно играть. В комментариях под игрой я несколько раз объяснял механику и давал подсказки. Но знаете что? Всё равно было приятно. Хоть какой-то живой фидбек, хоть какие-то вопросы, обсуждения.

И тут встаёт странная и немного печальная вещь: В официальном телеграм-канале и в чате на игру почти никто не отреагировал. Как будто часть аудитории подписана "для галочки", а сами проекты их не цепляют. Иногда кажется, что мы работаем в пустоту — и это, наверное, самая тяжёлая часть всей истории начала SATORI. Но это точно не повод останавливаться.

Позже, на стриме жюри, нашу игру включили в третьей части обзора проектов. Организаторы оценили идею: задумка им действительно понравилась, мир и механика показались интересными. Но в отзывах прозвучало честно: "игра сырая, баги мешают, нужно много дорабатывать, много чего непонятно".

У нас в чате выпустили хайлайт с этого стрима — посмотреть его можно по ссылке.

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

После джема

Страничка игры на сайте sat-ent.com
Страничка игры на сайте sat-ent.com

После завершения Джема я сразу решил продолжить работу над "Паразитом" и открыть его для всех желающих. Теперь открытую бету можно протестировать прямо на сайте — через браузер на странице Gameshop. Никаких установок, никаких лишних движений. Просто заходите и играйте.

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

Первый серьёзный патч для "Паразита" уже вышел. Что нового?

  • Исправили баг, из-за которого при рывке можно было улететь за край карты.
  • Доработали инвентарь: теперь он обновляется динамично, без перезагрузки.
  • Добавили полноценный функционал способностей: все поглощённые умения сохраняются в отдельном меню и могут быть восстановлены через новый предмет "Эхо".
  • Расширили механику замороженного времени: теперь способности теней можно увидеть заранее — это откроет секретные проходы на поздних этапах.
  • Ввели "окно смерти" и систему чекпоинтов с привязкой к аккаунту (если вы авторизованы на сайте).
  • Переделали спрайты главного героя и теней — теперь визуально всё лучше соответствует атмосфере мира.
  • Оптимизировали таймеры временных окон: в разных зонах теперь разные ритмы, что делает игровой процесс более "пульсирующим" и музыкальным.

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

Ниже фотографии с катсцен, которыми мы сейчас дополняем игру.

Если вам интересен этот проект, если хочется увидеть, как "Паразит" эволюционирует прямо на ваших глазах — присоединяйтесь к нашему комьюнити и помогайте нам делать эту вселенную ещё глубже.

Итог

В целом, нам понравилось в первый раз участвовать в джеме, чтобы протестировать свои способности. Мы вышли с новым опытом, с самим композитором намного больше сработались. Кроме того, мы вышли с новый IP, который во всю развивается на нашем сайте.

Будем участвовать еще. Спасибо за внимание.

Где нас найти:

6
10 комментариев