Mitspieler Online

· Gäste: 29

· Mitspieler Online: 0

Login

Benutzername

Passwort



Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.

Ereignisse

<< April 2024 >>
Mo Di Mi Do Fr Sa So
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          
Morgen: Weitere...:

Social

Thema ansehen

 Thema drucken
[Scriptpakete] FL Functions
04.08.2020 um 21:35

Top  #1  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Veraltet!

Hier entlang bitte: W_FNC

-----------------------------------------------------------------------------------------------------

FL Functions

  1. MIL_fnc installieren
  2. FL_fnc herunterladen, in den Missionsordner kopieren und in fl_fnc umbennen.

Die Beschreibungen in diesem Thread dienen der Intuition und genügen, um die Funktionen zu verwenden.
Für erweiterte Konfigurationen einfach einen Blick in die Doc-Strings der einzelnen sqf-Dateien werfen.


Diese Scripts ändern das Verhalten der KI nicht.
Sämtlicher Code versucht nur, den "Vanilla-Weg" der Befehlsgebung an die KI einzuhalten. Das Revealing macht nichts anderes, als performant und durch den MB gut kontrollierbar den knowsAbout Value ausgewählter Einheiten zu ändern. Dadurch ändert sich die Informiertheit der KI, was die "Intelligenz" und die Kampfentfernungen deutlich steigern kann.

Reveal-Trigger

Spoiler:
Motivation:
Ich wollte, dass die KI einen bestimmten Bereich sehr dynamisch und pro-aktiv gegen den Spieler verteidigen kann, ohne, dass spezielle Routen festgelegt, oder andere sehr spezifische Hacks angewendet werden müssen.
Um das zu erreichen, habe ich mit guarded Points und Waypoint:Guard experimentiert.
Wunschlos glücklich wurde ich mit der Synergie aus den Beiden und einem knows about value == 1.5, der nun durch den Reveal-Trigger verwirklicht werden kann.

Verwendung:

Schritt 1:
Das Herstück des Frameworks ist es, sog. Reveal-Trigger (siehe On Activaton) zu definieren:
[img]https://i.imgur.com/M8TJRz0.jpg[/img] is not a valid Image.

Solch ein Trigger muss nur einmalig auf dem Server ausgeführt werden.
Da der Trigger im Bild auf BLUFOR steht, werden die Gruppen derjenigen BLUFOR Units, die den Bereich dieses Triggers betreten, an die KI mit einem knows about value == 1.5 revealt werden.
Dies geschieht alle 30 Sekunden. Jedes Mal wird geprüft, ob neue BLUFOR Units in den Bereich eingetreten sind, welche anschließend ebenfalls an die KI revealed werden.

[thisTrigger, 1.5, false, 600] call FL_fnc_reveal_trigger;


Mit diesem Code in der On-Activation würde das Revealing automatisch nach 600 Sekunden beendet. Damit entfällt dann Schritt 3!

Schritt 2:
Dieser Schritt erzeugt die Reveal-Struktur im Hintergrund und ist wenigstens für eine Gruppe nötig, bevor der Reveal-Trigger funktionieren kann.
Und er spezifiziert, an welche KI Gruppen dieser Reveal-Trigger revealen soll (Dopplungen werden zugunsten der Performance verhindert).
_groups = _some_spawn_params call MIL_fnc_spawnhandler;   
["bramar_reveal_1", _groups] call FL_fnc_setRevealTo;


Oder in der Init eine Gruppe im Editor:
["bramar_reveal_1", [this]] call FL_fnc_setRevealTo;


Wichtig ist, zu beachten, dass als erstes Argument der Triggername verwendet wird, der das Revealing an diese Gruppen übernehmen soll.
Gruppen können immer noch hinzugefügt werden, auch, wenn der Trigger bereits aktiviert wurde und das Revealing schon läuft.

Schritt 3:
Will man das Revealing erst zu einem ganz bestimmten Zeitpunkt beenden, dann geht das so:
"bramar_reveal_1" call FL_fnc_deleteRevealStruct;


Mit diesem Code wird das Aufdecken gestoppt und die Variablen sowie Event-Handler, die für den Trigger mit dem gegebenen Namen benötigt wurden, werden gelöscht.

Aber natürlich NICHT die zugehörigen KI-Gruppen selbst. Diese erhalten einfach keine Informationen mehr.


