Wie kann ich sicherstellen, dass die Verfahrensebenen in einem RTS fair sind?

10

Ich habe gesehen, dass Symmetrie und Kohärenz beim Design von RTS-Ebenen wichtig sind, aber ich bin faul und möchte prozedural generierte Ebenen erstellen.

Wie kann ich sicherstellen, dass ich faire Wettbewerbsbedingungen generiere, wenn ich prozedural Levels für ein RTS erstelle?

James Pae
quelle
4
Es wird allmählich mit dem Alter begraben, aber ich würde empfehlen, Informationen darüber nachzuschlagen, wie zufällige Kartengenerierungsskripte in Age of Empires-Spielen funktionieren. Dies waren Textdateien, die Spieler bearbeiten konnten, um zu beschreiben, wie Scharmützelkarten verschiedener Typen erstellt werden. Ich erinnere mich, dass sie Methoden hatten, um Patches und Cluster von bestimmten Terrains / Requisiten abzulegen, Dinge wie Ressourcen fair zu platzieren, damit sie garantiert verfügbar sind, und Pfade durch das Terrain zu schnitzen, um sicherzustellen, dass die Spieler einander erreichen können. Wenn Sie lernen, wie ihre Rezepte funktionieren, sollten Sie einige eigene Ideen erhalten.
DMGregory
2
Sie erwähnen nicht, ob Ihr RTS Einzelperson oder Mehrspieler ist. Bei einer einzelnen Person kann ein gewisser Levelausgleich durchgeführt werden, indem das KI-Verhalten an die Fähigkeiten des Spielers angepasst wird. Mit anderen Worten, die KI hat möglicherweise Zugriff auf mehr Ressourcen als der Spieler, aber das Spiel passt an, wie aggressiv diese Ressourcen verwendet werden, je nachdem, wie aggressiv der Spieler Angriffe ausführt oder seine Ressourcen ausnutzt.
Mark Ripley
1
Um das zu ergänzen, was Mark gesagt hat, welche Art von Gleichgewicht suchen Sie? Womit erreichen Sie die Karten?
Nicol Bolas

Antworten:

26

Persönlich finde ich Symmetrie im Leveldesign langweilig und ich denke nicht, dass dies für faire Levels unbedingt erforderlich ist. Symmetrie ist ein Weg, um sicherzustellen, dass jeder Zugriff auf dieselben Ressourcen und dieselben Engpässe hat, da das Level buchstäblich für jeden Spieler auf irgendeine Weise gespiegelt wird. Ich denke, der wichtige Teil ist der Zugang zu (ungefähr) den gleichen Vor- und Nachteilen. Nicht so sehr die Symmetrie selbst.

Ich denke auch, dass ein Spiel, das so ausgewogen ist, dass alle Seiten die gleiche Macht haben und die gleichen Chancen haben, langweilig ist. Sie wollen natürlich kein völliges Ungleichgewicht dieser Faktoren, aber ich denke, es kann eine interessante Spieldynamik erzeugen, wenn jeder Seite leicht unterschiedliche Möglichkeiten und Hindernisse geboten werden.

Das ist die Art von Designkontext, von dem ich denke, dass er die eigentliche Antwort auf die Frage formuliert:


Wenn Ihnen die Symmetrie wirklich wichtig ist, können Sie einfach prozedural einen Teil der Ebene generieren und diese Ebene dann über beide Achsen spiegeln. Der Chunk, den Sie generieren, ist im Grunde ein Viertel des Levels und Sie spiegeln ihn, sodass jeder Quadrant gleich ist. Zum Beispiel eine prozedurale Höhenkarte mit zufällig verteilten Ressourcenablagerungen:

Geben Sie hier die Bildbeschreibung ein

Aber wie ich oben sagte, scheint das langweilig. Ein interessanterer Ansatz könnte darin bestehen, das gesamte Gelände prozedural zu generieren. Achten Sie jedoch beim Platzieren von Ressourcen darauf, dass jeder Quadrant die gleiche Anzahl aufweist (innerhalb einer gewissen Toleranz, um eine gewisse Variabilität zu erzielen). Möglicherweise möchten Sie die Platzierung verschiedener Ressourcentypen je nach Wichtigkeit der Ressourcen auf verschiedene Bereiche (zufällig, in der Nähe der Startpunkte, in der Nähe der Grenzen) ausrichten. Zum Beispiel:

Geben Sie hier die Bildbeschreibung ein

