Достижения могут стать отличным способом повысить вовлеченность пользователей в вашу игру. Вы можете реализовать достижения в своей игре, чтобы побудить игроков экспериментировать с функциями, которые они обычно не используют, или подойти к игре с совершенно разными стилями игры. Достижения также могут быть интересным способом для игроков сравнить свои успехи друг с другом и принять участие в беззаботном соревновании.
Чтобы узнать, как реализовать достижения для вашей платформы, см. Реализации клиента .
Атрибуты
Чтобы понять, как работают достижения, вам необходимо ознакомиться с некоторыми атрибутами, связанными с ними.
Эти основные элементы связаны с каждым достижением:
- Идентификатор — уникальная строка, создаваемая консолью Google Play. Вы будете использовать этот уникальный идентификатор для ссылки на достижения в своих игровых клиентах.
- Имя — короткое название достижения (например, «Пимен»). Значение может содержать до 100 символов.
- Описание – это краткое описание вашего достижения. Обычно это сообщает вашему игроку, как получить достижение (например, «Испечь лимонный пирог с безе до захода солнца»). Значение может содержать до 500 символов.
- Значок — квадратный значок, связанный с вашим достижением. Рекомендации по созданию значков достижений см. в разделе «Рекомендации по созданию значков» .
- Порядок списка — это порядок, в котором заблокированные достижения появляются, когда игрок просматривает достижения, связанные с вашей игрой. Это может быть в любом порядке, который вам нравится. Разблокированные достижения отображаются вверху списка в порядке их достижения.
Состояние
Достижения могут находиться в одном из трёх состояний:
- Скрытое достижение означает, что подробности о достижении скрыты от игрока. Play Games Services предоставляет общее описание заполнителя и значок для достижения, пока оно находится в скрытом состоянии. Мы рекомендуем скрыть достижение, если оно содержит спойлер о своей игре, который вы не хотите раскрывать слишком рано (например, «Узнайте, что вы все время были призраком!»).
- Раскрытое достижение означает, что игрок знает о достижении, но еще не заработал его. Большинство достижений начинаются в раскрытом состоянии.
- Разблокированное достижение означает, что игрок успешно заработал это достижение. Достижение можно разблокировать в автономном режиме. Когда игра выходит в сеть, она синхронизируется с игровыми сервисами Play, чтобы обновить состояние разблокировки достижения.
Дополнительные достижения
Достижения можно обозначить как стандартные или инкрементальные . Как правило, дополнительное достижение предполагает, что игрок постепенно продвигается к получению достижения в течение более длительного периода времени. По мере того, как игрок продвигается к дополнительному достижению, вы можете сообщать о частичном прогрессе игрока в игровые сервисы Play.
Служба Google Play отслеживает информацию о прогрессе, предупреждает игру, когда игрок выполнил критерии, необходимые для разблокировки этого достижения, и сообщает игроку, насколько далеко он продвинулся к достижению этой цели.