ADDON: Remote-Reveal-Triger:

Motivation:
Nicht immer passt ein großer Reveal-Trigger zum Gelände. Gute Avenues of Approaches sollten belohnt und der Spieler dort entsprechend nicht der KI aufgeklärt werden.
Bspw. können so Flussdeltas vom Revealing ausgeschlossen, oder bestimmte Berge in der Ferne eingeschlossen werden.
Dazu kann nun einem Reveal-Trigger ein Remote-Reveal-Trigger zugewiesen werden, der dem Reveal-Trigger ein weiteres Gebiet zuweist.

Verwendung:
Schritt 1:
Erstelle einen Remote-Reveal-Trigger:
  1. Variablennamen (bspw. my_spotter_1)
  2. Activation: Seite des Spielers (bspw. BLUFOR)
  3. Activation Type: Present
  4. Server Only
  5. On-Activation:
    [thisTrigger, "bramar_reveal_1"] call FL_fnc_remoteRevealTrigger;



Schritt 2:
Ergänze die Condition des Haupt-Reveal-Triggers mit "start_variableNameOfMyRevealTrigger", so dass:
this || start_bramar_reveal_1


So können der Remote-Reveal-Trigger aus Schritt 1, oder beliebig viele weitere mit dem Reveal-Trigger "bramar_reveal_1" verknüpft werden.


Spawn-Wrapper

Spoiler:
Motivation:
Nutzt man die MIL_fnc benötigt man für jeden Spawn sehr viele Parameter von denen sich aber nur wenige pro Spawn ändern. Die anderen sind eher als Konstante zu betrachten. Der Code schreibt sich leichter und liest sich besser, wenn man die 'Konstanten' von den Veränderlichen kapselt.
Außerdem kann für Reveal-Trigger der Name der Reveal-Struktur in den Spawnprozess eingebracht werden, wenn sich die Einheit nicht im Bereich des Reveal-Triggers befindet, aber trotzdem Informationen erhalten soll. Zu guter Letzt wollte ich stets alle gespawnten Units auch als Zeus steuer- und sichtbar haben (vor Allem auf dem Server).

Verwendung:

Schritt 1:
In der initServer.sqf muss eine Vorbereitung getroffen werden:
// Standard configuration of enemy AI for this mission
private _mil_spawnhandler_enemy_params =  [
   nil,                //0. prefix
   nil,                //1. number of groups
   nil,                //2. array of positions
   east,             //3. side
   "ins",             //4. faction, must be defined in MIL_factions
   nil,               //5. array containing units with roles -> impacts setPylonLoadOut
   0,               //6. radius (m) of spawn -> 0 is exact position
   "eng_fr",            //7. language of KI, default "silent"
   "persian",         //8. group of faces
   false,            //9. bool for makeup
   0.8,               //10. int overall skill
   [0.7,0.7],          //11. precision array [LowestPossibleValue, HighestPossibleValue]
   true               //12. bool for hc spawn
];


Das registriert die standard - beachte die nil-Argumente - Spawnparameter (MIL_fnc), die vom Spawn-Wrapper künftig verwendet werden. Man kann auch weitere Standard-Spawnparameter registrieren.

Schritt 2:
Spawnen:
["cool_squad", [(getMarkerPos "nice_place")], mySquadConfig, "myRevealTrigger"] call FL_fnc_spawnWrapper;



Standardmäßig werden die zuerst registrierten Parameter verwendet.
Hat man bspw. zwei Spawnparameter registriert, dann verwendet man die Zweiten durch den Index 1 als letztes Argument:
["cool_squad_other_faction", [(getMarkerPos "shitty_place")], mySquadConfig, nil,nil,nil 1] call FL_fnc_spawnWrapper;





Optional:
Hat man nun gespawnt, möchte man auf die Gruppen auch komfortabel zugreifen können.
Dazu einfach das Prefix vom Spawning dieser Funktion übergeben:
private _groups = ["cool_squad"] call FL_fnc_getGroups;


Hat man bspw. 5 Gruppen mit dem Prefix "cool_squad" gespawnt, erhält man nun alle 5.
Die Funktion sichert dabei auch Verzögerungen durch das Netzwerk ab, denn meist sind die Gruppen nicht sofort nach ihrem Spawn auf dem HC verfügbar.

