Кот Булчик: Главный герой
Тыгыдык!
Тыгыдык!
Не работает ссылка на ютуб который shorts. ..((
В один прекрасный момент, гуляя жарким летним днем со своим парнем, у меня появилась совсем уж сумасшедшая идея о том, что «было бы интересно попробовать создать собственную приложуху». Буквально на месте была придумана концепция, и первые идеи по поводу реализации. Наполеоновские планы никто не строил, и главным условием было довести дело до конца.
В качестве среды разработки использовали Game maker studio с модулем для компиляции под Android, в первую очередь из-за соотношения «требования к движку/простота освоения языка». Вся графика рисовалась в Illustrator. Музыку сделали в FL Studio. Отмечу, что это наш первый опыт и все было сделаны собственными силами.
Хотелось создать что-то легкое, ненавязчивое, но в тоже время увлекательное, что нам и удалось сделать, в принципе.
Разработка началась с создания игровой комнаты и как такового персонажа. Суть заключается в том, чтобы ловить «то, что падает из чаек» в «борьбе» за чистый пляж.
Как некую фишку решено было добавить активные расходники, которые выпадали бы из птиц, но в отличие от схожих игр не использовались бы в момент подбора, а хранились на всякий пожарный случай. Ибо поймать аптечку при полном здоровье то еще расстройство.
Так как игра построена на генераторе случайных чисел, она бесконечная с постоянно увеличивающейся сложностью и основанная цель игрока сводится к соревнованию с другими игроками в глобальной таблице рекордов и совершенствованию самого себя (что поощряется наградами после очередной результативной сессии).
Реализовав внутриигровой магазин с расходниками, мы добились в первую очередь того, что игрок может «планировать» свою следующую игру, рассчитывая на максимальный результат и занятие лидирующих позиций. В этом игроку также будут помогать система пассивных навыков, которые улучшают те или иные аспекты в игре: будь то максимальное количество здоровья или время действия замедления.
Также мы сделали возможность смены тем, чтобы перед глазами игроков открывались новые ландшафты.
В общей сложности на разработку потратили полтора месяца. Графика заняла больше всего времени (не повторяйте мой опыт, не рисуйте в Illustrator мышкой, поберегите свои нервы).
Надеемся, что игра Вам понравится! Оставляйте свои отзывы и оценки, это станет для нас мотивацией и направлением для развития.
Спасибо за уделенное время!
Google Play: https://play.google.com/store/apps/details?id=com.ezbeard.bi...
Всем привет и хорошего настроения! На прошлой неделе вышло долгожданное (ну, по крайней мере, мной долгожданное) обновление игры “Frog and bees”. Первый вариант игры я выпустил в конце мая, и сразу же мои воспаленные фантазии о покорении топов Google Play маркета были были охлаждены потоком людей, нашедших игру в сторе и установивших ее себе: 0 в первый день, 0 во второй, и, наконец, на третий день один неизвестный товарищ из Индии поднял общее количество установок до 1.
Тогда я написал свой первый пост про игру (вот он), что дало заметный прирост установок. Но главное, что я получил — это ваши отзывы, пожелания и замечания, что можно улучшить и что нужно переделать. Так я и начал работать над новой версией игры.
Убрать лишнее, добавить недостающее.
Первое и самое главное, что бросалось в глаза с самого начала игры — слишком вычурный шрифт (Lobster). Хотя я-то на самом деле думал, что, выбрав шрифт наподобие как в Candy Crush Saga, я также получу и заветные миллионы установок своей игры)). Помимо проблемы со шрифтом я также заметил, что текстуры, фон всплывающих меню выглядят пустыми и скорее похожими на прототип или просто какую-то заготовку. В общем, эту проблему дизайна можно охарактеризовать как несоответствие. Несоответствие уровней детализации шрифта (избыточное) и фоновых изображений (недостаточное).
Было/стало
После заполнения пустот в текстурах и фонах игра существенно преобразилась. Стала как-то глубже выглядеть, есть где глазу зацепиться на доли секунды и поразглядывать следы на кувшинке или «обои» во всплывающих меню.
Также недостаточно проработанными были основные игровые элементы — мухи-сферы и язык лягушки. Первых я достаточно быстро и без проблем переделал в сферы с ножками
правда, пришлось добавить им на голову не существующие усики-рожки, потому что без оных они уж очень смахивали на каких-то шестиногих овец-мутантов)). С языком лягушки тоже все обошлось без лишних сложностей: сначала я создал слегка изогнутый меш языка в максимально расправленном состоянии, а потом просто уже в Unity поместил его в родительский пустой объект, содержащий только компонент transform и менял его длину через transform.scale по соответствующей оси родительского объекта.
Геймплей
Также я разнообразил и сам геймплей, и цель, ради которой игрок зарабатывает мухо-монетки. Если раньше игровая механика была только одна: ловля мух и получение укусов от ос, а накопленные деньги можно было тратить лишь на косметические улучшения болота: убрать мусор, добавить кувшинки, то теперь все стало разнообразнее. С самого начала игры механика все та же, но после первого же улучшения открывается «бонус-муха», поймав которую, получаешь приятные вознаграждения. Вместе со следующими уровнями открываются другие бонусы, бустеры (позволяют, например, избегать укусов ос или хватать сразу по несколько мух) и задания. То есть постепенно открываются и дополняются новые игровые механики. Ну и с каждым уровнем, как и прежде, ваше болото становится чуть более красивым/интересным.
С одним из таких улучшений болота произошла забавная история. Я хотел создать лягушку-рыбака, которая сидит на одной из кувшинок и ловит рыбу. Но сидеть она должна не просто так, неподвижно, а время от времени смотреть куда-то в сторону. Изначально я хотел посадить ее на левую кувшинку, примерно так (в руках еще удочку должна держать):
и смотрит куда-то в камыши. Но в таком случае ее сильно загораживала лягушка-игрок, поэтому рыбака я поместил на кувшинку справа, а вот анимация поворота головы осталась прежней. Теперь она время от времени непонимающе смотрит сквозь экран, на игрока))
Локализация.
С самого первого релиза я решил перевести описание игры на множество языков: английский, испанский, китайский и так далее 15 наименований. Пользовался Google Translate. Слышал про сайты, где могут помочь носители языка, но пока до них не добрался. Забавно было наблюдать, что порой количество установок за неделю из Бразилии было больше, чем из России. Конечно же это далеко не достоверные статистические данные, когда в день количество пользователей, установивших игру, 3-5 всего. Но все же, простой перевод описания игры на разные языки позволил получить хоть каких-то пользователей из самых разных стран. Вообще установки из России составляют только 11%, так что без перевода страницы игры в маркете установок было бы в разы меньше от и так более чем скромного количества.
В новой же версии я решил пойти дальше и сделал еще и локализованные подписи на скриншотах в Google Play. Прикольней всего мне показались скриншоты для японского, корейского и китайского языков — создается впечатление как будто это какая-то безумная азиатская игра)).
Слева — корейский, должно быть написано «гордись (или хвались?) своими достижениями». Справа — японский: «поймай их всех».
Да и вообще с переводом на японский случился такой забавный случай. Для одного из скриншотов, на котором показано, что можно покупать улучшения болота, у меня следующая подпись: «Чем лучше болото, тем счастливее лягушка». Особенно горжусь тем, как получилось это перевести в рифму на английский (да простят меня люди, чье владение языками лучше моего): «The better the bog, the happier the frog». На японский же и вообще все другие языки я переводил с английского, а потом обратно на английский, чтобы проверить, не получилось ли что-то сильно искаженное. Фраза про счастье лягушки на японском, переведнанная translate.google на русский звучала так: «Лучше болота, более счастливые лягушки», что незамедлительно вызывало ассоциации с чем-то примерно таким:
Болото становится лучше
Много мух кружит над водой
Лягушка счастлива
Монетизация.
Монетизацию я пока что сделал сугубо за счет рекламы. Подключил родную для движка UnityAds. Присутствуют два вида рекламы: межстраничное видео, появляющееся после раунда одиночной игры не чаще чем раз в 2 минуты и вознаграждаемое видео, которое сбрасывает таймер ожидания нового задания или пополнения бустеров, если они в процессе игры кончились. Закодил, протестировал, все работает. И даже наблюдал статистику просмотров рекламы, пока обкатывал игру на своем же планшете. Однако хотелось увидеть хоть какие-то числа, намекающие на заработок инди-разработчика. И однажды мне пришла замечательная мысль: я снова тестировал свою игру, но на этот раз не пропускал рекламу игр, а специально хотел установить себе одну, чтобы посмотреть, сколько UnityAds платит за инсталл игры. Честно говоря, даже при таких условиях — установить любое рекламируемое приложение — я лишь с третьей попытки наткнулся на подходящую для себя игру. Установил ее и даже, на всякий случай, поиграл минут 15. Обновив через некоторое время статистику, я обнаружил зачисленные мне 0.75$. Мои первые нечестно заработанные ¾ доллара)).
Заключение
Спасибо, что дочитали мой пост. Наверное, он получился более развлекательным, чем прошлый. Надеюсь, вам было интересно, а мои истории из разработки вас посмешили так же, как и меня. Резюмируя изложенное, можно выделить следующие полезные замечания: следите за соответствием уровней проработки разных компонентов игры; машинный перевод страницы описания игры на маркете лучше, чем отсутствие перевода вообще.
P.s. В этот раз 3 из 5 разновидностей криков лягушки озвучил самостоятельно)) это оказалось не так просто
Страница игры в GooglePlay: https://play.google.com/store/apps/details?id=com.FrogAndBees.SappyLemonGames
Доброго времени суток, дорогие пикабушники. Множество раз я читал истории успеха (и не очень) от разработчиков (и не очень) игр - и вот настала моя очередь рассказать, что да как. Что сделал, что не сделал, что получилось легко и быстро, а где затупил.
Желание делать игры появилось очень давно, в те времена, когда еще даже компьютера своего не было, только денди. Тогда я рисовал в тетради схематичных человечков: руки-ноги, пытался просчитать координаты движения точек, чтобы получился идущий человек. Разумеется, ни знаний, ни техники не хватало - поэтому разработка игр осталась лишь мечтой когда-нибудь на будущее.
Спустя много лет, в университете, когда появились знания и некоторый навык программирования я начал придумывать, какие игры хотел бы сделать. Идей в голову приходило много, большинство из них вызывали лишь смех на следующий же день, но особо живучие "дозревали" в голове еще пару недель и были опять же записаны в тетрадь/блокнот, дабы не потерять мысль, суть, изюминку. Но я не знал, что с ними делать дальше, не знал, как вообще делать игры.
Из полученного опыта: при записи "идеи на миллион" ее стоит описать хотя бы в несколько предложений, а лучше еще и рисунок хоть какой сделать.
В своих записях нашел "экшн с зениткой и ордами врагов" - вот что бы такого уникального это значило? А ведь когда-то вокруг этой фразы крутились вполне конкретные придуманные механики, модели оружия, баланс и прочее.
О знакомстве с Unity
К тому моменту я мог худо-бедно сделать что-то под Android для себя. Простенькое, с кнопочками, текстовыми полями, картинками. В принципе, подойдет, чтобы делать какие-нибудь игры в слова, разгадывание ребусов и тому подобное. Но сколько раз я ни пробовал взяться за такие игры - желание быстро пропадало, потому что это тупо скучно)).
И вот мне на ютубе попалось видео про Unity. Про то, какой он бесплатный, кроссплатформенный и в меру простой. Прочитав еще и про успех сделанной на нем CrossyRoad, мой изголодавшийся мозг решил - надо скачивать, разбираться и сделать уже что-то.
Какое ПО выбрать?
Мой выбор пал на вариант: "сделай все сам и бесплатно". Для создания графики использую Blender (3D), Inkscape (векторная графика) и Gimp (растровая графика). Даже папку с рабочими файлами этих программ назвал аббревиатурой - BIG.
Unity использую в связке с Visual Studio 2015 (если в команде менее 5 разработчиков, то VS также бесплатна, насколько я понял из лицензионного договора). Ну и для обработки звуков полезен Audacity. Музыку на нем, вроде как, не напишешь, но в текущем проекте пока и не надо было.
Начало пути и выбор идеи
Чтобы вообще понять, чего ждать от Unity я нашел первый же урок из разряда "игра на Unity за час" и склепал свою первую поделку, в которой что-то падало сверху, нужно было уворачиваться, не получилось - проиграл. Установил на телефон, запустил, сыграл - блаженству не было предела: теперь ты знаешь, как можно сделать игру! Оставалось лишь сделать свою, и чтобы она была интересной...
Достаточно быстро можно набраться опыта, чтобы делать простые вещи - создавать/уничтожать объекты, заставлять их двигаться в соответствии с пользовательским вводом или самостоятельно, отслеживать события столкновений, воспроизводить звуки и загружать сцены. В целом, этого должно быть достаточно, чтобы создать простую механику игры, а, при некоторой фантазии, можно эту механику сделать еще и интересной. Или забавной. А лучше и то, и другое.
Ключевым на этом этапе становится поиск действительно интересной идеи (чтобы не тратить время и силы на создание клона и так много раз клонированной какой-нибудь игры), и создание контента для игры с выбранной идеей. Под контентом я здесь подразумеваю модели, звуки, текстуры, алгоритмы и вообще все, что наполняет игру, делает из "игра про космические путешествия с управлением собственной командой" реальный игровой опыт путешествий в просторах космоса и налаживания взаимоотношений в коллективе NPC, которые никак не могут ужиться друг с другом.
Из полученного опыта: не стоит недооценивать затраты времени.
При создании первого проекта, когда еще нет опыта и многому приходится учиться, очень сложно оценить, как быстро получится сделать рабочий вариант игры. Я для себя вывел такие правила: если создаешь версию игры "для себя", чтобы понять понравится ли она хотя бы тебе, то время, за которое ожидаешь это сделать, можно домножать на 1,5 - 2. В мечтах все просто: добавим здесь кнопку, здесь противник будет двигаться обратно пропорционально квадрату синуса расстояния до игрока, здесь сделаем бонус, который добавляет +100 к скорости, но отнимает 100 от удачи - и игра станет бомбой. Но на практике обязательно вылезут какие-нибудь ошибки. Алгоритм поведения противников будет тупить, переменным будут присваиваться неожиданные значения, один и тот же кусок кода будет вести себя по-разному в зависимости от фазы луны. Для исправления всего этого неизбежного потребуется время, полученное после домножения на 1,5 - 2.
Если же создавать версию игры "для релиза", то рабочий процесс во многом упирается в работу с графикой и анимацией (модели должны уже быть полноценными, а не примитивами из версии "для себя") и зачастую сводится к: сделать -> проверить -> переделать -> проверить -> повторить. С ростом навыка повторять нужно будет реже. Ну и еще много времени уйдет на тестирование, оптимизацию и разного рода мелкие корректировки. В моем случае, реальные затраты времени превышали оценки раза в 3 или чуть больше.
После некоторых колебаний с выбором идеи, я остановился на следующей комбинации предварительных условий:
1) незамысловатый сюжет и мир игры
2) игра с управлением в одно касание - проста в реализации, хоть и ограничена в возможностях
3) достаточно простой уровень графики - выбранному типу сюжета и механике, несерьезный, полумультяшный стиль неплохо соответствует
4) желательно бесконечный игровой процесс, но с возможностью использовать результаты потраченного времени
3) юмор и приколы
Обо всем по порядку
Ехал я как-то на электричке или в метро, и пришла мне идея игры с лягушкой на кувшинке в пруду. Нажимаешь на экран - она выстреливает языком и ловит летающую муху. Счетчик очков увеличивается. Чуть ниже уровня полета мухи время от времени пролетает пчела/оса. И если так вышло, что коллайдер пчелы пересекся с коллайдером языка лягушки - теряется одна жизнь из трех. (На самом деле, чтобы никого не убивать в своей игре (кроме мух), у лягушки жизнь всего одна, просто она может вынести три укуса пчелы и получает нокаут).
Спустя некоторое время идея была реализована: лягушка - куб, мухи - кубы, пчела - куб, язык - параллелепипед, длина которого меняется программно через transform.localScale. Благодаря первым двум пунктам предварительных условий получилось в короткие сроки создать каркас игры, которой при подключении фантазии уже позволяет увидеть, как будет ощущаться будущая игра.
Из полученного опыта: прототип игры - очень важен.
Сложно недооценить значение прототипа. После того, как я создал версию игры из кубов в вакууме, я еще достаточно долгое время возился с кодом, скоростью мух и пчел, размерами коллайдеров, балансом. Важным знаком будет то, что если удается сделать так, что даже в прототип играть интересно - то работа над контентом будет оправдана. В противном же случае, время, потраченное на создание графики, моделей и прочего может быть потрачено впустую. Другими словами, создавая прототипы игр можно выбраковывать недостаточно проработанные механики.
После создания годного прототипа во всю началась работа с графикой. Мой личный выбор пал на вариант 3D. Во-первых, еще в школе баловался с 3DSmax, во-вторых, созданную один раз модель можно потом крутить как угодно, подбирая нужный ракурс. Но, опять же, это выбор из личных предпочтений, с 2D графикой на должном уровне не работал. Blender оказался на удивление удобным инструментом (после нескольких десятков часов привыкания), шустрым в работе и с огромным количеством обучающих материалов. Быстро получилось создать статичные модели - камыши на пруду, кувшинки, камни, облака. Анимированные модели заняли на порядок больше времени. В целом, третий пункт из предварительных условий позволил не углубляться в создание максимально детализированной графики (а в будущем и меньше проблем с оптимизацией возникает), оставаясь при этом в соответствии с концепцией игры.
Из полученного опыта: не стоит бояться изучать и делать что-то новое. Как минимум, нужно попробовать.
Помню, когда я создал статичную модель лягушки, точнее, две модели - с закрытым ртом и с открытым, когда она стреляет языком. Мне это казалось просто высшим достижением, хотя и в рамках игры выглядело, мягко говоря, колхозно. По внутренней оценке, я был способен создать анимацию 3D моделей только где-то через месяц - полтора. Однако, попробовав разобраться в скелетной анимации Blender и методами ее импортирования в Unity, я обнаружил, что создал анимированную версию лягушки уже через 3-4 дня.
Ну и заключительным этапом создания завершенной версии для релиза стало определение того варианта игры, которого будет достаточно. В процессе разработки легко увлечься, добавляя все новые и новые элементы, переключаясь с одного вида деятельности на другой, при этом дата выхода игры будет постоянно откладываться, но всегда будет "где-то через неделю". У меня это продолжалось несколько недель подряд. Чтобы завершить начатое, необходимо выполнить два условия: во-первых, решить что обязательно попадет в игру, а что обязательно останется на доработку и будет добавлено в обновлениях; и во-вторых, искоренить перфекционизм - определить необходимый уровень как будет реализовано то, что должно обязательно попасть в игру. Если пытаться сделать как можно лучше, то за это время придет видение того, как можно сделать еще лучше и так далее. В таком случае и Ахиллес не догонит черепаху.
В моем случае было необходимо определить, что должно быть в игре, чтобы обеспечивать бесконечный (при желании) процесс ловли мух, но при этом накопленные очки можно тратить, совершенствуя свой пруд, улучшая его различными способами.
Ну и последний в списке, но не последний для меня по важности пункт - юмор. Без него и сам процесс создания был бы более тяжким, и многое из того, что мне нравится в игре, не было бы сделано. Некоторые идеи приходили в голову во время работы, и затем были реализованы. Например, изначально я не планировал озвучивать лягушку как бы то ни было, но как-то раз мне вспомнилось видео с орущим сурком, которое я пересматривал десятками раз..)) (https://www.youtube.com/watch?v=Q_Qs-FRbTzY)
Также вариантов окна с результатами совместной игры было несколько, но выбрал именно тот, который вызывал у меня самого веселье и желание сыграть еще раз, по-другому))
Итог.
Спасибо всем, кто дочитал этот пост до конца. Надеюсь, было интересно и полезно. Приведенные здесь выводы из полученного опыта я пытался выделить более ясно для того, чтобы вы могли вспомнить о них, если когда будете делать свою игру. Надеюсь, они помогут сократить время выпуска первой версии игры с неопределенного "когда-то потом, когда все будет как представляется в фантазиях" до вполне оцениваемого, чтобы получить обратную связь (на что и сам надеюсь) и двигаться дальше.
Лягуха смотрит на тебя с уважением
Страница игры в GooglePlay: https://play.google.com/store/apps/details?id=com.FrogAndBee...