Строительный блок
Блок Leaderboards Unity демонстрирует ведение счета в игре и генерирует таблицу лидеров для отображения результатов игрока. Каждый результат хранится в облаке в виде данных игрока.
В строительном блоке таблиц лидеров используются следующие Unity Gaming Services (UGS):
| Unity Игровой Сервис | Описание |
|---|---|
| Таблицы лидеров | Хранит, извлекает и отображает ваши результаты игрока. |
| Аутентификация | Предоставляет уникальную идентификацию игроку. В тестовой сцене Таблицы лидеров, эта служба позволяет пользователям входить в игру анонимно. |
| Контроль доступа | Определяет требования аутентификации для взаимодействия с другими службами. Этот строительный блок использует Управление доступом, чтобы помешать игрокам записывать данные в Таблицы лидеров. Для записи в Cloud Save используйте доверенный клиент, который использует Cloud Code Modules для аутентификации вызовов как доверенного источника. Для получения дополнительной информации см. Изменение клиента в тестовой сцене Таблицы лидеров. |
| Сохранить облако | Хранит каждый счет как Данные Игрока и Game Данные. |
| Облачный код | Служба Cloud Code позволяет создавать код, который запускается в облаке. Этот код может аутентифицировать игрока как доверенный сервер или клиент в зависимости от ваших потребностей и взаимодействовать с другими службами. Этот Building Block использует Cloud Code для демонстрации действий сервера для хранения и получения результатов игрока. Building Block Leaderboards использует следующие модули Cloud Code C#: Assets/CloudCode/BlocksAdminModule.ccmrAssets/CloudCode/BlocksGameModule.ccmr |
Предварительные условия
Для создания проекта для строительного блока достижений:
- Установите строительный блок Unity — Таблицы лидеров из Unity Asset Store.
- Следуйте инструкциям в разделе Предварительные требования LiveOps Unity Building Blocks.
Первоначальная настройка
Чтобы использовать все возможности тестовой сцены Таблицы лидеров, выполните следующие действия.
Развертывание модулей Cloud Code
Испытательная сцена использует BlocksGameModule.ccmr Модуль Cloud Code чтобы обновить глобальный балл. Чтобы использовать этот модуль Cloud Code, разверните его в сцене:
- Настройка развертывания в проекте.
- Перейдите в Услуги > Развертывание.
- В течение Развертывание окно, расширить Blocks.CloudCode раздел.
- Установите флажки BlocksGameModule.ccmr и BlocksAdminModule.ccmr.
- Выбрать Развернуть выбранный.
Развертывание файла конфигурации таблиц лидеров
Тестовая сцена использует файл конфигурации для добавления данных в таблицу лидеров. Тестовая сцена Leaderboards включает файл конфигурации simple_leaderboards.lb. Чтобы отобразить заполненную таблицу лидеров в тестовой сцене, разверните этот файл:
- Перейдите в Услуги > Развертывание.
- В окне Развертывание установите флажок
simple_leaderboard.lb. Если вы хотите использовать Доверенный игровой клиент, также установите флажокLeaderboardsAccessControl.ac. - Выбрать Развернуть выбранный.
Чтобы узнать о конфигурации Таблицы лидеров на панели Unity, см. Создание таблицы лидеров.
Использование тестовой сцены Building Block таблиц лидеров
В тестовой сцене Building Block Leaderboards содержится игра в угадывание, которая генерирует балл, основанный на том, насколько близко ваше предположение к случайно генерируемому числу. Результат этой игры отображается в таблице лидеров. Вы также можете генерировать другие случайные баллы игроков.
Чтобы открыть тестовую сцену Таблицы лидеров:
- В окне Project перейдите в Активы > Блоки > Таблицы лидеров > TestScenes.
- Выберите Таблицы лидеров (Scene Ассеты) ассет.
- В окне Inspector выберите Открыть.
Чтобы использовать каждый элемент в тестовой сцене Таблицы лидеров:
- Введите режим воспроизведения.
- Введите число в поле Ваша догадка поле.
- Выберите Guess, чтобы отобразить свой результат и отправить его в таблицу лидеров.
- Выберите Заполнить таблицу лидеров, чтобы добавить другие случайные результаты пользователей в таблицу лидеров и ранжировать их.
- Выберите Показать таблицу лидеров, чтобы отобразить таблицу лидеров.
- Выберите одну из вкладок таблицы лидеров, чтобы выбрать, какие результаты просматривать:
- Global: Отображает 50 лучших результатов в порядке.
- Self: Отображает текущий балл игрока и 10 баллов выше и ниже него.
- Выберите Hide Leaderboard, чтобы вернуться в игру.
Чтобы сбросить рейтинг таблицы лидеров:
- Откройте окно Развертывание (Услуги > Развертывание).
- Щелкните правой кнопкой мыши
leaderboard.lbи выберите Reset Leaderboard.
Добавить таблицу лидеров Префаб в новую сцену
Чтобы использовать строительный блок таблиц лидеров в новой сцене, добавьте следующий префабы из строительного блока таблиц лидеров в свою сцену:
LeaderboardPrefab.prefabдобавляет пустую таблицу лидеров и отображает результаты, которые клиент получает из службы Leaderboard. Найдите ее в Project окно: Активы > Блоки > Таблицы лидеров > ПрефабыUnityServices.prefabв активах > блоках > общих > Префабы для инициирования Unity Gaming Services.
Для использования таблицы лидеров префаб:
- Настройте свой проект для таблиц лидеров.
- Откройте Unity Services префаб.
- Щелкните правой кнопкой мыши в окне Project и выберите Создать > Услуги > Конфигурация таблицы лидеров.
- Разверните файл конфигурации.
Настройка строительного блока таблиц лидеров
Можно изменить содержание, описание и внешний вид строительного блока достижений, а также тип клиента, используемого таблицей лидеров.
Изменить файл конфигурации Таблицы лидеров
Вы можете изменить правила для таблицы лидеров в файле конфигурации simple_leaderboard.lb:
- В окне Project перейдите в Активы > Блоки > Таблицы лидеров > Развертывание.
- Выберите файл
simple_leaderboard.lbдля отображения его свойств в окне Inspector.
Переключите каждый Расширенные настройки, чтобы применить следующие концепции таблиц лидеров:
- Ведра
- Третья сторона
- Сбросы
Чтобы синхронизировать изменения в конфигурационном файле в облаке, разверните его.
Изменение клиента в тестовой сцене Таблицы лидеров
Клиент таблицы лидеров отправляет результаты в службу таблицы лидеров. Блок создания таблицы лидеров включает следующие клиенты таблицы лидеров:
- Местный персонал (
LocalNumberGameClient): Локальный клиент отправляет результаты непосредственно в службу Leaderboards и не проверяет каждый результат. Вы можете использовать Access Control политику, чтобы остановить игроков от обмана, отправляя свои собственные результаты. - Доверенные (
TrustedNumberGameClient): Удаленный клиент вызывает Облачный код C# модуль чтобы представить счет.
Для изменения клиента таблица лидеров использует:
- Откройте тестовую сцену Leaderboard.
- В окне Hierarchy выберите NumberGame GameObject.
- Разверните раскрывающееся меню Game Тип клиента.
- Выберите Локальный или Доверенный.
Настройка политики управления доступом
Файл LeaderboardsAccessControl.ac представляет собой ассет управления доступом, который не позволяет пользователям мошенничать, добавляя собственные результаты в таблицу лидеров. Он использует аутентификацию игроков, чтобы запрещать несанкционированный доступ к сервису таблиц лидеров. Дополнительные сведения см. в разделе Управление доступом для Unity Gaming Services (UGS).
Чтобы использовать ресурс управления доступом, установите клиент leaderboard на Доверенные. Дополнительные сведения о контроле доступа см. в Использование управления доступом.
Устранение неполадок
Если счет не отображается на клиенте и появляется предупреждение, это означает, что локальный клиент не работает правильно. Это потому, что файл LeaderboardsAccessControl.ac запрещает игрокам доступ к записи.
Чтобы устранить эту проблему:
- Перейдите в Услуги > Развертывание.
- Щелкните правой кнопкой мыши файл
LeaderboardsAccessControl.ac. - Выберите Удалить удаленный.
Дополнительные ресурсы
- Развертывание
- UGS Таблицы лидеров