Optional:
'mySquadConfig' (siehe Code) kann man sich ebenfalls einmal in der initServer.sqf definieren:
mySquadConfig= [
      [["sql"],"SERGEANT"],
      [["tl"],"CORPORAL"],
      [["ar"],"PRIVATE"],
      [["gren"],"PRIVATE"],
      [["rfl"],"PRIVATE"],
      [["tl"],"CORPORAL"],
      [["ar"],"PRIVATE"],
      [["gren"],"PRIVATE"],
      [["rfl"],"PRIVATE"]
];




ADDON: Marker-Sets:

Motivation:
Diese Funktion wurde eingebaut, um das Balancing beim Bau der Mission zu erleichtern.
Es kann damit hier und da noch schnell ein Spawn hinzuzufügt oder reduziert werden, nur durch kopieren oder entfernen eines Markers und ohne zwischen den Versuchen das Skript anfassen zu müssen.

Verwendung:
Schritt 1:
initServer.sqf:
[["bramar","other_markernames_beginning"]] call FL_fnc_registerMarkerSets;


Schritt 2:
Irgendein Skript auf dem Server:
private _positions = ["bramar","qrf"] call FL_fnc_getPositions;
["bramar_qrf", _positions, squad, "bramar_reveal_1"] remoteExecCall ["FL_fnc_spawnWrapper",HC];


Angenommen im Editor sind die Marker
bramar_qrf_1, bramar_qrf_2, ..., bramar_qrf_5

platziert.
Dann wird mit diesen zwei Schritten dort jeweils ein Squad gespawnt (und erhält Infos vom Reveal-Trigger "bramar_reveal_1", usw.).


Multitask-Trigger

Spoiler:
Motivation:
Es sollen möglichst einfach per Trigger KI-Gruppen, samt spezifischer Wegpunkte/ Tasks, nachgespawnt und entschieden werden können, ob der Spieler im Trigger an die KI revealt werden soll oder nicht.
Da die Parameter für die verschiedenen Aufgaben zum größten Teil gleich sind, wurden frühere Trigger, wie Guard-, Patrol- und Ambush-Trigger unter diesem Neuen zusammengefasst.
Bspw. kann so hervorragend die aktive oder passive Verteidigung eines Compounds erzielt werden.
Außerdem könnte so auch simuliert werden, dass die KI während laufender Gefechte "die Stellung hält" und "abwartet", bis der Spieler die mit dem Trigger versehenen Bereiche betritt.

Beschreibung:
Jeder der folgenden Tasks erhält standardisierte Parameter, sodass er ohne weiter konfiguration erst Mal verwendet werden kann.
Bei besonderen Wünschen kann wahlweise das vollständige Parameter-Array für den spezifischen Task mit übergeben werden.
Bspw. für den Fall, dass man einen CBA- oder LAMBS-Befehl exakt konfigurieren möchte.

"GUARD", "SAD", "MOVE_GUARD":
  1. Beliebig viele gruppen werden an gegebenen Positionen mit Hilfe der MIL_fnc gespawnt
  2. Auf Wunsch wird der Trigger zum Reveal-Trigger
  3. Die KI erhält einmalig entsprechende Wegpunkte

"AMBUSH":
  1. Beliebig viele gruppen werden an gegebenen Positionen mit Hilfe der MIL_fnc gespawnt
  2. Die Spieler werden zwangsweise aufgeklärt.
  3. Search and destroy-Wegpunkte werden alle 15 Sekunden auf den nächst gelegenen Spieler gesetzt
  4. Wird die KI vernichtet, wird das Rvealing automatisch beendet

"LAMBS_RUSH", "LAMBS_CAMP", "PATROL_CBA", "DEFEND_CBA", "SEARCH_CBA":
  1. Beliebig viele gruppen werden an gegebenen Positionen mit Hilfe der MIL_fnc gespawnt
  2. Die KI führt entsprechende Aufgabe aus

"NO_TASK":
  1. Beliebig viele gruppen werden an gegebenen Positionen mit Hilfe der MIL_fnc gespawnt
  2. Die KI hat erhält keine konkrete Aufgabe


Verwendung:

Schritt 1:
Siehe Spawn-Wrapper 1. Schritt.

