Качество вашей игры влияет на её долгосрочный успех — с точки зрения количества установок, оценок и отзывов игроков, вовлеченности и удержания игроков. Перед публикацией игры важно убедиться, что она соответствует основным ожиданиям игроков благодаря привлекательным функциям и интуитивно понятному, хорошо продуманному пользовательскому интерфейсу.
Этот документ поможет вам разобраться в ключевых аспектах разработки игр, которые существенно влияют на их успех. Основное внимание уделяется качеству, набору функций и пользовательскому интерфейсу (UI).
Для каждой приоритетной области в данном документе содержится следующая информация:
- Контрольные списки с подробным описанием минимальных требований.
- Лучшие практики для улучшения вашей игры.
Чтобы выпустить высококачественную игру и предоставить игрокам наилучший продукт, в максимально возможной степени следуйте этим рекомендациям.
1. Аутентификация платформы
Следующие задачи из контрольного списка относятся к реализации функции аутентификации игроков в вашей игре. Подробнее о том, как работает аутентификация и как ее следует реализовать, см. в разделе «Аутентификация платформы» . Примеры кода по реализации аутентификации в мобильных играх см. в разделе «Аутентификация платформы на Android» .
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 1.1 | Необходимый | Аутентификация игроков осуществляется с помощью сервисов Google Play Games.
|
| 1.2 | Передовые методы | Следуйте рекомендациям Google по фирменному стилю. Чтобы обеспечить игрокам привлекательный и единообразный игровой процесс от начала до конца, внедрите фирменные стандарты Google Play Games Services . |
| 1.3 | Передовые методы | Напомните игрокам, что они прошли аутентификацию. Предоставляйте авторизованным игрокам соответствующее напоминание или подсказку, когда ваша игра выполняет какое-либо действие от их имени. Например, когда авторизованный игрок завершает уровень, вы можете вывести сообщение, указывающее на автоматическую загрузку его результатов и достижений: «Вы авторизованы в Google. Ваши достижения и результаты будут сохранены автоматически». |
| 1.4 | Необходимый | Создавайте резервные копии игрового прогресса, используя идентификатор сервиса Play Games. Чтобы игроки не теряли свой прогресс при переключении или перезагрузке устройств, а также при игре на нескольких устройствах, обеспечьте резервное копирование их прогресса в облачное хранилище и используйте идентификатор Play Games Services в качестве ключа, особенно если вы используете собственный игровой сервер. При аутентификации игроков с помощью идентификатора Play Games Services проверьте наличие прогресса для этой учетной записи и, если он есть, позвольте игроку продолжить с того места, где он остановился. Вы можете использовать собственное облачное хранилище или сохраненные игры Play Games Services. Если пользователь не авторизован, постарайтесь сохранить прогресс игрока локально, а затем синхронизировать его, когда игрок наконец авторизуется. Это поможет предотвратить потерю прогресса игрока, если он отложит авторизацию игры. |
2. Достижения
Следующие задачи из контрольного списка относятся к внедрению функции достижений в вашу игру.
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 2.1 | Необходимый | Минимум десять видимых достижений, распределенных на протяжении всего времени существования игры. Необходимо, чтобы как минимум 10 видимых достижений находились в открытом состоянии. |
| 2.2 | Необходимый | По меньшей мере четыре достижения должны быть вполне выполнимы и достижимы в течение часа игрового времени для каждого игрока. |
| 2.3 | Необходимый | Все достижения должны иметь уникальные названия и описания. Они должны четко показывать пользователям, что им нужно сделать, чтобы получить достижение. |
| 2.4 | Необходимый | Все достижения должны иметь уникальные значки. Иконки следует создавать в формате PNG, JPEG или JPG размером 512 x 512 пикселей с прозрачным фоном. Для получения дополнительной информации см. рекомендации по созданию иконок . |
| 2.5 | Необходимый | Убедитесь, что все цели достижимы. Игроки должны иметь возможность разблокировать все созданные вами достижения. |
| 2.6 | Передовая практика | Используйте поэтапные достижения для демонстрации прогресса. Достижения, полученные в ходе игры, накапливаются на протяжении всех игровых сессий. ![]() |
| 2.7 | Передовая практика | По меньшей мере сорок или более достижений, распределенных по всему времени существования игры, включая те, которые удивляют и радуют, отмечают важные этапы и отражают прогресс игрока. Не менее сорока достижений в любом штате, полученных за все время существования игры. |
| 2.9 | Передовая практика | Используйте скрытые достижения для создания элемента неожиданности и удовольствия. Скрытые достижения означают, что информация о достижении скрыта от игрока. |
| 2.10 | Передовая практика | Новые достижения добавляются при добавлении новых уровней или эпизодов в игру. Для получения более подробной информации см. раздел «Баллы и опыт» . |
| 2.11 | Передовая практика | Оценивайте достижения пропорционально. Количество очков достижений должно быть пропорционально времени или навыкам, необходимым для достижения этого достижения. |
| 2.12 | Передовая практика | Разрабатываемые проекты для различных уровней сложности. Включите в список несколько простых достижений, которые игрок может получить в ходе неспешной игры, ряд достижений средней сложности, требующих большего мастерства или целеустремленности, и одно-два очень сложных достижения для самых преданных игроков. Например, на следующем скриншоте показано труднодостижимое достижение, которое помогает мотивировать и удерживать поклонников игры. ![]() |
| 2.13 | Передовая практика | Не стоит ставить достижения на первое место. Избегайте награждать более чем одним достижением в первые 5 минут игры, поскольку новички в вашей игре не будут настолько увлечены, чтобы это имело для них значение. Не определяйте свои достижения таким образом, чтобы они непреднамеренно начислялись слишком рано в процессе игры. Например, остерегайтесь достижений, которые, скорее всего, будут легко получены в начале игры, таких как «Пройти уровень, не получив урона» . |
| 2.14 | Передовая практика | Определите достижения, связанные с увлекательными внутриигровыми действиями. Выберите показатели для создания достижений, которые сделают вашу игру более увлекательной и привлекательной для повторного прохождения (например, «количество убитых зомби» — более интересный показатель, чем «количество миль, пройденных вашим персонажем» ). |
| 2.15 | Передовая практика | Используйте цветные значки достижений. Сервисы Play Games используют черно-белые версии значков достижений, чтобы показать, получены они или нет. Если вы ограничены использованием только черных (или только белых) значков достижений, отображайте их на цветном фоне. |
| 2.16 | Передовая практика | Сведите к минимуму использование скрытых достижений. Скрытые достижения следует использовать только для того, чтобы избежать спойлеров в игре; они не должны быть нормой. |
| 2.17 | Передовая практика | Избегайте достижений, которые слишком сильно зависят от случая. «Найти 100 сундуков с сокровищами» — это более престижное достижение, чем «Найти предмет, вероятность появления которого в сундуке с сокровищами составляет 1%». |
| 2.18 | Передовая практика | Думайте как «охотник за достижениями». Некоторые игроки будут пытаться получить каждое созданное вами достижение. Старайтесь создавать достижения, ориентированные на эту категорию игроков. Избегайте создания достижений, которые слишком сильно зависят от элементов, не зависящих от игрока, или которые нельзя получить после того, как игрок принял решение в игре. |
Примеры
Несколько примеров, которые помогут вам создавать высококачественные результаты:
Хороший пример
На следующем скриншоте показаны хорошие примеры достижений. Достижения с уникальными названиями , значками и описаниями . Описания указывают, что нужно сделать, чтобы получить достижение.

