Контрольный список качества игровых сервисов Google Play, Контрольный список качества игровых сервисов Google Play, Контрольный список качества игровых сервисов Google Play

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

Этот документ поможет вам сосредоточиться на ключевых аспектах качества, набора функций и пользовательского интерфейса, которые могут оказать существенное влияние на успех вашей игры. Для каждой основной области представлен контрольный список минимальных требований, лучших практик и полезных улучшений. Чтобы предоставить игрокам наилучший продукт, следуйте рекомендациям контрольного списка в максимально возможной степени.

1. Войдите в систему

Следующие задачи контрольного списка относятся к реализации функции входа в систему в вашей игре. Узнайте больше о том, как работает вход в систему и как его следует реализовать, в разделе «Концепции входа в систему» . Примеры кода для реализации входа в мобильные игры см. в разделе Реализация входа в Android .

ИДЕНТИФИКАТОР Важность Описание
1.1 Необходимый Войдите в систему с помощью игровых сервисов Google Play.
1.1.1. Автоматически регистрируйте игроков при запуске игры; использовать ручной вход в качестве резервной копии

В играх должен быть реализован автоматический вход, чтобы помочь игрокам быстро пройти аутентификацию и авторизацию для использования полного набора функций, предоставляемых игровыми сервисами Google Play. Если автоматический вход не удался, ваше приложение должно предложить игрокам войти в систему в интерактивном режиме . Используя интерактивный вход, игроки могут самостоятельно войти в игру, а Play Games гарантирует, что их профиль правильно настроен для использования в вашей игре. Сочетание тихого и интерактивного входа в систему обеспечивает самый высокий уровень входа в систему с минимальным неудобством для пользователя.

Если игрок решит не входить в систему, запомните это и не запрашивайте его снова. Вместо этого предоставьте кнопку входа . Кнопку входа в систему должно быть легко найти игрокам; например, он должен быть доступен с главного экрана или расположен на экране «Настройки». Эта кнопка не должна быть спрятана на несколько уровней в меню игры. Продолжайте пытаться автоматически регистрировать игроков каждый раз, когда они запускают вашу игру — они могут изменить свои предпочтения и автоматически войти в систему.

1.2 Необходимый Не запрашивайте области, не относящиеся к Play Games, при создании клиента для входа. Это позволит игрокам автоматически входить в вашу игру, поскольку запрос областей, отличных от Play Games, заставит пользователей использовать интерактивный вход.

Если вы уже запрашиваете области, не относящиеся к Play Games, удалите все ненужные области из конструкции GoogleSignInOptions вместе со всеми API, которые вы больше не используете. Если вам нужно запросить другие области (например, если вы хотите просмотреть электронную почту пользователя в маркетинговых целях), сделайте это в соответствующее время, а не в рамках процесса входа.

// This is the proper way to do it
GoogleSignInOptions signInOption = GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN;
1.3 Необходимый Разрешить игрокам оставаться в системе.

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

1,4 Необходимый Отобразите всплывающее окно «Подключение» соответствующим образом во время входа в систему.

На устройствах Android всплывающее окно «Подключение» к Google Play Games должно отображаться при каждом вызове процесса входа. Для этого вам необходимо вызвать метод setViewForPopups() класса GamesClient . Убедитесь, что это всплывающее окно отображается при автоматическом входе игрока в начало игры. Это позволит игрокам узнать, что они правильно входят в вашу игру.

В следующем примере показано, как всплывающее окно «Подключение» может появиться в игре Android во время входа в систему, за которым следует краткая анимация логотипа игровых сервисов Google Play.

На снимке экрана показано всплывающее окно «Подключение к».
1,5 Необходимый Предоставьте игрокам возможность выхода из игры.

После входа в систему у игрока всегда должна быть возможность выйти из системы.

Рассмотрите возможность размещения кнопки выхода на соответствующем игровом экране вашего приложения (например, на экране настроек вашего плеера).

1,6 Лучшая практика Помните, если игроки отказывались войти в систему.