Schritt 2:
Das Herstück ist wieder einen Trigger wie folgt zu definieren ('Variable Name' nicht vergessen!):
[img]https://i.imgur.com/4HdeKIX.jpg[/img] is not a valid Image.
[thisTrigger, [[2817.37,1057.63,0]], fireteam, "MY_TASK_CHOICE"] call FL_fnc_multiTaskTrigger;


Statt "MY_TASK_CHOICE" muss natürlich aus "GUARD", "SAD", "NO_TASK", "AMBUSH" oder "LAMBS_RUSH" gewählt werden.
Falls sich der Trigger nicht schon innerhalb eines großen, aktiven Reveal Triggers befindet, kann das Revealing für diesen Triggerbereich durch ein simples 'true' zugeschaltet werden:
[thisTrigger, [[2817.37,1057.63,0]], fireteam, "SAD", nil, true] call FL_fnc_multiTaskTrigger;


Übergibt man statt dem 'true' den Variablennamen eines Reveal-Triggers ("bramar_reveal_1"), wird dieser Mulittask-Trigger statt zu einem eigenständigen Reveal-Trigger zu einem Remote-Reveal-Trigger.
So könnten bspw. Wachposten an bestimmten Punkten simuliert werden, die sozusagen die Wachen am Schutzobjekt alamieren und die Position an diese durchgeben.

Wichtig ist an dieser Stelle die Ausführung auf dem HC, bzw. dort wo die KI Gruppen Lokal sind!
Sämtliche Gruppen sind dann im Weiteren via 'super_task_trigger_1_1, super_task_trigger_1_2, ..., super_task_trigger_1_n' verfügbar, je nachdem wie viele gespawnt wurden.


Vehicle-Spawn-Wrapper

Spoiler:

Beschreibung:
Spawn Einheiten und ein Fahrzeug.
Lässt die Einheiten einsteigen und führt auf Wunsch zusätzlich einen Task aus.

Verwendung:

Schritt 1:
Siehe Spawn-Wrapper 1. Schritt.

Schritt 2:
Platziere Marker im Eden-Editor:
"altis_airport_technical_1","altis_airport_technical_2",...,"altis_airport_technical_n"

In der initServer.sqf:
[["altis_airport"]] call FL_fnc_registerMarkerSets;


Schritt 3:
Beispielsweise in einem Trigger, oder in sonstigem Skript:
[
   ["altis_airport","technical"],
   myGroupConfig,
   "my_reveal_trigger_name",
   "UK3CB_TKM_O_Datsun_Pkm",
   "PATROL_CBA"
] call FL_fnc_createVehicleCrewTask;




Phasenverwaltung

Spoiler:
Motivation:
Trigger verwalten den Zugang zur Funktionalität in einer Mission.
Leider werden es oft viele und man kann sich nicht immer sicher sein, dass die Spieler nur jene Trigger aktivieren, die für den aktuellen Zeitpunkt im Missionsverlauf vorgesehen sind. Unverhofft werden andere Trigger ausgelöst und plötzlich stimmt bspw. das Kräfteverhältnis von KI und Spieler nicht mehr. Außerdem benötigt die kontinuierliche auswertung jedes Triggers Leistung auf dem Server.

Mit der Phasenverwaltung kann man nun Kompilationen an Triggern einem einzelnen, wenn man so möchte, Objective-Trigger zuordnen.
Erst wenn dieser Objective-Trigger ausgelöst hat, werden die Trigger der nachfolgenden Triggerkompilation freigeschaltet und vom Server ausgewertet.

Verwendung:
Schritt 1:
Registrierung der Kompilation und dem zugehörigen Objective-Trigger in der initServer.sqf:
private _my_trigger_compilation = [first_objective, main_spawns, patrol_1, ambush_1, ambush_2, my_reveal_trigger];
[first_objective, _my_trigger_compilation ] call FL_fnc_registerPhase;



Man kann beliebig viele dieser Phasen registrieren. Die Reihenfolge der Registrierung legt dabei auch die Reihenfolge der zu erfüllenden Ziele fest.
Man kann auch einzelne Registrierungen auskommentieren, was die Trigger wieder unabhängig von den Objectives verfügbar macht.

Schritt 2:
Danach ruft man ganz kurz und knapp diese Zeile auf, welche die Phasenverwaltung initialisiert.
call FL_fnc_initPhases;


Kommentiert man diese Zeile aus, sind alle Trigger gewohnt in beliebiger Reihenfolge verfügbar.
Optional:
// ALL TRIGGERS
private _alltriggers = allMissionObjects "EmptyDetector";
// set frequency of trigger condition evaluation
_alltriggers apply {_x setTriggerInterval 5};


