Autor Thema: Wegfindung und "ebene" Maps  (Gelesen 16072 mal)

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Wegfindung und "ebene" Maps
« am: 2009-09-30, 20:58:04 »
Warzone Version 2.2.0
Computer: zu gut für dieses Spiel XD
3GHz dualcore
4GB RAM (3 genutzt @ windoof)
Gforce 9800 512mB DDR3

Also ich spiele gerade skirmish gegen 7 KIs und mir ist da ein äußerst nerviger Fehler im Spiel aufgefallen, den es so zwar schon früher gab, aber wohl eher auf extremst verschachtelten Maps und unter der Bedingung, dass viele Einheiten involviert sind.
Es geht um die Wegfindung.
Also ernsthaft, was haben die da zusammenprogrammiert, dass die Einheiten es nichtmal schaffen eine gerade Linie zu fahren?
Ich bin auf der Map "Ziggurath" unterwegs, also diese Hindernisslose Ebene mit den erhöhten Startpositionen und dem Krater in der Mitte.
Krankerweise braucht es zwischen "Einheit irgendwo hin schicken" und der tatsächlichen Bewegung der Einheit in die grobe Richtung des anvisierten Kartenpunktes irgendwas zwischen 4 und 10 Sekunden.
Ich wähle die Einheit an, schicke sie irgendwo auf der Map hin (und wenn es nur 2cm entfernt sei) und die Einheit ... tut erstmal <gar nichts>. So nach schätzungsweise 5 Sekunden reglosen dastehens (Bei cyborgs bewegen sich die Beine, ohne dass was anderes passiert), fängt die Einheit an sich endlich zu bewegen.

Das ist besonders nervig bei LKWs, die hinter einer etwas größeren Befestigungsanlage stehen, welche angegriffen wird aber noch zu weit weg ist um sie direkt zu reparieren. Dann stehen die LKWs die besagten 5s dumm da und fangen dann erst an sich zu dem beschädigten Gebäude zu bewegen.
Gleiches gilt für Reparaturanweisungen, Angriffszuweisungen usw usf. Also allem, was mit Bewegung zu tun hat (außer schießen, dass tun sie alle immer und gut, wenn es die Reichweite hergibt).

Ich weiß auch nicht das ich was verstellt hätte.
Bei dem Spiel davor auf SandCastles ging alles einwandfrei und in der Kampagne ebenso.
Irgendwie ... ist das merkwürdig O.o" Und extrems nervig.

PS Spielneustart hilft au nicht :p
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.

Omikronman

  • Gast
Re: Wegfindung und "ebene" Maps
« Antwort #1 am: 2009-10-01, 12:45:32 »
Das Problem kenne ich auch zu gut, habe es aber jetzt schon länger nicht mehr gehabt. Ich meine mich auch schwach zu erinnern, daß die Wegfindung irgendwann etwas verbessert wurde und Warzone auch mehrere Threads unterstützt. Jedenfalls klemmen die Einheiten hier schon lange nicht mehr, früher passierte mir das aber auch regelmäßig.

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Re: Wegfindung und "ebene" Maps
« Antwort #2 am: 2009-10-01, 17:02:30 »
Wie gesagt, ich spiele Version 2.2.0 (aktuell: 2.2.3)
Also nicht soooooo alt. Testweise hab ich mal die Map "HidNsneak" gespielt, und da klappt die wegfindung ohne diese zeitverzögerung
(Die einheiten zucken auf ihrem weg durch die 3 kästchenbreiten wege trotzdem hin und her als würden sie S Linien fahren wollen)
Ich vermute das liegt damit zusammen, (wurde im changelog so beschrieben) dass die einheiten nach "gateways" - also toren suchen um einen weg zu berechnen. auf verschachtelten maps gibts mehrere tore die auch einfach logisch hintereinander kombiniert werden können um zu einem ziel zu gelangen. Auf großen ebenen flächen gibt es vermutlich keine tore und da sucht sich die engine erstmal tot und berechnet Käse.
ist jetzt nur eine Vermutung - ich hab prinzipiell erstmal keine Ahnung wie das System vom Grund her funktioniert ;) Ich schlussfolgere das jetzt nur mal aus der Beschreibung des Changelogs.
Trotzdem ist das irgendwie sehr sehr seltsam, dass die Einheiten ja 5s brauchen um den Weg zu einem Punkt zu berechnen, der vllt nur 2~3 cm aufm bildschirm von ihnen weg ist.
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.