Дополнительные достижения суммируются в ходе игровых сессий, и прогресс нельзя удалить или сбросить из игры. Например, «Выиграть 50 игр» будет считаться дополнительным достижением. «Выиграть 3 игры подряд» не получится, поскольку прогресс игрока будет сброшен, когда он проиграет игру. «Иметь 5000 покерных фишек» также не соответствует критериям, поскольку игрок может получать и терять фишки во время игры. Что касается последних двух достижений, вы можете отслеживать состояние игрока «Победы подряд» или общее количество фишек и разблокировать стандартные достижения, когда игрок их зарабатывает.
При создании дополнительного достижения вы должны определить общее количество шагов, необходимых для его разблокировки (это должно быть число от 2 до 10 000). По мере того, как пользователь продвигается к разблокировке достижения, вы должны сообщать в Play Games Services о количестве дополнительных шагов, которые он сделал. Как только общее количество шагов достигнет значения разблокировки, достижение разблокируется (даже если оно было скрыто). Вам не нужно хранить совокупный прогресс пользователя.
Очки
Достижения имеют связанное с ними количество очков. Счет игрока должен быть кратен 5, и в игре никогда не может быть суммарно более 1000 очков за все достижения (хотя может быть и меньше). Кроме того, ни одно достижение не может иметь более 200 очков.
Отслеживание очков опыта (XP)
Игроки могут получать уровни в своем игровом профиле, зарабатывая достижения в играх с поддержкой Play Games. За каждое очко , связанное с достижением, игрок получает 100 очков опыта (XP), когда он получает это достижение. Другими словами:
XP for an achievement = 100 * (point value for the achievement)
Сервисы Play Games отслеживают XP, заработанные каждым игроком, и отправляют уведомление в приложение Google Play Games, когда игрок набирает достаточно очков для «повышения уровня». Игроки могут просмотреть свой уровень и историю опыта на странице своего профиля в приложении Google Play Games.
Минимальные достижения
Прежде чем игра будет опубликована, в игре, включающей достижения, должно быть не менее пяти достижений. Вы можете протестировать менее пяти достижений, но перед публикацией игры рекомендуется создать как минимум пять достижений.
Максимальные достижения
Количество достижений ограничено лимитом и распределением очков . При максимальном количестве очков, равном 1000, и каждому достижению, присваиваемому 5 очков, максимальное количество достижений составляет 200. Однако, если достижениям присваивается больше очков, в результате количество доступных достижений уменьшается.
Добавить достижения
Есть два способа впервые создать достижения с помощью консоли Google Play:
- Создать достижение . Добавляйте определения и метаданные для каждого достижения по одному.
- Импорт достижений : импортируйте определения и другие метаданные для нескольких достижений за один шаг.
Создать достижение
Чтобы создать достижение для новой и неопубликованной игры, выполните следующие действия:
- В консоли Google Play выберите игру.
- На странице Игровые сервисы Play — Достижения ( Grow > Play Games Services > Настройка и управление > Достижения ) выберите Создать достижение .
- На странице «Добавить достижения» заполните форму.
- Нажмите «Сохранить как черновик» .
- После того как вы создали достижение, вам необходимо опубликовать свою игру .
Добавить больше достижений
Если у вас уже есть достижения и вы хотите добавить еще:
- В консоли Google Play выберите игру.
- На странице Игровые сервисы Play — Достижения ( Grow > Play Games Services > Настройка и управление > Достижения ) выберите Добавить достижения .
Импортировать достижения
Чтобы добавить в игру несколько достижений одновременно, выполните следующие действия:
- Создайте zip-файл со своими достижениями.
- Загрузите файл.
Дополнительные сведения о zip-файле см. в разделе Рекомендации по работе с zip-файлами .
Чтобы импортировать достижения:
- В консоли Google Play выберите игру.
- На странице Игровые сервисы Play — Достижения ( Grow > Play Games Services > Настройка и управление > Достижения ) выберите Импортировать достижения .
- На странице «Импорт достижений» нажмите «Загрузить» .
- Выберите zip-файл для загрузки.
- Нажмите «Сохранить как черновик» .
- После того как вы импортировали достижения, вам необходимо опубликовать свою игру .
Опубликуйте свою игру
После того как вы протестируете и опубликуете свою игру , все ее игровые достижения будут опубликованы вместе с ней.
Редактировать достижение
Чтобы изменить уже созданное достижение, выберите его на вкладке «Достижения» в консоли Google Play. На этом этапе вы увидите ту же форму, которую использовали при первом создании достижения, и сможете редактировать любые поля по своему усмотрению.
Завершив редактирование достижения, нажмите кнопку «Сохранить как черновик» . Недавно отредактированное достижение будет находиться на стадии «готово к тестированию», и вы сможете его протестировать. Если все работает правильно, выберите «Повторно опубликовать» в раскрывающемся списке. При этом ваша игра вместе со всеми обновленными достижениями будет повторно опубликована для общественности.
Отменить редактирование
Если вы решите, что вам не нравится ваше текущее достижение и вы хотите вернуться к своему достижению в том виде, в каком оно было раньше, выберите «Вернуть» в раскрывающемся списке в консоли Google Play, и все ваши достижения вернутся к ранее опубликованной версии.
Удалить достижение
После того как ваше достижение будет опубликовано, его нельзя будет удалить.
Вы можете удалить достижение только в предварительно опубликованном состоянии, нажав кнопку « Удалить » в нижней части формы для этого достижения.
Сбросить достижение
Вы можете сбросить данные о прогрессе игрока только для ваших достижений в проекте.
- Чтобы сбросить достижения в консоли Google Play, нажмите кнопку « Сбросить прогресс достижения» в нижней части формы для этого события.
- Чтобы программно сбросить данные о достижениях, вызовите методы Management API
Achievements
.
Рекомендации по использованию значков
Значки должны быть созданы в виде файлов PNG, JPEG или JPG размером 512 x 512 пикселей. Вам нужно только предоставить нам значок разблокированного достижения. Мы автоматически создадим версию в оттенках серого для показанного значка. По этой причине мы рекомендуем, чтобы ваши значки достижений включали красочные элементы, чтобы ваши пользователи могли различать раскрытые и разблокированные достижения.
Когда значок достижения отображается во всплывающем сообщении Android, он накладывается на круг, а его внешние углы скрываются. Убедитесь, что ваша иконка по-прежнему выглядит хорошо в этих обстоятельствах.