Dadurch werden Trigger grundsätzlich nur alle 5 Sekunden ausgewertet.
Einzelnen kann natürlich nachträglich noch ein anderes Intervall zugewiesen werden.

Schritt 3:
Und mal wieder die entsprechende Zeile im Objective-Trigger
[img]https://i.imgur.com/PHn9MnS.jpg[/img] is not a valid Image.


KI vorplatzieren

Spoiler:
Motivation:
Es gibt viele Szenarien in denen man KI ganz präzise im Editor vorplatzieren will und sich wünscht, dass sie dort die Stellung inklusive ihrer Körperhaltung hält und so auch den Kampf aufnimmt. Bspw. im Häuserkampf, bei Straßensperren, Hinterhlaten, usw..
Mit folgenden Einstellungen, die vollständig im Editor (mit W_Missionsbau, unabh. von FL Functions) vorgenommen werden können, lässt sich das problemlos und leistungsschonend umsetzen.
Damit die KI auch wirklich so schön und rechtzeitig (wie im Bild) auf den Spieler feuert, kann ich nur empfehlen, zusätzlich den Reveal-Trigger zu verwenden. Damit dreht sich die KI dann auch automatisch in Richtung des nächst gelegenen Spielers/Feindes.

[img]https://i.imgur.com/ScCHotc.jpg[/img] is not a valid Image.

Verwendung:
Im Editor die betreffende Gruppe auswählen und folgendes in ihre init kopieren:
[this] call FL_fnc_stayOnspot;


Die vorplatzierte KI darf leider im Nachhinein nicht mehr auf den HC transferiert werden, da sonst ihre Konfiguration verloren geht.
Bearbeitet von Felix am 05.01.2021 um 19:51
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
08.08.2020 um 18:34

Top  #2  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Ambush-Trigger: einfach zu erstellende und präzise Hinterhalte!
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
08.08.2020 um 20:03

Top  #3  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Spawn-Wrapper: weniger Veränderliche, einfaches Revealing und mehr Zeus
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
08.08.2020 um 20:54

Top  #4  Beitrag drucken

MasterJ

Benutzeravatar
Super Tucano Ace

Hat den ersten Platz in der TvT Super Tucano gewonnen.

Forenprofi


Beiträge: 1266

Registriert am: 02.10.15

Können wir uns die Tage (naja momentan hab ich alles andere als Zeit) zusammen setzen?
Das verspricht ein top Tool für Konvoi-Orgas bzw. aufgesessener Kampf zu sein.
Tja das (ArmA-)Leben ist nunmal kein (Hollywood-)Ponyhof...

Mother of Achievments

Missionsmitschnitte

Erstes Event
08.08.2020 um 20:57

Top  #5  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Mit dir setzt ich mich immer gern zusammen ^^
Aber ja, dafür lässt sich das wunderbar verwenden!
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
12.08.2020 um 13:42

Top  #6  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Update:
  • Refactoring
  • Multiple Standard-Spawnparameter (bspw. für Feind-/Freund-KI - siehe Anleitung oder Doc-Strings)
  • Besserer Ambush-Trigger (außerdem jetzt mit Option für LAMBS rush)
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
12.08.2020 um 15:24

Top  #7  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Reveal-Trigger können nun zusätzlich an alle Feindeinheiten im Gebiet revealen. Diese werden jeden zyklus aktualisiert und neu hinzugekommene anschließend berücksichtigt. D.h. wenn man nicht an KI von außerhalb des Trigger-Gebiets revealen will, dann braucht man dieser beim Spawn nicht explizit einen Reveal-Trigger zuweisen.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
13.08.2020 um 00:32

Top  #8  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Falls tatsächlich schon wer damit arbietet:
Update mit Fix für Multiplayer
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
15.08.2020 um 14:35

Top  #9  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Patrol-Triggers mit revealing!
Und sonstige Verbesserungen (Ambush-Trigger)
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
15.08.2020 um 21:27

Top  #10  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Phasenverwaltung veröffentlicht
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
19.08.2020 um 14:14

Top  #11  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Ambush-Trigger AI verfolgt nun den Spieler indem sie alle 20 Sekunden den geographisch am nächsten gelegenen Spieler angreift.

