Bug Fixes. Fixed a few typos for the Exile Configs.

This commit is contained in:
Ghostrider-DbD- 2017-04-10 20:44:41 -04:00
parent 6ac700c048
commit 8b74da3825
11 changed files with 175 additions and 117 deletions

View File

@ -86,4 +86,5 @@
//diag_log format["_fnc_endMission:: (34) _mission = %1",_mission];
[_mission,"inactive",[0,0,0]] call blck_fnc_updateMissionQue;
blck_missionsRunning = blck_missionsRunning - 1;
_aborted

View File

@ -32,13 +32,14 @@ for "_i" from 1 to (count blck_liveMissionAI) do
//diag_log format["_fnc_cleanupAliveAI:: (34) evaluating with delete time = %2 and diag_tickTime %1", diag_tickTime, _units select 1];
if (diag_tickTime > (_units select 1) ) then
{
//diag_log format["_fnc_cleanupAliveAI:: cleaning up AI group %1",_units];
diag_log format["_fnc_cleanupAliveAI:: cleaning up AI group %1",_units];
{
diag_log format["_fnc_cleanupAliveAI:: deleting unit %1",_x];
diag_log format["_fnc_cleanupAliveAI:: vehicle _x = %1",vehicle _x];
if (_x != vehicle _x) then
if (vehicle _x != _x) then // mark the vehicle for deletion
{
[vehicle _x] call blck_fnc_decomissionAIVehicle;
(vehicle _x) setVariable["blck_DeleteAt",diag_tickTime];
};
[_x] call blck_fnc_deleteAI;
}forEach (_units select 0);

View File

@ -13,16 +13,41 @@
http://creativecommons.org/licenses/by-nc-sa/4.0/
*/
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
// Unused at present, reserved for the future
private ["_ai_veh","_ai_veh_type","_ai_veh_name"];
diag_log "Vehicle Decommisioning handler activated";
params["_veh"];
//diag_log "Vehicle Decommisioning handler activated";
params["_ai_veh"];
if (_veh getVariable["DBD_vehType","none"] isEqualTo "emplaced") then // Deal with a static weapon
{
if (blck_killEmptyStaticWeapons) then
{
if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of destroyed where vehicle = %1",_veh];};
_veh setDamage 1;
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
}else { // Deal with vehicles
if (blck_killEmptyAIVehicles) then
{
if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of patrol vehicle destroyed where vehicle = %1",_veh];};
{
_veh setHitPointDamage [_x, 1];
} forEach ["HitLFWheel","HitLF2Wheel","HitRFWheel","HitRF2Wheel","HitEngine","HitLBWheel","HitLMWheel","HitRBWheel","HitRMWheel","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun"];
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: case of release vehicle = %1 to player with blck_missionVehicles = %2",_veh, blck_missionVehicles];};
blck_missionVehicles = blck_missionVehicles - [_veh];
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: blck_missionVehicles updated to %1", blck_missionVehicles];};
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
};
/*
_ai_veh = _this select 0;
*/
_if (_ai_veh getVariable["disabled",false]) exitWith {};
_ai_veh setVariable["disabled",true];

View File

@ -36,64 +36,68 @@ _fn_releaseVehicle = {
{
if (diag_tickTime > (_veh getVariable["blck_DeleteAt",0])) then
{
[_veh] call blck_deleteVehicle;
{
_veh removeAllEventHandlers _x;
}forEach ["Hit","HitPart","GetIn","GetOut","Fired","FiredNear"];
deleteVehicle _veh;
blck_missionVehicles = blck_missionVehicles - [_veh];
};
};
if ({alive _x} count crew _veh < 1) then
{
if (_veh getVariable["DBD_vehType","none"] isEqualTo "emplaced") then // Deal with a static weapon
} else {
if ({alive _x} count crew _veh < 1) then
{
if (blck_killEmptyStaticWeapons) then
if (_veh getVariable["DBD_vehType","none"] isEqualTo "emplaced") then // Deal with a static weapon
{
//if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of destroyed where vehicle = %1",_veh];};
_veh setDamage 1;
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
}else { // Deal with vehicles
if (blck_killEmptyAIVehicles) then
{
//if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of patrol vehicle destroyed where vehicle = %1",_veh];};
if (blck_killEmptyStaticWeapons) then
{
_veh setHitPointDamage [_x, 1];
} forEach ["HitLFWheel","HitLF2Wheel","HitRFWheel","HitRF2Wheel","HitEngine","HitLBWheel","HitLMWheel","HitRBWheel","HitRMWheel","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun"];
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: case of release vehicle = %1 to player with blck_missionVehicles = %2",_veh, blck_missionVehicles];};
blck_missionVehicles = blck_missionVehicles - [_veh];
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: blck_missionVehicles updated to %1", blck_missionVehicles];};
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
};
} else { // Add magazine to vehicle if possible
private ["_crew","_mag","_allMags","_cnt"];
//_veh setVehicleAmmo 1;
//_veh setFuel 1;
// https://community.bistudio.com/wiki/fullCrew
// 0 1 2 3 4
// returns Array - format [[<Object>unit,<String>role,<Number>cargoIndex,<Array>turretPath,<Boolean>personTurret], ...]
//diag_log format["_fnc_vehicleMonitor:: (65) _veh = %1",_veh];
if ({alive _x and !(isPlayer _x)} count (crew _veh) > 0) then
{
_crew = fullCrew _veh;
//diag_log format["_fnc_vehicleMonitor:: (67) _crew = %1",_crew];
{
//diag_log format ["_fnc_vehicleMonitor:: (69) _x = %1",_x];
_mag = _veh currentMagazineTurret (_x select 3);
if (count _mag > 0) then
{
//diag_log format["_fnc_vehicleMonitor:: (71) _mag is typeName %1", typeName _mag];
//diag_log format ["_fnc_vehicleMonitor:: (71) length _mag = %2 and _mag = %1",_mag,count _mag];
_allMags = magazinesAmmo _veh;
//diag_log format["_fnc_vehicleMonitor:: (71) _allMags = %1",_allMags];
_cnt = ( {_mag isEqualTo (_x select 0)}count _allMags);
//diag_log format["_fnc_vehicleMonitor:: (75) _cnt = %1",_cnt];
if (_cnt < 2) then {_veh addMagazineCargo [_mag,2]};
//if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of destroyed where vehicle = %1",_veh];};
_veh setDamage 1;
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
} forEach _crew;
}else { // Deal with vehicles
if (blck_killEmptyAIVehicles) then
{
//if (blck_debugLevel > 2) then {diag_log format["_fnc_vehicleMonitor:: case of patrol vehicle destroyed where vehicle = %1",_veh];};
{
_veh setHitPointDamage [_x, 1];
} forEach ["HitLFWheel","HitLF2Wheel","HitRFWheel","HitRF2Wheel","HitEngine","HitLBWheel","HitLMWheel","HitRBWheel","HitRMWheel","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun","HitTurret","HitGun"];
_veh setVariable["blck_DeleteAt",diag_tickTime + 60];
} else {
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: case of release vehicle = %1 to player with blck_missionVehicles = %2",_veh, blck_missionVehicles];};
blck_missionVehicles = blck_missionVehicles - [_veh];
if (blck_debugLevel > 0) then {diag_log format["_fnc_vehicleMonitor:: blck_missionVehicles updated to %1", blck_missionVehicles];};
[_veh] call blck_fnc_releaseVehicleToPlayers;
};
};
} else { // Add magazine to vehicle if possible
private ["_crew","_mag","_allMags","_cnt"];
//_veh setVehicleAmmo 1;
//_veh setFuel 1;
// https://community.bistudio.com/wiki/fullCrew
// 0 1 2 3 4
// returns Array - format [[<Object>unit,<String>role,<Number>cargoIndex,<Array>turretPath,<Boolean>personTurret], ...]
//diag_log format["_fnc_vehicleMonitor:: (65) _veh = %1",_veh];
if ({alive _x and !(isPlayer _x)} count (crew _veh) > 0) then
{
_crew = fullCrew _veh;
//diag_log format["_fnc_vehicleMonitor:: (67) _crew = %1",_crew];
{
//diag_log format ["_fnc_vehicleMonitor:: (69) _x = %1",_x];
_mag = _veh currentMagazineTurret (_x select 3);
if (count _mag > 0) then
{
//diag_log format["_fnc_vehicleMonitor:: (71) _mag is typeName %1", typeName _mag];
//diag_log format ["_fnc_vehicleMonitor:: (71) length _mag = %2 and _mag = %1",_mag,count _mag];
_allMags = magazinesAmmo _veh;
//diag_log format["_fnc_vehicleMonitor:: (71) _allMags = %1",_allMags];
_cnt = ( {_mag isEqualTo (_x select 0)}count _allMags);
//diag_log format["_fnc_vehicleMonitor:: (75) _cnt = %1",_cnt];
if (_cnt < 2) then {_veh addMagazineCargo [_mag,2]};
};
} forEach _crew;
};
};
};
}forEach _vehList;

View File

@ -14,7 +14,7 @@
blck_debugON = false;
blck_debugLevel = 0; // Sets level of detail for debugging info - WIP.
blck_minFPS = 10;
blck_minFPS = 10;
////////////////////////////////////////////////
// Do Not Touch Anything Below This Line

View File

@ -109,16 +109,16 @@
// 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.2; // [0 - 1] set to 0 to deactivate and 1 to always have paratroops spawn over the center of the mission.
blck_chanceParaBlue = 0.1; // [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_noParaRed = 3;
blck_chanceParaGreen = 0.2;
blck_chanceParaGreen = 0.4;
blck_noParaGreen = 0.4;
blck_chanceParaOrange = 0.4;
blck_chanceParaOrange = 0.5;
blck_noParaOrange = 4;
// Supplemental Loot Parameters.
@ -152,7 +152,7 @@
blck_patrolHelisGreen = _blck_littleBirds;
blck_chanceHeliPatrolOrange = 0.5;
blck_patrolHelisOrange = _blck_armed_hellcats+_blck_armed_orcas;
blck_patrolHelisOrange = _blck_littleBirds; //_blck_armed_hellcats+_blck_armed_orcas;
////////////////////
@ -251,7 +251,6 @@
blck_groupBehavior = "SENTRY"; // Suggested choices are "SAD", "SENTRY", "AWARE" https://community.bistudio.com/wiki/ArmA:_AI_Combat_Modes
blck_combatMode = "RED"; // Change this to "YELLOW" if the AI wander too far from missions for your tastes.
blck_groupFormation = "WEDGE"; // Possibilities include "WEDGE","VEE","FILE","DIAMOND"
blck_AI_Side = RESISTANCE;
blck_addAIMoney = true;
blck_chanceBackpack = 0.3; // Chance AI will be spawned with a backpack
blck_useNVG = true; // When true, AI will be spawned with NVG if is dark
@ -287,7 +286,7 @@
// Orange Missions
blck_MinAI_Orange = 20;
blck_MaxAI_Orange = 25;
blck_AIGrps_Orange = 6;
blck_AIGrps_Orange = 5;
blck_SkillsOrange = [
["aimingAccuracy",0.4],["aimingShake",0.7],["aimingSpeed",0.7],["endurance",1.00],["spotDistance",1.0],["spotTime",1.0],["courage",1.00],["reloadSpeed",1.00],["commanding",1.00],["general",1.00]
];
@ -295,7 +294,7 @@
// Green Missions
blck_MinAI_Green = 16;
blck_MaxAI_Green = 21;
blck_AIGrps_Green = 5;
blck_AIGrps_Green = 4;
blck_SkillsGreen = [
["aimingAccuracy",0.3],["aimingShake",0.65],["aimingSpeed",0.65],["endurance",0.9],["spotDistance",0.9],["spotTime",0.9],["courage",0.9],["reloadSpeed",0.9],["commanding",0.9],["general",0.75]
];
@ -322,7 +321,60 @@
blck_maxMoneyRed = 15;
blck_maxMoneyBlue = 10;
#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 = [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.
/***************************************************************
MISSION TYPE SPECIFIC AI SETTINGS
**************************************************************/
//This defines the skill, minimum/Maximum number of AI and how many AI groups are spawned for each mission type
// Orange Missions
blck_MinAI_Orange = 20;
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]
];
// Green Missions
blck_MinAI_Green = 16;
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]
];
// Red Missions
blck_MinAI_Red = 12;
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]
];
// Blue Missions
blck_MinAI_Blue = 8;
blck_MaxAI_Blue = 12;
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]
];
// Add some money to AI; only works with Exile for now.
blck_maxMoneyOrange = 25;
blck_maxMoneyGreen = 20;
blck_maxMoneyRed = 15;
blck_maxMoneyBlue = 10;
#endif
private["_modType"];
_modType = [] call blck_fnc_getModType;
if (_modType isEqualTo "Epoch") then