Если игрок отказывается войти в систему, когда ваша игра изначально запускает процесс входа (например, если он нажал «Отмена» в пользовательском интерфейсе входа), вы все равно должны разрешить игроку продолжить игровой процесс.

Когда игрок снова запускает вашу игру, не запускайте автоматически интерактивный процесс входа. Эти игроки могут войти в систему позже, используя кнопку «Войти», которая должна находиться в вашей системе настроек. Это избавляет игроков от необходимости неоднократно отклонять вход в систему каждый раз, когда они запускают игру.

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

1,7 Лучшая практика Максимизируйте количество вошедших игроков.

Увеличение количества игроков, входящих в игровые сервисы Google Play, принесет пользу вашим игрокам, поскольку у них появится больше возможностей для совместной и соревновательной игры. Чтобы максимально увеличить количество игроков, вошедших в игровые сервисы Google Play, вам настоятельно рекомендуется автоматически предлагать им войти в систему, как описано выше.

В противном случае направьте игроков к процессу входа как можно раньше с одного из следующих пунктов (чаще всего рекомендуется в первую очередь):

  • Сразу после начала игры.
  • Сразу после вводного опыта, такого как кат-сцена или обучение.
  • Когда игрок нажимает кнопку входа в Google в любом месте вашей игры.
1,8 Хорошо иметь Следуйте рекомендациям Google по брендингу.

Чтобы предоставить игрокам комплексный, привлекательный и последовательный опыт, внедрите рекомендации по брендингу игровых сервисов Google Play .

1,9 Хорошо иметь Напомните игрокам, что они вошли в систему.

Дайте вошедшим в систему игрокам соответствующее напоминание или сигнал, когда ваша игра выполняет какое-либо действие от их имени. Например, когда вошедший в систему игрок завершает уровень, вы можете предоставить такое сообщение, чтобы указать, что счет и достижения игрока автоматически загружаются: «Вы вошли в систему с помощью Google. Ваши достижения и результаты будут сохранены автоматически. ."

1.10 Необходимый Резервное копирование прогресса игрока с помощью идентификатора игровых сервисов Play.

Чтобы игроки не потеряли свой прогресс при переключении или перезагрузке устройства, а также если они играют на нескольких устройствах, убедитесь, что их прогресс сохранен в решении для сохранения в облаке, и используйте идентификатор игровых сервисов Play в качестве ключа ( безопасно , если вы используете свой собственный). внутренний игровой сервер. Когда игроки входят в систему со своим идентификатором игровых сервисов Play, проверьте, существует ли прогресс для этой учетной записи, и если да, позвольте игроку продолжить с того места, где он остановился. Вы можете использовать собственное решение для сохранения в облаке или сохраненные игры Play Games Services.

Если пользователь не вошел в систему, попробуйте сохранить прогресс игрока локально, а затем синхронизируйте этот прогресс, когда игрок в конце концов войдет в систему. Это помогает предотвратить потерю любого прогресса игрока, если игрок откладывает вход в вашу игру.

2. Достижения

Следующие задачи из контрольного списка применимы к реализации функции «Достижения» в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
2.1 Необходимый Убедитесь, что все достижения достижимы.

Игроки должны иметь возможность разблокировать все созданные вами достижения.

2.2 Лучшая практика Сделайте достижения различимыми.

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

2.3 Лучшая практика Оценивайте достижения пропорционально.

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

2.4 Лучшая практика Создавайте достижения для различных уровней сложности.

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

Например, на следующем снимке экрана показано трудно заработанное достижение, которое помогает мотивировать и удерживать поклонников игры.

трудно получить достижение, требующее заработать 5 тысяч драгоценных камней
2,5 Хорошо иметь Не загружайте достижения заранее.

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

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

2.6 Хорошо иметь Определите достижения, связанные с захватывающими игровыми действиями.

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

2,7 Хорошо иметь Используйте цветные значки достижений.

В игровых сервисах Google Play используются версии значков достижений в оттенках серого, чтобы показать, заработаны они или нет. Если вы ограничены в использовании только черных (или полностью белых) значков достижений, отображайте их на цветном фоне.

