Reverted to old allPlayers logic.
Do NOT use arrays to give a range for numbers of vehicles, aircraft or
static weps. This functionality is bugged.
Several minor bugs were corrected.
This commit is contained in:
Ghostrider-DbD- 2017-08-16 23:00:42 -04:00
parent 35263b75e6
commit f646fd9159
24 changed files with 206 additions and 138 deletions

View File

@ -1,10 +1,10 @@
////////////////////////////////////////////////////// //////////////////////////////////////////////////////
// Returns an array of all players on the server // Returns an array of all players on the server
/* /*
for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 8/12/17 Last Modified 8/16/17
-------------------------- --------------------------
License License
-------------------------- --------------------------
@ -17,11 +17,11 @@
private ["_result"]; private ["_result"];
/*
_result = []; _result = [];
{ {
if (isPlayer _x) then { _result pushback _x }; if (isPlayer _x && alive _x) then { _result pushback _x };
} forEach playableUnits; } forEach playableUnits;
*/
_result = allPlayers; //_result = allPlayers;
_result _result

View File

@ -1,6 +1,6 @@
/* /*
By Ghostrider-DbD- By Ghostrider-DbD-
Last modified 4-5-17 Last modified 8-15-17
-------------------------- --------------------------
License License
-------------------------- --------------------------
@ -39,6 +39,7 @@ while {true} do
{ {
_timer5sec = diag_tickTime; _timer5sec = diag_tickTime;
[] call blck_fnc_missionGroupMonitor; [] call blck_fnc_missionGroupMonitor;
//[] call blck_fnc_sm_checkForPlayerNearMission;
}; };
if (diag_tickTime - _timer20sec > 20) then if (diag_tickTime - _timer20sec > 20) then
{ {
@ -53,10 +54,13 @@ while {true} do
_timer1min = diag_tickTime; _timer1min = diag_tickTime;
[] call blck_fnc_spawnPendingMissions; [] call blck_fnc_spawnPendingMissions;
//[] call blck_fnc_missionGroupMonitor; //[] call blck_fnc_missionGroupMonitor;
/*
// No longer needed
if (_modType isEqualTo "Epoch") then if (_modType isEqualTo "Epoch") then
{ {
[] call blck_fnc_cleanEmptyGroups; [] call blck_fnc_cleanEmptyGroups;
}; // Exile cleans up empty groups automatically so this should not be needed with that mod. }; // Exile cleans up empty groups automatically so this should not be needed with that mod.
*/
}; };
if (blck_useTimeAcceleration) then if (blck_useTimeAcceleration) then
{ {

View File

@ -36,7 +36,7 @@ if (blck_debugLevel > 1) then
}; };
#endif #endif
_groupSpawned = createGroup blck_AI_Side; _groupSpawned = createGroup [blck_AI_Side, true]; // true here causes any empty group to be automatically deleted within 1 sec or so. https://community.bistudio.com/wiki/createGroup
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then if (blck_debugLevel > 1) then

View File

