Erstens ist dies KI für PacMan und nicht für die Geister .
Ich schreibe ein Android-Live-Wallpaper, das PacMan um Ihre Icons herum spielt. Es unterstützt zwar Benutzervorschläge durch Berührungen des Bildschirms, aber der Großteil des Spiels wird von einer KI gespielt. Ich bin zu 99 % mit der Programmierung des Spiels fertig, aber die KI für PacMan selbst ist noch extrem schwach. Ich suche Hilfe bei der Entwicklung einer guten KI für die Bestimmung von PacMan's nächster Bewegungsrichtung.
Mein ursprünglicher Plan war folgender:
-
Initialisieren Sie einen Punktezähler für jede Richtung mit einem Wert von Null.
-
Beginnen Sie an der aktuellen Position und verwenden Sie ein BFS, um die vier möglichen Ausgangsrichtungen zu durchlaufen, indem Sie sie der Warteschlange hinzufügen.
-
Nehmen Sie ein Element aus der Warteschlange, stellen Sie sicher, dass es nicht bereits "gesehen" wurde, stellen Sie sicher, dass es sich um eine gültige Brettposition handelt, und fügen Sie der entsprechenden anfänglichen Richtungsbewertung einen Wert für die aktuelle Zelle hinzu, der darauf basiert:
- Hat einen Punkt: plus 10
- Hat eine Steigerung der Leistung: plus 50
- Hat eine Frucht: plus Fruchtwert (variiert je nach Stufe)
- Hat einen Geist, der sich auf PacMan zubewegt: 200 abziehen
- Hat einen Geist, der sich von PacMan entfernt: nichts tun
- Hat einen senkrecht laufenden Geist: 50 % abziehen
- Multiplizieren Sie den Wert der Zelle mit einem Prozentsatz, der von der Anzahl der Schritte bis zur Zelle abhängt. Je mehr Schritte von der Ausgangsrichtung entfernt sind, desto näher liegt der Wert der Zelle bei Null.
und reihen Sie die drei möglichen Richtungen von der aktuellen Zelle aus ein.
-
Sobald die Warteschlange leer ist, suchen Sie die höchste Punktzahl für jede der vier möglichen Ausgangsrichtungen und wählen diese aus.
Auf dem Papier hörte sich das für mich gut an, aber die Geister umgeben PacMan extrem schnell und er zuckt in denselben zwei oder drei Zellen hin und her, bis ihn einer erreicht. Auch das Anpassen der Werte für die Geisterpräsenz hilft nicht. Mein nächster Punkt BFS schafft es zumindest auf Level 2 oder 3, bevor das Spiel endet.
Ich bin auf der Suche nach Code, Gedanken und/oder Links zu Ressourcen für die Entwicklung einer richtigen KI - vorzugsweise die ersten beiden. Ich möchte das Projekt an diesem Wochenende auf den Markt bringen, also bin ich etwas in Eile. Jede Hilfe ist sehr willkommen.
Zu Ihrer Information: Dieser Beitrag wurde manuell auf GameDev.StackExchange