Zum Ziel bewegen

Krypthor

Aktives Mitglied
Hi,

ich bin dabei ein kleines Strategiespiel zu entwickeln und jetzt hab ich mich gefragt wie man
eine Armee zu einem Zielpunkt bewegt.
Dabei ist das Fadenkreuz der "Spieler" und wenn man auf einem bestimmten Feld eine Taste drückt, soll sich die Armee (oder was anderes) zum Fadenkreuz bewegen, wie eine Schachfigur.
Ich weis leider nicht wie man das so macht, dass sich die Armee Feld für Feld bewegt und auch Hindernisse umgeht.

Kann mir vielleicht jemand einen Tipp geben?

Vielen Dank schonmal für Hilfe,
Krypthor
 

Apo

Bekanntes Mitglied
Ist ein weites Feld ...

Wie hast du das Spielfeld bis jetzt abgespeichert? Kannst du es in ein Graphen umwandeln? hast du ein 2dimensionales Feld?
Auf jeden Fall die Keywords die du brauchen könntest ist entweder Dijkstra, mein Liebling A* oder best first search oder oder oder =)
 
S

schmitzi9000

Gast
Ich nehme mal an, es geht um ein Realtime Game?
Bei kleineren tilebasierten Maps in einer 2D Umgebung leistet der gute alte A* immer noch brauchbare Ergebnisse. A* skaliert aber schlecht und verbraucht schnell viel Speicher und Performance.
Werden die Maps größer kannst du dir mal hierarchisches Pathfinding anschauen - Tiles werden zu Clustern zusammengefasst über die dann wieder der normale A* läuft.
In einer 3D Umgebung lautet das Stichwort Navigation meshes.

Bei dynamischen Echtzeitkollisionen wird es komplizierter. Da brauchst du Strategien, wie sich Einheiten verhalten sollen, wenn sie sich gegenseitig blockieren.
 

Krypthor

Aktives Mitglied
Das Spiel ist 2D und hat nur 10*10 Felder. Ist auch eher zum ausprobieren gedacht.
Das Prinzip soll so ähnlich funktionieren wie bei Warcraft.
Und was ihr mir geschickt habt sieht noch recht komplitziert aus, gibt es da vielleicht eine einfachere Methode die auch eher für Anfänger geignet ist? Z.B. das, wenn die Armee auf ein Hidnerniss stößt, sie sich um 90° nach rects dreht und dann versucht ein Feld weiter zu rücken, wenn das nicht klappt noch mal 90° usw., bis es irgendwann funktioniert?!
 
Zuletzt bearbeitet:

Krypthor

Aktives Mitglied
Ich hab mal ausprobiert es so zu machen :
Java:
			if(laufen == true){
				if(pp1 != p1){
					if(pp1 > p1){
						pp1 = pp1 - 1;
					}else if(pp1 < p1){
						pp1 = pp1 + 1;
					}
				}
				if(pp2 != p2){
					if(pp2 > p2){
						pp2 = pp2 - 1;
					}else if(pp2 < p2){
						pp2 = pp2 + 1;
					}
				}
				if(pp1 == p1 && pp2 == p2){
					laufen = false;
				}
			}
Da wird abgefragt ob eine Taste fürs laufen gedrückt wurde, und wenn ja, dann wird immer geguckt ob die Koordinaten der Armee (pp1, pp2) gleich dem Spieler(p1, p2) sind.
Das Problem da ist, dass sobald die Armee noch über alle Hindernisse läuft, und auch noch dem Fadenkreuz hinterherläuft, wenn dieses nach Tastendruck noch bewegt wird.
Kann man das nicht auch noch mit if-else Bedingungen festlegen?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Der Weg zum Ziel Spiele- und Multimedia-Programmierung 12
Z Schach Figuren bewegen Spiele- und Multimedia-Programmierung 4
B Spieler auf besonderer Bahn bewegen Spiele- und Multimedia-Programmierung 1
M Minecraft Spieler move/run (bewegen) Spiele- und Multimedia-Programmierung 0
D Java Bild bewegen funktioniert nicht Spiele- und Multimedia-Programmierung 8
A Spiel Figur ansprechen und bewegen Spiele- und Multimedia-Programmierung 3
G Auf einem Stick bewegen Spiele- und Multimedia-Programmierung 5
astro151 JButtons mit Mausklicks bewegen Spiele- und Multimedia-Programmierung 2
M bewegen eines Objektes Spiele- und Multimedia-Programmierung 2
L JavaFX Objekte bewegen Spiele- und Multimedia-Programmierung 3
M Kamera "am Rande einer Kugel bewegen" Spiele- und Multimedia-Programmierung 4
O Fehler bei Programmierung lässt Figur nicht bewegen Spiele- und Multimedia-Programmierung 5
javampir Lange Hintergrundgrafik einfügen und bewegen Spiele- und Multimedia-Programmierung 3
D Problem beim bewegen einer Figur Spiele- und Multimedia-Programmierung 2
R Canvas Circle bewegen? Spiele- und Multimedia-Programmierung 14
K auf Mapraster frei bewegen Spiele- und Multimedia-Programmierung 7
T Android OpenGL Bewegen Spiele- und Multimedia-Programmierung 5
Helgon Große Welt bewegen? Spiele- und Multimedia-Programmierung 15
A Wie wird die Person im Game animiert, dass sie ihre Körperteile bewegen? Spiele- und Multimedia-Programmierung 3
G 2D Welt bewegen Spiele- und Multimedia-Programmierung 20
V Jogl: Objekt trotz Rotation immer in gleiche Richtung bewegen Spiele- und Multimedia-Programmierung 5
M Figur bewegen Spiele- und Multimedia-Programmierung 7
F RPG - Spielfigur soll sich nicht frei bewegen können. Anregugen wären gerne gesehen^^ Spiele- und Multimedia-Programmierung 13
N Objekt entgegengesetzt bewegen Spiele- und Multimedia-Programmierung 8
D Sprite zur Maus bewegen Spiele- und Multimedia-Programmierung 9
S Mehrere Steine gleichzeitig setzen und bewegen Spiele- und Multimedia-Programmierung 4
V Java3D: automatisches Bewegen der Kamera Spiele- und Multimedia-Programmierung 19
2 Kugel bewegen? Spiele- und Multimedia-Programmierung 17
L Figur soll sich selbständig Bewegen Spiele- und Multimedia-Programmierung 12
G Zeichnung mit der Maus bewegen Spiele- und Multimedia-Programmierung 3
R Teilgraphen bewegen Spiele- und Multimedia-Programmierung 5
H mit Java2D Markierung über JTable zeichnen und diese bewegen Spiele- und Multimedia-Programmierung 2
A Bilder bewegen Spiele- und Multimedia-Programmierung 2
Z Obejkt drehen & vorwärts bewegen Spiele- und Multimedia-Programmierung 9
D nicht 4-eckiges bild auf Hintergrund bewegen Spiele- und Multimedia-Programmierung 2
G Bewegen von Objekten Spiele- und Multimedia-Programmierung 4
B Hilfe gesucht!! (bewegen von grafischen Objekten) Spiele- und Multimedia-Programmierung 3

Ähnliche Java Themen

Neue Themen


Oben