Einblicke der Entwickler: Wertung und Gegnerzuweisung im PvP von Hearthstone: Söldner
Grüße! Ich bin Tian, ein Lead Data Scientist im Hearthstone-Team. In diesem Blog möchte ich mit euch über einige Details zur Wertung und Gegnerzuweisung in der PvP-Kampfgrube unseres brandneuen Spielmodus sprechen.
Das Wertungs- und Gegnerzuweisungssystem des Söldnermodus ist das komplizierteste, das wir je für einen unserer Spielmodi verwendet haben. Grundsätzlich haben wir dabei zwei einfache Ideen verfolgt:
- Für die Wertung war unser oberstes Ziel, dass der Wert im Laufe der Zeit das Spielerniveau bestmöglich widerspiegelt, und nicht die Söldnerstufen, Fähigkeits-/Ausrüstungsstufen oder Teamzusammenstellungen.
- Für die Gegnerzuweisung wollten wir hauptsächlich „faire“ Matches innerhalb vernünftiger Wartezeiten ermöglichen und dabei eure Wertung, Söldnerstufen, Fähigkeits-/Ausrüstungsstufen und Gruppenrollen berücksichtigen.
Mehrere Faktoren beeinflussen, wie wir eure Wertung nach dem Spiel aktualisieren und wie wir in der Gegnerzuweisungsphase einen Gegner für euch finden. Dazu zählen eure Wertung, die Stufen eurer Söldner, die Fähigkeits- und Ausrüstungsstufen eurer Söldner, die Rollenverteilung in eurer Gruppe und wie lange ihr euch schon in der Warteschlange befindet. Schauen wir uns diese Faktoren etwas näher an.
Wertung
Ähnlich wie im Schlachtfeld- und Duellmodus gibt es auch in diesem System zwei Wertungen: eure interne und eure externe Wertung.
Die interne Wertung ist ein Wert, der unsere aktuelle Einschätzung eures aktuellen Spielniveaus darstellt. Diese Wertung wird nicht zu Beginn jeder Saison zurückgesetzt. Sie wird nach einer Reihe anfänglicher Platzierungsspiele festgelegt und dann im Laufe der Zeit langsam angepasst, wenn ihr spielt (oder wenn ihr euch längere Zeit nicht in die Kampfgrube wagt). Dieser Wert ist für euch unsichtbar.
Die externe Wertung ist die Zahl, die euch angezeigt und zu Beginn jeder Saison zurückgesetzt wird, damit in jeder Saison für euch etwas auf dem Spiel steht und ihr bedeutsame Fortschritte machen könnt. Je mehr Spiele ihr in einer Saison spielt, desto näher wird diese Wertung an unsere Einschätzung eures aktuellen Spielniveaus rücken.
Die Bestenliste verwendet eure externe Wertung, die Gegnerzuweisung hingegen eure interne. Der Unterschied zwischen eurer internen Wertung und der eures Gegners ist ein wichtiger Faktor, wenn wir vor jedem Match eure Siegeswahrscheinlichkeit gegen diesen Gegner abschätzen (auf andere Faktoren gehen wir im Folgenden näher ein). Die Siegeswahrscheinlichkeit wird danach mit dem tatsächlichen Ergebnis abgeglichen, um die Änderungen an der Wertung zu berechnen.
In meinem Blog zum Schlachtfeldmodus (https://playhearthstone.com/de-de/news/23523064) erfahrt ihr mehr über unser duales Wertungssystem.
Söldnerstufen
Die Stufen der individuellen Söldner in eurer Gruppe spielen sowohl für die Wertungsaktualisierungen nach einem Match als auch für die Gegnerzuweisung vor dem Match eine große Rolle. Beispielsweise weist euch das System bevorzugt jemandem zu, der über Söldner auf derselben Stufe wie ihr verfügt (besonders, wenn die Wertung und andere Faktoren identisch sind). Solltet ihr aber einem Gegner mit einer höherstufigen Gruppe zugewiesen werden, würde das eure Siegeswahrscheinlichkeit senken. Im Gegenzug bedeutet das, dass ihr nach einem Sieg mehr Wertungspunkte erhaltet oder nach einer Niederlage weniger Punkte verliert.
Natürlich werden sich die Gruppenstufen von Spielern nicht immer aufs Haar gleichen. Für diese häufigen Fälle haben wir eine Formel entwickelt. Mathematisch ausgedrückt zieht die Formel die Höchststufe, die durchschnittliche Stufe, Varianz und Verteilung der Söldner in eurer Gruppe heran, um eine „Proxy-Variable“ für die Stärke dieser Söldnergruppe zu generieren. Das nennen wir euren „Stufenwert“.
Nach jedem Spiel wird neben eurer relativen internen Wertung und den anderen Dingen, die in diesem Artikel angesprochen werden, euer Stufenwert geprüft, um einen „Wertungskompensationswert“ zu erzeugen, der bestimmt, wie sich eure Wertung nach einem Sieg oder einer Niederlage verändert.
Fähigkeitsstufen von Söldnern
Sowohl für die Gegnerzuweisung als auch für das Wertungssystem werden die Fähigkeitsstufen jedes Söldners herangezogen. Ähnlich wie der Stufenwert eurer Gruppe wird auch ein „Fähigkeitswert“ berechnet, der darstellt, wie mächtig die Fähigkeiten eurer Söldner sind. Dieser Fähigkeitswert wird dann mithilfe einer nichtlinearen Funktion umgewandelt, um eure Siegeswahrscheinlichkeit und die Wertungsänderungen nach dem Spiel zu berechnen.
Bedenkt dabei, dass euer Fähigkeitswert viel unwichtiger ist, wenn sich eure Söldner und die eures Gegners auf der Höchststufe befinden (diese liegt bei der Veröffentlichung bei Stufe 30). Unter diesen Umständen fallen die anderen Faktoren, darunter auch die relative interne Wertung, viel stärker ins Gewicht.
Ausrüstungsstufen von Söldnern
Die Algorithmen für die Berechnung von Werten und Wahrscheinlichkeiten in Bezug auf die Ausrüstung eurer Söldner ähneln stark denen, die wir für die oben erwähnten Fähigkeitsstufen verwenden, allerdings mit anderen Parametern. Ein großer Unterschied ist, dass eure Söldner nicht zwangsläufig über Ausrüstung verfügen müssen. Ist ein Söldner nicht mit Ausrüstung ausgestattet, wird er so gewertet, als hätte er Ausrüstung auf „Stufe 0“.
Söldnerrollen
Mittlerweile wisst ihr ja, dass es im Söldnermodus drei verschiedene Rollen gibt: Kämpfer, Zauberwirker und Beschützer. Jede Rolle fügt einer anderen doppelten Schaden zu und erleidet wiederum durch eine andere selbst doppelten Schaden.
Die Auswahl der Söldnerrollen wirkt sich nicht auf die Wertungsänderungen nach dem Spiel aus, sehr wohl aber auf die Gegnerzuweisung. Der Einfluss ist viel geringer als der der Stufen eurer Gruppe und der Fähigkeits-/Ausrüstungsstufen, aber wir berücksichtigen auch die Rollen, um die Chance auf „extreme“ Matches zu verringern, die die Spielerfahrung negativ beeinträchtigen. Beispiele dafür sind sechs Kämpfer gegen sechs Zauberwirker oder ein Sechs-gegen-Sechs zwischen Beschützern. Um das zu erreichen, verwenden wir etwas, das dem mathematischen Konzept der „Informationsentropie“ stark ähnelt – höhere Entropie bedeutet mehr Vielfalt in der Rollenverteilung eurer Söldner. Wir multiplizieren dann diesen Entropiewert mit einer charakteristischen Funktion, um sicherzustellen, dass nur diese extremen Matches betroffen sind. Unser Ziel ist es, die richtige Balance zu finden, bei der Spieler mit ihren liebsten Söldnern spielen können, aber gleichzeitig dazu angeregt werden, das Rollensystem des Spielmodus zu bedenken.
Warteschlange und KI-Gegner
In jedem Gegnerzuweisungssystem spielt die Zeit in der Warteschlange eine große Rolle. Für spannendes Gameplay ist es zwar wichtig, eine qualitativ hochwertige Begegnung zu finden, aber lange Wartezeiten führen zu negativen Spielerfahrungen. Ins Gegnerzuweisungssystem des Söldnermodus fließen sehr viele Variablen ein, also wollten wir Situationen vermeiden, in denen die Gegnerzuweisung außerordentlich lange braucht, um den perfekten Gegner zu finden.
Wenn eure Wartezeit im Söldnermodus aktuell mehr als 1–1,5 Minuten beträgt und sich sowohl eure interne als auch eure externe Wertung unter bestimmten Grenzen befinden (die Grenze für die externe Wertung liegt bei 7.000), wird euch ein KI-Gegner zugewiesen. Durch diese Grenze müssen Gelegenheitsspieler nie lange warten und die ehrgeizigsten Spieler können trotzdem gegeneinander um die höchsten Plätze in der Bestenliste kämpfen.
Momentan haben wir nur eine KI-Schwierigkeitsstufe, also passen wir den Schwierigkeitsgrad des KI-Gegners an, indem wir die Stufen der KI-Gruppe an eure interne Wertung angleichen. Falls sich die Stufen der Söldner in eurer Gruppe stark unterscheiden und ihr einen KI-Gegner zugewiesen bekommt, wird das Team der KI dieselben Stufen haben (anstatt einer Durchschnittsstufe). Danach wird die Stufe der KI-Gruppe an eure Wertung angepasst. Auch die Wertungsänderungen nach dem Spiel hängen davon ab, ob ihr gegen die KI gespielt habt.
Weitere Anmerkungen
Wir berücksichtigen für die Wertungsänderungen und die Gegnerzuweisung nicht, welche Söldner, Fähigkeiten oder Ausrüstung ihr genau mit in die Kampfgrube bringt. Zwei verschiedene Söldner auf derselben Stufe und mit denselben Fähigkeits- und Ausrüstungsstufen sowie derselben Rolle werden gleichbehandelt. Es gibt keine Berechnungen dafür, ob Tyrande oder Rexxar „inhärent“ mächtiger ist oder besser in die aktuelle Meta passt. Über diese Dinge darf sich die Community den Kopf zerbrechen.
Zu guter Letzt möchte ich noch anmerken, dass es viele Hyperparameter gibt, die dieses Wertungs-/Gegnerzuweisungssystem steuern. Die meisten davon haben wir mithilfe von prognostischen Massensimulationen von KI-gegen-KI-Begegnungen erhalten. Nach der Veröffentlichung werden wir die Wertungs- und Gegnerzuweisungssysteme genau beobachten und die Algorithmen und/oder Variablenwerte anpassen, wenn die gesammelten Daten das unterstützen. Wir freuen uns immer über Feedback, schreibt uns also gerne eure Kommentare zur Wertung und der Gegnerzuweisung.
Wir hoffen, ihr werdet mit dem Erstellen eurer Gruppe, den Schlachten in der Kampfgrube und beim Erklimmen der Ränge Spaß haben. Wir sehen uns im Gasthaus!