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

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

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

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

ysdk.features.LoadingAPI.ready()

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

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

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

Пример

const ysdk = await YaGames.init();

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

Геймплей

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

ysdk.features.GameplayAPI.start()

Метод ysdk.features.GameplayAPI.start() нужно вызывать в случаях, когда игрок начинает или возобновляет игровой процесс:

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

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

ysdk.features.GameplayAPI.stop()

Метод ysdk.features.GameplayAPI.stop() нужно вызывать в случаях, когда игрок приостанавливает или завершает игровой процесс:

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

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

Важно

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

Пример

const ysdk = await YaGames.init();

// Сообщаем о старте геймплея.
ysdk.features.GameplayAPI?.start()

// Игровой процесс активен.
            
// Сообщаем об остановке геймплея:
// игрок вышел в меню, прошел уровень или планируется показ рекламы.
ysdk.features.GameplayAPI?.stop()
YaGames.init()
    .then((ysdk) => {
        // Сообщаем о старте геймплея.
        ysdk.features.GameplayAPI?.start()
        
        // Игровой процесс активен.
        
        // Сообщаем об остановке геймплея:
        // игрок вышел в меню, прошел уровень или планируется показ рекламы.
        ysdk.features.GameplayAPI?.stop()
    });

Примечание

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

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

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