Wie gehen Sie mit Punktzahlen um, die sich im Game Center verschlechtern können (z. B. Elo-Bewertung)?


8

Derzeit können sich die Game Center-Bestenlistenwerte nur in eine Richtung ändern (z. B. erhöhen). Dies macht es (glaube ich) unmöglich, mit Elo-Bewertungen und dergleichen umzugehen. Wie kommst du in deinen Bestenlisten darum herum?

Ich habe bereits bei FWIW einen Fehlerbericht / eine Feature-Anfrage bei Apple eingereicht.

Verwenden Sie einen Leaderboard-Service eines Drittanbieters? Eigen rollen?


Ich weiß nichts über das Game Center ... Aber haben Sie versucht, eine negative Punktzahl hinzuzufügen?
— Ricket

GC-Bestenlisten akzeptieren nur Einträge, die besser als die vorherigen sind, sodass dies keine Auswirkungen hat.
— Z8000

Haben Sie jemals eine Lösung dafür gefunden? Die folgende Antwort dient zum Speichern der Punktzahlen, jedoch nicht zum Verwenden von Game Center-Bestenlistenansichten oder -Ranglisten. Daher ist es unmöglich zu wissen (ohne beide Bestenlisten vollständig abzurufen), in welcher Position (Rang) sich ein Spieler befindet. Vermisse ich etwas
— Elibud

Antworten:


5

Wenn negative Ergebnisse nicht zulässig sind: Verfolgen Sie positive und negative Ergebnisse getrennt.

Zum Beispiel beim Schreiben der Rangliste:

// Pseudocode
points_for_win = 3;
points_for_loss = 2;

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

Wenn Sie die Bestenliste abrufen, können Sie die tatsächliche Punktzahl des Benutzers berechnen, indem Sie:

actual_score = leaderboard.positive_score - leaderboard.negative_score; 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.