Ideas y funciones para tu juego

Tu próxima función

Logros

Cada clave se desbloquea una vez por jugador. El modo manual confía en el juego; los umbrales se evalúan en la misma transacción del informe afectado.

SDK: developRequiere una sesión de jugador
Unity
Ilustración de Logros
El resultado visible

Tras la acción, first_steps queda desbloqueado para el mismo jugador. Repetir la clave no concede otro logro ni recompensa.

Vídeo próximamente

Este paso aún no tiene vídeo. La guía y la solicitud MCP ya se pueden utilizar.

Logros

Preparar el mismo proyecto

  1. Selecciona en el panel el mismo proyecto que en la configuración de tu juego.

    Logros →
  2. Cread o reutilizad estas entradas de prueba en el formulario del panel. Son valores de ejemplo, no datos actuales.

    Clave
    first_steps
    Nombre
    First steps
    Regla de desbloqueo
    manual
    Activo
    true
    Oculto hasta desbloquear
    false
    Sin recompensa
    []

    Cada clave se desbloquea una vez por jugador. El modo manual confía en el juego; los umbrales se evalúan en la misma transacción del informe afectado.

  3. Guardad, recargad y verificad las entradas antes del ejemplo. Conservad las demás definiciones.

Implementa esta función

Puedes consultar la guía. Para ejecutarla necesitas una clave de proyecto activa. Preparar el proyecto

SDK instalado, configuración del proyecto importada y jugador conectado.

Este ejemplo del SDK usa develop. Comprueba si las API necesarias están disponibles en el SDK instalado.

Completad la conexión de inicio rápido con el jugador elegido. Llamad a RunReviewedAction() mediante un botón o acción de escena explícita. Abrir el archivo no envía peticiones.

C#
Assets/Scripts/AchievementsDemo.cs
Llamada a horizOn
1using System.Linq;
2using UnityEngine;
3using PM.horizOn.Cloud.Core;
4using PM.horizOn.Cloud.Manager;
5​
6// Existing SDK/project configuration and authenticated player session required.
7// Call RunReviewedAction explicitly after reviewing this example and its data.
8// Las recompensas se abonan al desbloquear el logro. Si falla el abono, se
9// revierte toda la acción.
10// This explicit action unlocks the shown configured achievement key.
11public sealed class AchievementsDemo : MonoBehaviour
12{
13 public async void RunReviewedAction()
14 {
15 var sessionUser = UserManager.Instance.CurrentUser;
16 if (sessionUser == null || !sessionUser.IsValid()) return;
17 var userId = UserManager.Instance.CurrentUser.UserId;
18 var manager = AchievementsManager.Instance;
19 var loaded = await manager.GetAchievements(userId);
20 if (!loaded.IsSuccess) { Debug.LogWarning(loaded.ErrorCode); return; }
21 foreach (var progress in loaded.Data.progress)
22 Debug.Log(progress.key + ": " + progress.rewardState);
23​
24 // Configure a manual first_steps definition, then call this on the matching game action.
25 var unlocked = await manager.Unlock(userId, "first_steps");
26 if (!unlocked.IsSuccess) { Debug.LogWarning(unlocked.ErrorCode); return; }
27 // Repeat the same key after timeout; never create a replacement reward identity.
28 // rewardState is complete, unlockedAt is null, and deliveryResults is empty.
29 // Values were credited atomically. Read PlayerValues again when showing the balance.
30 // No Inbox claim or local value addition. Refresh achievements after statistics updates.
31 }
32}
Abrir el ejemplo completo del SDK ↗

Prueba tu nueva función.

Tras la acción, first_steps queda desbloqueado para el mismo jugador. Repetir la clave no concede otro logro ni recompensa.

Selecciona en el panel el mismo proyecto que en la configuración de tu juego.

Endpoints de la API
  • GET/achievements
  • POST/achievements/unlock
  • POST/achievements/rewards/deliver
Todos los endpoints en la referencia de la API
Nuestra sugerencia para el siguiente paso

Dale una puntuación máxima a cada partida.

Guarda la puntuación después de una partida y muestra quién va primero. Sigue usando tu conexión y la sesión del jugador.