Offline Vael

  • Anfänger
  • Beiträge: 1
Re: Wegfindung und "ebene" Maps
« Antwort #3 am: 2009-10-01, 17:33:29 »
Hrm, ich spiele derzeit 2.2.3 und auch dort ist die Wegfindung ein wenig suboptimal. Aber das bin ich ja vom Original her ja auch gewohnt. Was mich annervt ist, sind jene Einheiten welche einen Rückzugsbefehlt haben bei schwerer Beschädigung. Bleiben die irgendwo hängen, löscht sich der Befehl selbständig und die Einheiten greifen wieder in die Schlacht ein, was meist mit dem Verlust der Einheit endet.

Omikronman

  • Gast
Re: Wegfindung und "ebene" Maps
« Antwort #4 am: 2009-10-01, 19:29:24 »
Daß die Einheiten nicht schnurgerade fahren sondern immer so in Wellenlinien war schon immer so, und ich fand das auch immer sehr schön, es wirkt so unmechanisch, fast schon menschlich, also von der Art der Bewegung her. Dadurch wirkt das ganze auch viel dynamischer als das roboterartige Schnurgeradeausfahren und sich langsam auf der Stelle um die eigene Achse drehen, wie es etwa die Einheiten in Thandor machen. Und ehrlich, bei mir fahren die Einheiten immer sofort los. O.o

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Re: Wegfindung und "ebene" Maps
« Antwort #5 am: 2009-10-01, 19:36:10 »
Mh die Map auf der ich spiele scheint auch ein wenig zu ruckeln.
Ich habe keine Ahnung warum. Auf anderen Maps funktioniert es ja auch, sowie Kampagne.
Und das schlangenlinienfahren der Einheiten ist ... käsig. Ich meine, wenn du in nen echten Panzer sitzt dann ist es dir auch lieber schnurgrade zu fahren und wenn du dich drehen willst machst du das auch auf der Stelle (zumindest mit Ketten). Es geht einfach schneller und im Krieg denkst du wirtschaftlich. (Verreissen des Lenkmechanismus bzw. der Kettensteuerung durch Bodenunebenheiten mal außen vor^^). Meines erachtens haben sie früher nur dann so verrissen, wenn es darum ging einer anderen Einheit auszuweichen, was heutzutage auch nicht wirklich optimal klappt. Das gehört aber nicht hier her.
Käsiges Steuersystem :D Und nein, ich kanns selbst nich besser. Bin programmiertechnischer Nup und chronischer Nörgler *unschuldig pfeif*
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.

Omikronman

  • Gast
Re: Wegfindung und "ebene" Maps
« Antwort #6 am: 2009-10-01, 19:53:40 »
Dann spiel mal Thandor, das ist grauslig, wie die Einheiten dahin kriechen. Sie fahren schnurgerade und drehen auf der Stelle, um den Kurs zu ändern, aber das sieht wirklich behindert aus! Warzone läuft im Online Spiel nur mit 45 statt 60 fps (um Desynchronisation zu reduzieren). Deshalb ruckelt es im Online Spiel etwas, im Einzelspieler Spiel aber nicht so.

Offline Black NEXUS

  • Held
  • *
  • Beiträge: 881
  • Das Web ist die Zukunft
    • German-Furs Network
