Ahoi,
Ich überlege gerade, wie ich am sinnvollsten eine größere Menschenmasse in Echtzeit simulieren kann. Es handelt sich um zwei Armeen, die computergesteuert sind. Die Einheiten bewegen und kämpfen eigenständig. Der Spieler kann seine Armee nur indirekt beeinflussen, z.B. kann er ein Hauptquartier bauen, das umliegenden Einheiten einen Verteidigungs- und Angriffbonus bringt, oder er kann Sanitäter ausbilden, die Einheiten heilen. Abgesehen von einer Handvoll Offiziere, die Befehle an benachbarte Soldaten/Einheiten geben, kann er keine eigenen Truppen steuern. Der Spieler erhält anfangs nur wenige Soldaten, in höheren Leveln sollen aber mehrere Tausend verfügbar sein.
Aufgrund der Menge der zu verarbeitenden Daten überlege ich, ob es Sinn macht, die Soldaten jeweils einzeln zu berechnen, oder als Einheit von jeweils 8-25 Mann. Ersteres wäre mir am liebsten, aber ich sehe die Gefahr der Datenexplosion, die das Spiel zu langsam macht (gerade auf älteren Rechnern oder Netbooks).
Als Werte, die jeder Soldat hat, dachte ich an Folgendes: Angriff und Verteidigung (zwei Basiswerte plus Boni und Mali), Moral, Gesundheit, Wut (erhöht die Gefahr, dass Befehle missachtet werden), Deckung, Rüstung, Erfahrungslevel (Boni auf alle Werte), Art und Reichweite der Waffe, Sichtweite und Präzision. Soldaten können kriechen (oder, im Bundeswehrslang, gleiten
), geduckt laufen, gehen und rennen.
Mit der Programmierung bin ich noch lange nicht so weit, darum ist die Frage rein hypothetisch.
Wie würdet ihr die Sache angehen? Habt ihr Tipps und Tricks parat? Wie ist euer Ansatz bei der Generierung massenhafter KI?