Пост о том, как мы с другом начали делать нашу первую 3D игру

Ну и сразу, конечно же, захотелось, чтобы там были экшон, корованы, кооператив, чтобы это прямо обязательно рогалик был! Почему мы так любим усложнять себе жизнь?

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

Пост о том, как мы с другом начали делать нашу первую 3D игру

Кто я, что я?

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

Сразу отмечу, что это рассказ не совсем-совсем новичка в геймдеве. У меня есть определенный опыт в разработке игр, но только в 2D, а если еще конкретнее — пиксель-арт. Этот опыт всегда был во многом весьма поверхностным — все мои задумки воплощались исключительно на Construct 2-3. Но даже годы регулярной работы в Construct с большинством так не выпущенных проектов очень хорошо подтянули меня в графике, геймдизайне, UX/UI, написании и структурировании историй, разработке алгоритмов и принципов разных игровых механик.

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

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

Мне нравилось раньше просто рисовать свои пиксели, затем за 5-10 дней собирать из них прототипы на Construct с одной-двумя играбельными механиками (затем по разным причинам забрасывать их и не выпускать). Это длилось примерно с 2015-го по 2021-ый год. В итоге за все эти годы я выпустил только одну полноценную игру, а все остальное так и остается нереализованным, недоделанным, заброшенным.

