Я использую платформу Parse для создания функциональности учетной записи игрока в игре для iOS, чтобы данные были доступны на любом устройстве. Тем не менее, я не уверен, как лучше всего «синхронизировать» эти данные, чтобы свести к минимуму количество запросов API, но при этом сделать так, чтобы все всегда синхронизировалось. В настоящее время я обновляю данные при запуске, поступающие из фона и после каждой игры. Однако это уже создает много запросов! Я думал разместить кнопку «синхронизация» в меню, чтобы только тогда данные синхронизировались и обычно сохранялись только локально, но это действительно последнее средство.
Схема игры:
- Игроки регистрируются или входят в систему, используя свою учетную запись или данные Facebook.
- Игрок выбирает аватар
- Выбор сохраняется в их учетной записи
- Они играют в «игру» и в конце концов проигрывают
- Отображается итоговый экран, добавляются очки, рассчитывается и сохраняется новый уровень игрока.
- Игрок может покупать подсказки и помощников через покупку в приложении (расходные материалы).
- Количество подсказок и помощников сохраняется на их счету
- Игра универсальна, поэтому должна быть синхронизирована с устройствами.
Как лучше всего использовать Parse в онлайн-ИГРЕ с большим количеством игроков?
Редактировать:
Я решил проблему, создав NSObject, совместимый с NSCoding, который затем архивирую и сохраняю в Parse. Это означает, что все данные сохраняются и загружаются сразу, и мне нужно обновлять их только при запуске и после важных событий.