@ -245,13 +245,15 @@ if (blck_debugLevel > 0) then
}; };
#endif #endif
uiSleep 3;
_temp = [[],[],false]; _temp = [[],[],false];
_abort = false; _abort = false;
private["_patrolVehicles","_vehToSpawn"]; private["_patrolVehicles","_vehToSpawn"];
_vehToSpawn = [_noVehiclePatrols] call blck_fnc_getNumberFromRange; _vehToSpawn = [_noVehiclePatrols] call blck_fnc_getNumberFromRange;
diag_log format["_missionSpawner:: _vehToSpawn = %1",_vehToSpawn];
if (blck_useVehiclePatrols && (_vehToSpawn > 0)) then if (blck_useVehiclePatrols && (_vehToSpawn > 0)) then
{ {
_temp = [_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols; _temp = [_coords,_vehToSpawn,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
//[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols; //[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then { if (blck_debugLevel > 1) then {
@ -297,8 +299,10 @@ _abort = false;
if (blck_debugLevel > 0) then {diag_log format["missionSpawner:: (234) preparing to spawn emplaced weapons for _coords %4 | _markerClass %3 | blck_useStatic = %1 | _noEmplacedWeapons = %2",blck_useStatic,_noEmplacedWeapons,_markerClass,_coords];}; if (blck_debugLevel > 0) then {diag_log format["missionSpawner:: (234) preparing to spawn emplaced weapons for _coords %4 | _markerClass %3 | blck_useStatic = %1 | _noEmplacedWeapons = %2",blck_useStatic,_noEmplacedWeapons,_markerClass,_coords];};
#endif #endif
uiSleep 3;
private["_noEmplacedToSpawn"]; private["_noEmplacedToSpawn"];
_noEmplacedToSpawn = [_noEmplacedWeapons] call blck_fnc_getNumberFromRange; _noEmplacedToSpawn = [_noEmplacedWeapons] call blck_fnc_getNumberFromRange;
diag_log format["_missionSpawner:: _noEmplacedToSpawn = %1",_vehToSpawn];
if (blck_useStatic && (_noEmplacedToSpawn > 0)) then if (blck_useStatic && (_noEmplacedToSpawn > 0)) then
{ {
// params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"]; // params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"];
@ -349,6 +353,7 @@ if (_abort) exitWith
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission; [_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
}; };
uiSleep 3;
if (_allowReinforcements) then if (_allowReinforcements) then
{ {
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout; _weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
@ -360,20 +365,33 @@ if (_allowReinforcements) then
diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName]; diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
}; };
#endif #endif
private _noChoppers = 3; private _noChoppers = 0;
private _chancePara = 0.5;
switch (toLower _aiDifficultyLevel) do switch (toLower _aiDifficultyLevel) do
{ {
case "blue":{_noChoppers = [blck_noPatrolHelisBlue] call blck_fnc_getNumberFromRange}; case "blue":{
case "red":{_noChoppers = [blck_noPatrolHelisRed] call blck_fnc_getNumberFromRange}; _noChoppers = [blck_noPatrolHelisBlue] call blck_fnc_getNumberFromRange;
case "green":{_noChoppers = [blck_noPatrolHelisGreen] call blck_fnc_getNumberFromRange}; _chancePara = [blck_chanceParaBlue] call blck_fnc_getNumberFromRange;
case "orange":{_noChoppers = [blck_noPatrolHelisOrange] call blck_fnc_getNumberFromRange}; };
case "red":{
_noChoppers = [blck_noPatrolHelisRed] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaRed] call blck_fnc_getNumberFromRange;
};
case "green":{
_noChoppers = [blck_noPatrolHelisGreen] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaGreen] call blck_fnc_getNumberFromRange;
};
case "orange":{
_noChoppers = [blck_noPatrolHelisOrange] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaOrange] call blck_fnc_getNumberFromRange;
};
}; };
diag_log format["_missionSpawner:: _noChoppers = %1 && _chancePara = %2",_noChoppers,_chancePara];
for "_i" from 1 to (_noChoppers) do for "_i" from 1 to (_noChoppers) do
{ {
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"]; //params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements; _temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear,_chancePara] call blck_fnc_spawnMissionReinforcements;
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel >= 2) then if (blck_debugLevel >= 2) then

View File

@ -2,7 +2,7 @@
for DBD Clan for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 3-17-17 Last Modified 8-15-17
-------------------------- --------------------------
License License
@ -13,14 +13,17 @@
*/ */
#include "\q\addons\custom_server\Configs\blck_defines.hpp"; #include "\q\addons\custom_server\Configs\blck_defines.hpp";
//params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis"]; params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis",["_chanceParas",0]];
/*
_coords = _this select 0; _coords = _this select 0;
_skillAI = _this select 1; _skillAI = _this select 1;
_weapons = _this select 2; _weapons = _this select 2;
_uniforms = _this select 3; _uniforms = _this select 3;
_headGear = _this select 4; _headGear = _this select 4;
_helis = _this select 5; _helis = _this select 5;
*/
diag_log format["_fnc_spawnMissionHeli:: _this = %1",_this];
diag_log format["_fnc_spawnMissionHeli:: _helis = %1 && _chanceParas = %2",_helis,_chanceParas];
/* /*
Handles upper level functions of reinforcements utilizing helicoptor patrols and/or spawned from a helicopter. Handles upper level functions of reinforcements utilizing helicoptor patrols and/or spawned from a helicopter.
Calls on functions that spawn paratroops and/or loot chests at the heli's location. Calls on functions that spawn paratroops and/or loot chests at the heli's location.
@ -28,7 +31,7 @@ _helis = _this select 5;
Tasks are: Tasks are:
1) spawn a heli over the mission center. 1) spawn a heli over the mission center.
2) add crew and gunners 2) add crew and gunners
3) spawn paratroops 3) spawn paratroops if needed
4) configure waypointScript 4) configure waypointScript
5) return the _heli that was spawned. 5) return the _heli that was spawned.
*/ */
@ -41,6 +44,7 @@ if (blck_debugLevel > 0) then
private["_grpPilot","_chopperType","_patrolHeli","_launcherType","_unitPilot","_unitCrew","_mags","_turret","_return","_abort"]; private["_grpPilot","_chopperType","_patrolHeli","_launcherType","_unitPilot","_unitCrew","_mags","_turret","_return","_abort"];
_abort = false; _abort = false;
_grpParatroops = grpNull;
_grpPilot = createGroup blck_AI_Side; _grpPilot = createGroup blck_AI_Side;
if (isNull _grpPilot) then if (isNull _grpPilot) then
{ {
@ -48,13 +52,7 @@ if (isNull _grpPilot) then
_abort = true; _abort = true;
}; };
_grpParatroops = createGroup blck_AI_Side; if !(isNull _grpPilot) then
if (isNull _grpParatroops) then
{
diag_log "BLCK_ERROR: _fnc_spawnMissionHeli::_->> NULL GROUP Returned for _grpParatroops";
_abort = true;
};
if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
{ {
_grpPilot setBehaviour "COMBAT"; _grpPilot setBehaviour "COMBAT";
_grpPilot setCombatMode "RED"; _grpPilot setCombatMode "RED";
@ -70,8 +68,10 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
private["_supplyHeli"]; private["_supplyHeli"];
//create helicopter and spawn it //create helicopter and spawn it
_chopperType = selectRandom _helis; if (( typeName _helis) isEqualTo "ARRAY") then {_chopperType = selectRandom _helis}
else
{_chopperType = _helis};
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then if (blck_debugLevel > 1) then
{ {
@ -156,15 +156,23 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
}; };
#endif #endif
// params["_missionPos","_paraGroup",["_numAI",3],"_skillAI","_weapons","_uniforms","_headGear",["_heli",objNull],_grpParatroops]; if (random(1) < _chanceParas) then
//params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops",grpNull],["_heli",objNull]];
if !(isNull _grpParatroops) then
{ {
[_coords,_skillAI,_weapons,_uniforms,_headGear,_grpParatroops,_patrolHeli] call blck_fnc_spawnMissionParatroops; _grpParatroops = createGroup blck_AI_Side;
if (isNull _grpParatroops) then
{
diag_log "BLCK_ERROR: _fnc_spawnMissionHeli::_->> NULL GROUP Returned for _grpParatroops";
_abort = true;
};
// params["_missionPos","_paraGroup",["_numAI",3],"_skillAI","_weapons","_uniforms","_headGear",["_heli",objNull],_grpParatroops];
//params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops",grpNull],["_heli",objNull]];
if !(isNull _grpParatroops) then
{
[_coords,_skillAI,_weapons,_uniforms,_headGear,_grpParatroops,_patrolHeli] call blck_fnc_spawnMissionParatroops;
};
}; };
//set waypoint for helicopter //set waypoint for helicopter
[_coords,30,35,_grpPilot,"random","SENTRY"] spawn blck_fnc_setupWaypoints; [_coords,30,35,_grpPilot,"random","SAD"] spawn blck_fnc_setupWaypoints;
blck_monitoredMissionAIGroups pushBack _grpPilot; blck_monitoredMissionAIGroups pushBack _grpPilot;
#ifdef blck_debugMode #ifdef blck_debugMode
@ -186,7 +194,9 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
}; };
private["_ai"]; private["_ai"];
_ai = (units _grpParatroops) + (units _grpPilot); _ai = (units _grpPilot);
if !(isNull _grpParatroops) then {_ai = _ai + (units _grpParatroops);};
_return = [_patrolHeli,_ai,_abort]; _return = [_patrolHeli,_ai,_abort];
#ifdef blck_debugMode #ifdef blck_debugMode

View File

@ -19,12 +19,12 @@ params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops"
private["_grpParatroops","_chanceParatroops","_aborted","_return"]; private["_grpParatroops","_chanceParatroops","_aborted","_return"];
_aiSkillsLevel = toLower _aiSkillsLevel; _skillAI = toLower _skillAI;
_chanceParatroops = 0; _chanceParatroops = 0;
_noPara = 0; _noPara = 0;
_aborted = false; _aborted = false;
if (_aiSkillsLevel isEqualTo "blue") then { if (_skillAI isEqualTo "blue") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: BLUE difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: BLUE difficulty settings applied";};
@ -33,7 +33,7 @@ if (_aiSkillsLevel isEqualTo "blue") then {
_chanceParatroops = blck_chanceParaBlue; _chanceParatroops = blck_chanceParaBlue;
_noPara = blck_noParaBlue; _noPara = blck_noParaBlue;
}; };
if (_aiSkillsLevel isEqualTo "green") then { if (_skillAI isEqualTo "green") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: GREEN difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: GREEN difficulty settings applied";};
@ -42,7 +42,7 @@ if (_aiSkillsLevel isEqualTo "green") then {
_chanceParatroops = blck_chanceParaGreen; _chanceParatroops = blck_chanceParaGreen;
_noPara = blck_noParaGreen; _noPara = blck_noParaGreen;
}; };
if (_aiSkillsLevel isEqualTo "orange") then { if (_skillAI isEqualTo "orange") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: ORANGE difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: ORANGE difficulty settings applied";};
@ -51,7 +51,7 @@ if (_aiSkillsLevel isEqualTo "orange") then {
_chanceParatroops = blck_chanceParaOrange; _chanceParatroops = blck_chanceParaOrange;
_noPara = blck_noParaOrange; _noPara = blck_noParaOrange;
}; };
if (_aiSkillsLevel isEqualTo "red") then { if (_skillAI isEqualTo "red") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: RED difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: RED difficulty settings applied";};

View File

@ -1,8 +1,8 @@
/* /*
for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 3-17-17 Last Modified 8-16-17
-------------------------- --------------------------
License License
@ -13,12 +13,14 @@
*/ */
#include "\q\addons\custom_server\Configs\blck_defines.hpp"; #include "\q\addons\custom_server\Configs\blck_defines.hpp";
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"]; params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear",["_chancePara",0]];
/*
_coords = _this select 0; _coords = _this select 0;
_aiSkillsLevel = _this select 1; _aiSkillsLevel = _this select 1;
_weapons = _this select 2; _weapons = _this select 2;
_uniforms = _this select 3; _uniforms = _this select 3;
_headgear = _this select 4; _headgear = _this select 4;
*/
private["_chanceHeliPatrol","_return","_temp","_missionHelis"]; private["_chanceHeliPatrol","_return","_temp","_missionHelis"];
#ifdef blck_debugMode #ifdef blck_debugMode
@ -71,8 +73,8 @@ if ( (_chanceHeliPatrol > 0) && (random (1) < _chanceHeliPatrol) ) then // if he
diag_log "_fnc_spawnMissionReinforcements (64): calling _fnc_spawnMissionHeli to spawn heli and paratroops"; diag_log "_fnc_spawnMissionReinforcements (64): calling _fnc_spawnMissionHeli to spawn heli and paratroops";
}; };
#endif #endif
// params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis",["_chanceParas",0]];
_temp = [_coords,_aiSkillsLevel,_weapons,_uniforms,_headgear,_missionHelis] call blck_fnc_spawnMissionHeli; _temp = [_coords,_aiSkillsLevel,_weapons,_uniforms,_headgear,_missionHelis,_chancePara] call blck_fnc_spawnMissionHeli;
if (typeName _temp isEqualTo "ARRAY") then if (typeName _temp isEqualTo "ARRAY") then
{ {
_return = [_temp select 0, _temp select 1, _temp select 2]; _return = [_temp select 0, _temp select 1, _temp select 2];

View File

@ -12,8 +12,8 @@
*/ */
#include"\q\addons\custom_server\Configs\blck_defines.hpp"; #include"\q\addons\custom_server\Configs\blck_defines.hpp";
blck_debugON = true; blck_debugON = false;
blck_debugLevel = 3; // Sets level of detail for debugging info - WIP. blck_debugLevel = 0; // Sets level of detail for debugging info - WIP.
blck_minFPS = 10; blck_minFPS = 10;
//////////////////////////////////////////////// ////////////////////////////////////////////////

View File

@ -113,7 +113,7 @@
// The behavior of these can be linked to some degree to the spawning of patrolling helis. // The behavior of these can be linked to some degree to the spawning of patrolling helis.
// For example, if you always want a helicopter to spawn paratroops set the value 1. // For example, if you always want a helicopter to spawn paratroops set the value 1.
// Recommended that you disable paratroops if using muliple aircraft/vehicle patrols // Recommended that you disable paratroops if using muliple aircraft/vehicle patrols
blck_chanceParaBlue = 0; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission. blck_chanceParaBlue = 0; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission. This value can be a range as well [0.1,0.3]
blck_noParaBlue = 3; // [1-N] blck_noParaBlue = 3; // [1-N]
blck_chanceParaRed = 0; blck_chanceParaRed = 0;
@ -165,11 +165,11 @@
blck_chanceHeliPatrolGreen = 0.4; blck_chanceHeliPatrolGreen = 0.4;
blck_patrolHelisGreen = _blck_littleBirds; blck_patrolHelisGreen = _blck_littleBirds;
blck_noPatrolHelisGreen = [1,1]; blck_noPatrolHelisGreen = 1;
blck_chanceHeliPatrolOrange = 0.5; blck_chanceHeliPatrolOrange = 0.5;
blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas; blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas;
blck_noPatrolHelisOrange = [1,1]; blck_noPatrolHelisOrange = 1;
//////////////////// ////////////////////
// Enable / Disable Missions // Enable / Disable Missions
@ -233,8 +233,8 @@
// Mission Vehicle Settings // Mission Vehicle Settings
//////////////////// ////////////////////
//Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high //Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high
blck_SpawnVeh_Orange = [2,4]; // Number of static weapons at Orange Missions blck_SpawnVeh_Orange = 3; // Number of static weapons at Orange Missions
blck_SpawnVeh_Green = 2; // Number of static weapons at Green Missions blck_SpawnVeh_Green = 3; // Number of static weapons at Green Missions
blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions
blck_SpawnVeh_Red = 1; // Number of static weapons at Red Missions blck_SpawnVeh_Red = 1; // Number of static weapons at Red Missions
@ -251,8 +251,8 @@
//////////////////// ////////////////////
// Defines how many static weapons to spawn. Set this to -1 to disable spawning // Defines how many static weapons to spawn. Set this to -1 to disable spawning
blck_SpawnEmplaced_Orange = [2,4]; // Number of static weapons at Orange Missions blck_SpawnEmplaced_Orange = 3; // Number of static weapons at Orange Missions
blck_SpawnEmplaced_Green = 2; // Number of static weapons at Green Missions blck_SpawnEmplaced_Green = 3; // Number of static weapons at Green Missions
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
blck_SpawnEmplaced_Red = 1; // Number of static weapons at Red Missions blck_SpawnEmplaced_Red = 1; // Number of static weapons at Red Missions
@ -357,7 +357,7 @@
blck_MaxAI_Orange = 25; blck_MaxAI_Orange = 25;
blck_AIGrps_Orange = 5; blck_AIGrps_Orange = 5;
blck_SkillsOrange = [ blck_SkillsOrange = [
["aimingAccuracy",[0.45,0.56]],["aimingShake",[0.45,0.55]],["aimingSpeed",[0.65,0.75]],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00] ["aimingAccuracy",[0.25,0.36]],["aimingShake",[0.45,0.55]],["aimingSpeed",[0.65,0.75]],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
]; ];
// Green Missions // Green Missions
@ -365,7 +365,7 @@
blck_MaxAI_Green = 21; blck_MaxAI_Green = 21;
blck_AIGrps_Green = 4; blck_AIGrps_Green = 4;
blck_SkillsGreen = [ blck_SkillsGreen = [
["aimingAccuracy",[0.35,0.45]],["aimingShake",[0.4,0.5]],["aimingSpeed",[0.55,0.7]],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75] ["aimingAccuracy",[0.2,0.3]],["aimingShake",[0.4,0.5]],["aimingSpeed",[0.55,0.7]],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
]; ];
// Red Missions // Red Missions
@ -373,7 +373,7 @@
blck_MaxAI_Red = 15; blck_MaxAI_Red = 15;
blck_AIGrps_Red = 3; blck_AIGrps_Red = 3;
blck_SkillsRed = [ blck_SkillsRed = [
["aimingAccuracy",[0.25,0.35]],["aimingShake",[0.35,0.4]],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.6],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70] ["aimingAccuracy",[0.2,0.25]],["aimingShake",[0.35,0.4]],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.6],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
]; ];
// Blue Missions // Blue Missions

