diff --git a/@GMS/addons/custom_server/Compiles/Functions/GMS_passToHCs.sqf b/@GMS/addons/custom_server/Compiles/Functions/GMS_passToHCs.sqf index 7871e4d..43d1790 100644 --- a/@GMS/addons/custom_server/Compiles/Functions/GMS_passToHCs.sqf +++ b/@GMS/addons/custom_server/Compiles/Functions/GMS_passToHCs.sqf @@ -28,7 +28,7 @@ private["_numTransfered","_clientId","_allGroups","_groupsOwned","_idHC","_id"," { if !(_x in blck_connectedHCs) then {blck_connectedHCs pushBack _x}; }forEach entities "HeadlessClient_F"; -diag_log format["_fnc_passToHCs:: blck_connectedHCs = %1 | count _HCs = %2 | server FPS",blck_connectedHCs,count blck_connectedHCs,diag_fps]; +diag_log format["_fnc_passToHCs:: blck_connectedHCs = %1 | count _HCs = %2 | server FPS = %3",blck_connectedHCs,count blck_connectedHCs,diag_fps]; if ((count blck_connectedHCs) > 0) then { _idHC = [blck_connectedHCs] call blck_fnc_leastBurdened; diff --git a/@GMS/addons/custom_server/Compiles/Groups/GMS_fnc_findNearestInfantryGroup.sqf b/@GMS/addons/custom_server/Compiles/Groups/GMS_fnc_findNearestInfantryGroup.sqf new file mode 100644 index 0000000..2da1ea2 --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Groups/GMS_fnc_findNearestInfantryGroup.sqf @@ -0,0 +1,31 @@ + +/* + by Ghostrider + + -------------------------- + 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/ +*/ + +params["_pos"]; +private["_nearestGroup","_modType"]; + +_modType = call blck_fnc_getModType; +if (_modType == "Epoch") then {_units = (_pos) nearEntities ["I_Soldier_EPOCH", 100]}; +if (_modType == "Exile") then {_units = (_pos) nearEntities ["i_g_soldier_unarmed_f", 100]}; +_nearestGroup = group (_units select 0); +{ + + if ((group _x) != _group) then + { + if ( _x distance (leader _group) < ((leader _nearestGroup) distance (leader _group)) ) then + { + if ((vehicle _x == _x) ) then {_nearestGroup = group _x}; + }; + }; +}forEach _units; + +_nearestGroup diff --git a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnEmplacedWeaponArray.sqf b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnEmplacedWeaponArray.sqf index 7e152aa..e7c7693 100644 --- a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnEmplacedWeaponArray.sqf +++ b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnEmplacedWeaponArray.sqf @@ -87,7 +87,8 @@ if (blck_debugLevel > 1) then // params["_vehType","_pos",["_clearInventory",true]]; _wep = [(_x select 0),[0,0,0],false] call blck_fnc_spawnVehicle; - _wep addEventHandler["HandleDamage",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleDamage}]; + //_wep addEventHandler["HandleDamage",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleDamage}]; + _wep addMPEventHandler["MPHit",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleDamage}]; _empGroup setVariable["groupVehicle",_wep]; _wep setVariable["vehicleGroup",_empGroup]; #ifdef blck_debugMode diff --git a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionAI.sqf b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionAI.sqf index a450987..372126c 100644 --- a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionAI.sqf +++ b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionAI.sqf @@ -36,7 +36,10 @@ if (blck_debugLevel >=2) then _ResidualUnits = _unitsToSpawn - (_unitsPerGroup * _noAIGroups); _blck_AllMissionAI = []; _abort = false; - if (count _weapons == 0) then {_weapons = [_aiDifficultyLevel] call blck_fnc_selectAILoadout}; + if (count _weapons == 0) then + { + _weapons = [_aiDifficultyLevel] call blck_fnc_selectAILoadout; + }; #ifdef blck_debugMode if (blck_debugLevel >= 2) then { @@ -44,12 +47,12 @@ if (blck_debugLevel >=2) then }; #endif if (count _missionGroups > 0) then -{ - { // [[1,-1,-1],"red",4, 5,10] - _x params["_position","_skillLevel","_numAI","_minPatrolRadius","_maxPatrolRadius"]; +{ + { //[[-98.9121,-35.9824,-1.20243],5,7,"Green",5,12],[[1,-1,-1],"red",4, 5,10] + _x params["_position","_minAI","_maxAI","_skillLevel","_minPatrolRadius","_maxPatrolRadius"]; _groupSpawnPos = _coords vectorAdd _position; // params["_pos", ["_numai1",5], ["_numai2",10], ["_skillLevel","red"], "_center", ["_minDist",20], ["_maxDist",35], ["_uniforms",blck_SkinList], ["_headGear",blck_headgear],["_configureWaypoints",true],["_weaponList",[]],["_vests",blck_vests],["_scuba",false] ]; - _newGroup = [_groupSpawnPos,_numAI,_numAI,_skillLevel,_coords,_minPatrolRadius,_maxPatrolRadius,_uniforms,_headGear,true,_weapons,_vests,_isScubaGroup] call blck_fnc_spawnGroup; + _newGroup = [_groupSpawnPos,_minAI,_maxAI,_skillLevel,_coords,_minPatrolRadius,_maxPatrolRadius,_uniforms,_headGear,true,_weapons,_vests,_isScubaGroup] call blck_fnc_spawnGroup; #ifdef blck_debugMode if (blck_debugLevel >= 2) then diff --git a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionCrates.sqf b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionCrates.sqf index ed4dfa3..02981f4 100644 --- a/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionCrates.sqf +++ b/@GMS/addons/custom_server/Compiles/Missions/GMS_fnc_spawnMissionCrates.sqf @@ -24,6 +24,10 @@ _objs = []; { _x params["_crateType","_crateOffset","_lootArray","_lootCounts"]; //_pos = [(_coords select 0)+(_crateOffset select 0),(_coords select 1) + (_crateOffset select 1),(_coords select 2)+(_crateOffset select 2)]; // calculate the world coordinates + + _pos = _coords vectorAdd _crateOffset; + _crate = [_pos,_crateType] call blck_fnc_spawnCrate; + _objs pushback _crate; #ifdef blck_debugMode if (blck_debugLevel > 1) then { @@ -32,10 +36,7 @@ _objs = []; _marker setMarkerType "mil_triangle"; _marker setMarkerColor "colorGreen"; }; - #endif - _pos = _coords vectorAdd _crateOffset; - _crate = [_pos,_crateType] call blck_fnc_spawnCrate; - _objs pushback _crate; + #endif if (_loadCrateTiming isEqualTo "atMissionSpawn") then { //diag_log format["_fnc_spawnMissionCrates::-> loading loot at mission spawn for crate %1",_x]; diff --git a/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyGroup.sqf b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyGroup.sqf new file mode 100644 index 0000000..2311792 --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyGroup.sqf @@ -0,0 +1,29 @@ +/* + by Ghostrider + 9-20-15 + Allerts all units within a certain radius of the location of a killer. + ** Not in use at this time; reserved for the future ** + -------------------------- + 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["_alertDist","_intelligence"]; +params["_unit","_killer"]; + +_nearbyGroup = [group _unit] call blck_fnc_findNearestGroup; +//diag_log format["#-alertNearbyUnits.sqf-# alerting nearby units of killer of unit %1",_unit]; +_alertDist = _unit getVariable ["alertDist",300]; +_intelligence = _unit getVariable ["intelligence",1]; +if (_alertDist > 0) then { + //diag_log format["+----+ alerting units close to %1",_unit]; + { + _knowsAbout = _x knowsAbout _killer; + _x reveal [_killer, _knowsAbout + _intelligence]; + diag_log "_fnc_alertNearbyGroup: Killer revealed"; + } forEach (units _nearbyGroup); +}; diff --git a/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyVehicles.sqf b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyVehicles.sqf index f7975d8..7cf467a 100644 --- a/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyVehicles.sqf +++ b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_alertNearbyVehicles.sqf @@ -1,7 +1,5 @@ /* by Ghostrider - 4-5-17 - Alerts the units of nearby vehicles of the location of an enemy. -------------------------- License diff --git a/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_allertNearestGroup.sqf b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_allertNearestGroup.sqf new file mode 100644 index 0000000..450839a --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Units/GMS_fnc_allertNearestGroup.sqf @@ -0,0 +1,17 @@ + +/* + Find Nearest Infantry Group +*/ + +params["_group"]; +private["_nearestGroup","_modType"]; + +_modType = call blck_fnc_getModType; +if (_modType == "Epoch") then {_units = _group nearEntities ["I_Soldier_EPOCH", 100]}; +if (_modType == "Exile") then (_units = _group nearEntities ["i_g_soldier_unarmed_f", 100]}; +_nearestGroup = group _units select 0; +{ + if (group _x != _group && _x distance (leader _group) < ((leader _nearestGroup) distance (leader _group))) then {_nearestGroup = group _x}; +}forEach _units; + +_nearestGroup diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_AIVehicle_Hit.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_AIVehicle_Hit.sqf new file mode 100644 index 0000000..b3ea113 --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_AIVehicle_Hit.sqf @@ -0,0 +1,18 @@ +/* + By Ghostrider [GRG] + Last Modified 7-27-17 + + Handles the case where a vehicle is hit. + + -------------------------- + 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"; +if !(isDedicated) exitWith {}; +_this call blck_fnc_HandleAIVehicleHit; + + diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_VehicleKilled.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_VehicleKilled.sqf new file mode 100644 index 0000000..be4d1be --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_VehicleKilled.sqf @@ -0,0 +1,16 @@ + +/* + Killed handler for _units + By Ghostrider-DbD + 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"; +if !(isDedicated) exitWith {}; +_this call blck_fnc_processAIVehicleKill; diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_processAIVehicleKill.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_processAIVehicleKill.sqf new file mode 100644 index 0000000..caa982b --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_EH_processAIVehicleKill.sqf @@ -0,0 +1,17 @@ + +/* + Killed handler for _units + By Ghostrider-DbD + 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"; +diag_log format["_EH_processAIVehicleKill: _this = %1",_this]; +if !(isDedicated) exitWith {}; +_this call blck_fnc_processAIVehicleKill; diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_HandleAIVehicleHit.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_HandleAIVehicleHit.sqf new file mode 100644 index 0000000..4eac6dc --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_HandleAIVehicleHit.sqf @@ -0,0 +1,44 @@ +/* + By Ghostrider [GRG] + + -------------------------- + 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 ["_veh","_instigator","_group","_wp"]; + +_veh = _this select 0 select 0; +_instigator = _this select 0 select 3; + +#ifdef blck_debugMode +if (blck_debugLevel > 1) then +{ + diag_log format["_fnc_HandleAIVehicleDamage: _this = %1",_this]; + diag_log format["_EH_AIVehicle_HandleDamage:: _units = %1 and _instigator = %2 units damage is %3",_veh,_instigator, damage _veh]; +}; +#endif + +//if (!(alive _veh)) exitWith {}; +if (!(isPlayer _instigator)) exitWith {}; +_crew = crew _veh; +_group = group (_crew select 0); +// Tell the vehicle crew something about the player who caused the damage +[_crew select 0,_instigator] call blck_fnc_alertGroupUnits; +// Tell nearby vehicles something about the player who caused the damage +[_instigator] call blck_fnc_alertNearbyVehicles; +// Ask for help from the nearest group of infantry, especially if they have launchers +_nearestGroup = [getPos _veh] call blck_fnc_findNearestInfantryGroup; +[(units _nearestGroup) select 0,_instigator] call blck_fnc_alertGroupUnits; + +_group setBehaviour "COMBAT"; +_wp = [_group, currentWaypoint _group]; +_wp setWaypointBehaviour "COMBAT"; +_group setCombatMode "RED"; +_wp setWaypointCombatMode "RED"; + + diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_processAIVehicleKill.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_processAIVehicleKill.sqf new file mode 100644 index 0000000..82bbda4 --- /dev/null +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_processAIVehicleKill.sqf @@ -0,0 +1,55 @@ +/* + By Ghostrider [GRG] + + -------------------------- + 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 ["_veh","_instigator","_group","_wp"]; + +_veh = _this select 0 select 0; +_instigator = _this select 0 select 3; +params["_unit","_killer"]; + +{ + _veh removealleventhandlers _x; +} forEach ["GetIn","GetOut","fired","hit","hitpart","reloaded","dammaged","HandleDamage"]; +{ + _veh removeAllMPEventHandlers _x; +} forEach ["MPHit","MPKilled"]; + +#ifdef blck_debugMode +if (blck_debugLevel > 1) then +{ + diag_log format["_fnc_processAIVehicleKill: _this = %1",_this]; + diag_log format["_fnc_processAIVehicleKill:: _units = %1 and _instigator = %2 units damage is %3",_veh,_instigator, damage _veh]; +}; +#endif + +//if (!(alive _veh)) exitWith {}; +if (!(isPlayer _instigator)) exitWith {}; +_crew = crew _veh; +if !(count _crew == 0) then +{ + _group = group (_crew select 0); + // Tell the vehicle crew something about the player who caused the damage +}; + +// Tell nearby vehicles something about the player who caused the damage +[_instigator] call blck_fnc_alertNearbyVehicles; +// Ask for help from the nearest group of infantry, especially if they have launchers +_nearestGroup = [getPos _veh] call blck_fnc_findNearestGroup; +[(units _nearestGroup) select 0,_instigator] call blck_fnc_alertGroupUnits; + +_group setBehaviour "COMBAT"; +_wp = [_group, currentWaypoint _group]; +_wp setWaypointBehaviour "COMBAT"; +_group setCombatMode "RED"; +_wp setWaypointCombatMode "RED"; + + diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_releaseVehicleToPlayers.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_releaseVehicleToPlayers.sqf index 1dcc27c..5480421 100644 --- a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_releaseVehicleToPlayers.sqf +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_releaseVehicleToPlayers.sqf @@ -21,6 +21,8 @@ _v removeAllEventHandlers "GetOut"; _v removeAllEventHandlers "Fired"; _v removeAllEventHandlers "Reloaded"; + _v removeAllMPEventHandlers "MPHit"; + _v removeAllMPEventHandlers "MPKilled"; _v setVehicleLock "UNLOCKED" ; _v setVariable["releasedToPlayers",true]; [_v] call blck_fnc_emptyObject; diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol.sqf index 2169745..6187f63 100644 --- a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol.sqf +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_spawnVehiclePatrol.sqf @@ -35,7 +35,8 @@ if (blck_debugLevel > 1) then if !(isNull _group) then { // exitWith {diag_log "[blckeagls] ERROR CONDITION:-->> NULL-GROUP Provided to _fnc_spawnVehiclePatrol"; objNull;}; _veh = [_vehType,_pos] call blck_fnc_spawnVehicle; - _veh addEventHandler["HandleDamage",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleDamage}]; +// _veh addEventHandler["HandleDamage",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleDamage}]; + _veh addMPEventHandler["MPHit",{ [_this] call compile preprocessFileLineNumbers blck_EH_AIVehicle_HandleHit}]; _group setVariable["groupVehicle",_veh]; //#ifdef blck_debugMode if (blck_debugLevel > 1) then diff --git a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf index 4d484d6..c966951 100644 --- a/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf +++ b/@GMS/addons/custom_server/Compiles/Vehicles/GMS_fnc_vehicleMonitor.sqf @@ -37,7 +37,9 @@ _fn_releaseVehicle = { { _veh removealleventhandlers _x; } forEach ["GetIn","GetOut","fired","hit","hitpart","reloaded","dammaged","HandleDamage"]; - + { + _veh removeAllMPEventHandlers _x; + } forEach ["MPHit","MPKilled"]; _veh setVariable["blck_DeleteAt",diag_tickTime + blck_vehicleDeleteTimer,true]; if ((damage _veh) > 0.5) then {_veh setDamage 0.5}; //diag_log format["_fnc_vehicleMonitor:: case of patrol vehicle released to players where vehicle = %1 and blck_deleteAT = %2",_veh, _veh getVariable["blck_DeleteAt",0]]; diff --git a/@GMS/addons/custom_server/Compiles/blck_functions.sqf b/@GMS/addons/custom_server/Compiles/blck_functions.sqf index a2d5d91..7777453 100644 --- a/@GMS/addons/custom_server/Compiles/blck_functions.sqf +++ b/@GMS/addons/custom_server/Compiles/blck_functions.sqf @@ -12,7 +12,6 @@ http://creativecommons.org/licenses/by-nc-sa/4.0/ */ #include "\q\addons\custom_server\Configs\blck_defines.hpp"; -//blck_functionsCompiled = false; // General functions blck_fnc_waitTimer = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Functions\GMS_fnc_waitTimer.sqf"; @@ -78,6 +77,7 @@ blck_fnc_changeToMoveWaypoint = compileFinal preprocessFileLineNumbers "\q\addo blck_fnc_changeToSentryWaypoint = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Groups\GMS_fnc_changeToSentryWaypoint.sqf"; // //blck_fnc_setNextWaypoint = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Groups\GMS_fnc_setNextWaypoint.sqf"; blck_fnc_cleanEmptyGroups = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Groups\GMS_fnc_cleanEmptyGroups.sqf"; // GMS_fnc_cleanEmptyGroups +blck_fnc_findNearestInfantryGroup = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Groups\GMS_fnc_findNearestInfantryGroup.sqf"; // Functions specific to vehicles, whether wheeled, aircraft or static blck_fnc_spawnVehicle = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_spawnVehicle.sqf"; @@ -90,8 +90,10 @@ blck_fnc_spawnMissionHeli = compileFinal preprocessFileLineNumbers "\q\addons\cu blck_fnc_spawnMissionParatroops = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_spawnMissionParatroops.sqf"; // Lumped here because these 'jump' from aircraft blck_fnc_spawnParaUnits = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_spawnParaUnits.sqf"; // Lumped here because these 'jump' from aircraft //blck_fnc_releaseVehicleToPlayers = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_releaseVehicleToPlayers.sqf"; // GMS_fnc_releaseVehicleToPlayers -blck_EH_AIVehicle_HandleDamage = "\q\addons\custom_server\Compiles\Vehicles\GMS_EH_AIVehicle_HandleDamage.sqf"; -blck_fnc_HandleAIVehicleDamage = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_HandleAIVehicleDamage.sqf"; +blck_EH_AIVehicle_HandleHit = "\q\addons\custom_server\Compiles\Vehicles\GMS_EH_AIVehicle_Hit.sqf"; +blck_fnc_HandleAIVehicleHit = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_HandleAIVehicleHit.sqf"; +blck_EH_VehicleKilled = "\q\addons\custom_server\Compiles\Vehicles\GMS_EH_VehicleKilled.sqf"; +blck_fnc_processAIVehicleKill = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Vehicles\GMS_fnc_processAIVehicleKill.sqf"; // functions to support Units blck_fnc_removeGear = compileFinal preprocessFileLineNumbers "\q\addons\custom_server\Compiles\Units\GMS_fnc_removeGear.sqf"; // Strip an AI unit of all gear. diff --git a/@GMS/addons/custom_server/Compiles/blck_variables.sqf b/@GMS/addons/custom_server/Compiles/blck_variables.sqf index cee4d5e..e3f004b 100644 --- a/@GMS/addons/custom_server/Compiles/blck_variables.sqf +++ b/@GMS/addons/custom_server/Compiles/blck_variables.sqf @@ -12,8 +12,8 @@ */ #include"\q\addons\custom_server\Configs\blck_defines.hpp"; -blck_debugON = false; -blck_debugLevel = 0; // Sets level of detail for debugging info - WIP. +blck_debugON = true; +blck_debugLevel = 2; // Sets level of detail for debugging info - WIP. blck_minFPS = 8; //////////////////////////////////////////////// diff --git a/changeLog.sqf b/changeLog.sqf index 75a5297..a3d48a5 100644 --- a/changeLog.sqf +++ b/changeLog.sqf @@ -8,6 +8,19 @@ Ideas or code from that by Vampire and KiloSwiss have been used for certain func Significant Changes: ===================== +Version 6.76 Build 104 +Added: A new timer that determines the time after which Vehicles are deleted once all AI are dead if no player has entered the driver's seat. +Added: an optional variable in the template for missions called _missionGroups by which you can define the parameters (position, skill level, number, patrol radius) for each group spawned. + See the default2.sqf mission under custom_server\Missions\blue for an example +Changed: The method by which the server handles AI damage was changed to use MPHit. +Added: an MPKilled event handler for vehicles. + +Fixed: Static Vehicles were being spawned repeatedly. +Fixed: _missionGroups parameters were not being handled correctly. +Fixed: sever FPS was not being logged by GMS_passToHCs +Fixed: crate marker was not shown when in debug mode. +Known Issues: Vehicles are not unlocked when released to players if an HC is connected. + Version 6.74 Build 97 Added Core Code for spawning dynamic underwater missions. Added Core Code for spawning scuba units and surface and SDV patrols.