Jump to content
  • 0

Custom Static Crate timed with DZAI killed all AI


Cyrus

Question

Can anyone familiar with DZAI help me with a way to time my custom crates to respawn with DZAI custom static AI. I have the randomized crate spawn at server startup, and essentially will be looted once the base has been cleared from all AI. Currently it will "refill" the crate based on a sleep timer. I would like to have the crate refill once the next round of AI spawns based on these values set:

DZAI_respawnTimeMin = 300;
DZAI_respawnTimeMax = 600;

Any help will be appreciated. This is my current loot crate configuration. Thanks for @DAmNRelentless who guided me in creating this script.

Spoiler


if (isServer) then {
_vehicle_999999 = objNull;

	while {true} do {
		_refreshTime = 180;
		_this = createVehicle ["TKVehicleBox_EP1", [726.63354, 9610.8154, 0], [], 0, "CAN_COLLIDE"];
		_vehicle_999999 = _this;
		_this setDir 20;
		_vehicle_999999 setVariable ["ObjectID","1",true];
		_vehicle_999999 setVariable ["permaLoot",true];
		_vehicle_999999 allowDamage false;

		clearWeaponCargoGlobal _this;
		clearMagazineCargoGlobal _this;

		_weaponAmmoArray = [[["DMR_DZ",2],["20Rnd_762x51_DMR",5]],[["L115A3_DZ",2],["5Rnd_86x70_L115A1",5]],[["m107_DZ"],["10Rnd_127x99_m107",5]],[["PMC_AS50_scoped"],["5Rnd_127x99_as50",5]],[["M249_m145_EP1_DZE",2],["200Rnd_556x45_M249",5]]];
	
		_toolArray = [["ItemEtool",5],["ItemCrowbar",5]];

		_magazineArray = [["150Rnd_127x107_DSHKM",7],["150Rnd_127x108_KORD",7],["2000Rnd_762x51_M134",7],["CinderBlocks",20],["FoodCanRusPork",10],["FoodMRE",10],["ItemBriefcase100oz",2],["ItemComboLock",5],["ItemLightBulb",5],["ItemLockbox",2],["ItemMorphine",10],["ItemPainkiller",10],["ItemPole",2],["ItemSodaMzly",10],["ItemSodaR4z0r",10],["ItemVault",2],["cinder_door_kit",5],["cinder_garage_kit",5],["full_cinder_wall_kit",10],["metal_floor_kit",10],["ItemBloodbag",10]];

		_gemArray = [["ItemEmerald",2],["ItemSapphire",2],["ItemTopaz",2],["ItemCitrine",2],["ItemAmethyst",2]];


		_counterWeaponsAmmo = 0;

		while {_counterWeaponsAmmo < 5} do {
			_randomWeapAmmo = _weaponAmmoArray call BIS_fnc_selectRandom;
			_weaponAmmoArray = _weaponAmmoArray - _randomWeapAmmo;
			_weapon = _randomWeapAmmo select 0;
			_ammo = _randomWeapAmmo select 1;
			_randomAmmo = round(random(_ammo select 1));
			_ammo set[1,_randomAmmo];
			_this addWeaponCargoGlobal _weapon;
			_this addMagazineCargoGlobal _ammo;
			_counterWeaponsAmmo = _counterWeaponsAmmo + 1;
		};
	
		_counterTool = 0;
	
		while {_counterTool < 2} do {
			_randomTool = _toolArray call BIS_fnc_selectRandom;
			_tooldArray = _toolArray - _randomTool;
			_this addMagazineCargoGlobal _randomTool;
			_counterTool = _counterTool + 1;
		};
	
		_counterMagazine = 0;
	
		while {_counterMagazine < 25} do {
			_randomMagazine = _magazineArray call BIS_fnc_selectRandom;
			_magazineArray = _magazineArray - _randomMagazine;
			_this addMagazineCargoGlobal _randomMagazine;
			_counterMagazine = _counterMagazine + 1;
		};
	
		_counterGem = 0;
	
		while {_counterGem < 3} do {
			_randomGem = _gemArray call BIS_fnc_selectRandom;
			_gemArray = _gemArray - _randomGem;
			_this addMagazineCargoGlobal _randomGem;
			_counterGem = _counterGem + 1;
		};
	sleep _refreshTime;
	};
};

 

 

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Discord

×
×
  • Create New...