В космосе никто не услышит твой крик

Длинный рассказ об инди-игре, вдохновленной Alien: Isolation.

краткая суть: проснулся, побегал, умер

Аниматор-инди

Больше десяти лет я работаю 2d аниматором в различных геймдев компаниях.
Как и многие люди из индустрии, после работы я тоже делаю игры, только уже инди.
В чем плюс работы аниматором в геймдеве?
Ты постоянно находишься между трёх стихий: арт, код и геймплей.
Художник передает тебе красивые картинки (персонажей, бэки, элементы интерфейса), который надо заанимировать.
Программист хочет, чтобы этот заанимированный арт работал с определенными техническими нюансами.
Геймдизайнеру нужно чтобы красиво шевелящийся и технически правильно подготовленный арт хорошо игрался: бежал по уровню, замахивался мечом ровно 0.3 секунды и получал критический дамаг ядом в прыжке.

занимаюсь чем-то таким

Когда на протяжении десяти лет общаешься с людьми разных профессий, начинаешь немного понимать и в коде, и в арте, и в геймдизайне.
Эти знания весьма поверхностны. Например, сам рисовать ты не начнёшь, но кое-что будешь знать о композиции, цвете и анатомии. Программистом ты не станешь, но будешь немного понимать, как устроена архитектура проекта и чем if отличается от else. Полноценным геймдизайнером называть себя тоже не стоит. Но и тут кое-что в голове осядет.
В общем, ты, может, и не умеешь полноценно рисовать, кодить и расписывать таблицу прогрессии игрока, но более-менее понимаешь, как игра должна быть устроена, нарисована и как должна играться.
Кроме того мой опыт помогал (иногда) не допускать уж совсем очевидных ошибок начинающего разработчика, вроде создания mmorpg.

Выбор идеи для игры

Поскольку я работал в основном над мобильным free-to-play, то не брезговал время от времени прочесывать Google Play на предмет игр с интересными механиками.
Однажды я наткнулся на интересный экземпляр (найти его в 2022 году я не смог).

Монстр движется по коридорам, рандомно выбирая поворот на развилках. Игрок не знает, свернет ли монстр к нему или пройдет мимо. Если игрок оказывается в поле видения монстра, монстр бросается в погоню.

рандомное движение монстра
рандомное движение монстра

Догнал — смерть героя и рестарт уровня.
Цель игрока — собрать все «монетки» и покинуть уровень через выход.
Игра очень простая. Но сочетание того, что монстр движется рандомно и то, что он быстрее игрока, порождало очень много напряженных ситуаций. Иногда ты буквально молился, чтобы враг не свернул в уютный закуток, где ты пытаешься отсидеться.

Игра была очень неудобная в управлении, короткая и однообразная. Мне очень захотелось поиграть во что-то похожее, но сделанное хорошо. Я думал, что это целый жанр. Но, к сожалению и недоумению, таких игр больше не было.
Недолго думая, я решил сделать свою игру. Основная механика — такой же упрощенный стелс, но сдобренный разнообразными монстрами, абилками героя и мета-геймплеем. В общем, сделать немного больше, капельку навороченнее и, конечно же, на ПК, а не на богомерзкие мобилки.
Приключение максимум на полгода. Зашли и…

2016 год. Первая попытка

Первая попытка состоялась в 2016 году на небезызвестном геймджеме Kanobu.
Я познакомился с программистом-энтузиастом, работающим на движке Unity, заплатил знакомому художнику за арт и проект стартовал.

В космосе никто не услышит твой крик

Был выбран сеттинг фэнтезийных воров: смесь игр серии Thief и мультфильма «Korgoth of Barbaria». Предполагалось, что у игрока в распоряжении будет целая Гильдия Воров в средневековом городе. Надо было выстраивать отношения с фракциями, следить за лояльностью героев-воров. По ночам надо было, играя за этих воров, обчищать особняки, гробницы и магазины.

первый вариант арта
первый вариант арта

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

так игра выглядела в свои лучшие времена. UI слегка мобильный из-за моей профдеформации :)
так игра выглядела в свои лучшие времена. UI слегка мобильный из-за моей профдеформации :)

