История создания одной новогодней игры

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


Так началась разработка Animal Adventure: Downhill Rush.

История создания одной новогодней игры Gamedev, Разработка игр, Игры, Unity, Инди, Видео, Длиннопост

Сам по себе я инди разработчик. Ранее, в свободное от работы время, занимался изучением Unity (игровой движок), Blender (3д моделирование), Krita (текстурки порисовать и прочее). Изучение началось в далеком 2015 году. С тех пор за моими плечами вышло 3 проекта на мобильные платформы. Текущий, к слову, разрабатывался на фулл тайм. Последние 2,5-3 месяца и вовсе приходилось сидеть по 16-17 часов в сутки (к сожалению, релиз перенести можно всегда, а вот Рождественские и Новогодние праздники ну никак не поддавались переносу, пришлось делать все возможное, чтобы успеть в срок).


И тут мне сразу вспомнился недавний пост Инди Девелопер. Какая же это все-таки правда :D


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

- Specular (в моем случае это блеск от солнца на поверхности снега)

- Rim light effect (свечение объекта по контуру, хорошо можно увидеть на контуре елок, используемых в игре)

- Mixed lightmaps + shadowmask (тут все просто, компоновка динамического + статического освещения)

- Cubemap fog (туман, который тянется из кубомапы, а не просто одиночный цвет)


Собственно и все, по сути просто, найти решение в интернете да воплотить это все в рамках одного шейдера, но на практике оказалось все куда серьезнее, ибо ключевой момент был - оптимизация. Важно было запустить всю эту красоту в 60fps на Android + чтобы это все работало не 1-2 минуты, а минимум 10 минут без падения частоты кадров в силу нагрева устройства. Получилось ли у меня это сделать, сложно сказать, по отзывам вроде пользователи в восторге от оптимизации, думаю можно считать это маленькой победой :)

История создания одной новогодней игры Gamedev, Разработка игр, Игры, Unity, Инди, Видео, Длиннопост

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


Если немного отойти в сторонку, уровни у меня практически на 100% состоят из заранее подготовленных префабов. Ну кажется, какая тут может быть проблема, ну встроил ты префаб на сцену, скорее всего там будет некий ссылочный тип, много памяти есть не должно. Оказывается это совсем не так. Банальный инстансинг Particle System объектов в начале запуска сцены мог сэкономить порядка одного мегабайта за сцену. Долго не думая, я начал тестировать наиболее прожорливые компоненты, и пришел к выводу, что Audio Source, Particle System, TextMesh Pro UGUI стоит урезать настолько, насколько это возможно. Для сравнения приведу иерархию карточки уровня из игрового меню до и после:

История создания одной новогодней игры Gamedev, Разработка игр, Игры, Unity, Инди, Видео, Длиннопост

Подобные нехитрые манипуляции в итоге позволили избавится от почти 15 мегабайт лишнего веса. Итоговый apk-файл на данный момент находится в районе 69мб. В принципе, довольно приемлемый размер, не слишком большой, чтобы отпугнуть игрока от скачивания.


При разработке открыл для себя очень хороший инструмент: Trello. В нем я создал свой проект, разбил доску по категориям (To Do, Doing, Done и пару других). В рамках каждой категории просто создаешь карточку, описываешь в ней задачу, устанавливаешь эстимейты по времени, добавляешь необходимые детали и потом можно просто перетаскивать карточку из одной категории в другую. Например сегодня нужно работать над уровнем 10, пожалуйста, перетягиваем карточку из To Do в Doing и вперед за работу. Эстимейты помогают не расслабляться, без них можно не заметить, что какая-та задача отнимает слишком много времени, они позволяют строить планы на будущее, ориентироваться о приблизительных сроках завершения работы и многое другое. Не знаю, почему я раньше не использовал подобный инструмент, это останется загадкой :)

История создания одной новогодней игры Gamedev, Разработка игр, Игры, Unity, Инди, Видео, Длиннопост

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


Тут я безумно благодарен компании atlassian за их невероятные продукты для решения ежедневных задач, связанных с разработкой (и не только). Тут просто низкий поклон :)

История создания одной новогодней игры Gamedev, Разработка игр, Игры, Unity, Инди, Видео, Длиннопост

Очень хотелось бы отметить важность открытого бета тестирования в Google Play. Его я запустил ещё в конце сентября. Получилось чуть больше двух месяцев игра была на стадии открытого бета теста. За это время удалось набрать чуть более 40 тысяч установок (ну, радости особой это не прибавило, в основном это Tier 3 страны, от которых доход меньше чем 0). Но с другой стороны, я получил просто колоссальное количество отзывов по игре. Было безумно сложно, но в конечном итоге на выходе получилась чуть ли не новая игра. Так много неочевидных вещей были скрыты от замыленного за многие месяцы разработки глаза, что порой не замечал очевидных недоработок и прочих мелочей.


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


Настоятельно рекомендую хотя бы месяц подержать открытый бета тест. Сложно сказать, как получить большое количество игроков. С моей стороны я всего лишь делал посты в соц сетях (twitter, facebook, vk и инстаграм) и оно как-то само пошло. Кто-то добавлял игру в топ на ютюб (совершенно бесплатно, без моего ведома) и вот так получилось набрать за время бета теста установки.


Если у вас очень хорошая игра, то вместе с бета тестом обязательно стоит отправить заявку на Early Access в Google. Я отправлял, игра не прошла :( , но если все-таки получится, это может дать просто огромный прирост установок!


Помимо Early Access можно попытать удачу в Indie Corner. Заявку на неё я подавал в первый день после релиза и о чудо, вроде бы получил положительный ответ. Сказали подписать NDA и ждать дальнейших указаний. Жаль правда вот-вот наступают Рождественские каникулы в USA и видимо в подборку инди проектов я уже попаду после Нового года, а это немного грустно (если я вообще в неё попаду, мало ли что, ещё пока толком не понятно чем это все закончится).

Что имеем в итоге, релиз был 20-го декабря (в этот четверг). Пока потихоньку игра набирает установки, заказывал обзоры на ютюб (взял просто несколько каналов, которые использовал при продвижении своей прошлой игры). Сейчас посмотрю недельку, какой вообще будет выхлоп от всего этого (чувствую, никакой) и скорее всего попробую стучаться к издателям. Все-таки, если не родился с лишними 10-15к$, то запускать игру - это гиблое дело, ничего хорошего из этого не выйдет.


Как-то так, всех с наступающими новогодними праздниками :)

Лига Разработчиков Видеоигр

6.6K постов22.1K подписчиков

Добавить пост

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

ЗАПРЕЩЕНО:

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

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

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


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

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

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

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

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

1
Автор поста оценил этот комментарий

АВТОР , я поиграл игру. Я ее кстати ждал. Сказать что я в шоке, это не сказать ничего. Графон, стилистика, музон, все просто обалденно. Я вот уверен, что ты будешь богат с этой игрой.

раскрыть ветку (1)
5
Автор поста оценил этот комментарий

Спасибо, рад, что игра принесла столь положительные эмоции. По богатству :D я за вчера заработал около 3$ на рекламе, блин, и это без вычета налогов :(

показать ответы
Автор поста оценил этот комментарий

Российский аналог Trello - yougile.com Это как trello+telegram, каждая задача — чат. Есть бесплатная версия.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Зачем спамишь? Не стоит два раза повторять, все равно будем пользоваться Trello :)

1
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Спасибо, ну, посмотрим как время покажет.

1
Автор поста оценил этот комментарий
Напишите в apple и попросите featuring на старте, у нас так получилось 200.000 скачиваний, учитывая, что у нас были проблемы с ретеншеном.
раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Но там ведь фичеринг на старте за 4-6 недель просить нужно было. Опоздал уже.

показать ответы
3
Автор поста оценил этот комментарий

Где потестить то? Выглядит красиво по крайней мере.

раскрыть ветку (1)
5
Автор поста оценил этот комментарий

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

показать ответы
4
Автор поста оценил этот комментарий

Игра огонь, вангую успех :D Вообще сложно поверить что такое по силам сделать одному человеку) И тех. часть, и модели, и 2д, и звуки выглядят очень органично и на отличном уровне, телефон конечно греется но это проблема многих современных игр. А какие плагины использовал? Не хочешь написать статьи о тех части?

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Спасибо, я правда по аналитике вангую провал :( надеюсь получится скооперироваться с издателем и он поможет улучшить показатели ретеншена и прочие. По нагреву, пробелма в том, что игра идет в 60fps, ей выставить 30 и все будет спокойно, но тогда утеряется весь драйв и экшен :(


По плагинам, покупал несколько в ассет стор, чтобы сэкономить время разработки. Например сохранение в Keychain (iOS). Модели животных (от себя только скелет создавал и анимации свои прикручивал, но в любом случае получилось сэкономить не один месяц разработки) ну и ещё пару мелких.


По статье, хотелось бы поделиться продвижением более детально, но пока руки опустились.

показать ответы
1
Автор поста оценил этот комментарий

Но если честно, меня зафичерили после смены иконки. А так 4-е года никому игра нужна не была.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Сами зафичерили, или заявку отправлял?

показать ответы
3
Автор поста оценил этот комментарий

Я умер раз 5. Вначале пытался наклоном телефона поворачивать, потом осваивался с управлением. Так что вот он этот человек, насмехайтесь! )

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Хм, но там же на старте анимация, как нужно нажимать, теперь понятно, почему так происходит, хмм, нужно делать апдейт, в котором давать на старте выбор типа управления. Спасибо!

1
Автор поста оценил этот комментарий
Вот если говорить, как юзер, то я всеми руками и ногами против издательств, т.к. там деньги, конечно, но и загадят они хорошую игрульку :(
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

1
Автор поста оценил этот комментарий

Прочитал на 4пда по моему про игру. Поставил, поиграл минуту и удалил. Графика прикольная, а вот управление с помощью нажатия на экран просто жесть! Привык в подобными играми управлять с помощью наклона телефона

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

2
Автор поста оценил этот комментарий
Привет, поиграл немного в твое творение.
Если коротко, то игра получилась красивая, проблем с нагревом, про которые ты писал-нет(mi mix 2).
Угарнул с баннера "здесь могла быть ваша реклама" и пьяных водителей за рулём авто, прям как в жизни бывает.
Один момент, игровая зона- вроде как снеговая, и не совсем понятно зачем там трава, выглядит не очень(на мой сугубо личный взгляд)
Удачи в дальнейших проектах)
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо, возьму на заметку :)

Автор поста оценил этот комментарий
Статистику детальную встраивал? Искать места, которые на ретеншен влияют.

Интересно было бы почитать посты на эту тему, на чем отваливаются игроки.
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

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

показать ответы
Автор поста оценил этот комментарий

Ой извини, 50-60 это не ретейшен, я ошибся, просто выходные (особено перед новым годом), не в том состоянии я, ретеншен у меня как у тебя, и это плохо, игры то у меня по хуже будут чем у тебя. 50-60 это как раз  "отчеты по источникам трафика" 1й день. 20 - 25 % это ретейшен первого дня в юнити аналитика. 

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

А, понятно, как у меня получается...

Автор поста оценил этот комментарий

Соль на раны сыплешь, да? (

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Так а толку от этого ноль, вот в чем беда, ретеншен очень низкий.

показать ответы
1
Автор поста оценил этот комментарий

10000+ установок за сутки и 123 оценки довольно неплохо за сутки.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Да не, если бы :) игры была 2 месяца в бета тесте, они то и нагенерировали около 40к установок. Но это Tier3 страны, дохода от них нет. А вот оценки да, это за три дня после релиза набралось.

Автор поста оценил этот комментарий

как с вами можно лично связаться

раскрыть ветку (1)
Автор поста оценил этот комментарий

Можно просто загуглить Feelnside Games и там в любом месте написать, где будет возможность.

Автор поста оценил этот комментарий

