¿Cómo maneja los puntajes que pueden empeorar (por ejemplo, la calificación Elo) en Game Center?

8

Actualmente, los puntajes de la tabla de clasificación de Game Center solo pueden cambiar en un sentido (por ejemplo, aumentar). Esto hace que sea imposible (creo) tratar con clasificaciones de Elo y similares. ¿Cómo se soluciona esto en sus tablas de clasificación?

Ya presenté una solicitud de informe / función de error con Apple FWIW.

¿Estás utilizando un servicio de clasificación de terceros? Rodando el tuyo?

z8000
fuente
No sé nada sobre Game Center ... ¿Pero trataste de agregar un puntaje negativo?
Ricket
Las tablas de clasificación de GC solo aceptan entradas que son mejores que las anteriores, por lo que esto no tendrá ningún efecto.
z8000
¿Alguna vez encontraste una solución para esto? La respuesta a continuación funciona para almacenar los puntajes, pero no para usar las vistas o clasificaciones de la tabla de clasificación de Game Center, por lo que sería imposible saber (sin recuperar por completo ambas tablas de clasificación) en qué posición (rango) se encuentra un jugador. ¿Me estoy perdiendo de algo?
elibud

Respuestas:

5

Fuera de mi cabeza, si no se permiten puntajes negativos: rastree los puntajes positivos y negativos por separado.

Por ejemplo, al escribir la tabla de clasificación:

// Pseudocode
points_for_win = 3;
points_for_loss = 2;

if (didWin)
    leaderboard.positive_score += points_for_win;
else
    leaderboard.negative_score += points_for_loss;

Al recuperar la tabla de clasificación, puede calcular la puntuación real del usuario de la siguiente manera:

actual_score = leaderboard.positive_score - leaderboard.negative_score; 
Blair Holloway
fuente