Twoja następna funkcja
Zweryfikowane akcje
Zleć serwerowi sprawdzanie działań w grze.
Unity

Widoczny rezultat
Prawidłowe działanie zostaje zaakceptowane, a nieprawidłowe odrzucone.
Ten krok nie ma jeszcze wideo. Instrukcja i polecenie MCP są już dostępne.
Weryfikuj działania w grze
Dodaj tę funkcję
Możesz przeglądać poradnik. Uruchomienie wymaga aktywnego klucza projektu. Przygotuj projekt
Zainstalowany SDK, zaimportowana konfiguracja projektu i zalogowany gracz.
Ten przykład SDK korzysta z develop. Sprawdź, czy wymagane API istnieją w zainstalowanym SDK.
C#
1using UnityEngine;
2using PM.horizOn.Cloud.Core;
3using PM.horizOn.Cloud.Manager;
4
5// Dodaj ten skrypt do obiektu GameObject w pierwszej scenie.
6public class ValidatedActionsDemo : MonoBehaviour
7{
8 async void Start()
9 {
10 // Przygotowanie: inicjalizacja, połączenie i logowanie gracza.
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: rozpocznij rozgrywkę, zapisz wejścia, wyślij
18 // zweryfikowany wynik.
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}
Przetestuj nową funkcję.
Prawidłowe działanie zostaje zaakceptowane, a nieprawidłowe odrzucone.
Wybierz w panelu ten sam projekt co w konfiguracji gry.
Punkty końcowe
- POST
/validated-actions/runs - POST
/validated-actions/submit