2,8 Хорошо иметь Минимизируйте использование скрытых достижений.

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

2,9 Хорошо иметь Избегайте достижений, которые слишком зависят от случайности.

«Найти 100 сундуков с сокровищами» — лучшее достижение, чем «Найти предмет, который с вероятностью 1% появится в сундуке с сокровищами».

2.10 Хорошо иметь Думайте как «Охотник за достижениями».

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

2.11 Хорошо иметь Убедитесь, что значок вашего достижения отображается правильно.

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

3. Таблицы лидеров

Следующие задачи из контрольного списка применимы для реализации функции таблицы лидеров в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
3.1 Лучшая практика Сделайте таблицы лидеров видимыми в главном меню и после перехода по клавишам.

Таблицы лидеров должны быть легко доступны при загрузке игры. После критических переходов в игре (например, в конце уровня или при смерти игрока) игроки должны сразу увидеть ссылки на соответствующие таблицы лидеров.

3.2 Лучшая практика Определите верхние пределы баллов, которые могут быть отправлены.

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

3.3 Лучшая практика Используйте собственные значки.

Создайте собственный значок для каждой определенной вами таблицы лидеров; не используйте просто значок своей игры, так как он будет плохо отображаться в приложении Google Play Games.

3.4 Лучшая практика Поддерживайте соответствующую частоту представления результатов.

Отправляйте результаты после критических переходов в игре, например, в конце уровня или когда игровой персонаж игрока умирает. В играх без критических переходов (например, в играх типа «бесконечный раннер») разумно определите, как часто отправлять результаты. Результаты не должны подаваться непрерывно или каждую секунду.

3,5 Хорошо иметь Используйте оценочные теги.

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

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

3,6 Хорошо иметь Творчески создайте собственный пользовательский интерфейс таблицы лидеров.

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

3,7 Хорошо иметь Покажите игрокам, как они противостоят конкурентам.

API списков лидеров поддерживает отображение окон результатов (например, рейтинг игрока в пределах +/-10 позиций). Если вы создаете собственное представление, это может стать мощным способом мотивации взаимодействия. Это может быть показано сразу после критического перехода в игре (например, в конце уровня или когда игровой персонаж игрока умирает). Избегайте ненужных кликов между вашими игроками и информацией об их рейтинге.

4. Друзья

Следующие задачи контрольного списка применимы к реализации API друзей в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
4.1 Необходимый Когда игроки отображаются в списке, покажите значок Play Games рядом с пользователями, у которых есть профиль Play Games.

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

4.1.1. Значок Play Games должен быть кликабельным.
Если пользователь нажимает значок, игра должна вызвать getCompareProfileIntent() или getCompareProfileIntentWithAlternativeNameHints() чтобы показать пользовательский интерфейс, в котором пользователь может сравнить себя с профилем другого игрока.
4.1.2. Поддержка профилей игроков и приглашений друзей для настраиваемых имен игроков в игре.
Если игрок устанавливает в игре другое имя (и не использует имя своего профиля Play Games), используйте getCompareProfileIntentWithAlternativeNameHints() чтобы предоставить это альтернативное имя в игре как для текущего игрока, так и для игрока, которого он просматривает, в качестве контекста. для просмотра профиля и любого приглашения друга, отправленного из него. В качестве значений передавайте только постоянные глобальные имена игроков, а не произвольный пользовательский контент. Это требование означает, что приглашения друзей, отправленные из игры, будут предоставлять контекст обоим игрокам:
  • Получатель увидит внутриигровое имя отправителя приглашения, а также название игры.
  • При просмотре дружбы отправитель по-прежнему будет видеть внутриигровое имя получателя, а также игру, из которой он его инициировал.