View File

@ -40,6 +40,7 @@ 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

View File

@ -17,8 +17,6 @@
////////////
// Exile-specific settings
////////////
blck_blacklistSpawns = false;
blck_listConcreteMixerZones = false;
// list of locations that are protected against mission spawns
@ -41,7 +39,10 @@ switch (toLower(worldName)) do
AI WEAPONS, UNIFORMS, VESTS AND GEAR
**********************************************************************************/
blck_blacklistSpawns = false;
blck_listConcreteMixerZones = false;
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
// Blacklisted itesm
@ -133,8 +134,8 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR
//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_Green = blck_RifleSniper + blck_RifleAsault_650 +blck_RifleLMG + blck_DLC_MMG;
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

View File

@ -90,17 +90,19 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
// Used primarily for debugging.
diag_log "[blckeagls] Debug seting is ON, Custom configurations used";
blck_timeAccelerationDay = 6; // Daytime time accelearation
blck_timeAccelerationDusk = 6; // Dawn/dusk time accelearation
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_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_enableHunterMissions = 1;
blck_enableScoutsMissions = 1;
blck_maxCrashSites = 0;
blck_enableHunterMissions = -1;
blck_enableScoutsMissions = -1;
blck_maxCrashSites = 1;
blck_enabeUnderwaterMissions = -1;
@ -108,6 +110,7 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
blck_AliveAICleanUpTimer = 10; // Time after mission completion at which any remaining live AI are deleted.
blck_bodyCleanUpTimer = 10;
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
@ -135,12 +138,12 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
blck_TMax_Scouts = 22;
blck_TMax_Crashes = 15;
//blck_MissionTimout = 120; // 40 min
//blck_MinAI_Blue = 2;
//blck_MaxAI_Blue = 4;
//blck_AIGrps_Blue = 4;
//blck_MissionTimout = 360; // 40 min
blck_MinAI_Blue = 1;
blck_MaxAI_Blue = 2;
blck_AIGrps_Blue = 1;
/*
blck_SkillsBlue = [
["aimingAccuracy",0.01],
["aimingShake",0.01],
@ -153,7 +156,7 @@ if (blck_debugON || (blck_debugLevel isEqualTo 3)) then
["commanding",0.8],
["general",1.00]
];
*/
};

