diff --git a/@GMS/addons/custom_server/Changelog 6.90.txt b/@GMS/addons/custom_server/Changelog 6.90.txt new file mode 100644 index 0000000..a40b99c --- /dev/null +++ b/@GMS/addons/custom_server/Changelog 6.90.txt @@ -0,0 +1,28 @@ +1. Added new settings to specify the number of crew per vehhicle to blck_config.sqf and blck_config_mil.sqf + + // global settings for this parameters + // Determine the number of crew plus driver per vehicle; excess crew are ignored. + // This can be a value or array of [_min, _max]; + blck_vehCrew_blue = 3; + blck_vehCrew_red = 3; + blck_vehCrew_green = 3; + blck_vehCrew_orange = 3; + + You can also define this value in missions by adding the following variable definition to the mission template: + + _vehicleCrewCount = [3,6]; // min/max number of AI to load including driver. see the missions\blue\template.sqf and blck_configs.sqf for more info. + +2. Lists of items to be excluded from dynamically generated loadouts has been moved to: + blck_config.sqf + blck_config_mil.sqf + +3. Added a new setting that specifies whether logging of blacklisted items is done (handy for debugging) + blck_logBlacklistedItems = true; // set to false to disable logging + +4. Hit and Killed event handlers extensively reworked. Methods for notification of nearby AI and Vehicles of the killers whereabouts were revised to be more inclusive of neighboring AI. + +5. Issues with AIHit events fixed; AI now deploy smoke and heal. + +6. Removed some unnecessary logging. + +7. Other minor coding fixes and optimizations. \ No newline at end of file diff --git a/@GMS/addons/custom_server/Compiles/Functions/GMS_fnc_ai_offloadToClients.sqf b/@GMS/addons/custom_server/Compiles/Functions/GMS_fnc_ai_offloadToClients.sqf index 9ccc8fa..4cc1292 100644 --- a/@GMS/addons/custom_server/Compiles/Functions/GMS_fnc_ai_offloadToClients.sqf +++ b/@GMS/addons/custom_server/Compiles/Functions/GMS_fnc_ai_offloadToClients.sqf @@ -7,7 +7,7 @@ Offloads AI groups to a nearby client in order to improve server performance. */ private ["_groups"]; - +if (isNil "blck_ai_offload_to_client") exitWith {blck_ai_offload_to_client = false}; if (!blck_ai_offload_to_client) exitWith {}; if (blck_limit_ai_offload_to_blckeagls) then {_groups = blck_monitoredMissionAIGroups} else {_groups = allGroups}; diff --git a/@GMS/addons/custom_server/Configs/blck_configs_exile.sqf b/@GMS/addons/custom_server/Configs/blck_configs_exile.sqf index fb9175a..099a0b9 100644 --- a/@GMS/addons/custom_server/Configs/blck_configs_exile.sqf +++ b/@GMS/addons/custom_server/Configs/blck_configs_exile.sqf @@ -59,7 +59,7 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR blck_maximumItemPriceInAI_Loadouts = 1000; - _blck_armed_vehicles_Exile = [ + blck_armed_vehicles_Exile = [ "Exile_Car_BTR40_MG_Green", "Exile_Car_HMMWV_M134_Green", "Exile_Car_HMMWV_M2_Green", @@ -80,26 +80,36 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "I_APC_Wheeled_03_cannon_F" ]; - _blck_tracked_APC_ARMA3 = [ + blck_light_AT_ARMA3 = [ + "O_G_Offroad_01_AT_F", + "B_G_Offroad_01_AT_F", + "O_T_LSV_02_AT_F", + "O_LSV_02_AT_F", + "B_T_LSV_01_AT_F", + "B_LSV_01_AT_F" + ]; + blck_tracked_AA_ARMA3 = [ + "O_APC_Tracked_02_AA_F", + "B_APC_Tracked_01_AA_F" + ]; + blck_tracked_APC_ARMA3 = [ "B_APC_Tracked_01_rcws_F", "B_APC_Tracked_01_CRV_F", - "B_APC_Tracked_01_AA_F", "O_APC_Tracked_02_cannon_F", - "O_APC_Tracked_02_AA_F", "O_APC_Wheeled_02_rcws_F", "I_APC_tracked_03_cannon_F" ]; - _blck_Tanks_ARMA3 = [ + blck_Tanks_ARMA3 = [ //"B_MBT_01_arty_F", - "B_MBT_01_mlrs_F", + //"B_MBT_01_mlrs_F", "B_MBT_01_TUSK_F", "O_MBT_02_cannon_F", //"O_MBT_02_arty_F", "I_MBT_03_cannon_F" ]; - - _blck_APC_CUP = [ + #ifdef useCUP + blck_APC_CUP = [ "CUP_B_Mastiff_GMG_GB_D", "CUP_B_Mastiff_HMG_GB_D", "CUP_B_Ridgback_HMG_GB_D", @@ -125,37 +135,38 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "CUP_O_GAZ_Vodnik_PK_RU" ]; - _blck_Tanks_CUP = [ + blck_Tanks_CUP = [ "CUP_B_M2A3Bradley_USA_D", - "CUP_B_M113_desert_USA", - "CUP_B_M163_USA", + //"CUP_B_M113_desert_USA", + //"CUP_B_M163_USA", "CUP_B_M6LineBacker_USA_D", "CUP_B_M1A1_DES_US_Army", "CUP_B_M1A2_TUSK_MG_DES_US_Army", - "CUP_B_AAV_USMC", - "CUP_B_M270_DPICM_USA", + //"CUP_B_AAV_USMC", + //"CUP_B_M270_DPICM_USA", "CUP_B_ZSU23_CDF", - "CUP_B_BMP2_CDF", + //"CUP_B_BMP2_CDF", "CUP_B_T72_CDF", - "CUP_I_T34_NAPA", + //"CUP_I_T34_NAPA", "CUP_B_Challenger2_NATO", - "CUP_B_FV432_Bulldog_GB_D_RWS", - "CUP_B_FV432_Bulldog_GB_D", + //"CUP_B_FV432_Bulldog_GB_D_RWS", + //"CUP_B_FV432_Bulldog_GB_D", "CUP_B_FV510_GB_D_SLAT", - "CUP_B_MCV80_GB_D_SLAT", - "CUP_O_2S6_RU", + //"CUP_B_MCV80_GB_D_SLAT", + //"CUP_O_2S6_RU", "CUP_O_BMP3_RU", "CUP_O_T90_RU", - "CUP_O_T55_SLA", - "CUP_O_BMP1P_TKA", - "CUP_B_M270_DPICM_USA", - "CUP_B_M2Bradley_USA_W", - "CUP_B_FV510_GB_D", - "CUP_B_MCV80_GB_D", - "CUP_B_M7Bradley_USA_D", - "CUP_O_2S6_RU", - "CUP_O_BMP1_TKA" + "CUP_O_T55_SLA" //, + //"CUP_O_BMP1P_TKA", + //"CUP_B_M270_DPICM_USA", + //"CUP_B_M2Bradley_USA_W", + //"CUP_B_FV510_GB_D", + //"CUP_B_MCV80_GB_D", + //"CUP_B_M7Bradley_USA_D", + //"CUP_O_2S6_RU", + //"CUP_O_BMP1_TKA"" ]; + #endif blck_AIPatrolVehicles = [ diff --git a/@GMS/addons/custom_server/Configs/blck_configs_exile_mil.sqf b/@GMS/addons/custom_server/Configs/blck_configs_exile_mil.sqf index b81ca7d..a88877a 100644 --- a/@GMS/addons/custom_server/Configs/blck_configs_exile_mil.sqf +++ b/@GMS/addons/custom_server/Configs/blck_configs_exile_mil.sqf @@ -99,7 +99,7 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "I_MBT_03_cannon_F" ]; #ifdef useCUP - _blck_APC_CUP = [ + blck_APC_CUP = [ "CUP_B_Mastiff_GMG_GB_D", "CUP_B_Mastiff_HMG_GB_D", "CUP_B_Ridgback_HMG_GB_D", @@ -125,7 +125,7 @@ AI WEAPONS, UNIFORMS, VESTS AND GEAR "CUP_O_GAZ_Vodnik_PK_RU" ]; - _blck_Tanks_CUP = [ + blck_Tanks_CUP = [ "CUP_B_M2A3Bradley_USA_D", //"CUP_B_M113_desert_USA", //"CUP_B_M163_USA", diff --git a/@GMS/addons/custom_server/Missions/UMS/GMS_UMS_configurations.sqf b/@GMS/addons/custom_server/Missions/UMS/GMS_UMS_configurations.sqf index 07067a5..6f96211 100644 --- a/@GMS/addons/custom_server/Missions/UMS/GMS_UMS_configurations.sqf +++ b/@GMS/addons/custom_server/Missions/UMS/GMS_UMS_configurations.sqf @@ -59,7 +59,8 @@ if ((tolower blck_modType) isEqualTo "epoch") then "B_SDV_01_EPOCH" ]; - blck_UMS_crates = ["container_epoch"]; + //blck_UMS_crates = blck_crateTypes; + blck_UMS_crates = ["container_epoch"]; }; blck_UMS_unarmedSurfaceVessels = [ diff --git a/@GMS/addons/custom_server/TODO b/@GMS/addons/custom_server/TODO new file mode 100644 index 0000000..c6de4b2 --- /dev/null +++ b/@GMS/addons/custom_server/TODO @@ -0,0 +1,12 @@ + +Todo: +For V 6.90: + + 2. Test new unlock fix on HC + 3. Write a claim vehicle function. + 4. End of development most likely. + 5. be sure AI do heal when wounded but not killed. + Event handler is triggered but does not seem to call the script to deal with everything. + 6. test that ai toss smoke when healing + 7. Check that functions for allerting units, groups and vehicles function properly in all situations. + ☐ Item: add check for empty crew slots and delete excess crew: note - use BIS_fnc_crewCount to get the number of slots. diff --git a/@GMS/addons/custom_server/init/blck_init_server.sqf b/@GMS/addons/custom_server/init/blck_init_server.sqf index 57621c9..80e39e7 100644 --- a/@GMS/addons/custom_server/init/blck_init_server.sqf +++ b/@GMS/addons/custom_server/init/blck_init_server.sqf @@ -106,6 +106,13 @@ if (blck_blacklistTraderCities) then call compile preprocessfilelinenumbers "\q\addons\custom_server\init\GMS_fnc_getTraderCites.sqf"; }; +if (blck_ai_offload_to_client) then +{ + publicVariable "blck_fnc_setNextWaypoint"; + publicVariable "blck_fnc_changeToMoveWaypoint"; + publicVariable "blck_fnc_changeToSADWaypoint"; +}; + //Start the mission timers if (blck_enableOrangeMissions > 0) then {