Опыт решает или как сделать приемлемую игру

Всем привет! 


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

Продолжаем цикл статей посвященных моему пути в сфере игростроя. (первый пост, второй пост, если интересно). 

Наконец-то я подобрался к своему фавориту, моей гордости, к последней моей игре на андроид. 


UFO Catch

Опыт решает или как сделать приемлемую игру Игрострой, Gamedev, Google Play, Unity3D, Android, Игры, Длиннопост

Это тупо ярлык, чтобы сделать завязку, скриншоты будут далее. 

Итак, после завершения Pirate Paff (см. второй пост), я немного отдохнул, и мне вновь пришла гениальная(на мой взгляд) идея, а не создать ли мне бесконечную игру под тип Subway surfers или Flappy Bird, т.е. такую, где уровень, препятствия или враги генерируются бесконечно. Как раз в то время я довольно часто натыкался на видео или картинки с коварными игровыми автоматами, где главные призы - это плюшевые звери, которых надо доставать механической (сволочной) рукой (мне в них никогда не везло). Все этапы производства игр на андроид я прошел, от создания до выпуска на всеобщее обозрение, опыт уже был, и я решил приступить. Сразу скажу, что этот проект занял у меня порядка месяца, что уже немного по сравнению с предыдущими 3,5 месяцами.

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

Опыт решает или как сделать приемлемую игру Игрострой, Gamedev, Google Play, Unity3D, Android, Игры, Длиннопост

Суть игры. 

Вверху постоянно весит наш главный герой в фиолетовой тарелке под стеклянным колпаком - кот (да зеленый и с рожками, ну типа инопланетянин). Справа вверху полоска энергии(ну палочки разноцветные), цифры там же - это очки полученные, слева внизу генератор и "блендер". Так вот, из правой части экрана к нам надвигаются коварные слизни, у каждого свои особенности (простой, скоростной, взрывчатый, замораживающий и бонусный), после того как они врезаются в генератор энергия у нас отнимается  (0 энергии =  проигрыш). Мы в роли игрока можем указать НЛО, тыкая в экран, место, в котором нужно опустить клешни и схватить слизняка, чтобы он не повредил наш драгоценный источник энергии, после этого наш герой бросает его в "блендер" и таким образом вырабатывается энергия для продолжения игры + начисляется одно очко. Сложность состоит в расчете места хватания слизней, да и скорость постоянно меняется. Этой игры уже нет в браузерном исполнении, не тот формат подумал я. Не спрашивайте, как мне всё это пришло в голову, я сам не знаю)

Разработка.

Разработка заключалась в том же, как и в Pirate Paff. Рисование в фотошопе, кодинг, создание музыки в Fl Studio и все. НО! Были и некоторые особенности, так например, цифровое табло сверху это не просто текст, это отдельные рисунки каждой цифры, которые выстраивались в особом порядке по GUI координатам в зависимости от числа очков, которые в свою очередь преобразовывались в строчный формат и отражались справа-налево. Я так мудохался только потому, что смартфоны не поддерживают динамическое изменение шрифта в зависимости от размера экрана. Так же, в первой версии игры не было генератора, а слизни просто проходили мимо, энергия отнималась только за попытку схватить их. Т.е. если просто ничего не делать, то энергия не отнимается, а наши гелеобразные протагонисты снуют туда-сюда. Я подумал, что это скучно и привел игру в текущий вид. 

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

Определение момента хватания осуществлялось за счет пересечения коллайдеров, т.е. если оба коллайдера хваталок коснулись одного и того же объекта - это является сигналом к отключению у него (объекта-слизня) движения и усыновление его к НЛО (простите за профессионализмы, но если вы связаны с игродевом или начнете им заниматься вы все поймете). После этого НЛО возвращается на базу, объект отпускается, тот попадает в блендер и нам начисляется энергия + очко.

Анимацию в игре я использовал топорную, так как я не большой художник и на всякие плавные переходы у меня бы ушла уйма времени. Зато музыке я уделил довольно много времени (1 неделю из 4-х, я её делал параллельно с остальным). В игре присутствуют 2 композиции - жуткая менюшная и динамичная игровая. Все было написано средствами FL Studio, её стандартными плагинами, все это легко скачать везде. Звуки некоторые я опять же скачал/вырезал из фильмов-мультиков, немного видоизменил, чтобы правообладатели не возмутились, и вставил в игру.

Вес игры составил 36,5 мб, хотя можно было бы опять уменьшить некоторые файлы, но я не стал, ибо все выглядело и работало неплохо.

В конце опять генерируем рандомные числа для Alias и Keystore, загружаем в Google Play, в этот раз уже без внесения оплаты, так как она разовая.

Итоги

Игра тоже не взяла призов на канском кинофестивале, всего установок у неё около 200 и в данный момент она на 11 телефонах, оценка - четыре пятерки. Заработал за год я с неё порядка 1$, так же со встроенной рекламы. Встраивание гугл рекламы в приложение это отдельная тема, в рунете я её не нашел  в нормальном виде, приходилось смотреть видеоуроки на испанском, а если пользоваться средствами самого гугола там с ума сойдешь, спасибо испанцу (могу поделится ссылкой). Секрет непопулярности моих игр в недостатке средств на рекламу, есть много способов продвинуть игру, таких как Startapp, Appbrain или же можно обратиться к летсплейщикам по андроид играм, все это влетит в копеечку, особенно с текущим курсом, но это действует у многих. Почему не рекламирую? Я работаю на склад, нарабатываю опыт и базу. Да и перескакиваю с проекта на проект, только закончу один, начинаю другой.

Ну и напоследок немного другой скрин. 

Ну и вот ссылка на саму UFO Catch.

Опыт решает или как сделать приемлемую игру Игрострой, Gamedev, Google Play, Unity3D, Android, Игры, Длиннопост

Задавайте вопросы! О некоторых вещах могу расписать подробнее.

Завтра, скорее всего, будет следующий пост о моей первой 3d игре на ПК, которая сейчас валяется на Greenlight. 

Спасибо за внимание!