Плохой пример
На следующем скриншоте показаны неудачные примеры достижений.

3. Таблицы лидеров
Следующие задачи из контрольного списка относятся к внедрению функции таблиц лидеров в вашу игру.
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 3.1 | Передовая практика | Сделайте таблицы лидеров видимыми в главном меню и после ключевых переходов. Таблицы лидеров должны быть легко доступны при загрузке игры. После важных переходов в игре (например, в конце уровня или при смерти игрока) игроки должны немедленно видеть ссылки на соответствующие таблицы лидеров. |
| 3.2 | Передовая практика | Определите верхние пределы для результатов, которые можно提交. По возможности, добавьте ограничения при создании таблиц лидеров, чтобы отбрасывать заведомо фиктивные результаты. |
| 3.3 | Передовая практика | Используйте пользовательские значки. Создайте собственный значок для каждой таблицы лидеров, которую вы определяете; не используйте просто значок своей игры, так как он будет плохо отображаться в приложении Google Play Games. |
| 3.4 | Передовая практика | Необходимо поддерживать приемлемую частоту отправки результатов. Результаты следует отправлять после важных переходов в игре, например, в конце уровня или при гибели игрового персонажа. Для игр без важных переходов (например, для игр типа «бесконечный раннер») следует руководствоваться здравым смыслом при определении частоты отправки результатов. Не следует отправлять результаты непрерывно или каждую секунду. |
| 3.5 | Передовые методы | Используйте метки результатов. Метки результатов — это дополнительные данные, которые можно отправлять вместе с отправленным результатом. Например, вы можете использовать метку результатов в качестве флага для подтверждения того, что отправленный игроком результат действителен. Пользовательские таблицы лидеров также могут считывать данные из этого тега. Например, если тег счета содержит идентификатор видео на YouTube, в котором игрок играет, ваша игра может создать ссылку для просмотра этого видео в таблице лидеров. |
| 3.6 | Передовые методы | Создайте свой собственный креативный интерфейс для таблицы лидеров. Если у вас есть ресурсы, создайте собственную пользовательскую таблицу лидеров на основе данных из социальных таблиц лидеров. Социальные таблицы лидеров, как правило, обеспечивают более привлекательный пользовательский опыт, чем публичные таблицы. Сначала проверьте, есть ли какие-либо записи в социальной таблице лидеров. Если нет, используйте вместо неё публичную таблицу лидеров. |
| 3.7 | Передовые методы | Покажите игрокам, как они выглядят на фоне конкурентов. API таблиц лидеров поддерживает отображение результатов (например, рейтинг игрока в пределах +/- 10 позиций). При создании пользовательского представления это может стать мощным способом повышения вовлеченности. Это можно показывать сразу после критического перехода в игре (например, в конце уровня или при гибели игрового персонажа). Избегайте лишних кликов между игроками и информацией об их рейтинге. |
4. Друзья
Следующие задачи из контрольного списка относятся к внедрению сервиса «Друзья» в вашу игру.
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 4.1 | Необходимый | При отображении игроков в списке, рядом с пользователями, имеющими профиль в Play Games, должен отображаться значок Play Games Services. Этот список может содержать список существующих друзей, список недавно сыгранных игр или другой список друзей.
|
| 4.2 | Передовая практика | Используйте разные значки, чтобы показать, какие пользователи Play Games уже являются друзьями, а какие еще не являются друзьями Play Games, но прошли авторизацию. Используйте два значка для пользователей Play Games: один для «Друзья» и один для «Не друзья» (или когда статус дружбы неизвестен). ![]() |
| 4.3 | Передовая практика | Вызывайте loadFriends() каждый раз при аутентификации и отображении списка друзей, чтобы убедиться, что список друзей актуален. Убедитесь, что игроки видят обновленный список. |
| 4.4 | Передовая практика | Если в вашей игре уже есть друзья, воспользуйтесь сервисом «Друзья», чтобы расширить список друзей, добавив друзей из Play Games. Если игрок находится в списке друзей в игре и одновременно является другом из Play Games, отобразите значок «Друзья». |
| 4.5 | Передовая практика | Если игрок отклонил запрос на доступ к списку друзей, не показывайте диалоговое окно с запросом на доступ повторно, если пользователь не предпринял никаких действий, подтверждающих его желание предоставить доступ (например, нажав кнопку **Импортировать друзей в игры**). |
| 4.6 | Передовая практика | Если игрок запретил доступ к списку друзей, предоставьте ему возможность разрешить доступ к списку друзей в будущем (например, после нажатия кнопки **Импортировать друзей из игр**). |
| 4.7 | Передовая практика | Если вы используете идентификатор игрока или список друзей с бэкэнд-сервером, вам необходимо обеспечить безопасный доступ к идентификатору или списку. Кроме того, для некоторых старых игр и игроков идентификатор игрока, возвращаемый Android SDK, может отличаться от идентификатора, который видят другие игроки при просмотре этого игрока в той же игре; это особенно актуально при использовании списка друзей. Однако player_id , возвращаемый в REST API, всегда остается неизменным и всегда является тем идентификатором, который виден другим игрокам. |
5. Квоты и ограничение скорости
Следующие задачи из контрольного списка относятся к управлению квотой и ограничением скорости в вашей игре. Чтобы узнать, как управлять квотой вашей игры и определять, когда превышен лимит скорости, см. раздел «Управление квотой и ограничением скорости» .
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 5.1 | Передовая практика | Используйте клиентские библиотеки. В библиотеках мобильного клиента используется ряд стратегий для сокращения количества обращений к сервису. Например, данные о достижениях и таблицах лидеров кэшируются, поэтому игроки могут просматривать свои достижения так часто, как им удобно, без необходимости повторных обращений к сервису. Клиентская библиотека Android не будет отправлять счет игрока на сервер, если ваш результат хуже, чем тот, который вы недавно отправили. Библиотека Android также автоматически объединяет частые вызовы увеличения достижений, когда обнаруживает, что у вас установлено ограничение на количество запросов. |
| 5.2 | Передовые методы | Сочетайте частые звонки с постепенными достижениями. Если вы разрабатываете файтинг и у вас есть достижение «Нанести 5000 ударов», не отправляйте вызов увеличения достижения каждый раз, когда кто-то наносит удар. Подождите до конца раунда, а затем отправьте один вызов |
| 5.3 | Передовые методы | Будьте внимательны к своему потреблению. Следите за количеством обращений к сервисам Google Play Games. Даже если вы избегаете превышения лимитов трафика, частые обращения могут привести к высокой нагрузке на сеть и более быстрому разряду батареи устройства. Чтобы этого избежать, можно использовать следующие методы:
|
6. Сохраненные игры
Следующие задачи из контрольного списка относятся к внедрению функции сохранений в вашу игру.
| ИДЕНТИФИКАТОР | Важность | Описание |
|---|---|---|
| 6.1 | Необходимый | Добавьте метаданные для предоставления дополнительного контекста для сохраненных игр. Как минимум, при сохранении игры необходимо указать следующие метаданные:
|
| 6.2 | Необходимый | Разрешите игрокам загружать сохраненные игры. При выборе сохраненной игры игроком либо через приложение «Играть в игры» , либо через стандартный интерфейс выбора сохраненных игр, загружается правильная сохраненная игра. |