Но, спустя примерно год со старта, пришлось расстаться с программистом.
Несколько месяцев я искал нового кодера. Разумеется, энтузиаста, так как платить и за арт и за код я не мог. Но не срослось.
Потеря любого члена команды тяжело бьет по инди-проектам, а программиста — особенно. Проект застопорился.

Типа-программист

Раз найти никого не получилось, решено было попробовать заниматься программированием самостоятельно.
У меня был небольшой опыт с Unity. Изучать подробно Юньку я не видел смысла, так как там Настоящий Язык Программирования C#. Мне казалось, что программист — это человек почти обязательно с высшим техническим образованием. И зачем мне с неоконченным гуманитарным туда лезть?
Время от времени я делал небольшие прототипы на Construct. Там программирование визуальное.

Construct 2
Construct 2

Но движок считается слабым, серьезные разработчики на нем ничего не делают (на самом деле, некоторые делают). Поэтому создавать что-то на Construct тоже не стал.
Я решил попробовать нечто среднее между этими двумя движками — Game Maker. Там есть визуальное программирование для гуманитариев. И в тоже время на нем были сделаны весьма успешные Hotline Miami, Hyper Light Drifter и Peace Death.
В общем, выбор пал на этот движок.

визуальное программирование в Game Maker Studio 2
визуальное программирование в Game Maker Studio 2

Где-то полгода я делал на нем прототипы, используя визуальное программирование. И в итоге понял, что готов попробовать сделать ту самую игру про монстра в коридорах самостоятельно.
Довольно часто решить задачу стандартными методами визуального программирования не получалось. Для таких ситуаций в Game Maker существует специальный блок, куда можно вписать настоящую строку настоящего кода как настоящий программист.

тот самый блок Execute code
тот самый блок Execute code

Постепенно я все чаще и чаще стал использовать блоки с кодом. Строчек в них становилось больше и больше.
Стало ясно, что программирование — это совсем не страшно.
В августе 2018 года я переписал прототип игры про монстра в коридорах кодом, без использования визуального программирования.

2018 год. Вторая попытка

Помимо проблем с поиском программиста у прошлой версии игры были и другие проблемы. Задуманный мета-геймплей с Гильдией Воров обещал быть просто неподъемным. Решить эту задачу просто, но интересно мне не удалось: все время получалась урезанная This is the Police про плохишей.

набросок урезанной This is the Police про плохишей
набросок урезанной This is the Police про плохишей

К тому же мне очень хотелось поменять сеттинг, так как старый приелся. И я бросил фентези, чтобы перейти на sci-fi.

Я люблю фантастику про мрачный безграничный космос. В частности, вселенную Чужих. С удовольствием прошел Alien: Isolation. Кроме того, мне очень понравилась сюжетная ветка про путешествие космических ковчегов в книге “Город Бездны” Аластера Рейнольдса.
Решил вместо выживания на «Севастополе» устроить стелс на огромных ковчегах.

Ковчеги "Арго", "Осирис" и "Иггдрасиль" начинают свой путь (скетч)
Ковчеги "Арго", "Осирис" и "Иггдрасиль" начинают свой путь (скетч)

В итоге концепция сложилась следующая.
Три ковчега. Команды ковчегов, по классике, заражены, а управление передано искусственным интеллектам этих самых ковчегов.
Чтобы разобраться, что случилось ИИ одного из ковчегов выводит из анабиоза первого колониста.
Когда гибнет первый (а он, поверьте, уж точно погибнет), ИИ будит следующего. И так далее.
Колонистов ограниченное количество, и, теоретически, они могут закончиться. От количества оставшихся в живых колонистов зависит концовка игры.

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

Колонисты, руководствуясь указаниями ИИ, продвигаются все дальше и дальше, из отсека в отсек, по кишащему монстрами ковчегу.
По пути они открывают шлюзы — точки возрождения, типа костров из Dark Souls.
Так же шлюзы - это точки быстрого перехода. Через шлюз можно выйти в открытый космос и перемещаться вдоль обшивки ковчега, чтобы добраться до другого шлюза.

