Zur Zeit online: keiner ausser dir |
Seite: 1 [2] [3] >> |
Autor |
Mitteilung |
|
verfasst am: 24.10.2005, 18:35
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
Momentan kümmere ich mich ein wenig um die Konzepte zur KI. Da fehlt natürlich noch einiges an Werten zur Steuerung, das meiste im Bodeneinsatz und im Karteneditor.
Es fehlt allerdings auch ein Wert der für die Aliens im Spielsatz definiert werden muss - und wenn man schonmal bei der Erweiterung der Alien-Variablen ist, sollte man sich vorher überlegen was insgesamt gebraucht und geplant werden muss, deshalb dieser Thread zum sammeln.
Was fehlt ist eine Klassifizierung des Kampftypus eines Aliens - ohne eine solche Klassifizierung werden alle Aliens immer dieselben Taktiken nutzen und nicht spezifisch diejenige, in der sie am besten sind.
Allerdings ist eine automatische Ermittlung der besten Taktik für einen Stapel Alienwerte sehr schwierig, während der Spielsatzersteller das schon beim Festlegen der Werte im Kopf hat.
Dies muss ein festgelegtes Auswahlfeld wie bei Einrichtungstypen oder Waffenwahl bei Munition sein, denn ansonsten sind KI-Scripte nicht untereinander kompatibel. Dies wiederum bedeutet das man sich vorher überlegen muss, welche Kampftypen es überhaupt jemals geben soll, auch wenn die nächsten Monate noch alle Aliens nach denselben Regeln kämpfen werden.
Folgende Typen fallen mir dazu ein:
Nahkämpfer - Bewegung auf Gegner und aus nächster Nähe angreifen
Wächter - an einer guten Stelle die Umgebung beobachten und hauptsächlich Reaktionsschüsse ablegen
Soldat - ca. 30-50% der ZE verbrauchen und gucken ob man Gegner findet
Kundschafter - viel laufen und drehen, Gegnerpositionen an andere Aliens (z.B. Wächter) melden
Kommandant - defensive Positionen suchen, ab dort schießen
Leibwächter - einen Kommandanten oder Wächter begleiten und schützen/vor den Gegner stellen, ohne Zuordnung Soldat
Zufall - Gegner ignorieren und zufällig herumlaufen, Schüsse nur bei Nahkontakt - auch zu benutzen wenn Alien in Panik ist.
Das sind jetzt 7 Typen - viel mehr darf es nicht werden, weil sonst die KI zu aufwendig wird. Trotzdem die Frage ob jemand noch 1-2 weitere Basisverhaltenstypen kennt?
--------------
Und wenn man schon dabei ist: Nicht für den Kampf aber für ein paar andere Punkte wäre eine zweite Klassifizierung nützlich.
Es werden 5-10 Aliengruppen vordefiniert. Die Namen dieser Gruppen werden über Spielsatzeigenschaften festgelegt. Jeder Alien wird dann einer Gruppe zugeordnet (Standart Gruppe 1).
Die Auswirkungen sind dann zum einen die Möglichkeit, bei den Autopsien nach diesen Gruppen zu sortieren (ähnlich wie bei Gegenständen nach Waffen, Rüstung etc.).
Zweitens könnte man noch Scriptbefehle definieren, die sich jeweils auf die Aliens einer Gruppe auswirken.
Die Benutzung ist freiwillig und der Spielsatzeditor entscheidet dann auch ob er die Gruppen nach Alien-Rassen benennt, nach militärischem Rang oder nach jeder Idee wie er es sortieren möchte.
Keine direkten Auswirkungen im Spiel, sondern nur zur Verwaltung und Scripthilfe.
(wer sich meine Alienliste im Galaktischen Krieg anschaut weiß wieso ich auf sowas komme - und ich hab noch Ideen für eine 5. und 6. Rasse...)
--------------
Es fehlen natürlich noch einige Standartzuordnungen, die aber sowieso geplant sein dürften - wie UFOPedia-Bilder und Animationssequenz festlegen.
Bei letzterem wäre ich für sowas wie bei der Waffensymbolfestlegung, evtl noch ohne Ergänzungsmöglichkeit. Wenn man aber schon jetzt einen Alien mit der Animation eines Soldaten versehen könnte und das dann als Überläufer definiert, könnte der Bodeneinsatz einen Tick mehr überraschungen kriegen ;-) |
|
verfasst am: 25.10.2005, 00:38 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Das sind jetzt 7 Typen - viel mehr darf es nicht werden, weil sonst die KI zu aufwendig wird. Trotzdem die Frage ob jemand noch 1-2 weitere Basisverhaltenstypen kennt?
Hmmm, ich gebe zu, allzuviel Ahnung habe ich nicht von der Materie. Aber sollte nicht genau das was du da in die 7 Typen eingeteilt hast direkt mit dem Skript zu steuern sein? Sprich im Skript wird festgelegt, wieviele ZE ein Alien ohne Feindkontakt mit Laufen verbraucht, was bei Feindsichtung passiert, aus welcher Entfernung die Waffe eingesetzt werden soll (eventuell als Formel in Abhängigkeit von den verbleibenden ZE), etc.
Auf diese Weise kann die KI von jedem weiterentwickelt und angepasst werden. Für Unerfahrene könnten ja Standardskripte bereitgestellt werden.
Oder wozu willst du sonst die KI-Skripte verwenden? |
|
verfasst am: 25.10.2005, 07:33
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
Das Problem ist, das ein Script nicht erkennen kann wie die Werte eines Aliens relativ zu einem anderen sind.
Wenn Du also einen Alien hast, der hohe Sichtweite und hohes Trefferwahrscheinlichkeiten aber wenig Hitpoints hast, dann ist der für das Verhalten eines Kundschafters oder Wächters gut geeignet, nicht aber als Nahkämpfer.
Setzt das Script den also als Nahkämpfer ein, dann gähnt der Spieler nur.
Das Problem ist das bei einem Spiel mit verschiedenen Aliens diese Werte ja wechseln und mit anderen Aliens besser werden.
Irgendwo braucht jetzt das Script einen Anhaltspunkt um zu sagen - diesen Alien steuere ich besser mit einer Sniper-Taktik, den anderen besser als Nahkämpfer.
Dies kann nur extrem aufwendig anhand der Werte in der Mission selber ermittelt werden, da schon bei festen Werten die Vergleichslogik aufwendig ist - und bei XForce ist sie sowohl frei definierbar alsauch im Verlauf der Zeit anwachsend, sobald andere Aliens hinzu kommen.
Wenn man jetzt keine Standarttypen definiert, dann muss entweder jeder Spielsatzersteller die Scripte auf seine Aliens anpassen oder - wenn das Programm automatisch ermitteln soll welcher Alien wozu geeignet ist - dann brauchen wir alleine ein halbes Jahr nur um die Programmlogik festzulegen, mit der die unterschiedlichen Taktiken den unterschiedlichen Aliens zugeordnet sind.
Und letzteres hat dann auch noch Probleme, sobald ein Spielsatz ein Konzept benutzt dessen Werteverteilung bei unterschiedlichen Aliens von uns nicht bedacht wurde...
Mein Spielsatz z.B. benutzt die ganze Reichweite mit Durchschlagkraft 10-100, im Default ist bei Durchschlag 25 oder so schluss. Solche Unterschiede automatisch zu berücksichtigen ist nicht ganz einfach (denn das gilt für alle Werte gleichzeitig, Durchschlagkraft war nur ein Beispiel)
Die Skripte sind meines erachtens besser dazu zu benutzen, das genaue Verhalten dieser Aliens zu steuern - d.h. soll der Sniper sich eine freie Stelle suchen oder besser in einer Ecke mit gutem Sichfeld warten etc.
Denn mit dem Kampftypus lege ich nur eine Klasse fest, die das Script dann abfragt und bei seiner Entscheidung benutzt.
Außerdem bedeuten externe universelle Scripte, dass die Community bei der Entwicklung besser mithelfen kann und das man die KI ohne neue Programmversionen anpassen kann. |
|
verfasst am: 25.10.2005, 10:48
|
Spielsatz Darkage
Registrierdatum: 01.03.2005, 13:47
Beiträge: 1846
|
Ich geb zu, beim bloßen Lesen hab nicht mal die Hälfte wirklich verstanden. ^^
Aber: Wenn Werten automatisch bestimmte KIs zugeteilt werden, ist das außerdem nicht unbedingt logisch. Angenommen, du hast eine grundsätzlich schwache, aber zielgenaue Rasse- bei der werden trotzdem nicht alle sniper sein. Die Hunnen waren die besten berittenen Bogenschützen und wurden praktisch im Sattel geboren- trotzdem gabs sogar bei denen Infanterie. (ja, ich spiel grad Rome- BarbI)
Davon abgesehen ist ein "Panik" script ideal für Zivis :D |
|
verfasst am: 25.10.2005, 11:46 · Edited by: Andiana
|
Registrierdatum: 21.10.2005, 20:08
Beiträge: 133
|
Ich denke auch das so eine Klassifizierung sein muss,
nicht nur weil es den Programmieraufwand verringert.
Ein Spielsatzersteller könnte dann z. B. eine Alienart entwickeln die in Massen auftritt dafür jedoch sehr schlecht schissen kann. Wegen dem Balancing soll diese am Anfang des Spiels trotzdem noch aus der Distanz schissen, später aber als Leibwächter und zur guter letzt als Nahkämpfer den Schwierigkeitsgrad erhöhen. Das anfänglich Verhalten könnte man in der Story mit Angst vor dem unbekannten Wesen "Mensch" begründen. Sowas würde das Spiel bereichern. Eine automatische Zuordnung, die gundsätzlich alle Aliens anfangs absichtlich zu strategischen Superidioten macht, würde dem Spiel schaden. Eine Zuordnung, die immer die beste Strategie wählt, schrenkt IMHO das Spiel bei der Story und Balancingmöglichkeit ein. Und eine für alle Spielsätze gute Mischung aus den Beiden wird man nie hinbekommen.
---
Als KI-Typen fallen mir noch folgende ein:
Scharfschütze - wenn möglich geziehlte Schüsse, wenn die Trefferchance bei über 80% liegt vor dem Gegner weglaufen.
Terrorist - primär Zivilisten erschissen, X-Force ausweichen/ignorieren und erst bei Nahkontakt bekämpfen
Sprengstoffexperte - Minen legen und bei Kontakt Granaten werfen
Sprengstoffexperte setzt natürlich voraus das Aliens bestimmt Waffen zugeortnet bekommen, ist das denn möglich/geplant?
Ich hab hier etwas davon gelesen das die Waffen durch die Inteligenz der Aliens zugeortnet werden.
Oder übernimmt später die KI die Waffenwahl? Dann muss man auch noch den Type Wissenschaftler einführen, ansonsten geht für die auch Zufall/Panic. |
|
verfasst am: 25.10.2005, 11:57 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Wenn man jetzt keine Standarttypen definiert, dann muss entweder jeder Spielsatzersteller die Scripte auf seine Aliens anpassen oder - wenn das Programm automatisch ermitteln soll welcher Alien wozu geeignet ist - dann brauchen wir alleine ein halbes Jahr nur um die Programmlogik festzulegen, mit der die unterschiedlichen Taktiken den unterschiedlichen Aliens zugeordnet sind.
Auf den Gedanken, dass die Programmlogik selbst festlegt, welche Taktik für welches Alien passt, bin ich noch garnicht gekommen. Selbstverständlich muss der Spielsatzersteller die Skripte für seine Aliens anpassen (das ist ja der Sinn von Skriptgesteuerten KIs). Das bedeutet ja nicht zwangsläufig, das jeder seine eigene KI schreiben muss. Bei den Grafiken funktioniert es doch auch, das diese von fähigen Grafikern für alle bereitgestellt werden. Ähnlich würde das dann bei den KI-Skripten laufen. Und natürlich wird mit dem Developerpack auch ein Satz von Standartskripten mitgeliefert. Aber ich will halt die Freiheit haben, bei Bedarf auch meine eigene KI zu schreiben. Und ehrlich gesagt, sehe ich immernoch keinen Grund, warum man diese Option nicht offenhalten sollte, zumal wenn man eine entsprechende Skriptsprache ja sowieso für die oben erwähnten 7 Standardtypen einbauen will.
Zitat: DirkF Außerdem bedeuten externe universelle Scripte, dass die Community bei der Entwicklung besser mithelfen kann und das man die KI ohne neue Programmversionen anpassen kann.
Da ich ja sowieso immer von externen Skripten ausgegangen bin, ist das in meinen Augen auch von vornherein gewährleistet. Warum die Skrite dazu aber universell sein müssen, das will mir noch nicht einleuchten. |
|
verfasst am: 25.10.2005, 12:04 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: Andiana Ich denke auch das so eine Klassifizierung sein muss,
nicht nur weil es den Programmieraufwand verringert.
Versteh ich nicht. Was hat das mit dem Programmieraufwand zutun? Wenn ich eine Funktion für KI-Skripte einbauen muss, dann ist es doch egal, ob es am ende davon genau 7 gibt, oder ob jeder nach Bedarf seine eigenen Skripte schreiben kann?
Zitat: Andiana Wegen dem Balancing soll diese am Anfang des Spiels trotzdem noch aus der Distanz schissen, später aber als Leibwächter und zur guter letzt als Nahkämpfer den Schwierigkeitsgrad erhöhen.
Das könnte man durch ein eigenes Skript direkt lösen, ohne erst umständlich über ein Missionsskript den KI-Typ zu ändern (falls das denn je möglich würde). In einer eigenen KI bräuchte man nur das Datum abfragen, und dementsprechend das Verhalten festlegen, etwas das mit festen Standard-KIs nie zu realisieren wäre (man denke an eine Alienart, die immer bei Nacht völlig durchdreht ;D - dann immer mit einem Missionsskript die KIs hin- und herwechseln dürfte ziemlich umständlich sein). |
|
verfasst am: 25.10.2005, 12:43
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
Ich gebe glaube mal ein paar Beispiele, um das Problem und den Ansatz zu erläutern. Teilweise wurde das nämlich immer noch durcheinander gebracht ;-)
Beschränken wir das mal auf Sniper und die Auswahl Trefferwahrscheinlichkeit.
Spielsatz 1 sagt "Aliens haben Hightech-Zielsysteme, kein Alien hat unter 70% Trefferchance, Waffen werden über Schaden balanciert".
Spielsatz 2 sagt "Aliens haben dicke aber ungenaue Wummen, Treffer = Tot aber Trefferchancen selbst bei Snipern unter 40%".
Spielsatz 3 schickt die Aliens in drei Wellen, erste Welle Soldaten 10%, Sniper 30% - zweite Welle 40%/60% - dritte Welle 70%/90%.
Eine allgemeine Routine die immer den Aliens die passenden Kampftypen zuweist ist so gut wie unmöglich - speziell wenn über die Zeit die Zusammensetzung wechselt. Und dann kommt immer noch die Beschwerde aus Spielsatz 4 "Natürlich hat das Sturmvieh eine hohe Trefferchance, aber es soll mit seinen Klauen anstürmen und nicht Snipen".
-------------------------
Und jetzt zur KI-Scripten:
Am Anfang des Kampfes überprüft die KI
"was hab ich bekommen - 5 Sniper und sonst nichts???"
Hmm - das beste passende Strategieskript das ich finde ist eine Snipergruppe aus 2 Snipern, 2 Leibwächtern und 1 Kundschafter.
Also kriegt Sniper 3 das Leibwächterscript auf den ersten und Sniper 4 auf den zweiten Sniper und der fünfte kriegt das Kundschafterscript.
Zusätzliche Programmierer können dann natürlich irgendwann auch ein Script für eine Gruppe aus 5 Snipern ergänzen, aber das wird dauern...
Und durch die Überlagerung (Kampftypus ungleich Kampfscript) kriegt man auch Spielsätze mit Default = alles Soldaten zum laufen...
@Lennstar: neutrale/zivile Kampftypen hab ich tatsächlich vergessen, für genau sowas war der Post hier.
@Andiana: Scharfschützenscripte sollten auf dem Wächtertypus basieren - das hatte ich absichtlich nicht Scharfschütze genannt weil es um grundsätzliche Typen geht und auch Alternativen zum Scharfschützen da sind (z.B. Torwächter).
Minenleger ist aber auch ein möglicher Typ - werden vielleicht doch mehr als 10 Typen die ich ursprünglich geschätzt hatte... |
|
verfasst am: 25.10.2005, 14:55 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Und jetzt zur KI-Scripten:
Am Anfang des Kampfes überprüft die KI
"was hab ich bekommen - 5 Sniper und sonst nichts???"
Hmm - das beste passende Strategieskript das ich finde ist eine Snipergruppe aus 2 Snipern, 2 Leibwächtern und 1 Kundschafter.
Also kriegt Sniper 3 das Leibwächterscript auf den ersten und Sniper 4 auf den zweiten Sniper und der fünfte kriegt das Kundschafterscript.
Hmmm, ich glaube ich habe das Problem unseres Missverständnisses entdeckt. Ich will mit Hilfe der Skripte die KI der einzelnen Aliens festlegen (was vorgeschriebene Standardtypen überflüssig macht). Der Vorschlag von DirkF geht hingegen in die Richtung, mit Hilfe von Skripten das Verhalten von Gruppen festzulegen. Das ist in meinen Augen aber ein extrem hochgestecktes Ziel. Denn selbst Topspiele wie die Jagged Alliance Serie oder auch die Fallout-Spiele haben keine vergleichbare Gruppen-KI. Dort agiert jeder Feind mehr oder weniger für sich selbst. Auch in den D&D-Spielen, bei denen man KI-Skripte für die einzelnen Charaktere anpassen kann, beziehen sich diese immer nur auf die eine Einheit.
Eine Gruppen-KI dürfte in XForce nur sehr schwer umsetzbar sein. Was hilft es z.B., wenn der Trupp aus 5 Snipern in 2 Leibwächter 2 Sniper und 1 Kundschafter aufgeteilt wird, wenn die Einheiten alle in einem anderen Raum auftauchen (die Auftauchspots können schließlich in den Karten beliebig gesetzt werden).
So gibt es viele weitere Beispiele für Konstelationen, die ein Gruppenskript abdecken müsste, die aber nur schwer vorrausgeahnt oder irgendwie per Code abgefragt werden können. Ich wage zu behaupten, dass ich mit für jede Einheit angepassten KI-Skripten eine insgesamt intelligenter wirkende KI zustande brächte, als das mit Hilfe von Gruppen-KI machbar wäre. |
|
verfasst am: 25.10.2005, 15:46
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
Nur zur Info:
Die KI arbeitet bereits jetzt mit Gruppen, die sich zuerst im Gebäude sammeln und dann gemeinsam weitergehen.
Es ist nur nicht immer jedes Alien in einer Gruppe, und dieses Gruppensammeln gibt einem Spieler momentan die Zeit sich an den Ausgängen zu positionieren und ein Tontaubenschießen zu veranstalten.
Eine begrenzte Gruppen-KI ist noch nicht einmal so schwer - das Problem bei den meisten Spielen ist das es für verschiedene Wesen auch verschiedene Gruppen-KIs geben muss.
Deshalb die Vorstufe mit der Klassifizierung.
Außerdem hilft die Klassifizierung auch, wenn man nur Gruppen mit je einem Mitglied definiert (was zugestanden einfacher ist)...
Aufwendige Gruppen-KIs wird es lange nicht geben, aber einfache (z.B. Gruppe Kommandant+Leibwächter) machen nichts anderes als dem Leibwächter den Kommandanten als zu schützende und zu folgende Person zuzuordnen...
Und wenn man sowas vorbereitet, dann wird irgendwann auch die erste komplexe Gruppenstrategie geschrieben - bis dahin kostet das kaum etwas außer einer etwas erweiterten Vorsortierungs-Routine.
(Ja, ich hab mich schon so manches mal mit KI in Spielen beschäftigt und darüber geflucht wie schlecht einige Spiele programmiert sind. Deshalb will ich das hier vernünftig planen, damit es erweiterbar bleibt) |
|
verfasst am: 25.10.2005, 16:39
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Aufwendige Gruppen-KIs wird es lange nicht geben, aber einfache (z.B. Gruppe Kommandant+Leibwächter) machen nichts anderes als dem Leibwächter den Kommandanten als zu schützende und zu folgende Person zuzuordnen...
OK, ich werde mir mal ein paar Gedanken zu Gruppen-KI machen. Vielleicht kann ich mich ja noch damit anfreunden (auch wenn ich eigentlich nicht auf individuell angepasste Alienskripte verzichten will; vielleicht lässt sich ja eine Kombination finden). Aber nur so zu obigem Beispiel Kommandant+Leibwächter. Es ist keineswegs gesagt, dass dies eine gute Strategie ist. Erstmal müsste der Kommandant dem Leibwächter folgen, und nicht umgekehrt (denn gleichzeitig bewegen ist in rundenbasierten Bodeneinsätzen nicht möglich). Sonst läuft ja immer der Kommandant in die Falle. Dann stellt sich die Frage, welche Einheit hat wieviele ZEs. Wenn der Leibwächter beispielsweise weniger ZE hat, als der Kommandant, dann wird letzterer dadurch stark in seiner Bewegungsfreiheit eingeschränkt. Zumal der Leibwächter ja nicht unbedingt alle ZEs verbrauchen sollte, um gegebenenfalls eine Unterbrechung zu bekommen. Noch schlimmer wäre es bei einem Hinterhalt. Diesen müsste das Gruppenskript als solchen erkennen können, damit der Kommandant mit den vielen ZEs fliehen kann, und nicht bei dem sich wehrenden Leibwächter bleibt. Oder sollte der Leibwächter mit dem Kommandanten fliehen? Und sollte in diesem Fall der Kommandant in der Nähe des Wächters bleiben, oder nicht? Auf jedenfall reicht es nicht, einfach einer Einheit zu befehlen, der anderen zu folgen. Es würde eher dumm wirken, wenn Alien2 in die selbe Falle läuft, in die gerade Alien 1 gelaufen ist. Selbst in eine Gruppen-KI mit nur zwei Einheiten müsste deutlich mehr Hirnschmalz gesteckt werden (die Probleme mit dem derzeitigen "agieren als Gruppe" der Aliens beweist das nur).
Im übrigen lässt sich ein ähnlicher Effekt auch mit Einzel-KIs erreichen (vielleicht nicht ganz so flexibel, aber es würde den Anschein erwecken, die Aliens agieren als Gruppe). Man könnte z.B. in einem KI-Skript festlegen, das Alien 3 in Richtung des ihm zu Beginn des Bodeneinsatzes nächstgelegenen Aliens läuft, und diesem folgt. Stirbt dieses, wird automatisch das nächste Alien anvisiert. Auch könnten sich alle Aliens in die Richtung eines entdeckten Feindes bewegen... |
|
verfasst am: 25.10.2005, 17:06
|
Spielsatz Darkage
Registrierdatum: 01.03.2005, 13:47
Beiträge: 1846
|
Wenn ihr in meinen Kopf schauen könntet, würdet ihr viele Fragezeichen sehen. :D
Also lieber ne Einzel-KI, die ich als gamesetter einer Alienart zuschreiben kann und die funktioniert, als Gruppen die unlogisch sind. Aber ich muss mich da auf Leute verlassen, die sich mit KI auskennen.
Ansonten: Falls ihr Logiker braucht (das könnte passieren, was wären Reaktionen da drauf) da bin ich sicher sehr gut. |
|
verfasst am: 25.10.2005, 17:50 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Was auch nicht unterschätzt werden darf, ist die schiere Menge an Kombinationsmöglichkeiten. Nehmen wir an, es gibt am Ende 10 verschiedene Kampftypen (Wächter, Kundschafter...). Nehmen wir weiterhin an, es ist langfristig geplant, für jede Kombination von Aliens ein Gruppenskript anzulegen, um eine gute Strategie zu erhalten. Außerdem soll kein Alientyp doppelt vorkommen. Das bedeutet dann für Bodeneinsätze:
1 Alien - 10 Gruppenskripte
2 Aliens - 90 Gruppenskripte
3 Aliens - 720...
4 Aliens - 5040...
5 Aliens - 30240...
6 Aliens - 151200...
u.s.w.
OK, 6 verschiedene Typen mögen unwahrscheinlich sein, aber selbst bei Bodeneinsätzen mit nur 3 verschiedenen Alien-KI-Typen ergibt das schon 720 Gruppen-Skripte (und das mit der Einschränkung, das an dem Bodeneinsatz auch nur 3 Aliens teilnehmen). Es ist also sehr unwahrscheinlich, das es irgendwann mal für die meisten Typenkombinationen ein passendes Gruppenskript gibt. Das wäre aber Bedingung, damit die Typenzuweisung im Spielsatz überhaupt eine Bedeutung erhält, oder? |
|
verfasst am: 25.10.2005, 17:52
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
OK, jetzt hab ich mehr Zeit und kann mal ein paar Details zu dem Konzept posten.
Anfangen wird es auf jeden Fall mit Skripten für einzelne Soldaten oder Scharfschützen und dementsprechend Gruppen von genau einem Mitglied. In diesem Falle ist die Gruppen-KI nur eine Durchschleusung der Befehle, die keine Rechenzeit kostet und auch keine Programmierkunst.
Die zweite Stufe sind Support-Skripte wie z.B. der Kundschafter der Soldaten sucht aber wenig feuert oder der Leibwächter, der einem anderen Alien folgt.
Die dritte Stufe sind dann die ersten Gruppen mit zwei Aliens, z.B. Kundschafter und Scharfschütze. Hier wird die Gruppen-KI zuerst dem Scharfschützen ein Script "Suche Schussposition" zuweisen und dem Kundschafter ein Leibwächter-Skript, damit er dem Scharfschützen folgt.
Sobald der Scharfschütze in Position ist kommt das Script "Warte auf Schussgelegenheit" und der Kundschafter fängt an zu laufen. Sieht der Kundschafter ein Ziel, dann schaltet er zurück auf den Scharfschützen, der prüft ob er schießen soll...
Aufwendigere Scripte für große Gruppen wie 6 Soldaten im koordinierten Angriff werden lange auf sich warten lassen und fast nur Map-Spezifisch möglich sein, aber sie können ebenfalls auf diese Art eingebaut werden.
Und da die Gruppen-KI das Einzelscript für einen Alien wechseln kann (auch wenn nur ein Alien in der Gruppe ist), kann man auf diese weise deutlich einfacher und modularer eine Strategie aufbauen, als wenn jeder Alien auf einem Script feststehen würde. Die Gruppen-KI würde nämlich nur festlegen, wann ein bestimmtes Skript (gegebenenfalls mit Zielpunkt) ausgeführt wird, während sich die KI im Einzelscript nur darum kümmern muss, wie dieses spezifische Ziel erreicht wird.
Außerdem kann man die einzelnen Scripte austauschen und so z.B. zwischen verschiedenen Soldatenscripten zufällig oder gezielt wechseln - und z.B. das Leibwächterscript könnte von einem primitiven "bleibe in Umgebung von X und feuere auf Gegner" zu einem aufwendigeren "stelle Dich zwischen X und nächsten Gegner, dann feuere auf Gegner" erweitert werden, ohne irgendwo zu kollidieren.
D.h. diese Gruppen-KI-Ebene ist nicht nur dafür da, um mehrere Aliens koordinieren zu können, sondern auch um die Programmierung verschiedener einfacher KI-Scripte anstelle von einem komplexen Titanen-Script pro Alien zu ermöglichen.
Was die Gleichzeitigkeit und die Rundenunterbrechungen angeht, so hat Jim von mir ein Vorab-Konzept erhalten in dem genau das verbessert wird - zusammen mit den sowieso notwendigen Umstellungen um die KI scriptbar zu machen ist das durchaus möglich.
Bisher habe ich da noch keine Antwort gekriegt das dieses Konzept nicht umsetzbar sei - ich habe aber einige hier erwähnte Punkte noch nicht bedacht gehabt und bin mit einigen Formulierungen noch nicht zufrieden, deshalb werde ich nachher mal eine verbesserte Konzeptversion an ihn schicken. |
|
verfasst am: 25.10.2005, 17:59 · Edited by: DirkF
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
@Natter:
Nein, das wäre eben keine Bedingung.
Wie in meinem Post von 12:43 beschrieben dient die Klassifizierung dazu, damit die KI aus allen verfügbaren Scripten das beste aussuchen kann, und wenn es kein genau passendes gibt werden weniger passende Aliens den Scripten zugeordnet.
Vor allen Dingen können auch mehrere Aliens dasselbe Script in unterschiedlichen Gruppen ausführen, d.h. 9 Aliens können als eine 3er, zwei 2er und zwei 1er-Gruppen Unterwegs sein.
Außerdem kannst Du in meinem gleichzeitig getippten Eintrag auch lesen, dass die Gruppen- und die einzel-KIs auf unterschiedlichen Ebenen arbeiten und Du dementsprechend nur Einzelscripte für die Aktionen brauchst (eine etwas aufwendigere pro Typ und einfachste Nebenbefehle wie Gehe zu X als zeitweise aufgerufene Hilfen) und danach lediglich soviele Gruppenscripte wie Du Spezialtaktiken verwenden willst... |
|
verfasst am: 27.10.2005, 16:29 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Wie in meinem Post von 12:43 beschrieben dient die Klassifizierung dazu, damit die KI aus allen verfügbaren Scripten das beste aussuchen kann, und wenn es kein genau passendes gibt werden weniger passende Aliens den Scripten zugeordnet.
Das hatte ich schon verstanden. Aber wie du selber schon in anderem Zusammenhang gesagt hast, es dürfte sehr schwer sein, per Programmcode festzulegen, welches alternative Gruppenskript am besten passt. Ich glaube ja schon, das es sehr schwer wäre, ein Gruppenskript für 3 Aliens zu erstellen, das relativ intelligent arbeitet. Aber wenn dann nur 2 der 3 Aliens zu dem Skript passen, dürfte das die KI spürbar verschlechtern. Und manchmal könnte es auch zu ernsthaften Problemen kommen, z.B. wenn dann ein Nahkämpfer als Sniper eingeteilt wird. Und wie ich mit meiner Rechnung im vorherigen Post deutlich machen wollte, wird es in der Mehrheit der Fälle kein passendes Gruppenskript geben (außer man beschränkt sich auf Zweiergruppen). Selbst wenn wir 200 verschiedene Dreiergruppenskripte hätten würde das in weniger als 1 von 3 Fällen ein passendes Skript bedeuten. (Ok, vielleicht sind einige Konstellationen wahrscheinlicher als andere, was das Problem zwar abschwächt, aber sicher nicht beseitigt).
Vielleicht könnte man die Gruppenskripte ja für festdefinierte Einsätze verwenden (also für per Skript erzeugte Einsätze mit fester Karte und festen Aliens), während es bei Zufallseinsätzen bei den Einzel-KIs bleibt? |
|
verfasst am: 27.10.2005, 18:26
|
Spielsatz Darkage
Registrierdatum: 01.03.2005, 13:47
Beiträge: 1846
|
Mit anderen Worten: UFO-Abschüsse mit Einzelakteuren, weil noch in Panik, Terrorangriffe, Basen etc. mit vordefinierten (vielen) Gruppen und taktischer Leitung?
(Als Erklärung für die Gamer, wieso die KI unteschiedlich ist :D )
Gibts denn keine Möglichkeit, Einzel- KIs durch Gruppensriot erkennen zu lassen und so die Zufallsaliens als Gruppe an einem Ort (mehrere Gruppen=mehrere Orte) auftauchen zu lassen, und alles, was nicht in zwei, drei Dutzend Gruppenscripts passt, als Einzelkämpfer auf dem Rest der Karte zu verteilen?
So kann dann ein "Bodyguard" script nen Kommandanten (wenn er zufallsgeneriert da ist) zwei Soldaten (mit im editor durch gamesetter festgelegter Soldaten-KI) zuteilen, Gruppe bilden... und der Wissenschftler und der sniper zusammen, und der letzte Soldat macht auf Patroillie in ner anderen Kartenecke. |
|
verfasst am: 27.10.2005, 19:25 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: LennStar was nicht in zwei, drei Dutzend Gruppenscripts passt, als Einzelkämpfer auf dem Rest der Karte zu verteilen?
Hmmm, das wäre auch eine Überlegung wert. Vielleicht könnte man auch den Typ Benutzerdefiniert einführen. Für den muss der Spielsatzersteller ein eigenes KI-Skript erstellen. Außerdem wird er bei den Gruppen-KIs nicht berücksichtigt. Dann könnte man auch getrost die Anzahl der Typen verkleinern.
Zitat: LennStar und so die Zufallsaliens als Gruppe an einem Ort (mehrere Gruppen=mehrere Orte) auftauchen zu lassen,
In dem Zusammenhang müsste man über die Gestalltung der Maps nachdenken. Was in meinen Augen sowieso noch gebraucht wird, ist ein durchnummerieren der Spots, damit man in einem Missionsskript gezielt Aliens plazieren kann. Damit ist aber das Gruppenproblem nicht gelöst. Die Spots können schließlich beliebig auf der Karte verteilt werden, es gibt also keine Garantie, das eine von Anfang an zusamenstehende Gruppe auf einer Zufallskarte realisierbar ist. Aber dafür würde sich sicher eine Lösung finden. |
|
verfasst am: 27.10.2005, 20:12 · Edited by: DirkF
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
@Natter, Lennstar:
Ihr habt mit Euren Punkten komplett recht, aber ich hatte alles schon im Konzept bedacht bevor ich den ersten Post hier machte - und noch eine ganze Reihe weiterer Punkte.
Die Sortierung der Aliens auf Zufallskarten wird dabei genauso berücksichtigt wie gescriptete Missionen, unterschiedliche Siegbedingungen und und und.
Das Problem dieser Diskussion ist hauptsächlich dadurch entstanden, dass ich eine Frage zu einem kleinen Teil des Konzeptes gestellt habe, ohne vorher das gesamte Konzept zu erläutern.
Außerdem lautet dieses Konzept nicht "Entwurf einer KI", sondern "Entwurf und Umsetzung einer Scriptsprache für KI's", sodass später jeder Scripte für die KI entwerfen kann.
Insbesondere wird es möglich sein, dass z.B. fünf Leute fünf verschiedene Soldatenscripte entwerfen, die alle gesammelt werden und so untereinander kompatibel sind, dass die Strategische KI bei jedem Einsatz jedem Soldaten ein anderes dieser Scripte gezielt oder zufällig zuweisen könnte.
Dies ist auch ein weiterer Grund für die Definition der Kampftypen - damit kann dann jeder der 5 Scripter dem Spielsatz sagen, was für ein Verhalten sein Script bei einem Alien auslöst.
Auch die Zuordnung und die Entscheidung ob ein Script zu einem Alien passt oder nicht wird über einen Mechanismus gelöst - ein Nahkämpfer wird kein Sniperscript erhalten etc.
Bitte wartet aber mit weiteren Vermutungen zu der Umsetzung, bis ich das ganze Konzept schriftlich fixiert habe und es auch komplett vorstellen kann - viele der jetzt offenen Fragen werden sich dann automatisch klären.
Das soll aber nicht heißen das die ursprüngliche Fragestellung dieses Threads aufgehoben ist;-)
Wenn noch jemand Ideen zu grundsätzlichen Kampftypen hat, dann soll er sie bitte posten. Einige der hier genannten Typen hatte ich schon übersehen, und es wird deutlich schwerer, wenn fehlende Kampftypen erst nach der Programmierung gefunden und eingebaut werden müssen...
P.S. Lennstar hat mit seinem Post den Nagel ziemlich genau getroffen: Die KI wird schauen, was sie an Aliens hat und dann erst die Gruppen passend auswählen - notfalls als Einzelkämpfer wenn gar nichts passt. Anschließend werden die Aliens nach Gruppen auf den Einzelkacheln der Karte platziert, und bei all dem kann ein in einer Karte integriertes Script das allgemeine Script überlagern und an die Missionskarte anpassen... |
|
verfasst am: 27.10.2005, 20:34 · Edited by: Natter
|
Programmierer, allgemeines
Registrierdatum: 06.06.2004, 17:19
Beiträge: 3186
|
Zitat: DirkF Bitte wartet aber mit weiteren Vermutungen zu der Umsetzung, bis ich das ganze Konzept schriftlich fixiert habe und es auch komplett vorstellen kann - viele der jetzt offenen Fragen werden sich dann automatisch klären.
OK ;D |
Seite: 1 [2] [3] >> |
Du musst dich registrieren um auf dieses Thema zu antworten.
|
|
|