Spielideen & Features

Dein nächstes Feature

Validierte Aktionen

Lass Spielaktionen serverseitig prüfen.

SDK: developSpielersession erforderlich
Unity
Dein sichtbares Ergebnis

Eine gültige Aktion wird angenommen und eine ungültige abgewiesen.

Video folgt

Für diesen Schritt fehlt noch das Video. Die Anleitung und der MCP-Auftrag sind bereits nutzbar.

Spielaktionen validieren

Feature einbauen

Du kannst die Anleitung vorab ansehen. Zum Ausführen brauchst du einen aktiven Projekt-Key. Projekt vorbereiten

SDK installiert, Projekt-Konfiguration importiert und Spieler angemeldet.

Dieses SDK-Beispiel nutzt develop. Prüfe, ob die nötigen APIs in deinem installierten SDK verfügbar sind.

C#
Assets/Scripts/ValidatedActionsDemo.cs
horizOn-AufrufEinrichtung
1using UnityEngine;
2using PM.horizOn.Cloud.Core;
3using PM.horizOn.Cloud.Manager;
4​
5// Häng dieses Skript an ein GameObject in deiner ersten Szene.
6public class ValidatedActionsDemo : MonoBehaviour
7{
8 async void Start()
9 {
10 // Einrichtung: initialisieren, verbinden und einen Spieler
11 // anmelden.
12 HorizonApp.Initialize();
13 await new HorizonServer().Connect();
14 await UserManager.Instance.SignUpAnonymous("PlayerName");
15​
16 byte[] inputLog = System.Array.Empty<byte>();
17​
18 // horizOn: Run starten, Eingaben aufzeichnen, geprüfte Punktzahl
19 // einreichen.
20 // 1. Dashboard: turn on "Validated submissions only" for the board "weekly"
21 var va = ValidatedActionsManager.Instance;
22​
23 // 2. Round start: single-use ticket plus server seed
24 var run = await va.StartRun("weekly");
25 if (run == null) { Debug.Log(va.LastErrorCode); return; } // e.g. RUN_RATE_LIMITED
26 var random = new System.Random(run.seed);
27​
28 // ... play, record the inputs into inputLog (byte[]) ...
29​
30 // 3. Round end: score plus input log (the SDK sends its SHA-256 hash)
31 var result = await va.SubmitValidated(18250, inputLog);
32 if (result == null)
33 {
34 Debug.Log($"{va.LastErrorCode}, run kept: {va.HasActiveRun}"); // e.g. DURATION_TOO_SHORT
35 }
36 }
37}

Teste dein neues Feature.

Eine gültige Aktion wird angenommen und eine ungültige abgewiesen.

Wähle im Dashboard dasselbe Projekt wie in deiner Spielkonfiguration.

Endpunkte
  • POST/validated-actions/runs
  • POST/validated-actions/submit
Alle Endpunkte in der API-Referenz
Unser Vorschlag für den nächsten Schritt

Gib jeder Runde einen Highscore.

Speichere den Score nach dem Spiel und zeige, wer vorne liegt. Deine Verbindung und Spielersession nutzt du weiter.