Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 19.09.2010, 17:16   #1 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard Einheiten springen gleichzeitig aus Helikopter bei Bodenberührung

N'abend allerseits

Wie schon im Titel erwähnt möchte ich die Einheiten in einem Littlebird bei Bodenberührung gleichzeitig abspringen lassen.

In meiner Mission fliegen 3 Littlebirds zwischen den Häusern in Zargabad die Hauptstrasse hintereinander an. Mit Auslösern und diversen
Code:
this flyinheight
Befehlen habe ich einen Landenanflug ala Black Hawk Down simuliert. In einem Auslöserfeld habe ich
Code:
this flyinheight 5
geschrieben und sobald die Helis diese Auslöserzone durchquert haben, erreichen sie den Wegpunkt mit dem
Code:
this flyinheight 0
Befehl. Nun setzen sie wunderschön auf der Strasse hintereinander auf.

Um die Einheiten abspringen zu lassen, habe ich beim letzen Wegpunkt mit der 0 Flughöhe, das Abspringen-Skript aus Mr. Murrays Guide genommen. Leider springen die Einheiten aber dann zu früh ab und alle sterben oder verletzen sich schwer. Ich möchte, dass sie erst wenn der Heli auf dem Boden ist, abspringen.Der Heli soll dann warten bis alle draussen sind und dann erst wieder weiterfliegen.

Mit dem Mr. Murray Abspringen Script geht er gar nicht erst auf den Boden, sondern wirft sie raus (sie sterben z.T.) und der Heli rast in eine Strassenlampe usw.

Hoffe hier kann mir jemand helfen

Geändert von ca$hflow (19.09.2010 um 17:19 Uhr).
ca$hflow ist offline   Mit Zitat antworten
Alt 19.09.2010, 19:43   #2 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Das muss in einen Auslöser eingefügt werden, welcher dort plaziert werden muss, wo die Little Birds dann landen werden.
Code:
null= [heli1,heli2,heli3] execVM "sprung.sqf";
sprung.sqf
Code:
_heli1 = _this select 0;
_heli2 = _this select 1;
_heli3 = _this select 2;

_high1 = getPos _heli1 select 2;
_high2 = getPos _heli2 select 2;
_high3 = getPos _heli3 select 2;

if ((_heli1 distance _high1) = 0) then {
soldier 1 action ["eject", _heli1]
soldier 2 action ["eject", _heli1]
soldier 3 action ["eject", _heli1]
soldier 4 action ["eject", _heli1]
};

if ((_heli2 distance _high2) = 0) then {
soldier 5 action ["eject", _heli2]
soldier 6 action ["eject", _heli2]
soldier 7 action ["eject", _heli2]
soldier 8 action ["eject", _heli2]
};

if ((_heli3 distance _high3) = 0) then {
soldier 9 action ["eject", _heli3]
soldier 10 action ["eject", _heli3]
soldier 11 action ["eject", _heli3]
soldier 12 action ["eject", _heli3]
};
Dieser Script prüft, ob die Entfernung der Helis zum Boden 0 ist, wenn ja werden die Einheiten raus geschleudert.(ACHTUNG Dieser Script funktioniert nicht mit Häuserlandungen!)
__________________

Geändert von Rockhount (19.09.2010 um 19:51 Uhr).
Rockhount ist offline   Mit Zitat antworten
Alt 19.09.2010, 20:23   #3 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

Vielen Dank, dass du dir Zeit genommen hast für mein Problem.

Ich habe jetzt eine Auslöserzone für die Landungen der 3 Helis. Die Wegpunkte, wo sie dann auf
Code:
flyinheight 0
eingestellt werden, sind auch in diesem Auslöserradius. Als Aktivierung habe ich BLUFOR. Bei Aktivierung habe ich dein Script reingeschrieben, allerdings auf meine Helis angepasst:
Code:
null= [lb1,lb2,lb3] execVM "Sprung.sqf";
Meine Sprung.sqf sieht jetzt so aus:
Code:
lb1 = _this select 0;
lb2 = _this select 1;
lb3 = _this select 2;

_high1 = getPos lb1 select 2;
_high2 = getPos lb2 select 2;
_high3 = getPos lb3 select 2;

if ((lb1 distance _high1) = 0) then {
d1 action ["eject", _heli1]
d2 action ["eject", _heli1]
d3 action ["eject", _heli1]
d4 action ["eject", _heli1]
};

if ((lb2 distance _high2) = 0) then {
d5 action ["eject", _heli2]
d6 action ["eject", _heli2]
d7 action ["eject", _heli2]
d8 action ["eject", _heli2]
};

if ((lb3 distance _high3) = 0) then {
d9 action ["eject", _heli3]
d10 action ["eject", _heli3]
d11 action ["eject", _heli3]
d12 action ["eject", _heli3]
};
Auch so bleiben leider die Soldaten immer noch in den Helis sitzen

Geändert von ca$hflow (19.09.2010 um 20:27 Uhr).
ca$hflow ist offline   Mit Zitat antworten
Alt 19.09.2010, 20:29   #4 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Buliwyf
 
Registriert seit: 11.03.2005
Ort: HH
Alter: 46
Beiträge: 1.927
Standard

Code:
if ((getPos lb1 select 2) < 0.5) then {
__________________
Buliwyf ist offline   Mit Zitat antworten
Alt 19.09.2010, 20:41   #5 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

Zitat von Buliwyf Beitrag anzeigen

Code:
if ((getPos lb1 select 2) < 0.5) then {
Auch dir Danke für die Unterstützung. Leider hat es immer noch nicht geklappt. Hab deine Zeile im Script bei den 3 Helis ausgetauscht. Aber es geht immer noch nicht
Code:
lb1 = _this select 0;
lb2 = _this select 1;
lb3 = _this select 2;

_high1 = getPos lb1 select 2;
_high2 = getPos lb2 select 2;
_high3 = getPos lb3 select 2;

if ((getPos lb1 select 2) < 0.5) then {
d1 action ["eject", _heli1]
d2 action ["eject", _heli1]
d3 action ["eject", _heli1]
d4 action ["eject", _heli1]
};

if ((getPos lb2 select 2) < 0.5) then {
d5 action ["eject", _heli2]
d6 action ["eject", _heli2]
d7 action ["eject", _heli2]
d8 action ["eject", _heli2]
};

if ((getPos lb3 select 2) < 0.5) then {
d9 action ["eject", _heli3]
d10 action ["eject", _heli3]
d11 action ["eject", _heli3]
d12 action ["eject", _heli3]
};
ca$hflow ist offline   Mit Zitat antworten
Alt 19.09.2010, 20:46   #6 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 06.06.2008
Beiträge: 209
Standard

getPosATL
__________________
#include "signatur.h"
"I'm not slacking of. My addon is 'pboing'!"
i0n0s ist offline   Mit Zitat antworten
Alt 19.09.2010, 20:51   #7 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

Zitat von i0n0s Beitrag anzeigen

getPosATL

Also alle getPos Befehle im Script mit dem getPosATL Befehl ersetzen? Ich probier das mal aus. Danke =)

EDIT: Ist leider auch nicht gegangen Trotzdem Danke

Geändert von ca$hflow (19.09.2010 um 21:00 Uhr).
ca$hflow ist offline   Mit Zitat antworten
Alt 20.09.2010, 18:18   #8 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

so muss das bei dir aussehen:

Code:
null= [lb1,lb2,lb3] execVM "Sprung.sqf";

sprung.sqf

Code:
_heli1 = _this select 0; 
_heli2 = _this select 1; 
_heli3 = _this select 2;  

_high1 = getPos _heli1 select 2;
_high2 = getPos _heli2 select 2;
_high3 = getPos _heli3 select 2; 

if ((_heli1 distance _high1) < 0.3) then { 
d1 action ["eject", _heli1] 
d2 action ["eject", _heli1] 
d3 action ["eject", _heli1] 
d4 action ["eject", _heli1] };  

if ((_heli2 distance _high2) < 0.3) then { 
d5 action ["eject", _heli2] 
d6 action ["eject", _heli2] 
d7 action ["eject", _heli2] 
d8 action ["eject", _heli2] };  

if ((_heli3 distance _high3) < 0.3) then { 
d9 action ["eject", _heli3] 
d10 action ["eject", _heli3] 
d11 action ["eject", _heli3] 
d12 action ["eject", _heli3] 
};
oder das

Code:
_heli1 = _this select 0; 
_heli2 = _this select 1; 
_heli3 = _this select 2;  

if ((getPos _heli1 select 2) < 0.3) then { 
d1 action ["eject", _heli1] 
d2 action ["eject", _heli1] 
d3 action ["eject", _heli1] 
d4 action ["eject", _heli1] };  

if ((getPos _heli2 select 2) < 0.3) then { 
d5 action ["eject", _heli2] 
d6 action ["eject", _heli2] 
d7 action ["eject", _heli2] 
d8 action ["eject", _heli2] };  

if ((getPos _heli3 select 2) < 0.3) then { 
d9 action ["eject", _heli3] 
d10 action ["eject", _heli3] 
d11 action ["eject", _heli3] 
d12 action ["eject", _heli3] 
};
Die zweite Variante habe ich mal als FSM beigelegt
Init:
Code:
null=[lb1,lb2,lb3] execFSM "sprung.fsm";
EDIT: Bitte nächtes mal nicht mit den Scripten experimentieren, wenn man nicht viel davon versteht. So erspart man viele Leute viel Nerven.
@ca$hflow: In deine geänderte Version hattest du die Helis doppelt definiert, aber die Action Befehle nicht dementsprechend geändert. Desswegen wusste die Engine nicht, von welchen Heli die Einheiten rausgeschleudert werden sollten.
Angehängte Dateien
Dateityp: zip sprung.fsm.zip (503 Bytes, 40x aufgerufen)
__________________

Geändert von Rockhount (20.09.2010 um 19:28 Uhr).
Rockhount ist offline   Mit Zitat antworten
Alt 20.09.2010, 19:38   #9 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

vielen dank dass du dir die zeit genommen hast. also die erste variante von dir ist nicht gegangen die einheiten springen nicht raus. die zweite probiere ich jetzt gleich.

EDIT: auch die zweite variante funzt nicht..sheissse soll ich dir mal die mission aus dem editor als anhang uppen?

Geändert von ca$hflow (20.09.2010 um 19:48 Uhr).
ca$hflow ist offline   Mit Zitat antworten
Alt 20.09.2010, 21:03   #10 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Wäre nützlich, dann könnte ich das Problem zumindest besser erkennen.



MfG Rockhount
__________________
Rockhount ist offline   Mit Zitat antworten
Alt 20.09.2010, 21:37   #11 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

hast du massis rangers fürs CO und ADukes helo pack 1.5?

ich uppe die mission jetzt ohne mal dein script ok?
ca$hflow ist offline   Mit Zitat antworten
Alt 21.09.2010, 18:31   #12 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Wenn ich kein Bestätigungsformular dafür ausfüllen muss, kannst du es ruhig hochladen.
__________________
Rockhount ist offline   Mit Zitat antworten
Alt 23.09.2010, 17:56   #13 (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

Es gibt einen eigenen Befehl mit dem der Heli über dem Boden schwebt, damit die Einheiten abspringen können. Den Befehl gibt man in den Wegpunkt am Zielort ein.

Heli1 land "GET OUT"

Am Zielort ein "Lande-H" setzen!



Fürs Aussteigen kann man den Befehl für alle Insassen (bis auf die Besatzung) so geben:

{_x action ["eject", Heli1]} forEach assignedCargo Heli1


Wie man das Aussteigen mit einem Auslöser steuert, seht euch im Beispiel an.
Angehängte Dateien
Dateityp: zip Aussteigen_aus_Heli.zip (1,3 KB, 58x aufgerufen)
Vienna ist offline   Mit Zitat antworten
Alt 24.09.2010, 08:36   #14 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

das mit dem heli h ist auch nicht gegangen. aber habe den unteren befehl mit "eject" mal beim wegpunkt bei aktivierung eingegeben.

jetzt funzt es, dass das delta team abspringt, aber leider auch der copilot vom heli. und wenn das team abgesprungen ist, gibt der leader den befehl wieder in den littlebird einzusteigen und dieser landet dann irgendwo und wartet auf uns. aber ich möchte das er dann weiterfliegt..da wäre die mission.

habe massis rangers und adukes helopack auch gleich reingepackt.

HTML-Code:
http://rapidshare.com/files/420920928/bhd.rar
ca$hflow ist offline   Mit Zitat antworten
Alt 24.09.2010, 18:31   #15 (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

Der Copilot wird unter "Cargo" geführt. Den brauchst du aber nicht. Nimm einfach keine "vorbesetzten" Helis.

Du brauchst keinen Höhenbefehl für den Ausstiegsvorgang angeben. Sonstige Flughöhen nicht in Auslösern, sondern in den Wegpunkten anführen.

Unbedingt so anlegen:

Im Wegpunkt für den Ausstieg: Heli1 land "GET OUT", dann ein Lande-H beim Wegpunkt und den mit dem Heli verbundenen Auslöser plazieren!

Der Auslöser hat als Bedingung: this and getpos Heli1 select 2 < 1
und bei Akt: {_x action ["eject", Heli1]} forEach assignedCargo Heli1

Für den Heli noch einen weiteren Wegpunkt nach dem Aussteigen, sonst landet er beim Ausstiegspunkt.

So ist das auch im Beispiel, und das funktioniert!!!
Vienna ist offline   Mit Zitat antworten
Alt 24.09.2010, 20:07   #16 (permalink)
Newbie
 
Registriert seit: 14.07.2010
Ort: Schweiz
Alter: 27
Beiträge: 27
ca$hflow eine Nachricht über MSN schicken
Standard

ok vielen dank dass du dir die mühe gemacht hast. es funktioniert..also auf deine art. aber ich finde es einfach unschön wenn der littlebird noch sone 180° drehung macht und sehr langsam landet. er kommt geflogen auf etwa 50 metern höhe..bremst dann voll ab..und lässt sich langsam sinken bis er die einheiten draussen hat. und wenn die einheiten dann draussen sind. sagt der leader "alle in mh-6 einsteigen" und dann sind sie wider drinnen.

also es gibt wohl keine lösung einen schönen landeanflung zu kreiieren ala black hawk down ohne dass die einheiten wieder in den heli gehen.

und ich hab jetztz wirklich alles so gemacht wie dus gesagt hast.
ca$hflow ist offline   Mit Zitat antworten
Alt 24.09.2010, 21:20   #17 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Ich bin schon dran, das ist aber kein Kinderspiel, wo man das ganze schnell mal in 10min macht. Wenns gut werden soll brauchts eben Zeit. Außerdem muss ich erstmal die ganzen bugs beseitigen, damit das Abspringen/Landen überhaupt möglich wird.
__________________

Geändert von Rockhount (24.09.2010 um 21:28 Uhr).
Rockhount ist offline   Mit Zitat antworten
Alt 24.09.2010, 22:32   #18 (permalink)
500 Beiträge1000 Beiträge
 
Registriert seit: 05.01.2008
Alter: 26
Beiträge: 1.702
Standard

Probier doch einfach mal die Helis als abgeschlossen zu setzen. Dann sollten die Einheiten per Script rausgeworfen werden aber nicht mehr einsteigen können.

LG
JoeJoe87577 ist offline   Mit Zitat antworten
Alt 24.09.2010, 22:47   #19 (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

Der Heili fliegt nach den Aussteigen automatisch zum weiteren Wegpunkt! Da können die KIs nicht mehr einsteigen...
Vienna ist offline   Mit Zitat antworten
Alt 25.09.2010, 10:05   #20 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Die Litle Birds fliegen schon weiter, aber die Black Hawks nicht. Ich versuche gerade das ganze in einen script umzuwandeln, aber anscheinend funktioniert die "distance" Abfrage bei ArmA 2 OA nicht mehr(habe schon alle möglichen Varianten versucht).
__________________
Rockhount ist offline   Mit Zitat antworten
Antwort


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
Heal/Repair Script / Einheiten in einem Radius zufällig generieren lassen Noobfire Editing & Scripting 8 06.08.2010 15:22


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