Как успехи в продвижении?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Да никак, переключился на гиперказуальные игры. По 1-2 прототипа в месяц создаю и пытаюсь тестировать с издателем. Пока так же нет чего-то интересного.

показать ответы
Автор поста оценил этот комментарий

Привет, просто офигенный свет на сцене, можете поподробней рассказать что применять в юнити чтоб обычный low poly стал такой шикарный?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Привет. На самом деле секрет кроется в собственных шейдерах. Основные критерии:

- rim эффект

- specular

- cubemap fog

- mixed lightmaps (shadowmask)

- vertex colors (можно просто текстуры юзать, ну я юзал vertex colors чтобы убрать лишнюю text2D функцию)

- ну и тонна попыток запечь красивое освещение

2
Автор поста оценил этот комментарий


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


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


Искренне желаю Вам удачи! Смотрю, что отзывы к игре прибавляются весьма быстрыми темпами. Надеюсь, что и скачивания тоже ) Такие проекты должны иметь финансовый успех, иначе само понятие инди разработки теряет всякий смысл, разве что в виде развлечения... )


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

раскрыть ветку (1)
Автор поста оценил этот комментарий

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


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


Спасибо ещё раз за столько подробные мысли, очень помогает взглянуть на проблемы под иным углом!

1
Автор поста оценил этот комментарий
Что за игра?
раскрыть ветку (1)
Автор поста оценил этот комментарий

Да это не особо важно, цель поста немного в другом была.

показать ответы
Автор поста оценил этот комментарий
Да, печально(
Это действительно жила, но нужно к этому готовиться. Так получилось, что мы больше полгода были с готовой игрой, но искали паблишеров, но в итоге решили публиковаться самим.
раскрыть ветку (1)
Автор поста оценил этот комментарий

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

Автор поста оценил этот комментарий

Может это я наверно был, я просто на 1 уровне тесчу программы для записи с экрана, уже на 1 уровне раз 25 играл и бросал, так как туплю с настройками запишу секунд 10 чет, то так не этак, то это не так, то видео не понравилось. Естественно оленя бросаю он врезается.

раскрыть ветку (1)
Автор поста оценил этот комментарий

А вот оно что, я как-то не подумывал о таких вариантах развития событий :)

Автор поста оценил этот комментарий

С тестированием помогает кто, или всё сам?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Сам + бета тест 2 месяца был в гугл плей.

Автор поста оценил этот комментарий

Нужно делать, чтобы на обучающем нельзя было проиграть )

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

Автор поста оценил этот комментарий

45-50% - это в google play console "источники трафика" -> "Отчеты по источникам трафика" по идее это должно быть офигенно . У меня в играх 10-14% это максимум =( В общем за ранее не унывай возможно все идет к успеху. Игродела coder1cv8 на gamedev.ru знаешь? Да и тут он есть, помоги советом @coder1cv8 . ... Сори или ты имеешь ввиду ретеншен первого дня? Тогда у меня это 50-60% толку правда не особо. 7 день у меня 20 % 30 - 1-5 % хехех   

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

45-50% да, источники трафика > отчеты по источникам трафика. Но ретеншен d1 = 25%, d7 = 3-4% (это настолько мало, что я даже не понимаю в чем может быть проблема). У тебя просто невероятный ретеншен. С ним любой издатель заберет тебя с руками и ногами! По моему ретеншен важнее конверсии в установку.

показать ответы
1
Автор поста оценил этот комментарий

Гляну. Выглядит хорошо.

Downhill Rush которая?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Да, верно.

Автор поста оценил этот комментарий

Удачи.

Тоже делал новогоднюю игру; даже запарился с переводом.

Но видимо, старею - что-то пошло не так и по сути, просто слил деньги - <100 установок в день. Тт

(конверсия 2% вместо средних 15%)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Спасибо, конверсия вроде неплохая 45-50% (и то статистику портит Индия и Индонезия, там по 20-30%, в других странах конверсия до 60-65% доходит). Но как-то особой помощи от этого нет :)

показать ответы