4.2 Лучшая практика Используйте разные значки, чтобы показать, какие пользователи Play Games уже являются друзьями, а какие еще не являются друзьями Play Games, но вошли в систему с помощью Play Games. Используйте два значка для пользователей Play Games: один для «Друзья» и один для «Не друзья» (или когда статус дружбы неизвестен).
Значок друзей
Значок «Не друзья»
4.3 Лучшая практика Вызывайте loadFriends() каждый раз при входе в систему и отображайте список друзей, чтобы убедиться, что список друзей актуален. Убедитесь, что игроки видят обновленный список.
4.4 Лучшая практика Если в вашей игре уже есть друзья в игре, используйте API друзей, чтобы увеличить список друзей, добавив друзей из Play Games. Если игрок находится в списке друзей в игре и он также является другом Play Games, отобразите значок «Друзья».
4,5 Лучшая практика Если игрок отклонил запрос на доступ к своему списку друзей, не показывайте диалоговое окно с просьбой о доступе снова, пока пользователь не предпримет действие, подтверждающее, что хочет предоставить доступ (например, не нажмет кнопку «Импортировать друзей из Play Games»). ).
4.6 Лучшая практика Если игрок запретил доступ к списку друзей, дайте ему возможность предоставить доступ к списку друзей в будущем (например, после нажатия кнопки «Импортировать друзей из Play Games»).
4.7 Лучшая практика Если вы используете идентификатор игрока или список друзей на внутреннем сервере, вам необходимо обеспечить безопасный доступ к идентификатору или списку. Кроме того, для некоторых старых игр и игроков идентификатор игрока, возвращаемый Android SDK для игрока, может не совпадать с идентификатором, который видят другие игроки при просмотре этого игрока в той же игре; это особенно актуально при использовании списка друзей. Однако player_id , возвращаемый в REST API, всегда единообразен и всегда является идентификатором, который виден другим игрокам.

5. Квоты и ограничение ставок

Следующие задачи из контрольного списка относятся к управлению квотой и ограничением скорости в вашей игре. Чтобы узнать, как управлять квотой вашей игры и определять случаи превышения ее предела скорости, см. раздел «Управление квотой и ограничением скорости» .

ИДЕНТИФИКАТОР Важность Описание
5.1 Лучшая практика Используйте клиентские библиотеки.

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

Клиентская библиотека Android не будет отправлять на сервер результат игрока, если ваш результат не так хорош, как тот, который вы недавно отправили. Библиотека Android также автоматически объединяет частые вызовы увеличения достижений, когда обнаруживает, что ваша скорость ограничена.

5.2 Хорошо иметь Объедините частые звонки с дополнительными достижениями.

Если вы создаете файтинг и у вас есть достижение «Нанесите 5000 ударов», не отправляйте вызов увеличения достижения каждый раз, когда кто-то наносит удар. Подождите до конца раунда, а затем отправьте один вызов increment(xxx) (где xxx — общее количество ударов, нанесенных в этом раунде), или подождите, пока будет нанесено 50 ударов, прежде чем отправлять один вызов increment(50) .

5.3 Хорошо иметь Помните о своем использовании.

Следите за количеством обращений в игровые сервисы Google Play. Даже если вы избегаете превышения ограничений скорости, частые вызовы могут привести к увеличению сетевого трафика и ускорению разрядки аккумулятора устройства. Чтобы этого избежать, можно использовать следующие приемы:

  • При выполнении сохраненных игр сохраняйте частоту раз в несколько минут, а не при каждом нажатии кнопки.
  • Подождите, пока игра игрока закончится, прежде чем отправлять высокий балл.
  • Просмотрите ежедневную квоту вашего приложения, перейдя на панель управления проектом в Google Cloud Platform.

6. Сохраненные игры

Следующие задачи контрольного списка относятся к реализации функции сохраненных игр в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
6.1 Необходимый Добавьте метаданные, чтобы обеспечить дополнительный контекст для сохраненных игр.

При сохранении сохраненной игры вы должны включать как минимум следующие метаданные:

  • Изображение на обложке — снимок экрана, который фиксирует ход игры и напоминает игрокам о том, где они покинули игру.
  • Описание — краткое описание, которое обеспечивает дополнительный контекст для изображения обложки.
  • Временная отметка — указывает, как долго игрок играет в сохраненную игру.
6.2 Необходимый Разрешить игрокам загружать сохраненные игры.

