Armed-Assault.de Twitter
 
 
Themen-Optionen Ansicht
Alt 28.04.2011, 02:34   #1 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 33
Beiträge: 1.703
Standard KI immer auf gleicher Höhe fliegen lassen

Hallo,

ich habe mal eine Frage, ist es möglich ein UAV das von der KI gesteuert wird immer in die gleichen Höhe fliegen zu lassen und zwar ohne die Landschaft zu beachten?
Ich habe bereits eine MQ-9 Drohne im Editor platziert und mit der Init:
Code:
mq9_1 setPos [(getPos mq9_1 select 0),(getPos mq9_1 select 1),2000]; mq9_1 flyInHeigt 2000
versehen. Doch jetzt fliegt die KI immer 2000m über Grund.
Gibt es eine Möglichkeit, ohne große Scripte, die KI so zu beeinflussen, dass sie immer dieselbe Höhe über N.N. einhällt?
Es it echt nervig wenn man ein klares Bild von seinem Einsatzgebiet haben will und die KI immerwieder in der Höhe schwankt und damit auch unterschiedlich schnell ist.

Ich hab schon die Scripting Commands durchgeschaut, aber mir ist keine andere Möglichekeit außer flyInHeigt aufgefallen...
JoeJoe87577 ist offline  
Alt 28.04.2011, 12:15   #2 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Gib diese Zeile in einen "Funkauslöser" zum Testen. Beim Aufrufen sollte das Objekt eine Höhe von 200 über dem Meeresspiegel einhalten.

Code:
temp = [VehicleName,200] spawn {private ["_u","_h"];_u=_this select 0;_h=_this select 1; while {alive _u}do{_u setPosASL [getPosASL _u select 0, getPosASL _u select 1, _h];sleep 0.01}}
Vienna ist offline  
Alt 28.04.2011, 13:32   #3 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 33
Beiträge: 1.703
Standard

Super, das funktioniert.

Kann ich jetzt irgendwie hingehen und einen Auslöser platzieren, der z.B. so aussieht, dass wenn das UAV einen neuen Wegpunkt bekommt, die Höhe des Wegpunktes nimmt (wieder die Höhe über N.N.) und dann darauf 2000m addiert?
Ich habe leider keine Ahnung wie ich einen Wegpunkt als Objekt nehmen kann um die Höhe auszulesen. Nur Irgendwie muss es ja möglich sein, mit getPosASL die Meereshöhe zu bekommen und dann darauf 2000 zu addieren.

edit: Mir ist ein kleines Problem mit deinem Code aufgefallen Vienna, das UAV wird jetzt zwar auf Höhe gehalten, aber die KI versucht immernoch eine andere Höhe zu erreichen. Das sieht etwas seltsam aus, das UAV fliegt nich horizontal sondern ein wenig nach vorne geneigt.
Das Problem könnet ich aber lösen indem ich 2 Auslöser platziert hab und der eine die Höhe über dem Terrain abfragt und der andere diese Höhe dann mit dem Befehl "flyInHeigt" and die KI weitergibt.

Geändert von JoeJoe87577 (28.04.2011 um 13:49 Uhr).
JoeJoe87577 ist offline  
Alt 28.04.2011, 14:54   #4 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Gib die Höhe in eine globale Variable ein, der kannst du dann jederzeit einen anderen Wert zuweisen.

z.B. in einem Auslöser dann mit: UAVhoehe = 500

Der Code dazu:
Code:
UAVhoehe = 200; temp = [VehicleName] spawn {private ["_u"];_u=_this select 0; while {alive _u}do{_u setPosASL [getPosASL _u select 0, getPosASL _u select 1, UAVhoehe];sleep 0.01}};
Ob die Neigung wegzubekommen ist weiß ich nicht, versuche in flyInHeigt einen höheren Wert als die erzwungene Höhe einzugeben.
Vienna ist offline  
Alt 28.04.2011, 16:03   #5 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 33
Beiträge: 1.703
Standard

Das werde ich auch mal versuchen. Im Moment versuche ich ein kleines Script auzubauen, mit dem ich die Höhe der Drohne auslese (Das funktniert ohne Probleme) und dann diese Höhe der KI mit flyInHeigt zuweise.
Code:
while { alive mq9 } do
{
    heigt = getPosATL mq9;
    sleep 0.25;
    mq9 flyInHeigt heigt;
}
So sieht das ganze Ding aus. Die Höhe auslesen funktioniert wie geschrieben schon. Nur bei dem Befehl flyInHeigt hab ich noch Probleme. Da bekomme ich folgenede Fehlermeldung:
Code:
Error Fehlendes ;
heigt = getPosATL mq9;
sleep 0.25;
mq9 |#|flyInHeigt heigt;
};
Daraus Glaskugele ich, dass es ein Problem mit dem Befehl flyInHeigt gibt. Allerdings habe ich keine Ahnung wie ich den anders verbauen soll. Und im BI Wiki bin ich auch nicht wirklich fündig geworden.

Geändert von JoeJoe87577 (28.04.2011 um 16:18 Uhr).
JoeJoe87577 ist offline  
Alt 28.04.2011, 17:13   #6 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Die Position wird als Array angegeben [x,y,z]. z ist die Höhe. Die wird aus dem Array mit select ausgelesen. Index: x=0, y=1, z=2.

Code:
while { alive mq9 } do
{
    mq9 flyInHeigt (getPosATL mq9 select 2);
    sleep 0.25;
}
Vienna ist offline  
Alt 28.04.2011, 17:45   #7 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 33
Beiträge: 1.703
Standard

Ich hab das eben getestet und bekomme wieder die Fehlermeldung, dass vor dem flyInHeigt ein ; fehlen soll...
Warum funktioniert das ganze ohne Probleme wenn man einen festen Wert als Zahl gibt und das Teil im Editor in die Init einfügt, aber als Script macht das Ganze nur Stress -.-.
JoeJoe87577 ist offline  
Alt 28.04.2011, 18:28   #8 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 33
Beiträge: 1.703
Standard

Ok, Problem erstmal gelöst. Ich hatte ein H in dem Script vergessen. Jetzt funktioniert alles wie es soll.
JoeJoe87577 ist offline  
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
KI präzise fliegen lassen Wobbegong Editing & Scripting 2 04.02.2011 18:22
Ki kann nicht fliegen ! Panzagrenadier Technische Fragen & Probleme 6 28.11.2010 16:08
UAV Höhe behalten miromanu Editing & Scripting 8 02.09.2010 17:10
UAV soll sehr hoch fliegen Nischi Editing & Scripting 8 14.08.2010 21:30
ULB Heli bei Missionsbeginn auf 500m Höhe todyoungblood Editing & Scripting 3 02.08.2010 18:51


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119