Реализация социального геймплея Halo 5 с помощью Azure DocumentDB

Время чтения
меньше чем
1 минута
Прочитано

Реализация социального геймплея Halo 5 с помощью Azure DocumentDB

октября 31, 2015 - 15:52
0 комментариев

Одним из самых важных событий для поклонников вселенной Halo стал выход главного эксклюзива этой осени Halo 5: Guardians для игровой приставки Xbox One. Кроме создания непосредственно самой игры, разработчики представили новую социальную платформу Halo: Spartan Companies, которая была построена с использованием новых технологий баз данных Azure DocumentDB.

Реализация социального геймплея Halo 5 с помощью Azure DocumentDB

Halo 5: Guardians включает в себя два составляющих компонента  – однопользовательскую кампанию и мультиплеерные соревнования.  Именно в многопользовательской игре основной акцент сделан на «социальные» функции – создание собственных кланов, присвоение CSR-рангов, поиск и подбор соперников. Кроме того, появилась возможность интегрировать данные с социальными сетями Twitter и Facebook, а также отображать в реальном времени всю статистику и прогресс игры.  В конечном итоге, все это и есть платформа Halo: Spartan Companies.

Почему Azure DocumentDB?

Команда разработчиков Halo использовала три вида субъектов для хранения данных: компании, членство в компании и приглашение в компании. Каждая компания должна отслеживать внутренний ID-идентификатор, название, социальные медиа (Twitter, Facebook, YouTube и Twitch.TV), текущий статус компании, девиз, полученные значки, любимые игры и дату создания.

Halo: Spartan Companies

При этом ряд операций поддерживаются необходимыми метаданными:

  • В режиме реального времени открытие компаний на основе атрибутов имени, социальных медиа и членства в группах.
  • Обновление компаний во время игры с отображением достижений и  статистикой на портале halowaypoint.com
  • Отображение статуса компаний.

Halo: Spartan Companies

Для каждой компании база данных должна поддерживать операции приглашений и запросов присоединиться к ним (статусы).

Команда разработчиков игры Halo рассматривала различные технологии NoSQL для платформы данных, однако, в конечном итоге, остановили свой выбор на Azure DocumentDB из-за скорости и гибкости предлагаемых возможностей автоматического индексирования.

Технологии DocumentDB позволили программистам отказаться от вторичных индексов и поддерживать платформу Halo: Spartan без предварительной проверки схемы БД.

Основные методы шаблонов проектирования базы данных для игры Halo 5

1. Композитные свойства ID для «точек чтения» (маршрутизация запросов с помощью ReadDocumentAsync)

2. Триггеры уникальности против non-ID свойств.

3. Использование нетипичных форматов JSON (сортировка и фильтрация по датам с использованием различных типов DateTimes).

Подробнее о реализации технологиии Azure DocumentDB для Halo вы можете прочесть в официальном блоге Azure