UPDATE:
Oh btw, just realised, I am using 2 scripts in the mission:
1. Civilian Vehicle Spawner by Zealot
zlt_civveh.sqf:
// v1d Civilian Vehicles from [STELS]Zealot
if (not isserver) exitwith {};
zlt_civveh_round = 0;
zlt_civveh_vehicles = [];
zlt_civveh_spawnedloc = [];
zlt_rnd_seed = 3;
zlt_fnc_random = {
private ["_a","_c","_m"];
_a = 75;
_c = 0;
_m = 65537;
zlt_rnd_seed = ( zlt_rnd_seed * _a + _c ) mod (_m);
(zlt_rnd_seed / _m) ;
};
zlt_fnc_selectrandom = {
_this select floor ( ([] call zlt_fnc_random) * count (_this));
};
zlt_fnc_civvehs = {
_debug = [_this, 1, false] call bis_fnc_param;
_lrange = _this select 2;
_cars = _this select 3;
_t1 = diag_ticktime;
_startpos= _this select 0;
_houses = _startpos nearobjects ["House",_lrange];
//_vehmax = _cars;
_vehmax = (round ((sqrt (count _houses)) * 0.5)) max 1;
_classes = ["C_Offroad_01_F"];
_vehs = 0;
_attemps = 0;
_class = _classes select 0;
zlt_rnd_seed = ((_startpos select 0) + (_startpos select 1) mod 65537);
while {_vehs < _vehmax and _attemps < 10} do {
//diag_log ["CV",_startpos, _lrange, _houses];
_house = _houses call zlt_fnc_selectrandom;
_housepos = _house modeltoworld [0,0,0];
_newpos = _housepos findEmptyPosition [ 3 , 15, _class ];
_houses = _houses - [_house];
if (count _newpos == 0) then {
_attemps = _attemps + 1;
} else {
_veh = _class createVehicle (_newpos ) ;
_veh setvariable ["zlt_civveh", true];
zlt_civveh_vehicles set [count zlt_civveh_vehicles, _veh];
_direction = (random 360);
_nearRoads = _newpos nearRoads 10;
if(count _nearRoads > 0) then
{
_road = _nearRoads select 0;
_roadConnectedTo = roadsConnectedTo _road;
if (count _roadConnectedTo > 0) then {
_connectedRoad = _roadConnectedTo select 0;
_direction = [_road, _connectedRoad] call BIS_fnc_DirTo;
};
};
_veh setdir _direction;
_attemps = 0;
_vehs = _vehs + 1;
if (_debug) then {
["crt"+str(_newpos), _newpos] call zlt_fnc_createmarkerlocal;
};
};
};
_t2 = diag_ticktime;
if (_debug) then {
diag_log str ["civeh.sqf", _t2-_t1];
};
};
zlt_civ_checkloop = {
zlt_civveh_notemptyloc = [];
{
_veh = vehicle _x;
_isInVeh = (vehicle _x != _x);
// or _veh getvariable ["zlt_civ_round", -1] != zlt_civveh_round
if (!_isInVeh || {_veh isKindOf "LandVehicle"}) then {
_dist = 1000;
_locations = nearestLocations [(getpos vehicle _x), ["NameCityCapital","NameCity","NameVillage"], _dist];
_locations2 = nearestLocations [(getpos vehicle _x), ["NameCityCapital","NameCity","NameVillage"], 2500];
{
if ( not (_x in zlt_civveh_spawnedloc) ) then {
_lrange = 50; _cars = 1;
switch (type _x) do {
case ("NameCityCapital") : {_lrange = 250; _cars = 7;};
case ("NameCity") : {_lrange = 150; _cars = 3;};
};
_pos = position _x;
[ [_pos select 0, _pos select 1, 0], false, _lrange, _cars] call zlt_fnc_civvehs;
zlt_civveh_spawnedloc pushBack _x;
// _x setside east;
};
} foreach _locations;
{
zlt_civveh_notemptyloc pushBack _x;
} foreach _locations2;
if (_isInVeh) then { _veh setvariable ["zlt_civ_round", zlt_civveh_round];};
};
} foreach (if (player in playableunits) then {playableunits} else {[player]});
{
_pos = [(position _x) select 0, (position _x) select 1, 0];
_ent = ( (_pos) nearEntities ["C_Offroad_01_F", 300] );
{
if ( _x getvariable ["zlt_civveh", false] and {count crew _x == 0 and fuel _x == 1}) then {
deletevehicle _x;
};
} foreach _ent;
zlt_civveh_spawnedloc = zlt_civveh_spawnedloc - [_x];
} foreach (zlt_civveh_spawnedloc-zlt_civveh_notemptyloc);
zlt_civveh_round = zlt_civveh_round + 1;
};
while {true} do {
//scan loop
sleep 3.4; //magic number
[] call zlt_civ_checkloop;
};
2. Loot Spawner by BangaBob:
LootInit.sqf:
if(isServer)then{
// Set probability of loot spawning 1-100%
_probability=50;
// Show loot position and type on map (Debugging)
_showLoot=true;
// Set Weapon loot: Primary weapons, secondary weapons, Sidearms.
weaponsLoot= ["arifle_MX_F","arifle_Katiba_F","arifle_Mk20_F","arifle_MXM_F","arifle_MXC_F","arifle_SDAR_F","arifle_TRG20_F","arifle_TRG21_F"];
// Set items: Weapon attachments, first-aid, Binoculars
itemsLoot= ["Rangefinder","Binocular","ToolKit","muzzle_snds_M","muzzle_snds_L","muzzle_snds_H_SW","muzzle_snds_H_MG","muzzle_snds_H","muzzle_snds_B","optic_Arco","optic_Aco","optic_Holosight","optic_Nightstalker","optic_Yorris","optic_tws","FirstAidKit","muzzle_snds_acp"];
// Set Clothing: Hats, Helmets, Uniforms
clothesLoot= ["H_Hat_camo","H_HelmetB_light","U_I_pilotCoveralls","H_Bandanna_camo","U_B_CombatUniform_mcam","U_B_CombatUniform_mcam_tshirt","U_BG_Guerilla1_1","U_BG_Guerilla2_1","U_C_Poloshirt_burgundy","U_I_CombatUniform"];
// Set Vests: Any vests
vestsLoot= ["V_Chestrig_blk","V_BandollierB_blk","V_HarnessO_brn","V_PlateCarrier1_blk","V_Press_F","V_TacVest_blk"];
// Set Backpacks: Any packpacks
backpacksLoot= ["B_AssaultPack_blk","B_AssaultPack_cbr","B_AssaultPack_khk","B_Carryall_cbr","B_Carryall_khk","B_Carryall_mcamo","B_FieldPack_blk","B_FieldPack_cbr","B_FieldPack_khk"];
// Exclude buildings from loot spawn. Use 'TYPEOF' to find building name
_exclusionList= ["Land_Pier_F","Land_Pier_small_F","Land_NavigLight","Land_LampHarbour_F"];
private ["_distance","_houseList"];
_mkr=(_this select 0);
_mkr setmarkerAlpha 0;
_pos=markerpos _mkr;
_mkrY= getmarkerSize _mkr select 0;
_mkrX= getmarkerSize _mkr select 1;
_distance=_mkrX;
if (_mkrY > _mkrX)
then {
_distance=_mkrY;
};
_houseList= _pos nearObjects ["House",_distance];
{
_house=_X;
if (!(typeOf _house in _exclusionList))
then {
for "_n" from 0 to 50 do {
_buildingPos=_house buildingpos _n;
if (str _buildingPos == "[0,0,0]") exitwith {};
if (_probability > random 100)
then {
null=[_buildingPos,_showLoot] execVM "spawnloot.sqf";
};
};
};
}foreach _houseList;
};//ISSERVER
spawnLoot.sqf:
if(isServer)then{
_pos= (_this select 0);
_pos0= (_pos select 0);
_pos1= (_pos select 1);
_pos2= (_pos select 2);
_showLoot= (_this select 1);
_BARREL = createVehicle ["Land_BarrelEmpty_F",[_pos0,_pos1,_pos2+0.1], [], 0, "can_Collide"];
sleep 0.5;
_holder = createVehicle ["groundweaponholder",[_pos0,_pos1,(getposATL _BARREL select 2)], [], 0, "can_Collide"];
deletevehicle _BARREL;
_type=floor (random 5);
if (_showLoot)
then {
_id=format ["%1",_pos];
_debug=createMarker [_id,GETPOS _holder];
_debug setMarkerShape "ICON";
_debug setMarkerType "hd_dot";
_debug setMarkerColor "ColorRed";
_txt=format ["%1",_type];
_debug setMarkerText _txt;
};
// Spawn Weapon
if (_type == 0)
then {
_weapon= weaponsLoot call bis_fnc_selectRandom;
_magazines = getArray (configFile / "CfgWeapons" / _weapon / "magazines");
_magazineClass = _magazines call bis_fnc_selectRandom;
_holder addWeaponCargoGlobal [_weapon, 1];
_holder addMagazineCargoGlobal [_magazineClass, 2];
};
// Spawn Magazines
if (_type == 1)
then {
_weapon= weaponsLoot call bis_fnc_selectRandom;
_magazines = getArray (configFile / "CfgWeapons" / _weapon / "magazines");
_magazineClass = _magazines call bis_fnc_selectRandom;
_holder addMagazineCargoGlobal [_magazineClass, 2];
};
// Spawn Items
if (_type == 2)
then {
_item= itemsLoot call bis_fnc_selectRandom;
_holder addItemCargoGlobal [_item, 1];
_clothing= clothesLoot call bis_fnc_selectRandom;
_holder addItemCargoGlobal [_clothing, 1];
};
// Spawn Vests
if (_type == 3)
then {
_vest= vestsLoot call bis_fnc_selectRandom;
_holder addItemCargoGlobal [_vest, 1];
};
// Spawn Backpacks
if (_type == 4)
then {
_backpack= backpacksLoot call bis_fnc_selectRandom;
_holder addBackpackCargoGlobal [_backpack, 1];
};
};//IsServer
Are any of these culprits? But they are an essential part of my mission. :(
SpyderBlack and Savage can you guys please give them a glance?
Regards