Luftkampf KI
-
Du solltest natürlich eine Freund-Feind-Erkennung einbauen, ist ja sh*t wenn dir einer von hinten den ***** wegfegt.
Und das mit der Schussbahn ist natürlich mehr als Vorraussetzung. Ist doch bisher gut so, wenn ein viertes Flugzeug auftaucht ist der andere gedeckt. :p
-
Echt problematisch das Ding. Ich verwalte die Schüsse in einer List. Die Kollisionsabfrage erfolgt unabhängig davon wer den Schuss abgegeben hat. Trifft ein Geschoss ein Objekt wird dieser beschädigt. Fliegen die Flugzeuge zu eng trifft jeder jeden.
Eine 3D Engine zu programmieren ist nicht so aufwendig wie eine realistische KI.
-
Du kannst doch prüfen, ob der Winkel zwischen dem Richtungsvektor des Flugzeugs und dem Verbindungsvektor zu einem freundlichen Flugzeug zu klein ist (Punktprodukt!). In dem Fall wäre es möglich, dass man jemanden aus seinem eigenen Team trifft. Wenn das so ist, dann schießt das Flugzeug ganz einfach nicht.
-
3d oder 2d? wenn 3d könnte das flugzeug dann auch hoch/runter gehen
-
Natürlich 3D.
@T.Riker
Das Problem habe ich schon gelöst. Was ich sagen wollte, das es schon schwer ist ein "relistisches Verhalten" zu programmieren. Kann auch sein das mir die Erfahrung auf diesem Gebiet fehlt.
-
Ich kann mir gut vorstellen dass sowas schwer ist, du versuchst ja auch einer Maschine mehr oder weniger das Denken beizubringen...
-
Hi Leute,
ich versuche gerade eine ähnliche KI zu coden, bisher fehlt mir leider jeder Ansatz, außer, dass sich der Gegner auf mich ausrichtet und dann planlos auf mich feuert, ohne groß nachzudenken, hat jemand ne Idee wie ich das etwas intelligenter gestallten könnte? Oder sogar so, dass der Gegner Flugmanöver von mir lernen kann? bzw. noch wichtiger währe mir, dass der Gegner lernt im Team mit seinen 2-3 Flügelmännern zu arbeiten...
Suche bisher nur kluge Texte zu dem Thema, würde mich aber über nen fertigen Code alla copy paste natürlich riesig freuen
Gruß
Scarabol
-
Naja, wie siehts in der realität aus???
Nehemn wir du bist Jet Pilot und es kommen 2 Flugzeuge dir entgegen, welche untereinander auch befeindet sind.. und ihr schiesst euch gegenseitig ab!!! Was würdes du tun? Würde du den abschiessen, welcher grad den anderen abschiesst? Grund: Da der andere ja beschäftig ist den anderen abzuschiessen ist er für dich ein leichtere ziel, und beide anderen maschinen werden gleichzeig beschädigt.
Oder Hifst du dem einen den anderen abzuschiessen, damit du dich später nur auf einen Konzentrieren musst??
Würde diese entscheidung abhängig der schäden der anderen machen...
-
dabei geht es nur um MG, oder? weil das ganze heutzutage mit raketen einfach nur ein technisches spiel ist.
ich wuerde erstmal nach flocking und boids suchen, z.b. der erste treffer bei google ergibt im groben was du suchst: http://www.lalena.com/AI/Flock/Flock.aspx
da kannst du verfolger einstellen, mit verschiedenen geschwindigkeiten usw.man kann es auch versuchen ganz analytisch zu loesen. beide flieger rechnen ihren momentanen status aus, suchen dann anhand dessen ein flugmanoever aus (und meinem euro fighter buch gab es mehrere dutzend davon, das sah durchaus interesant aus) und dann fahren die die manoever ab und schauen wieder den status und suchen das naechste manoever aus. so wuerde ich annehmen dass menschen fliegen, eine erweiterung waere dass manoever variationen haben, sodass auch mal mitten im mannoever der status abgefragt wird und dann eine variation selektiert wird.
es gibt soweit ich weiss auch buecher ueber flugmanoever und welches dann das kontra zu welchem ist und wieviel G dann die piloten aushalten muessen usw.
-
ok, also die KI kann ich ja weiter mit solchen "logischen" Entscheidungen füttern, wie z.B. dass er auf den GegnerTyp (Stärke, Flugzeugtyp, ect.) achtet, Ansehen (Freund/Feind/Neutral) oder bestimmte Ziele (Aulöschung aller Spieler der grünen Mannschaft), uswusf.
Gruß
Scarabol
-
rapso schrieb:
flocking und boids [...] http://www.lalena.com/AI/Flock/Flock.aspx
Das ist ja cool
Toller Link, danke dafür! Kann solches Verhalten eigentlich nicht auch für Bodentruppen in Games sinnvoll sein?
edit: Hab mal gegoogelt, kann anscheinend sinnvoll sein
http://oreilly.com/catalog/ai/chapter/ch04.pdf Würde mich trotzdem freuen, wenn du noch ein paar Worte drüber verlierst (falls du dich in dem Gebiet weiter auskennst).