PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : UAV soll Gegner auf Karte markieren


Clawhammer
08.05.2008, 23:35
Hallo zusammen :)

Ich habe mir hier die UAV Drohne runtergeladen (UAV RQ-1 Predator | Downloads | Armed-Assault.de (http://armed-assault.de/downloads/uav-rq-1-predator.html))

Nun möchte diese Gerne in einer Mission zu Spionagezwecken verwenden.

Und zwar möchte ich das wenn die Drohe nicht in meinem Team ist trozdem auf der Map
Gegner markiert bekommen. Geht das?

Wenn ja wie ?

Danke schonmal im vorraus :)

Buliwyf
09.05.2008, 09:26
Könnte mir vorstellen, dass Du mit knowsAbout (http://community.bistudio.com/wiki/knowsAbout) was basteln könntest... fragt sich wie gut das UAV die Einheiten am Boden erkennt?!

Ansonsten kommt dann wohl eher eine unschöne Variante mit nearObjects (http://community.bistudio.com/wiki/nearObjects) zur "Erkennung" in Frage.

Letztlich setzt Du dann mittels createMarker (http://community.bistudio.com/wiki/createMarker) oder createMarkerLocal (http://community.bistudio.com/wiki/createMarkerLocal) einen Marker auf das erkannte Objekt...

Also unmöglich klingt das Ganze nicht.

:cool:

Mr-Murray
09.05.2008, 12:25
Also ich würde das auch so regeln ;)

Clawhammer
09.05.2008, 13:35
Also wenn das UAV in meinem Team ist Spioniert es alles aus.
Könntet ihr mir mal ein bischen genauer erklären wie ihr das mit z.b knowsabout meint?
Meine Glühbirne ist leider noch nicht aufgegangen :(

Mr-Murray
09.05.2008, 13:42
Lade dir mal meinen Editing Guide herunter. Da steht alles drin und noch viel mehr.

www.mr-murray.de.vu (http://www.mr-murray.de.vu)



Grüße

Mr-Muurray

Clawhammer
09.05.2008, 14:16
Das brauch ich nicht bin besitzter der Special Editon von ArmA da ist das Handbuch glücklicher weise dabei :)

Hab mir das Kapitel 5.29 Bekanntheitsgrad einer Einheit mal durchgelesen.

Das würde aber vorraussetzten das ich Jeder Einheit einen Namen gebe und das ich dann ja für jede einheit dann werte einzeln übertragen (Von UAV zu allen anderen Leuten in meinem und anderne squads) muss, das wäre ne riesen arbeit....

Mr-Murray
09.05.2008, 15:46
Ich könnte dir jetzt was basteln, geht aber hier im Office nicht.

Gerade wenn du die Special Edition hast, solltest du dir mal die aktuelle Version 1.02 herunterladen!!! Siehst dann schon warum ;)



Grüße

Mr-Murray

Buliwyf
09.05.2008, 15:59
Ich sitze zwar auch noch im Office, aber ich auch kein Freund vom "Vorbasteln"... schließlich willst Du was lernen und nicht ich... =)

Aber zur Hilfe... Du musst keine Namen vergeben. :naughty:

Du könnstest die Sache etwa so angehen:
{_m = createMarker [""marker"",[position _x]]} foreach (uav nearObjects ["TANK",200])

Wobei es natürlich jetzt eine 0815-Variante ist und da noch ein bisschen mehr zugehört (Markertyp etc.). Aber ein Ansatz... :rolleyes:

Clawhammer
10.05.2008, 00:22
Hm selbst mit der Methode bekomme ich auf der Karte nichts angezeigt.
Aja kannn es Sein das der Code So lautet:

{_m = createMarker ["marker",[position _x]]} foreach (uav nearObjects ["TANK",200])
Weil so
{_m = createMarker [""marker"",[position _x]]} foreach (uav nearObjects ["TANK",200])

bekomme ich Fehlermeldungen


Was mir auch gerade in den Sinn kommt muss ich diesen Befehl in einer Schleife unendlich oft wiederholen lassen oder reicht es wenn er einmal aufgerufen wird?

Buliwyf
10.05.2008, 08:27
Jo.. hast recht.. das war zuviel des Guten.. =)

Und eine Schleife ist sicher notwendig, weil in dem Beispiel ja nur alles was 200m am UAV dran ist markiert wird...

Mr-Murray
11.05.2008, 09:12
Servus
Ich bin zwar noch nicht zu gekommen, aber du kannst auch das Skipt aus Kapitel 6.11 aus
meinem 1.02 Editing Guide nehmen und dir anpassen. Wenn UAV mehr als Wert von
Einheit weiß bzw. UAV(West) hat feindliche Einheit im Auslöserbereich entdeckt, wird die
entdeckte Einheit markiert. Am Anfang des Sriptes kann du schreiben:

_Detector=NameVonUAV

? _Detector distance _target > 2000 : exit



Grüße

Mr-Murray

Clawhammer
16.05.2008, 16:25
;ScanScript created by Clawhammer

_Melder=UAV

? _Melder distance _target > 2000 : exit

_Melder = _this select 0
signalcounter = 0

"Target1" setMarkerPos getpos _Melder
"Target1" SetMarkerType "Destroy"

#Start
? (signalcounter>=10) : goto "End"
signalcounter = signalcounter+1
~0.8
"Target1" SetMarkerColor "ColorRed"
~0.8
"Target1" SetMarkerColor "ColorBlack"
goto #Start

#End
~1

signalcounter = 0
"Target1" SetMarkerType "Empty"
"Target1" SetMarkerColor "ColorBlack"
exit


Das habe ich in meinem Script geschrieben,
Habe das UAV UAV genannt und einen marker namens Target1 gemacht

Allerdings bekomme ich diese Fehlermeldung:

_Melder = _this |#|select 0
Error select: Typ Objekt,erwartet Array,Config entry :(

Buliwyf
16.05.2008, 16:46
Abgesehen davon, dass sich mir nicht erschließt waurm Du aus UAV _Melder machst (ist doch viel länger), solltest Du statt _this select 0 einfach nur _this verwenden... das behaupte ich jetzt einfach mal so.

:rolleyes:

Das ist aber jetzt nur ein Teil des Scripts, oder?

Clawhammer
16.05.2008, 18:03
Das ist das ganze script aus dem Kapitel was Mr.Murray gezeigt hat, was brauch ich den da noch ergänzendes?

UPDATE: Ich bekomme nun keine Fehlermeldungen mehr aber mehr passiert leider auch nicht :(



_Melder=UAV

? _Melder distance _target > 2000 : exit

_Melder = _this
signalcounter = 0

"Target1" setMarkerPos getpos _Melder
"Target1" SetMarkerType "Destroy"

#Start
? (signalcounter>=10) : goto "End"
signalcounter = signalcounter+1
~0.8
"Target1" SetMarkerColor "ColorRed"
~0.8
"Target1" SetMarkerColor "ColorBlack"
goto "Start"

#End
~1

signalcounter = 0
"Target1" SetMarkerType "Empty"
"Target1" SetMarkerColor "ColorBlack"
exit

Buliwyf
16.05.2008, 18:17
Achso.. nun kenne ich das Zeugs vom MrMurray nicht... :D

Letztlich ist es völlig wurscht ob es _Detector, _Melder oder _KarlArsch heisst. Hab mich halt nur gefragt warum Du das so gemacht hast...

Aber ich frage mich was _target ist. Das ist nämlich nicht deklariert.

:komisch:

Clawhammer
28.05.2008, 08:57
Also ich habe noch bissl gebastelt aber bei mir kiommst immer drauf hinaus das ich massig Fehlermeldungen bekomme oder garnichts passiert :( Bitte helfen :(