Die kleine KI http://www.python-forum.de/viewtopic.php?f=1&t=25949 sucht schon mal, nur dynamische Objekte rammt sie noch gandenlos. Auch beim Raster gibt es noch ein paar Schwierigkeiten. Nichst desto trotz kann man sie schon schön beobachten.
Wer Verbesserungs-Vorschläge hat, vorallem was den Quellcode betrifft, dann her damit.
snake mit pygame
KI verbessert, noch lange nicht gut oder sogar perfekt, aber immerhin.
Seht euch es mal an, man kann jetzt schön 2 KIs gegeneinander, ähm, schlängeln sehen. In der config.py können auch mehr eingestellt werden.
Problemzone 1 ist vorallem Ecken wo sie eine knappe 180° Kurve hinlegen, dort kommt es häufiger dazu das die andere Schlange diese nicht richtig erkennt. Problemzone 2 noch fehlende Logik, momentan reine Fressmachinen, also immer hinter dem nächst liegenden Futter hinterher, egal ob es ein Selbstmord durch einrollen kommt oder nicht. Problemzone 3 bisher funktioniert die KI nur im GLOBE-Modus, da sie gerne mal mit den Seiten kollidiert.
Wer selbst Fehler finden will, sollte in der config.py die Variable DEBUG auf True setzen, dann sieht man die Kollisionspunkte im Spie, zudem den Radius zum Futter finden, das Ziel und den Pfad zum Ziel der Schlange.
Seht euch es mal an, man kann jetzt schön 2 KIs gegeneinander, ähm, schlängeln sehen. In der config.py können auch mehr eingestellt werden.
Problemzone 1 ist vorallem Ecken wo sie eine knappe 180° Kurve hinlegen, dort kommt es häufiger dazu das die andere Schlange diese nicht richtig erkennt. Problemzone 2 noch fehlende Logik, momentan reine Fressmachinen, also immer hinter dem nächst liegenden Futter hinterher, egal ob es ein Selbstmord durch einrollen kommt oder nicht. Problemzone 3 bisher funktioniert die KI nur im GLOBE-Modus, da sie gerne mal mit den Seiten kollidiert.
Wer selbst Fehler finden will, sollte in der config.py die Variable DEBUG auf True setzen, dann sieht man die Kollisionspunkte im Spie, zudem den Radius zum Futter finden, das Ziel und den Pfad zum Ziel der Schlange.
So, jetzt ist ein kleines noch nicht viel bewirkendes "ocempgui" Menü dazu gekommen.
Weiterhin habe ich beim Pfadfinden die Listen durch Wörterbücher eingetauscht, da ich die Indizies nicht zwangsläufig benötige und mehrere "in" Abfragen drin sind geht das ganze nochmal ein wenig schneller. Und die config habe ich geändert, da ich diese später über das Menü verändern möchte und das mit "Konstanten" schlecht geht, zusätzlich brauche ich ja nur eine einzige Konfiguration, also habe ich ein Borg-Patter dafür genommen.
Weiterhin habe ich beim Pfadfinden die Listen durch Wörterbücher eingetauscht, da ich die Indizies nicht zwangsläufig benötige und mehrere "in" Abfragen drin sind geht das ganze nochmal ein wenig schneller. Und die config habe ich geändert, da ich diese später über das Menü verändern möchte und das mit "Konstanten" schlecht geht, zusätzlich brauche ich ja nur eine einzige Konfiguration, also habe ich ein Borg-Patter dafür genommen.