Arma 3 - Random Uniforms /Weapons for AI
In der Regel bin ich ziemlich faul was das Ausrüsten der AI angeht. In diesem Beispiel bediene ich mich aus Arma an sämtlichen Kleidungsstücken der Zivilisten und Waffen aus dem NIArms Waffenmod. Die Kleidungsstücke werden der AI zufällig zugewiesen, ebenso die Waffen. So bekomme ich verschiedenste Variationen an "Rebellen oder Aufständische" , welche nicht aussehen wie Militärs. Eher wie Zivilisten nur bewaffnet.
Dies erschwert Spielern zwar die Freund-Feinderkennung wegen der Zivilisten, welche auch noch da sind. Für Spieler des MilSim Bereichs sollte das kein Problem darstellen und sollten doch mehr Zivilisten am Boden liegen als erwartet, sollte man die Spielweise des oder der Spieler doch überdenken ...
Dieser Code wird einfach in die initServer.sqf eingefügt und kann natürlich nach Belieben angepaßt werden. Auch nachspawnende oder durch Zeus platzierte Einheiten werden umgehend angepaßt. In dieser Form betrifft es alle EAST Units!
[] spawn { if (isServer) then { while {true} do { sleep 0.1; { _unit = _x; private _var = _unit getvariable "hasGTuniform"; //Uniformen private _getUniform = [ "U_BG_leader", "U_BG_Guerrilla_6_1", "U_BG_Guerilla3_1", "U_B_T_Soldier_AR_F", "U_C_Mechanic_01_F", "U_I_C_Soldier_Camo_F", "U_C_HunterBody_grn", "U_I_G_Story_Protagonist_F", "U_BG_Guerilla2_2", "U_BG_Guerilla2_3", "U_I_C_Soldier_Bandit_2_F", "U_O_FullGhillie_lsh", "U_O_FullGhillie_sard" ] call BIS_fnc_selectRandom; //Kopfbedeckung private _getHeadgear = ["H_Bandanna_blu", "H_Bandanna_sand", "H_Bandanna_gry", "H_Bandanna_camo", "H_Booniehat_khk", "H_Booniehat_tan", "H_MilCap_blue", "H_MilCap_gry", "H_Cap_brn_SPECOPS", "H_PASGT_basic_black_F" ] call BIS_fnc_selectRandom; //Westen private _getVest = [ "V_Chestrig_rgr", "V_Chestrig_blk", "V_PlateCarrierL_CTRG", "V_PlateCarrierH_CTRG", "V_HarnessO_brn", "V_HarnessOGL_brn" ] call BIS_fnc_selectRandom; //Waffen //Achtung bei diesen Waffen ist die Mod NIArsenal erforderlich private _getWeapon = [ "hlc_rifle_slr107u_MTK", "hlc_rifle_ak74_dirty", "hlc_rifle_ak74m_gl", "hlc_rifle_rpk", "hlc_rifle_M14_Rail", "hlc_lmg_M249E2", "hlc_rifle_augsrcarb_b", "hlc_rifle_ACR68_SBR_black" ] call BIS_fnc_selectRandom; if(isNil "_var")then { _unit setVariable ["hasGTuniform",1,true]; removeAllWeapons _unit; removeAllItems _unit; removeAllAssignedItems _unit; removeUniform _unit; removeVest _unit; removeBackpack _unit; removeHeadgear _unit; removeGoggles _unit; _unit forceAddUniform _getUniform; _unit addVest _getVest; _unit addHeadgear _getHeadgear; _unit allowFleeing 0; //Achtung bei diesen Waffen ist die Mod NIArsenal erforderlich //Hier wird der Einheit je nach gewählter Zufallswaffe, die Waffe mit Munition übergeben if(_getWeapon == "hlc_rifle_ACR68_SBR_black")then { _unit addWeapon "hlc_rifle_ACR68_SBR_black"; _unit addPrimaryWeaponItem "hlc_muzzle_300blk_KAC"; for "_i" from 1 to 6 do {_unit addItemToVest "hlc_30rnd_68x43_FMJ";}; }; if(_getWeapon == "hlc_rifle_augsrcarb_b")then { _unit addWeapon "hlc_rifle_augsrcarb_b"; for "_i" from 1 to 7 do {_unit addItemToVest "hlc_30Rnd_556x45_B_AUG";}; }; if(_getWeapon == "hlc_lmg_M249E2")then { _unit addWeapon "hlc_lmg_M249E2"; _unit addItemToVest "hlc_200rnd_556x45_M_SAW"; _unit addBackpack "B_AssaultPack_rgr"; for "_i" from 1 to 2 do {_unit addItemToBackpack "hlc_200rnd_556x45_M_SAW";}; }; if(_getWeapon == "hlc_rifle_M14_Rail")then { _unit addWeapon "hlc_rifle_M14_Rail"; for "_i" from 1 to 4 do {_unit addItemToVest "hlc_20Rnd_762x51_B_M14";}; }; if(_getWeapon == "hlc_rifle_rpk")then { _unit addWeapon "hlc_rifle_rpk"; for "_i" from 1 to 3 do {_unit addItemToVest "hlc_75Rnd_762x39_AP_rpk";}; }; if(_getWeapon == "hlc_rifle_ak74m_gl")then { _unit addWeapon "hlc_rifle_ak74m_gl"; _unit addBackpack "B_AssaultPack_rgr"; for "_i" from 1 to 2 do {_unit addItemToVest "hlc_30Rnd_545x39_B_AK";}; for "_i" from 1 to 2 do {_unit addItemToBackpack "ACE_salineIV_250";}; for "_i" from 1 to 2 do {_unit addItemToBackpack "ACE_morphine";}; for "_i" from 1 to 5 do {_unit addItemToBackpack "ACE_packingBandage";}; _unit addItemToBackpack "ACE_bloodIV_250"; for "_i" from 1 to 2 do {_unit addItemToBackpack "ACE_epinephrine";}; for "_i" from 1 to 7 do {_unit addItemToBackpack "hlc_30Rnd_545x39_B_AK";}; for "_i" from 1 to 2 do {_unit addItemToBackpack "hlc_VOG25_AK";}; for "_i" from 1 to 2 do {_unit addItemToBackpack "hlc_GRD_White";}; _unit addItemToBackpack "APERSTripMine_Wire_Mag"; }; if(_getWeapon == "hlc_rifle_ak74_dirty")then { _unit addWeapon "hlc_rifle_ak74_dirty"; for "_i" from 1 to 6 do {_unit addItemToVest "hlc_30Rnd_545x39_B_AK";}; _unit addWeapon "launch_NLAW_F"; }; if(_getWeapon == "hlc_rifle_slr107u_MTK")then { _unit addWeapon "hlc_rifle_slr107u_MTK"; for "_i" from 1 to 6 do {_unit addItemToVest "hlc_30Rnd_762x39_b_ak";}; }; //Eine gewisse Grundausstattung wird der Einheit geben for "_i" from 1 to 2 do {_unit addItemToVest "HandGrenade";}; _unit addItemToVest "SmokeShellPurple"; _unit addItemToVest "SmokeShellRed"; sleep 0.5; } } forEach (allUnits select {side _x == EAST}); }; };//isServer };//spawn
Eine Kommentarfunktion ist in diesem Blog nicht vorgesehen.
Bei Problemen zum Skript bitte im Gametwitter.de Forum registieren und dort die Kommentarfunktion nutzen.