Sie können das generierte Bild analysieren, um Feature-Kanten zu finden, z. B. schmale Canyons, die als Engpässe angesehen werden können. Sie können sich dafür entscheiden, die Geländegenerierung für einen Teil der Karte erneut zu rollen, wenn sie beispielsweise weit mehr oder weit weniger Engpässe oder ähnlich erkennbare Geländemerkmale aufweist als andere. Möglicherweise möchten Sie auch eine ähnliche Geländeanalyse durchführen, um sicherzustellen, dass jede platzierte Ressource auf irgendeine Weise erreichbar ist.

Sie können beispielsweise entscheiden, den unteren linken Quadranten erneut zu rollen, weil er zu viel Wasser enthält (in Rot), oder die Quadranten, die das Grün enthalten, weil sie zu taktisch vorteilhaft sind (potenzielle Canyon-Engpässe):

Geben Sie hier die Bildbeschreibung ein

Sie können Ihre Feature-Generierung auch manuell steuern. Sie können bestimmte Elemente manuell platzieren, z. B. einen Fluss, der die Abschnitte des Levels oder die wichtigsten Ressourcenvorkommen teilt, und anschließend die Prozedurgenerierung ausführen, sodass die von Hand platzierten Schlüsselausgleichsfunktionen erhalten bleiben und dennoch die gewünschte interessante und organische Vielfalt bereitgestellt wird der prozeduralen Generierung.

Zum Beispiel bot ein erzeugtes Gelände, das einen manuell platzierten Fluss bewahrt, der die Karte in zwei Hälften teilt, und eine bewaldete Deckung zusätzliche Verteidigung um die Basen:

Geben Sie hier die Bildbeschreibung ein


quelle
2
Danke, das wird gut mit meinem Chunk-System funktionieren. Die Leute scheinen durch meine "aber ich bin faul" Aussage verwirrt. Ich bin kein Künstler und ich finde die Erzeugung von Rauschen und Maschen interessanter.
James Pae
2
@ JamesPae: "Ich bin kein Künstler " Bei Level Design geht es nicht um Kunst . Es geht um das Gameplay. Die Frage ist also, magst du es, Spiele zu entwerfen?
Nicol Bolas
8
@JamesPae Wenn Sie kein unterhaltsames Level herstellen können, wird es Ihnen sehr schwer fallen, Ihr prozedural generiertes Level zum Spaß zu machen. Ich schlage vor, dass Sie mindestens eine Stufe handwerklich herstellen, damit Sie lernen können, was Spaß macht, bevor Sie Ihren Generator schreiben
Evorlor
2
@Evorlor er sagt, er mag es nicht, nicht, dass er es nicht kann. Warum ignorieren alle diesen Punkt die ganze Zeit?
Davor
5
Warum nimmt jeder alles so wörtlich? Er machte eindeutig einen Witz mit dieser Aussage. Ich verstehe den Standpunkt des OP, ja, sie könnten ein paar Level von Hand herstellen, aber dann haben Sie immer noch nur so viele Level, wie Sie erstellt haben. Wenn Sie den gleichen Aufwand betreiben, um einen guten Levelgenerator zu erstellen, können Sie möglicherweise unendlich viele Level verwenden. Menschen haben unterschiedliche Einstellungen und Meinungen. Einige mögen es vielleicht, großartige Levels von Hand zu basteln, andere mögen es wirklich, tief in die Herstellung eines großartigen Levelgenerators einzusteigen.
JamEngulfer
7

In einigen Fällen kann es möglich sein, sich darauf zu verlassen, dass die Spieler selbst ausgewogene asymmetrische Karten mithilfe der Kachelmanipulationsmechanik erstellen.

An einem Ende des Spektrums können Sie den Spielern erlauben, die Karte ganz oder teilweise zu erstellen, indem Sie Kartenkacheln auswählen und platzieren. Es gibt verschiedene Möglichkeiten, dies zu optimieren:

  • Spieler wählen aus einem gemeinsamen Stapel von Plättchen
  • Ebenen wählen aus einem persönlichen Stapel von Kacheln
  • Kacheln werden über eine Entwurfsphase ausgewählt
  • Einige Kacheln können im Voraus über ein Szenario repariert werden (dh es entsteht immer ein überbrückter Fluss in der Mitte der Karte).
  • Spieler kaufen Plättchen von einem zentralen Markt mit einer Ressource
  • Spieler dürfen eine Hand mit Plättchen behalten oder nicht

Am anderen Ende des Kachelmanipulationsspektrums können die Spieler Kartenkacheln manipulieren. In dieser Lösung beginnt das Spiel mit einer ersten Karte. Die anfängliche Karte könnte symmetrisch sein oder unter Verwendung einer der anderen Antworten "fair genug" sein.