Re: Wegfindung und "ebene" Maps
« Antwort #7 am: 2009-10-01, 20:38:09 »
Nun ja, wie die fahren ist ja nun egal, diagonales fahren ist schwer zu programmieren, deswegen einmal horizontal, dann vertikal.

Ich denke mir das mit Wegfindung so, der Weg wird berechnet mit der Anzahl der gleichzteitig zu bewegenden Einheiten. Dabei ist die größe der Map und der zu bewältigende Weg entscheidend, deswegen dauert es manchmal etwas, bis sich die Einheiten bewegen.
Map-Konverter für alte Maps
Kinderleicht Maps von CD zu GPL konvertieren

Offline Kreuvf

  • Administrator
  • Held
  • *
  • Beiträge: 2.859
    • https://kreuvf.de/
Re: Wegfindung und "ebene" Maps
« Antwort #8 am: 2009-10-01, 22:00:17 »
Nun ja, wie die fahren ist ja nun egal, diagonales fahren ist schwer zu programmieren, deswegen einmal horizontal, dann vertikal.
Wieso sollte das schwer zu programmieren sein? Also, wieso sollte es schwerer sein als sich horizontal und vertikal zu bewegen (im 3D-Raum!)? Die Einheit weiß, wo und wie sie steht, und sie weiß, wo sie hinfahren soll, daraus lässt sich doch sehr einfach berechnen um wie viel Grad sich ein Einheit drehen muss und welchen Weg sie zurücklegen muss (wenn man davon ausgeht, dass die sich auf der Stelle drehen kann).

Ich denke mir das mit Wegfindung so, der Weg wird berechnet mit der Anzahl der gleichzteitig zu bewegenden Einheiten. Dabei ist die größe der Map und der zu bewältigende Weg entscheidend, deswegen dauert es manchmal etwas, bis sich die Einheiten bewegen.
Wäre doch sinnvoller zu gucken, wo die Einheit ist, wo sie hin muss, und dann erstmal zu prüfen, ob es einen direkten Weg dahin gibt. Vorher könnte man natürlich noch prüfen, ob das Ziel überhaupt erreichbar ist ;) Die Größe der Karte ist für diese Schritte nicht wichtig (k, außer vielleicht, um zu prüfen, ob die angegebenen Zielkoordinaten überhaupt auf der Karte liegen, aber ich will mal nicht so pingelig sein!). IIRC hatte per da mal was committed, was die Karte in "Begehbarkeitszonen" eingeteilt hat. Also zusammenhänge Land- und Wassermassen. Cybersphinx, wenn du das liest, kannst du dich dazu ja auch äußern ^_^
Bei Problemen immer WZ-Version, Betriebssystem, Prozessor + Architektur, Treiberversionen der Grafiktreiber und Grafikkarte angeben. RAM und Mainboard dürften selten wichtig sein.
Kein Privatsupport, PMs werden ignoriert.

Offline cybersphinx

  • Elite
  • *
  • Beiträge: 166
Re: Wegfindung und "ebene" Maps
« Antwort #9 am: 2009-10-01, 22:47:45 »
Was mich annervt ist, sind jene Einheiten welche einen Rückzugsbefehlt haben bei schwerer Beschädigung. Bleiben die irgendwo hängen, löscht sich der Befehl selbständig und die Einheiten greifen wieder in die Schlacht ein, was meist mit dem Verlust der Einheit endet.
Das soll eigentlich nur bei AI-Einheiten passieren, die erhalten dann halt kurz darauf automatisch einen neuen Befehl. Dummerweise ist die Funktion isHumanPlayer kaputt und behauptet, alle Spieler seien AIs.

Ich denke mir das mit Wegfindung so, der Weg wird berechnet mit der Anzahl der gleichzteitig zu bewegenden Einheiten. Dabei ist die größe der Map und der zu bewältigende Weg entscheidend, deswegen dauert es manchmal etwas, bis sich die Einheiten bewegen.
Stimmt im Prinzip (Größe der Karte eher indirekt, weil es sich auf Größe und Anzahl der Unterzonen auswirkt), und irgendwann kommt halt der Punkt, an dem die Wegberechnungen nicht mehr für alle Einheiten fertigberechnet werden können, weil der Prozessor zuviel zu tun hat.

