Сколько стоит разработать приложение как Pokémon GO

Летом 2016 года приложение Pokémon GO было чуть ли не популярнее Олимпиады в Рио. Игре о, казалось бы, забытых монстрах из нашего детства удалось захватить сердца взрослых и детей и за первые 24 часа после запуска вырваться в топы App Store и Google Play. Сегодня мы поговорим о ее основных составляющих и о том, сколько стоит разработать приложение, похожее на Pokémon GO.

Что представляет из себя Pokémon GO

Pokémon GO («Покемон ГО» или «Покемон Гоу») — это игра, которая использует привязку к объектам реального мира и карте, т. е. те или иные игровые объекты доступны игрокам только в определенных местах реального мира, например в парке или возле водоема. Кроме того, приложение Pokémon GO обрабатывает изображение с камеры смартфона и накладывает на него дополнительные элементы, создавая так называемую дополненную реальность. На менее мощных устройствах режим дополненной реальности недоступен и игрок видит лишь игровую вселенную, но, тем не менее, связанную с реальной картой местности:

Начало игры Pokemon GO

Правила Pokémon GO просты:

  1. Вы запускаете приложение, регистрируетесь и можете взаимодействовать с ним, если оно развернуто и экран вашего девайса включен.
  2. Основная форма взаимодействия — сбор покемонов путем бросания в них покеболла (как правило, поймать покемона с первого раза не получается).
  3. Поскольку покемоны не сидят на месте, а периодически спаунятся в разных локациях, пользователям приходится активно перемещаться по району или даже целому городу, чтобы ловить их.
  4. При этом вы должны пополнять запас важных ресурсов на покестопах и можете сражаться с другими игроками в тренажерных залах, которые также являются объектами реального мира.
  5. Пройденное расстояние и количество пойманных покемонов влияют на поднятия вашего уровня в игре.

Бульбазавр в игре Pokemon GO

А теперь поговорим о том, как разработать приложение вроде Pokémon GO.

Разработка приложения вроде Pokémon GO

Прежде, чем приступать к разработке, определим, что нужно, чтобы разработать игру как Pokémon GO:

  1. Геймдизайн
  2. Движок для разработки игр
  3. Дизайн приложения
  4. Картографический сервис и средства геолокации
  5. Логика распределения объектов на карте и боевая логика
  6. Средства взаимодействия с гироскопом и акселерометром
  7. Сервер для реализации взаимодействия между пользователями и хранения их игровых данных
  8. Нотификации о событиях
  9. Внутриигровые покупки
  10. Графика и звук

Кроме того, учтите такие причины успеха Pokémon GO:

  • Известный бренд Pokémon, у которого уже были свои фанаты.
  • Опыт в сфере игр, которые используют дополненную реальность (Ingress). Разработка аналога Pokémon GO потребует много ресурсов в силу отсутствия открытого доступа к данным, наработанным Ingress.
  • Правильный выбор времени запуска — лето в северном полушарии, когда люди как раз проводят больше времени вне дома.
  • Игра требует постоянного внимания к себе, что способствует формированию привычки. Это необходимо учесть, чтобы разработать успешный аналог Pokémon GO.
  • Хорошо проработанный вирусный механизм: если появился покемон, нужно сразу же его ловить; поскольку приложение работает только с включенным экраном, люди постоянно замечают других игроков и втягиваются сами.

А теперь разберемся, как создать приложение вроде Pokémon GO.

1. Геймдизайн

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

2. Движок для разработки игр

Что такое движок игры и зачем он нужен? Движок игры — это специальная программа, которая соединяет вместе все ресурсы игры (программный код, графику, звуки) и позволяет ими управлять. Без движка могут обойтись только очень простые игры (а Pokémon GO к ним не относится), к тому же движок упрощает выпуск игры на несколько мобильных платформ. Для разработки Pokémon GO использовался движок Unity.

Движок для разработки игр Unity

3. Дизайн приложения

Работа над внешним видом начинается с создания прототипа со всеми экранами приложения. Прототип не является готовым приложением, он всего лишь показывает, какие разделы, меню и другие элементы будут доступны пользователям. Прототипирование выполняется в специализированных инструментах, например InVision, Proto.io, Pixate, Flinto.

Прототипирование приложения

4. Картографический сервис и средства геолокации

Поскольку до того, как стать отдельной компанией, Niantic была внутренним стартапом Google, вероятно, для нее действуют некие специальные условия использования карт Google Maps, поэтому разработать клон Pokémon GO будет не так-то просто. В общем случае для создания приложения вроде Pokémon GO понадобится:

  1. Подключить Google API к проекту и заплатить за лицензию (стоимость будет зависеть от планируемой нагрузки). Также есть возможность использовать бесплатные карты Open Street Maps, но тогда о фотографиях локаций придется забыть.
  2. Написать функции для работы с GPS устройств (геолокация). Это нужно для того, чтобы определять местоположение устройства пользователя и показывать ему нужные объекты.

