Tausend Level, und keines davon hat jemand von Hand gesetzt
Zehn Regionen, hundert Schwierigkeitsstufen und fünfzig Boss-Familien, aus einem Modell erzeugt — und der Abnahmelauf, der beweisen musste, dass jeder Weg hindurch gewinnbar ist.
· · 6 Min. Lesezeit
Swarm Kingdoms hat tausend Level über zehn Regionen. Niemand hat sich hingesetzt und ein einziges davon von Hand gesetzt, und das ist keine Abkürzung — es ist die einzige Art, wie eine so lange Kampagne fair sein kann.
Eine handgesetzte Kampagne aus tausend Leveln hat tausend Gelegenheiten dafür, dass ein Level versehentlich unmöglich ist, und keine Möglichkeit, das herauszufinden, außer dass ein Spieler feststeckt. Sie driftet außerdem: Level 400 ist gegen die Upgrade-Kurve ausbalanciert, wie sie stand, als 400 geschrieben wurde, und die Kurve hat sich danach zweimal bewegt. Erzeugung aus einem Schwierigkeitsmodell macht aus tausend Ermessensentscheidungen eine einzige und macht diese eine prüfbar.
Was das Modell tatsächlich erzeugt
Hundert Schwierigkeitsstufen über zehn Regionen, mit fünfzig Boss-Familien aus fünf Archetypen, zweiundzwanzig Upgrades, elf Gegnertypen und acht Armee-Freischaltungen, in die man sie stecken kann. Jedes Level löst sich in eine Begegnungstabelle auf: eine Zeit, ein Trefferpunktvorrat, eine Schadensrate, eine Anzahl, eine Art und eine Formation, pro Welle. Das erste Level öffnet mit sechzehn Nahkämpfern in einer Linie bei sechs Sekunden, dann zwanzig bei zweiundzwanzig Sekunden, dann vierundzwanzig im Keil. Es liest sich wie eine Tabelle, weil es eine ist — und genau das ist das Feature: eine Tabelle kann nach einer Zeile durchsucht werden, die nicht zu schlagen ist.
Jede Zahl in diesem Absatz wird aus den Dateien gezählt, die der ausgelieferte Build lädt, und zwar von der Pipeline, die diese Seite baut, statt von jemandem getippt. Sie bricht ab, wenn eine Regionsdatei fehlt. Eine Zahl über eine Kampagne mit tausend Leveln, die ein Mensch tippt, ist eine Zahl, die innerhalb eines Release falsch sein wird.
Gewinnbar ist eine Aussage über jeden Weg, nicht über das Spiel
Die nützliche Eigenschaft ist nicht „das Spiel ist ausbalanciert“. Sie ist, dass jede Kombination von Wegen, die ein Spieler durch die Kampagne nehmen kann, unter definierten Bedingungen gewinnbar ist — eine andere und viel größere Aussage, denn ein Upgrade-Pfad, den ein Spieler vernünftigerweise wählen könnte, kann ihn auf Stufe 60 unterausgerüstet zurücklassen, während jeder andere Pfad in Ordnung ist.
Also fährt das Projekt seinen eigenen Abnahmedurchlauf über die ganze Kampagne und berichtet genau das, mit genannten Bedingungen. Das zu klären hat eine dokumentierte Neubalancierung gekostet. Dass es überhaupt geklärt werden konnte, liegt daran, dass die Kampagne eine Funktion eines Modells ist: man ändert das Modell, lässt den Durchlauf neu laufen und erfährt in Minuten, ob man Stufe 60 für einen Weg kaputtgemacht hat.
Warum es im Lab steht und nicht in einem Store
Das ist der Teil, den eine Portfolio-Seite üblicherweise weglässt. Swarm Kingdoms ist ein vollständiges, in der Balance geprüftes Spiel ohne jede Produktionsinfrastruktur darum herum. Windows- und Android-Builds laufen, und die Kampagne ist vom ersten bis zum tausendsten Level spielbar. Die Store-Schicht ist in ihrer eigenen Datendatei als Attrappe deklariert und bezeichnet sich im Spiel selbst als Entwicklungs-Store. Der Anwendungs-Identifier ist noch eine lokale Entwicklungszeichenkette. Das Projekt selbst sagt, dass Tests auf physischen Geräten, Produktions-Abrechnung und Produktionswerbung nicht bestandene Tore sind.
Also trägt es ein LAB-Abzeichen, und das Abzeichen ist das ehrliche. Ein fertiges Spiel und ein auslieferbares Produkt sind verschiedene Dinge, und der Abstand dazwischen ist fast vollständig die Arbeit, die niemand vorführt.
Noch etwas, das wie ein Detail klingt und keines ist: es liefert zehn Sprachen aus, und die Locale-Bezeichner des Spiels bleiben genau so, wie das Spiel sie benennt — einschließlich derjenigen, die eine Region sind und nicht nur eine Sprache. Die Demo auf dieser Website spricht diese Zeilen statt einer für eine Website geschriebenen Übersetzung und fällt auf Englisch zurück, so wie es der Lokalisierungscode des Spiels selbst tut.