{"id":14268,"url":"\/distributions\/14268\/click?bit=1&hash=1e3309842e8b07895e75261917827295839cd5d4d57d48f0ca524f3f535a7946","title":"\u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0442\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0430\u043c \u0438\u0433\u0440\u0430\u0442\u044c \u043d\u0430 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u043c\u0435\u0441\u0442\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e?","buttonText":"\u0423\u0437\u043d\u0430\u0442\u044c","imageUuid":"f71e1caf-7964-5525-98be-104bb436cb54"}

Как два студента сделали игру для iOS и заработали на этом

Ровно год назад мы с другом решили по-быстрому сделать игру для iOS. Что из этого вышло и сколько нам удалось заработать, я расскажу в этой статье.

Первые шаги

Вообще, мы C++-разработчики, раньше уже пытались сделать кросс-платформенную игру, используя известные нам инструменты — Qt и C++. Тогда мы работали над игрой в жанре Tower Defence в новогоднем сеттинге. Для погружения в атмосферу инди-разработки предлагаю посмотреть пару видео из того времени:

Низкое FPS
Белый прямоугольник

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

Второе дыхание

В какой-то момент мы решили изучить нативные инструменты разработки. А именно SpriteKit на iOS. Я накидал демку на Swift, в которой было 1000 движущихся спрайтов с альфа-каналом. Она заняла всего пару десятков строк кода и выдавала 60 FPS на iPhone 5! Это был просто восторг! Низкий порог входа и бешеные возможности встроенного движка снова разожгли в нас энтузиазм!

На этот раз мы сформулировали основную цель так: Игра должна быть в AppStore! Она просто не может отправиться ко всем остальным недоделанным проектам на задворки «гитхаба»! Это означало, что игра должна быть настолько простой, чтобы её нельзя было не сделать. Пора начать доделывать дела!

Мы не могли себе позволить вручную создавать уровни, так как после создания игровой механики энтузиазм мог угаснуть. Поэтому думали сделать раннер или платформер с одним бесконечным уровнем. Как Subway Surfers, Doodle Jump, Nyan Cat или Flappy Bird. Также мы хотели минимизировать количество текста, чтобы не возиться с локализацией.

Вижу цель

Так что мы придумали? Беглое изучение инструментов разработки под iOS показало, что встроенный двумерный физический движок просто огонь! Разработка под него выглядит примерно так:

  • Создать физический мир.

  • Добавить объект мяч в физический мир.

  • Добавить объект пол в физический мир.

  • Включить гравитацию!

Можете представить себе эмоции программиста, который до этого два месяца жонглировал указателями?

Разумеется, мы решили использовать физику в качестве основного элемента игры. Какую игру с бесконечным уровнем на основе физики можно сделать с мячом? Чеканку мяча!

По задумке игрок должен управлять ногой футболиста и чеканить (набивать) мяч. Цель игры — начеканить как можно больше. Считаются отскоки от ступни, колена и головы. При этом обязательным фактором была монетизация. Хоть какая-нибудь! Тут дело даже не в заработке — нужно познакомиться с инструментами.

Сделаем за неделю

Цель мы сформулировали достаточно чётко. Пора приступать! Мы забили на пары и ушли в отпуска с работы на неделю. За это время мы планировали сделать меню, сцену с игрой, подсчёт очков и рекламу. Думаете, получилось?

Получилось! Мы реально успели сделать игру без дизайна и звуков за неделю. На инструментах, которыми раньше никогда не пользовались (Swift + SpriteKit). Получилось нечто даже более-менее играбельное, правда, с заглушками вместо нормальных текстур.

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

Или за месяц

Так, стоп! Художник? Мы что, крупная корпорация? Нет, но программисты обычно рисуют не очень. Поэтому было решено отдать это дело на аутсорс. Тем более что наша неделя на игру подошла к концу.

Мы заказали у знакомой художницы 15 текстур, чтобы все они были в одном стиле, пропорциональны и гармоничны. За деньги. Да, мы инвестировали не только время :) Вообще, это был первый опыт работы с фрилансерами. Полезный опыт. Рекомендую.

Постепенно из набросков стал вырисовываться дизайн игры.

Ну или за полгода

План с новым дизайном был такой: просто по одной меняем старые текстуры на новые, и вуаля — игра готова. Как бы не так! Все текстуры были немного под другими углами, другого размера, с другими местами стыковки. Это привело к тому, что вся вёрстка уехала. При этом существенно нарушилась физика ноги и её нужно было отлаживать заново.

