Хранение дополнительной информации для таблицы лидеров Facebook Instant Game - PullRequest
0 голосов
/ 02 сентября 2018

Я хотел создать объект, который не зависит от списка лидеров Facebook и может быть доступен и обновлен всеми пользователями для мгновенной игры Facebook. Можно ли этого достичь, используя только сервер Facebook?

1 Ответ

0 голосов
/ 03 сентября 2018

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

Таблицы лидеров: ясно, в соответствии с вашим постом, вы уже используете их, но я хотел добавить, что вы можете хранить дополнительные данные в таблице лидеров, а также простой счет. Каждый счет может иметь объект с парами ключ-значение, связанными с ним для дополнительной информации.

FBInstant.getLeaderboardAsync('my_leaderboard')
  .then(function(leaderboard) {
    return leaderboard.setScoreAsync(42, '{race: "elf", level: 3}');
  })

Данные игрока: игрок может хранить данные, недоступные для других игроков.

FBInstant.player
  .setDataAsync({
    achievements: ['medal1', 'medal2', 'medal3'],
    currentLife: 300,
  })

Статистика игрока: Игрок также может хранить статистику, недоступную для других игроков. Основное различие между статистикой игрока и данными игрока заключается в том, что статистика поддерживает атомарную операцию приращения и в будущем может отображаться вне игры (например, в профиле пользователя Facebook).

FBInstant.player
  .setDataAsync({
    achievements: ['medal1', 'medal2', 'medal3'],
    currentLife: 300,
  })

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

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

...