View File

@ -52,12 +52,12 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
//"Exile_Car_HMMWV_M134_Green", //"Exile_Car_HMMWV_M134_Green",
//"Exile_Car_HMMWV_M134_Desert", //"Exile_Car_HMMWV_M134_Desert",
//"Exile_Car_HMMWV_M134_Desert", //"Exile_Car_HMMWV_M134_Desert",
//"Exile_Car_HMMWV_M2_Desert", "Exile_Car_HMMWV_M2_Desert",
//"B_LSV_01_armed_F", "B_LSV_01_armed_F",
//"_MRAP_02_gmg_ghex_F", //"_MRAP_02_gmg_ghex_F",
//"O_MRAP_02_hmg_ghex_F", //"O_MRAP_02_hmg_ghex_F",
//"O_MRAP_03_gmg_ghex_F", //"O_MRAP_03_gmg_ghex_F",
"O_MRAP_03_hmg_ghex_F", //"O_MRAP_03_hmg_ghex_F",
"B_MBT_01_cannon_F", "B_MBT_01_cannon_F",
//"B_MBT_01_mlrs_base_F", //"B_MBT_01_mlrs_base_F",
"B_MBT_01_mlrs_F", "B_MBT_01_mlrs_F",

View File

@ -170,11 +170,11 @@
blck_chanceHeliPatrolGreen = 0.9999; blck_chanceHeliPatrolGreen = 0.9999;
blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks; blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks;
blck_noPatrolHelisGreen = 2; blck_noPatrolHelisGreen = 2; //[1,3];
blck_chanceHeliPatrolOrange = 0.9999; blck_chanceHeliPatrolOrange = 0.9999;
blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters; blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters;
blck_noPatrolHelisOrange = 3; blck_noPatrolHelisOrange = 3; //[2,3];
//////////////////// ////////////////////
// Enable / Disable Missions // Enable / Disable Missions
@ -238,8 +238,8 @@
// Mission Vehicle Settings // Mission Vehicle Settings
//////////////////// ////////////////////
//Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high //Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high
blck_SpawnVeh_Orange = [3,5]; // Number of static weapons at Orange Missions blck_SpawnVeh_Orange = 4; //[3,5]; // Number of static weapons at Orange Missions
blck_SpawnVeh_Green = [3,4]; // Number of static weapons at Green Missions blck_SpawnVeh_Green = 3; //[3,4]; // Number of static weapons at Green Missions
blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions
blck_SpawnVeh_Red = 2; // Number of static weapons at Red Missions blck_SpawnVeh_Red = 2; // Number of static weapons at Red Missions
@ -256,8 +256,8 @@
//////////////////// ////////////////////
// Defines how many static weapons to spawn. Set this to -1 to disable spawning // Defines how many static weapons to spawn. Set this to -1 to disable spawning
blck_SpawnEmplaced_Orange = [3,5]; // Number of static weapons at Orange Missions blck_SpawnEmplaced_Orange = 4; //[3,5]; // Number of static weapons at Orange Missions
blck_SpawnEmplaced_Green = [3,4]; // Number of static weapons at Green Missions blck_SpawnEmplaced_Green = 3; //[3,4]; // Number of static weapons at Green Missions
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
blck_SpawnEmplaced_Red = 2; // Number of static weapons at Red Missions blck_SpawnEmplaced_Red = 2; // Number of static weapons at Red Missions

