Support multiple air patrols, minor bug fixes.
This commit is contained in:
parent
e99d01dbbc
commit
374f7dfb91
@ -0,0 +1,433 @@
|
||||
/*
|
||||
Generic Mission Spawner
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last modified 4/11/17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
private ["_abort","_crates","_aiGroup","_objects","_groupPatrolRadius","_missionLandscape","_mines","_blck_AllMissionAI","_blck_localMissionMarker","_AI_Vehicles","_timeOut","_aiDifficultyLevel"];
|
||||
params["_coords","_mission",["_allowReinforcements",true]];
|
||||
diag_log format["_missionSpawner (18):: _allowReinforcements = %1",_allowReinforcements];
|
||||
|
||||
////////
|
||||
// set all variables needed for the missions
|
||||
// data is pulled either from the mission description or from the _mission variable passsed as a parameter
|
||||
// Deal with situations where some of these variables might not be defined as well.
|
||||
////////
|
||||
|
||||
// _mission params[_missionListOrange,_pathOrange,"OrangeMarker","orange",blck_TMin_Orange,blck_TMax_Orange];
|
||||
_markerClass = _mission select 2;
|
||||
_aiDifficultyLevel = _mission select 3;
|
||||
|
||||
if (blck_debugLevel > 0) then {diag_log format["_fnc_mainThread:: -->> _markerClass = %1",_markerClass];};
|
||||
|
||||
[_mission,"active",_coords] call blck_fnc_updateMissionQue;
|
||||
blck_ActiveMissionCoords pushback _coords;
|
||||
diag_log format["[blckeagls] missionSpawner (17):: Initializing mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
|
||||
private["_chanceHeliPatrol","_noPara","_reinforcementLootCounts","_chanceLoot","_heliCrew","_loadCratesTiming"];
|
||||
|
||||
if (isNil "_markerColor") then {_markerColor = "ColorBlack"};
|
||||
if (isNil "_markerType") then {_markerType = ["mil_box",[]]};
|
||||
//if (isNil "_timeOut") then {_timeOut = -1;};
|
||||
if (isNil "_loadCratesTiming") then {_loadCratesTiming = blck_loadCratesTiming}; // valid choices are "atMissionCompletion" and "atMissionSpawn";
|
||||
|
||||
private["_useMines","_blck_AllMissionAI","_delayTime","_groupPatrolRadius"];
|
||||
if (isNil "_useMines") then {_useMines = blck_useMines;};
|
||||
|
||||
_objects = [];
|
||||
_mines = [];
|
||||
_crates = [];
|
||||
_aiGroup = [];
|
||||
_missionAIVehicles = [];
|
||||
_blck_AllMissionAI = [];
|
||||
_AI_Vehicles = [];
|
||||
_blck_localMissionMarker = [_markerClass,_coords,"","",_markerColor,_markerType];
|
||||
_delayTime = 1;
|
||||
_groupPatrolRadius = 50;
|
||||
|
||||
if (blck_labelMapMarkers select 0) then
|
||||
{
|
||||
//diag_log "labeling map markers *****";
|
||||
_blck_localMissionMarker set [2, _markerMissionName];
|
||||
};
|
||||
if !(blck_preciseMapMarkers) then
|
||||
{
|
||||
//diag_log "Map marker will be OFFSET from the mission position";
|
||||
_blck_localMissionMarker set [1,[_coords,75] call blck_fnc_randomPosition];
|
||||
};
|
||||
_blck_localMissionMarker set [3,blck_labelMapMarkers select 1]; // Use an arrow labeled with the mission name?
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (91) message players and spawn a mission marker";};
|
||||
[["start",_startMsg,_blck_localMissionMarker select 2]] call blck_fnc_messageplayers;
|
||||
[_blck_localMissionMarker] execVM "debug\spawnMarker.sqf";
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (94) waiting for player to trigger the mission";};
|
||||
#endif
|
||||
////////
|
||||
// All parameters are defined, lets wait until a player is nearby or the mission has timed out
|
||||
////////
|
||||
|
||||
private["_wait","_missionStartTime","_playerInRange","_missionTimedOut"];
|
||||
_missionStartTime = diag_tickTime;
|
||||
_playerInRange = false;
|
||||
_missionTimedOut = false;
|
||||
_wait = true;
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (105) starting mission trigger loop"};
|
||||
|
||||
while {_wait} do
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
//diag_log "missionSpawner:: top of mission trigger loop";
|
||||
if (blck_debugLevel > 2) exitWith {_playerInRange = true;};
|
||||
#endif
|
||||
|
||||
if ([_coords, blck_TriggerDistance, false] call blck_fnc_playerInRange) exitWith {_playerInRange = true;};
|
||||
if ([_missionStartTime] call blck_fnc_timedOut) exitWith {_missionTimedOut = true;};
|
||||
uiSleep 5;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format["missionSpawner:: Trigger Loop - blck_debugLevel = %1 and _coords = %2",blck_debugLevel, _coords];
|
||||
diag_log format["missionSpawner:: Trigger Loop - players in range = %1",{isPlayer _x && _x distance2D _coords < blck_TriggerDistance} count allPlayers];
|
||||
diag_log format["missionSpawner:: Trigger Loop - timeout = %1", [_missionStartTime] call blck_fnc_timedOut];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
|
||||
if (_missionTimedOut) exitWith
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
// Deal with the case in which the mission timed out.
|
||||
//["timeOut",_endMsg,_blck_localMissionMarker select 2] call blck_fnc_messageplayers;
|
||||
blck_recentMissionCoords pushback [_coords,diag_tickTime];
|
||||
blck_ActiveMissionCoords = blck_ActiveMissionCoords - [ _coords];
|
||||
[_mission,"inactive",[0,0,0]] call blck_fnc_updateMissionQue;
|
||||
blck_missionsRunning = blck_missionsRunning - 1;
|
||||
[_blck_localMissionMarker select 0] call compile preprocessfilelinenumbers "debug\deleteMarker.sqf";
|
||||
//_blck_localMissionMarker set [1,[0,0,0]];
|
||||
//_blck_localMissionMarker set [2,""];
|
||||
[_objects, 0.1] spawn blck_fnc_cleanupObjects;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (105) Mission Timed Out: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
|
||||
////////
|
||||
// Spawn the mission objects, loot chest, and AI
|
||||
////////
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (112) -- >> Mission tripped: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (count _missionLootBoxes > 0) then
|
||||
{
|
||||
_crates = [_coords,_missionLootBoxes,_loadCratesTiming] call blck_fnc_spawnMissionCrates;
|
||||
}
|
||||
else
|
||||
{
|
||||
_crates = [_coords,[[selectRandom blck_crateTypes,[0,0,0],_crateLoot,_lootCounts]], _loadCratesTiming] call blck_fnc_spawnMissionCrates;
|
||||
|
||||
};
|
||||
|
||||
if (blck_cleanUpLootChests) then
|
||||
{
|
||||
_objects append _crates;
|
||||
};
|
||||
|
||||
//uisleep 2;
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (136) Crates Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
private ["_temp"];
|
||||
if (blck_SmokeAtMissions select 0) then // spawn a fire and smoke near the crate
|
||||
{
|
||||
_temp = [_coords,blck_SmokeAtMissions select 1] call blck_fnc_smokeAtCrates;
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_objects append _temp;
|
||||
};
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
if (_useMines) then
|
||||
{
|
||||
_mines = [_coords] call blck_fnc_spawnMines;
|
||||
//uiSleep _delayTime;;
|
||||
};
|
||||
uiSleep _delayTime;
|
||||
_temp = [];
|
||||
if (_missionLandscapeMode isEqualTo "random") then
|
||||
{
|
||||
_temp = [_coords,_missionLandscape, 3, 15, 2] call blck_fnc_spawnRandomLandscape;
|
||||
} else {
|
||||
_temp = [_coords, floor(random(360)),_missionLandscape,true] call blck_fnc_spawnCompositionObjects;
|
||||
//uiSleep 1;
|
||||
};
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_objects append _temp;
|
||||
};
|
||||
//diag_log format["_fnc_missionSpawner:: (181)->> _objects = %1",_objects];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (170) Landscape spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
uiSleep _delayTime;;
|
||||
|
||||
_temp = [_missionLootVehicles] call blck_fnc_spawnMissionLootVehicles;
|
||||
//uisleep 1;
|
||||
_crates append _temp;
|
||||
|
||||
uiSleep _delayTime;
|
||||
|
||||
_abort = false;
|
||||
_temp = [[],[],false];
|
||||
_temp = [_coords, _minNoAI,_maxNoAI,_aiDifficultyLevel,_uniforms,_headGear] call blck_fnc_spawnMissionAI;
|
||||
//[_coords, _minNoAI,_maxNoAI,_aiDifficultyLevel,_uniforms,_headGear] call blck_fnc_spawnMissionAI;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then {
|
||||
diag_log format["missionSpawner :: (185) blck_fnc_spawnMissionAI returned a value of _temp = %1",_temp]; uiSleep 1;
|
||||
};
|
||||
|
||||
_abort = _temp select 1;
|
||||
if (blck_debugLevel > 2) then {
|
||||
diag_log format["missionSpawner :: (190) blck_fnc_spawnMissionAI returned a value of _abort = %1",_abort]; uiSleep 1;
|
||||
};
|
||||
#endif
|
||||
|
||||
if (_abort) exitWith
|
||||
{
|
||||
if (blck_debugLevel > 1) then {
|
||||
diag_log "missionSpawner:: (194) grpNull returned, mission termination criteria met, calling blck_fnc_endMission"
|
||||
};
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true] call blck_fnc_endMission;
|
||||
};
|
||||
if !(_abort) then
|
||||
{
|
||||
_blck_AllMissionAI append (_temp select 0);
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (202) AI Patrols Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
_temp = [[],[],false];
|
||||
_abort = false;
|
||||
private["_patrolVehicles"];
|
||||
if (blck_useVehiclePatrols && (_noVehiclePatrols > 0)) then
|
||||
{
|
||||
_temp = [_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
|
||||
//[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then {
|
||||
diag_log format["missionSpawner :: (216) blck_fnc_spawnMissionVehiclePatrols returned _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
};
|
||||
if !(_abort) then
|
||||
{
|
||||
_patrolVehicles = _temp select 0;
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (272) Vehicle Patrols Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
if (_abort) exitWith
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then {
|
||||
diag_log "missionSpawner:: (222) grpNull returned, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true] call blck_fnc_endMission;
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
_temp = [[],[],false];
|
||||
_abort = false;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
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
|
||||
|
||||
if (blck_useStatic && (_noEmplacedWeapons > 0)) then
|
||||
{
|
||||
// params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"];
|
||||
_temp = [_missionEmplacedWeapons,_noEmplacedWeapons,_aiDifficultyLevel,_coords,_uniforms,_headGear] call blck_fnc_spawnEmplacedWeaponArray;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format ["missionSpawner:: (232) blck_fnc_spawnEmplacedWeaponArray returned _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
};
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format ["missionSpawner:: (241) _abort = %1",_abort];
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
if !(_abort) then
|
||||
{
|
||||
_objects append (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (253) Static Weapons Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
};
|
||||
if (_abort) exitWith
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (261) grpNull ERROR in blck_fnc_spawnEmplacedWeaponArray, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
|
||||
if (_allowReinforcements) then
|
||||
{
|
||||
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
|
||||
temp = [];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
};
|
||||
// Trigger for mission end
|
||||
//diag_log format["[blckeagls] mission Spawner _endCondition = %1",_endCondition];
|
||||
private["_missionComplete","_endIfPlayerNear","_endIfAIKilled"];
|
||||
_missionComplete = -1;
|
||||
_startTime = diag_tickTime;
|
||||
|
||||
switch (_endCondition) do
|
||||
{
|
||||
case "playerNear": {_endIfPlayerNear = true;_endIfAIKilled = false;};
|
||||
case "allUnitsKilled": {_endIfPlayerNear = false;_endIfAIKilled = true;};
|
||||
case "allKilledOrPlayerNear": {_endIfPlayerNear = true;_endIfAIKilled = true;};
|
||||
};
|
||||
//diag_log format["missionSpawner :: (269) _endIfPlayerNear = %1 _endIfAIKilled= %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
private["_locations"];
|
||||
_locations = [_coords];
|
||||
{
|
||||
_locations pushback (getPos _x);
|
||||
} forEach _crates;
|
||||
|
||||
//diag_log format["missionSpawner:: _coords = %1 | _crates = %2 | _locations = %3",_coords,_crates,_locations];
|
||||
//diag_log format["missionSpawner:: Waiting for player to satisfy mission end criteria of _endIfPlayerNear %1 with _endIfAIKilled %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
while {_missionComplete isEqualTo -1} do
|
||||
{
|
||||
//if (blck_debugLevel isEqualTo 3) exitWith {uiSleep 300};
|
||||
if ((_endIfPlayerNear) && [_locations,10,true] call blck_fnc_playerInRangeArray) exitWith {};
|
||||
if ((_endIfAIKilled) && ({alive _x} count _blck_AllMissionAI) < 1 /*[_blck_AllMissionAI] call blck_fnc_missionAIareDead*/ ) exitWith {};
|
||||
//diag_log format["missionSpawner:: (283) missionCompleteLoop - > players near = %1 and ai alive = %2",[_coords,20] call blck_fnc_playerInRange, {alive _x} count _blck_AllMissionAI];
|
||||
uiSleep 4;
|
||||
};
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (414) Mission completion criteria fulfilled: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
diag_log format["missionSpawner :: (415) _endIfPlayerNear = %1 _endIfAIKilled= %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
};
|
||||
#endif
|
||||
//diag_log format["[blckeagls] missionSpawner:: (418) calling endMission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
|
||||
private["_result"];
|
||||
_result = [_mines,_objects,_crates,_blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,false,_patrolVehicles] call blck_fnc_endMission;
|
||||
|
||||
//diag_log format["[blckeagls] missionSpawner:: (420)end of mission: blck_fnc_endMission returned value of %1","pending"];
|
||||
|
@ -349,7 +349,7 @@ if (_abort) exitWith
|
||||
if (_allowReinforcements) then
|
||||
{
|
||||
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
|
||||
temp = [];
|
||||
_temp = [];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then
|
||||
@ -357,34 +357,47 @@ 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];
|
||||
};
|
||||
#endif
|
||||
private _noChoppers = 3;
|
||||
switch (toLower _aiDifficultyLevel) do
|
||||
{
|
||||
case "blue":{_noChoppers = blck_noPatrolHelisBlue};
|
||||
case "red":{_noChoppers = blck_noPatrolHelisRed};
|
||||
case "green":{_noChoppers = blck_noPatrolHelisGreen};
|
||||
case "orange":{_noChoppers = blck_noPatrolHelisOrange};
|
||||
};
|
||||
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
for "_i" from 1 to (_noChoppers) do
|
||||
{
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel >= 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
diag_log format["missionSpawner:: blck_fnc_spawnMissionReinforcements call for chopper # %1 out of a total of %2 choppers",_i, _noChoppers];
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
};
|
||||
};
|
||||
// Trigger for mission end
|
||||
|
@ -0,0 +1,75 @@
|
||||
|
||||
/*
|
||||
By Ghostrider-DbD-
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
params["_coords","_grpPilot","_chanceLoot"];
|
||||
_chopperType = selectRandom blck_AIHelis;
|
||||
_grpPilot setVariable["groupVehicle",_chopperType];
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: _chopperType seleted = %1",_chopperType];
|
||||
#endif
|
||||
|
||||
_spawnVector = round(random(360));
|
||||
_spawnDistance = 1000; // + floor(random(1500)); // We need the heli to be on-site quickly to minimize the chance that a small mission has been completed before the paratroops are deployed and added to the list of live AI for the mission
|
||||
_dropLoot = (random(1) < _chanceLoot);
|
||||
|
||||
// Use the new functionality of getPos
|
||||
// https://community.bistudio.com/wiki/getPos
|
||||
_spawnPos = _coords getPos [_spawnDistance,_spawnVector];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
#endif
|
||||
|
||||
_grpPilot setBehaviour "CARELESS";
|
||||
_grpPilot setCombatMode "RED";
|
||||
_grpPilot setSpeedMode "FULL";
|
||||
_grpPilot allowFleeing 0;
|
||||
|
||||
private["_supplyHeli"];
|
||||
//create helicopter and spawn it
|
||||
_supplyHeli = createVehicle [_chopperType, _spawnPos, [], 90, "FLY"];
|
||||
blck_monitoredVehicles pushback _supplyHeli;
|
||||
[_supplyHeli] call blck_fnc_protectVehicle;
|
||||
_supplyHeli setVariable["vehicleGroup",_grpPilot];
|
||||
|
||||
_supplyHeli setDir (_spawnVector -180);
|
||||
_supplyHeli setFuel 1;
|
||||
_supplyHeli engineOn true;
|
||||
_supplyHeli flyInHeight 250;
|
||||
_supplyHeli setVehicleLock "LOCKED";
|
||||
_supplyHeli addEventHandler ["GetOut",{(_this select 0) setFuel 0;(_this select 0) setDamage 1;}];
|
||||
|
||||
clearWeaponCargoGlobal _supplyHeli;
|
||||
clearMagazineCargoGlobal _supplyHeli;
|
||||
clearItemCargoGlobal _supplyHeli;
|
||||
clearBackpackCargoGlobal _supplyHeli;
|
||||
|
||||
_unitPilot = _grpPilot createUnit ["I_helipilot_F", getPos _supplyHeli, [], 0, "FORM"];
|
||||
_unitPilot setSkill 1;
|
||||
_unitPilot assignAsDriver _supplyHeli;
|
||||
_unitPilot moveInDriver _supplyHeli;
|
||||
_grpPilot selectLeader _unitPilot;
|
||||
_grpPilot setVariable["paraGroup",_paraGroup];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
#endif
|
||||
|
||||
//set waypoint for helicopter
|
||||
//params["_pos","_minDis","_maxDis","_group",["_mode","random"],["_wpPatrolMode","SAD"],["_soldierType","null"] ];
|
||||
[_coords,25,40,_grpPilot,"random","SAD","helicpoter"] spawn blck_fnc_setupWaypoints;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: initial pilot waypoints set"];
|
||||
#endif
|
||||
_supplyHeli allowDamage true;
|
||||
_supplyHeli
|
@ -14,7 +14,7 @@ params["_coords","_grpPilot","_chanceLoot"];
|
||||
_chopperType = selectRandom blck_AIHelis;
|
||||
_grpPilot setVariable["groupVehicle",_chopperType];
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: _chopperType seleted = %1",_chopperType];
|
||||
diag_log format["_fnc_spawnMissionHeli:: _chopperType seleted = %1",_chopperType];
|
||||
#endif
|
||||
|
||||
_spawnVector = round(random(360));
|
||||
@ -26,7 +26,7 @@ _dropLoot = (random(1) < _chanceLoot);
|
||||
_spawnPos = _coords getPos [_spawnDistance,_spawnVector];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
diag_log format["_fnc_spawnMissionHeli:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
#endif
|
||||
|
||||
_grpPilot setBehaviour "CARELESS";
|
||||
@ -61,7 +61,7 @@ _grpPilot selectLeader _unitPilot;
|
||||
_grpPilot setVariable["paraGroup",_paraGroup];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
diag_log format["_fnc_spawnMissionHeli:: heli spawned and pilot added"];
|
||||
#endif
|
||||
|
||||
//set waypoint for helicopter
|
||||
@ -69,7 +69,7 @@ diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
[_coords,25,40,_grpPilot,"random","SAD","helicpoter"] spawn blck_fnc_setupWaypoints;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: initial pilot waypoints set"];
|
||||
diag_log format["_fnc_spawnMissionHeli:: initial pilot waypoints set"];
|
||||
#endif
|
||||
|
||||
_supplyHeli allowDamage true;
|
||||
_supplyHeli
|
||||
|
@ -13,9 +13,13 @@
|
||||
*/
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
if (blck_debugON) then {diag_log "[blckeagls] Loading blck_configs.sqf";};
|
||||
|
||||
#ifdef blck_milServer
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_mil.sqf";
|
||||
if (true) exitWith {};
|
||||
#endif
|
||||
|
||||
diag_log "[blckeagls] Loading configurations for Non-militarized servers: blck_configs.sqf";
|
||||
/*
|
||||
Configuration for Addons that support the overall Mission system.
|
||||
These are a module to spawn map addons generated with the Eden Editor
|
||||
@ -23,11 +27,11 @@
|
||||
A time acceleration module.
|
||||
*/
|
||||
|
||||
blck_spawnMapAddons = false; // When true map addons will be spawned based on parameters define in custum_server\MapAddons\MapAddons_init.sqf
|
||||
blck_spawnStaticLootCrates = false; // When true, static loot crates will be spawned and loaded with loot as specified in custom_server\SLS\SLS_init_Epoch.sqf (or its exile equivalent).
|
||||
blck_spawnMapAddons = true; // When true map addons will be spawned based on parameters define in custum_server\MapAddons\MapAddons_init.sqf
|
||||
blck_spawnStaticLootCrates = true; // When true, static loot crates will be spawned and loaded with loot as specified in custom_server\SLS\SLS_init_Epoch.sqf (or its exile equivalent).
|
||||
|
||||
// Note that you can define map-specific variants in custom_server\configs\blck_custom_config.sqf
|
||||
blck_useTimeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_useTimeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
@ -52,7 +56,7 @@
|
||||
///////////////////////////////
|
||||
// Kill message configurations
|
||||
// These determine whether and when messages are sent to players regarding AI Kills or illegal kills that might damage a vehicle.
|
||||
blck_useKillMessages = false; // when true a message will be broadcast to all players each time an AI is killed; may impact server performance.
|
||||
blck_useKillMessages = true; // when true a message will be broadcast to all players each time an AI is killed; may impact server performance.
|
||||
blck_useKillScoreMessage = true; // when true a tile is displayed to the killer with the kill score information
|
||||
blck_useIEDMessages = true; // Displayes a message when a player vehicle detonates and IED (such as would happen if a player killed AI with a forbidden weapon).
|
||||
|
||||
@ -88,10 +92,10 @@
|
||||
blck_VK_Gear = true; // When set to true, AI that have been killed by a player in a vehicle in the list of forbidden vehicles or using a forbiden gun will be stripped of gear and the vehicle will be given blck_RunGearDamage of damage
|
||||
blck_VK_RunoverDamage = true; // when the AI was run over blck_RunGearDamage of damage will be applied to the killer's vehicle.
|
||||
blck_VK_GunnerDamage = true; // when the AI was killed by a gunner on a vehicle that is is in the list of forbidden vehicles, blck_RunGearDamage of damage will be applied to the killer's vehicle each time an AI is killed with a vehicle's gun.
|
||||
blck_forbidenVehicles = ["B_MRAP_01_hmg_F","O_MRAP_02_hmg_F"]; // Add any vehicles for which you wish to forbid vehicle kills
|
||||
blck_forbidenVehicles = [/*"B_MRAP_01_hmg_F","O_MRAP_02_hmg_F","I_MRAP_03_hmg_F","B_MRAP_01_hmg_F","O_MRAP_02_hmg_F"*/]; // Add any vehicles for which you wish to forbid vehicle kills
|
||||
// For a listing of the guns mounted on various land vehicles see the following link: https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Vehicle_Weapons
|
||||
// HMG_M2 is mounted on the armed offroad that is spawned by Epoch
|
||||
blck_forbidenVehicleGuns = ["LMG_RCWS","LMG_M200","HMG_127","HMG_127_APC",/*"HMG_M2",*/"HMG_NSVT","GMG_40mm","GMG_UGV_40mm","autocannon_40mm_CTWS","autocannon_30mm_CTWS","autocannon_35mm","LMG_coax","autocannon_30mm","HMG_127_LSV_01"]; // Add any vehicles for which you wish to forbid vehicle kills, o
|
||||
blck_forbidenVehicleGuns = [/*"LMG_RCWS","LMG_M200","HMG_127","HMG_127_APC","HMG_M2","HMG_NSVT","GMG_40mm","GMG_UGV_40mm","autocannon_40mm_CTWS","autocannon_30mm_CTWS","autocannon_35mm","LMG_coax","autocannon_30mm","HMG_127_LSV_01"*/]; // Add any vehicles for which you wish to forbid vehicle kills, o
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
@ -108,17 +112,17 @@
|
||||
// AI paratrooper reinforcement paramters
|
||||
// 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.
|
||||
// If you never want helicopters to spawn them set the value to 0.
|
||||
blck_chanceParaBlue = 0.1; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission.
|
||||
// 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_noParaBlue = 3; // [1-N]
|
||||
|
||||
blck_chanceParaRed = 0.3;
|
||||
blck_chanceParaRed = 0;
|
||||
blck_noParaRed = 3;
|
||||
|
||||
blck_chanceParaGreen = 0.4;
|
||||
blck_noParaGreen = 0.4;
|
||||
blck_chanceParaGreen = 0;
|
||||
blck_noParaGreen = 4;
|
||||
|
||||
blck_chanceParaOrange = 0.5;
|
||||
blck_chanceParaOrange = 0;
|
||||
blck_noParaOrange = 4;
|
||||
|
||||
// Supplemental Loot Parameters.
|
||||
@ -134,6 +138,13 @@
|
||||
_blck_armed_hurons = ["B_Heli_Transport_03_F","B_Heli_Transport_03_black_F"];
|
||||
_blck_armed_attackHelis = ["B_Heli_Attack_01_F"];
|
||||
_blck_armed_heavyAttackHelis = ["O_Heli_Attack_02_F","O_Heli_Attack_02_black_F"];
|
||||
_blck_fighters = [
|
||||
"O_Plane_CAS_02_F", // /ti-199 Neophron (CAS)
|
||||
"I_Plane_Fighter_03_AA_F", // A-143 Buzzard (AA)
|
||||
"I_Plane_Fighter_04_F", // A-149 Gryphon
|
||||
"B_Plane_CAS_01_F", // A-164 Wipeout (CAS)
|
||||
"B_Plane_Fighter_01_F" // F/A-181 Black Wasp II
|
||||
];
|
||||
blck_blacklisted_heli_ammo = ["24Rnd_missiles","24Rnd_PG_missiles","12Rnd_PG_missiles","2Rnd_LG_scalpel","6Rnd_LG_scalpel","8Rnd_LG_scalpel","M_Scalpel_AT ","14Rnd_80mm_rockets","38Rnd_80mm_rockets"];
|
||||
blck_blacklisted_heli_weapons = ["missiles_SCALPEL","missiles_titan","rockets_Skyfire","missiles_DAGR","missiles_DAR"];
|
||||
|
||||
@ -142,18 +153,23 @@
|
||||
// Heli Patrol Settings
|
||||
///////////////////////////////
|
||||
|
||||
blck_chanceHeliPatrolBlue = 0; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area. The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
blck_chanceHeliPatrolBlue = 0; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area.
|
||||
// The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
// Recommend setting the change = 1 if you wish to spawn multiple helis at a mission.
|
||||
blck_patrolHelisBlue = _blck_littleBirds;
|
||||
blck_noPatrolHelisBlue = 1;
|
||||
|
||||
blck_chanceHeliPatrolRed = 0; // 0.4;
|
||||
blck_chanceHeliPatrolRed = 0.1; // 0.4;
|
||||
blck_patrolHelisRed = _blck_littleBirds;
|
||||
blck_noPatrolHelisRed = 1;
|
||||
|
||||
blck_chanceHeliPatrolGreen = 0;
|
||||
blck_chanceHeliPatrolGreen = 0.4;
|
||||
blck_patrolHelisGreen = _blck_littleBirds;
|
||||
blck_noPatrolHelisGreen = 1;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0;
|
||||
blck_patrolHelisOrange = _blck_littleBirds; //_blck_armed_hellcats+_blck_armed_orcas;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0.5;
|
||||
blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas;
|
||||
blck_noPatrolHelisOrange = 1;
|
||||
|
||||
////////////////////
|
||||
// Enable / Disable Missions
|
||||
@ -228,7 +244,7 @@
|
||||
|
||||
blck_useStatic = true; // When true, AI will man static weapons spawned 20-30 meters from the mission center. These are very effective against most vehicles
|
||||
blck_killEmptyStaticWeapons = true; // When true, static weapons will have damage set to 1 when the AI manning them is killed.
|
||||
blck_staticWeapons = ["B_HMG_01_high_F"/*,"B_GMG_01_high_F","O_static_AT_F"*/]; // [0.50 cal, grenade launcher, AT Launcher]
|
||||
blck_staticWeapons = ["B_HMG_01_high_F","B_GMG_01_high_F"/*,"O_static_AT_F"*/]; // [0.50 cal, grenade launcher, AT Launcher]
|
||||
|
||||
////////////////////
|
||||
// Mission Static Weapon Settings
|
||||
@ -269,7 +285,7 @@
|
||||
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
@ -341,7 +357,7 @@
|
||||
blck_MaxAI_Orange = 25;
|
||||
blck_AIGrps_Orange = 5;
|
||||
blck_SkillsOrange = [
|
||||
["aimingAccuracy",0.2],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
["aimingAccuracy",0.5],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
];
|
||||
|
||||
// Green Missions
|
||||
@ -349,7 +365,7 @@
|
||||
blck_MaxAI_Green = 21;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.18],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.4],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
@ -357,7 +373,7 @@
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.16],["aimingShake",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.3],["aimingShake",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
|
||||
|
@ -2,7 +2,7 @@
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last Modified 5-21-17
|
||||
Last Modified 3-14-17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
@ -403,14 +403,14 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
blck_medicalItems = ["FAK"];
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
blck_NVG = ["NVG_EPOCH"];
|
||||
blck_epochValuables = ["PartOreGold","PartOreSilver","PartOre","ItemGoldBar","ItemSilverBar",
|
||||
"ItemGoldBar10oz","ItemTopaz","ItemOnyx","ItemSapphire","ItemAmethyst",
|
||||
"ItemEmerald","ItemCitrine","ItemRuby","ItemQuartz","ItemJade",
|
||||
"ItemGarnet","ItemKiloHemp"];
|
||||
blck_epochValuables = ["class PartOreGold","cass PartOreSilver","class PartOre","class ItemGoldBar","class ItemSilverBar",
|
||||
"class ItemGoldBar10oz","class ItemTopaz","class ItemOnyx","class ItemSapphire","class ItemAmethyst",
|
||||
"class ItemEmerald","class ItemCitrine","class ItemRuby","class ItemQuartz","class ItemJade",
|
||||
"class ItemGarnet","class ItemKiloHemp"];
|
||||
blck_epochBuildingSupplies = ["PartPlankPack","CinderBlocks","MortarBucket","ItemScraps",
|
||||
"ItemCorrugated","ItemCorrugatedLg","ItemSolar","ItemCables",
|
||||
"ItemBattery","Pelt_EPOCH"];
|
||||
|
||||
blck_buildingMaterials = blck_epochBuildingSupplies;
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
Note however that these configurations can be used in any way you like or replaced with mission-specific customized loot arrays
|
||||
@ -842,4 +842,4 @@ for examples of how you can do this see \Major\Compositions.sqf
|
||||
blck_crateTypes = ["Box_FIA_Ammo_F","Box_FIA_Support_F","Box_FIA_Wps_F","I_SupplyCrate_F","Box_NATO_AmmoVeh_F","Box_East_AmmoVeh_F","IG_supplyCrate_F","Box_NATO_Wps_F","I_CargoNet_01_ammo_F","O_CargoNet_01_ammo_F","B_CargoNet_01_ammo_F"]; // Default crate type.
|
||||
|
||||
diag_log "[blckeagls] Configurations for Epoch Loaded";
|
||||
blck_configsEpochLoaded = true;
|
||||
blck_configsEpochLoaded = true;
|
@ -0,0 +1,868 @@
|
||||
/*
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last Modified 3-14-17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
////////////
|
||||
// Epoch-specific settings
|
||||
////////////
|
||||
|
||||
// list of locations that are protected against mission spawns
|
||||
|
||||
switch (toLower(worldName)) do
|
||||
{
|
||||
case "altis": {
|
||||
blck_locationBlackList append [
|
||||
//Add location as [[xpos,ypos,0],minimumDistance],
|
||||
// Note that there should not be a comma after the last item in this table
|
||||
[[10800,10641,0],1000] // isthmus - missions that spawn here often are glitched.
|
||||
];
|
||||
};
|
||||
case "tanoa": {
|
||||
blck_locationBlackList append [ ];
|
||||
};
|
||||
};
|
||||
|
||||
/*********************************************************************************
|
||||
|
||||
AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
|
||||
**********************************************************************************/
|
||||
|
||||
blck_AI_Side = RESISTANCE;
|
||||
blck_AIPatrolVehicles = ["B_G_Offroad_01_armed_EPOCH","B_LSV_01_armed_F"]; // Type of vehicle spawned to defend AI bases
|
||||
|
||||
#define useAPEX 1
|
||||
|
||||
blck_AIPatrolVehicles =
|
||||
[
|
||||
//"Exile_Car_Offroad_Armed_Guerilla01",
|
||||
//"Exile_Car_Offroad_Armed_Guerilla02",
|
||||
//"Exile_Car_BTR40_MG_Green",
|
||||
//"Exile_Car_BTR40_MG_Camo",
|
||||
//"Exile_Car_HMMWV_M134_Green",
|
||||
//"Exile_Car_HMMWV_M134_Desert",
|
||||
//"Exile_Car_HMMWV_M134_Desert",
|
||||
//"Exile_Car_HMMWV_M2_Desert",
|
||||
//"B_LSV_01_armed_F",
|
||||
//"_MRAP_02_gmg_ghex_F",
|
||||
//"O_MRAP_02_hmg_ghex_F",
|
||||
//"O_MRAP_03_gmg_ghex_F",
|
||||
"O_MRAP_03_hmg_ghex_F",
|
||||
"B_MBT_01_cannon_F",
|
||||
//"B_MBT_01_mlrs_base_F",
|
||||
"B_MBT_01_mlrs_F",
|
||||
"B_MBT_01_TUSK_F",
|
||||
"B_APC_Tracked_01_AA_F",
|
||||
"B_APC_Tracked_01_CRV_F",
|
||||
"B_APC_Tracked_01_rcws_F"
|
||||
]; // Type of vehicle spawned to defend AI bases
|
||||
// Blacklisted itesm
|
||||
blck_blacklistedOptics = ["optic_Nightstalker","optic_tws","optic_tws_mg"];
|
||||
|
||||
// AI Weapons and Attachments
|
||||
blck_bipods = ["bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli"];
|
||||
|
||||
blck_Optics_Holo = ["optic_Hamr","optic_MRD","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_ACO_grn_smg","optic_Aco_smg","optic_Yorris"];
|
||||
blck_Optics_Reticule = ["optic_Arco","optic_MRCO"];
|
||||
blck_Optics_Scopes = [
|
||||
"optic_AMS","optic_AMS_khk","optic_AMS_snd",
|
||||
"optic_DMS",
|
||||
"optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan",
|
||||
"optic_LRPS",
|
||||
"optic_Nightstalker",
|
||||
"optic_NVS",
|
||||
"optic_SOS",
|
||||
"optic_tws",
|
||||
"optic_tws_mg"
|
||||
];
|
||||
blck_Optics_Apex = [
|
||||
//Apex
|
||||
"optic_Arco_blk_F", "optic_Arco_ghex_F",
|
||||
"optic_DMS_ghex_F",
|
||||
"optic_Hamr_khk_F",
|
||||
"optic_ERCO_blk_F","optic_ERCO_khk_F","optic_ERCO_snd_F",
|
||||
"optic_SOS_khk_F",
|
||||
"optic_LRPS_tna_F","optic_LRPS_ghex_F",
|
||||
"optic_Holosight_blk_F","optic_Holosight_khk_F","optic_Holosight_smg_blk_F"
|
||||
];
|
||||
blck_Optics = blck_Optics_Holo + blck_Optics_Reticule + blck_Optics_Scopes;
|
||||
|
||||
#ifdef useAPEX
|
||||
blck_Optics = blck_Optics + blck_Optics_Apex;
|
||||
#endif
|
||||
blck_bipods = [
|
||||
"bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli",
|
||||
//Apex
|
||||
"bipod_01_F_khk"
|
||||
];
|
||||
|
||||
blck_silencers = [
|
||||
"muzzle_snds_338_black","muzzle_snds_338_green","muzzle_snds_338_sand","muzzle_snds_93mmg","muzzle_snds_93mmg_tan","muzzle_snds_acp","muzzle_snds_B",
|
||||
"muzzle_snds_H","muzzle_snds_H_MG","muzzle_snds_H_SW","muzzle_snds_L","muzzle_snds_M",
|
||||
//Apex
|
||||
"muzzle_snds_H_khk_F","muzzle_snds_H_snd_F","muzzle_snds_58_blk_F","muzzle_snds_m_khk_F","muzzle_snds_m_snd_F","muzzle_snds_B_khk_F","muzzle_snds_B_snd_F",
|
||||
"muzzle_snds_58_wdm_F","muzzle_snds_65_TI_blk_F","muzzle_snds_65_TI_hex_F","muzzle_snds_65_TI_ghex_F","muzzle_snds_H_MG_blk_F","muzzle_snds_H_MG_khk_F"
|
||||
];
|
||||
|
||||
blck_RifleSniper = [
|
||||
"srifle_EBR_F","srifle_GM6_F","srifle_LRR_F","srifle_DMR_01_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault_556 = [
|
||||
"arifle_SDAR_F","arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F","arifle_SDAR_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault_650 = [
|
||||
"arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault = blck_RifleAsault_556 + blck_RifleAsault_650;
|
||||
|
||||
blck_RifleLMG = [
|
||||
"LMG_Mk200_F","LMG_Zafir_F"
|
||||
];
|
||||
|
||||
blck_RifleOther = [
|
||||
"SMG_01_F","SMG_02_F"
|
||||
];
|
||||
|
||||
blck_Pistols = [
|
||||
"hgun_PDW2000_F","hgun_ACPC2_F","hgun_Rook40_F","hgun_P07_F","hgun_Pistol_heavy_01_F","hgun_Pistol_heavy_02_F","hgun_Pistol_Signal_F"
|
||||
];
|
||||
|
||||
blck_DLC_MMG = [
|
||||
"MMG_01_hex_F","MMG_02_sand_F","MMG_01_tan_F","MMG_02_black_F","MMG_02_camo_F"
|
||||
];
|
||||
|
||||
blck_DLC_Sniper = [
|
||||
"srifle_DMR_02_camo_F","srifle_DMR_02_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_tan_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_F","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F"
|
||||
];
|
||||
blck_apexWeapons = ["arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F"];
|
||||
|
||||
//This defines the random weapon to spawn on the AI
|
||||
//https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Weapons
|
||||
blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG;
|
||||
blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault_650 +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons;
|
||||
blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault_556 +blck_RifleAsault_650;
|
||||
blck_WeaponList_Red = blck_RifleAsault_556 + blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG;
|
||||
|
||||
#ifdef useAPEX
|
||||
|
||||
blck_WeaponList_Orange = blck_WeaponList_Orange + blck_apexWeapons;
|
||||
blck_WeaponList_Green = blck_WeaponList_Green + blck_apexWeapons;
|
||||
#endif
|
||||
|
||||
blck_baseBackpacks = ["B_Carryall_ocamo","B_Carryall_oucamo","B_Carryall_mcamo","B_Carryall_oli","B_Carryall_khk","B_Carryall_cbr" ];
|
||||
blck_ApexBackpacks = [
|
||||
"B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F",
|
||||
"B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F",
|
||||
"B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F"
|
||||
];
|
||||
|
||||
#ifdef useAPEX
|
||||
blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks;
|
||||
#endif
|
||||
|
||||
blck_BanditHeadgear = ["H_Shemag_khk","H_Shemag_olive","H_Shemag_tan","H_ShemagOpen_khk"];
|
||||
//This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI.
|
||||
blck_headgear = [
|
||||
"H_Cap_blk",
|
||||
"H_Cap_blk_Raven",
|
||||
"H_Cap_blu",
|
||||
"H_Cap_brn_SPECOPS",
|
||||
"H_Cap_grn",
|
||||
"H_Cap_headphones",
|
||||
"H_Cap_khaki_specops_UK",
|
||||
"H_Cap_oli",
|
||||
"H_Cap_press",
|
||||
"H_Cap_red",
|
||||
"H_Cap_tan",
|
||||
"H_Cap_tan_specops_US",
|
||||
"H_Watchcap_blk",
|
||||
"H_Watchcap_camo",
|
||||
"H_Watchcap_khk",
|
||||
"H_Watchcap_sgg",
|
||||
"H_MilCap_blue",
|
||||
"H_MilCap_dgtl",
|
||||
"H_MilCap_mcamo",
|
||||
"H_MilCap_ocamo",
|
||||
"H_MilCap_oucamo",
|
||||
"H_MilCap_rucamo",
|
||||
"H_Bandanna_camo",
|
||||
"H_Bandanna_cbr",
|
||||
"H_Bandanna_gry",
|
||||
"H_Bandanna_khk",
|
||||
"H_Bandanna_khk_hs",
|
||||
"H_Bandanna_mcamo",
|
||||
"H_Bandanna_sgg",
|
||||
"H_Bandanna_surfer",
|
||||
"H_Booniehat_dgtl",
|
||||
"H_Booniehat_dirty",
|
||||
"H_Booniehat_grn",
|
||||
"H_Booniehat_indp",
|
||||
"H_Booniehat_khk",
|
||||
"H_Booniehat_khk_hs",
|
||||
"H_Booniehat_mcamo",
|
||||
"H_Booniehat_tan",
|
||||
"H_Hat_blue",
|
||||
"H_Hat_brown",
|
||||
"H_Hat_camo",
|
||||
"H_Hat_checker",
|
||||
"H_Hat_grey",
|
||||
"H_Hat_tan",
|
||||
"H_StrawHat",
|
||||
"H_StrawHat_dark",
|
||||
"H_Beret_02",
|
||||
"H_Beret_blk",
|
||||
"H_Beret_blk_POLICE",
|
||||
"H_Beret_brn_SF",
|
||||
"H_Beret_Colonel",
|
||||
"H_Beret_grn",
|
||||
"H_Beret_grn_SF",
|
||||
"H_Beret_ocamo",
|
||||
"H_Beret_red",
|
||||
"H_Shemag_khk",
|
||||
"H_Shemag_olive",
|
||||
"H_Shemag_olive_hs",
|
||||
"H_Shemag_tan",
|
||||
"H_ShemagOpen_khk",
|
||||
"H_ShemagOpen_tan",
|
||||
"H_TurbanO_blk",
|
||||
|
||||
//Apex
|
||||
"H_MilCap_tna_F",
|
||||
"H_MilCap_ghex_F",
|
||||
"H_Booniehat_tna_F",
|
||||
"H_Beret_gen_F",
|
||||
"H_MilCap_gen_F",
|
||||
"H_Cap_oli_Syndikat_F",
|
||||
"H_Cap_tan_Syndikat_F",
|
||||
"H_Cap_blk_Syndikat_F",
|
||||
"H_Cap_grn_Syndikat_F"
|
||||
];
|
||||
blck_helmets = [
|
||||
"H_HelmetB",
|
||||
"H_HelmetB_black",
|
||||
"H_HelmetB_camo",
|
||||
"H_HelmetB_desert",
|
||||
"H_HelmetB_grass",
|
||||
"H_HelmetB_light",
|
||||
"H_HelmetB_light_black",
|
||||
"H_HelmetB_light_desert",
|
||||
"H_HelmetB_light_grass",
|
||||
"H_HelmetB_light_sand",
|
||||
"H_HelmetB_light_snakeskin",
|
||||
"H_HelmetB_paint",
|
||||
"H_HelmetB_plain_blk",
|
||||
"H_HelmetB_sand",
|
||||
"H_HelmetB_snakeskin",
|
||||
"H_HelmetCrew_B",
|
||||
"H_HelmetCrew_I",
|
||||
"H_HelmetCrew_O",
|
||||
"H_HelmetIA",
|
||||
"H_HelmetIA_camo",
|
||||
"H_HelmetIA_net",
|
||||
"H_HelmetLeaderO_ocamo",
|
||||
"H_HelmetLeaderO_oucamo",
|
||||
"H_HelmetO_ocamo",
|
||||
"H_HelmetO_oucamo",
|
||||
"H_HelmetSpecB",
|
||||
"H_HelmetSpecB_blk",
|
||||
"H_HelmetSpecB_paint1",
|
||||
"H_HelmetSpecB_paint2",
|
||||
"H_HelmetSpecO_blk",
|
||||
"H_HelmetSpecO_ocamo",
|
||||
"H_CrewHelmetHeli_B",
|
||||
"H_CrewHelmetHeli_I",
|
||||
"H_CrewHelmetHeli_O",
|
||||
"H_HelmetCrew_I",
|
||||
"H_HelmetCrew_B",
|
||||
"H_HelmetCrew_O",
|
||||
"H_PilotHelmetHeli_B",
|
||||
"H_PilotHelmetHeli_I",
|
||||
"H_PilotHelmetHeli_O",
|
||||
"H_Helmet_Skate",
|
||||
"H_HelmetB_TI_tna_F",
|
||||
// Apex
|
||||
//"H_HelmetO_ViperSP_hex_F",
|
||||
//"H_HelmetO_ViperSP_ghex_F",
|
||||
"H_HelmetB_tna_F",
|
||||
"H_HelmetB_Enh_tna_F",
|
||||
"H_HelmetB_Light_tna_F",
|
||||
"H_HelmetSpecO_ghex_F",
|
||||
"H_HelmetLeaderO_ghex_F",
|
||||
"H_HelmetO_ghex_F",
|
||||
"H_HelmetCrew_O_ghex_F"
|
||||
];
|
||||
blck_headgearList = blck_headgear + blck_helmets;
|
||||
//This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI.
|
||||
blck_SkinList = [
|
||||
//https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Equipment
|
||||
"U_AntigonaBody",
|
||||
"U_AttisBody",
|
||||
"U_B_CombatUniform_mcam","U_B_CombatUniform_mcam_tshirt","U_B_CombatUniform_mcam_vest","U_B_CombatUniform_mcam_worn","U_B_CombatUniform_sgg","U_B_CombatUniform_sgg_tshirt","U_B_CombatUniform_sgg_vest","U_B_CombatUniform_wdl","U_B_CombatUniform_wdl_tshirt","U_B_CombatUniform_wdl_vest",
|
||||
"U_B_CTRG_1","U_B_CTRG_2","U_B_CTRG_3",
|
||||
"U_B_GhillieSuit",
|
||||
"U_B_HeliPilotCoveralls","U_B_PilotCoveralls",
|
||||
"U_B_SpecopsUniform_sgg",
|
||||
"U_B_survival_uniform",
|
||||
"U_B_Wetsuit",
|
||||
//"U_BasicBody",
|
||||
"U_BG_Guerilla1_1","U_BG_Guerilla2_1","U_BG_Guerilla2_2","U_BG_Guerilla2_3","U_BG_Guerilla3_1","U_BG_Guerilla3_2",
|
||||
"U_BG_leader",
|
||||
"U_C_Commoner_shorts","U_C_Commoner1_1","U_C_Commoner1_2","U_C_Commoner1_3","U_C_Commoner2_1","U_C_Commoner2_2","U_C_Commoner2_3",
|
||||
"U_C_Farmer","U_C_Fisherman","U_C_FishermanOveralls","U_C_HunterBody_brn","U_C_HunterBody_grn",
|
||||
//"U_C_Journalist",
|
||||
"U_C_Novak",
|
||||
//"U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Poloshirt_tricolour",
|
||||
"U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_PriestBody","U_C_Scavenger_1","U_C_Scavenger_2",
|
||||
//"U_C_Scientist","U_C_ShirtSurfer_shorts","U_C_TeeSurfer_shorts_1","U_C_TeeSurfer_shorts_2",
|
||||
"U_C_WorkerCoveralls","U_C_WorkerOveralls","U_Competitor",
|
||||
"U_I_CombatUniform","U_I_CombatUniform_shortsleeve","U_I_CombatUniform_tshirt","U_I_G_resistanceLeader_F",
|
||||
"U_I_G_Story_Protagonist_F",
|
||||
"U_I_GhillieSuit",
|
||||
"U_I_HeliPilotCoveralls",
|
||||
"U_I_OfficerUniform",
|
||||
"U_I_pilotCoveralls",
|
||||
"U_I_Wetsuit",
|
||||
"U_IG_Guerilla1_1","U_IG_Guerilla2_1","U_IG_Guerilla2_2","U_IG_Guerilla2_3","U_IG_Guerilla3_1","U_IG_Guerilla3_2",
|
||||
"U_IG_leader",
|
||||
"U_IG_Menelaos",
|
||||
//"U_KerryBody",
|
||||
//"U_MillerBody",
|
||||
//"U_NikosAgedBody",
|
||||
//"U_NikosBody",
|
||||
"U_O_CombatUniform_ocamo","U_O_CombatUniform_oucamo",
|
||||
"U_O_GhillieSuit",
|
||||
"U_O_OfficerUniform_ocamo",
|
||||
"U_O_PilotCoveralls",
|
||||
"U_O_SpecopsUniform_blk",
|
||||
"U_O_SpecopsUniform_ocamo",
|
||||
"U_O_Wetsuit",
|
||||
"U_OG_Guerilla1_1","U_OG_Guerilla2_1","U_OG_Guerilla2_2","U_OG_Guerilla2_3","U_OG_Guerilla3_1","U_OG_Guerilla3_2","U_OG_leader",
|
||||
//"U_OI_Scientist",
|
||||
//"U_OrestesBody",
|
||||
"U_Rangemaster",
|
||||
// DLC
|
||||
"U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh",
|
||||
//Apex
|
||||
"U_B_T_Soldier_F",
|
||||
"U_B_T_Soldier_AR_F",
|
||||
"U_B_T_Soldier_SL_F",
|
||||
//"U_B_T_Sniper_F",
|
||||
//"U_B_T_FullGhillie_tna_F",
|
||||
"U_B_CTRG_Soldier_F",
|
||||
"U_B_CTRG_Soldier_2_F",
|
||||
"U_B_CTRG_Soldier_3_F",
|
||||
"U_B_GEN_Soldier_F",
|
||||
"U_B_GEN_Commander_F",
|
||||
"U_O_T_Soldier_F",
|
||||
"U_O_T_Officer_F",
|
||||
//"U_O_T_Sniper_F",
|
||||
//"U_O_T_FullGhillie_tna_F",
|
||||
"U_O_V_Soldier_Viper_F",
|
||||
"U_O_V_Soldier_Viper_hex_F",
|
||||
"U_I_C_Soldier_Para_1_F",
|
||||
"U_I_C_Soldier_Para_2_F",
|
||||
"U_I_C_Soldier_Para_3_F",
|
||||
"U_I_C_Soldier_Para_4_F",
|
||||
"U_I_C_Soldier_Para_5_F",
|
||||
"U_I_C_Soldier_Bandit_1_F",
|
||||
"U_I_C_Soldier_Bandit_2_F",
|
||||
"U_I_C_Soldier_Bandit_3_F",
|
||||
"U_I_C_Soldier_Bandit_4_F",
|
||||
"U_I_C_Soldier_Bandit_5_F",
|
||||
"U_I_C_Soldier_Camo_F",
|
||||
"U_C_man_sport_1_F",
|
||||
"U_C_man_sport_2_F",
|
||||
"U_C_man_sport_3_F",
|
||||
"U_C_Man_casual_1_F",
|
||||
"U_C_Man_casual_2_F",
|
||||
"U_C_Man_casual_3_F",
|
||||
"U_C_Man_casual_4_F",
|
||||
"U_C_Man_casual_5_F",
|
||||
"U_C_Man_casual_6_F",
|
||||
"U_B_CTRG_Soldier_urb_1_F",
|
||||
"U_B_CTRG_Soldier_urb_2_F",
|
||||
"U_B_CTRG_Soldier_urb_3_F"
|
||||
];
|
||||
|
||||
blck_vests = [
|
||||
"V_1_EPOCH","V_2_EPOCH","V_3_EPOCH","V_4_EPOCH","V_5_EPOCH","V_6_EPOCH","V_7_EPOCH","V_8_EPOCH","V_9_EPOCH","V_10_EPOCH","V_11_EPOCH","V_12_EPOCH","V_13_EPOCH","V_14_EPOCH","V_15_EPOCH","V_16_EPOCH","V_17_EPOCH","V_18_EPOCH","V_19_EPOCH","V_20_EPOCH",
|
||||
"V_21_EPOCH","V_22_EPOCH","V_23_EPOCH","V_24_EPOCH","V_25_EPOCH","V_26_EPOCH","V_27_EPOCH","V_28_EPOCH","V_29_EPOCH","V_30_EPOCH","V_31_EPOCH","V_32_EPOCH","V_33_EPOCH","V_34_EPOCH","V_35_EPOCH","V_36_EPOCH","V_37_EPOCH","V_38_EPOCH","V_39_EPOCH","V_40_EPOCH",
|
||||
// DLC Vests
|
||||
"V_PlateCarrierSpec_blk","V_PlateCarrierSpec_mtp","V_PlateCarrierGL_blk","V_PlateCarrierGL_mtp","V_PlateCarrierIAGL_oli"
|
||||
];
|
||||
//CraftingFood
|
||||
blck_Meats=[
|
||||
"SnakeCarcass_EPOCH","RabbitCarcass_EPOCH","ChickenCarcass_EPOCH","GoatCarcass_EPOCH","SheepCarcass_EPOCH"
|
||||
];
|
||||
blck_Drink = [
|
||||
"WhiskeyNoodle","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","FoodWalkNSons"
|
||||
];
|
||||
blck_Food = [
|
||||
"FoodBioMeat","FoodMeeps","FoodSnooter","FoodWalkNSons","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","honey_epoch","CookedSheep_EPOCH","CookedGoat_EPOCH","SnakeMeat_EPOCH",
|
||||
"CookedRabbit_EPOCH","CookedChicken_EPOCH","ItemTrout","ItemSeaBass","ItemTuna","TacticalBacon"
|
||||
];
|
||||
blck_ConsumableItems = blck_Meats + blck_Drink + blck_Food;
|
||||
blck_throwableExplosives = ["HandGrenade","MiniGrenade"];
|
||||
blck_otherExplosives = ["1Rnd_HE_Grenade_shell","3Rnd_HE_Grenade_shell","DemoCharge_Remote_Mag","SatchelCharge_Remote_Mag"];
|
||||
blck_explosives = blck_throwableExplosives + blck_otherExplosives;
|
||||
blck_medicalItems = ["FAK"];
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
blck_NVG = ["NVG_EPOCH"];
|
||||
blck_epochValuables = ["class PartOreGold","cass PartOreSilver","class PartOre","class ItemGoldBar","class ItemSilverBar",
|
||||
"class ItemGoldBar10oz","class ItemTopaz","class ItemOnyx","class ItemSapphire","class ItemAmethyst",
|
||||
"class ItemEmerald","class ItemCitrine","class ItemRuby","class ItemQuartz","class ItemJade",
|
||||
"class ItemGarnet","class ItemKiloHemp"];
|
||||
blck_epochBuildingSupplies = ["PartPlankPack","CinderBlocks","MortarBucket","ItemScraps",
|
||||
"ItemCorrugated","ItemCorrugatedLg","ItemSolar","ItemCables",
|
||||
"ItemBattery","Pelt_EPOCH"];
|
||||
blck_buildingMaterials = blck_epochBuildingSupplies;
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
Note however that these configurations can be used in any way you like or replaced with mission-specific customized loot arrays
|
||||
for examples of how you can do this see \Major\Compositions.sqf
|
||||
***************************************************************************************/
|
||||
|
||||
// values are: number of things from the weapons, magazines, optics, materials(cinder etc), items (food etc) and backpacks arrays to add, respectively.
|
||||
blck_lootCountsOrange = [8,32,8,30,16,1]; // Orange
|
||||
blck_lootCountsGreen = [7,24,6,16,18,1]; // Green
|
||||
blck_lootCountsRed = [5,16,4,10,6,1]; // Red
|
||||
blck_lootCountsBlue = [4,12,3,6,6,1]; // Blue
|
||||
|
||||
blck_BoxLoot_Orange =
|
||||
// Loot is grouped as [weapons],[magazines],[items] in order to be able to use the correct function to load the item into the crate later on.
|
||||
// Each item consist of the following information ["ItemName",minNum, maxNum] where min is the smallest number added and min+max is the largest number added.
|
||||
|
||||
[
|
||||
[// Weapons
|
||||
#ifdef useAPEX
|
||||
"arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F",
|
||||
#endif
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["MMG_01_tan_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_black_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_camo_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_sand_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_02_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_02_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_02_sniper_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_hex_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_F","10Rnd_127x54_Mag"],
|
||||
["srifle_DMR_05_blk_F","10Rnd_93x64_DMR_05_Mag"],
|
||||
["srifle_DMR_06_olive_F","20Rnd_762x51_Mag"]
|
||||
|
||||
],
|
||||
[//Magazines
|
||||
["3rnd_HE_Grenade_Shell",3,6],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",7,14],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,3],
|
||||
["HandGrenade",1,4],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
// Apex Ammo
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[// Materials and supplies
|
||||
["CinderBlocks",5,15],
|
||||
["jerrycan_epoch",1,2],
|
||||
//["lighter_epoch",0,1],
|
||||
["CircuitParts",2,3],
|
||||
["WoodLog_EPOCH",5,10],
|
||||
["ItemCorrugatedLg",1,6],
|
||||
["ItemCorrugated",3,10],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",5,10],
|
||||
["PartPlankPack",10,19],
|
||||
["ItemLockbox",1,2],
|
||||
["ItemSolar",1,2],
|
||||
["ItemCables",1,2],
|
||||
["ItemBattery",1,2],
|
||||
["Pelt_EPOCH",1,2],
|
||||
["EnergyPackLg",1,3]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,4],["FAK",1,4],["VehicleRepair",1,3],["Rangefinder",1,3],["ItemJade",1,2],["ItemQuartz",1,2],["ItemRuby",1,2],["ItemSapphire",1,2],
|
||||
["ItemKiloHemp",1,2],["ItemRuby",1,2],["ItemSilverBar",1,2],["ItemEmerald",1,2],["ItemTopaz",1,2],["ItemOnyx",1,2],["ItemSapphire",1,2],["ItemAmethyst",1,2],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",1,2],["B_AssaultPack_khk",1,2],["B_AssaultPack_mcamo",1,2],["B_AssaultPack_ocamo",1,2],["B_AssaultPack_rgr",1,2],["B_AssaultPack_sgg",1,2],
|
||||
["B_Carryall_cbr",1,2],["B_Carryall_khk",1,2],["B_Carryall_mcamo",1,2],["B_Carryall_ocamo",1,2],["B_Carryall_oli",1,2],["B_Carryall_oucamo",1,2],["B_FieldPack_blk",1,2],
|
||||
["B_FieldPack_cbr",1,2],["B_FieldPack_khk",1,2],["B_FieldPack_ocamo",1,2],["B_FieldPack_oli",1,2],["B_FieldPack_oucamo",1,2],["B_Kitbag_cbr",1,2],["B_Kitbag_mcamo",1,2],
|
||||
["B_Kitbag_rgr",1,2],["B_Kitbag_sgg",1,2],["B_Parachute",1,2],["B_TacticalPack_blk",1,2],["B_TacticalPack_mcamo",1,2],["B_TacticalPack_ocamo",1,2],["B_TacticalPack_oli",1,2],
|
||||
["B_TacticalPack_rgr",1,2],["smallbackpack_red_epoch",1,2],["smallbackpack_green_epoch",1,2],["smallbackpack_teal_epoch",1,2],["smallbackpack_pink_epoch",1,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Green =
|
||||
[
|
||||
[// Weapons
|
||||
// Format is ["Weapon Name","Magazine Name"],
|
||||
#ifdef useAPEX
|
||||
"arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F",
|
||||
#endif
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_02_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_hex_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"]
|
||||
|
||||
],
|
||||
[//Magazines
|
||||
// Format is ["Magazine name, Minimum number to add, Maximum number to add],
|
||||
["3rnd_HE_Grenade_Shell",2,4],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",6,12],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,3],
|
||||
["HandGrenade",1,3],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",4,12],
|
||||
["jerrycan_epoch",1,2],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,5],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",1,3],
|
||||
["ItemCorrugated",2,9],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",3,6],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,3],
|
||||
["ItemSolar",1,2],
|
||||
["ItemCables",1,2],
|
||||
["ItemBattery",1,2],
|
||||
["Pelt_EPOCH",1,2],
|
||||
["EnergyPackLg",1,3]
|
||||
],
|
||||
[//Items
|
||||
// Format is ["Item name, Minimum number to add, Maximum number to add],
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["VehicleRepair",1,3],["Rangefinder",1,3],
|
||||
["ItemKiloHemp",1,2],["ItemRuby",1,2],["ItemSilverBar",1,2],["ItemGoldBar10oz",1,2],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",1,2],["B_AssaultPack_khk",1,2],["B_AssaultPack_mcamo",1,2],["B_AssaultPack_ocamo",1,2],["B_AssaultPack_rgr",1,2],["B_AssaultPack_sgg",1,2],
|
||||
["B_Carryall_cbr",1,2],["B_Carryall_khk",1,2],["B_Carryall_mcamo",1,2],["B_Carryall_ocamo",1,2],["B_Carryall_oli",1,2],["B_Carryall_oucamo",1,2],["B_FieldPack_blk",1,2],
|
||||
["B_FieldPack_cbr",1,2],["B_FieldPack_khk",1,2],["B_FieldPack_ocamo",1,2],["B_FieldPack_oli",1,2],["B_FieldPack_oucamo",1,2],["B_Kitbag_cbr",1,2],["B_Kitbag_mcamo",1,2],
|
||||
["B_Kitbag_rgr",1,2],["B_Kitbag_sgg",1,2],["B_Parachute",1,2],["B_TacticalPack_blk",1,2],["B_TacticalPack_mcamo",1,2],["B_TacticalPack_ocamo",1,2],["B_TacticalPack_oli",1,2],
|
||||
["B_TacticalPack_rgr",1,2],["smallbackpack_red_epoch",1,2],["smallbackpack_green_epoch",1,2],["smallbackpack_teal_epoch",1,2],["smallbackpack_pink_epoch",1,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Blue =
|
||||
[
|
||||
[// Weapons
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Mk20_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20C_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["m16_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["m16Red_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["m4a3_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["SMG_02_F","30Rnd_9x21_Mag"],
|
||||
["SMG_01_F","30Rnd_45ACP_Mag_SMG_01"],
|
||||
["Hgun_PDW2000_F","30Rnd_9x21_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["m249_EPOCH","200Rnd_556x45_M249"],
|
||||
["m249Tan_EPOCH","200Rnd_556x45_M249"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"]
|
||||
],
|
||||
[//Magazines
|
||||
["3rnd_HE_Grenade_Shell",1,2],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",3,10],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,4],
|
||||
["HandGrenade",1,3],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["150Rnd_93x64_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",2,6],
|
||||
["jerrycan_epoch",1,3],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,3],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",0,4],
|
||||
["ItemCorrugated",3,6],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",1,8],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,2],
|
||||
["EnergyPackLg",0,1]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,5],["VehicleRepair",1,5],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",0,2],["B_AssaultPack_khk",0,2],["B_AssaultPack_mcamo",0,2],["B_AssaultPack_ocamo",0,2],["B_AssaultPack_rgr",0,2],["B_AssaultPack_sgg",0,2],
|
||||
["B_Carryall_cbr",0,2],["B_Carryall_khk",0,2],["B_Carryall_mcamo",0,2],["B_Carryall_ocamo",0,2],["B_Carryall_oli",0,2],["B_Carryall_oucamo",0,2],["B_FieldPack_blk",0,2],
|
||||
["B_FieldPack_cbr",0,2],["B_FieldPack_khk",0,2],["B_FieldPack_ocamo",0,2],["B_FieldPack_oli",0,2],["B_FieldPack_oucamo",0,2],["B_Kitbag_cbr",0,2],["B_Kitbag_mcamo",0,2],
|
||||
["B_Kitbag_rgr",0,2],["B_Kitbag_sgg",0,2],["B_Parachute",0,2],["B_TacticalPack_blk",0,2],["B_TacticalPack_mcamo",0,2],["B_TacticalPack_ocamo",0,2],["B_TacticalPack_oli",0,2],
|
||||
["B_TacticalPack_rgr",0,2],["smallbackpack_red_epoch",0,2],["smallbackpack_green_epoch",0,2],["smallbackpack_teal_epoch",0,2],["smallbackpack_pink_epoch",0,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Red =
|
||||
[
|
||||
[// Weapons
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Mk20_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20C_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
//["arifle_MX_SW_Black_Hamr_pointer_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["m16_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["m16Red_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["m4a3_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["SMG_02_F","30Rnd_9x21_Mag"],
|
||||
["SMG_01_F","30Rnd_45ACP_Mag_SMG_01"],
|
||||
["Hgun_PDW2000_F","30Rnd_9x21_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["m249_EPOCH","200Rnd_556x45_M249"],
|
||||
["m249Tan_EPOCH","200Rnd_556x45_M249"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"]
|
||||
],
|
||||
[//Magazines
|
||||
|
||||
["3rnd_HE_Grenade_Shell",1,5],["30Rnd_65x39_caseless_green",3,6],["30Rnd_556x45_Stanag",3,6],["30Rnd_556x45_Stanag",3,6],["30Rnd_45ACP_Mag_SMG_01",3,6],["20Rnd_556x45_UW_mag",3,6],
|
||||
["10Rnd_762x51_Mag",3,6],["20Rnd_762x51_Mag",3,7],["200Rnd_65x39_cased_Box",3,6],["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,2],["HandGrenade",1,3],["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["150Rnd_93x64_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",2,7],
|
||||
["jerrycan_epoch",1,3],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,6],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",0,5],
|
||||
["ItemCorrugated",3,7],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",2,5],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,2],
|
||||
["EnergyPackLg",0,1]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,2],["VehicleRepair",1,3],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",0,2],["B_AssaultPack_khk",0,2],["B_AssaultPack_mcamo",0,2],["B_AssaultPack_ocamo",0,2],["B_AssaultPack_rgr",0,2],["B_AssaultPack_sgg",0,2],
|
||||
["B_Carryall_cbr",0,2],["B_Carryall_khk",0,2],["B_Carryall_mcamo",0,2],["B_Carryall_ocamo",0,2],["B_Carryall_oli",0,2],["B_Carryall_oucamo",0,2],["B_FieldPack_blk",0,2],
|
||||
["B_FieldPack_cbr",0,2],["B_FieldPack_khk",0,2],["B_FieldPack_ocamo",0,2],["B_FieldPack_oli",0,2],["B_FieldPack_oucamo",0,2],["B_Kitbag_cbr",0,2],["B_Kitbag_mcamo",0,2],
|
||||
["B_Kitbag_rgr",0,2],["B_Kitbag_sgg",0,2],["B_Parachute",0,2],["B_TacticalPack_blk",0,2],["B_TacticalPack_mcamo",0,2],["B_TacticalPack_ocamo",0,2],["B_TacticalPack_oli",0,2],
|
||||
["B_TacticalPack_rgr",0,2],["smallbackpack_red_epoch",0,2],["smallbackpack_green_epoch",0,2],["smallbackpack_teal_epoch",0,2],["smallbackpack_pink_epoch",0,2]
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
// Time the marker remains after completing the mission in seconds - experimental not yet implemented
|
||||
|
||||
blck_crateTypes = ["Box_FIA_Ammo_F","Box_FIA_Support_F","Box_FIA_Wps_F","I_SupplyCrate_F","Box_NATO_AmmoVeh_F","Box_East_AmmoVeh_F","IG_supplyCrate_F","Box_NATO_Wps_F","I_CargoNet_01_ammo_F","O_CargoNet_01_ammo_F","B_CargoNet_01_ammo_F"]; // Default crate type.
|
||||
|
||||
diag_log "[blckeagls] Configurations for Epoch Loaded";
|
||||
blck_configsEpochLoaded = true;
|
@ -14,6 +14,12 @@
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
#ifdef blck_milServer
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile_mil.sqf";
|
||||
if (true) exitWith {};
|
||||
#endif
|
||||
|
||||
diag_log "[blckeagls] Loading Exile-specific configs for Non-militarized servers: blck_configs_exile.sqf";
|
||||
////////////
|
||||
// Exile-specific settings
|
||||
////////////
|
||||
@ -40,8 +46,8 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
|
||||
**********************************************************************************/
|
||||
|
||||
blck_blacklistSpawns = false;
|
||||
blck_listConcreteMixerZones = false;
|
||||
blck_blacklistSpawns = true;
|
||||
blck_listConcreteMixerZones = true;
|
||||
blck_AI_Side = EAST;
|
||||
blck_AIPatrolVehicles = ["Exile_Car_Offroad_Armed_Guerilla01","Exile_Car_Offroad_Armed_Guerilla02","Exile_Car_BTR40_MG_Green","Exile_Car_BTR40_MG_Camo","Exile_Car_HMMWV_M134_Green","Exile_Car_HMMWV_M134_Desert",/*"Exile_Car_HMMWV_M134_Desert","Exile_Car_HMMWV_M2_Desert",*/"B_LSV_01_armed_F"]; // Type of vehicle spawned to defend AI bases
|
||||
|
||||
@ -491,6 +497,9 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
|
||||
blck_NVG = ["NVGoggles","NVGoggles_INDEP","NVGoggles_OPFOR","Exile_Item_XM8"];
|
||||
blck_buildingMaterials = ["Exile_Item_ExtensionCord","Exile_Item_JunkMetal","Exile_Item_LightBulb","Exile_Item_MetalBoard",
|
||||
"Exile_Item_MetalPole","Exile_Item_MetalScrews","Exile_Item_Cement","Exile_Item_Sand"];
|
||||
blck_tools = ["Exile_Item_Matches","Exile_Item_CookingPot","Exile_Melee_Axe","Exile_Melee_SledgeHammmer","Exile_Item_Handsaw","Exile_Item_Pliers"];
|
||||
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
|
@ -55,11 +55,11 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
//"Exile_Car_HMMWV_M2_Desert",
|
||||
//"B_LSV_01_armed_F",
|
||||
//"_MRAP_02_gmg_ghex_F",
|
||||
"O_MRAP_02_hmg_ghex_F",
|
||||
"O_MRAP_03_gmg_ghex_F",
|
||||
//"O_MRAP_02_hmg_ghex_F",
|
||||
//"O_MRAP_03_gmg_ghex_F",
|
||||
"O_MRAP_03_hmg_ghex_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_TUSK_F",
|
||||
"B_APC_Tracked_01_AA_F",
|
||||
|
@ -108,17 +108,18 @@
|
||||
// AI paratrooper reinforcement paramters
|
||||
// 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.
|
||||
// If you never want helicopters to spawn them set the value to 0.
|
||||
blck_chanceParaBlue = 0.1; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission.
|
||||
// If you never want paratroops to spawn them set the value to 0.
|
||||
// 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_noParaBlue = 3; // [1-N]
|
||||
|
||||
blck_chanceParaRed = 0.3;
|
||||
blck_chanceParaRed = 0;
|
||||
blck_noParaRed = 3;
|
||||
|
||||
blck_chanceParaGreen = 0.4;
|
||||
blck_noParaGreen = 0.4;
|
||||
blck_chanceParaGreen = 0;
|
||||
blck_noParaGreen = 4;
|
||||
|
||||
blck_chanceParaOrange = 0.5;
|
||||
blck_chanceParaOrange = 0;
|
||||
blck_noParaOrange = 4;
|
||||
|
||||
// Supplemental Loot Parameters.
|
||||
@ -141,6 +142,16 @@
|
||||
"B_Plane_CAS_01_F", // A-164 Wipeout (CAS)
|
||||
"B_Plane_Fighter_01_F" // F/A-181 Black Wasp II
|
||||
];
|
||||
/*
|
||||
_blck_UAVs = [
|
||||
"I_UAV_02_CAS_F",
|
||||
"I_UAV_02_F",
|
||||
"B_UAV_02_CAS_F",
|
||||
"B_UAV_02_F",,
|
||||
"O_UAV_02_CAS_F",
|
||||
"O_UAV_02_F"
|
||||
];
|
||||
*/
|
||||
blck_blacklisted_heli_ammo = [];
|
||||
blck_blacklisted_heli_weapons = [];
|
||||
|
||||
@ -151,16 +162,19 @@
|
||||
|
||||
blck_chanceHeliPatrolBlue = 0.2; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area. The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
blck_patrolHelisBlue = _blck_littleBirds;
|
||||
blck_noPatrolHelisBlue = 1;
|
||||
|
||||
blck_chanceHeliPatrolRed = 08; // 0.4;
|
||||
blck_chanceHeliPatrolRed = 0.8; // 0.4;
|
||||
blck_patrolHelisRed = _blck_armed_hellcats+_blck_armed_orcas + _blck_armed_ghosthawks;
|
||||
blck_noPatrolHelisRed = 1;
|
||||
|
||||
blck_chanceHeliPatrolGreen = 0.9999;
|
||||
blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks;
|
||||
blck_noPatrolHelisGreen = 2;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0.9999;
|
||||
blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters;
|
||||
|
||||
blck_noPatrolHelisOrange = 3;
|
||||
|
||||
////////////////////
|
||||
// Enable / Disable Missions
|
||||
@ -245,7 +259,7 @@
|
||||
blck_SpawnEmplaced_Orange = 5; // Number of static weapons at Orange Missions
|
||||
blck_SpawnEmplaced_Green = 4; // Number of static weapons at Green 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 = 2; // Number of static weapons at Red Missions
|
||||
|
||||
|
||||
|
||||
@ -276,7 +290,7 @@
|
||||
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
@ -303,7 +317,7 @@
|
||||
blck_MaxAI_Green = 21;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.5],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.55],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
@ -311,7 +325,7 @@
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.2],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
["aimingAccuracy",0.4],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
];
|
||||
|
||||
// Blue Missions
|
||||
@ -329,13 +343,13 @@
|
||||
blck_maxMoneyBlue = 20;
|
||||
|
||||
#ifdef DBDserver
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIIntelligence = [0.3, 0.5, 0.7, 0.9];
|
||||
|
||||
blck_baseSkill = 0.7; // The overal skill of the AI - range 0.1 to 1.0.
|
||||
blck_baseSkill = 1; // The overal skill of the AI - range 0.1 to 1.0.
|
||||
|
||||
/***************************************************************
|
||||
|
||||
@ -348,7 +362,7 @@
|
||||
blck_MaxAI_Orange = 35;
|
||||
blck_AIGrps_Orange = 5;
|
||||
blck_SkillsOrange = [
|
||||
["aimingAccuracy",0.4],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
["aimingAccuracy",0.6],["aimingShake",0.9],["aimingSpeed",0.9],["endurance",1.00],["spotDistance",1.0],["spotTime",1.0],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
];
|
||||
|
||||
// Green Missions
|
||||
@ -356,20 +370,20 @@
|
||||
blck_MaxAI_Green = 31;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.3],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.55],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
blck_MinAI_Red = 12;
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_MaxAI_Red = 18;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.2],["aimingShake",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.4],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
];
|
||||
|
||||
// Blue Missions
|
||||
blck_MinAI_Blue = 8;
|
||||
blck_MaxAI_Blue = 12;
|
||||
blck_MaxAI_Blue = 14;
|
||||
blck_AIGrps_Blue = 2;
|
||||
blck_SkillsBlue = [
|
||||
["aimingAccuracy",0.12],["aimingShake",0.3],["aimingSpeed",0.5],["endurance",0.50],["spotDistance",0.6],["spotTime",0.6],["courage",0.60],["reloadSpeed",0.60],["commanding",0.7],["general",0.60]
|
||||
@ -387,7 +401,7 @@
|
||||
if (_modType isEqualTo "Epoch") then
|
||||
{
|
||||
diag_log format["[blckeagls] Loading Mission System using Parameters for %1 for militarized servers",_modType];
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_epoch.sqf";
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_epoch_mil.sqf";
|
||||
waitUntil {(isNil "blck_configsEpochLoaded") isEqualTo false;};
|
||||
waitUntil{blck_configsEpochLoaded};
|
||||
blck_configsEpochLoaded = nil;
|
||||
@ -397,7 +411,7 @@
|
||||
if (_modType isEqualTo "Exile") then
|
||||
{
|
||||
diag_log format["[blckeagls] Loading Mission System using Parameters for %1 for militarized servers",_modType];
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile.sqf";
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile_mil.sqf";
|
||||
waitUntil {(isNil "blck_configsExileLoaded") isEqualTo false;};
|
||||
waitUntil{blck_configsExileLoaded};
|
||||
blck_configsExileLoaded = nil;
|
||||
|
@ -33,14 +33,15 @@ switch (toLower (worldName)) do
|
||||
case "altis":
|
||||
{
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1.5; // Daytime time accelearation
|
||||
blck_timeAccelerationDay = 0.5; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
blck_maxCrashSites = 3;
|
||||
};
|
||||
case"tanoa":
|
||||
{
|
||||
blck_maxCrashSites = 2;
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1.4; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
@ -53,10 +54,10 @@ switch (toLower (worldName)) do
|
||||
blck_enableBlueMissions = -1;
|
||||
blck_enableHunterMissions = 1;
|
||||
blck_enableScoutsMissions = -1;
|
||||
blck_maxCrashSites = -1; // recommended settings: 3 for Altis, 2 for Tanoa, 1 for smaller maps. Set to -1 to disable
|
||||
blck_maxCrashSites = 1; // recommended settings: 3 for Altis, 2 for Tanoa, 1 for smaller maps. Set to -1 to disable
|
||||
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 2; // Daytime time accelearation
|
||||
blck_timeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
};
|
||||
@ -83,34 +84,47 @@ switch (toLower (worldName)) do
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
};
|
||||
case "malden":
|
||||
{
|
||||
_arr = date call BIS_fnc_sunriseSunsetTime;
|
||||
_sunrise = _arr select 0;
|
||||
_sunset = _arr select 1;
|
||||
_time = dayTime;
|
||||
_daylight = _sunset - _sunrise;
|
||||
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = (_daylight / 2.5); // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 8; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = ((24 - _daylight) / 1.5); // Nighttim time acceleration
|
||||
};
|
||||
};
|
||||
|
||||
if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
|
||||
if (blck_debugON || (blck_debugLevel > 0)) then // These variables are found in \custom_server\compiles\blck_variables.sqf
|
||||
{
|
||||
// Used primarily for debugging.
|
||||
diag_log "[blckeagls] Debug seting is ON, Custom configurations used";
|
||||
|
||||
blck_useTimeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 12; // Daytime time accelearation
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 18; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 24; // Nighttim time acceleration
|
||||
|
||||
blck_mainThreadUpdateInterval = 10;
|
||||
blck_enableOrangeMissions = 1;
|
||||
blck_enableGreenMissions = 1;
|
||||
blck_enableRedMissions = 1;
|
||||
blck_enableBlueMissions = 1;
|
||||
blck_enableGreenMissions = -1;
|
||||
blck_enableRedMissions = -1;
|
||||
blck_enableBlueMissions = -1;
|
||||
blck_enableHunterMissions = -1;
|
||||
blck_enableScoutsMissions = -1;
|
||||
blck_maxCrashSites = 1;
|
||||
blck_maxCrashSites = -3;
|
||||
|
||||
blck_enabeUnderwaterMissions = -1;
|
||||
//blck_enabeUnderwaterMissions = 1;
|
||||
|
||||
blck_cleanupCompositionTimer = 10; // Time after mission completion at which items in the composition are deleted.
|
||||
blck_AliveAICleanUpTimer = 10; // Time after mission completion at which any remaining live AI are deleted.
|
||||
blck_bodyCleanUpTimer = 10;
|
||||
blck_cleanupCompositionTimer = 120; // Time after mission completion at which items in the composition are deleted.
|
||||
blck_AliveAICleanUpTimer = 120; // Time after mission completion at which any remaining live AI are deleted.
|
||||
blck_bodyCleanUpTimer = 120;
|
||||
|
||||
blck_chanceHeliPatrolBlue = 1;
|
||||
//blck_chanceHeliPatrolBlue = 1;
|
||||
blck_SpawnEmplaced_Orange = 4; // Number of static weapons at Orange Missions
|
||||
blck_SpawnEmplaced_Green = 3; // Number of static weapons at Green Missions
|
||||
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
|
||||
@ -139,8 +153,8 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
|
||||
blck_TMax_Crashes = 15;
|
||||
|
||||
//blck_MissionTimout = 360; // 40 min
|
||||
blck_MinAI_Blue = 1;
|
||||
blck_MaxAI_Blue = 2;
|
||||
blck_MinAI_Blue = 3;
|
||||
blck_MaxAI_Blue = 5;
|
||||
blck_AIGrps_Blue = 1;
|
||||
|
||||
|
||||
|
@ -13,10 +13,9 @@
|
||||
*/
|
||||
|
||||
#define modUsed
|
||||
//#define DBDserver
|
||||
#define DBDserver
|
||||
#define wpModeMove
|
||||
#define useAPEX
|
||||
#define useDynamicSimulation
|
||||
//#define blck_debugMode
|
||||
//#define blck_debugMode3
|
||||
//#define blck_milServer
|
@ -1,5 +1,3 @@
|
||||
private ["_version","_versionDate"];
|
||||
|
||||
_blck_version = "6.59 Build 64";
|
||||
_blck_versionDate = "6-12-17 9:00 AM";
|
||||
|
||||
_blck_version = "6.61 Build 70";
|
||||
_blck_versionDate = "8-11-17 9:00 PM";
|
||||
|
@ -0,0 +1,433 @@
|
||||
/*
|
||||
Generic Mission Spawner
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last modified 4/11/17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
private ["_abort","_crates","_aiGroup","_objects","_groupPatrolRadius","_missionLandscape","_mines","_blck_AllMissionAI","_blck_localMissionMarker","_AI_Vehicles","_timeOut","_aiDifficultyLevel"];
|
||||
params["_coords","_mission",["_allowReinforcements",true]];
|
||||
diag_log format["_missionSpawner (18):: _allowReinforcements = %1",_allowReinforcements];
|
||||
|
||||
////////
|
||||
// set all variables needed for the missions
|
||||
// data is pulled either from the mission description or from the _mission variable passsed as a parameter
|
||||
// Deal with situations where some of these variables might not be defined as well.
|
||||
////////
|
||||
|
||||
// _mission params[_missionListOrange,_pathOrange,"OrangeMarker","orange",blck_TMin_Orange,blck_TMax_Orange];
|
||||
_markerClass = _mission select 2;
|
||||
_aiDifficultyLevel = _mission select 3;
|
||||
|
||||
if (blck_debugLevel > 0) then {diag_log format["_fnc_mainThread:: -->> _markerClass = %1",_markerClass];};
|
||||
|
||||
[_mission,"active",_coords] call blck_fnc_updateMissionQue;
|
||||
blck_ActiveMissionCoords pushback _coords;
|
||||
diag_log format["[blckeagls] missionSpawner (17):: Initializing mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
|
||||
private["_chanceHeliPatrol","_noPara","_reinforcementLootCounts","_chanceLoot","_heliCrew","_loadCratesTiming"];
|
||||
|
||||
if (isNil "_markerColor") then {_markerColor = "ColorBlack"};
|
||||
if (isNil "_markerType") then {_markerType = ["mil_box",[]]};
|
||||
//if (isNil "_timeOut") then {_timeOut = -1;};
|
||||
if (isNil "_loadCratesTiming") then {_loadCratesTiming = blck_loadCratesTiming}; // valid choices are "atMissionCompletion" and "atMissionSpawn";
|
||||
|
||||
private["_useMines","_blck_AllMissionAI","_delayTime","_groupPatrolRadius"];
|
||||
if (isNil "_useMines") then {_useMines = blck_useMines;};
|
||||
|
||||
_objects = [];
|
||||
_mines = [];
|
||||
_crates = [];
|
||||
_aiGroup = [];
|
||||
_missionAIVehicles = [];
|
||||
_blck_AllMissionAI = [];
|
||||
_AI_Vehicles = [];
|
||||
_blck_localMissionMarker = [_markerClass,_coords,"","",_markerColor,_markerType];
|
||||
_delayTime = 1;
|
||||
_groupPatrolRadius = 50;
|
||||
|
||||
if (blck_labelMapMarkers select 0) then
|
||||
{
|
||||
//diag_log "labeling map markers *****";
|
||||
_blck_localMissionMarker set [2, _markerMissionName];
|
||||
};
|
||||
if !(blck_preciseMapMarkers) then
|
||||
{
|
||||
//diag_log "Map marker will be OFFSET from the mission position";
|
||||
_blck_localMissionMarker set [1,[_coords,75] call blck_fnc_randomPosition];
|
||||
};
|
||||
_blck_localMissionMarker set [3,blck_labelMapMarkers select 1]; // Use an arrow labeled with the mission name?
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (91) message players and spawn a mission marker";};
|
||||
[["start",_startMsg,_blck_localMissionMarker select 2]] call blck_fnc_messageplayers;
|
||||
[_blck_localMissionMarker] execVM "debug\spawnMarker.sqf";
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (94) waiting for player to trigger the mission";};
|
||||
#endif
|
||||
////////
|
||||
// All parameters are defined, lets wait until a player is nearby or the mission has timed out
|
||||
////////
|
||||
|
||||
private["_wait","_missionStartTime","_playerInRange","_missionTimedOut"];
|
||||
_missionStartTime = diag_tickTime;
|
||||
_playerInRange = false;
|
||||
_missionTimedOut = false;
|
||||
_wait = true;
|
||||
if (blck_debugLevel > 0) then {diag_log "missionSpawner:: (105) starting mission trigger loop"};
|
||||
|
||||
while {_wait} do
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
//diag_log "missionSpawner:: top of mission trigger loop";
|
||||
if (blck_debugLevel > 2) exitWith {_playerInRange = true;};
|
||||
#endif
|
||||
|
||||
if ([_coords, blck_TriggerDistance, false] call blck_fnc_playerInRange) exitWith {_playerInRange = true;};
|
||||
if ([_missionStartTime] call blck_fnc_timedOut) exitWith {_missionTimedOut = true;};
|
||||
uiSleep 5;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format["missionSpawner:: Trigger Loop - blck_debugLevel = %1 and _coords = %2",blck_debugLevel, _coords];
|
||||
diag_log format["missionSpawner:: Trigger Loop - players in range = %1",{isPlayer _x && _x distance2D _coords < blck_TriggerDistance} count allPlayers];
|
||||
diag_log format["missionSpawner:: Trigger Loop - timeout = %1", [_missionStartTime] call blck_fnc_timedOut];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
|
||||
if (_missionTimedOut) exitWith
|
||||
{
|
||||
/*
|
||||
|
||||
*/
|
||||
// Deal with the case in which the mission timed out.
|
||||
//["timeOut",_endMsg,_blck_localMissionMarker select 2] call blck_fnc_messageplayers;
|
||||
blck_recentMissionCoords pushback [_coords,diag_tickTime];
|
||||
blck_ActiveMissionCoords = blck_ActiveMissionCoords - [ _coords];
|
||||
[_mission,"inactive",[0,0,0]] call blck_fnc_updateMissionQue;
|
||||
blck_missionsRunning = blck_missionsRunning - 1;
|
||||
[_blck_localMissionMarker select 0] call compile preprocessfilelinenumbers "debug\deleteMarker.sqf";
|
||||
//_blck_localMissionMarker set [1,[0,0,0]];
|
||||
//_blck_localMissionMarker set [2,""];
|
||||
[_objects, 0.1] spawn blck_fnc_cleanupObjects;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (105) Mission Timed Out: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
|
||||
////////
|
||||
// Spawn the mission objects, loot chest, and AI
|
||||
////////
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (112) -- >> Mission tripped: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (count _missionLootBoxes > 0) then
|
||||
{
|
||||
_crates = [_coords,_missionLootBoxes,_loadCratesTiming] call blck_fnc_spawnMissionCrates;
|
||||
}
|
||||
else
|
||||
{
|
||||
_crates = [_coords,[[selectRandom blck_crateTypes,[0,0,0],_crateLoot,_lootCounts]], _loadCratesTiming] call blck_fnc_spawnMissionCrates;
|
||||
|
||||
};
|
||||
|
||||
if (blck_cleanUpLootChests) then
|
||||
{
|
||||
_objects append _crates;
|
||||
};
|
||||
|
||||
//uisleep 2;
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (136) Crates Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
private ["_temp"];
|
||||
if (blck_SmokeAtMissions select 0) then // spawn a fire and smoke near the crate
|
||||
{
|
||||
_temp = [_coords,blck_SmokeAtMissions select 1] call blck_fnc_smokeAtCrates;
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_objects append _temp;
|
||||
};
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
if (_useMines) then
|
||||
{
|
||||
_mines = [_coords] call blck_fnc_spawnMines;
|
||||
//uiSleep _delayTime;;
|
||||
};
|
||||
uiSleep _delayTime;
|
||||
_temp = [];
|
||||
if (_missionLandscapeMode isEqualTo "random") then
|
||||
{
|
||||
_temp = [_coords,_missionLandscape, 3, 15, 2] call blck_fnc_spawnRandomLandscape;
|
||||
} else {
|
||||
_temp = [_coords, floor(random(360)),_missionLandscape,true] call blck_fnc_spawnCompositionObjects;
|
||||
//uiSleep 1;
|
||||
};
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_objects append _temp;
|
||||
};
|
||||
//diag_log format["_fnc_missionSpawner:: (181)->> _objects = %1",_objects];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (170) Landscape spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
uiSleep _delayTime;;
|
||||
|
||||
_temp = [_missionLootVehicles] call blck_fnc_spawnMissionLootVehicles;
|
||||
//uisleep 1;
|
||||
_crates append _temp;
|
||||
|
||||
uiSleep _delayTime;
|
||||
|
||||
_abort = false;
|
||||
_temp = [[],[],false];
|
||||
_temp = [_coords, _minNoAI,_maxNoAI,_aiDifficultyLevel,_uniforms,_headGear] call blck_fnc_spawnMissionAI;
|
||||
//[_coords, _minNoAI,_maxNoAI,_aiDifficultyLevel,_uniforms,_headGear] call blck_fnc_spawnMissionAI;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then {
|
||||
diag_log format["missionSpawner :: (185) blck_fnc_spawnMissionAI returned a value of _temp = %1",_temp]; uiSleep 1;
|
||||
};
|
||||
|
||||
_abort = _temp select 1;
|
||||
if (blck_debugLevel > 2) then {
|
||||
diag_log format["missionSpawner :: (190) blck_fnc_spawnMissionAI returned a value of _abort = %1",_abort]; uiSleep 1;
|
||||
};
|
||||
#endif
|
||||
|
||||
if (_abort) exitWith
|
||||
{
|
||||
if (blck_debugLevel > 1) then {
|
||||
diag_log "missionSpawner:: (194) grpNull returned, mission termination criteria met, calling blck_fnc_endMission"
|
||||
};
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true] call blck_fnc_endMission;
|
||||
};
|
||||
if !(_abort) then
|
||||
{
|
||||
_blck_AllMissionAI append (_temp select 0);
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (202) AI Patrols Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
_temp = [[],[],false];
|
||||
_abort = false;
|
||||
private["_patrolVehicles"];
|
||||
if (blck_useVehiclePatrols && (_noVehiclePatrols > 0)) then
|
||||
{
|
||||
_temp = [_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
|
||||
//[_coords,_noVehiclePatrols,_aiDifficultyLevel,_uniforms,_headGear,_markerClass] call blck_fnc_spawnMissionVehiclePatrols;
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then {
|
||||
diag_log format["missionSpawner :: (216) blck_fnc_spawnMissionVehiclePatrols returned _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
};
|
||||
if !(_abort) then
|
||||
{
|
||||
_patrolVehicles = _temp select 0;
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (272) Vehicle Patrols Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
if (_abort) exitWith
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then {
|
||||
diag_log "missionSpawner:: (222) grpNull returned, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true] call blck_fnc_endMission;
|
||||
};
|
||||
|
||||
uiSleep _delayTime;
|
||||
_temp = [[],[],false];
|
||||
_abort = false;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
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
|
||||
|
||||
if (blck_useStatic && (_noEmplacedWeapons > 0)) then
|
||||
{
|
||||
// params["_missionEmplacedWeapons","_noEmplacedWeapons","_aiDifficultyLevel","_coords","_uniforms","_headGear"];
|
||||
_temp = [_missionEmplacedWeapons,_noEmplacedWeapons,_aiDifficultyLevel,_coords,_uniforms,_headGear] call blck_fnc_spawnEmplacedWeaponArray;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format ["missionSpawner:: (232) blck_fnc_spawnEmplacedWeaponArray returned _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
};
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format ["missionSpawner:: (241) _abort = %1",_abort];
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
if !(_abort) then
|
||||
{
|
||||
_objects append (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (253) Static Weapons Spawned: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
};
|
||||
};
|
||||
if (_abort) exitWith
|
||||
{
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (261) grpNull ERROR in blck_fnc_spawnEmplacedWeaponArray, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
|
||||
if (_allowReinforcements) then
|
||||
{
|
||||
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
|
||||
temp = [];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (268) calling in reinforcements: Current mission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
};
|
||||
#endif
|
||||
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
};
|
||||
// Trigger for mission end
|
||||
//diag_log format["[blckeagls] mission Spawner _endCondition = %1",_endCondition];
|
||||
private["_missionComplete","_endIfPlayerNear","_endIfAIKilled"];
|
||||
_missionComplete = -1;
|
||||
_startTime = diag_tickTime;
|
||||
|
||||
switch (_endCondition) do
|
||||
{
|
||||
case "playerNear": {_endIfPlayerNear = true;_endIfAIKilled = false;};
|
||||
case "allUnitsKilled": {_endIfPlayerNear = false;_endIfAIKilled = true;};
|
||||
case "allKilledOrPlayerNear": {_endIfPlayerNear = true;_endIfAIKilled = true;};
|
||||
};
|
||||
//diag_log format["missionSpawner :: (269) _endIfPlayerNear = %1 _endIfAIKilled= %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
private["_locations"];
|
||||
_locations = [_coords];
|
||||
{
|
||||
_locations pushback (getPos _x);
|
||||
} forEach _crates;
|
||||
|
||||
//diag_log format["missionSpawner:: _coords = %1 | _crates = %2 | _locations = %3",_coords,_crates,_locations];
|
||||
//diag_log format["missionSpawner:: Waiting for player to satisfy mission end criteria of _endIfPlayerNear %1 with _endIfAIKilled %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
while {_missionComplete isEqualTo -1} do
|
||||
{
|
||||
//if (blck_debugLevel isEqualTo 3) exitWith {uiSleep 300};
|
||||
if ((_endIfPlayerNear) && [_locations,10,true] call blck_fnc_playerInRangeArray) exitWith {};
|
||||
if ((_endIfAIKilled) && ({alive _x} count _blck_AllMissionAI) < 1 /*[_blck_AllMissionAI] call blck_fnc_missionAIareDead*/ ) exitWith {};
|
||||
//diag_log format["missionSpawner:: (283) missionCompleteLoop - > players near = %1 and ai alive = %2",[_coords,20] call blck_fnc_playerInRange, {alive _x} count _blck_AllMissionAI];
|
||||
uiSleep 4;
|
||||
};
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 0) then
|
||||
{
|
||||
diag_log format["[blckeagls] missionSpawner:: (414) Mission completion criteria fulfilled: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
diag_log format["missionSpawner :: (415) _endIfPlayerNear = %1 _endIfAIKilled= %2",_endIfPlayerNear,_endIfAIKilled];
|
||||
};
|
||||
#endif
|
||||
//diag_log format["[blckeagls] missionSpawner:: (418) calling endMission: _cords %1 : _markerClass %2 : _aiDifficultyLevel %3 _markerMissionName %4",_coords,_markerClass,_aiDifficultyLevel,_markerMissionName];
|
||||
|
||||
private["_result"];
|
||||
_result = [_mines,_objects,_crates,_blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,false,_patrolVehicles] call blck_fnc_endMission;
|
||||
|
||||
//diag_log format["[blckeagls] missionSpawner:: (420)end of mission: blck_fnc_endMission returned value of %1","pending"];
|
||||
|
@ -349,7 +349,7 @@ if (_abort) exitWith
|
||||
if (_allowReinforcements) then
|
||||
{
|
||||
_weaponList = [_aiDifficultyLevel] call blck_fnc_selectAILoadout;
|
||||
temp = [];
|
||||
_temp = [];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 1) then
|
||||
@ -357,34 +357,47 @@ 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];
|
||||
};
|
||||
#endif
|
||||
private _noChoppers = 3;
|
||||
switch (toLower _aiDifficultyLevel) do
|
||||
{
|
||||
case "blue":{_noChoppers = blck_noPatrolHelisBlue};
|
||||
case "red":{_noChoppers = blck_noPatrolHelisRed};
|
||||
case "green":{_noChoppers = blck_noPatrolHelisGreen};
|
||||
case "orange":{_noChoppers = blck_noPatrolHelisOrange};
|
||||
};
|
||||
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
for "_i" from 1 to (_noChoppers) do
|
||||
{
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
//params["_coords","_aiSkillsLevel","_weapons","_uniforms","_headgear"];
|
||||
|
||||
_temp = [_coords,_aiDifficultyLevel,_weaponList,_uniforms,_headGear] call blck_fnc_spawnMissionReinforcements;
|
||||
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel >= 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
diag_log format["missionSpawner:: blck_fnc_spawnMissionReinforcements call for chopper # %1 out of a total of %2 choppers",_i, _noChoppers];
|
||||
diag_log format["missionSpawner:: _temp = %1",_temp];
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
if (typeName _temp isEqualTo "ARRAY") then
|
||||
{
|
||||
_abort = _temp select 2;
|
||||
_objects pushback (_temp select 0);
|
||||
_blck_AllMissionAI append (_temp select 1);
|
||||
};
|
||||
if (_abort) then
|
||||
{
|
||||
|
||||
#ifdef blck_debugMode
|
||||
if (blck_debugLevel > 2) then
|
||||
{
|
||||
diag_log "missionSpawner:: (276) grpNul or ERROR in blck_fnc_spawnMissionReinforcements, mission termination criteria met, calling blck_endMission";
|
||||
};
|
||||
#endif
|
||||
|
||||
[_mines,_objects,_crates, _blck_AllMissionAI,_endMsg,_blck_localMissionMarker,_coords,_mission,true,_patrolVehicles] call blck_fnc_endMission;
|
||||
};
|
||||
};
|
||||
};
|
||||
// Trigger for mission end
|
||||
|
@ -0,0 +1,75 @@
|
||||
|
||||
/*
|
||||
By Ghostrider-DbD-
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
params["_coords","_grpPilot","_chanceLoot"];
|
||||
_chopperType = selectRandom blck_AIHelis;
|
||||
_grpPilot setVariable["groupVehicle",_chopperType];
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: _chopperType seleted = %1",_chopperType];
|
||||
#endif
|
||||
|
||||
_spawnVector = round(random(360));
|
||||
_spawnDistance = 1000; // + floor(random(1500)); // We need the heli to be on-site quickly to minimize the chance that a small mission has been completed before the paratroops are deployed and added to the list of live AI for the mission
|
||||
_dropLoot = (random(1) < _chanceLoot);
|
||||
|
||||
// Use the new functionality of getPos
|
||||
// https://community.bistudio.com/wiki/getPos
|
||||
_spawnPos = _coords getPos [_spawnDistance,_spawnVector];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
#endif
|
||||
|
||||
_grpPilot setBehaviour "CARELESS";
|
||||
_grpPilot setCombatMode "RED";
|
||||
_grpPilot setSpeedMode "FULL";
|
||||
_grpPilot allowFleeing 0;
|
||||
|
||||
private["_supplyHeli"];
|
||||
//create helicopter and spawn it
|
||||
_supplyHeli = createVehicle [_chopperType, _spawnPos, [], 90, "FLY"];
|
||||
blck_monitoredVehicles pushback _supplyHeli;
|
||||
[_supplyHeli] call blck_fnc_protectVehicle;
|
||||
_supplyHeli setVariable["vehicleGroup",_grpPilot];
|
||||
|
||||
_supplyHeli setDir (_spawnVector -180);
|
||||
_supplyHeli setFuel 1;
|
||||
_supplyHeli engineOn true;
|
||||
_supplyHeli flyInHeight 250;
|
||||
_supplyHeli setVehicleLock "LOCKED";
|
||||
_supplyHeli addEventHandler ["GetOut",{(_this select 0) setFuel 0;(_this select 0) setDamage 1;}];
|
||||
|
||||
clearWeaponCargoGlobal _supplyHeli;
|
||||
clearMagazineCargoGlobal _supplyHeli;
|
||||
clearItemCargoGlobal _supplyHeli;
|
||||
clearBackpackCargoGlobal _supplyHeli;
|
||||
|
||||
_unitPilot = _grpPilot createUnit ["I_helipilot_F", getPos _supplyHeli, [], 0, "FORM"];
|
||||
_unitPilot setSkill 1;
|
||||
_unitPilot assignAsDriver _supplyHeli;
|
||||
_unitPilot moveInDriver _supplyHeli;
|
||||
_grpPilot selectLeader _unitPilot;
|
||||
_grpPilot setVariable["paraGroup",_paraGroup];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
#endif
|
||||
|
||||
//set waypoint for helicopter
|
||||
//params["_pos","_minDis","_maxDis","_group",["_mode","random"],["_wpPatrolMode","SAD"],["_soldierType","null"] ];
|
||||
[_coords,25,40,_grpPilot,"random","SAD","helicpoter"] spawn blck_fnc_setupWaypoints;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: initial pilot waypoints set"];
|
||||
#endif
|
||||
_supplyHeli allowDamage true;
|
||||
_supplyHeli
|
@ -14,7 +14,7 @@ params["_coords","_grpPilot","_chanceLoot"];
|
||||
_chopperType = selectRandom blck_AIHelis;
|
||||
_grpPilot setVariable["groupVehicle",_chopperType];
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: _chopperType seleted = %1",_chopperType];
|
||||
diag_log format["_fnc_spawnMissionHeli:: _chopperType seleted = %1",_chopperType];
|
||||
#endif
|
||||
|
||||
_spawnVector = round(random(360));
|
||||
@ -26,7 +26,7 @@ _dropLoot = (random(1) < _chanceLoot);
|
||||
_spawnPos = _coords getPos [_spawnDistance,_spawnVector];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
diag_log format["_fnc_spawnMissionHeli:: vector was %1 with distance %2 yielding a spawn position of %3 at distance from _coords of %4",_spawnVector,_spawnDistance,_spawnPos, (_coords distance2d _spawnPos)];
|
||||
#endif
|
||||
|
||||
_grpPilot setBehaviour "CARELESS";
|
||||
@ -61,7 +61,7 @@ _grpPilot selectLeader _unitPilot;
|
||||
_grpPilot setVariable["paraGroup",_paraGroup];
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
diag_log format["_fnc_spawnMissionHeli:: heli spawned and pilot added"];
|
||||
#endif
|
||||
|
||||
//set waypoint for helicopter
|
||||
@ -69,7 +69,7 @@ diag_log format["_fnc_missionSpawner:: heli spawned and pilot added"];
|
||||
[_coords,25,40,_grpPilot,"random","SAD","helicpoter"] spawn blck_fnc_setupWaypoints;
|
||||
|
||||
#ifdef blck_debugMode
|
||||
diag_log format["_fnc_missionSpawner:: initial pilot waypoints set"];
|
||||
diag_log format["_fnc_spawnMissionHeli:: initial pilot waypoints set"];
|
||||
#endif
|
||||
|
||||
_supplyHeli allowDamage true;
|
||||
_supplyHeli
|
||||
|
@ -13,9 +13,13 @@
|
||||
*/
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
if (blck_debugON) then {diag_log "[blckeagls] Loading blck_configs.sqf";};
|
||||
|
||||
#ifdef blck_milServer
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_mil.sqf";
|
||||
if (true) exitWith {};
|
||||
#endif
|
||||
|
||||
diag_log "[blckeagls] Loading configurations for Non-militarized servers: blck_configs.sqf";
|
||||
/*
|
||||
Configuration for Addons that support the overall Mission system.
|
||||
These are a module to spawn map addons generated with the Eden Editor
|
||||
@ -23,11 +27,11 @@
|
||||
A time acceleration module.
|
||||
*/
|
||||
|
||||
blck_spawnMapAddons = false; // When true map addons will be spawned based on parameters define in custum_server\MapAddons\MapAddons_init.sqf
|
||||
blck_spawnStaticLootCrates = false; // When true, static loot crates will be spawned and loaded with loot as specified in custom_server\SLS\SLS_init_Epoch.sqf (or its exile equivalent).
|
||||
blck_spawnMapAddons = true; // When true map addons will be spawned based on parameters define in custum_server\MapAddons\MapAddons_init.sqf
|
||||
blck_spawnStaticLootCrates = true; // When true, static loot crates will be spawned and loaded with loot as specified in custom_server\SLS\SLS_init_Epoch.sqf (or its exile equivalent).
|
||||
|
||||
// Note that you can define map-specific variants in custom_server\configs\blck_custom_config.sqf
|
||||
blck_useTimeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_useTimeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
@ -52,7 +56,7 @@
|
||||
///////////////////////////////
|
||||
// Kill message configurations
|
||||
// These determine whether and when messages are sent to players regarding AI Kills or illegal kills that might damage a vehicle.
|
||||
blck_useKillMessages = false; // when true a message will be broadcast to all players each time an AI is killed; may impact server performance.
|
||||
blck_useKillMessages = true; // when true a message will be broadcast to all players each time an AI is killed; may impact server performance.
|
||||
blck_useKillScoreMessage = true; // when true a tile is displayed to the killer with the kill score information
|
||||
blck_useIEDMessages = true; // Displayes a message when a player vehicle detonates and IED (such as would happen if a player killed AI with a forbidden weapon).
|
||||
|
||||
@ -88,10 +92,10 @@
|
||||
blck_VK_Gear = true; // When set to true, AI that have been killed by a player in a vehicle in the list of forbidden vehicles or using a forbiden gun will be stripped of gear and the vehicle will be given blck_RunGearDamage of damage
|
||||
blck_VK_RunoverDamage = true; // when the AI was run over blck_RunGearDamage of damage will be applied to the killer's vehicle.
|
||||
blck_VK_GunnerDamage = true; // when the AI was killed by a gunner on a vehicle that is is in the list of forbidden vehicles, blck_RunGearDamage of damage will be applied to the killer's vehicle each time an AI is killed with a vehicle's gun.
|
||||
blck_forbidenVehicles = ["B_MRAP_01_hmg_F","O_MRAP_02_hmg_F"]; // Add any vehicles for which you wish to forbid vehicle kills
|
||||
blck_forbidenVehicles = [/*"B_MRAP_01_hmg_F","O_MRAP_02_hmg_F","I_MRAP_03_hmg_F","B_MRAP_01_hmg_F","O_MRAP_02_hmg_F"*/]; // Add any vehicles for which you wish to forbid vehicle kills
|
||||
// For a listing of the guns mounted on various land vehicles see the following link: https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Vehicle_Weapons
|
||||
// HMG_M2 is mounted on the armed offroad that is spawned by Epoch
|
||||
blck_forbidenVehicleGuns = ["LMG_RCWS","LMG_M200","HMG_127","HMG_127_APC",/*"HMG_M2",*/"HMG_NSVT","GMG_40mm","GMG_UGV_40mm","autocannon_40mm_CTWS","autocannon_30mm_CTWS","autocannon_35mm","LMG_coax","autocannon_30mm","HMG_127_LSV_01"]; // Add any vehicles for which you wish to forbid vehicle kills, o
|
||||
blck_forbidenVehicleGuns = [/*"LMG_RCWS","LMG_M200","HMG_127","HMG_127_APC","HMG_M2","HMG_NSVT","GMG_40mm","GMG_UGV_40mm","autocannon_40mm_CTWS","autocannon_30mm_CTWS","autocannon_35mm","LMG_coax","autocannon_30mm","HMG_127_LSV_01"*/]; // Add any vehicles for which you wish to forbid vehicle kills, o
|
||||
|
||||
|
||||
///////////////////////////////
|
||||
@ -108,17 +112,17 @@
|
||||
// AI paratrooper reinforcement paramters
|
||||
// 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.
|
||||
// If you never want helicopters to spawn them set the value to 0.
|
||||
blck_chanceParaBlue = 0.1; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission.
|
||||
// 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_noParaBlue = 3; // [1-N]
|
||||
|
||||
blck_chanceParaRed = 0.3;
|
||||
blck_chanceParaRed = 0;
|
||||
blck_noParaRed = 3;
|
||||
|
||||
blck_chanceParaGreen = 0.4;
|
||||
blck_noParaGreen = 0.4;
|
||||
blck_chanceParaGreen = 0;
|
||||
blck_noParaGreen = 4;
|
||||
|
||||
blck_chanceParaOrange = 0.5;
|
||||
blck_chanceParaOrange = 0;
|
||||
blck_noParaOrange = 4;
|
||||
|
||||
// Supplemental Loot Parameters.
|
||||
@ -134,6 +138,13 @@
|
||||
_blck_armed_hurons = ["B_Heli_Transport_03_F","B_Heli_Transport_03_black_F"];
|
||||
_blck_armed_attackHelis = ["B_Heli_Attack_01_F"];
|
||||
_blck_armed_heavyAttackHelis = ["O_Heli_Attack_02_F","O_Heli_Attack_02_black_F"];
|
||||
_blck_fighters = [
|
||||
"O_Plane_CAS_02_F", // /ti-199 Neophron (CAS)
|
||||
"I_Plane_Fighter_03_AA_F", // A-143 Buzzard (AA)
|
||||
"I_Plane_Fighter_04_F", // A-149 Gryphon
|
||||
"B_Plane_CAS_01_F", // A-164 Wipeout (CAS)
|
||||
"B_Plane_Fighter_01_F" // F/A-181 Black Wasp II
|
||||
];
|
||||
blck_blacklisted_heli_ammo = ["24Rnd_missiles","24Rnd_PG_missiles","12Rnd_PG_missiles","2Rnd_LG_scalpel","6Rnd_LG_scalpel","8Rnd_LG_scalpel","M_Scalpel_AT ","14Rnd_80mm_rockets","38Rnd_80mm_rockets"];
|
||||
blck_blacklisted_heli_weapons = ["missiles_SCALPEL","missiles_titan","rockets_Skyfire","missiles_DAGR","missiles_DAR"];
|
||||
|
||||
@ -142,18 +153,23 @@
|
||||
// Heli Patrol Settings
|
||||
///////////////////////////////
|
||||
|
||||
blck_chanceHeliPatrolBlue = 0; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area. The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
blck_chanceHeliPatrolBlue = 0; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area.
|
||||
// The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
// Recommend setting the change = 1 if you wish to spawn multiple helis at a mission.
|
||||
blck_patrolHelisBlue = _blck_littleBirds;
|
||||
blck_noPatrolHelisBlue = 1;
|
||||
|
||||
blck_chanceHeliPatrolRed = 0; // 0.4;
|
||||
blck_chanceHeliPatrolRed = 0.1; // 0.4;
|
||||
blck_patrolHelisRed = _blck_littleBirds;
|
||||
blck_noPatrolHelisRed = 1;
|
||||
|
||||
blck_chanceHeliPatrolGreen = 0;
|
||||
blck_chanceHeliPatrolGreen = 0.4;
|
||||
blck_patrolHelisGreen = _blck_littleBirds;
|
||||
blck_noPatrolHelisGreen = 1;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0;
|
||||
blck_patrolHelisOrange = _blck_littleBirds; //_blck_armed_hellcats+_blck_armed_orcas;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0.5;
|
||||
blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas;
|
||||
blck_noPatrolHelisOrange = 1;
|
||||
|
||||
////////////////////
|
||||
// Enable / Disable Missions
|
||||
@ -228,7 +244,7 @@
|
||||
|
||||
blck_useStatic = true; // When true, AI will man static weapons spawned 20-30 meters from the mission center. These are very effective against most vehicles
|
||||
blck_killEmptyStaticWeapons = true; // When true, static weapons will have damage set to 1 when the AI manning them is killed.
|
||||
blck_staticWeapons = ["B_HMG_01_high_F"/*,"B_GMG_01_high_F","O_static_AT_F"*/]; // [0.50 cal, grenade launcher, AT Launcher]
|
||||
blck_staticWeapons = ["B_HMG_01_high_F","B_GMG_01_high_F"/*,"O_static_AT_F"*/]; // [0.50 cal, grenade launcher, AT Launcher]
|
||||
|
||||
////////////////////
|
||||
// Mission Static Weapon Settings
|
||||
@ -269,7 +285,7 @@
|
||||
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
@ -341,7 +357,7 @@
|
||||
blck_MaxAI_Orange = 25;
|
||||
blck_AIGrps_Orange = 5;
|
||||
blck_SkillsOrange = [
|
||||
["aimingAccuracy",0.2],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
["aimingAccuracy",0.5],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
];
|
||||
|
||||
// Green Missions
|
||||
@ -349,7 +365,7 @@
|
||||
blck_MaxAI_Green = 21;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.18],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.4],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
@ -357,7 +373,7 @@
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.16],["aimingShake",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.3],["aimingShake",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
|
||||
|
@ -2,7 +2,7 @@
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last Modified 5-21-17
|
||||
Last Modified 3-14-17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
@ -403,14 +403,14 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
blck_medicalItems = ["FAK"];
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
blck_NVG = ["NVG_EPOCH"];
|
||||
blck_epochValuables = ["PartOreGold","PartOreSilver","PartOre","ItemGoldBar","ItemSilverBar",
|
||||
"ItemGoldBar10oz","ItemTopaz","ItemOnyx","ItemSapphire","ItemAmethyst",
|
||||
"ItemEmerald","ItemCitrine","ItemRuby","ItemQuartz","ItemJade",
|
||||
"ItemGarnet","ItemKiloHemp"];
|
||||
blck_epochValuables = ["class PartOreGold","cass PartOreSilver","class PartOre","class ItemGoldBar","class ItemSilverBar",
|
||||
"class ItemGoldBar10oz","class ItemTopaz","class ItemOnyx","class ItemSapphire","class ItemAmethyst",
|
||||
"class ItemEmerald","class ItemCitrine","class ItemRuby","class ItemQuartz","class ItemJade",
|
||||
"class ItemGarnet","class ItemKiloHemp"];
|
||||
blck_epochBuildingSupplies = ["PartPlankPack","CinderBlocks","MortarBucket","ItemScraps",
|
||||
"ItemCorrugated","ItemCorrugatedLg","ItemSolar","ItemCables",
|
||||
"ItemBattery","Pelt_EPOCH"];
|
||||
|
||||
blck_buildingMaterials = blck_epochBuildingSupplies;
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
Note however that these configurations can be used in any way you like or replaced with mission-specific customized loot arrays
|
||||
@ -842,4 +842,4 @@ for examples of how you can do this see \Major\Compositions.sqf
|
||||
blck_crateTypes = ["Box_FIA_Ammo_F","Box_FIA_Support_F","Box_FIA_Wps_F","I_SupplyCrate_F","Box_NATO_AmmoVeh_F","Box_East_AmmoVeh_F","IG_supplyCrate_F","Box_NATO_Wps_F","I_CargoNet_01_ammo_F","O_CargoNet_01_ammo_F","B_CargoNet_01_ammo_F"]; // Default crate type.
|
||||
|
||||
diag_log "[blckeagls] Configurations for Epoch Loaded";
|
||||
blck_configsEpochLoaded = true;
|
||||
blck_configsEpochLoaded = true;
|
@ -0,0 +1,868 @@
|
||||
/*
|
||||
for DBD Clan
|
||||
By Ghostrider-DBD-
|
||||
Copyright 2016
|
||||
Last Modified 3-14-17
|
||||
|
||||
--------------------------
|
||||
License
|
||||
--------------------------
|
||||
All the code and information provided here is provided under an Attribution Non-Commercial ShareAlike 4.0 Commons License.
|
||||
|
||||
http://creativecommons.org/licenses/by-nc-sa/4.0/
|
||||
*/
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
////////////
|
||||
// Epoch-specific settings
|
||||
////////////
|
||||
|
||||
// list of locations that are protected against mission spawns
|
||||
|
||||
switch (toLower(worldName)) do
|
||||
{
|
||||
case "altis": {
|
||||
blck_locationBlackList append [
|
||||
//Add location as [[xpos,ypos,0],minimumDistance],
|
||||
// Note that there should not be a comma after the last item in this table
|
||||
[[10800,10641,0],1000] // isthmus - missions that spawn here often are glitched.
|
||||
];
|
||||
};
|
||||
case "tanoa": {
|
||||
blck_locationBlackList append [ ];
|
||||
};
|
||||
};
|
||||
|
||||
/*********************************************************************************
|
||||
|
||||
AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
|
||||
**********************************************************************************/
|
||||
|
||||
blck_AI_Side = RESISTANCE;
|
||||
blck_AIPatrolVehicles = ["B_G_Offroad_01_armed_EPOCH","B_LSV_01_armed_F"]; // Type of vehicle spawned to defend AI bases
|
||||
|
||||
#define useAPEX 1
|
||||
|
||||
blck_AIPatrolVehicles =
|
||||
[
|
||||
//"Exile_Car_Offroad_Armed_Guerilla01",
|
||||
//"Exile_Car_Offroad_Armed_Guerilla02",
|
||||
//"Exile_Car_BTR40_MG_Green",
|
||||
//"Exile_Car_BTR40_MG_Camo",
|
||||
//"Exile_Car_HMMWV_M134_Green",
|
||||
//"Exile_Car_HMMWV_M134_Desert",
|
||||
//"Exile_Car_HMMWV_M134_Desert",
|
||||
//"Exile_Car_HMMWV_M2_Desert",
|
||||
//"B_LSV_01_armed_F",
|
||||
//"_MRAP_02_gmg_ghex_F",
|
||||
//"O_MRAP_02_hmg_ghex_F",
|
||||
//"O_MRAP_03_gmg_ghex_F",
|
||||
"O_MRAP_03_hmg_ghex_F",
|
||||
"B_MBT_01_cannon_F",
|
||||
//"B_MBT_01_mlrs_base_F",
|
||||
"B_MBT_01_mlrs_F",
|
||||
"B_MBT_01_TUSK_F",
|
||||
"B_APC_Tracked_01_AA_F",
|
||||
"B_APC_Tracked_01_CRV_F",
|
||||
"B_APC_Tracked_01_rcws_F"
|
||||
]; // Type of vehicle spawned to defend AI bases
|
||||
// Blacklisted itesm
|
||||
blck_blacklistedOptics = ["optic_Nightstalker","optic_tws","optic_tws_mg"];
|
||||
|
||||
// AI Weapons and Attachments
|
||||
blck_bipods = ["bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli"];
|
||||
|
||||
blck_Optics_Holo = ["optic_Hamr","optic_MRD","optic_Holosight","optic_Holosight_smg","optic_Aco","optic_ACO_grn","optic_ACO_grn_smg","optic_Aco_smg","optic_Yorris"];
|
||||
blck_Optics_Reticule = ["optic_Arco","optic_MRCO"];
|
||||
blck_Optics_Scopes = [
|
||||
"optic_AMS","optic_AMS_khk","optic_AMS_snd",
|
||||
"optic_DMS",
|
||||
"optic_KHS_blk","optic_KHS_hex","optic_KHS_old","optic_KHS_tan",
|
||||
"optic_LRPS",
|
||||
"optic_Nightstalker",
|
||||
"optic_NVS",
|
||||
"optic_SOS",
|
||||
"optic_tws",
|
||||
"optic_tws_mg"
|
||||
];
|
||||
blck_Optics_Apex = [
|
||||
//Apex
|
||||
"optic_Arco_blk_F", "optic_Arco_ghex_F",
|
||||
"optic_DMS_ghex_F",
|
||||
"optic_Hamr_khk_F",
|
||||
"optic_ERCO_blk_F","optic_ERCO_khk_F","optic_ERCO_snd_F",
|
||||
"optic_SOS_khk_F",
|
||||
"optic_LRPS_tna_F","optic_LRPS_ghex_F",
|
||||
"optic_Holosight_blk_F","optic_Holosight_khk_F","optic_Holosight_smg_blk_F"
|
||||
];
|
||||
blck_Optics = blck_Optics_Holo + blck_Optics_Reticule + blck_Optics_Scopes;
|
||||
|
||||
#ifdef useAPEX
|
||||
blck_Optics = blck_Optics + blck_Optics_Apex;
|
||||
#endif
|
||||
blck_bipods = [
|
||||
"bipod_01_F_blk","bipod_01_F_mtp","bipod_01_F_snd","bipod_02_F_blk","bipod_02_F_hex","bipod_02_F_tan","bipod_03_F_blk","bipod_03_F_oli",
|
||||
//Apex
|
||||
"bipod_01_F_khk"
|
||||
];
|
||||
|
||||
blck_silencers = [
|
||||
"muzzle_snds_338_black","muzzle_snds_338_green","muzzle_snds_338_sand","muzzle_snds_93mmg","muzzle_snds_93mmg_tan","muzzle_snds_acp","muzzle_snds_B",
|
||||
"muzzle_snds_H","muzzle_snds_H_MG","muzzle_snds_H_SW","muzzle_snds_L","muzzle_snds_M",
|
||||
//Apex
|
||||
"muzzle_snds_H_khk_F","muzzle_snds_H_snd_F","muzzle_snds_58_blk_F","muzzle_snds_m_khk_F","muzzle_snds_m_snd_F","muzzle_snds_B_khk_F","muzzle_snds_B_snd_F",
|
||||
"muzzle_snds_58_wdm_F","muzzle_snds_65_TI_blk_F","muzzle_snds_65_TI_hex_F","muzzle_snds_65_TI_ghex_F","muzzle_snds_H_MG_blk_F","muzzle_snds_H_MG_khk_F"
|
||||
];
|
||||
|
||||
blck_RifleSniper = [
|
||||
"srifle_EBR_F","srifle_GM6_F","srifle_LRR_F","srifle_DMR_01_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault_556 = [
|
||||
"arifle_SDAR_F","arifle_TRG21_F","arifle_TRG20_F","arifle_TRG21_GL_F","arifle_Mk20_F","arifle_Mk20C_F","arifle_Mk20_GL_F","arifle_Mk20_plain_F","arifle_Mk20C_plain_F","arifle_Mk20_GL_plain_F","arifle_SDAR_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault_650 = [
|
||||
"arifle_Katiba_F","arifle_Katiba_C_F","arifle_Katiba_GL_F","arifle_MXC_F","arifle_MX_F","arifle_MX_GL_F","arifle_MXM_F"
|
||||
];
|
||||
|
||||
blck_RifleAsault = blck_RifleAsault_556 + blck_RifleAsault_650;
|
||||
|
||||
blck_RifleLMG = [
|
||||
"LMG_Mk200_F","LMG_Zafir_F"
|
||||
];
|
||||
|
||||
blck_RifleOther = [
|
||||
"SMG_01_F","SMG_02_F"
|
||||
];
|
||||
|
||||
blck_Pistols = [
|
||||
"hgun_PDW2000_F","hgun_ACPC2_F","hgun_Rook40_F","hgun_P07_F","hgun_Pistol_heavy_01_F","hgun_Pistol_heavy_02_F","hgun_Pistol_Signal_F"
|
||||
];
|
||||
|
||||
blck_DLC_MMG = [
|
||||
"MMG_01_hex_F","MMG_02_sand_F","MMG_01_tan_F","MMG_02_black_F","MMG_02_camo_F"
|
||||
];
|
||||
|
||||
blck_DLC_Sniper = [
|
||||
"srifle_DMR_02_camo_F","srifle_DMR_02_F","srifle_DMR_02_sniper_F","srifle_DMR_03_F","srifle_DMR_03_tan_F","srifle_DMR_04_F","srifle_DMR_04_Tan_F","srifle_DMR_05_blk_F","srifle_DMR_05_hex_F","srifle_DMR_05_tan_F","srifle_DMR_06_camo_F","srifle_DMR_06_olive_F"
|
||||
];
|
||||
blck_apexWeapons = ["arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F"];
|
||||
|
||||
//This defines the random weapon to spawn on the AI
|
||||
//https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Weapons
|
||||
blck_WeaponList_Orange = blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG + blck_DLC_Sniper + blck_DLC_MMG;
|
||||
blck_WeaponList_Green = blck_RifleSniper + blck_RifleAsault_650 +blck_RifleLMG + blck_DLC_MMG + blck_apexWeapons;
|
||||
blck_WeaponList_Blue = blck_RifleOther + blck_RifleAsault_556 +blck_RifleAsault_650;
|
||||
blck_WeaponList_Red = blck_RifleAsault_556 + blck_RifleSniper + blck_RifleAsault_650 + blck_RifleLMG;
|
||||
|
||||
#ifdef useAPEX
|
||||
|
||||
blck_WeaponList_Orange = blck_WeaponList_Orange + blck_apexWeapons;
|
||||
blck_WeaponList_Green = blck_WeaponList_Green + blck_apexWeapons;
|
||||
#endif
|
||||
|
||||
blck_baseBackpacks = ["B_Carryall_ocamo","B_Carryall_oucamo","B_Carryall_mcamo","B_Carryall_oli","B_Carryall_khk","B_Carryall_cbr" ];
|
||||
blck_ApexBackpacks = [
|
||||
"B_Bergen_mcamo_F","B_Bergen_dgtl_F","B_Bergen_hex_F","B_Bergen_tna_F","B_AssaultPack_tna_F","B_Carryall_ghex_F",
|
||||
"B_FieldPack_ghex_F","B_ViperHarness_blk_F","B_ViperHarness_ghex_F","B_ViperHarness_hex_F","B_ViperHarness_khk_F",
|
||||
"B_ViperHarness_oli_F","B_ViperLightHarness_blk_F","B_ViperLightHarness_ghex_F","B_ViperLightHarness_hex_F","B_ViperLightHarness_khk_F","B_ViperLightHarness_oli_F"
|
||||
];
|
||||
|
||||
#ifdef useAPEX
|
||||
blck_backpacks = blck_baseBackpacks + blck_ApexBackpacks;
|
||||
#endif
|
||||
|
||||
blck_BanditHeadgear = ["H_Shemag_khk","H_Shemag_olive","H_Shemag_tan","H_ShemagOpen_khk"];
|
||||
//This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI.
|
||||
blck_headgear = [
|
||||
"H_Cap_blk",
|
||||
"H_Cap_blk_Raven",
|
||||
"H_Cap_blu",
|
||||
"H_Cap_brn_SPECOPS",
|
||||
"H_Cap_grn",
|
||||
"H_Cap_headphones",
|
||||
"H_Cap_khaki_specops_UK",
|
||||
"H_Cap_oli",
|
||||
"H_Cap_press",
|
||||
"H_Cap_red",
|
||||
"H_Cap_tan",
|
||||
"H_Cap_tan_specops_US",
|
||||
"H_Watchcap_blk",
|
||||
"H_Watchcap_camo",
|
||||
"H_Watchcap_khk",
|
||||
"H_Watchcap_sgg",
|
||||
"H_MilCap_blue",
|
||||
"H_MilCap_dgtl",
|
||||
"H_MilCap_mcamo",
|
||||
"H_MilCap_ocamo",
|
||||
"H_MilCap_oucamo",
|
||||
"H_MilCap_rucamo",
|
||||
"H_Bandanna_camo",
|
||||
"H_Bandanna_cbr",
|
||||
"H_Bandanna_gry",
|
||||
"H_Bandanna_khk",
|
||||
"H_Bandanna_khk_hs",
|
||||
"H_Bandanna_mcamo",
|
||||
"H_Bandanna_sgg",
|
||||
"H_Bandanna_surfer",
|
||||
"H_Booniehat_dgtl",
|
||||
"H_Booniehat_dirty",
|
||||
"H_Booniehat_grn",
|
||||
"H_Booniehat_indp",
|
||||
"H_Booniehat_khk",
|
||||
"H_Booniehat_khk_hs",
|
||||
"H_Booniehat_mcamo",
|
||||
"H_Booniehat_tan",
|
||||
"H_Hat_blue",
|
||||
"H_Hat_brown",
|
||||
"H_Hat_camo",
|
||||
"H_Hat_checker",
|
||||
"H_Hat_grey",
|
||||
"H_Hat_tan",
|
||||
"H_StrawHat",
|
||||
"H_StrawHat_dark",
|
||||
"H_Beret_02",
|
||||
"H_Beret_blk",
|
||||
"H_Beret_blk_POLICE",
|
||||
"H_Beret_brn_SF",
|
||||
"H_Beret_Colonel",
|
||||
"H_Beret_grn",
|
||||
"H_Beret_grn_SF",
|
||||
"H_Beret_ocamo",
|
||||
"H_Beret_red",
|
||||
"H_Shemag_khk",
|
||||
"H_Shemag_olive",
|
||||
"H_Shemag_olive_hs",
|
||||
"H_Shemag_tan",
|
||||
"H_ShemagOpen_khk",
|
||||
"H_ShemagOpen_tan",
|
||||
"H_TurbanO_blk",
|
||||
|
||||
//Apex
|
||||
"H_MilCap_tna_F",
|
||||
"H_MilCap_ghex_F",
|
||||
"H_Booniehat_tna_F",
|
||||
"H_Beret_gen_F",
|
||||
"H_MilCap_gen_F",
|
||||
"H_Cap_oli_Syndikat_F",
|
||||
"H_Cap_tan_Syndikat_F",
|
||||
"H_Cap_blk_Syndikat_F",
|
||||
"H_Cap_grn_Syndikat_F"
|
||||
];
|
||||
blck_helmets = [
|
||||
"H_HelmetB",
|
||||
"H_HelmetB_black",
|
||||
"H_HelmetB_camo",
|
||||
"H_HelmetB_desert",
|
||||
"H_HelmetB_grass",
|
||||
"H_HelmetB_light",
|
||||
"H_HelmetB_light_black",
|
||||
"H_HelmetB_light_desert",
|
||||
"H_HelmetB_light_grass",
|
||||
"H_HelmetB_light_sand",
|
||||
"H_HelmetB_light_snakeskin",
|
||||
"H_HelmetB_paint",
|
||||
"H_HelmetB_plain_blk",
|
||||
"H_HelmetB_sand",
|
||||
"H_HelmetB_snakeskin",
|
||||
"H_HelmetCrew_B",
|
||||
"H_HelmetCrew_I",
|
||||
"H_HelmetCrew_O",
|
||||
"H_HelmetIA",
|
||||
"H_HelmetIA_camo",
|
||||
"H_HelmetIA_net",
|
||||
"H_HelmetLeaderO_ocamo",
|
||||
"H_HelmetLeaderO_oucamo",
|
||||
"H_HelmetO_ocamo",
|
||||
"H_HelmetO_oucamo",
|
||||
"H_HelmetSpecB",
|
||||
"H_HelmetSpecB_blk",
|
||||
"H_HelmetSpecB_paint1",
|
||||
"H_HelmetSpecB_paint2",
|
||||
"H_HelmetSpecO_blk",
|
||||
"H_HelmetSpecO_ocamo",
|
||||
"H_CrewHelmetHeli_B",
|
||||
"H_CrewHelmetHeli_I",
|
||||
"H_CrewHelmetHeli_O",
|
||||
"H_HelmetCrew_I",
|
||||
"H_HelmetCrew_B",
|
||||
"H_HelmetCrew_O",
|
||||
"H_PilotHelmetHeli_B",
|
||||
"H_PilotHelmetHeli_I",
|
||||
"H_PilotHelmetHeli_O",
|
||||
"H_Helmet_Skate",
|
||||
"H_HelmetB_TI_tna_F",
|
||||
// Apex
|
||||
//"H_HelmetO_ViperSP_hex_F",
|
||||
//"H_HelmetO_ViperSP_ghex_F",
|
||||
"H_HelmetB_tna_F",
|
||||
"H_HelmetB_Enh_tna_F",
|
||||
"H_HelmetB_Light_tna_F",
|
||||
"H_HelmetSpecO_ghex_F",
|
||||
"H_HelmetLeaderO_ghex_F",
|
||||
"H_HelmetO_ghex_F",
|
||||
"H_HelmetCrew_O_ghex_F"
|
||||
];
|
||||
blck_headgearList = blck_headgear + blck_helmets;
|
||||
//This defines the skin list, some skins are disabled by default to permit players to have high visibility uniforms distinct from those of the AI.
|
||||
blck_SkinList = [
|
||||
//https://community.bistudio.com/wiki/Arma_3_CfgWeapons_Equipment
|
||||
"U_AntigonaBody",
|
||||
"U_AttisBody",
|
||||
"U_B_CombatUniform_mcam","U_B_CombatUniform_mcam_tshirt","U_B_CombatUniform_mcam_vest","U_B_CombatUniform_mcam_worn","U_B_CombatUniform_sgg","U_B_CombatUniform_sgg_tshirt","U_B_CombatUniform_sgg_vest","U_B_CombatUniform_wdl","U_B_CombatUniform_wdl_tshirt","U_B_CombatUniform_wdl_vest",
|
||||
"U_B_CTRG_1","U_B_CTRG_2","U_B_CTRG_3",
|
||||
"U_B_GhillieSuit",
|
||||
"U_B_HeliPilotCoveralls","U_B_PilotCoveralls",
|
||||
"U_B_SpecopsUniform_sgg",
|
||||
"U_B_survival_uniform",
|
||||
"U_B_Wetsuit",
|
||||
//"U_BasicBody",
|
||||
"U_BG_Guerilla1_1","U_BG_Guerilla2_1","U_BG_Guerilla2_2","U_BG_Guerilla2_3","U_BG_Guerilla3_1","U_BG_Guerilla3_2",
|
||||
"U_BG_leader",
|
||||
"U_C_Commoner_shorts","U_C_Commoner1_1","U_C_Commoner1_2","U_C_Commoner1_3","U_C_Commoner2_1","U_C_Commoner2_2","U_C_Commoner2_3",
|
||||
"U_C_Farmer","U_C_Fisherman","U_C_FishermanOveralls","U_C_HunterBody_brn","U_C_HunterBody_grn",
|
||||
//"U_C_Journalist",
|
||||
"U_C_Novak",
|
||||
//"U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Poloshirt_tricolour",
|
||||
"U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_PriestBody","U_C_Scavenger_1","U_C_Scavenger_2",
|
||||
//"U_C_Scientist","U_C_ShirtSurfer_shorts","U_C_TeeSurfer_shorts_1","U_C_TeeSurfer_shorts_2",
|
||||
"U_C_WorkerCoveralls","U_C_WorkerOveralls","U_Competitor",
|
||||
"U_I_CombatUniform","U_I_CombatUniform_shortsleeve","U_I_CombatUniform_tshirt","U_I_G_resistanceLeader_F",
|
||||
"U_I_G_Story_Protagonist_F",
|
||||
"U_I_GhillieSuit",
|
||||
"U_I_HeliPilotCoveralls",
|
||||
"U_I_OfficerUniform",
|
||||
"U_I_pilotCoveralls",
|
||||
"U_I_Wetsuit",
|
||||
"U_IG_Guerilla1_1","U_IG_Guerilla2_1","U_IG_Guerilla2_2","U_IG_Guerilla2_3","U_IG_Guerilla3_1","U_IG_Guerilla3_2",
|
||||
"U_IG_leader",
|
||||
"U_IG_Menelaos",
|
||||
//"U_KerryBody",
|
||||
//"U_MillerBody",
|
||||
//"U_NikosAgedBody",
|
||||
//"U_NikosBody",
|
||||
"U_O_CombatUniform_ocamo","U_O_CombatUniform_oucamo",
|
||||
"U_O_GhillieSuit",
|
||||
"U_O_OfficerUniform_ocamo",
|
||||
"U_O_PilotCoveralls",
|
||||
"U_O_SpecopsUniform_blk",
|
||||
"U_O_SpecopsUniform_ocamo",
|
||||
"U_O_Wetsuit",
|
||||
"U_OG_Guerilla1_1","U_OG_Guerilla2_1","U_OG_Guerilla2_2","U_OG_Guerilla2_3","U_OG_Guerilla3_1","U_OG_Guerilla3_2","U_OG_leader",
|
||||
//"U_OI_Scientist",
|
||||
//"U_OrestesBody",
|
||||
"U_Rangemaster",
|
||||
// DLC
|
||||
"U_B_FullGhillie_ard","U_I_FullGhillie_ard","U_O_FullGhillie_ard","U_B_FullGhillie_sard","U_O_FullGhillie_sard","U_I_FullGhillie_sard","U_B_FullGhillie_lsh","U_O_FullGhillie_lsh","U_I_FullGhillie_lsh",
|
||||
//Apex
|
||||
"U_B_T_Soldier_F",
|
||||
"U_B_T_Soldier_AR_F",
|
||||
"U_B_T_Soldier_SL_F",
|
||||
//"U_B_T_Sniper_F",
|
||||
//"U_B_T_FullGhillie_tna_F",
|
||||
"U_B_CTRG_Soldier_F",
|
||||
"U_B_CTRG_Soldier_2_F",
|
||||
"U_B_CTRG_Soldier_3_F",
|
||||
"U_B_GEN_Soldier_F",
|
||||
"U_B_GEN_Commander_F",
|
||||
"U_O_T_Soldier_F",
|
||||
"U_O_T_Officer_F",
|
||||
//"U_O_T_Sniper_F",
|
||||
//"U_O_T_FullGhillie_tna_F",
|
||||
"U_O_V_Soldier_Viper_F",
|
||||
"U_O_V_Soldier_Viper_hex_F",
|
||||
"U_I_C_Soldier_Para_1_F",
|
||||
"U_I_C_Soldier_Para_2_F",
|
||||
"U_I_C_Soldier_Para_3_F",
|
||||
"U_I_C_Soldier_Para_4_F",
|
||||
"U_I_C_Soldier_Para_5_F",
|
||||
"U_I_C_Soldier_Bandit_1_F",
|
||||
"U_I_C_Soldier_Bandit_2_F",
|
||||
"U_I_C_Soldier_Bandit_3_F",
|
||||
"U_I_C_Soldier_Bandit_4_F",
|
||||
"U_I_C_Soldier_Bandit_5_F",
|
||||
"U_I_C_Soldier_Camo_F",
|
||||
"U_C_man_sport_1_F",
|
||||
"U_C_man_sport_2_F",
|
||||
"U_C_man_sport_3_F",
|
||||
"U_C_Man_casual_1_F",
|
||||
"U_C_Man_casual_2_F",
|
||||
"U_C_Man_casual_3_F",
|
||||
"U_C_Man_casual_4_F",
|
||||
"U_C_Man_casual_5_F",
|
||||
"U_C_Man_casual_6_F",
|
||||
"U_B_CTRG_Soldier_urb_1_F",
|
||||
"U_B_CTRG_Soldier_urb_2_F",
|
||||
"U_B_CTRG_Soldier_urb_3_F"
|
||||
];
|
||||
|
||||
blck_vests = [
|
||||
"V_1_EPOCH","V_2_EPOCH","V_3_EPOCH","V_4_EPOCH","V_5_EPOCH","V_6_EPOCH","V_7_EPOCH","V_8_EPOCH","V_9_EPOCH","V_10_EPOCH","V_11_EPOCH","V_12_EPOCH","V_13_EPOCH","V_14_EPOCH","V_15_EPOCH","V_16_EPOCH","V_17_EPOCH","V_18_EPOCH","V_19_EPOCH","V_20_EPOCH",
|
||||
"V_21_EPOCH","V_22_EPOCH","V_23_EPOCH","V_24_EPOCH","V_25_EPOCH","V_26_EPOCH","V_27_EPOCH","V_28_EPOCH","V_29_EPOCH","V_30_EPOCH","V_31_EPOCH","V_32_EPOCH","V_33_EPOCH","V_34_EPOCH","V_35_EPOCH","V_36_EPOCH","V_37_EPOCH","V_38_EPOCH","V_39_EPOCH","V_40_EPOCH",
|
||||
// DLC Vests
|
||||
"V_PlateCarrierSpec_blk","V_PlateCarrierSpec_mtp","V_PlateCarrierGL_blk","V_PlateCarrierGL_mtp","V_PlateCarrierIAGL_oli"
|
||||
];
|
||||
//CraftingFood
|
||||
blck_Meats=[
|
||||
"SnakeCarcass_EPOCH","RabbitCarcass_EPOCH","ChickenCarcass_EPOCH","GoatCarcass_EPOCH","SheepCarcass_EPOCH"
|
||||
];
|
||||
blck_Drink = [
|
||||
"WhiskeyNoodle","ItemSodaOrangeSherbet","ItemSodaPurple","ItemSodaMocha","ItemSodaBurst","ItemSodaRbull","FoodWalkNSons"
|
||||
];
|
||||
blck_Food = [
|
||||
"FoodBioMeat","FoodMeeps","FoodSnooter","FoodWalkNSons","sardines_epoch","meatballs_epoch","scam_epoch","sweetcorn_epoch","honey_epoch","CookedSheep_EPOCH","CookedGoat_EPOCH","SnakeMeat_EPOCH",
|
||||
"CookedRabbit_EPOCH","CookedChicken_EPOCH","ItemTrout","ItemSeaBass","ItemTuna","TacticalBacon"
|
||||
];
|
||||
blck_ConsumableItems = blck_Meats + blck_Drink + blck_Food;
|
||||
blck_throwableExplosives = ["HandGrenade","MiniGrenade"];
|
||||
blck_otherExplosives = ["1Rnd_HE_Grenade_shell","3Rnd_HE_Grenade_shell","DemoCharge_Remote_Mag","SatchelCharge_Remote_Mag"];
|
||||
blck_explosives = blck_throwableExplosives + blck_otherExplosives;
|
||||
blck_medicalItems = ["FAK"];
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
blck_NVG = ["NVG_EPOCH"];
|
||||
blck_epochValuables = ["class PartOreGold","cass PartOreSilver","class PartOre","class ItemGoldBar","class ItemSilverBar",
|
||||
"class ItemGoldBar10oz","class ItemTopaz","class ItemOnyx","class ItemSapphire","class ItemAmethyst",
|
||||
"class ItemEmerald","class ItemCitrine","class ItemRuby","class ItemQuartz","class ItemJade",
|
||||
"class ItemGarnet","class ItemKiloHemp"];
|
||||
blck_epochBuildingSupplies = ["PartPlankPack","CinderBlocks","MortarBucket","ItemScraps",
|
||||
"ItemCorrugated","ItemCorrugatedLg","ItemSolar","ItemCables",
|
||||
"ItemBattery","Pelt_EPOCH"];
|
||||
blck_buildingMaterials = blck_epochBuildingSupplies;
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
Note however that these configurations can be used in any way you like or replaced with mission-specific customized loot arrays
|
||||
for examples of how you can do this see \Major\Compositions.sqf
|
||||
***************************************************************************************/
|
||||
|
||||
// values are: number of things from the weapons, magazines, optics, materials(cinder etc), items (food etc) and backpacks arrays to add, respectively.
|
||||
blck_lootCountsOrange = [8,32,8,30,16,1]; // Orange
|
||||
blck_lootCountsGreen = [7,24,6,16,18,1]; // Green
|
||||
blck_lootCountsRed = [5,16,4,10,6,1]; // Red
|
||||
blck_lootCountsBlue = [4,12,3,6,6,1]; // Blue
|
||||
|
||||
blck_BoxLoot_Orange =
|
||||
// Loot is grouped as [weapons],[magazines],[items] in order to be able to use the correct function to load the item into the crate later on.
|
||||
// Each item consist of the following information ["ItemName",minNum, maxNum] where min is the smallest number added and min+max is the largest number added.
|
||||
|
||||
[
|
||||
[// Weapons
|
||||
#ifdef useAPEX
|
||||
"arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F",
|
||||
#endif
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["MMG_01_tan_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_black_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_camo_F","150Rnd_93x64_Mag"],
|
||||
["MMG_02_sand_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_02_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_02_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_02_sniper_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_hex_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_F","10Rnd_127x54_Mag"],
|
||||
["srifle_DMR_05_blk_F","10Rnd_93x64_DMR_05_Mag"],
|
||||
["srifle_DMR_06_olive_F","20Rnd_762x51_Mag"]
|
||||
|
||||
],
|
||||
[//Magazines
|
||||
["3rnd_HE_Grenade_Shell",3,6],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",7,14],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,3],
|
||||
["HandGrenade",1,4],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
// Apex Ammo
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[// Materials and supplies
|
||||
["CinderBlocks",5,15],
|
||||
["jerrycan_epoch",1,2],
|
||||
//["lighter_epoch",0,1],
|
||||
["CircuitParts",2,3],
|
||||
["WoodLog_EPOCH",5,10],
|
||||
["ItemCorrugatedLg",1,6],
|
||||
["ItemCorrugated",3,10],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",5,10],
|
||||
["PartPlankPack",10,19],
|
||||
["ItemLockbox",1,2],
|
||||
["ItemSolar",1,2],
|
||||
["ItemCables",1,2],
|
||||
["ItemBattery",1,2],
|
||||
["Pelt_EPOCH",1,2],
|
||||
["EnergyPackLg",1,3]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,4],["FAK",1,4],["VehicleRepair",1,3],["Rangefinder",1,3],["ItemJade",1,2],["ItemQuartz",1,2],["ItemRuby",1,2],["ItemSapphire",1,2],
|
||||
["ItemKiloHemp",1,2],["ItemRuby",1,2],["ItemSilverBar",1,2],["ItemEmerald",1,2],["ItemTopaz",1,2],["ItemOnyx",1,2],["ItemSapphire",1,2],["ItemAmethyst",1,2],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",1,2],["B_AssaultPack_khk",1,2],["B_AssaultPack_mcamo",1,2],["B_AssaultPack_ocamo",1,2],["B_AssaultPack_rgr",1,2],["B_AssaultPack_sgg",1,2],
|
||||
["B_Carryall_cbr",1,2],["B_Carryall_khk",1,2],["B_Carryall_mcamo",1,2],["B_Carryall_ocamo",1,2],["B_Carryall_oli",1,2],["B_Carryall_oucamo",1,2],["B_FieldPack_blk",1,2],
|
||||
["B_FieldPack_cbr",1,2],["B_FieldPack_khk",1,2],["B_FieldPack_ocamo",1,2],["B_FieldPack_oli",1,2],["B_FieldPack_oucamo",1,2],["B_Kitbag_cbr",1,2],["B_Kitbag_mcamo",1,2],
|
||||
["B_Kitbag_rgr",1,2],["B_Kitbag_sgg",1,2],["B_Parachute",1,2],["B_TacticalPack_blk",1,2],["B_TacticalPack_mcamo",1,2],["B_TacticalPack_ocamo",1,2],["B_TacticalPack_oli",1,2],
|
||||
["B_TacticalPack_rgr",1,2],["smallbackpack_red_epoch",1,2],["smallbackpack_green_epoch",1,2],["smallbackpack_teal_epoch",1,2],["smallbackpack_pink_epoch",1,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Green =
|
||||
[
|
||||
[// Weapons
|
||||
// Format is ["Weapon Name","Magazine Name"],
|
||||
#ifdef useAPEX
|
||||
"arifle_AK12_F","arifle_AK12_GL_F","arifle_AKM_F","arifle_AKM_FL_F","arifle_AKS_F","arifle_ARX_blk_F","arifle_ARX_ghex_F","arifle_ARX_hex_F","arifle_CTAR_blk_F","arifle_CTAR_hex_F",
|
||||
"arifle_CTAR_ghex_F","arifle_CTAR_GL_blk_F","arifle_CTARS_blk_F","arifle_CTARS_hex_F","arifle_CTARS_ghex_F","arifle_SPAR_01_blk_F","arifle_SPAR_01_khk_F","arifle_SPAR_01_snd_F",
|
||||
"arifle_SPAR_01_GL_blk_F","arifle_SPAR_01_GL_khk_F","arifle_SPAR_01_GL_snd_F","arifle_SPAR_02_blk_F","arifle_SPAR_02_khk_F","arifle_SPAR_02_snd_F","arifle_SPAR_03_blk_F",
|
||||
"arifle_SPAR_03_khk_F","arifle_SPAR_03_snd_F","arifle_MX_khk_F","arifle_MX_GL_khk_F","arifle_MXC_khk_F","arifle_MXM_khk_F",
|
||||
#endif
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_02_camo_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_03_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_05_hex_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"]
|
||||
|
||||
],
|
||||
[//Magazines
|
||||
// Format is ["Magazine name, Minimum number to add, Maximum number to add],
|
||||
["3rnd_HE_Grenade_Shell",2,4],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",6,12],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,3],
|
||||
["HandGrenade",1,3],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",4,12],
|
||||
["jerrycan_epoch",1,2],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,5],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",1,3],
|
||||
["ItemCorrugated",2,9],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",3,6],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,3],
|
||||
["ItemSolar",1,2],
|
||||
["ItemCables",1,2],
|
||||
["ItemBattery",1,2],
|
||||
["Pelt_EPOCH",1,2],
|
||||
["EnergyPackLg",1,3]
|
||||
],
|
||||
[//Items
|
||||
// Format is ["Item name, Minimum number to add, Maximum number to add],
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["FAK",1,2],["VehicleRepair",1,3],["Rangefinder",1,3],
|
||||
["ItemKiloHemp",1,2],["ItemRuby",1,2],["ItemSilverBar",1,2],["ItemGoldBar10oz",1,2],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",1,2],["B_AssaultPack_khk",1,2],["B_AssaultPack_mcamo",1,2],["B_AssaultPack_ocamo",1,2],["B_AssaultPack_rgr",1,2],["B_AssaultPack_sgg",1,2],
|
||||
["B_Carryall_cbr",1,2],["B_Carryall_khk",1,2],["B_Carryall_mcamo",1,2],["B_Carryall_ocamo",1,2],["B_Carryall_oli",1,2],["B_Carryall_oucamo",1,2],["B_FieldPack_blk",1,2],
|
||||
["B_FieldPack_cbr",1,2],["B_FieldPack_khk",1,2],["B_FieldPack_ocamo",1,2],["B_FieldPack_oli",1,2],["B_FieldPack_oucamo",1,2],["B_Kitbag_cbr",1,2],["B_Kitbag_mcamo",1,2],
|
||||
["B_Kitbag_rgr",1,2],["B_Kitbag_sgg",1,2],["B_Parachute",1,2],["B_TacticalPack_blk",1,2],["B_TacticalPack_mcamo",1,2],["B_TacticalPack_ocamo",1,2],["B_TacticalPack_oli",1,2],
|
||||
["B_TacticalPack_rgr",1,2],["smallbackpack_red_epoch",1,2],["smallbackpack_green_epoch",1,2],["smallbackpack_teal_epoch",1,2],["smallbackpack_pink_epoch",1,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Blue =
|
||||
[
|
||||
[// Weapons
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Mk20_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20C_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["m16_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["m16Red_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["m4a3_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["SMG_02_F","30Rnd_9x21_Mag"],
|
||||
["SMG_01_F","30Rnd_45ACP_Mag_SMG_01"],
|
||||
["Hgun_PDW2000_F","30Rnd_9x21_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["m249_EPOCH","200Rnd_556x45_M249"],
|
||||
["m249Tan_EPOCH","200Rnd_556x45_M249"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"]
|
||||
],
|
||||
[//Magazines
|
||||
["3rnd_HE_Grenade_Shell",1,2],
|
||||
["30Rnd_65x39_caseless_green",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_556x45_Stanag",3,6],
|
||||
["30Rnd_45ACP_Mag_SMG_01",3,6],
|
||||
["20Rnd_556x45_UW_mag",3,6],
|
||||
["20Rnd_762x51_Mag",3,10],
|
||||
["200Rnd_65x39_cased_Box",3,6],
|
||||
["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,4],
|
||||
["HandGrenade",1,3],
|
||||
["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["150Rnd_93x64_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_AMS_snd",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",2,6],
|
||||
["jerrycan_epoch",1,3],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,3],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",0,4],
|
||||
["ItemCorrugated",3,6],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",1,8],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,2],
|
||||
["EnergyPackLg",0,1]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,5],["VehicleRepair",1,5],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",0,2],["B_AssaultPack_khk",0,2],["B_AssaultPack_mcamo",0,2],["B_AssaultPack_ocamo",0,2],["B_AssaultPack_rgr",0,2],["B_AssaultPack_sgg",0,2],
|
||||
["B_Carryall_cbr",0,2],["B_Carryall_khk",0,2],["B_Carryall_mcamo",0,2],["B_Carryall_ocamo",0,2],["B_Carryall_oli",0,2],["B_Carryall_oucamo",0,2],["B_FieldPack_blk",0,2],
|
||||
["B_FieldPack_cbr",0,2],["B_FieldPack_khk",0,2],["B_FieldPack_ocamo",0,2],["B_FieldPack_oli",0,2],["B_FieldPack_oucamo",0,2],["B_Kitbag_cbr",0,2],["B_Kitbag_mcamo",0,2],
|
||||
["B_Kitbag_rgr",0,2],["B_Kitbag_sgg",0,2],["B_Parachute",0,2],["B_TacticalPack_blk",0,2],["B_TacticalPack_mcamo",0,2],["B_TacticalPack_ocamo",0,2],["B_TacticalPack_oli",0,2],
|
||||
["B_TacticalPack_rgr",0,2],["smallbackpack_red_epoch",0,2],["smallbackpack_green_epoch",0,2],["smallbackpack_teal_epoch",0,2],["smallbackpack_pink_epoch",0,2]
|
||||
]
|
||||
];
|
||||
|
||||
blck_BoxLoot_Red =
|
||||
[
|
||||
[// Weapons
|
||||
["MultiGun","EnergyPackLg"],
|
||||
["arifle_Katiba_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Katiba_GL_F","30Rnd_65x39_caseless_green"],
|
||||
["arifle_Mk20_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20C_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_Mk20_GL_plain_F","30Rnd_556x45_Stanag"],
|
||||
["arifle_MX_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MX_GL_F","30Rnd_65x39_caseless_mag"],
|
||||
//["arifle_MX_SW_Black_Hamr_pointer_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXC_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag"],
|
||||
["arifle_SDAR_F","20Rnd_556x45_UW_mag"],
|
||||
["arifle_TRG20_F","30Rnd_556x45_Stanag"],
|
||||
["m16_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["m16Red_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["m4a3_EPOCH","30Rnd_556x45_Stanag"],
|
||||
["SMG_02_F","30Rnd_9x21_Mag"],
|
||||
["SMG_01_F","30Rnd_45ACP_Mag_SMG_01"],
|
||||
["Hgun_PDW2000_F","30Rnd_9x21_Mag"],
|
||||
["M14_EPOCH","20Rnd_762x51_Mag"],
|
||||
["M14Grn_EPOCH","20Rnd_762x51_Mag"],
|
||||
["arifle_MXM_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["arifle_MXM_Black_F","30Rnd_65x39_caseless_mag_Tracer"],
|
||||
["m107_EPOCH","5Rnd_127x108_Mag"],
|
||||
["m107Tan_EPOCH","5Rnd_127x108_Mag"],
|
||||
["srifle_DMR_01_F","10Rnd_762x51_Mag"],
|
||||
["srifle_LRR_F","7Rnd_408_Mag"],
|
||||
["srifle_EBR_F","20Rnd_762x51_Mag"],
|
||||
["srifle_GM6_F","5Rnd_127x108_APDS_Mag"],
|
||||
["m249_EPOCH","200Rnd_556x45_M249"],
|
||||
["m249Tan_EPOCH","200Rnd_556x45_M249"],
|
||||
["LMG_Mk200_F","200Rnd_65x39_cased_Box_Tracer"],
|
||||
["Arifle_MX_SW_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["Arifle_MX_SW_Black_F","100Rnd_65x39_caseless_mag_Tracer"],
|
||||
["LMG_Zafir_F","150Rnd_762x51_Box_Tracer"],
|
||||
["MMG_01_hex_F","150Rnd_93x64_Mag"],
|
||||
["srifle_DMR_04_Tan_F","10Rnd_338_Mag"],
|
||||
["srifle_DMR_06_camo_F","10Rnd_338_Mag"]
|
||||
],
|
||||
[//Magazines
|
||||
|
||||
["3rnd_HE_Grenade_Shell",1,5],["30Rnd_65x39_caseless_green",3,6],["30Rnd_556x45_Stanag",3,6],["30Rnd_556x45_Stanag",3,6],["30Rnd_45ACP_Mag_SMG_01",3,6],["20Rnd_556x45_UW_mag",3,6],
|
||||
["10Rnd_762x51_Mag",3,6],["20Rnd_762x51_Mag",3,7],["200Rnd_65x39_cased_Box",3,6],["100Rnd_65x39_caseless_mag_Tracer",3,6],
|
||||
["3rnd_HE_Grenade_Shell",1,2],["HandGrenade",1,3],["EnergyPack",2,5],
|
||||
// Marksman Pack Ammo
|
||||
["150Rnd_93x64_Mag",1,4],
|
||||
["10Rnd_338_Mag",1,4],
|
||||
["10Rnd_127x54_Mag" ,1,4],
|
||||
["10Rnd_127x54_Mag",1,4],
|
||||
["10Rnd_93x64_DMR_05_Mag" ,1,4]
|
||||
],
|
||||
[ // Optics
|
||||
["optic_SOS",1,2],["optic_LRPS",1,2],["optic_DMS",1,2],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Holosight",1,3],["acc_flashlight",1,3],["acc_pointer_IR",1,3],
|
||||
["optic_Arco",1,3],["optic_Hamr",1,3],["optic_Aco",1,3],["optic_ACO_grn",1,3],["optic_Aco_smg",1,3],["optic_ACO_grn_smg",1,3],
|
||||
["optic_Holosight",1,3],["optic_Holosight_smg",1,3],["optic_SOS",1,3],["optic_MRCO",1,3],["optic_DMS",1,3],["optic_Yorris",1,3],
|
||||
["optic_MRD",1,3],["optic_LRPS",1,3],["optic_NVS",1,3],["optic_Nightstalker",1,2],
|
||||
["optic_tws",1,3],["optic_tws_mg",1,3],["muzzle_snds_H",1,3],["muzzle_snds_L",1,3],["muzzle_snds_M",1,3],["muzzle_snds_B",1,3],["muzzle_snds_H_MG",1,3],["muzzle_snds_acp",1,3],
|
||||
["optic_AMS_khk",1,3],["optic_KHS_blk",1,3],["optic_KHS_hex",1,3],["optic_KHS_old",1,3],["optic_KHS_tan",1,3]
|
||||
],
|
||||
[
|
||||
["CinderBlocks",2,7],
|
||||
["jerrycan_epoch",1,3],
|
||||
["lighter_epoch",1,1],
|
||||
["CircuitParts",2,6],
|
||||
["WoodLog_EPOCH",10,20],
|
||||
["ItemCorrugatedLg",0,5],
|
||||
["ItemCorrugated",3,7],
|
||||
["ItemMixOil",1,2],
|
||||
["MortarBucket",2,5],
|
||||
["PartPlankPack",10,12],
|
||||
["ItemLockbox",1,2],
|
||||
["EnergyPackLg",0,1]
|
||||
],
|
||||
[//Items
|
||||
["Heal_EPOCH",1,2],["Defib_EPOCH",1,2],["Repair_EPOCH",1,2],["FAK",1,2],["VehicleRepair",1,3],
|
||||
["ItemSodaRbull",1,3],["ItemSodaOrangeSherbet",1,3],["ItemSodaPurple",1,3],["ItemSodaMocha",1,3],["ItemSodaBurst",1,3],
|
||||
["CookedChicken_EPOCH",1,3],["CookedGoat_EPOCH",1,3],["CookedSheep_EPOCH",1,3],["FoodSnooter",1,3],["FoodMeeps",1,3],["FoodBioMeat",1,3],["ItemTuna",1,3],["ItemSeaBass",1,3],["ItemTrout",1,3]
|
||||
],
|
||||
[ // Backpacks
|
||||
["B_AssaultPack_dgtl",0,2],["B_AssaultPack_khk",0,2],["B_AssaultPack_mcamo",0,2],["B_AssaultPack_ocamo",0,2],["B_AssaultPack_rgr",0,2],["B_AssaultPack_sgg",0,2],
|
||||
["B_Carryall_cbr",0,2],["B_Carryall_khk",0,2],["B_Carryall_mcamo",0,2],["B_Carryall_ocamo",0,2],["B_Carryall_oli",0,2],["B_Carryall_oucamo",0,2],["B_FieldPack_blk",0,2],
|
||||
["B_FieldPack_cbr",0,2],["B_FieldPack_khk",0,2],["B_FieldPack_ocamo",0,2],["B_FieldPack_oli",0,2],["B_FieldPack_oucamo",0,2],["B_Kitbag_cbr",0,2],["B_Kitbag_mcamo",0,2],
|
||||
["B_Kitbag_rgr",0,2],["B_Kitbag_sgg",0,2],["B_Parachute",0,2],["B_TacticalPack_blk",0,2],["B_TacticalPack_mcamo",0,2],["B_TacticalPack_ocamo",0,2],["B_TacticalPack_oli",0,2],
|
||||
["B_TacticalPack_rgr",0,2],["smallbackpack_red_epoch",0,2],["smallbackpack_green_epoch",0,2],["smallbackpack_teal_epoch",0,2],["smallbackpack_pink_epoch",0,2]
|
||||
]
|
||||
];
|
||||
|
||||
|
||||
// Time the marker remains after completing the mission in seconds - experimental not yet implemented
|
||||
|
||||
blck_crateTypes = ["Box_FIA_Ammo_F","Box_FIA_Support_F","Box_FIA_Wps_F","I_SupplyCrate_F","Box_NATO_AmmoVeh_F","Box_East_AmmoVeh_F","IG_supplyCrate_F","Box_NATO_Wps_F","I_CargoNet_01_ammo_F","O_CargoNet_01_ammo_F","B_CargoNet_01_ammo_F"]; // Default crate type.
|
||||
|
||||
diag_log "[blckeagls] Configurations for Epoch Loaded";
|
||||
blck_configsEpochLoaded = true;
|
@ -14,6 +14,12 @@
|
||||
|
||||
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
|
||||
|
||||
#ifdef blck_milServer
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile_mil.sqf";
|
||||
if (true) exitWith {};
|
||||
#endif
|
||||
|
||||
diag_log "[blckeagls] Loading Exile-specific configs for Non-militarized servers: blck_configs_exile.sqf";
|
||||
////////////
|
||||
// Exile-specific settings
|
||||
////////////
|
||||
@ -40,8 +46,8 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
|
||||
**********************************************************************************/
|
||||
|
||||
blck_blacklistSpawns = false;
|
||||
blck_listConcreteMixerZones = false;
|
||||
blck_blacklistSpawns = true;
|
||||
blck_listConcreteMixerZones = true;
|
||||
blck_AI_Side = EAST;
|
||||
blck_AIPatrolVehicles = ["Exile_Car_Offroad_Armed_Guerilla01","Exile_Car_Offroad_Armed_Guerilla02","Exile_Car_BTR40_MG_Green","Exile_Car_BTR40_MG_Camo","Exile_Car_HMMWV_M134_Green","Exile_Car_HMMWV_M134_Desert",/*"Exile_Car_HMMWV_M134_Desert","Exile_Car_HMMWV_M2_Desert",*/"B_LSV_01_armed_F"]; // Type of vehicle spawned to defend AI bases
|
||||
|
||||
@ -491,6 +497,9 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
blck_specialItems = blck_throwableExplosives + blck_medicalItems;
|
||||
|
||||
blck_NVG = ["NVGoggles","NVGoggles_INDEP","NVGoggles_OPFOR","Exile_Item_XM8"];
|
||||
blck_buildingMaterials = ["Exile_Item_ExtensionCord","Exile_Item_JunkMetal","Exile_Item_LightBulb","Exile_Item_MetalBoard",
|
||||
"Exile_Item_MetalPole","Exile_Item_MetalScrews","Exile_Item_Cement","Exile_Item_Sand"];
|
||||
blck_tools = ["Exile_Item_Matches","Exile_Item_CookingPot","Exile_Melee_Axe","Exile_Melee_SledgeHammmer","Exile_Item_Handsaw","Exile_Item_Pliers"];
|
||||
|
||||
/***************************************************************************************
|
||||
DEFAULT CONTENTS OF LOOT CRATES FOR EACH MISSION
|
||||
|
@ -55,11 +55,11 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
|
||||
//"Exile_Car_HMMWV_M2_Desert",
|
||||
//"B_LSV_01_armed_F",
|
||||
//"_MRAP_02_gmg_ghex_F",
|
||||
"O_MRAP_02_hmg_ghex_F",
|
||||
"O_MRAP_03_gmg_ghex_F",
|
||||
//"O_MRAP_02_hmg_ghex_F",
|
||||
//"O_MRAP_03_gmg_ghex_F",
|
||||
"O_MRAP_03_hmg_ghex_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_TUSK_F",
|
||||
"B_APC_Tracked_01_AA_F",
|
||||
|
@ -108,17 +108,18 @@
|
||||
// AI paratrooper reinforcement paramters
|
||||
// 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.
|
||||
// If you never want helicopters to spawn them set the value to 0.
|
||||
blck_chanceParaBlue = 0.1; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission.
|
||||
// If you never want paratroops to spawn them set the value to 0.
|
||||
// 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_noParaBlue = 3; // [1-N]
|
||||
|
||||
blck_chanceParaRed = 0.3;
|
||||
blck_chanceParaRed = 0;
|
||||
blck_noParaRed = 3;
|
||||
|
||||
blck_chanceParaGreen = 0.4;
|
||||
blck_noParaGreen = 0.4;
|
||||
blck_chanceParaGreen = 0;
|
||||
blck_noParaGreen = 4;
|
||||
|
||||
blck_chanceParaOrange = 0.5;
|
||||
blck_chanceParaOrange = 0;
|
||||
blck_noParaOrange = 4;
|
||||
|
||||
// Supplemental Loot Parameters.
|
||||
@ -141,6 +142,16 @@
|
||||
"B_Plane_CAS_01_F", // A-164 Wipeout (CAS)
|
||||
"B_Plane_Fighter_01_F" // F/A-181 Black Wasp II
|
||||
];
|
||||
/*
|
||||
_blck_UAVs = [
|
||||
"I_UAV_02_CAS_F",
|
||||
"I_UAV_02_F",
|
||||
"B_UAV_02_CAS_F",
|
||||
"B_UAV_02_F",,
|
||||
"O_UAV_02_CAS_F",
|
||||
"O_UAV_02_F"
|
||||
];
|
||||
*/
|
||||
blck_blacklisted_heli_ammo = [];
|
||||
blck_blacklisted_heli_weapons = [];
|
||||
|
||||
@ -151,16 +162,19 @@
|
||||
|
||||
blck_chanceHeliPatrolBlue = 0.2; //[0 - 1] Set to 0 to deactivate and 1 to always have a heli spawn over the mission center and patrol the mission area. The chance of paratroops dropping from the heli is defined by blck_chancePara(Blue|Red|Green|Orange) above.
|
||||
blck_patrolHelisBlue = _blck_littleBirds;
|
||||
blck_noPatrolHelisBlue = 1;
|
||||
|
||||
blck_chanceHeliPatrolRed = 08; // 0.4;
|
||||
blck_chanceHeliPatrolRed = 0.8; // 0.4;
|
||||
blck_patrolHelisRed = _blck_armed_hellcats+_blck_armed_orcas + _blck_armed_ghosthawks;
|
||||
blck_noPatrolHelisRed = 1;
|
||||
|
||||
blck_chanceHeliPatrolGreen = 0.9999;
|
||||
blck_patrolHelisGreen = _blck_armed_heavyAttackHelis+_blck_armed_ghosthawks;
|
||||
blck_noPatrolHelisGreen = 2;
|
||||
|
||||
blck_chanceHeliPatrolOrange = 0.9999;
|
||||
blck_patrolHelisOrange = _blck_armed_heavyAttackHelis + _blck_fighters;
|
||||
|
||||
blck_noPatrolHelisOrange = 3;
|
||||
|
||||
////////////////////
|
||||
// Enable / Disable Missions
|
||||
@ -245,7 +259,7 @@
|
||||
blck_SpawnEmplaced_Orange = 5; // Number of static weapons at Orange Missions
|
||||
blck_SpawnEmplaced_Green = 4; // Number of static weapons at Green 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 = 2; // Number of static weapons at Red Missions
|
||||
|
||||
|
||||
|
||||
@ -276,7 +290,7 @@
|
||||
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
@ -303,7 +317,7 @@
|
||||
blck_MaxAI_Green = 21;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.5],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.55],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
@ -311,7 +325,7 @@
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.2],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
["aimingAccuracy",0.4],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
];
|
||||
|
||||
// Blue Missions
|
||||
@ -329,13 +343,13 @@
|
||||
blck_maxMoneyBlue = 20;
|
||||
|
||||
#ifdef DBDserver
|
||||
blck_AIAlertDistance = [150,225,250,300]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
blck_AIAlertDistance = [250,325,450,500]; // Radius within which AI will be notified of enemy activity. Depricated as a group-sed system is used now. The group is informed of the enemy location when a group member is hit or killed.
|
||||
//blck_AIAlertDistance = [150,225,400,500];
|
||||
// How precisely player locations will be revealed to AI after an AI kill
|
||||
// values are ordered as follows [blue, red, green, orange];
|
||||
blck_AIIntelligence = [0.3, 0.5, 0.7, 0.9];
|
||||
|
||||
blck_baseSkill = 0.7; // The overal skill of the AI - range 0.1 to 1.0.
|
||||
blck_baseSkill = 1; // The overal skill of the AI - range 0.1 to 1.0.
|
||||
|
||||
/***************************************************************
|
||||
|
||||
@ -348,7 +362,7 @@
|
||||
blck_MaxAI_Orange = 35;
|
||||
blck_AIGrps_Orange = 5;
|
||||
blck_SkillsOrange = [
|
||||
["aimingAccuracy",0.4],["aimingShake",0.5],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",0.7],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
["aimingAccuracy",0.6],["aimingShake",0.9],["aimingSpeed",0.9],["endurance",1.00],["spotDistance",1.0],["spotTime",1.0],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
|
||||
];
|
||||
|
||||
// Green Missions
|
||||
@ -356,20 +370,20 @@
|
||||
blck_MaxAI_Green = 31;
|
||||
blck_AIGrps_Green = 4;
|
||||
blck_SkillsGreen = [
|
||||
["aimingAccuracy",0.3],["aimingShake",0.45],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.65],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
["aimingAccuracy",0.55],["aimingShake",0.75],["aimingSpeed",0.85],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
|
||||
];
|
||||
|
||||
// Red Missions
|
||||
blck_MinAI_Red = 12;
|
||||
blck_MaxAI_Red = 15;
|
||||
blck_MaxAI_Red = 18;
|
||||
blck_AIGrps_Red = 3;
|
||||
blck_SkillsRed = [
|
||||
["aimingAccuracy",0.2],["aimingShake",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.4],["aimingShake",0.6],["aimingSpeed",0.6],["endurance",0.80],["spotDistance",0.7],["spotTime",0.8],["courage",0.80],["reloadSpeed",0.70],["commanding",0.8],["general",0.70]
|
||||
];
|
||||
|
||||
// Blue Missions
|
||||
blck_MinAI_Blue = 8;
|
||||
blck_MaxAI_Blue = 12;
|
||||
blck_MaxAI_Blue = 14;
|
||||
blck_AIGrps_Blue = 2;
|
||||
blck_SkillsBlue = [
|
||||
["aimingAccuracy",0.12],["aimingShake",0.3],["aimingSpeed",0.5],["endurance",0.50],["spotDistance",0.6],["spotTime",0.6],["courage",0.60],["reloadSpeed",0.60],["commanding",0.7],["general",0.60]
|
||||
@ -387,7 +401,7 @@
|
||||
if (_modType isEqualTo "Epoch") then
|
||||
{
|
||||
diag_log format["[blckeagls] Loading Mission System using Parameters for %1 for militarized servers",_modType];
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_epoch.sqf";
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_epoch_mil.sqf";
|
||||
waitUntil {(isNil "blck_configsEpochLoaded") isEqualTo false;};
|
||||
waitUntil{blck_configsEpochLoaded};
|
||||
blck_configsEpochLoaded = nil;
|
||||
@ -397,7 +411,7 @@
|
||||
if (_modType isEqualTo "Exile") then
|
||||
{
|
||||
diag_log format["[blckeagls] Loading Mission System using Parameters for %1 for militarized servers",_modType];
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile.sqf";
|
||||
execVM "\q\addons\custom_server\Configs\blck_configs_exile_mil.sqf";
|
||||
waitUntil {(isNil "blck_configsExileLoaded") isEqualTo false;};
|
||||
waitUntil{blck_configsExileLoaded};
|
||||
blck_configsExileLoaded = nil;
|
||||
|
@ -33,14 +33,15 @@ switch (toLower (worldName)) do
|
||||
case "altis":
|
||||
{
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1.5; // Daytime time accelearation
|
||||
blck_timeAccelerationDay = 0.5; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
blck_maxCrashSites = 3;
|
||||
};
|
||||
case"tanoa":
|
||||
{
|
||||
blck_maxCrashSites = 2;
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1.4; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
@ -53,10 +54,10 @@ switch (toLower (worldName)) do
|
||||
blck_enableBlueMissions = -1;
|
||||
blck_enableHunterMissions = 1;
|
||||
blck_enableScoutsMissions = -1;
|
||||
blck_maxCrashSites = -1; // recommended settings: 3 for Altis, 2 for Tanoa, 1 for smaller maps. Set to -1 to disable
|
||||
blck_maxCrashSites = 1; // recommended settings: 3 for Altis, 2 for Tanoa, 1 for smaller maps. Set to -1 to disable
|
||||
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 2; // Daytime time accelearation
|
||||
blck_timeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
};
|
||||
@ -83,34 +84,47 @@ switch (toLower (worldName)) do
|
||||
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 8; // Nighttim time acceleration
|
||||
};
|
||||
case "malden":
|
||||
{
|
||||
_arr = date call BIS_fnc_sunriseSunsetTime;
|
||||
_sunrise = _arr select 0;
|
||||
_sunset = _arr select 1;
|
||||
_time = dayTime;
|
||||
_daylight = _sunset - _sunrise;
|
||||
|
||||
blck_timeAcceleration = true; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = (_daylight / 2.5); // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 8; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = ((24 - _daylight) / 1.5); // Nighttim time acceleration
|
||||
};
|
||||
};
|
||||
|
||||
if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
|
||||
if (blck_debugON || (blck_debugLevel > 0)) then // These variables are found in \custom_server\compiles\blck_variables.sqf
|
||||
{
|
||||
// Used primarily for debugging.
|
||||
diag_log "[blckeagls] Debug seting is ON, Custom configurations used";
|
||||
|
||||
blck_useTimeAcceleration = false; // When true, time acceleration will be periodically updated based on amount of daylight at that time according to the values below.
|
||||
blck_timeAccelerationDay = 12; // Daytime time accelearation
|
||||
blck_timeAccelerationDay = 1; // Daytime time accelearation
|
||||
blck_timeAccelerationDusk = 18; // Dawn/dusk time accelearation
|
||||
blck_timeAccelerationNight = 24; // Nighttim time acceleration
|
||||
|
||||
blck_mainThreadUpdateInterval = 10;
|
||||
blck_enableOrangeMissions = 1;
|
||||
blck_enableGreenMissions = 1;
|
||||
blck_enableRedMissions = 1;
|
||||
blck_enableBlueMissions = 1;
|
||||
blck_enableGreenMissions = -1;
|
||||
blck_enableRedMissions = -1;
|
||||
blck_enableBlueMissions = -1;
|
||||
blck_enableHunterMissions = -1;
|
||||
blck_enableScoutsMissions = -1;
|
||||
blck_maxCrashSites = 1;
|
||||
blck_maxCrashSites = -3;
|
||||
|
||||
blck_enabeUnderwaterMissions = -1;
|
||||
//blck_enabeUnderwaterMissions = 1;
|
||||
|
||||
blck_cleanupCompositionTimer = 10; // Time after mission completion at which items in the composition are deleted.
|
||||
blck_AliveAICleanUpTimer = 10; // Time after mission completion at which any remaining live AI are deleted.
|
||||
blck_bodyCleanUpTimer = 10;
|
||||
blck_cleanupCompositionTimer = 120; // Time after mission completion at which items in the composition are deleted.
|
||||
blck_AliveAICleanUpTimer = 120; // Time after mission completion at which any remaining live AI are deleted.
|
||||
blck_bodyCleanUpTimer = 120;
|
||||
|
||||
blck_chanceHeliPatrolBlue = 1;
|
||||
//blck_chanceHeliPatrolBlue = 1;
|
||||
blck_SpawnEmplaced_Orange = 4; // Number of static weapons at Orange Missions
|
||||
blck_SpawnEmplaced_Green = 3; // Number of static weapons at Green Missions
|
||||
blck_SpawnEmplaced_Blue = 1; // Number of static weapons at Blue Missions
|
||||
@ -139,8 +153,8 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
|
||||
blck_TMax_Crashes = 15;
|
||||
|
||||
//blck_MissionTimout = 360; // 40 min
|
||||
blck_MinAI_Blue = 1;
|
||||
blck_MaxAI_Blue = 2;
|
||||
blck_MinAI_Blue = 3;
|
||||
blck_MaxAI_Blue = 5;
|
||||
blck_AIGrps_Blue = 1;
|
||||
|
||||
|
||||
|
@ -13,10 +13,9 @@
|
||||
*/
|
||||
|
||||
#define modUsed
|
||||
//#define DBDserver
|
||||
#define DBDserver
|
||||
#define wpModeMove
|
||||
#define useAPEX
|
||||
#define useDynamicSimulation
|
||||
//#define blck_debugMode
|
||||
//#define blck_debugMode3
|
||||
//#define blck_milServer
|
@ -1,5 +1,3 @@
|
||||
private ["_version","_versionDate"];
|
||||
|
||||
_blck_version = "6.60 Build 69";
|
||||
_blck_versionDate = "8/11/17 9:00 AM";
|
||||
|
||||
_blck_version = "6.61 Build 70";
|
||||
_blck_versionDate = "8-11-17 9:00 PM";
|
||||
|
Loading…
Reference in New Issue
Block a user