Skip to content

sdk.checkpoint()

Firma

sdk.checkpoint(payload: Record<string, unknown>): Promise<EventResult>

Envía un evento checkpoint al servidor con datos de progreso del juego. El GameCenter usa estos datos para actualizar los indicadores de misiones activas del estudiante en tiempo real.


Parámetros

ParámetroTipoRequeridoDescripción
payloadobjectDatos de progreso específicos del juego.

No hay campos obligatorios dentro del payload — envía lo que sea relevante para tu tipo de juego.


Valor de retorno

Promise<EventResult>:

interface EventResult {
event_id?: string | number | null;
reward?: null; // checkpoint no otorga recompensa directa
relayed?: boolean;
}

Campos recomendados en el payload

El GameCenter reconoce estos campos para cruzarlos con las misiones activas:

CampoTipoDescripción
streaknumberRacha actual de aciertos / acciones correctas consecutivas.
scorenumberPuntuación acumulada hasta el momento.
levelnumberNivel o etapa actual dentro del juego.
accuracynumberPorcentaje de aciertos (0–100).
correctbooleanSi la última acción fue correcta.
question_idxnumberÍndice de la pregunta actual (para quizzes).

Puedes añadir cualquier campo adicional — son guardados como telemetría pero no afectan misiones directamente.


Ejemplos

Quiz — después de cada respuesta

function alResponder(esCorrecta) {
if (esCorrecta) {
racha++;
score += 200;
} else {
racha = 0;
}
sdk.checkpoint({
streak: racha,
score: score,
correct: esCorrecta,
question_idx: preguntaActual,
});
}

Plataformas / acción — al completar un nivel

function alCompletarNivel(nivel, tiempo) {
sdk.checkpoint({
level: nivel,
tiempo_ms: tiempo,
enemigos_vencidos: contadorEnemigos,
});
}

Cada N puntos (para juegos continuos)

// Enviar checkpoint cada 500 puntos
if (score % 500 === 0 && score > 0) {
sdk.checkpoint({ score: score, combo: comboActual });
}

¿Con qué frecuencia llamarlo?

Llama a checkpoint() cuando ocurra algo significativo en el juego, no en cada frame. Guías aproximadas:

Tipo de juegoCuándo llamar
QuizDespués de cada respuesta
PlataformasAl completar cada nivel/etapa
PuzzlesAl resolver cada pieza o tablero
Juegos de acciónCada N puntos o al derrotar jefes
Juego continuoMáximo una vez por segundo