Новые текстуры были большего разрешения и при замене в редакторе сцены Xcode постоянно вылетал! Библиотеки у Apple, конечно, отличные, но IDE, мягко говоря, могла быть и постабильнее! Приходилось удалять десятую версию Xcode и ставить девятую, чтобы хоть как-то работать с текстурами.

Кстати, на каком-то этапе обнаружился интересный баг с коленом, который мы назвали «Режим кузнечика» :)

Keepie Uppie — режим кузнечика

И такие неочевидные проблемы вылезали одна за одной. А релиз всё откладывался и откладывался. За следующие несколько месяцев работы по вечерам мы поправили баги, добавили звук и улучшили взаимодействие с пользователем. В итоге игра достигла хоть сколько-то приемлемого уровня, и мы решили релизить!

Финишная прямая

Вот у нас готова игра. Что нужно для завершения проекта? Загрузить в App Store. Всего-то. Для этого нужны: аккаунт разработчика, политика конфиденциальности, иконки и скриншоты всех размеров, а также описания на языках всех стран, где вы хотите размещаться.

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

Принятие решения об отправке в магазин

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

Таки шо по деньгам?

Схема монетизации в нашей игре была выбрана следующая. В момент, когда игрок теряет мяч, он может посмотреть рекламу и продолжить чеканить, не потеряв очки. Так можно сделать только один раз. В техническом плане мы использовали Google Rewarded Video Ads.

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

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

По затратам проект вышел примерно в 150 человеко-часов, 2500 рублей оплата художнику и $100 за аккаунт разработчика. Окупилось? Давайте посмотрим в дашборд Google-рекламы.

Да, за всё время мы заработали $5,41 — около 360 рублей. При затратах в 9000 рублей. Итого доходность мероприятия: -96%. Да, заголовок немножко кликбейтный, простите :)

Что в итоге?

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

А что по поводу того, что заработали мы всего $5? Я вам скажу:

Зато не на дядю!

P. S. Обязательно доделывайте дела. Если не получается — упрощайте, но доделывайте. Это очень полезное умение.

Удачи в ваших проектах!

0
61 комментарий
Написать комментарий...
Андрей Андреев

В ложились бы в маркетинг и заработали ещё $5 сверху.

Ответить
Развернуть ветку
Artem Shevchenko

Имеется в виду еще 9000 рублей в маркетинг чтоб получить еще 5 уе

Ответить
Развернуть ветку
1 комментарий
Сергей Крупник
Автор

В следующий раз обязательно так и поступим!)

Ответить
Развернуть ветку
2 комментария
Vasily Ulianov

Мне кажется что-то идёт не так 🙂. Так после каждого рестарта.

Ответить
Развернуть ветку
Make Luv

Проиграл.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Сергей Крупник
Автор

О, можете, пожалуйста написать версию iOS. Мы тестировали на большинстве - все было нормально. Такое встретилось только на 13 beta 1 после релиза.

Ответить
Развернуть ветку
1 комментарий
Василий Водокачкин
Обязательно доделывайте дела.

Нет времени, надо все статьи на vc прочитать сначала.

Ответить
Развернуть ветку
Сергей Крупник
Автор

Могу посоветовать отличную статью про личную эффективность https://vc.ru/life/79168-statya-pro-lichnuyu-effektivnost

Ответить
Развернуть ветку
1 комментарий
Alexander Nikiforov

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

Ответить
Развернуть ветку
Сергей Крупник
Автор
Ответить
Развернуть ветку
Руслан Галиев

Говорить, что сделали за столько, немного наивно. А время? Если бы этот проект заказали у Вас, сколько бы Вы взяли? Вот столько и потрачено)
А так - молодцы. Следующий проект уже будет более акцентирован на монетизации.

Ответить
Развернуть ветку
Сергей Крупник
Автор

Потратили помимо денег 150 часов чистого времени. Хотя если относиться к этому как к хобби, то лучше говорить не "потратили", а "весело провели". С точки зрения коммерческого проекта, согласен с Вами, нужно учитывать не только финансовые затраты.

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Дмитрий Прозоров

Почитайте про hyper-casual, издатели уровня Voodoo рекомендуют не затрачивать на разработку больше 1 недели, и смотрят:
• На цену установки Facebook или Google Ads на iOS в США
• Ретеншен 1-7 (если упрощенно)
• Тестирование через рекламу ~50 гипотез перед выпуском игры

В общем, в этом бизнесе без вложений в рекламу не заработать, если есть приложение с ретеншеном d1 40-60% и ценой инсталла iOS США $0,20-0,30 — идите к издателям, можно будет заработать 😉