View File

@ -23,9 +23,6 @@ _blck_loadingStartTime = diag_tickTime;
#include "\q\addons\custom_server\init\build.sqf";
diag_log format["[blckeagls] Loading version %1 Build %2",_blck_versionDate,_blck_version];
#ifdef DBDserver
diag_log "[blckegls] Running DBD Clan Version";
#endif
call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\blck_variables.sqf";
waitUntil {(isNil "blck_variablesLoaded") isEqualTo false;};
@ -64,14 +61,6 @@ blck_worldSet = nil;
diag_log "[blckeagls] Loading Mission Lists";
#include "\q\addons\custom_server\Missions\GMS_missionLists.sqf";
#ifdef DBDserver
//start the dynamic loot crate system
[] execVM "\q\addons\custom_server\DLS\DLS_init.sqf";
waitUntil {(isNil "blck_DLSComplete") isEqualTo false;};
waitUntil{blck_DLSComplete};
blck_DLSComplete = nil;
#endif
// Load any user-defined specifications or overrides
call compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Configs\blck_custom_config.sqf";
@ -116,25 +105,6 @@ if (blck_enableBlueMissions > 0) then
//[_missionListBlue,_pathBlue,"BlueMarker","blue",blck_TMin_Blue,blck_TMax_Blue] spawn blck_fnc_missionTimer;//Starts minor mission system (Blue Map Markers)
[_missionListBlue,_pathBlue,"BlueMarker","blue",blck_TMin_Blue,blck_TMax_Blue,blck_enableBlueMissions] call blck_fnc_addMissionToQue;
};
#ifdef DBDserver
if (blck_enableScoutsMissions > 0) then
{
//[_missionListScouts,_pathScouts,"ScoutsMarker","red",blck_TMin_Scouts,blck_TMax_Scouts] spawn blck_fnc_missionTimer;
[_missionListScouts,_pathScouts,"ScoutsMarker","red",blck_TMin_Scouts,blck_TMax_Scouts,blck_enableScoutsMissions, false] call blck_fnc_addMissionToQue;
};
if (blck_enableHunterMissions > 0) then
{
//[_missionListHunters,_pathHunters,"HunterMarker","green",blck_TMin_Hunter,blck_TMax_Hunter] spawn blck_fnc_missionTimer;
// params["_missionList","_path","_marker","_difficulty","_tMin","_tMax","_noMissions"];
[_missionListHunters,_pathHunters,"HunterMarker","green",blck_TMin_Hunter,blck_TMax_Hunter,blck_enableHunterMissions, false] call blck_fnc_addMissionToQue;
};
// Running new version of Crash sites.
if (blck_maxCrashSites > 0) then
{
[] execVM "\q\addons\custom_server\Missions\HeliCrashs\Crashes2.sqf";
};
#endif
// start the main thread for the mission system which monitors missions running and stuff to be cleaned up
[] spawn blck_fnc_mainThread;

View File

@ -1,3 +1,3 @@
private ["_version","_versionDate"];
_blck_version = "6.58 Build 50";
_blck_versionDate = "4-5-17 8:00 PM";
_blck_version = "6.58 Build 51";
_blck_versionDate = "4-10-17 8:00 PM";