Merge pull request #40 from Ghostrider-DbD-/Version-6.55-Build-37

Version 6 55 build 37
This commit is contained in:
Ghostrider-DbD- 2017-01-29 13:04:14 -05:00 committed by GitHub
commit 352aec16bc
10 changed files with 29 additions and 102 deletions

View File

@ -0,0 +1,8 @@
blck_serverFPS = diag_FPS;
publicVariable "blck_serverFPS";

View File

@ -1,74 +0,0 @@
/*
Call as : [] call blck_fnc_mainThread;
Run a loop that checks data arrays regarding:
- whether it is time to delete the mission objects at a specific location
- whether it is time to delete live AI associated with a specific mission
By Ghostrider-DbD-
Last modified 1-22-17
*/
private ["_timer10Min","_timer1sec","_timer5sec","_timer5min","_modType","_coords"];
_timer1sec = diag_tickTime;
_timer5sec = diag_tickTime;
_timer20sec = diag_tickTime;
//_timer1min = diag_tickTime;
_timer5min = diag_tickTime;
//_timer10Min = diag_tickTime;
_modType = [] call blck_fnc_getModType;
while {true} do
{
uiSleep 1; // defined in custom_server\compiles\blck_variables.sqf
if ((diag_tickTime - _timer1sec) > 3) then
{
[] call blck_fnc_vehicleMonitor;
_timer1sec = diag_tickTime;
};
if ((diag_tickTime - _timer5sec) > 15) then
{
[] call blck_fnc_cleanupAliveAI;
[] call blck_fnc_cleanupObjects;
[] call blck_fnc_cleanupDeadAI;
if (_modType isEqualTo "Epoch") then {
[] call blck_fnc_cleanEmptyGroups;
}; // Exile cleans up empty groups automatically so this should not be needed with that mod.
diag_log format["_fnc_mainThread:: (37) blck_pendingMissions = %1", blck_pendingMissions];
{
if (blck_debugLevel > 2) then {diag_log format["_fnc_mainThread:: -- >> _x = %1 and _x select 6 = %2",_x, _x select 6];};
if (_x select 6 > 0) then // The mission is not running, check the time left till it is spawned
{
if (diag_tickTime > (_x select 6)) then // time to spawn the mission
{
private _coords = [] call blck_fnc_FindSafePosn;
_coords pushback 0;
private["_missionName","_missionPath"];
_missionName = selectRandom (_x select 0);
_missionPath = _x select 1;
[_coords,_x] execVM format["\q\addons\custom_server\Missions\%1\%2.sqf",_missionPath,_missionName];
};
};
}forEach blck_pendingMissions;
_timer5sec = diag_tickTime;
};
if ((diag_tickTime - _timer5min) > 300) then {
if (blck_timeAcceleration) then
{
//if (blck_debugON) then {diag_log "[blckeagls] calling time acceleration module";};
[] call blck_fnc_timeAcceleration;
};
if (blck_useHC) then {[] call blck_fnc_monitorHC;}; // Not working
_timer5min = diag_tickTime;
};
/*
if ((diag_tickTime - _timer10Min) > 600) then
{
// Reserved for future use
_timer10Min = diag_tickTime;
};
*/
};

View File

@ -1,12 +1,9 @@
/* /*
Call as : [] call blck_fnc_mainThread;
Run a loop that checks data arrays regarding:
- whether it is time to delete the mission objects at a specific location
- whether it is time to delete live AI associated with a specific mission
By Ghostrider-DbD- By Ghostrider-DbD-
Last modified 1-24-17 Last modified 1-24-17
*/ */
//#define DBDserver 1
diag_log format["starting _fnc_mainThread with time = %1",diag_tickTime]; diag_log format["starting _fnc_mainThread with time = %1",diag_tickTime];
private["_modType","_timer1sec","_timer20sec","_timer5min"]; private["_modType","_timer1sec","_timer20sec","_timer5min"];
_timer1sec = diag_tickTime; _timer1sec = diag_tickTime;
@ -17,9 +14,12 @@ while {true} do
{ {
uiSleep 1; uiSleep 1;
//diag_log format["mainThread:: -- > time = %1",diag_tickTime]; //diag_log format["mainThread:: -- > time = %1",diag_tickTime];
if (diag_tickTime - _timer1sec > 1000) then if (diag_tickTime - _timer1sec > 1) then
{ {
[] call blck_fnc_vehicleMonitor; [] call blck_fnc_vehicleMonitor;
#ifdef DBDserver
[] call blck_fnc_broadcastServerFPS;
#endif
_timer1sec - diag_tickTime; _timer1sec - diag_tickTime;
}; };
if (diag_tickTime - _timer20sec > 20) then if (diag_tickTime - _timer20sec > 20) then
@ -38,5 +38,4 @@ while {true} do
{ {
[] call blck_fnc_timeAcceleration; [] call blck_fnc_timeAcceleration;
}; };
}; };

View File

@ -1,14 +0,0 @@
private["_startTime"];
_startTime = diag_tickTime;
[] spawn {
while {true} do
{
blck_serverFPS = diag_FPS;
publicVariable "blck_serverFPS";
uiSleep 3;
};
};

View File