View File

@ -1,3 +1,3 @@
private ["_version","_versionDate"]; private ["_version","_versionDate"];
_blck_version = "6.61 Build 71"; _blck_version = "6.61 Build 72";
_blck_versionDate = "8-13-17 9:00 PM"; _blck_versionDate = "8-15-17 9:00 PM";

View File

@ -1,10 +1,10 @@
////////////////////////////////////////////////////// //////////////////////////////////////////////////////
// Returns an array of all players on the server // Returns an array of all players on the server
/* /*
for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 8/12/17 Last Modified 8/16/17
-------------------------- --------------------------
License License
-------------------------- --------------------------
@ -17,11 +17,11 @@
private ["_result"]; private ["_result"];
/*
_result = []; _result = [];
{ {
if (isPlayer _x) then { _result pushback _x }; if (isPlayer _x && alive _x) then { _result pushback _x };
} forEach playableUnits; } forEach playableUnits;
*/
_result = allPlayers; //_result = allPlayers;
_result _result

View File

@ -1,6 +1,6 @@
/* /*
By Ghostrider-DbD- By Ghostrider-DbD-
Last modified 4-5-17 Last modified 8-15-17
-------------------------- --------------------------
License License
-------------------------- --------------------------
@ -39,6 +39,7 @@ while {true} do
{ {
_timer5sec = diag_tickTime; _timer5sec = diag_tickTime;
[] call blck_fnc_missionGroupMonitor; [] call blck_fnc_missionGroupMonitor;
//[] call blck_fnc_sm_checkForPlayerNearMission;
}; };
if (diag_tickTime - _timer20sec > 20) then if (diag_tickTime - _timer20sec > 20) then
{ {
@ -53,10 +54,13 @@ while {true} do
_timer1min = diag_tickTime; _timer1min = diag_tickTime;
[] call blck_fnc_spawnPendingMissions; [] call blck_fnc_spawnPendingMissions;
//[] call blck_fnc_missionGroupMonitor; //[] call blck_fnc_missionGroupMonitor;
/*
// No longer needed
if (_modType isEqualTo "Epoch") then if (_modType isEqualTo "Epoch") then
{ {
[] call blck_fnc_cleanEmptyGroups; [] call blck_fnc_cleanEmptyGroups;
}; // Exile cleans up empty groups automatically so this should not be needed with that mod. }; // Exile cleans up empty groups automatically so this should not be needed with that mod.
*/
}; };
if (blck_useTimeAcceleration) then if (blck_useTimeAcceleration) then
{ {

View File

@ -36,7 +36,7 @@ if (blck_debugLevel > 1) then
}; };
#endif #endif
_groupSpawned = createGroup blck_AI_Side; _groupSpawned = createGroup [blck_AI_Side, true]; // true here causes any empty group to be automatically deleted within 1 sec or so. https://community.bistudio.com/wiki/createGroup
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then if (blck_debugLevel > 1) then