Wäre doch sinnvoller zu gucken, wo die Einheit ist, wo sie hin muss, und dann erstmal zu prüfen, ob es einen direkten Weg dahin gibt. Vorher könnte man natürlich noch prüfen, ob das Ziel überhaupt erreichbar ist ;) Die Größe der Karte ist für diese Schritte nicht wichtig (k, außer vielleicht, um zu prüfen, ob die angegebenen Zielkoordinaten überhaupt auf der Karte liegen, aber ich will mal nicht so pingelig sein!). IIRC hatte per da mal was committed, was die Karte in "Begehbarkeitszonen" eingeteilt hat. Also zusammenhänge Land- und Wassermassen. Cybersphinx, wenn du das liest, kannst du dich dazu ja auch äußern ^_^
Früher gab es die Gateways, die die Karten in Zonen aufteilten (man sucht nicht den kompletten Weg von A nach B, sondern 1. welche Zonen verbinden A und B, und 2. wie komme ich von der aktuellen in die nächste Zone) und manuell gesetzt werden mussten (und auch sonst die Sache verkomplizierten). Manuell ist natürlich blöd, weil die Kartenmacher dann verantwortlich dafür sind, daß sich die Einheiten ordentlich fortbewegen können. Deshalb war der Plan soweit ich mich erinnere, die Zonen automatisch zu erstellen, aber wie weit das fortgeschritten ist, weiß ich nicht. Ich hab da vage was im Kopf von "laßt uns die Gateways erst mal rausnehmen, um das Ganze dann ordentlich zu machen" - wenn das bei "Gateways rausnehmen" stehengeblieben ist, dann fehlt derzeit die zweistufige Aufteilung, und es muß immer der komplette Pfad berechnet werden.

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Re: Wegfindung und "ebene" Maps
« Antwort #10 am: 2009-10-02, 13:25:12 »
Ich habe so das Gefühl, dass die Diskussion gerade etwas abdriftet
Also von der Anzahl der zu bewegenden Einheiten sollte der Fehler nicht ausgehen, denn wenn ich EINEN einzigen LKW um run 2 cm bewegen will, passiert die ersten 5s genauso wenig als wenn ich es mit 100 Einheiten quer über die Map versuche.
Und nein ich spiele SKIRMISH
Also "Geplänkel". 60 FPS sollte da standart sein, ich kann ja jetz mal schnell schauen gehen wieviele FPS wirklich laufen *fraps anmach*
Aber wie gesagt, die Map ist eben, keine Hindernisse außer die Berge der Startpositionen ... ihr kennt die Map ja sicher.
Wie gesagt auf HideNSneak klappts perfekt da läuft es scheinbar flüssiger, die Einheiten heizen von A nach B ohne vorher nachzudenken ... *schulterzuck*

EDIT:
*hust hust* Ich habe die Map mal neu gestartet aus Spass und es läuft flüssig.
Ich vermute mal bei dem ersten Versuch hat sich mindestens eine KI so derbe zugebaut, dass ein riesiger Stau entstanden ist und dadurch das System in die Knie geht. Ich werd das nochmal genauer untersuchen - etwas Geduld bitte :9

EDIT2:
Okay jetzt fängt allmählich auch an der zweite Versuch zu hängen. Erste Symptome von langsamer Entscheidungsfindung was die Wegfindung der Einheiten angeht.

PPS: LoL @ KI rush mit 12 Reparatur Cyborgs XD

EDIT3:
Hab mal aus Spass eine KI gerusht, ja sie stauen sich übelst am oberen Basisausgang. Kein Wunder dass das alles etwas hängt. Wenn das bei jeder KI so ist kommt auch n starker Rechner nich mit xD

~~~~~~~~~~~~~~~~~
Was jetzt noch neu hinzu kommt ist, dass Warzone ständig in periodischen Abständen abschmiert ohne jegliche Fehlermeldung.
Einfach *plomp* und ich bin im Desktop.
Könnte das damit zusammen liegen, dass die KI massive staus unter ihren Einheiten verursacht und desswegen Windoof sagt: "... Nö ..." und einfach schließt?
~___~

PPS wo findet man sowas wie eine Fehleraufzeichnung?
« Letzte Änderung: 2009-10-03, 11:39:43 von Goemi »
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.

Offline Kreuvf

  • Administrator
  • Held
  • *
  • Beiträge: 2.859
    • https://kreuvf.de/
Re: Wegfindung und "ebene" Maps
« Antwort #11 am: 2009-10-04, 08:57:51 »
wo findet man sowas wie eine Fehleraufzeichnung?
stderr.txt. Für kurze Spiele ist es ratsam das Spiel mit --debug all zu starten. Aber ich hatte das mal gemacht und mehrere Stunden gespielt und eine Datei mit 100+ MiB bekommen.
Bei Problemen immer WZ-Version, Betriebssystem, Prozessor + Architektur, Treiberversionen der Grafiktreiber und Grafikkarte angeben. RAM und Mainboard dürften selten wichtig sein.
Kein Privatsupport, PMs werden ignoriert.

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Re: Wegfindung und "ebene" Maps
« Antwort #12 am: 2009-10-04, 21:01:34 »
Danke für die Information. Ich werde das unter der Woche mal ausprobieren.
Was ich davor aber noch loswerden möchte ist, dass man eindeutig was an der Einheitensteuerung tun muss.
Was? Keine Ahnung, aber so geht das irgendwie nicht :(
Ich möchte euch einen Screenshot zeigen, den ich in einem Geplänkel gemacht habe.
Ich halte dies für den Grund der Abstürze und des Ruckelns ... ich denke, ihr werdet mir zustimmen.



Das lustige ist, dass wenn ich mich mit meinen Einheiten nähere (es sind Feinde btw :p), schießen die nicht sofort. Sie scheinen so beschäftigt zu sein, dass ich teilweise 20~30 von ihnen abschießen kann bevor sie plötzlich anfangen alle sammt loszuballern. (Und da bin ich nur mit 5 cyborgs hingerannt).

Also ... irgendwas muss man doch machen können um solche unerwünschten Massenansammlungen zu unterbinden ?!?!
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.

Omikronman

  • Gast
Re: Wegfindung und "ebene" Maps
« Antwort #13 am: 2009-10-04, 21:11:59 »
Stimmt, das Phänomen ist mir auch aufgefallen und es ist mir neu. Hatte auch einen Beitrag deswegen verfaßt. Oft kann man gefahrlos an feindlichen Einheiten vorbei laufen, ohne behelligt zu werden. Bis sie mich bemerken, das dauert schon mal was. Kommt aber nur sporadisch vor, nicht sehr oft.

Offline Goemi

  • Veteran
  • *
  • Beiträge: 39
    • White Star Fleet
Re: Wegfindung und "ebene" Maps
« Antwort #14 am: 2009-10-04, 23:47:43 »
Sporadisch? Nicht sehr oft?
Ich hab das jetzt in 2 Spielen auf 2 Maps in 2 Tagen beobachtet. Ich weiß nicht ...
Auf jeden Fall ist man in Sachen Navigation von Einheiten leider noch nicht auf eine gute Lösung gekommen, zumindest nicht was KI angeht.
Äußerst schade, denn das Spiel an sich ist einfach nur geil XD Tschuldigung *hust*

PS: Das mit dem abstürzen scheint nicht direkt mit dem Wegproblem zu tun zu haben, werde das unter der Woche nochmal genauer untersuchen.
Frage niemals Fragen, von denen du weißt, dass die Antwort dir nicht gefällt.