Ответить
Развернуть ветку
бонч

"Разработка игры за 1 неделю" от создателей книги "выучи английский за ночь"

Ответить
Развернуть ветку
2 комментария
Igor Lopatin

Знаем, знаем..
Весь аппстор и гуглплей в этих говноиграх одноразовых.

Ответить
Развернуть ветку
5 комментариев
Сергей Крупник
Автор

Обязательно попробуем публикацию через издателей! Спасибо за совет)

Ответить
Развернуть ветку
Дмитрий Тарасенко

А что с пальцами у героя?

Ответить
Развернуть ветку
Сергей Крупник
Автор

Провокационный элемент, нацеленный на обсуждение в комментариях)

Ответить
Развернуть ветку
Mihael Isaev

Крутяк! 🚀

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо!

Ответить
Развернуть ветку
IO

Зато теперь в резюме можно гордо писать "Есть приложение в AppStore"

Ответить
Развернуть ветку
Сергей Крупник
Автор

Это точно)

Ответить
Развернуть ветку
Артём Пешков

Спасибо что поделились этим опытом =)

Ответить
Развернуть ветку
Вася Михеев

Молодцы! И за честность (про заработок) отдельный респект!

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо!
На самом деле, какое-то время игра была в магазине с тестовым ключом Гугл рекламы. Не заметили при сборке релиза. Потом выпустили обновление. Думаю, из-за этого мы потеряли процентов 10 заработка)
В статью эту историю включать не стал, чтобы еще сильнее не раздувать

Ответить
Развернуть ветку
2 комментария
Дмитрий Жалнов

Да уж название то заманушное... Но этож только начало.

Надо фигачить дальше. Доработки. Реклама какая-никакая. Статьи, пресс-релизы...только не здесь конечно а на любых профильных сообществах.

Успехов вам. Спасибо за позитив)

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо! 

Думаю, эту игру мы развивать не будем. У неё выручка с одной установки в районе 2 центов. Маловероятно, что её удастся поднять на два порядка. А до тех пор реклама будет убыточна, так как стоимость привлечения одного клиента будет выше выручки с него.

Больше внимания продвижению и монетизации уделим в следующем проекте.

В любом случае, спасибо за поддержку!

Ответить
Развернуть ветку
Игорь Кравченко

Проект начинается в момент запуска в App Store - монетизация и раскрутка... ух)
ASO, маркетинг, статьи, review, борьба с отзывами единицами :D
Вы молодцы пилите еще)

Ответить
Развернуть ветку
Сергей Крупник
Автор

Да, это все было в планах) В следующий раз пойдём дальше!

Ответить
Развернуть ветку
Игорь Кравченко

почему категория будущее, а не трибуна?

Ответить
Развернуть ветку
Сергей Крупник
Автор

Промахнулся по неопытности. Буду внимательнее)

Ответить
Развернуть ветку
2 комментария
Nick Sidorov

Молодцы :)

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо!

Ответить
Развернуть ветку
Denis Votsuk

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

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо) Согласен

Ответить
Развернуть ветку
Виталий Подольский

Чисто гугловая реклама - мало заработаешь. Попробуйте прикрутить SDK какого нить медиатора, вроде Appodeal, там в разы с рекламы больше приходит. Был опыт использования только гугла и медиатора. С медиатором получше получалось!

Ответить
Развернуть ветку
Сергей Крупник
Автор

Спасибо за совет! Попробуем работу с другими площадками в следующем приложении

Ответить
Развернуть ветку
Аккаунт удален

Комментарий недоступен

Ответить
Развернуть ветку
Denis Shevchenko

Проблемы 3 на мой взгляд:
1) не использовали медиатора, к примеру Appodeal/IroneSource, что может на 2 порядка поднять прибыль
2) не использовали межплатформенные средства разработки, к примеру Unity
3) нет желания на этом зарабатывать, отсюда и нет медиатора и Swift и отсутствие инапов и отсутствие рекламной компании с оценкой прибыльности установки

Ответить
Развернуть ветку
Ivan Demyanets

А сколько стоят 150 человеко-часов таких разработчиков? ))

Ответить
Развернуть ветку
Сергей Крупник
Автор

Желаете приобрести?)

Ответить
Развернуть ветку
1 комментарий
Коля Колбаскин

Срочно идите к инвесторам! Потенциал огромный!

Ответить
Развернуть ветку
58 комментариев
Раскрывать всегда