Re(4): Spieleprogrammierung - Tipps gesucht.
Geizhals » Forum » Programmierung » Spieleprogrammierung - Tipps gesucht. (25 Beiträge, 1264 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
....
Re(4): Spieleprogrammierung - Tipps gesucht.
09.08.2011, 17:24:52
Eines gibt es, was mich an dem ganzen aber noch immer irrsinnig stört...

Ich mein, kleine Spielchen für mich habe ich ja schon öfters mal gebastelt...
Schach, Dame, Othello, ...

Da war es im Prinzip zumindest von der Idee simpel:

Phase 1: Bewertungsfunktion bauen.
Ausgabe zB ein signed int. Bei 0 ist die Stellung ausgeglichen, bei -32000 super für den Gegner, bei +32000 super für dich.

Phase 2: Zuggenerator bauen, der alle möglichen Züge (und Gegenzüge) emittiert
[simpelst]

Phase 3: MinMax implementieren (simpelst, wenn 1 und 2 stehen). Du nimmst an, dass dein Gegner immer am stärksten spielt. Du berechnest für jeden deiner Züge alle seine Gegenzüge, dann wieder all deine, ... und merkst Dir immer, wie die Bewertung nach seinem stärksten Gegenzug aussieht.... Also das Minimum der Bewertungsfunktion. Dann nimmst das Maximum all deiner Züge - und hast den stärksten möglichen Zug für Dich, wenn er am stärksten spielt. [simpelste Rekursion wenn 1 und 2 fertig]

Phase 4: Auf DoppelPi-Strategie wechseln (so nannte man das zumindest um 1980):
ein paar Halbzüge "Bruteforcen" mit MinMax - und dann nur noch bei den interessanten Möglichkeiten in die Tiefe rechnen.... Oft mit genetischen Algos.
[ hier ist nur das Erkennen der "interessanten" Züge schwer... Oft die, wo viel Sprünge in der Bewertungsfunktion  sind ]

Phase 5: Profit |-D.

Im Endeffekt war nur (1) schwierig - da konnte man aber simpel beginnen und später nachtunen. Im Endeffekt würde ich diesen "klassischen" Ansatz für Strategiespiele echt bevorzugen.

Mein Problem ist, dass ich mir eine Bewertungsfunktion mit "Nebel des Krieges" und "Bauen" sauschwer aus den Fingern saugen kann... Ausser man implementiert ein "Wahrscheinlichkeit, welche Truppe des Gegners wo steht"..

Waypoints mag ich nicht, weil ein User schnell eine neue Karte in einem Editor anlegen können soll, ohne was über die KI wissen zu müssen.

Antworten PM Alle Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung