Pull to refresh

Разработка игрового приложения под iPhone. Часть 2

Game development

Часть вторая


Первую часть можно прочитать тут.

Программная часть


iPad приложение

Доработка приложения для iPad заняло всего неделю. Основное время было затрачено на переработку пользовательского интерфейса. Аспект разрешения экрана iPad и iPhone разный, следовательно если вы не учли это при проектировании интерфейса — у вас проблема (особенно если количество экранов у вас велико).
Если 1024, не меняя аспект, привести к 480, то результирующая картинка будет 480x360 — получаем 40 лишних пикселей по вертикали. Одно из простых решение, это оставить пустое место снизу и сверху. Мне этот подход не нравится. Так как у меня всего три экрана (и почти все в векторе) я переделал исходные материалы под расширение 1024x768 и написал утилиту перегоняющую в 480x320, урезая(сдвигая) конкретные не нужные мне части сверху, снизу или с обоих сторон.

Полностью переписал диалог постинга в твиттер, старый не был рассчитан для iPad.
Перевод бинарного файла в универсальный формат занял ровно один клик. Выбираете таргет и на нем “Upgrade this target to ipad”.
Чтобы программно узнать iPad или не iPad я использовал вот такой код:
BOOL isPad()
{
#ifdef UI_USER_INTERFACE_IDIOM
return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
#else
return NO;
#endif
}

HD или не HD

Часть разработчиков делают HD версию специально для iPad. На мой взгляд по следующим причинам:
  • Каждое новое приложение висит минимум день в списке новых приложение (апдейты в AppStore больше не появляются в категории «новые»)
  • Приложение HD дороже чем не HD
  • Приложение для iPad сильно больше в размере и вместе с ресурсами для iPhone оно становится очень большим по размеру

Я решил делать универсальное приложение по таким причинам:
  • моё приложение по размеру всего +2мб
  • не вижу причину по которой iPad версия должна стоить дороже, если повышать цену то сразу на все.
  • поддерживать 2 проекта удобнее чем 4 (в случае HD было бы: MyApp, MyApp lite, MyApp HD, MyApp Lite HD).

Мелкие доработки

Добавил кнопку «full version» которая ведет на аппстор — источник
Добавил бигбоард в уровень с надписью что полная версия уже доступна.
image

Со мной связались playhaven и предложили заинтегрировать их SDK, поэтому в новой лайт версии добавилась кнопка “More Games” которая открывает их обменник приложениями.

Итог: Приложение можно скачать на iPad, iPhone — приложение работать будет одинаково выбирая наилучшее качество арта в зависимости от платформы

Бизнес часть


В наличие Лайт и Полная версия. Лайт включает в себя ограниченную функциональность плюс рекламные баннеры и бесплатна. Полная версия не содержит рекламы и стоит 99 центов.

Отслеживание продаж и активности приложения


Для лайт версии все более менее просто, благодаря встроенной рекламе я могу на сайте Apple ежечасно смотреть количество запросов на показ баннеров и количество самих показов, это не показывает количество новых скачиваний но дает хорошие показатели по запускам.
Для платной все сложнее. Встроенной рекламы нет, соответственно информации по запускам у нас нет. Единственный способ хоть как то узнать динамику продаж в течении дня — это смотреть количество игроков в Game Center. Совпадение не 100 процентное, но динамику продаж в течении дня представляет довольно точно. При небольшом количестве проданных копий количество новых игроков в Game Center почти совпадает с количеством продаж, чем больше становится количество продаж тем больше расхождение.
Реальное количество продаж можно узнать ежедневно на сайте Apple или при помощи их приложения ITC.

Отслеживание позиции вашего приложения в разный аппсторах


AppRankings — когда-то это приложение продавалось в аппсторе, но в какой-то момент аппле не заапрувила его и создатель выложил исходники для свободного скачивания. Утилита позволяет отслеживать положение вашего приложения почти во всех аппсторах. Приложение скачивает топы с нужных вам стран и категорий и если ваше приложение там замечено показывает и записывает ранк в историю. Немножко изменив исходный код я вывел на экран также и минимальное значение позиции в топах по стране и категории (цифра после звездочки).
image
Неприятность заключается в том, что вам надо время от времени запускать это приложение и сканировать аппсторы, ведь история показывается только из того что было вами отсканировно.

www.applyzer.com — сайт, в бесплатный пакет которого входит дневная статистика по всем аппсторам, есть возможность посмотреть все обзоры и историю.
Если вы хотите получать ежечасные изменения стоит это где-то 1 евро в месяц за приложение.

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