@ -22,15 +22,16 @@ _time = dayTime;
// Night // Night
if (_time > (_sunset + 0.5) || _time < (_sunrise - 0.5)) exitWith { if (_time > (_sunset + 0.5) || _time < (_sunrise - 0.5)) exitWith {
setTimeMultiplier blck_timeAccelerationNight; setTimeMultiplier blck_timeAccelerationNight;
//diag_log format["NIGHT TIMGE ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime]; diag_log format["NIGHT TIMGE ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime];
}; };
// Day // Day
if (_time > (_sunrise + 0.5) && _time < (_sunset - 0.5)) exitWith { if (_time > (_sunrise + 0.5) && _time < (_sunset - 0.5)) exitWith {
setTimeMultiplier blck_timeAccelerationDay; setTimeMultiplier blck_timeAccelerationDay;
//diag_log format["DAYTIME ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime]; diag_log format["DAYTIME ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime];
}; };
// default // default
setTimeMultiplier blck_timeAccelerationDusk; setTimeMultiplier blck_timeAccelerationDusk;
//diag_log format["DUSK ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime]; //diag_log format["DUSK ADJUSTMENT:: time accel updated to %1; time of day = %2",timeMultiplier,dayTime];

View File

@ -6,6 +6,7 @@
*/ */
blck_functionsCompiled = false; blck_functionsCompiled = false;
//#define DBDserver 1
// General functions // General functions
blck_fnc_waitTimer = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_waitTimer.sqf"; blck_fnc_waitTimer = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_waitTimer.sqf";
blck_fnc_timedOut = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_timedOut.sqf"; blck_fnc_timedOut = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_timedOut.sqf";
@ -19,7 +20,10 @@ blck_fnc_getModType = compileFinal preprocessFileLineNumbers "\q\addons\custom_
blck_fnc_groupsOnAISide = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_GroupsOnAISide.sqf"; // Returns the number of groups on the side used by AI blck_fnc_groupsOnAISide = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_GroupsOnAISide.sqf"; // Returns the number of groups on the side used by AI
blck_fnc_emptyObject = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_emptyObject.sqf"; blck_fnc_emptyObject = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_emptyObject.sqf";
blck_fnc_playerInRange = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_playerInRange.sqf"; blck_fnc_playerInRange = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_playerInRange.sqf";
blck_fnc_mainThread = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_mainThread.sqf"; // blck_fnc_mainThread = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_mainThread.sqf";
#ifdef DBDserver
blck_fnc_broadcastServerFPS = = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_broadcastServerFPS.sqf";
#endif
// Player-related functions // Player-related functions
blck_fnc_rewardKiller = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Units\GMS_fnc_rewardKiller.sqf"; blck_fnc_rewardKiller = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Units\GMS_fnc_rewardKiller.sqf";
blck_fnc_MessagePlayers = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_AIM.sqf"; // Send messages to players regarding Missions blck_fnc_MessagePlayers = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_AIM.sqf"; // Send messages to players regarding Missions

View File

@ -27,7 +27,10 @@ Last modified 8/1/15
**************************************************************/ **************************************************************/
// if true then missions will not spawn within 1000 m of spawn points for Altis, Bornholm, Cherno, Esseker or stratis. // if true then missions will not spawn within 1000 m of spawn points for Altis, Bornholm, Cherno, Esseker or stratis.
blck_listConcreteMixerZones = true;
blck_blacklistSpawns = true;
blck_blacklistTraderCities = true; // Set this = true if you would like the mission system to automatically search for the locations of the Epoch trader cities. Note that these are pre-defined in GMS_fnc_findWorld for the most common maps. blck_blacklistTraderCities = true; // Set this = true if you would like the mission system to automatically search for the locations of the Epoch trader cities. Note that these are pre-defined in GMS_fnc_findWorld for the most common maps.
// list of locations that are protected against mission spawns // list of locations that are protected against mission spawns
switch (toLower(worldName)) do switch (toLower(worldName)) do

View File

@ -4,7 +4,7 @@ Loosely based on the AI mission system by blckeagls ver 2.0.2
Contributions by Narines: bug fixes, testing, infinite ammo fix. Contributions by Narines: bug fixes, testing, infinite ammo fix.
Ideas or code from that by Vampire and KiloSwiss have been used for certain functions. Ideas or code from that by Vampire and KiloSwiss have been used for certain functions.
1/24/17 Version 6.55 Build 34 1/24/17 Version 6.55 Build 35
Added a new configuration blck_killEmptyStaticWeapons which determines if static weapons shoudl be disabled after the AI is killed. Added a new configuration blck_killEmptyStaticWeapons which determines if static weapons shoudl be disabled after the AI is killed.
Added a configuration blck_cleanUpLootChests that determines if loot crates are deleted when other mission objects are deleted. Added a configuration blck_cleanUpLootChests that determines if loot crates are deleted when other mission objects are deleted.
Fixed an issue that prevented proper deletion of mission objects and live AI. Fixed an issue that prevented proper deletion of mission objects and live AI.

View File

@ -45,7 +45,7 @@ if (_modType isEqualTo "Exile") then
waitUntil {(isNil "blck_configsLoaded") isEqualTo false;}; waitUntil {(isNil "blck_configsLoaded") isEqualTo false;};
waitUntil{blck_configsLoaded}; waitUntil{blck_configsLoaded};
blck_configsLoaded = nil; blck_configsLoaded = nil;
if (blck_blacklistTraderCities || blck_blacklistSpawns || blcklistConcreteMixerZones) then {execVM "\q\addons\custom_server\Compiles\Functions\GMS_fnc_getTraderCitesExile.sqf";}; if (blck_blacklistTraderCities || blck_blacklistSpawns || blck_listConcreteMixerZones) then {execVM "\q\addons\custom_server\Compiles\Functions\GMS_fnc_getTraderCitesExile.sqf";};
}; };
// spawn map addons to give the server time to position them before spawning in crates etc. // spawn map addons to give the server time to position them before spawning in crates etc.

View File

@ -1,3 +1,3 @@
private ["_version","_versionDate"]; private ["_version","_versionDate"];
_blck_version = "6.55 Build 36"; _blck_version = "6.55 Build 37";
_blck_versionDate = "1-24-17 11:50 PM"; _blck_versionDate = "1-28-17 11:50 PM";