Als nächstes tritt eine Kartenmanipulationsphase auf, in der die Spieler einige der folgenden Aktionen ausführen können:

  • eine Fliese drehen
  • Fliesen tauschen (benachbart oder anderweitig)
  • Spiegel eine Fliese
  • Schieben Sie eine Reihe oder Spalte von Kacheln (Kacheln, die von den Kanten fallen würden, werden umwickelt)

Diese Manipulationen könnten einzeln ausgeführt werden. In diesem Fall hätte ein Spieler die Möglichkeit, auf Manipulationen eines anderen Spielers zu reagieren, oder der Spieler könnte eine Liste von Änderungen in die Warteschlange stellen, die ausgeführt werden. Sie können den Spielern auch erlauben, die gesamte Karte zu manipulieren oder die Dinge auf ihre Startbereiche zu beschränken.

Ein Nachteil dieses Ansatzes ist, dass das Endergebnis vor unerwünschten Ergebnissen geschützt werden muss - dh eine unpassierbare Bergkette so zu manipulieren, dass ein Teil der Karte nicht mehr zugänglich ist. Mögliche Lösungen für diesen Nachteil sind:

  • Überprüfung potenzieller Bewegungen und Nichtzulassung von Bewegungen, die zu illegalen Ergebnissen führen
  • Alle Bewegungen zulassen, aber alles, was illegal ist, rückgängig machen
  • Bauen Sie die Kacheln so, dass keine Bewegungen illegal sind
  • Entwerfen anderer Spielmechanismen (dh Bewegung), so dass keine Bewegungen illegal sind
Pikalek
quelle
2

Lassen Sie Ihren Kartengenerierungsalgorithmus symmetrische Ebenen generieren, indem Sie eine Ebene generieren, diese spiegeln und jeden Spieler auf eine Seite legen. Eine Karte für vier Spieler kann erstellt werden, indem sie sowohl auf der x- als auch auf der y-Achse gespiegelt wird.

Auf diese Weise ist die Karte für alle Spieler gleich gut (oder schlecht). Ein Nebeneffekt, den Sie beachten müssen, ist, dass die Spieler die Positionen der anderen Spieler und das Layout der anderen Teile der Karte kennen, nachdem sie ihre eigenen erkundet haben.

Eine andere Möglichkeit besteht darin, eine Karte ohne diesen Symmetrietrick zu erstellen, dann aber den Spielern die gesamte Karte zu zeigen und jeden Spieler seinen Startort frei wählen zu lassen.

Philipp
quelle
1

Ein Ansatz besteht darin, andere Faktoren zu verwenden, um die Karte auszugleichen. Möglicherweise können Sie dies automatisieren, indem Sie einige Kartenanalysealgorithmen verwenden und zusätzliche Startressourcen für Standorte bereitstellen, die als benachteiligt gelten. Alternativ können Sie die Spieler selbst für diesen Schritt verwenden. Ein aktuelles Beispiel hierfür ist die Verwendung der umgekehrten Auktion im Offenlegungsmodus in der Offworld Trading Company (OTC) zur Begründung Ihres ursprünglichen Anspruchs (dh Auswahl eines Startbasisstandorts):

Mit der Zeit sinkt die Anfangsschuld für eine frühzeitige Gründung. Dies wird schließlich zu Startgeld, wenn es lange genug dauert, bis die letzten 2 Spieler gefunden sind. Sobald nur noch ein Spieler übrig ist, der sein Hauptquartier nicht gegründet hat, ändern sich die Werte nicht mehr und dieser Spieler profitiert nicht mehr vom Warten auf das Finden.

Ich erinnere mich nicht, ob es das 3 Moves Ahead- oder Game Design Round Table- Interview war, aber in einem von ihnen sagt Soren Johnson (der Entwickler), dass diese Mechanik das Kartenproblem im Wesentlichen von "Kann ich zuerst den besten Ort finden" in "ändert". Wie gut ist der zweitbeste Ort auf der Karte? "

Ein Vorteil ist, dass diese Lösung stark asymmetrische Karten ermöglicht. Ein Nachteil ist, dass die gesamte Karte zumindest zu Beginn allen Spielern angezeigt wird. Der OTC-Ansatz zeigt auch die Basispositionen der Spieler an. Andere Mechaniker wie Blind Bidding vermeiden möglicherweise die Offenlegung von Basispositionen.

Pikalek
quelle