Spezialeinheit Luchs
KI Gruppen Limit - Druckversion

+- Spezialeinheit Luchs (https://spezialeinheit-luchs.de)
+-- Forum: Öffentliches (https://spezialeinheit-luchs.de/forumdisplay.php?fid=20)
+--- Forum: Tutorials und Technik (https://spezialeinheit-luchs.de/forumdisplay.php?fid=16)
+--- Thema: KI Gruppen Limit (/showthread.php?tid=400)



KI Gruppen Limit - Dennis - 26.11.2018

Hallo,
Nach der All of Kerama Mission wurde deutlich, dass es bei manchen längeren/größeren Missionen Probleme mit dem spawnen von KI gibt.

Arma hat das Problem, dass eine Einheit/Gruppe die Gestorben ist und vom Zeus gelöscht wurde immer noch in ein paar Zeilen code "Leer" existiert. (Ich kann aus dem simplen Grund, dass ich einfach keine Ahnung habe diesen Ablauf nicht zu 100% richtig darstellen. Sollte jemand mehr über diesen Ablauf wissen gerne Antworten)

Dies sollte Eigentlich kein Problem darstellen allerdings hat arma ein festes Limit von 288 Gruppen pro Seite. Sollte dieses Limits also überschritten werden ist es nicht mehr möglich weitere Einheiten zu spawnen. Angry

Ich habe nun im Internet 2 Lösungsansätze gefunden:

1. weniger unabhängige Einheiten und größere Gruppen für längere/größere Missionen (Eine Stadt 1 oder 2 Gruppen zum Besetzen)

2. während der Mission, wenn es schon zu spät ist und der Zeus keine Einheiten mehr setzen kann folgendes Script "On the fly" vom Server ausführen lassen "{ if(count units _x==0) then {deleteGroup _x} } forEach allGroups;"

Ich kenne mich leider wie schon Erwähnt selber nicht zu 100% mit dem Ablaufen des Löschens oder Sterbens in Arma aus bin allerdings selber schon oft im SP auf dieses Problem gestoßen und habe mir selber diese beiden Lösungen notiert und wollte vermeiden das wir in Zukunft in genanntes Problem laufen und die Infanterie keine Feinde mehr hat.

Des Weiteren sollten Mo-Missions Bauer sich nicht wirklich große Sorgen machen allerdings sind größere Gruppen auch Performance sparender, also tut eurer Infanterie den gefallen.  Tongue  

Gruß,
Dennis


RE: KI Gruppen Limit - Belbo - 26.11.2018

Es stimmt, dass je weniger Gruppen berechnet werden müssen, desto besser die Performance ist. Die Einheitenmenge ist deshalb weniger entscheidend, als die Gruppenmenge. Gerade Garnisonsgruppen sollte man deshalb möglichst groß machen (ob die Einheiten, die in einem Stützpunkt die Geschütze bemannen jetzt alle in einer Gruppe sind oder nicht, macht für das Spielerlebnis keinen Unterschied, für die Performance hingegen schon).

Missionen, die auf dem ADV-Missionstemplate aufgebaut sind, haben den von dir erwähnten Trick schon automatisch integriert:

adv_evh_emptyGroupsDeleter = addMissionEventHandler ["EntityKilled",{_grp = group (_this select 0);if ( count (units _grp) == 0 ) then { deleteGroup _grp };}];

Damit wird automatisch nach jeder getöten Einheit geprüft, ob deren Gruppe noch vorhanden ist und wenn nicht, dann wird diese gelöscht. Das ist nicht völlig idiotensicher, aber für 99% aller Arma-Missionen sollte das reichen. (Wenn der Zeus erst 288 Gruppen spawnt und diese dann alle löscht, ist er auch selbst schuld.)