Покестопи в Pokemon GO

5. Логика распределения объектов на карте и боевая логика

Как создать приложение вроде Pokémon GO, которое не прогорит? Сделайте акцент на естественности — именно для ее достижения вам понадобится хорошо проработанная логика распределения объектов на карте. В ней необходимо предусмотреть:

  • Как часто на карте будут появляться новые покемоны.
  • В каких локациях какие покемоны встречаются чаще всего и в какое время суток.
  • Как популярность мест влияет на типы покемонов, которые там встречаются, а также их количество.

Боевая логика — важная часть разработки игры. Ее суть в том, чтобы новичкам не было слишком сложно, а бывалым игрокам не было слишком легко в игре. После внедрения боевая логика обязательно тестируется на практике.

Как поймать покемона

6. Средства взаимодействия с гироскопом и акселерометром

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

  • Гироскопа — определяет ориентацию устройства в пространстве.
  • Акселерометра — определяет скорость, с какой ускоряется смартфон.
  • GPS — определяет расположение пользователя относительно сетки глобального позиционирования.

Разрабатывая приложение «Дороги Украины» для мониторинга состояния дорожного покрытия, мы вплотную работали с данными, которые поступают с этих датчиков, обрабатывали и верифицировали их, и сможем успешно применить свой опыт, чтобы создать Pokémon GO-аналог.

Получение данных с акселерометра

7. Сервер для реализации взаимодействия между пользователями и хранения их игровых данных

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

Также чтобы после перепрошивки или смены устройства пользователям не нужно было начинать игру заново, требуется хранить их данные у себя на сервере. Без хранения данных на сервере разработать Pokémon GO-аналог не выйдет, поэтому будьте готовы создать сильный и надежный бекэнд игры.

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

Перегружены сервера в Pokemon GO

8. Нотификации о событиях

Realtime-события позволяют немедленно получать извещения о происходящем в игре. Поскольку в Pokémon GO нужно играть с включенным экраном, пользователь сразу же видит нотификации и подсказки, например такие:

Нотификации в Pokemon GO

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

9. Внутриигровые покупки

Существует несколько моделей заработка для мобильного стартапа и Pokémon GO использует модель с внтуриигровыми покупками (in-app purchases). Покупать можно предметы вроде покеболов (Poké Balls), приманку (Lure Module), инкубатор (Egg Incubator) и другие. Есть как более дешевые варианты (20 покеболов за 100 монет), так и более дорогие (6 приманок за 680 монет). Это важно, поскольку как помогает новичкам легче сделать свою первую покупку, так и поощряет бывалых игроков делать покупки побольше.

Покупку внутриигрового контента лучше реализовывать с помощью нативного сервиса под каждую платформу отдельно. Пользователи склонны больше доверять таким сервисам. К примеру, если вы разрабатываете приложение под Android, удобнее всего воспользоваться Google Play In-app Billing. Воспользовавшись данным сервисом вы без труда в дальнейшем сможете наполнять приложение продаваемым контентом из консоли разработчика, не обновляя его лишний раз.

Магазин Pokemon GO

10. Графика и звук

Современные игры устанавливают чрезвычайно высокие требования к качеству графики. Учитывая то, что в Pokémon GO используется трехмерная графика, за ее разработку придется отдать немалую часть бюджета. Также лучше, чтобы подготовка моделей велась паралельно с написанием кода. Как вариант, можно купить модели в Unity Asset Store, но это крайне нежелательно, поскольку лишает вашу игру индивидуальности и не поможет вам сделать Pokémon GO-аналог достаточно ярким и запоминающимся.

Модели в Pokemon GO

Что касается звука, то здесь можно подобрать готовые решения за невысокую плату на Audio Jungle, Music Loops или The Music Case.

Стоимость разработки игры вроде Pokémon GO

Теперь, когда вы знаете, какие элементы являются важной составляющей приложения вроде Pokémon GO, давайте посмотрим, сколько стоит разработка клона Pokémon GO:

  • Разработка клиентского приложения и геймдизайн — $60-100K
  • UI/UX — $6,5K
  • Бекэнд — $80K
  • Расходы на серверы — $150K
  • Тестирование — $50K
  • Модели с анимацией — $100K
  • Звуки — $15-20K
  • Менеджмент — $20K

Таким образом, стоимость разработки приложения Pokémon GO составит примерно $450-600K. Разумеется, это примерная цифра и точная стоимость мобильного приложения будет рассчитываться из требуемого функционала.

Нужен MVP, разработка под iOS, Android или прототип приложения? Ознакомьтесь с нашим портфолио и сделайте заказ уже сегодня!

Об авторе

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

Похожие статьи

Вернуться к списку записей К списку записей