View File

@ -245,13 +245,15 @@ if (blck_debugLevel > 0) then
}; };
#endif #endif
uiSleep 3;
_temp = [[],[],false]; _temp = [[],[],false];
_abort = false; _abort = false;
private["_patrolVehicles","_vehToSpawn"]; private["_patrolVehicles","_vehToSpawn"];
_vehToSpawn = [_noVehiclePatrols] call blck_fnc_getNumberFromRange; _vehToSpawn = [_noVehiclePatrols] call blck_fnc_getNumberFromRange;
diag_log format["_missionSpawner:: _vehToSpawn = %1",_vehToSpawn];
if (blck_useVehiclePatrols && (_vehToSpawn > 0)) then if (blck_useVehiclePatrols && (_vehToSpawn > 0)) then
{ {
_temp = [_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols; _temp = [_coords,_vehToSpawn,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
//[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols; //[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then { if (blck_debugLevel > 1) then {
@ -297,8 +299,10 @@ _abort = false;
if (blck_debugLevel > 0) then {diag_log format["missionSpawner:: (234) preparing to spawn emplaced weapons for _coords %4 | _markerClass %3 | blck_useStatic = %1 | _noEmplacedWeapons = %2",blck_useStatic,_noEmplacedWeapons,_markerClass,_coords];}; if (blck_debugLevel > 0) then {diag_log format["missionSpawner:: (234) preparing to spawn emplaced weapons for _coords %4 | _markerClass %3 | blck_useStatic = %1 | _noEmplacedWeapons = %2",blck_useStatic,_noEmplacedWeapons,_markerClass,_coords];};
#endif #endif
uiSleep 3;
private["_noEmplacedToSpawn"]; private["_noEmplacedToSpawn"];
_noEmplacedToSpawn = [_noEmplacedWeapons] call blck_fnc_getNumberFromRange; _noEmplacedToSpawn = [_noEmplacedWeapons] call blck_fnc_getNumberFromRange;
diag_log format["_missionSpawner:: _noEmplacedToSpawn = %1",_vehToSpawn];
if (blck_useStatic && (_noEmplacedToSpawn > 0)) then if (blck_useStatic && (_noEmplacedToSpawn > 0)) then
{ {
// params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"]; // params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"];
@ -349,6 +353,7 @@ if (_abort) exitWith
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission; [_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
}; };
uiSleep 3;
if (_allowReinforcements) then if (_allowReinforcements) then
{ {
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout; _weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
@ -360,20 +365,33 @@ if (_allowReinforcements) then
diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName]; diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
}; };
#endif #endif
private _noChoppers = 3; private _noChoppers = 0;
private _chancePara = 0.5;
switch (toLower _aiDifficultyLevel) do switch (toLower _aiDifficultyLevel) do
{ {
case "blue":{_noChoppers = [blck_noPatrolHelisBlue] call blck_fnc_getNumberFromRange}; case "blue":{
case "red":{_noChoppers = [blck_noPatrolHelisRed] call blck_fnc_getNumberFromRange}; _noChoppers = [blck_noPatrolHelisBlue] call blck_fnc_getNumberFromRange;
case "green":{_noChoppers = [blck_noPatrolHelisGreen] call blck_fnc_getNumberFromRange}; _chancePara = [blck_chanceParaBlue] call blck_fnc_getNumberFromRange;
case "orange":{_noChoppers = [blck_noPatrolHelisOrange] call blck_fnc_getNumberFromRange}; };
case "red":{
_noChoppers = [blck_noPatrolHelisRed] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaRed] call blck_fnc_getNumberFromRange;
};
case "green":{
_noChoppers = [blck_noPatrolHelisGreen] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaGreen] call blck_fnc_getNumberFromRange;
};
case "orange":{
_noChoppers = [blck_noPatrolHelisOrange] call blck_fnc_getNumberFromRange;
_chancePara = [blck_chanceParaOrange] call blck_fnc_getNumberFromRange;
};
}; };
diag_log format["_missionSpawner:: _noChoppers = %1 && _chancePara = %2",_noChoppers,_chancePara];
for "_i" from 1 to (_noChoppers) do for "_i" from 1 to (_noChoppers) do
{ {
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"]; //params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements; _temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear,_chancePara] call blck_fnc_spawnMissionReinforcements;
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel >= 2) then if (blck_debugLevel >= 2) then

View File

@ -2,7 +2,7 @@
for DBD Clan for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 3-17-17 Last Modified 8-15-17
-------------------------- --------------------------
License License
@ -13,14 +13,17 @@
*/ */
#include "\q\addons\custom_server\Configs\blck_defines.hpp"; #include "\q\addons\custom_server\Configs\blck_defines.hpp";
//params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis"]; params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis",["_chanceParas",0]];
/*
_coords = _this select 0; _coords = _this select 0;
_skillAI = _this select 1; _skillAI = _this select 1;
_weapons = _this select 2; _weapons = _this select 2;
_uniforms = _this select 3; _uniforms = _this select 3;
_headGear = _this select 4; _headGear = _this select 4;
_helis = _this select 5; _helis = _this select 5;
*/
diag_log format["_fnc_spawnMissionHeli:: _this = %1",_this];
diag_log format["_fnc_spawnMissionHeli:: _helis = %1 && _chanceParas = %2",_helis,_chanceParas];
/* /*
Handles upper level functions of reinforcements utilizing helicoptor patrols and/or spawned from a helicopter. Handles upper level functions of reinforcements utilizing helicoptor patrols and/or spawned from a helicopter.
Calls on functions that spawn paratroops and/or loot chests at the heli's location. Calls on functions that spawn paratroops and/or loot chests at the heli's location.
@ -28,7 +31,7 @@ _helis = _this select 5;
Tasks are: Tasks are:
1) spawn a heli over the mission center. 1) spawn a heli over the mission center.
2) add crew and gunners 2) add crew and gunners
3) spawn paratroops 3) spawn paratroops if needed
4) configure waypointScript 4) configure waypointScript
5) return the _heli that was spawned. 5) return the _heli that was spawned.
*/ */
@ -41,6 +44,7 @@ if (blck_debugLevel > 0) then
private["_grpPilot","_chopperType","_patrolHeli","_launcherType","_unitPilot","_unitCrew","_mags","_turret","_return","_abort"]; private["_grpPilot","_chopperType","_patrolHeli","_launcherType","_unitPilot","_unitCrew","_mags","_turret","_return","_abort"];
_abort = false; _abort = false;
_grpParatroops = grpNull;
_grpPilot = createGroup blck_AI_Side; _grpPilot = createGroup blck_AI_Side;
if (isNull _grpPilot) then if (isNull _grpPilot) then
{ {
@ -48,13 +52,7 @@ if (isNull _grpPilot) then
_abort = true; _abort = true;
}; };
_grpParatroops = createGroup blck_AI_Side; if !(isNull _grpPilot) then
if (isNull _grpParatroops) then
{
diag_log "BLCK_ERROR: _fnc_spawnMissionHeli::_->> NULL GROUP Returned for _grpParatroops";
_abort = true;
};
if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
{ {
_grpPilot setBehaviour "COMBAT"; _grpPilot setBehaviour "COMBAT";
_grpPilot setCombatMode "RED"; _grpPilot setCombatMode "RED";
@ -70,8 +68,10 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
private["_supplyHeli"]; private["_supplyHeli"];
//create helicopter and spawn it //create helicopter and spawn it
_chopperType = selectRandom _helis; if (( typeName _helis) isEqualTo "ARRAY") then {_chopperType = selectRandom _helis}
else
{_chopperType = _helis};
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugLevel > 1) then if (blck_debugLevel > 1) then
{ {
@ -156,15 +156,23 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
}; };
#endif #endif
// params["_missionPos","_paraGroup",["_numAI",3],"_skillAI","_weapons","_uniforms","_headGear",["_heli",objNull],_grpParatroops]; if (random(1) < _chanceParas) then
//params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops",grpNull],["_heli",objNull]];
if !(isNull _grpParatroops) then
{ {
[_coords,_skillAI,_weapons,_uniforms,_headGear,_grpParatroops,_patrolHeli] call blck_fnc_spawnMissionParatroops; _grpParatroops = createGroup blck_AI_Side;
if (isNull _grpParatroops) then
{
diag_log "BLCK_ERROR: _fnc_spawnMissionHeli::_->> NULL GROUP Returned for _grpParatroops";
_abort = true;
};
// params["_missionPos","_paraGroup",["_numAI",3],"_skillAI","_weapons","_uniforms","_headGear",["_heli",objNull],_grpParatroops];
//params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops",grpNull],["_heli",objNull]];
if !(isNull _grpParatroops) then
{
[_coords,_skillAI,_weapons,_uniforms,_headGear,_grpParatroops,_patrolHeli] call blck_fnc_spawnMissionParatroops;
};
}; };
//set waypoint for helicopter //set waypoint for helicopter
[_coords,30,35,_grpPilot,"random","SENTRY"] spawn blck_fnc_setupWaypoints; [_coords,30,35,_grpPilot,"random","SAD"] spawn blck_fnc_setupWaypoints;
blck_monitoredMissionAIGroups pushBack _grpPilot; blck_monitoredMissionAIGroups pushBack _grpPilot;
#ifdef blck_debugMode #ifdef blck_debugMode
@ -186,7 +194,9 @@ if (!(isNull _grpPilot) && !(isNull _grpParatroops)) then
}; };
private["_ai"]; private["_ai"];
_ai = (units _grpParatroops) + (units _grpPilot); _ai = (units _grpPilot);
if !(isNull _grpParatroops) then {_ai = _ai + (units _grpParatroops);};
_return = [_patrolHeli,_ai,_abort]; _return = [_patrolHeli,_ai,_abort];
#ifdef blck_debugMode #ifdef blck_debugMode

View File

@ -19,12 +19,12 @@ params["_coords","_skillAI","_weapons","_uniforms","_headGear",["_grpParatroops"
private["_grpParatroops","_chanceParatroops","_aborted","_return"]; private["_grpParatroops","_chanceParatroops","_aborted","_return"];
_aiSkillsLevel = toLower _aiSkillsLevel; _skillAI = toLower _skillAI;
_chanceParatroops = 0; _chanceParatroops = 0;
_noPara = 0; _noPara = 0;
_aborted = false; _aborted = false;
if (_aiSkillsLevel isEqualTo "blue") then { if (_skillAI isEqualTo "blue") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: BLUE difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: BLUE difficulty settings applied";};
@ -33,7 +33,7 @@ if (_aiSkillsLevel isEqualTo "blue") then {
_chanceParatroops = blck_chanceParaBlue; _chanceParatroops = blck_chanceParaBlue;
_noPara = blck_noParaBlue; _noPara = blck_noParaBlue;
}; };
if (_aiSkillsLevel isEqualTo "green") then { if (_skillAI isEqualTo "green") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: GREEN difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: GREEN difficulty settings applied";};
@ -42,7 +42,7 @@ if (_aiSkillsLevel isEqualTo "green") then {
_chanceParatroops = blck_chanceParaGreen; _chanceParatroops = blck_chanceParaGreen;
_noPara = blck_noParaGreen; _noPara = blck_noParaGreen;
}; };
if (_aiSkillsLevel isEqualTo "orange") then { if (_skillAI isEqualTo "orange") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: ORANGE difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: ORANGE difficulty settings applied";};
@ -51,7 +51,7 @@ if (_aiSkillsLevel isEqualTo "orange") then {
_chanceParatroops = blck_chanceParaOrange; _chanceParatroops = blck_chanceParaOrange;
_noPara = blck_noParaOrange; _noPara = blck_noParaOrange;
}; };
if (_aiSkillsLevel isEqualTo "red") then { if (_skillAI isEqualTo "red") then {
#ifdef blck_debugMode #ifdef blck_debugMode
if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: RED difficulty settings applied";}; if (blck_debugON) then {diag_log "_fnc_spawnMissionParatroops: RED difficulty settings applied";};

View File

@ -1,8 +1,8 @@
/* /*
for DBD Clan
By Ghostrider-DBD- By Ghostrider-DBD-
Copyright 2016 Copyright 2016
Last Modified 3-17-17 Last Modified 8-16-17
-------------------------- --------------------------
License License
@ -13,12 +13,14 @@
*/ */
#include "\q\addons\custom_server\Configs\blck_defines.hpp"; #include "\q\addons\custom_server\Configs\blck_defines.hpp";
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"]; params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear",["_chancePara",0]];
/*
_coords = _this select 0; _coords = _this select 0;
_aiSkillsLevel = _this select 1; _aiSkillsLevel = _this select 1;
_weapons = _this select 2; _weapons = _this select 2;
_uniforms = _this select 3; _uniforms = _this select 3;
_headgear = _this select 4; _headgear = _this select 4;
*/
private["_chanceHeliPatrol","_return","_temp","_missionHelis"]; private["_chanceHeliPatrol","_return","_temp","_missionHelis"];
#ifdef blck_debugMode #ifdef blck_debugMode
@ -71,8 +73,8 @@ if ( (_chanceHeliPatrol > 0) && (random (1) < _chanceHeliPatrol) ) then // if he
diag_log "_fnc_spawnMissionReinforcements (64): calling _fnc_spawnMissionHeli to spawn heli and paratroops"; diag_log "_fnc_spawnMissionReinforcements (64): calling _fnc_spawnMissionHeli to spawn heli and paratroops";
}; };
#endif #endif
// params["_coords","_skillAI","_weapons","_uniforms","_headGear","_helis",["_chanceParas",0]];
_temp = [_coords,_aiSkillsLevel,_weapons,_uniforms,_headgear,_missionHelis] call blck_fnc_spawnMissionHeli; _temp = [_coords,_aiSkillsLevel,_weapons,_uniforms,_headgear,_missionHelis,_chancePara] call blck_fnc_spawnMissionHeli;
if (typeName _temp isEqualTo "ARRAY") then if (typeName _temp isEqualTo "ARRAY") then
{ {
_return = [_temp select 0, _temp select 1, _temp select 2]; _return = [_temp select 0, _temp select 1, _temp select 2];

View File

@ -12,8 +12,8 @@
*/ */
#include"\q\addons\custom_server\Configs\blck_defines.hpp"; #include"\q\addons\custom_server\Configs\blck_defines.hpp";
blck_debugON = true; blck_debugON = false;
blck_debugLevel = 3; // Sets level of detail for debugging info - WIP. blck_debugLevel = 0; // Sets level of detail for debugging info - WIP.
blck_minFPS = 10; blck_minFPS = 10;
//////////////////////////////////////////////// ////////////////////////////////////////////////

View File

@ -113,7 +113,7 @@
// The behavior of these can be linked to some degree to the spawning of patrolling helis. // The behavior of these can be linked to some degree to the spawning of patrolling helis.
// For example, if you always want a helicopter to spawn paratroops set the value 1. // For example, if you always want a helicopter to spawn paratroops set the value 1.
// Recommended that you disable paratroops if using muliple aircraft/vehicle patrols // Recommended that you disable paratroops if using muliple aircraft/vehicle patrols
blck_chanceParaBlue = 0; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission. blck_chanceParaBlue = 0; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission. This value can be a range as well [0.1,0.3]
blck_noParaBlue = 3; // [1-N] blck_noParaBlue = 3; // [1-N]
blck_chanceParaRed = 0; blck_chanceParaRed = 0;
@ -165,11 +165,11 @@
blck_chanceHeliPatrolGreen = 0.4; blck_chanceHeliPatrolGreen = 0.4;
blck_patrolHelisGreen = _blck_littleBirds; blck_patrolHelisGreen = _blck_littleBirds;
blck_noPatrolHelisGreen = [1,1]; blck_noPatrolHelisGreen = 1;
blck_chanceHeliPatrolOrange = 0.5; blck_chanceHeliPatrolOrange = 0.5;
blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas; blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas;
blck_noPatrolHelisOrange = [1,1]; blck_noPatrolHelisOrange = 1;
//////////////////// ////////////////////
// Enable / Disable Missions // Enable / Disable Missions
@ -233,8 +233,8 @@
// Mission Vehicle Settings // Mission Vehicle Settings
//////////////////// ////////////////////
//Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high //Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high
blck_SpawnVeh_Orange = [2,4]; // Number of static weapons at Orange Missions blck_SpawnVeh_Orange = 3; // Number of static weapons at Orange Missions
blck_SpawnVeh_Green = 2; // Number of static weapons at Green Missions blck_SpawnVeh_Green = 3; // Number of static weapons at Green Missions
blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions
blck_SpawnVeh_Red = 1; // Number of static weapons at Red Missions blck_SpawnVeh_Red = 1; // Number of static weapons at Red Missions
@ -251,8 +251,8 @@
//////////////////// ////////////////////
// Defines how many static weapons to spawn. Set this to -1 to disable spawning // Defines how many static weapons to spawn. Set this to -1 to disable spawning
blck_SpawnEmplaced_Orange = [2,4]; // Number of static weapons at Orange Missions blck_SpawnEmplaced_Orange = 3; // Number of static weapons at Orange Missions
blck_SpawnEmplaced_Green = 2; // Number of static weapons at Green Missions blck_SpawnEmplaced_Green = 3; // Number of static weapons at Green Missions
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
blck_SpawnEmplaced_Red = 1; // Number of static weapons at Red Missions blck_SpawnEmplaced_Red = 1; // Number of static weapons at Red Missions
@ -357,7 +357,7 @@
blck_MaxAI_Orange = 25; blck_MaxAI_Orange = 25;
blck_AIGrps_Orange = 5; blck_AIGrps_Orange = 5;
blck_SkillsOrange = [ blck_SkillsOrange = [
["aimingAccuracy",[0.45,0.56]],["aimingShake",[0.45,0.55]],["aimingSpeed",[0.65,0.75]],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00] ["aimingAccuracy",[0.25,0.36]],["aimingShake",[0.45,0.55]],["aimingSpeed",[0.65,0.75]],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
]; ];
// Green Missions // Green Missions
@ -365,7 +365,7 @@
blck_MaxAI_Green = 21; blck_MaxAI_Green = 21;
blck_AIGrps_Green = 4; blck_AIGrps_Green = 4;
blck_SkillsGreen = [ blck_SkillsGreen = [
["aimingAccuracy",[0.35,0.45]],["aimingShake",[0.4,0.5]],["aimingSpeed",[0.55,0.7]],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75] ["aimingAccuracy",[0.2,0.3]],["aimingShake",[0.4,0.5]],["aimingSpeed",[0.55,0.7]],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
]; ];
// Red Missions // Red Missions
@ -373,7 +373,7 @@
blck_MaxAI_Red = 15; blck_MaxAI_Red = 15;
blck_AIGrps_Red = 3; blck_AIGrps_Red = 3;
blck_SkillsRed = [ blck_SkillsRed = [
["aimingAccuracy",[0.25,0.35]],["aimingShake",[0.35,0.4]],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.6],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70] ["aimingAccuracy",[0.2,0.25]],["aimingShake",[0.35,0.4]],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.6],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
]; ];
// Blue Missions // Blue Missions

