Идеи и функции для игры

Ваша следующая функция

Проверенные действия

Проверяйте игровые действия на сервере.

SDK: developТребуется сессия игрока
Unity
Видимый результат

Допустимое действие принимается, а недопустимое отклоняется.

Видео появится позже

Для этого шага пока нет видео. Инструкция и запрос MCP уже доступны.

Проверять игровые действия

Добавьте эту функцию

Вы можете просмотреть руководство. Для выполнения нужен активный ключ проекта. Подготовить проект

SDK установлен, конфигурация проекта импортирована, игрок вошёл в систему.

Этот пример SDK использует develop. Проверьте наличие нужных API в установленном SDK.

C#
Assets/Scripts/ValidatedActionsDemo.cs
Вызов horizOnПодготовка
1using UnityEngine;
2using PM.horizOn.Cloud.Core;
3using PM.horizOn.Cloud.Manager;
4​
5// Прикрепи этот скрипт к GameObject в первой сцене.
6public class ValidatedActionsDemo : MonoBehaviour
7{
8 async void Start()
9 {
10 // Подготовка: инициализация, подключение и вход игрока.
11 HorizonApp.Initialize();
12 await new HorizonServer().Connect();
13 await UserManager.Instance.SignUpAnonymous("PlayerName");
14​
15 byte[] inputLog = System.Array.Empty<byte>();
16​
17 // horizOn: начать забег, записать ввод, отправить проверенный
18 // результат.
19 // 1. Dashboard: turn on "Validated submissions only" for the board "weekly"
20 var va = ValidatedActionsManager.Instance;
21​
22 // 2. Round start: single-use ticket plus server seed
23 var run = await va.StartRun("weekly");
24 if (run == null) { Debug.Log(va.LastErrorCode); return; } // e.g. RUN_RATE_LIMITED
25 var random = new System.Random(run.seed);
26​
27 // ... play, record the inputs into inputLog (byte[]) ...
28​
29 // 3. Round end: score plus input log (the SDK sends its SHA-256 hash)
30 var result = await va.SubmitValidated(18250, inputLog);
31 if (result == null)
32 {
33 Debug.Log($"{va.LastErrorCode}, run kept: {va.HasActiveRun}"); // e.g. DURATION_TOO_SHORT
34 }
35 }
36}

Проверьте новую функцию.

Допустимое действие принимается, а недопустимое отклоняется.

Выберите в панели тот же проект, что указан в конфигурации игры.

Эндпоинты
  • POST/validated-actions/runs
  • POST/validated-actions/submit
Все эндпоинты в справочнике API
Наше предложение для следующего шага

Добавьте рекорд для каждого раунда.

Сохраняйте результат после раунда и показывайте лидеров. Продолжайте использовать подключение и сессию игрока.