Загрузите правильную сохраненную игру, когда игроки сделают выбор в приложении Play Games или в пользовательском интерфейсе выбора сохраненных игр по умолчанию.

,

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

Этот документ поможет вам сосредоточиться на ключевых аспектах качества, набора функций и пользовательского интерфейса, которые могут оказать существенное влияние на успех вашей игры. Для каждой основной области представлен контрольный список минимальных требований, лучших практик и полезных улучшений. Чтобы предоставить игрокам наилучший продукт, следуйте рекомендациям контрольного списка в максимально возможной степени.

1. Войдите в систему

Следующие задачи контрольного списка относятся к реализации функции входа в систему в вашей игре. Узнайте больше о том, как работает вход в систему и как его следует реализовать, в разделе «Концепции входа в систему» . Примеры кода для реализации входа в мобильные игры см. в разделе Реализация входа в Android .

ИДЕНТИФИКАТОР Важность Описание
1.1 Необходимый Войдите в систему с помощью игровых сервисов Google Play.
1.1.1. Автоматически регистрируйте игроков при запуске игры; использовать ручной вход в качестве резервной копии

В играх должен быть реализован автоматический вход, чтобы помочь игрокам быстро пройти аутентификацию и авторизацию для использования полного набора функций, предоставляемых игровыми сервисами Google Play. Если автоматический вход не удался, ваше приложение должно предложить игрокам войти в систему в интерактивном режиме . Используя интерактивный вход, игроки могут самостоятельно войти в игру, а Play Games гарантирует, что их профиль правильно настроен для использования в вашей игре. Сочетание тихого и интерактивного входа в систему обеспечивает самый высокий уровень входа в систему с минимальным неудобством для пользователя.

Если игрок решит не входить в систему, запомните это и не запрашивайте его снова. Вместо этого предоставьте кнопку входа . Кнопку входа в систему должно быть легко найти игрокам; например, он должен быть доступен с главного экрана или расположен на экране «Настройки». Эта кнопка не должна быть спрятана на несколько уровней в меню игры. Продолжайте пытаться автоматически регистрировать игроков каждый раз, когда они запускают вашу игру — они могут изменить свои предпочтения и автоматически войти в систему.

1.2 Необходимый Не запрашивайте области, не относящиеся к Play Games, при создании клиента для входа. Это позволит игрокам автоматически входить в вашу игру, поскольку запрос областей, отличных от Play Games, заставит пользователей использовать интерактивный вход.

Если вы уже запрашиваете области, не относящиеся к Play Games, удалите все ненужные области из конструкции GoogleSignInOptions вместе со всеми API, которые вы больше не используете. Если вам нужно запросить другие области (например, если вы хотите просмотреть электронную почту пользователя в маркетинговых целях), сделайте это в соответствующее время, а не в рамках процесса входа.

// This is the proper way to do it
GoogleSignInOptions signInOption = GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN;
1.3 Необходимый Разрешить игрокам оставаться в системе.

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

1,4 Необходимый Отобразите всплывающее окно «Подключение» соответствующим образом во время входа в систему.

На устройствах Android всплывающее окно «Подключение» к Google Play Games должно отображаться при каждом вызове процесса входа. Для этого вам необходимо вызвать метод setViewForPopups() класса GamesClient . Убедитесь, что это всплывающее окно отображается при автоматическом входе игрока в начало игры. Это позволит игрокам узнать, что они правильно входят в вашу игру.

В следующем примере показано, как всплывающее окно «Подключение» может появиться в игре Android во время входа в систему, за которым следует краткая анимация логотипа игровых сервисов Google Play.

На снимке экрана показано всплывающее окно «Подключение к».
1,5 Необходимый Предоставьте игрокам возможность выхода из игры.

После входа в систему у игрока всегда должна быть возможность выйти.

Рассмотрите возможность размещения кнопки выхода на соответствующем игровом экране вашего приложения (например, на экране настроек вашего плеера).

1,6 Лучшая практика Помните, если игроки отказывались войти в систему.

