
Partidas
Coordina partidas por turnos y confirma resultados.
SDK y REST
Integra Unity, Godot o Unreal, o usa la interfaz REST.
Panel del proyecto
Configura cada función y gestiona sus datos actuales en tu proyecto.
Integración rápida
quickstart.dashboard.videos.matches
Vídeo próximamente
quickstart.videoSummaries.matches
using UnityEngine;
using PM.horizOn.Cloud.Manager;
public sealed class MatchesDemo : MonoBehaviour
{
// Initialize/connect and restore the existing player in the Quickstart first.
// Invoke explicitly. The SDK also enforces the returned polling cadence.
public async void ReadMyMatches()
{
var user = UserManager.Instance.CurrentUser;
if (user == null || !user.IsValid()) return;
var result = await MatchesManager.Instance.GetMatches(user.UserId);
if (!result.IsSuccess) { Debug.LogWarning(result.ErrorCode); return; }
Debug.Log($"Ledger revision: {result.Data.revision}");
foreach (var match in result.Data.recent)
Debug.Log($"Match {match.id}: {match.status}");
// Recent may include an active match after this player's forfeit.
// Respect result.Data.pollAfterSeconds; no background poll or automatic timeout.
}
}
// Full two-player recipe: SDK Examples/MatchesExample and MatchesSampleStore.
// ReadLedger/ReadMatch -> SaveCreateAfterLedgerReview/SaveActionAfterMatchReview.
// ApplySavedIntent sends one durable original body/revision. Unknown create is reconciled.
// Never replace a pending original with the revision from a later read.
// ReportResult uses the original finalStateRevision/result bytes/sorted winnerIds.
// Ordinary consensus is not trusted victory proof. Ranked runs use Validated Actions.Este ejemplo del SDK usa develop. Comprueba si las API necesarias están disponibles en el SDK instalado. consulta el inicio rápido
Preguntas frecuentes
¿Listo para integrar?
Empiece a construir con horizOn hoy. Nivel gratuito incluido.