На обоих сайтах вы можете отслеживать любое приложение.
Очень интересно смотреть статистику по похожим приложениям, например, было замечено, что в определенных странах демолишеры явно пользуются популярностью.
Оба сайта показывают ранки в пределах топ 1000, где они берут данную информацию мне не очень понятно. Я верю только топ 100 (если кто-то знает как можно заглянуть за топ 100 дайте мне знать)
Советую использовать оба сайта, время посуточного апдейта у них разное, это позволяет видеть картину чаше чем 1 раз в день (http://www.appannie.com последнее время отстаёт на 1 день).

Хитрости AppStore

  • не забываем выбирать как минимум 2 категории для вашего продукта. Я когда выпустил первую версию лайта указал только категорию Puzzle, cоответственно в новых я был только в категории Puzzle. Очень хорошо что при выпуске обновлений это можно менять. Мое приложение вы можете сейчас найти как в Puzzle так и в Arcade.
  • имя приложения — AppStore при показе новых релизов за день делает сортировку по алфавиту. Если ваше приложение начинается с английской буквы A или с восклицательного знака, то в разделе новые оно будет висеть выше и дольше. Злоупотреблять названиями или нет, решать уже вам.
  • не ленимся прописывать теги, ведь мы хотим чтобы наше приложение находилось по словам «разрушалка» «динамит» и т д

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

Хитрости не AppStore



Есть еще несколько популярных сайтов и программ в которых ваше приложение может появляться:
  • appshopper.com — на мой взгляд самый полезный: проблема была в том, что по какой-то причине мое приложение там не появилось совсем. Только после 2-ух писем с интервалом в суппорт это исправилось. У них имеется также и iOS клиент.
  • Приложение AppKing — в этом месте появилась только лайт версия, полная так и не появилась

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


    Встроенная реклама



    По статистике заметил что количество запросов в лайт версии отличается от количества показов — происходит это в случае когда игрок запустил игру и сразу начал играть, не дождавшись ответа с сервера Apple. Конечно можно показывать рекламу постоянно, но мне не нравится мешать процессу игры всякими баннерами. В качестве компромисса решил показывать рекламу между уровнями.
    На картинке снизу иллюстрация данной проблемы — большое количество запросов и отсутствие показов.
    image
    Также заинтегрировал AdMob. Его плюс в том, что он работает на всех устройствах где ос меньше 4 (iAd только с 4.0+).
    Для iPad оставил только AdMob — это позволило отделить статистику по айпадам и айфонам
    Для джайлбрейкнутых устройств iAd показывает только тестовую рекламу и не учитывает ее, в связи с этим была идея для таких устройств показывать рекламу только через admob, но код который проверяет на джайлбрейк может немножко не понравится Apple при ревью и бинарник будет отклонен. Решил перенести это на следующие версии.

    Продвижение



    Игра в жанре демолишеров в 3д исполнении. Геймплей меняется координально. Уровень сложности повышается.
    Это и было взято за основу.
    Везде где постились анонсы об этом было написано.
    Основной список сайтов и форумов был взят из данного документа devmac.ru/wp-content/uploads/2009/09/iZendeveBook-SecretsofiPhoneAppMarketingv1.pdf

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

    Платная реклама

    Пока не пользовался

    Lite и не Lite


    Как я уже писал лайт версия вышла раньше платной.
    Я так и не решил для себе как правильно, но позволю себе проанализировать несколько вариантов:
    • оба одновременно — ваши приложения появятся на соседних строках и игрок будет видеть их сразу. Сможет поиграть в лайт и если понравится то сразу купить платную. У этого варианта есть недостаток — ваше приложение как лайт так и не лайт провисят в новых только один день. Именно по этому два релиза предпочтительнее — каждое будет висеть в новых по дню независимо друг от друга.
    • платная сразу и бесплатная позже — тут на мой взгляд единственный минус это отсутствие возможности пощупать продукт не платя за него. можно так подгадать что безплатная версия выйдет на след день и вы будете иметь 2 ваших приложения висящих в новых с разницей в один день.
    • Бесплатная сразу и платная позже — тут минус в том, что игрок поиграв в бесплатную и захотев платную будет разочарован.
    • одна версия где через inapp puchase можно открыть весь платный контент


    Идеальный вариант на мой взгляд таков — платная и как можно быстрее бесплатная (на след или через день). Просто укажите дату релиза которая вам удобна, например, лайт на 1 день позже или раньше. Большинство на мой взгляд делают выпуск платной сразу и через какое то время бесплатной.
    Еще раз подчеркну что этом мое личное наблюдение.

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

    Распределение продаж по странам:
    * US 41.5%
    * EU 22.7%
    * JP 22.7%
    * CA 10%
    * GB 9.2%
    * AU 3.4%
    * Other 1.5%

    Часть 3

Tags:iphoneiosgamesipad приложениеgame developmentgame dev
Hubs: Game development
Rating 0
Views3.1K

Popular right now

С++ game developer
from 170,000 to 200,000 ₽SPLRemote job
С++ game developer
from 100,000 to 170,000 ₽SPLRemote job
Разработчик iOS/iPhone
from 125,000 to 250,000 ₽Golf PadНовосибирск
Sales Development Representative/ Business development manager
from 80,000 to 120,000 ₽RoonyxRemote job
Frontend Development Lead
to 550,000 ₽NUTSonМоскваRemote job

Top of the last 24 hours