Если игрок отказывается войти в систему, когда ваша игра изначально запускает процесс входа (например, если он нажал «Отмена» в пользовательском интерфейсе входа), вы все равно должны разрешить игроку продолжить игровой процесс.

Когда игрок снова запускает вашу игру, не запускайте автоматически интерактивный процесс входа. Эти игроки могут войти в систему позже, используя кнопку «Войти», которая должна находиться в вашей системе настроек. Это избавляет игроков от необходимости неоднократно отклонять вход в систему каждый раз, когда они запускают игру.

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

1,7 Лучшая практика Максимизируйте количество вошедших игроков.

Увеличение количества игроков, входящих в игровые сервисы Google Play, принесет пользу вашим игрокам, поскольку у них появится больше возможностей для совместной и соревновательной игры. Чтобы максимально увеличить количество игроков, вошедших в игровые сервисы Google Play, вам настоятельно рекомендуется автоматически предлагать им войти в систему, как описано выше.

В противном случае направьте игроков к процессу входа как можно раньше с одного из следующих пунктов (чаще всего рекомендуется в первую очередь):

  • Сразу после начала игры.
  • Сразу после вводного опыта, такого как кат-сцена или обучение.
  • Когда игрок нажимает кнопку входа в Google в любом месте вашей игры.
1,8 Хорошо иметь Следуйте рекомендациям Google по брендингу.

Чтобы предоставить игрокам комплексный, привлекательный и последовательный опыт, внедрите рекомендации по брендингу игровых сервисов Google Play .

1,9 Хорошо иметь Напомните игрокам, что они вошли в систему.

Дайте вошедшим в систему игрокам соответствующее напоминание или сигнал, когда ваша игра выполняет какое-либо действие от их имени. Например, когда вошедший в систему игрок завершает уровень, вы можете предоставить такое сообщение, чтобы указать, что счет и достижения игрока автоматически загружаются: «Вы вошли в систему с помощью Google. Ваши достижения и результаты будут сохранены автоматически. ."

1.10 Необходимый Резервное копирование прогресса игрока с помощью идентификатора игровых сервисов Play.

Чтобы игроки не потеряли свой прогресс при переключении или перезагрузке устройства, а также если они играют на нескольких устройствах, убедитесь, что их прогресс сохранен в облачном решении для сохранения, и используйте идентификатор игровых сервисов Play в качестве ключа (безопасно , если вы используете свой собственный). внутренний игровой сервер. Когда игроки входят в систему, используя свой идентификатор игровых сервисов Play, проверьте, существует ли прогресс для этой учетной записи, и если да, позвольте игроку продолжить с того места, где он остановился. Вы можете использовать собственное решение для сохранения в облаке или сохраненные игры Play Games Services.

Если пользователь не вошел в систему, попробуйте сохранить прогресс игрока локально, а затем синхронизируйте этот прогресс, когда игрок в конце концов войдет в систему. Это помогает предотвратить потерю любого прогресса игрока, если игрок откладывает вход в вашу игру.

2. Достижения

Следующие задачи из контрольного списка применимы к реализации функции «Достижения» в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
2.1 Необходимый Убедитесь, что все достижения достижимы.

Игроки должны иметь возможность разблокировать все созданные вами достижения.

2.2 Лучшая практика Сделайте достижения различимыми.

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

2.3 Лучшая практика Оценивайте достижения пропорционально.

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

2.4 Лучшая практика Создавайте достижения для различных уровней сложности.

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

Например, на следующем снимке экрана показано трудно заработанное достижение, которое помогает мотивировать и удерживать поклонников игры.

трудно получить достижение, требующее заработать 5 тысяч драгоценных камней
2,5 Хорошо иметь Не загружайте достижения заранее.

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

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

2.6 Хорошо иметь Определите достижения, связанные с захватывающими игровыми действиями.

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

2,7 Хорошо иметь Используйте цветные значки достижений.

В игровых сервисах Google Play используются версии значков достижений в оттенках серого, чтобы показать, заработаны они или нет. Если вы ограничены использованием только черных (или полностью белых) значков достижений, отображайте их на цветном фоне.