Кроме того, на шаттле можно долететь и до остальных ковчегов флотилии, пристыковаться к ним и проникнуть внутрь.
Все вместе склеилось в некоторое подобие Alien: Isolation в 2d.
Это стелс с видом сверху, с элементами хоррора. Местами хардкорный. С тремя ковчегами, тремя искусственными интеллектами (цель которых сохранить именно свой ковчег), поиском sci-fi гаджетов, колонистами, которые могут закончиться и, разумеется, космосом, где никто не услышит твой крик.

трейлер

Девушки-колонистки

Я сказал колонисты? На самом деле, колонистки.
Первоначально думал сделать и мужчин и женщин. Начал с женщин.
Черты лица колониста выбираются случайным образом.

Конструктор Эллен Рипли

Когда я закончил делать конструктор лиц для женщин, заанимировал его и закодил, стало ясно, что проделывать все то же самое, но еще с мужчинами — выше моих сил.
Решил, а пусть колонистами будут только женщины. В конце концов, для увеличения населения колонии женщины важнее (эта тема раскрывается в игре) .
Кроме того, натыкался на исследование NASA, которое пришло к выводам, что для дальних полетов женщины подходят лучше мужчин из-за меньшей склонности к конфликтам. Так что, возможно, первыми колонизаторами Марса будут именно женщины.
Но, если вдруг кому-то не хватает мужчин, то заражённые, бывшая команда ковчега, точно мужчины!
А ещё в игре есть настоящий мужчина — мистер Царапка, но его ещё надо найти в рамках сайд-квеста.

не Джонси, а Мистер Царапка

Текущее состояние игры

Спустя четыре года разработки игра почти готова, ее уже можно полностью пройти.
Год назад вышло демо, которое доступно на Стим-странице.
Сейчас доделываю декоративные вещи, правлю баги и занимаюсь сайд-квестами. Планирую выпуститься 25 августа этого года.
Маркетинг делал на коленке. Рассылка демки ютуберам и участие в разных ивентах типа Стим-феста принесли, на данный момент, 2800+ вишлистов за 13 месяцев существования страницы (что, конечно, не много).
В ближайшее время планирую устроить закрытые предрелизые плейтесты, чтобы, если потребуется, скорректировать сложность. Так что, если есть желание поиграть в слегка недоделанную (и, скорее всего, слегка более сложную, чем нужно) игру, пишите в личку.

Что еще

Арт и звук заказывал на аутсорсе за свои кровные. Художник Никита и звуковик Руслан — обоих очень рекомендую. Анимация, код и геймдизайн — на мне.
Движок — Game Maker Studio 2.2.
Trello, чтобы не запутаться в своих же задачах.
Miro, чтобы составлять карту отсеков, раскидывать по ней чертежи, тайники и тексты, а так же для структурирования сюжета.
Google-таблицы для текстов и локализации.

Кстати, называется игра Starless, в честь песни King Crimson (а вовсе не того, о чем подумали знатоки хентая). Название придумывал в последний момент перед запуском демки, поэтому оно, хоть и красивое, не слишком логически обосновано:

Но мне все равно нравится (да и есть, например, Red Dead Redemption, от которого тоже confused)
Но мне все равно нравится (да и есть, например, Red Dead Redemption, от которого тоже confused)

Если есть вопросы — буду рад ответить.
Пробуйте демку, добавляйте игру в вишлисты, пишите, что думаете: )

7575
20 комментариев

Посмотрел первый ролик и сразу поверил в то, что это будет играбельно. С таким как ты я бы сотрудничал в будущем, чтобы проекты не делались по четыре года. Работаю под юнити уклон в программирование.

Вот мой текущий проект он уже стал лучше чем здесь https://nick-ryz.itch.io/grandmasters-revenge надеюсь скоро написать новость об улчшениях.

4
Ответить

🎵

2
Ответить

ага, она самая :)

1
Ответить

Спасибо за дельный пост и поздравляю с приближением важной ачивки - релиза!

Хотел бы почитать про нюансы работы с game maker, лайфхаки, общие рекомендации и т.п. Но это можно осветить в будущих постах, если будет желание ;)

Игру в вишлист закинул.

1
Ответить

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

из хинтов - как можно чаще использовать скрипты :)

1
Ответить

А на мобилки порт не планируется?

1
Ответить

вряд ли. на пк бы доделать

Ответить