|
XSpire AI |
Top Previous Next |
|
F: Wie lange haben Sie am Code für Ihr KI System gearbeitet? A: Die Kernkomponenten waren schnell geschrieben, das hat vielleicht 2 Monate gedauert. Ich hatte allerdings auch schon etwas Erfahrung mit Shooter KI, weil ich im letzten Sommer die COSH Demo geschrieben habe. Der gegenwärtige Ansatz nutzt einige Teile von damals und viele neue und verbesserte Details.
F: Was war der komplexeste Teil des Skriptes? A: Am schwierigsten ist es immer, alle Teile in ein lauffähiges Spiel zu kombinieren. Das athfinding ist sicherlich ein Kern der KI, aber es ist im Vergleich zu meinem alten RTS Pathfinding vergleichsweise simpel gehalten. Der Waffencode hatte auch seine Tücken. Aber der komplexeste Teil ist der Automat, für die Entscheidungsfindung. Die Bots müssen ihre Situation analysieren und entsprechend handeln: wer soll angegriffen werden, welches Item soll eingesammelt werden oder soll eine Position verteidigt werden? Momentan arbeite ich auch an einfacheren Gegners für Single Player Missionen. Dies muss mit dem gleichen Code funktionieren, was etwas Arbeit erfordert. Und es ist sehr kompliziert, sicherzustellen, dass alles erweiterbar für spätere Codeänderungen bleibt und natürlich auch, dass die Konfigurierbarkeit für viele Shooter Spiele gewährleistet ist.
F: Was ist Ihrer Meinung nach die Obergrenze der Gegner, die in einem Level mit Ihrem Pathfinding Code herumlaufen können? A: Es gibt keine wirkliche Grenze. Das Pathfinding ist sehr schnell und nutzt vorberechnete Daten. Die Performance hängt vielmehr von der Anzahl der Bots ab, die umherlaufen und ihre Höhe mit Hilfe von trace bestimmen. Aber ich bin sicher, dass 30 Bots bei vernünftiger Performance zeitgleich unterwegs sein können. In Single Player Missionen müssen nicht alle Kreaturen ständig ihrem Pfad folgen, also ist diese Zahl erweiterbar.
F: Mit welchen Tricks gibst Du den Bots die Illusion, von Menschen gesteuert zu sein? A: Von Menschen? Nicht wirklich. Keine Bot-KI wird in naher Zukunft menschenähnlich sein. Aber wir können immer mehr “menschliche” Aktionen simulieren. Der wichtigste Fortschritt ist sicher, dass sich die Bots frei bewegen können und nicht hängenbleiben. Pathfinding ist ein absoluter Kern für moderne Spiele. Desweiteren müssen sie auf niedrigen Schwierigkeitsgraden stehenbleiben und zielen und dass die Bewegung entlang der Wegpunkte etwas geglättet wird. Die Entscheidungen, die mit Hilfe des Automaten getroffen werden (nimm das nächste Item, geh zur Flagge) lassen sie ebenfalls schlau erscheinen. Aber es gibt noch viel mehr Features, die sie menschenähnlich erscheinen lassen würden, zum Beispiel Animationen bei gewonnenem Match oder wenn sie Kommandos geben würden oder ihre Gegner verspotten.
F: Welchen Rat würden Sie einem Neuling geben, der sein eigenes KI System schreiben möchte? A: Lerne, wie Pathfinding funktioniert! Lerne, was ein endlicher Automat ist. Beginne die Arbeit auf dem Papier, denn 90% der Entwicklung findet dort oder im Kopf statt. Wenn Du auf dem Papier anhand einiger gezeichneter Wegpunkte nicht erklären kannst, wie Pathfinding funktioniert, dann kannst Du es nicht programmieren und verstehen. Füge keine Teile in die KI ein, die der Spieler nicht bemerkt (wie Super Advanced Fuzzy Entscheidungsfindung), denn nur Features für das Gameplay sollten eingebaut werden. Eine KI sieht oft schon sehr gut aus, wenn sie zufällig Wegpunkten folgt und alles im Sichtfeld angreift. Schließlich bezieht sich alles im Spiel auf den Spieler, es ist keine Simulation für virtuelles Leben.
F: Welche Verbesserungen sind für die Zukunft geplant? A: Die Übertragbarkeit auf verschiedene Arten von Spielen und die Konfigurierbarkeit durch den Nutzer. Die KI sollte in einem typischen Half-Life Spiel nützlich sein. Es ist wenig sinnvoll, sie bis zu einem Stand von Unreal Tournament Bots zu verbessern. Der Node-Editor muss verbessert werden, damit andere ihn auch benutzen können. Das Ziel ist einige Skripts, Tools und Dokumentation, so dass ein Neuling eine eigene Single Player Kampagne daraus machen kann. Und genug Freiraum, dass fortgeschrittene Nutzer einen persönlichen Shooter machen können. Es gibt auch einige Tests mit graphischen Tools, wie ein Shadow-Baker für das Terrain und ein Skript für Gras und Pflanzen.
F: Wenn Sie nochmal von vorn beginnen würden, welche Teile würden Sie ändern und was würden Sie von vornherein anders machen? A: Ich habe den kompletten Code drei Mal umgeschrieben, er ist sogar recht strukturiert. Das Hauptziel ist die Modularität des Skriptes. Ich muss vermutlich große Teile des Codes umschreiben. Aber da die Skripte noch nicht endgültig fertig sind, kann ich nicht wirklich sagen, was ich anders gemacht hätte.
F: Geben Sie uns bitte einige Hinweise für Anfänger der Spieleentwicklung. A: Konzentrieren Sie sich auf die Spielbarkeit! Lassen Sie sich nicht von Screenshots beeindrucken und dabei wünschen, die beste Grafik, Shader und Features zu haben. Das Spiel muss schnell laufen, ein gutes Interface besitzen und am wichtigsten ist Spielspaß! Ich werde nicht betonen, dass es wichtig ist, klein anzufangen. Warum nicht mit dem größten Spiel anfangen, das man schon immer machen wollte... es wird vermutlich nicht fertig, aber Sie werden lernen, was dahintersteckt, ein solches Spiel zu machen. Spezialisieren Sie sich in Ihrem Interessengebiet (Modeller, Level Designer, Skripter, Musiker) und treten Sie einem Team bei oder bleiben Sie ein Allround Einzelkämpfer (wie ich) und haben Sie Spaß dabei, verschiedene Aspekte des Spieledesigns zu erforschen (und suchen sich dann spezialisiertere Mitglieder). Natürlich geht es darum, Spaß zu haben, wenn es zum Hauptberuf wird, dann verliert es eine Menge Spaß, die der Hobby-Entwickler hat.
Vielen Dank, Damocles.
|