Параллельно с моими попытками что-то родить, я все эти годы раз за разом погружался на месяцы в Unity (хотел переехать со своим пиксель-артом на C# с Construct, который уже ни в какую не тянул мои задумки) . Многократно тратил десятки часов на разные туториалы и гайды по реализации интересных мне фич, опыт накапливался, понимание C# регулярно росло, но я каждый раз сдувался и сдавался, считая, что трачу очень много времени не туда, так и не приступая к работе над полноценной игрой на Unity. Так и продолжал мучить Construct, пока не осознал обратное.

И вот в конце 2021-го года меня пробило на тему того, какую я хочу сделать игру в 3D для своей души. В тот момент я уже более полугода работал вне геймдева, и играми практически не занимался — на такого рода дополнительные активности мне просто не хватало времени и сил.

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

Это то, до чего я дошел в работе над этой игрой для души. Что это? Зачем? Да какая разница, запомним ее такой и забудем.
Это то, до чего я дошел в работе над этой игрой для души. Что это? Зачем? Да какая разница, запомним ее такой и забудем.

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

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

Допустим, это Маркус Перссон, которому… да все равно ему что там с его титрами
Допустим, это Маркус Перссон, которому… да все равно ему что там с его титрами

Я скоро пришел к мысли, что получается довольно нишевая игра, которая после релиза мгновенно пришла бы к циклу жизни мухи дрозофила. Когда такое происходит, это неописуемо удручает, руки опускаются, ты выгораешь и, вероятно, можешь даже закрыть для себя тему геймдева, если не навсегда, то на очень большой срок. То ли в плюс, то ли в минус моему восприятию, но я научился защищаться от таких эмоциональных упадков очень спорным способом. Для меня лучшим решением в таких ситуациях очень скоро стало отложить/заморозить/переключиться на другое. Что, в конечном итоге, и произошло и в этот раз. На фоне разных личных проблем подобные ситуации стали привычным жизненным циклом.

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

После всех скитаний я оказался здесь

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

По рогаликам у меня очень давняя боль — я много раз пробовал себя в этом, но постоянно упирался то в технические ограничения при реализации своих идей в Construct, то в нехватку знаний по созданию нужных алгоритмов и систем. Один из таких проектов даже прошел Greenlight в далеком 2017-ом году и все еще висит в закромах моего партнерского аккаунта Steam.

Вот тебя-то я точно выпущу одной из следующих игр!

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

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

Но внезапно в конце октября в раннем доступе появляется Lethal Company от разработчика-одиночки Zeekerss. Первые пару недель я просто не обращал на эту игру внимание, но все чаще и чаще попадающиеся в моих лентах шортсы, рилсы и тиктоки, заставляли меня смеяться и чувствовать такой большой прилив эмоций от разнообразия пугающих и одновременно веселых геймплейных ситуаций, что невольно стали посещать мысли в духе «блин, а я бы мог сделать что-то подобное»?

Забавно, что Lethal Company генерирует контент больше благодаря тому, что ею активно занимаются мододелы, пока Zeekerss рисует фурри на стримах ¯\_(ツ) _/¯

Вот тут, полагаю, меня уже могут начинать пинать, ведь я, судя по всему, решил делать игру-клон ради того, чтобы хайпануть на успешном проекте и уехать в закат с годовым запасом доширка, на который потрачу все свои миллионы копеек, заработанных с клона. Но нет, все несколько иначе. Внутренние вопросы к себе породили множество идей, которые я не увидел в Lethal Company, да и сомневаюсь, что увижу в силу уже сложившегося концепта этой игры. Мы все неоднократно наблюдали кооперативные хорроры, которые были как страшными, так и смешными, но все было не тем, какой оказалась Lethal Company, как бы вы к ней не относились. И вот, поток странных и необычных идей накрыл меня так сильно, что я загорелся развить эту тему, занявшись разработкой своего кооперативного хоррора, который не пытался бы стать просто больше, просто лучше или просто визуально реалистичнее Lethal Company. Суть в том, чтобы сделать просто другую игру на основе концепции Zeekerss’а, которая будет выделяться уже своими особенностями. Самое классное для меня оказалось то, что это и хоррор, и рогалик, и корованы здесь можно попробовать реализовать!

Вот здесь, к слову, свое влияние и оказал последний заброшенный проект. Если бы за несколько предыдущих недель я не успел набить руку в 3D, вспомнить прошлый опыт работы в Unity и не углубился дальше, то уверен, что даже и не подумал бы браться за такой непростой проект. В общем, за пару недель эта концепция колоссально развилась «на бумаге» и получила название Fatal Terminal, а я, перевозбужденный от потока мыслей по своей новой игре, начал закипать и делать неестественные для себя вещи, которые никогда не проявлялись при работе над моими прошлыми играми.

Работа над игрой. Кровью и потом: Дедлайн

У меня есть друг, который несколько лет работает в 3D. Мы долгое время периодически обсуждали что можно было бы сделать вместе, но так ни к чему и не приходили, все по одной причине — я не хотел лезть в 3D. При этом мне комфортнее всегда было работать одному, ведь кто тебя лучше поймет, чем требовательный ты? Мне даже было проще потратить пару месяцев на безвылазное изучение блендера, чем начинать работать с кем-то вместе! Однако в итоге, с моим бешеным зарядом энергии и идей, сразу после окончательного решения взяться за разработку кооп-хоррора, я написал другу что-то в духе «Артур, мы вместе делаем кооперативный хоррор».

И дело пошло! Пошло сразу же, пошло быстро, а ведь я вообще раньше с сетевым кодом толком не работал, тем более с сетевым кодом в Unity. На ходу мы штудировали кучу материалов, туториалов и гайдов и изучали все-все-все, что только может понадобиться.

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

И тут внезапно появился первый и сразу же сокрушающий дедлайн, когда я случайно обратил внимание на уведомление о будущем фестивале в Steam — ИГРАМ БЫТЬ. Сходу мы решили, что Fatal Terminal должна быть среди участников ИГРАМ БЫТЬ. И вроде бы все круто, зарегистрируемся, до фестиваля далеко еще, времени много, все успеем подготовить!

Пост о том, как мы с другом начали делать нашу первую 3D игру

Только вот был в этом всем один большой нюанс — нужно было подать заявку на участие до конца февраля. Ну, хорошо, а что для этого нужно? Страница в магазине? Окей — сделаем 5-10 скриншотов, описание, баннеры, это же просто! Но показывать нам было толком нечего. На тот момент у нас уже была базовая сетевая часть с процедурной генерацией уровня, персонаж, войсчат в зародыше, болванка монстра для тестов (сам он просто летал за игроками без какой-либо логики дополнительных действий) и несколько пустых комнат, по которым мы могли бегать. Но этого всего было недостаточно, ведь для регистрации на фестиваль нужен еще и трейлер! И тут нам стало больно. А как? А что показывать? Это же фундаментальные вещи, на которые все обращают внимание, если делать, то так, чтобы не было стыдно что-то показать!

За день мы расписали план работ на полтора месяца с дедлайном в начале февраля. Почему в начале февраля, если завершение регистрации в конце? Потому что страницу игры сначала должны одобрить Valve, после чего мы ее публикуем и можем регистрироваться для участия в фестивале. Однако по моему опыту, далеко не всегда с первого раза страницу одобряют, а срок проверки может составлять 5-7 рабочих дней. Я заложил время на 2 возможные итерации оформления: первая для указания модераторами на наши возможные ошибки, и вторая уже со всеми исправлениями, готовая для финальной публикации страница.

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

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

Друзья начали бегать, как ошалелые, и нажимать все подряд кнопки, случайно обнаруживая как можно заспавнить монстров, подбираемые предметы, заваливать комнаты этими предметами. А монстры, к слову, уже умели убивать. В итоге около 20 раз мы перезапускали сессию, потому что либо кто-то в какой-то момент за текстуры проваливался и бесконечно падал в космосе, либо монстры выкашивали всех игроков, либо игра начинала у всех лагать от горы заспавненных предметов с физикой. В общем, произошел непроизвольный стресс-тест доступных в тот момент механик.

Пост о том, как мы с другом начали делать нашу первую 3D игру

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

Спустя пару часов мы решили, что наснимали достаточно видео и решили закончить с футажами, хотя и у меня, и у друга оставалась душащая мысль, что там полный ужас, и придется писать сначала. Но все равно, уже было поздно, мы устали и решили, что нужно лечь спать, специально не просматривая детально футажи и не мучая себя вопросами «что с этим делать?!» перед сном.

На следующий день я обнаружил, что получилось, на мой взгляд, неплохо, с этим можно было работать. К счастью, один классный музыкант помог нам с треком для трейлера, и я мог с ним что-то сделать, подставляя футажи под музыку. За несколько часов я смонтировал черновой вариант трейлера. На следующий день после всеобщего одобрения друзьями сделали несколько правок, прикрепил его к страничке игры в Steam и после некоторых изменений в баннерах посреди ночи отправили Valve.

Таким получился финальный вариант

Спустя 3 дня я получил письмо — страница проверена и одобрена для публикации, да еще и с первого раза, без правок! Для меня это всегда ощущается, как будто ты уже прошел половину пути до релиза — сильно воодушевляет и мотивирует работать дальше. Так и сейчас. Мы опубликовали страницу в Steam, зарегистрировались в фестивале и смогли выдохнуть.

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

Если вам было интересно почитать мой поток мыслей и слов, если вас заинтересовала игра, то я буду с радостью делиться новыми подробностями разработки по мере развития Fatal Terminal. Здесь я умышленно не давал какого-то глубокого описания нашей игре, поскольку пост скорее про то, как мы начали делать игру, а не совсем про саму игру. Если появится запрос на продолжение, я поделюсь деталями по тому, как мы строим вселенную игры, а так, ключевое описание есть на странице игры Steam, которую я оставил чуть ниже.

Кстати, если будут желающие посмотреть за нашей деятельностью более пристально — ссылки на наш telegram-канал тоже есть внизу. Там нас немного, но мы плотные!

Сейчас вы находитесь =здесь= в истории создания Fatal Terminal, которая только начинается. Спасибо за внимание!

3131
11 комментариев

Наконец-то, новый жанр, литалкомпанилайк

9
Ответить

Без шуток, я уже думал о том как это странно звучит

1
Ответить

Стиль, добавил в вишлист, удачи с проектом!

3
Ответить

Спасибо! Это только начало, потом будет еще лучше!

Ответить

Читая твою историю, я местами узнавал себя. Но дочитав до конца, я получил ещё и порцию мотивации. Надеюсь тоже окончательно перееду в 3D с заброшенных проектов констракиа. Спасибо за это! Проект уже в вишлисте, желаю тебе удачи и больших продаж!))

2
Ответить

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

1
Ответить

Какое сетевое решение использовали? NGO/Mirror/Photon или другое?

1
Ответить