2,8 Хорошо иметь Минимизируйте использование скрытых достижений.

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

2,9 Хорошо иметь Избегайте достижений, которые слишком зависят от случайности.

«Найти 100 сундуков с сокровищами» — лучшее достижение, чем «Найти предмет, который с вероятностью 1% появится в сундуке с сокровищами».

2.10 Хорошо иметь Думайте как «Охотник за достижениями».

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

2.11 Хорошо иметь Убедитесь, что значок вашего достижения отображается правильно.

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

3. Таблицы лидеров

Следующие задачи из контрольного списка применимы для реализации функции таблицы лидеров в вашей игре.

ИДЕНТИФИКАТОР Важность Описание
3.1 Лучшая практика Сделайте таблицы лидеров видимыми в главном меню и после перехода по клавишам.

Таблицы лидеров должны быть легко доступны при загрузке игры. После критических переходов в игре (например, в конце уровня или при смерти игрока) игроки должны сразу увидеть ссылки на соответствующие таблицы лидеров.

3.2 Лучшая практика Определите верхние пределы баллов, которые могут быть отправлены.

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

3.3 Лучшая практика Используйте собственные значки.

Создайте собственный значок для каждой определенной вами таблицы лидеров; не используйте просто значок своей игры, так как он будет плохо отображаться в приложении Google Play Games.

3.4 Лучшая практика Поддерживайте соответствующую частоту представления результатов.

Отправляйте результаты после критических переходов в игре, например, в конце уровня или когда игровой персонаж игрока умирает. В играх без критических переходов (например, в играх типа «бесконечный раннер») разумно определите, как часто отправлять результаты. Результаты не должны подаваться непрерывно или каждую секунду.

3,5 Хорошо иметь Используйте оценочные теги.

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

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

3,6 Хорошо иметь Творчески создайте собственный пользовательский интерфейс таблицы лидеров.

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

3,7 Хорошо иметь Покажите игрокам, как они противостоят конкурентам.

API списков лидеров поддерживает отображение окон результатов (например, рейтинг игрока в пределах +/-10 мест). Если вы создаете пользовательский вид, это может быть мощным способом мотивирования взаимодействия. Это может быть показано сразу после критического перехода в игре (например, в конце уровня или когда умирает персонаж игрока). Избегайте ненужных кликов между вашими игроками и их информацией о ранжировании.

4. Друзья

Следующие задачи контрольного списка применяются к реализации API друзей в вашей игре.

ИДЕНТИФИКАТОР Значение Описание
4.1 Необходимый Когда игроки отображаются в списке, покажите значок Play Games рядом с пользователями, которые имеют профиль Play Games.

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

4.1.1. Значок Play Games должен быть нажатием.
Если пользователь нажимает на значок, игра должна вызвать getCompareProfileIntent() или getCompareProfileIntentWithAlternativeNameHints() чтобы показать пользовательский интерфейс, где пользователь может сравнивать себя с профилем другого игрока.
4.1.2. Профили игроков и поддержка приглашений друга, для настраиваемых имен игровых игроков.
Если игрок устанавливает другое имя в игре (и не использует имя своего профиля игры), используйте getCompareProfileIntentWithAlternativeNameHints() чтобы предоставить это альтернативное имя внутриигрового имени как для текущего игрока, так и для игрока, которого они просматривают, как контекст для представления профиля и любого приглашения друга прислано из него. Пропустите только постоянные, глобальные имена игроков для значений, а не произвольного пользовательского контента. Это требование означает, что приглашения друга, отправленные изнутри игры, обеспечат контекст обоим игрокам:
  • Получатель увидит игровое имя отправителя приглашения, а также имя игры.
  • При просмотре дружбы отправитель все еще увидит игровое имя получателя, а также игру, из которой они ее инициировали.
