Бункер 21. Исповедь разработчика #0

Всем привет! Меня зовут Пётр! Как-то я писал всякое про игры, когда их разрабатывал. Одной из таких является "Бункер 21". Знаковый для меня проект.

Недавно я опубликовал пост и поделился своей небольшой радостью - игра вышла в ТОП лучших игр в App Store.

Хочу выразить всем огромную благодарность за то, что разделили со мной моменты радости! Я просто в таком шоке пребывал, что люди могут писать слова поддержки просто так, по-доброму, без стёба и насмешек. Спасибо!!! Я физически не успевал даже банально следить за тем, с какой скоростью летят комментарии! Это что-то невероятное. Такого мощного заряда я давно не ощущал!

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

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

Для справки.

Сегодня игра отметилась следующими достижениями [которые многие лично застали]:

- Google Play - 1 место в категории "Приключения"

- Google Play - 18 место в категории "Лучшие игры" вне категорий

- Google Play - 2 000 000+ установок

- Google Play - 30 000 отзывов, с общей оценкой 4.8 (где-то 4.7, где-то 4.9)

- App Store - 1 место в категориях "Приключения", "Экшн"

- App Store - 1 место в категории "Лучшие платные игры" вне категорий



Предисловие


Начну с того, что это не история "успеха" в её привычном понимании.

Я не проснулся знаменитым, не стал миллионером, ничего внезапно на меня не сваливалось.


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


Начну с того, чего я ожидал, когда начинал разработку.

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


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

Таковым и стал Бункер. Названия у него на разных этапах было разное:


- In Head (DEMO игры)

- Бункер 3D (попытка сыграть на ностальгии бывших владельцев телефонов с J2ME)

- Подземный Бункер 3D (примерно тоже самое)

- Бункер 3D (вернулся к "истокам")

- Бункер 3D Сюжетный Квест (добавил ключевых слов)

- Бункер 2021 - Игра с Сюжетом (продолжил эксперимент)

- Бункер 2K21 (гугл запретил использовать даты в названиях)

- Бункер 21 - Сюжет Offline (нужно больше поисковых фраз)

- Бункер 21 - Выживание с Сюжетом (текущее и последнее)

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

Как можно видеть, я пытался сделать название понятным как людям, так и поисковому алгоритму Google Play.


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


Помимо манипуляций со страницей, я также четыре (ЧЕТЫРЕ, КАРЛ!!!) раза переписывал игру с нуля. Прям с чистой страницы, ибо постоянно натыкался на неудобства из-за своей же недальновидности.

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


За всё время разработки я постоянно прокачивался в навыках. Я даже не предполагал, что делать игру, это блин не только "накидал на сцену объектов и В.У.А.Л.Я".

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


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


Продумывать приходится каждую мелочь. Вплоть до разных деталей типа "в начале игрок говорит, что читал в газете такие-то данные, в середине игры он должен подметить это, проходя мимо...[какая-то несущественная фигня]".

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

Игра выходила по главам. Каждая новая глава примерно раз в два месяца. Всего глав в игре пять, и последняя глава вышла совсем недавно. Суммарно я затратил на разработку игры ровно один год. С мая 2021 по май 2022.


При этом я не потратил ни рубля на раскрутку игры. Не привлекал маркетологов, аналитиков, астрологов... никого.


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


Пока я работал над игрой, я освоил следующие инструменты:

- Godot Engine (игровой движок)

- Blender 3D (моделирование)

- GIMP (работа с текстурами)

- Paint.NET (работа с текстурами)

- Wings 3D (моделирование)

- Audacity (обработка звука)

- LMMS (создание музыки и звуков)

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

Также я значительно прокачал знания по языкам GDScript и HLSL (модифицированная версия GLSL для шейдеров), освоил работу с Kotlin при написании модулей для Android, чтобы работала реклама от AdMob и РСЯ (реклама от Яндекс). Попутно освоил работу с XCode на Mac, чтобы создавать сборки для iOS (под айфоны).


Ну и по доходам. Заработал я за этот год примерно [скрыто] миллионов рублей. Цифру я раскрою в последней части этой истории. Но доход действительно исчисляется миллионами рублей.

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

Месяц первый.


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


Несмотря на сказанное мною ранее об одном годе разработки, с мая 2021 по май 2022, история эта началась году так в 2019. Месяц, к сожалению, точно не назову, но это и не имеет большого значения.


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


Прошло 40 минут, ролик закончился. Моему разочарованию не было предела. Мало того, что видео пОлно воды, так ещё и автор откровенно привирал, говоря сначала о том, что он создал клон [некоторой] игры, а по факту просто создал что-то совсем не похожее, ни визуально, ни в плане механик или геймплея.


Было досадно, но я всё же досмотрел видео до конца. Хоть я и расстроился потраченному времени, меня посетила мысль.

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

"Я ведь тоже блогер! У меня есть аудитория, ей такое будет интересно!".


Начал продумывать идеи. Разработка должна быть интересной. Именно сам процесс. Интересный и мне, и зрителю - это будет самый кайф!


Прошла неделя.


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

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

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


Нужно переосмыслить концепт мероприятия.


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


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


Я немного посчитал, что всё, что я могу сделать за час без скринкаста, с записью видео может длиться до трех часов. Жуть! А если работы по плану - месяц? Вот-вот.


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


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


Начался второй месяц разработки игры.

Бункер 21. Исповедь разработчика #0 Gamedev, Мобильные игры, Личный опыт, Инди, Длиннопост, Инди игра, Разработка, Godot Engine, Blender

Продолжение следует!


PS: Друзья, отпишитесь пожалуйста, интересно ли вам будет это чтиво. Не хочется тратить время впустую, ни своё ни ваше.


PPS: Простите, если кому-то не угодил. Я обычный человек, как и все.

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"