Bugfix für die Revealstrukturen: sind nun Key-Value-Pair besierend statt Index-basierend Whistle
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
19.08.2020 um 16:37

Top  #12  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Das Löschen eines Reveal-Triggers kann jetzt elegant beim Erstellen per Argument getimed werden, oder wie gewohnt von Hand zu einem beliebigen Zeitpunkt ausgeführt werden. Siehe Beschreibung Reveal-Trigger.
Dadurch schlankerer Code in Patrol- und Ambush-Trigger.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
22.08.2020 um 02:32

Top  #13  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Release der in der Hinterland genutzten Versionen
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
17.09.2020 um 11:26

Top  #14  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Kleines Tutorial, wie man KI samt Körperhaltung vorplatzieren kann und diese dann den Kampf aufnimmt, ohne ihre Position oder Körperhaltung zu ändern (oder auch nur ändern zu wollen!).
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
19.09.2020 um 12:39

Top  #15  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Guard-Trigger zum einfachen Nachspawnen von KI inklusive Waypoints.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
20.09.2020 um 15:05

Top  #16  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Guard- und Ambush-Trigger wurden unter Mulittask-Trigger zusammengefasst.
Es gibt neue Task-Optionen und es kann nun grundsätzlich immer entschieden werden, ob das Revealing zugeschaltet werden soll, oder nicht.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
22.09.2020 um 10:11

Top  #17  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Remote Reveal Trigger ermöglichen jetzt statt großen vollständig revealten Gebieten das Berücksichtigen von zusätzlichen spezifischen Gebieten.
Dadruch können gute Avenues of Aproach vom Revealing ausgeschlossen und bspw. Berge oder Dächer eingeschlossen werden.

Nach einem Update muss in der Mission nichts angepasst werden.

Die Remote-Reveal-Trigger können einfach gemäß Anleitung (unter Reveal-Trigger) hinzugefügt werden.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
23.09.2020 um 20:19

Top  #18  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Starke Erweiterung des Multitask-Triggers.

Es können nun folgende Befehle ohne weitere Konfiguration mit Standardparametern ausgeführt werden:

"GUARD",
"SAD",
"AMBUSH",
"LAMBS_RUSH", "LAMBS_CAMP",
"PATROL_CBA", "DEFEND_CBA", "SEARCH_CBA",
"NO_TASK"

Wahlweise auch mit eigenen spezifischen Argumenten für den jeweiligen Befehl.

Dadurch soll das dynamische Nachspawnen von KI maximal erleichtert werden.

Weitere können/sollen auf Wunsch eingebaut werden.
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
27.09.2020 um 19:32

Top  #19  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Mulittask-Trigger können jetzt auch zu Remote-Reveal-Triggern werden, statt nur eigenständige Reveal-Trigger.

So können bspw. komfortrabel Wachposten an bestimmten Punkten gespawnt werden, die nur spawnen, wenn der Spieler auch diese Route wählt und die dann sozusagen die Wachen am Schutzobjekt alamieren und die Position an diese durchgeben.

Außerdem ist das Hinzufügen von Remote-Reveal-Triggern vereinfacht worden.
Es muss nun nicht mehr für jeden Remote-Reveal-Trigger die Condition des Haupt-Reveal-Triggers geändert werden.
Bearbeitet von Felix am 27.09.2020 um 20:07
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
11.10.2020 um 12:36

Top  #20  Beitrag drucken

Felix

Benutzeravatar
Moderator


Beiträge: 695

Registriert am: 07.06.14

Achtung, Supression bitte doch nicht zwingend bei der vorplatzierten KI abschalten um sie an Ort und Stelle zu halten - da habe ich beim Testen ein Fehler gemacht.

https://community.bistudio.com/wiki/Arma_3_Suppression

Edit: falls jemand den Code verwendet, es gab diverse Verfeinerungen - ein Update würde nicht schaden
forum.gruppe-w.de/pics/Foren_Signaturen/Felix.png
Squadlead Guide v2
W-Functions
Missionsbau von Null
"Einer für Alle, Alle für einen."
"Immer für die Sache, nie gegen den Menschen."
"In der Ruhe liegt die Kraft."
Springe ins Forum:
Seitenaufbau in 1.76 Sekunden
Serverzeit: 08:50:16 Uhr , 53,983,091 eindeutige Besuche