4.2 Лучшая практика Используйте разные значки, чтобы показать, какие игровые пользователи уже являются друзьями, а какие еще не играют в Games Friends, но вписались в Play Games. Используйте две значки для пользователей Play Games, один для «друзей» и один для «не друзей» (или когда статус дружбы неизвестен).
Значок друзей
Не значок друзей
4.3 Лучшая практика Вызовите loadFriends() Каждый раз, когда вы входите и отображаете список друзей, чтобы убедиться, что список друзей в курсе. Убедитесь, что игроки видят обновленный список.
4.4 Лучшая практика Если ваша игра уже содержит в игровых друзьях, используйте API друзей, чтобы увеличить список друзей, добавив друзей Play Games. Если игрок в списке друзей в игре, и они также являются другом Play Games, покажите икону для «друзей».
4,5 Лучшая практика Если игрок отклонил запрос на доступ к списку своих друзей, не показывайте диалог, который снова с просьбой снова получить доступ, если только пользователь не предпримет действия, чтобы указать, что они хотят предоставить доступ (например, нажатие кнопки «Импорт игры друзей» ).
4.6 Лучшая практика Если игрок отрицает доступ к списку друзей, дайте им возможность предоставить список друзей в будущем (например, после нажатия кнопки «Игровые игры Play Play Friends»).
4.7 Лучшая практика Если вы используете список идентификаторов игрока или списка друзей с сервером Backend, вы должны получить доступ к идентификатору или списку безопасно . Кроме того, для некоторых старых игр и игроков идентификатор игрока, возвращенный Android SDK для игрока, может быть не тем же идентификатором, который видят другие игроки при просмотре этого игрока в той же игре; Это особенно актуально при использовании списка друзей. Тем не менее, player_id возвращается в рамках API остального, всегда является последовательным и всегда является идентификатором, который виден другим игрокам.

5. Квота и ограничение скорости

Следующие задачи контрольного списка применимы к управлению квотой и ограничением тарифов в вашей игре. Чтобы узнать, как управлять квотой вашей игры и обнаружить, когда превышается лимит ее ставки, см. Управление квотой и ограничением ставок .

ИДЕНТИФИКАТОР Значение Описание
5.1 Лучшая практика Используйте клиентские библиотеки.

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

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

5.2 Хорошо иметь Объедините частые вызовы с дополнительными достижениями.

Если вы делаете файтингу, и у вас есть достижения «бросить 5000 ударов», не отправляйте вызов приращения достижений каждый раз, когда кто -то наносит удар. Подождите до конца раунда, а затем отправьте один increment(xxx) вызов (где XXX - это общее количество ударов в этот раунд), или подождите, пока 50 ударов не будут нанесены перед отправкой одного increment(50) вызова.

5.3 Хорошо иметь Имейте в виду свое использование.

Познакомьтесь с количеством звонков, которые вы совершаете, в Google Play Services. Даже если вы избегаете ограничений по скорости удара, частые вызовы могут привести к высоким сетевым трафиком и привести к тому, что батарея устройства будет быстрее стереть. Чтобы избежать этого, вы можете использовать эти методы:

  • При выполнении сохраненных игр сохраняйте частоту раз в несколько минут, а не на каждой кнопке.
  • Подождите, пока игра игрока не закончится, прежде чем отправить высокий счет.
  • Просмотрите ежедневную квоту вашего приложения, перейдя на панель панели проекта на платформе Google Cloud.

6. Сохраняли игры

Следующие задачи контрольного списка применяются к реализации функции сохраненных игр в вашей игре.

ИДЕНТИФИКАТОР Значение Описание
6.1 Необходимый Добавьте метаданные, чтобы обеспечить дополнительный контекст для сохраненных игр.

Как минимум, вы должны включить следующие метаданные при совершении сохраненной игры:

  • Покрытие изображения - скриншот, который отражает прогресс в игре и напоминает игрокам, где они покинули игру.
  • Описание - Краткое описание, которое предоставляет дополнительный контекст для изображения обложки.
  • Плотка времени - указывает на то, как долго игрок играет в эту сохраненную игру.
6.2 Необходимый Позвольте игрокам загружать сохраненные игры.

Загрузите правильную сохраненную игру, когда игроки делают выбор из приложения Play Games или по умолчанию, выбранным игровым пользовательским интерфейсом.