Spielsysteme

Bestenliste im Spiel: Ranking, Runden und Belohnungen

Wie die fertige Bestenliste von iDos Games funktioniert: Listen mit Runden, Belohnungen für Platz und Punkte, Schutz vor aufgeblähten Punkteständen, und wie du sie im Dashboard einrichtest.

Die Bestenliste ist ein fertiges Ranking-System: Listen mit Runden und Belohnungen für Platz und für Punkte. Punkte, Plätze und Belohnungen zählt der Server. Die Listen richtest du im Dashboard ein, und das Spiel meldet Ergebnisse und zeigt das Ranking.

Was der Spieler sieht

  • Listen als Tabs: jede mit einer Karte, die Punktestand, Platz und den Countdown bis zum Rundenende des Spielers zeigt.
  • Die besten Spieler, der Spieler selbst hervorgehoben, Medaillen für die ersten drei.
  • Platzbelohnungen und Punktebelohnungen in Fenstern; Punktebelohnungen werden direkt dort abgeholt.
  • Ein Fenster mit der Belohnung der letzten Runde: Es erscheint von selbst, wenn eine Runde endet, mit dem Knopf „Abholen“.
  • Ein Knopf „Spielen“ auf der Karte, wenn das Spiel einen Modus hat, in dem man Punkte verdient.
  • Ein Abzeichen am Tab, wenn eine Belohnung wartet.
Bestenlisten
12 450
320
Wöchentlich!
Saison
Mein Punktestand12 840
Rang#7
Endet in 2T 04:13
Belohnungen
Spielen
ShadowFox25 120
2Mira22 980
3KnightOwl19 400
4Pixel_Pete15 210
5Luna14 030
6Arrow13 115
7Du12 840
8Grizzly11 900
Jede aktive Bestenliste ist ein Tab; das Abzeichen zeigt eine wartende Belohnung.
Die Spielerkarte: Punkte, Rang und der Countdown bis zum Rundenende.
Belohnungen für Rang und Punkte öffnen sich hier; „Spielen“ führt zum Spielmodus.
Medaillen für die ersten drei, der Spieler ist in der Liste hervorgehoben.
Beispiel. Der Bestenlisten-Bildschirm: die Spielerkarte mit Rundentimer und die Top-Liste.

Wie eine Liste aufgebaut ist

  • Runden. Eine Liste wiederholt sich in Zyklen (zum Beispiel jede Woche), läuft nach Zeitplan oder als Kette von Runden.
  • Wie gezählt wird. Die Summe aller Ergebnisse, das beste Ergebnis, die beste Zeit oder der letzte Wert.
  • Platzbelohnungen: nach Platzbereichen am Ende einer Runde: 1. Platz, 2. bis 3., 4. bis 10. und so weiter.
  • Punktebelohnungen: Meilensteine innerhalb einer Runde: „Verdiene diese Woche 1000 Punkte“.

Woher die Punkte kommen

Punkte kommen aus den Quellen, die an der Liste eingestellt sind:

  • Ein Ergebnis aus dem Spiel (ClientScore). Das Spiel schickt eine Zahl, zum Beispiel die Punkte eines Laufs. ⚠ Setze Limits an der Quelle: ein Maximum pro Meldung, pro Tag und eine Pause zwischen Meldungen. Ohne diese Quelle nimmt die Liste überhaupt keine Zahl aus dem Spiel an.
  • Ereignisse, die der Server selbst zählt, zum Beispiel Käufe oder erledigte Quests. Diese lassen sich aus dem Spiel nicht fälschen.

Schritt 01Eine Bestenliste zum Projekt hinzufügen

Sag dem KI-Coder: „Füge eine wöchentliche Bestenliste nach bestem Punktestand hinzu“. Er installiert das fertige System und bringt dem Spiel bei, das Ergebnis zu melden. Der Tab erscheint für Spieler, sobald im Dashboard mindestens eine Liste aktiv ist.

Schritt 02Eine Liste einrichten

Öffne das Dashboard, wähle dein Projekt und geh zu Live-Betrieb → v2 → Rangliste.

  1. Drücke Bestenliste hinzufügen und lege ihre ID fest, zum Beispiel weekly_score.
  2. Wähle den Zeitplan der Runden und wie gezählt wird.
  3. Füge eine Punktequelle hinzu. Meldet das Spiel die Punkte, nutze ClientScore mit Limits.
  4. Lege Platzbelohnungen und auf Wunsch Punktebelohnungen fest.
  5. Drücke Speichern.

Der Knopf KI auf der Seite öffnet einen Assistenten: Beschreibe die Liste in Worten, er schlägt Änderungen vor, und du prüfst und speicherst sie.

Schritt 03Testen und veröffentlichen

Melde in der Testversion ein paar Ergebnisse und beobachte, wie sich der Platz ändert. Einstellungen gehen mit einer eigenen Aktion an die Live-App, siehe Veröffentlichen und Links.

Für Entwickler

Die Bestenliste arbeitet über client.leaderboard in @idosgames/core.

TypeScript
// Ein Ergebnis melden: Der Server wendet Zählregel und Limits an
const sub = await client.leaderboard.submitScore('weekly_score', 150)
if (!sub.ok) return showError(sub.error)
sub.data.NewScore // der Punktestand nach dem Zählen

// Ein Bildschirm mit mehreren Listen: Top-Listen und Fortschritt des Spielers in einer Anfrage
const overview = await client.leaderboard.getOverviewBatch(['weekly_score', 'season_pvp'])

// Alles Wartende abholen: Platzbelohnungen und Punktebelohnungen
await client.leaderboard.claimAllRewardsBatch(['weekly_score', 'season_pvp'])
  • Einen Punktestand von null oder weniger lehnt das SDK selbst ab, ohne Anfrage.
  • Nimm den neuen Punktestand aus NewScore in der Antwort: Bei „bestes Ergebnis“ ändert ein schlechteres Ergebnis den Stand nicht.
  • Das Ranking unter Freunden ist getFriendsLeaderboard(leaderboardID).

Jedes Feld ist im Skill leaderboard-system beschrieben, den der MCP-Server des SDK bereitstellt.

Häufige Fragen

Kann ein Spieler schummeln, indem er aus dem Spiel einen riesigen Punktestand schickt?

Nicht, wenn die Liste richtig eingerichtet ist. Eine Liste nimmt Zahlen aus dem Spiel nur über eine Quelle ClientScore an, und diese Quelle hat Limits: ein Maximum pro Meldung, pro Tag und eine Pause zwischen Meldungen.

Wie viele Bestenlisten kann ein Spiel haben?

Mehrere. Jede aktive Liste ist ein eigener Tab im Bestenlisten-Bildschirm mit eigener Runde und eigenen Belohnungen.

Gibt es eine Bestenliste unter Freunden?

Ja. Das SDK liefert dieselbe Liste gefiltert auf die Freunde des Spielers.

Siehe auch

Erstelle dein eigenes Spiel

Beschreibe die Idee in einem Satz: Der KI-Coder baut das Spiel, und es geht unter eigenem Link online.