Gegner Programmieren

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

bruce185

Betreff: Gegner Programmieren

BeitragSa, Jul 30, 2005 18:33
Antworten mit Zitat
Benutzer-Profile anzeigen
hi,
ich habe eine Tilemap erstellt, nun möchte ich das dort sich auch gegner
bewegen, und zwar möchte ich das mit Typen machen, nur weiss ich nicht so recht wie das mit typen funktioniert, könnt ihr mir vieleicht ein tip geben was ich schreiben muss, bei typen, die Kollisionsabfrage kann ich allein, ich weiss nur nicht wie ich ein gegner auf einer Tilemap laufen lassen kann, ich würde das gern mit Typen machen, also ich bin euch sehr dankbar wenn ihr mir weiter helfen könnt, danke schonmal Laughing

bruce185

bruce185

BeitragSa, Jul 30, 2005 20:37
Antworten mit Zitat
Benutzer-Profile anzeigen
sorry, ich bin gerade dabei ein Pac Man Spiel zu proggen, und ich wollte das so machen das der Gegner den Spielfigur verfolgt, muss ich die For Next schleife benutzen, oder kann man das auch anders erledigen, für jede Hilfe bin ich euch sehr dankbar Crying or Very sad

bruce185

DA

BeitragSa, Jul 30, 2005 20:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Moin,

Wenn ein Gegner den Spieler verfolgen soll, dann brauchst du ja nur die Koordinaten der beiden Spieler. Wenn du die hast, kannst du ja in jedem Schleifendurchlauf testen ob der Gegner von dem Spieler entfernt ist. Wenn ja, rechnest du ihm ein bischen dazu zu seinen Koordinaten in richtung des Spielers.
Hier mal ein Beispielcode:

BlitzBasic: [AUSKLAPPEN]

If Spielerx > Gegnerx Then
Gegnerx = Gernerx + 3
EndIf

If Spielery > Gegnery Then
Gegnery = Gegnery + 3
EndIf

If Spielerx < Gegnerx Then
Gegnerx = Gegnerx - 3
EndIf

If Spielery < Gegnery Then
Gegnery = Gegnery - 3
EndIf


so müsste es klappen. Wink

Mfg
Deutscher Blitz Basic Chat

garret

Betreff: Mein Senf

BeitragSo, Jul 31, 2005 13:17
Antworten mit Zitat
Benutzer-Profile anzeigen
DA: Deine Lösung klappt aber nicht wirklich.
Was ist, wenn sich Spieler und Gegner zwar auf gleicher Höhe befinden, aber eine Mauer zwischen beiden ist?
Außerdem könnte ich mir vorstellen, dass die Gegnerfigur, sobald sie (sagen wir mit der y-Koordinate) auf fast gleicher Höhe mit dem Spieler ist, hin und her "zuckt", da sie bei ihrem nächsten Schritt (da sie nicht auf gleicher Höhe ist) dies zu korrigieren versucht, dabei aber noch mehr vom Weg abkommt.
Aber ich denke, deines sollte nur ein Beispiel sein Wink
Die Koordinaten der Gegnerfigur anhand der Koordinaten des Spielers (oder der eines Balles) zu bestimmen klappt sicherlich nur bei Spielen wie Pong Wink

Bruce: Vielleicht solltest du dir mal auf blitzbase.de das Pathfinding-Tutorial ansehen. Es ist wirklich sehr nützlich!
>>nec aspera terrent<< (Auch Widerwärtigkeiten schrecken nicht)

wunderkind

BeitragSo, Jul 31, 2005 20:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Der Link zum Pathfinding-Tutorial auf blitzbase.de lautet:

http://www.blitzbase.de/artikel/path_1.htm


Viele Grüße
Dein Blitzforum.de Service Team

diceman

Betreff: Re: Mein Senf

BeitragMo, Aug 01, 2005 0:59
Antworten mit Zitat
Benutzer-Profile anzeigen
garret hat Folgendes geschrieben:
Außerdem könnte ich mir vorstellen, dass die Gegnerfigur, sobald sie (sagen wir mit der y-Koordinate) auf fast gleicher Höhe mit dem Spieler ist, hin und her "zuckt", da sie bei ihrem nächsten Schritt (da sie nicht auf gleicher Höhe ist) dies zu korrigieren versucht, dabei aber noch mehr vom Weg abkommt.


Man kann ja auch eine +/- Toleranz einbauen, ab wann der Gegner "zufirieden" mit seiner Position ist. Weiterhin ist es möglich, daß der Gegner sich erst nach einer Verzögerung bewegt, und zwar zu dem Punkt, den er zu diesem Zeitpunkt ins Visier nimmt. Wenn er dort ankommt, visiert er wieder den Gegner an und bewegt sich dann dahin. Dann hat man einen flüssigeren Ablauf und kein "zucken". Die Verzöger und und die Abweichung von der Zielkoordinate kann man ja auch mit einem Rand() variieren um ein dynamischeres Verhalten vorzutäuschen. Habe auch gerade erst mit dem Programmieren angefangen, aber von der Theorie her müßte das doch klappen.
 

Dödel

BeitragMo, Aug 01, 2005 19:01
Antworten mit Zitat
Benutzer-Profile anzeigen
PacMan funktioniert allerdings tatsächlich so, dass er versucht, deine Koordinaten anzunehmen. Was geht, wäre z.B., ihn in x Richtung laufen zu lassen, obwohl er dort die richtige Koordinate erreicht hatt, wenn es in y Richtung nicht mehr funktioniert.

ZU den Types:
Lies dir doch bitte einfach mal das Tutorial auf der Robsite dazu durch...
Außerdem halte ich einen Teil (ich wollte erst die meisten sagen Rolling Eyes ) der Blitzforum Community für sehr Kompetent. Die werden auch nach dem ersten Mal "Ich will das mit Types(!) machen" verstanden haben, was dein Ziel ist. Du musst das nicht 5 Mal wiederholen XD

mfg
Dödel

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group