Hi *,
ich bin ein Retro-Spieler und Hobby-Programmierer und entwickle gerade ein einfaches Atari-Spiel. Die Programmiersprache ist der C-Crosscompiler CC65 (Ansi-C / C89).
Dabei wollte ich mich der Frage stellen, wie man eine simple Spielgegner-Logik programmiert. Was mir anfangs einfach erschien, wirkt nun auf mich immer schwieriger.
Zum dem Spiel eine kurze Erklärung. Es geht darum, dass ein Hamster (AI) im unteren Bildschirmrand sich über 6 Gänge nach oben gräbt und dem Gärtner (Spieler) seine Karotten klauen will. Der Hamster soll dabei hin- und herlaufen und auch mal "Angriffe" andeuten, also gelegentlich einen Rückzieher macht. Erwischt ihn der Gärtner beim vorbeilaufen mit seiner Schaufel, verliert der Gopher ein Leben und es gibt Punkte. Gibt es keine Karotten mehr, dann ist das Spiel zu Ende. Der Gärtner kann auch mit seinem Gerät die Gänge wieder "zu buddeln".
Das Spiel-Prinzip ist also ganz einfach. Aber ich weiß trotzdem nicht so recht, wie ich nun eine AI aufbaue die dann dem Hamster "Actions" (links, rechts, hoch, runter) anweist.
Könnt ihr mich mal in eine Richtung schubsen, wie man sowas üblicherweise macht?
Welche Reihenfolge / Faktenchecks / Zufälle würde man hier konstruieren?
Der Atari-Computer ist natürlich keine besonders komplexe AI/Deep Learning Platform
Aber einige Grundprinzipien lassen sich doch bestimmt auch mit einfachen C-Programmiermitteln ableiten oder?
Bin für jede Idee dankbar.
\thomas