View File

@ -52,12 +52,12 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
//"Exile_Car_HMMWV_M134_Green", //"Exile_Car_HMMWV_M134_Green",
//"Exile_Car_HMMWV_M134_Desert", //"Exile_Car_HMMWV_M134_Desert",
//"Exile_Car_HMMWV_M134_Desert", //"Exile_Car_HMMWV_M134_Desert",
//"Exile_Car_HMMWV_M2_Desert", "Exile_Car_HMMWV_M2_Desert",
//"B_LSV_01_armed_F", "B_LSV_01_armed_F",
//"_MRAP_02_gmg_ghex_F", //"_MRAP_02_gmg_ghex_F",
//"O_MRAP_02_hmg_ghex_F", //"O_MRAP_02_hmg_ghex_F",
//"O_MRAP_03_gmg_ghex_F", //"O_MRAP_03_gmg_ghex_F",
"O_MRAP_03_hmg_ghex_F", //"O_MRAP_03_hmg_ghex_F",
"B_MBT_01_cannon_F", "B_MBT_01_cannon_F",
//"B_MBT_01_mlrs_base_F", //"B_MBT_01_mlrs_base_F",
"B_MBT_01_mlrs_F", "B_MBT_01_mlrs_F",

View File

@ -170,11 +170,11 @@
blck_chanceHeliPatrolGreen = 0.9999; blck_chanceHeliPatrolGreen = 0.9999;
blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks; blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks;
blck_noPatrolHelisGreen = 2; blck_noPatrolHelisGreen = 2; //[1,3];
blck_chanceHeliPatrolOrange = 0.9999; blck_chanceHeliPatrolOrange = 0.9999;
blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters; blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters;
blck_noPatrolHelisOrange = 3; blck_noPatrolHelisOrange = 3; //[2,3];
//////////////////// ////////////////////
// Enable / Disable Missions // Enable / Disable Missions
@ -238,8 +238,8 @@
// Mission Vehicle Settings // Mission Vehicle Settings
//////////////////// ////////////////////
//Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high //Defines how many AI Vehicles to spawn. Set this to -1 to disable spawning of static weapons or vehicles. To discourage players runniing with with vehicles, spawn more B_GMG_01_high
blck_SpawnVeh_Orange = [3,5]; // Number of static weapons at Orange Missions blck_SpawnVeh_Orange = 4; //[3,5]; // Number of static weapons at Orange Missions
blck_SpawnVeh_Green = [3,4]; // Number of static weapons at Green Missions blck_SpawnVeh_Green = 3; //[3,4]; // Number of static weapons at Green Missions
blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions blck_SpawnVeh_Blue = -1; // Number of static weapons at Blue Missions
blck_SpawnVeh_Red = 2; // Number of static weapons at Red Missions blck_SpawnVeh_Red = 2; // Number of static weapons at Red Missions
@ -256,8 +256,8 @@
//////////////////// ////////////////////
// Defines how many static weapons to spawn. Set this to -1 to disable spawning // Defines how many static weapons to spawn. Set this to -1 to disable spawning
blck_SpawnEmplaced_Orange = [3,5]; // Number of static weapons at Orange Missions blck_SpawnEmplaced_Orange = 4; //[3,5]; // Number of static weapons at Orange Missions
blck_SpawnEmplaced_Green = [3,4]; // Number of static weapons at Green Missions blck_SpawnEmplaced_Green = 3; //[3,4]; // Number of static weapons at Green Missions
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
blck_SpawnEmplaced_Red = 2; // Number of static weapons at Red Missions blck_SpawnEmplaced_Red = 2; // Number of static weapons at Red Missions

View File

@ -1,3 +1,3 @@
private ["_version","_versionDate"]; private ["_version","_versionDate"];
_blck_version = "6.61 Build 71"; _blck_version = "6.61 Build 72";
_blck_versionDate = "8-13-17 9:00 PM"; _blck_versionDate = "8-15-17 9:00 PM";