KI nachRespawn im Fahrzeug
Hi Leute!
Ich habe mich dumm gegooglet auf der Suche nach einer Antwort für mein Problem. Ich erstelle gerade eine neue MP-Map und wollte feindliche Einheiten erstellen. Ich habe einen BMP-3 plaziert, inklusive Crew. Wenn der Panzer zerstört wird, soll die Crew respawnen und in den bereits gerespawnten Panzer einsteigen. Der Panzer und die Crew respawnen einwandfrei, habe schon ein Skript dafür, jedoch funktioniert das mit der Crew nicht, sie will einfach nicht einsteigen. :( Ich finde es schade, denn das nervt mich gewaltig !! Ich bitte euch mir zu helfen, leibe Community!! mfg jackpot |
Ich hab's mal ins richtige Forum verschoben.:)
|
Wo ist dein Skript?
|
Das Script für den Fahrzeug-Respawn war ein vorgefertigtes, welches ich mir downgeloadet habe. Es heißt "respawn_vehicle.sqs" und ist im Missionsordner drin. :)
Den Einheiten-Respawn habe ich per "Respawn_East"-Markierung gemacht. Dann habe ich deine Idee, Vienna, aufgegriffen, und die Einheiten steigen mittlerweile auch in die Fahrzeuge ein. Manchmal gibt es Probleme, sodass sie nicht gleich einsteigen wollen. (Ich habe einen Auslöser erstellt mit einem moveIn-Befehl bei Deak.: [pl2 (Soldatenname) moveInDriver Fz4 (Fahrzeugname)]. Bei den Einheiten dann z.B. "this moveInDriver Fz4") Und witzigerweise spawnen statt nur einem manchmal zwei Fahrzeuge. Das ist aber bei den BLUFOR Einheiten anders, da spawnt ganz normal nur ein Fahrzeug. Am besten wäre es sowieso, wenn man gleich besetzte Fahrzeuge spawnen könnte, ich habe aber auch dafür noch keine Lösung gefunden. :( mfg jackpot |
Kopiere den Inhalt des Skripts hier rein.
Schreibe am Anfang der Zeilen [code] und am Ende [/code...] ohne die 3 Punkte. Wen beim Respawn zwei Fahrzeug erstellt werden, dann liegt das vermutlich daran, dass in MP das Respawnskript bei zwei Spielern aufgerufen wird. |
Jo, hier mein Skript:
Code:
? !(local server) : exit |
Liste der Anhänge anzeigen (Anzahl: 1)
Dein Skript ist veraltet und enthält nicht den Respawn der Besatzung. Nimm das folgende Skript.
Es enthält einen Wegpunkt der das Fahrzeug vom Respawnort zu einem Zielort fahren lässt. Für den den Zielort musst du eine Position angeben. Hier im Beispiel mit einem Marker Namens "ZielOrt". Du kannst für jedes Fahrzeug einen anderen Ort nehmen. Der Aufruf erfolgt in der Initzeile der Fahrzeuge. Hier im Beispiel: temp = [this, markerPos "ZielOrt", 15, 3] execVM "FahrzeugRespawnenMitWegpunkt.sqf"; Die 15 steht für die Respawnzeit und die 3 für die Anzahl der Respawns. Die Zeilen mit // sind Kommentare, welche das Skript erklären. Im Anhang auch ein Beispiel mit dem Skript. Skript FahrzeugRespawnenMitWegpunkt.sqf Code:
//Respawn eines Fahrzeuges mit Besatzung und Einsatzziel. [Vienna 02.11.2011] |
Danke schon mal, Vienna, für die Hilfe!
Ich hätte aber noch eine Frage. Das Script ist jetzt dafür ausgelegt, dass die Fahrzeuge nach dem Respawn zu einem Wegpunkt vorrücken, richtig? Ich brauche diese Funktion aber eigentlich nicht. Ich will nur, dass das Fahrzeug samt Besatzung an dem Punkt respawnt, wo ich das Fahrzeug im Editor platziert habe. Wenn ich es leer platziere, soll es leer respawnen. Wenn ich es mit Besatzung platziere, soll die Besatzung nach dem Respawn schon im Fahrzeug sitzen. Ist das darin schon eingebaut oder wäre das wieder etwas anderes? Ist das überhaupt machbar? Ich kenne mich nicht so gut damit aus, als das ich das dort herauslesen könnte, geschweige denn, so ein Script selbst zu schreiben. :nixweiss: Daher könnte das ein bisschen komplizierter werden. :D Aber danke für die Hilfe! mfg jackpot |
Liste der Anhänge anzeigen (Anzahl: 1)
Obiges Skript ist nur möglich mit Besatzung (die auch respawnt) und Angabe einer Zielortposition, wohin das Fahrzeug dann fährt.
Im neuen Skript ist die Zielortposition jetzt der letzte Parameter und kann entfallen. Dann bleibt das Fahrzeug am Erstellungsort (dort wo es im Editor abgestellt wurde). Neuer Eintrag in die Initialisierungszeile. Aufruf mit Fahrt zum Einsatzort (beachte die neue Reihung der Parameter): temp = [this, 15, 3, markerPos "ZielOrt"] execVM "FahrzeugRespawn_KI_WP.sqf"; Aufruf ohne die Fahrt: temp = [this, 15, 3] execVM "FahrzeugRespawn_KI_WP.sqf"; Die 15 steht für die Respawnzeit und die 3 für die Anzahl der Respawns. Wird das Fahrzeug ohne Besatzung aufgestellt, dann respawnt es auch ohne Besatzung. Beachte, dass du im Skript das Kampf-Verhalten der Besatzung ändern kannst. Hier das Skript. Es hat einen anderen Namen und eine andere Parameter Reihung: Skript FahrzeugRespawn_KI_WP.sqf Code:
//Respawn eines Fahrzeuges. Ausführung erfolgt beim Server. [Vienna 03.11.2011] |
Danke für die Antwort.
Ich werde es mal ausprobieren. :) Vielen Dank! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:02 Uhr. |
Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias