Ich mache ein Spiel vom Typ "Defend Your Castle", bei dem jeder Spieler eine Burg hat und Einheiten schicken muss, um die Burg des Gegners zu zerstören. Es sieht so aus (und ja, das ist das eigentliche Spiel, keine schnelle Malzeichnung ..):
Jetzt versuche ich, die KI des Gegners zu implementieren, und ich möchte 4 verschiedene KI-Stufen erstellen: Einfach, Normal, Schwer und Hardcore. Ich habe noch nie eine "ernsthafte" KI gemacht und möchte dieses Mal eine ziemlich vollständige erstellen.
Meine Idee ist es, die "Kraft" -Score eines Spielers basierend auf der aktuellen Gesundheit seiner Burg und der individuellen "Kraft" -Wertung seiner Einheiten zu berechnen. Dann würde die KI nur versuchen, eine Punktzahl nahe an der des Spielers zu halten ( Easy würde darunter bleiben, Normal würde in der Nähe bleiben und Hard würde versuchen, darüber zu kommen). Aber ich weiß einfach nicht, wie ich den Power Score eines Spielers berechnen soll. Es gibt einfach zu viele Variablen, um sie zu berücksichtigen, und ich weiß nicht, wie ich sie richtig verwenden soll, um eine signifikante Zahl (die Leistungsstufe) zu erstellen.
Könnte mir jemand dabei helfen?
Hier sind die Variablen, die den Power Score eines Spielers beeinflussen sollten:
Aktuelle Burggesundheit, Gesamtgesundheit, Schaden, Geschwindigkeit und Angriffsreichweite der Einheit. Außerdem kann der Spieler Einkommen (Geldbeutel), Schaden (+ Schaden) und Geschwindigkeit (+ Geschwindigkeit) erhöht haben ... Wie könnte ich sie in die Punktzahl aufnehmen?
Ich stecke hier wirklich fest ... Oder gibt es eine andere Möglichkeit, KI für diese Art von Spiel zu implementieren?
Vielen Dank für Ihre wertvolle Zeit.
quelle
Antworten:
Ich bin mir nicht sicher, wie einfach dies zu sagen wäre, aber der Versuch herauszufinden, wie wichtig jede Variable ist, ist wahrscheinlich der Ausgangspunkt (wenn Sie 50 Gesundheit erhalten, können Sie 10 Sekunden länger dauern; wenn Sie 5 Schadenspunkte erhalten, sind Sie es kann 50 Gesundheit 10 Sekunden schneller zerstören; etc ...). Danach könnte es sich lohnen, die Fähigkeiten zu normalisieren (50 Gesundheit entspricht 10 Geschwindigkeit entspricht 100 Einkommen).
Ich stelle mir vor, dass ein einfacher Weg, dies zu finden, darin besteht, nur Simulationen auszuführen. Halten Sie einen Spieler auf einem Level und passen Sie dann die einzelnen Variablen an ihre Skalierung an.
quelle
Zuallererst würde ich kurzfristige Extras wie Einkommen oder Geschwindigkeitsverbesserungen nicht berücksichtigen - ich denke, die Spieler erwarten, dass diese Dinge ihnen für eine Weile helfen, nicht dass sich die KI sofort anpasst und auch stärker wird.
Und im Übrigen: probieren Sie es aus. Beginnen Sie mit einer Potenzformel, die Ihnen vernünftig erscheint (die Antwort von nimbus57 sollte ein guter Ausgangspunkt sein), und entwickeln Sie dann Ihre Formel und die KI iterativ.
Zu guter Letzt sollten Sie sicherstellen, dass die zugrunde liegende Formel vom Spieler nicht ausgenutzt werden kann, um unfaire Vorteile usw. zu erzielen. Es sollte auch nicht zu offensichtlich sein, wie es funktioniert. Ziehen Sie also ein wenig Zufälligkeit ein.
quelle