Загрузка игры и разметка геймплея

Загрузка игры

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

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

ysdk.features.LoadingAPI.ready()

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

Убедитесь, что в момент вызова метода из Game Ready в игре:

  • все элементы готовы к взаимодействию с игроком;
  • нет экранов загрузки.

Отследить метрику Game Ready можно во вкладке Performance в DevTools.

Пример

1const ysdk = await YaGames.init();
2
3// Сообщаем платформе, что игра загрузилась и можно начинать играть.
4ysdk.features.LoadingAPI?.ready()
1YaGames.init()
2    .then((ysdk) => {
3        // Сообщаем платформе, что игра загрузилась и можно начинать играть.
4        ysdk.features.LoadingAPI?.ready()
5    })
6    .catch(console.error);

Геймплей

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

ysdk.features.GameplayAPI.start()

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

  • запуск уровня;
  • закрытие меню;
  • снятие с паузы;
  • возобновление игры после показа рекламы;
  • возвращение в текущую вкладку браузера.

Убедитесь, что после отправки события GameplayAPI.start() игровой процесс сразу запущен.

ysdk.features.GameplayAPI.stop()

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

  • прохождение уровня или проигрыш;
  • вызов меню;
  • пауза в игре;
  • показ полноэкранной или rewarded-рекламы;
  • уход в другую вкладку браузера.

Убедитесь, что после отправки события GameplayAPI.stop() игровой процесс остановлен.

Важно

В момент возобновления игрового процесса снова вызовите метод ysdk.features.GameplayAPI.start().

Пример

 1const ysdk = await YaGames.init();
 2
 3// Сообщаем о старте геймплея.
 4ysdk.features.GameplayAPI?.start()
 5
 6// Игровой процесс активен.
 7
 8// Сообщаем об остановке геймплея:
 9// игрок вышел в меню, прошел уровень или планируется показ рекламы.
10ysdk.features.GameplayAPI?.stop()
 1YaGames.init()
 2    .then((ysdk) => {
 3        // Сообщаем о старте геймплея.
 4        ysdk.features.GameplayAPI?.start()
 5
 6        // Игровой процесс активен.
 7
 8        // Сообщаем об остановке геймплея:
 9        // игрок вышел в меню, прошел уровень или планируется показ рекламы.
10        ysdk.features.GameplayAPI?.stop()
11    });

Примечание

Сотрудники службы поддержки помогают разместить готовую игру на платформе Яндекс Игр. На прикладные вопросы о разработке и тестировании предметно ответят другие разработчики в Сообществе в Телеграме.

Если при использовании SDK Яндекс Игр вы столкнулись с проблемой или у вас появился вопрос, обратитесь в службу поддержки:

Написать в чат