Einen schönen Tag wünsche ich.
Ich habe folgendes Problem. Ich möchte gerne ein PacMan Spiel schreiben. Um eine Sprache zu lernen. Das klappt auch alles soweit ganz gut. Das Problem ist das ich nicht weiß, wie ich die Geister bewegen lassen soll, das sie für PacMan ein Hinderniss darstellen bzw. für den Spieler eine Herausforderung.
Der erste Gedanke war eine einfache Zufallsroutine.
Idee, der PC würfelt mit einem W4 Würfel.Für jeden dieser 4 möglichen Würfe fibt es eine Richtung die der Geist sich bewegen kann. Das Ergebniss war leider sehr enttäuschend (wenn auch verständlich) Meine Geister bewegen sich nicht.
Zuckeln eigendlich mehr auf der Stelle.
Eine feste Route macht keinen Sinn. Das könnte ich machen. Jedem Geist eine Route vorgeben. Aber dann sind die Geister ja sehr berechenbar. Einen Verfolgermodus hatte ich auch schon. Der klappt sogar sehr gut. Macht das Spiel aber unspielbar. Was würdet ihr mir raten. Bestimmt ist das gar nicht so schwer die Lösung und ich stehe nur auf meinem Datenkabel. Vielleicht kann mir ja jemand bitte helfen.
Liebe Grüße,
Mathias
Einen schönen Tag wünsche ich.
Ebenso!
Vorschläge:
-
Nicht bei jedem Schritt die Richtung würfeln, sondern immer nur dann, wenn der Geist an einer Kreuzung steht. (ggf. dann die Richtung „zurück“ nicht akzeptieren)
-
Bei jedem Schritt ein W100-(oder Wn-)Würfel werfen. Wenn das Ergebnis eine Eins ist, dann (und nur dann) mal den Richtungswürfel werfen und ggf. eine andere Richtung wählen.
-
Die Seiten des Würfels anpassen an die relative Position zum PacMan, so dass Richtungen wahrscheinlicher werden, welche den Geist in Richtung PacMan bewegen.
VG
Jochen
Vielen Dank für Deine Hilfe. Das werde ich alles auf jeden Fall
mal probieren.
- Ich hatte so eine ähnliche Idee, hatte aber nicht die Kreuzungen genommen, sondern die Abfrage so gemacht, das sobald ein Geist auf ein Hinderniss stösst (Wand) eine neue Zufallsabfrage erfolgt. Das hatte aber auch einen Nachteil, den Du Dir sicher denken kannst.
- Hat vielleicht den Nachteil, das wenn ein Hinderniss auftaucht,
der Geist daran eine Weile hängen bleibt. (möglicher weise).
Hat aber auf jeden Fall wieder den Vorteil das die Bewegung eines Geistes nicht so sehr vorhersehbar ist, wie es bei 1 der Fall sein könnte.
3.Punkt 3 verstehe ich leider nicht ganz. Also ein Verfolgungsmodus, wie ich ihn mal dachte ist das ja nicht.
So wie ich das jetzt verstehe, werde ich wohl eine Kombination aus 1 und 2 vielleicht auch 3 brauchen.
Ich werde das alles mal probieren und dann auf jeden Fall mitteilen, wie es geklappt hat.
Liebe Grüße
Mathias
Moien
3.Punkt 3 verstehe ich leider nicht ganz. Also ein
Verfolgungsmodus, wie ich ihn mal dachte ist das ja nicht.
Man gibt den 4 möglichen Entscheidungen unterschiedliche Gewichte: Normalerweise hast du bei einem W4 zu 25% links, 25% rechts, 25% oben, 25% unten. Bei einer Gewichtung werden die Wahrscheinlichkeiten angepast: wenn der PacMan z.B. „links“ steht kommt mit jeweils 20% Wahrscheinlichkeit rechts, oben oder unten und mit 40% Wahrscheinlichkeit links.
D.h. der Benutzer hat öfter mal Pech, aber eben nicht immer. Kombiniert mit Punkt 2 (Richtungsänderungen nicht bei jedem Schritt, nur bei W100 = 1 oder einem Hinderniss im Weg) sieht sowas recht gut aus. Und man kann die Gewichtung benutzen um das Spiel schwerer zu machen: man braucht nur einen Bewegungs-Code und bekommt die Schwierigkeit über eine Anpassung der Gewichte „gratis“ dazu.
Es gibt noch einen Punkt 4: check auf Sichtbarkeit. Wen der PacMan für den Geist sichtbar ist steuert er auf den PacMan zu und läuft ihm … XY Schritte nach. Danach geht der Geist wieder zufällig vor.
cu