Один и тот же значок используется во всех локалях, поэтому мы не рекомендуем включать в значок какой-либо текст или локализованное содержимое.
Рекомендации по работе с ZIP-файлами
Вы можете импортировать несколько достижений одновременно, используя zip-файл. Обратитесь к таблице, чтобы узнать точные имена файлов, которые будут использоваться в вашем zip-файле:
Имя файла | Обязательный или необязательный | Принятые значения |
---|---|---|
AchievementsMetadata.csv | Необходимый | Метаданные для каждого достижения. См. Атрибуты . |
AchievementsLocalizations.csv | Необязательный | Обеспечивает перевод названий и описаний достижений. |
AchievementsIconMappings.csv | Необязательный | Сопоставляет достижения с их файлами значков. |
Файлы значков | Необязательный | Значки в формате PNG, JPEG или JPG. |
Требования к zip-файлу:
- Никаких подкаталогов.
- Уникальные имена файлов.
- Только файлы CSV, PNG, JPEG или JPG.
- Файлы CSV не должны иметь строки заголовка.
- Размер каждого файла не должен превышать 1 МБ.
- ZIP-файл не должен содержать более 203 файлов.
- Общий размер zip-файла не должен превышать 200 МБ.
Формат AchievementMetadata.csv
Файл AchievementsMetadata.csv
содержит метаданные для каждого достижения. Он должен включать информацию в виде значений, разделенных запятыми, в следующем порядке:
Name,Description,Incremental value,Steps Needed,Initial State,Points,List Order
Эти поля описаны в следующей таблице:
Заголовки столбцов CSV | Обязательный или необязательный | Принятые значения |
---|---|---|
Имя | Необходимый | Максимум 100 символов |
Описание | Необязательный | Максимум 500 символов |
Дополнительная стоимость | Необязательный | True или False |
Необходимые шаги | Требуется, если Incremental Value имеет True. | Число (без дробей и десятичных знаков) |
Исходное состояние | Необходимый | Hidden или Revealed |
Очки | Необходимый | Число, кратное 5, значение должно находиться в диапазоне от 5 до 200. |
Порядок списка | Необязательный | Число (без дробей и десятичных знаков, больше нуля) |
Требования к файлу AchievementsMetadata.csv
:
- В каждой строке должно быть семь значений. Если вы хотите опустить значение, оставьте его пустым.
- Поля
Name
иDescription
используются в качестве локали по умолчанию. - Поле
Name
должно быть уникальным для всех достижений. - Следующие поля не должны содержать запятых:
Name
иDescription
.
Пример файла AchievementsMetadata.csv
:
Achievement1,Achievement One,True,100,Hidden,5,20
Achievement2,Achievement Two,False,,Revealed,10,30
ДостиженияЛокализации в формате.csv
Файл AchievementsLocalizations.csv
— это дополнительный файл, в котором задаются все данные, необходимые для описания каждого достижения для пользователей в разных регионах. Достижения переводятся в соответствии с локалями, указанными в игре.
Он должен включать информацию в виде значений, разделенных запятыми, в следующем порядке:
Name, Localized name, Localized description, locale
Эти поля описаны в следующей таблице:
Заголовки столбцов CSV | Обязательный или необязательный | Описание | Принятые значения |
---|---|---|---|
Имя | Необходимый | Должно соответствовать столбцу Name из AchievementsMetadata.csv . | Максимум 100 символов |
Локализованное имя | Необходимый | Локализованное название достижения. | Максимум 100 символов |
Локализованное описание | Необязательный | Локализованное описание достижения в указанной локали. | Максимум 500 символов |
Языковой стандарт | Необходимый | Код локали, например en-US . | Добавьте переводы для своей игры, прежде чем указывать локаль. Обратите внимание, что вы не можете указать локаль по умолчанию. Поддерживаемые коды локали можно найти в списке поддерживаемых языков . |
Требования к файлу AchievementsLocalizations.csv
:
- Имена достижений в игре должны быть уникальными для каждой локали. Например, если игра поддерживает локали en-US и fr-FR, достижение с именем «Achievement1» для en-US также может называться «Achievement1» для fr-FR.
- В каждой строке должно быть четыре значения. Если вы хотите опустить значение Локализованное описание, оставьте его пустым.
Пример файла AchievementsLocalizations.csv
:
Achievement1,Achievement One,This is the description of achievement one in English.,en-US
Achievement1,Achievement Un,Voici la description de l'achievement un en français.,fr-FR
Achievement2,Achievement Two,Description of achievement two.,en-US
Achievement2,Logro Dos,Descripción del logro dos.,es-ES
Achievement3,Achievement Three,,en-US
Achievement3,Erfolg Drei,,de-DE
Формат AchievementsIconMappings.csv
Файл AchievementsIconMappings.csv
— это дополнительный файл, который используется для сопоставления ваших достижений с данным значком. Он должен включать информацию в виде значений, разделенных запятыми, в следующем порядке:
Name, icon filename
Эти поля описаны в следующей таблице:
Заголовки столбцов CSV | Обязательный или необязательный | Описание |
---|---|---|
Имя | Необходимый | Должно соответствовать столбцу Name из AchievementsMetadata.csv . |
Имя файла значка | Необходимый | Имя вашего файла значка. |
Требования к файлу AchievementsIconMappings.csv
:
- В каждой строке должно быть два значения.
- Файлы значков могут быть только в форматах PNG или JPEG.
Пример файла AchievementsIconMappings.csv
:
Valid Achievement,valid-achievement-icon.png
Incremental Achievement,incremental-achievement-icon.jpeg
No Description,no-description-icon.png
Hidden Initial State,hidden-initial-state-icon.png
Large Point Value,large-point-value-icon.jpeg
Файлы значков
Значки, на которые вы ссылаетесь в файле AchievementsIconMappings.csv
, должны существовать в текущем импортируемом вами ZIP-архиве. Дополнительную информацию см. в разделе Рекомендации по использованию значков .
Добавить переводы достижений
Вы можете указать свои переводы для достижений, связанных с вашей игрой. Прежде чем сделать это, сначала обязательно выполните действия, описанные в разделе «Добавление переводов для вашей игры» .
Есть два способа добавить переводы для вашей игры:
Вы можете использовать опцию импорта достижений , чтобы загрузить переводы для множества новых достижений одновременно. Вы не можете использовать эту опцию для загрузки переводов уже существующих достижений.
Вы можете добавить переводы для каждого достижения в вашей игре. Чтобы добавить свой перевод для каждого достижения:
- В консоли Google Play откройте вкладку «Достижения» для своей игры, затем выберите существующее достижение.
- На странице сведений о достижениях выберите вкладку языка, который вы ранее добавили на вкладке сведений об игре .
- На странице сведений о достижении для этого языка отредактируйте форму, указав свои переводы для этого достижения.
- Нажмите «Сохранить» , чтобы сохранить переведенные сведения о достижениях.
Клиентские реализации
Чтобы узнать, как реализовать достижения для вашей платформы, посетите следующие ресурсы: