Armed-Assault.de Twitter
 
 
Themen-Optionen Ansicht
Alt 27.04.2014, 00:43   #1 (permalink)
Newbie
 
Registriert seit: 15.04.2014
Beiträge: 45
Standard KI Hinterhalt

Hallo,
ich suche nach einem Script, der ein paar KI-Soldaten die Waffen entfernt und ihnen dann wenn eine gegnerische Einheit in der Nähe ist diese wieder gibt.
Das ganze sollte auch mit Waypoints funktionieren. Die Waffen könnt man ja auch manuell entfernen wenn das nicht Möglich sein sollte.

Wenn es so einen Script gibt, gebt mir bitte einen Link, wenn nicht, würde es mich interessieren, wie mann eine Abfrage schreibt, bei der sich der Trigger immer mit der Position der KI abgleicht. (muss nicht unbedingt ein Trigger sein, sollte halt so funktionieren, dass das ganze mit Waypoints kein Problem gibt. (Der Radius bis die Waffe gezückt wird sollte nur 20m sein. Kann man ja in so nem Script auch anpassen.)

Danke
__________________
Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei.
marc_book ist offline  
Alt 27.04.2014, 11:50   #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

Das ist viel zu aufwendig! Du kannst das Verhalten der KI so einstellen, dass man zwischen den Feinden herum spazieren kann.

https://community.bistudio.com/wiki/setBehaviour
https://community.bistudio.com/wiki/setCombatMode

Für dieses Skript brauchst du den im Skript beschriebenen Jeder-Mehrfach-Auslöser, der über eine Schalter-Variable das Verhalten der Einheiten im Auslöserbereich umschaltet.
Code:
/*
Skript: Verhalten.sqf

Aufruf: [Seite, Array mit Soldaten,"setBehaviour","setCombatMode"] execVM "Verhalten.sqf";

Beispiel für Soldaten in einem Auslöserbereich.
 Auslöser:
  Achse A und B: 200
  Aktivierung  : Jeder | Mehrfach
  Countdown    : 0 - 0 - 0
  Name         : Trigger_1 
  Bedingung    : NichtFeuern_1
  Bei Akt.     : temp = [WEST,list Trigger_1,"CARELESS","BLUE"] execVM "Verhalten.sqf";
  Bei Deak.    : temp = [WEST,list Trigger_1,"AWARE","YELLOW"] execVM "Verhalten.sqf"; 
 
 Soldaten der Seite im Auslöserbereich -> nicht feuern: NichtFeuern_1 = true; 
 Soldaten der Seite im Auslöserbereich -> Feuer frei  : NichtFeuern_1 = false;
*/

private = ["_seite","_unitListe","_behaviour","_combat"];

_seite     = _this select 0;
_unitListe = _this select 1; 
_behaviour = _this select 2;
_combat    = _this select 3;

{
 if (side _x == _seite) then
  {
   _x setBehaviour  _behaviour;
   _x setCombatMode _combat 
  }
} forEach _unitListe;
Die Schalter-Variable kannst du durch andere Auslöser z.B. mit distance schalten.
Code:
 Achse A und B: 0
 Aktivierung  : Keine | Mehrfach
 Countdown    : 0 - 0 - 0
 Bedingung    : player distance SoldatX > 20
 Bei Akt.     : NichtFeuern_1 = true
 Bei Deak.    : NichtFeuern_1 = false
Vienna ist offline  
Alt 27.04.2014, 16:05   #3 (permalink)
Newbie
 
Registriert seit: 15.04.2014
Beiträge: 45
Standard

Danke, hat mir geholfen.
__________________
Ich möchte gerne die Welt verändern, doch Gott gibt den Quellcode nicht frei.
marc_book 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


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