36 Commits

Author SHA1 Message Date
3581aa9a1c missing info fo rbild 233 2020-11-08 08:32:04 -05:00
6cc3cef49d update version 2020-11-08 07:44:32 -05:00
0842796307 Update changeLog.sqf 2020-11-08 07:38:25 -05:00
6a8bb9e476 Final Version 7.03 Build 233 2020-11-07 10:01:15 -05:00
4d56107e15 Resolved conflicts 2020-11-07 09:52:20 -05:00
dc82f9a362 Launchers and rounds now removed from ai corpses. 2020-11-01 10:18:22 -05:00
1e6d4aeabe Fix for launchers not being deleted
Still have to do something about the launcher rounds which persist for some reason.
2020-10-31 11:38:46 -04:00
498e7e06e1 Update Build 2020-10-31 09:54:38 -04:00
ccb6b17d10 remove some logging 2020-10-31 09:54:23 -04:00
66ae8eb113 Tweak to be sure the dead unit is in a group owned by the server before proceeding with processing kills 2020-10-31 09:53:53 -04:00
99621912f6 Add config for the chance of various attachments 2020-10-31 09:53:17 -04:00
d6b433d2e3 Add player states updates for EPOCH (Thanks He-Man) 2020-10-31 09:52:48 -04:00
7c88d1fead Update Guidelines.txt 2020-10-10 08:39:09 -04:00
644925cbb8 Merge branch 'Development' into Experimental 2020-10-10 08:34:43 -04:00
2447c309c0 Build 229 2020-10-05 22:42:04 -04:00
eb683730b5 Fixed Issues with relPos unit spawning, removed some logging 2020-10-05 22:41:56 -04:00
6b3a295a2a A few small updates
Support for new settings for pirate missions.
2020-10-05 18:47:06 -04:00
bf9aeb4bc8 Merge branch 'Development' into Experimental 2020-10-05 07:26:49 -04:00
3e2f5ed99b Merge branch 'Development' into Experimental 2020-10-04 15:51:53 -04:00
844be883f7 Merge branch 'Development' into Experimental 2020-10-04 13:36:45 -04:00
b37c9eb77e Merge branch 'Development' into Experimental 2020-10-04 12:31:22 -04:00
b1864ec337 Merge branch 'Development' into Experimental 2020-10-04 10:04:46 -04:00
18bd169a76 Merge branch 'Development' into Experimental 2020-10-03 08:21:25 -04:00
4cd5fbe141 Merge branch 'Development' into Experimental 2020-10-03 08:13:41 -04:00
c86375c4d4 Fix issue with vt7 2020-10-01 20:35:45 -04:00
507530f5a1 Build 224 2020-10-01 20:35:30 -04:00
bbbd73a18e bug fixes 2020-10-01 20:35:17 -04:00
a1a39799e4 bug fixes 2020-10-01 20:35:00 -04:00
d2d0325498 Added some logging / counting 2020-10-01 20:34:44 -04:00
242d1ab23c Rmoved logging 2020-10-01 20:34:17 -04:00
bb119d2808 Merge branch 'Development' into Experimental 2020-10-01 11:53:13 -04:00
3e06a0d2fd Merge branch 'Development' into Experimental 2020-09-30 00:00:34 -04:00
ca4ec19ddf Add code needed to spawn subs and divers that was previously missing. 2020-09-29 18:58:05 -04:00
9d061e7e40 Add logging for thread count (for dev/exp only for now)
Thomas-TKO reported a large number of threads running with build 219 - trying to keep an eye on this here.
2020-09-29 18:57:42 -04:00
7afa108cba Add logging when non safe position found for a mission. 2020-09-29 18:56:49 -04:00
0e4198f05b Start pf Biuild 223
Addresses issues with missing subs and divers at underwater missions.

Adds logging when no safe spot for a mission found.

Addresses some issues with missing info for some maps.
2020-09-29 18:56:25 -04:00
11 changed files with 75 additions and 94 deletions

View File

@ -5,7 +5,7 @@
*/
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
// Need to debug for GM map
private ["_coords","_coordArray","_return"];
params["_missionCategoryDescriptors","_missionParameters","_missionCount"];
_missionCategoryDescriptors params [

View File

@ -34,6 +34,9 @@ _fn_doUpdates = {
{
[["showScore",[_reward,"",_kills],""],[_player]] call blck_fnc_messageplayers;
};
// SUggestion to update Epoch player stats from He-Man
[_killer, "AIKills", 1, true] call EPOCH_server_updatePlayerStats;
};
if (toLower(blck_modType) isEqualTo "exile") then
{

View File

@ -15,6 +15,15 @@
params["_unit","_killer","_instigator"];
// the blck_graveyardGroup is always owned by the server.
// which makes some cleanup easier
[_unit] joinSilent blck_graveyardGroup;
if (count(units (group _unit)) isEqualTo 0) then
{
deleteGroup _group;
};
if (local _unit) then
{
if !((vehicle _unit) isKindOf "Man") then
@ -35,12 +44,7 @@ _unit disableAI "ALL";
{
_unit removeAllEventHandlers _x;
}forEach["FiredNear","Reloaded"];
[_unit] joinSilent blck_graveyardGroup;
if (count(units (group _unit)) isEqualTo 0) then
{
deleteGroup _group;
};
if !((vehicle _unit) isKindOf "Man") then
{

View File

@ -11,21 +11,27 @@
*/
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
private["_launcher","_launcherRounds"];
params["_unit"]; // = _this select 0;
_launcher = _unit getVariable ["Launcher",""];
_unit removeWeapon _Launcher;
if (_launcher != "") then
private _loadout = _unit getVariable["launcher",[[],[]]];
//diag_log format["_removeLaunchers: _loadout = %1",_loadout];
private _mags = magazines _unit;
//diag_log format["_removeLaunchers: _mags = %1",_mags];
{
_unit removeWeapon _Launcher;
if (_forEachIndex > 0) then
{
if (_launcher in weaponCargo _x) exitWith {
deleteVehicle _x;
};
} forEach ((getPosATL _unit) nearObjects ["WeaponHolderSimulated",10]);
_launcherRounds = getArray (configFile >> "CfgWeapons" >> _Launcher >> "magazines"); //0;
{
if(_x in _launcherRounds) then {_unit removeMagazine _x;};
} count magazines _unit;
};
//diag_log format["_removeLaunchers: _x = %1",_x];
_unit removeMagazines _x;
};
} forEach (_loadout select 1);
private _launcher = _loadout select 0;
if !(_launcher isEqualTo []) then
{
if (_launcher in (weapons _unit)) then {
_unit removeWeapon _launcher;
} else {
{
if (_launcher in (weaponCargo _x)) exitWith {deleteVehicle _x};
} forEach (_unit nearObjects ["WeaponHolderSimulated",10]);
};
};

View File

@ -13,7 +13,7 @@
#include "\q\addons\custom_server\Configs\blck_defines.hpp";
private ["_i","_weap","_unit","_skillLevel","_aiSkills","_launcherRound","_index","_ammoChoices","_optics","_pointers","_muzzles","_underbarrel","_legalOptics"];
params["_pos","_aiGroup",["_skillLevel","red"],["_uniforms", []],["_headGear",[]],["_vests",[]],["_backpacks",[]],["_Launcher","none"],["_weaponList",[]],["_sideArms",[]],["_scuba",false],["_garrison",false]];
params["_pos","_aiGroup",["_skillLevel","red"],["_uniforms", []],["_headGear",[]],["_vests",[]],["_backpacks",[]],["_launcher","none"],["_weaponList",[]],["_sideArms",[]],["_scuba",false],["_garrison",false]];
if (_weaponList isEqualTo []) then {_weaponList = [_skillLevel] call blck_fnc_selectAILoadout};
if (_sideArms isEqualTo []) then {_sideArms = [_skillLevel] call blck_fnc_selectAISidearms};
@ -70,6 +70,8 @@ _unit allowDammage true;
_unit setBehaviour "COMBAT";
_unit setunitpos "AUTO";
/*
//
if (surfaceIsWater (getPos _unit)) then
{
_uniforms = blck_UMS_uniforms;
@ -77,6 +79,7 @@ if (surfaceIsWater (getPos _unit)) then
_weaponList = blck_UMS_weapons;
_vests = blck_UMS_vests;
};
*/
_unit forceAddUniform (selectRandom _uniforms);
if !(_headGear isEqualTo []) then
{
@ -92,17 +95,11 @@ _weap = selectRandom _weaponList;
_unit addWeaponGlobal _weap;
_ammoChoices = getArray (configFile >> "CfgWeapons" >> _weap >> "magazines");
_unit addMagazines[selectRandom _ammochoices,3];
/*
_optics = getArray (configfile >> "CfgWeapons" >> _weap >> "WeaponSlotsInfo" >> "CowsSlot" >> "compatibleItems");
_pointers = getArray (configFile >> "CfgWeapons" >> _weap >> "WeaponSlotsInfo" >> "PointerSlot" >> "compatibleItems");
_muzzles = getArray (configFile >> "CfgWeapons" >> _weap >> "WeaponSlotsInfo" >> "MuzzleSlot" >> "compatibleItems");
_underbarrel = getArray (configFile >> "CfgWeapons" >> _weap >> "WeaponSlotsInfo" >> "UnderBarrelSlot" >> "compatibleItems");
*/
if (random 1 < 0.4) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 101] call BIS_fnc_compatibleItems))}; // muzzles
if (random 1 < 0.4) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 201] call BIS_fnc_compatibleItems))}; // optics
if (random 1 < 0.4) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 301] call BIS_fnc_compatibleItems))}; // pointers
if (random 1 < 0.4) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 302] call BIS_fnc_compatibleItems))}; // underbarrel
if (random 1 < blck_chanceMuzzle) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 101] call BIS_fnc_compatibleItems))}; // muzzles
if (random 1 < blck_chanceOptics) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 201] call BIS_fnc_compatibleItems))}; // optics
if (random 1 < blck_chancePointer) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 301] call BIS_fnc_compatibleItems))}; // pointers
if (random 1 < blck_chanceUnderbarrel) then {_unit addPrimaryWeaponItem (selectRandom ([_weap, 302] call BIS_fnc_compatibleItems))}; // underbarrel
if ((count(getArray (configFile >> "cfgWeapons" >> _weap >> "muzzles"))) > 1) then
{
_unit addMagazine "1Rnd_HE_Grenade_shell";
@ -126,23 +123,6 @@ if (round(random 10) <= 5) then
_unit addItem selectRandom blck_specialItems;
};
/*
if ( !(_Launcher isEqualTo "none") && !(_backpacks isEqualTo [])) then
{
_unit addWeaponGlobal _Launcher;
_unit addBackpack (selectRandom _backpacks);
for "_i" from 1 to 3 do
{
_unit addItemToBackpack (getArray (configFile >> "CfgWeapons" >> _Launcher >> "magazines") select 0); // call BIS_fnc_selectRandom;
};
_unit setVariable["Launcher",_launcher,true];
} else {
if ( random (1) < blck_chanceBackpack && !(_backpacks isEqualTo [])) then
{
_unit addBackpack selectRandom _backpacks;
};
};
*/
if !(_backpacks isEqualTo []) then
{
if (_Launcher isEqualTo "none") then
@ -152,14 +132,17 @@ if !(_backpacks isEqualTo []) then
_unit addBackpack selectRandom _backpacks;
};
} else {
_unit addWeaponGlobal _Launcher;
_unit addWeaponGlobal _launcher;
_unit addBackpack (selectRandom _backpacks);
private _roundsAdded = [];
private _mags = getArray (configFile >> "CfgWeapons" >> _Launcher >> "magazines");
for "_i" from 1 to 3 do
{
_unit addItemToBackpack (_mags select 0); // call BIS_fnc_selectRandom;
private _lr = selectRandom _mags; // call BIS_fnc_selectRandom;
_roundsAdded pushBack _lr;
_unit addItemToBackpack _lr;
};
_unit setVariable["Launcher",_launcher,true];
_unit setVariable["Launcher",[_launcher,_roundsAdded],true];
};
};

View File

@ -439,6 +439,12 @@
blck_maxMoneyRed = 15;
blck_maxMoneyBlue = 10;
// Define the chance of attachments
blck_chanceOptics = 0.4;
blck_chanceMuzzle = 0.3;
blck_chancePointer = 0.25;
blck_chanceUnderbarrel = 0.25;
#ifdef GRGserver
blck_AIAlertDistance = [250,450,650,800]; // 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];

View File

@ -24,13 +24,13 @@
3) A time acceleration module.
*/
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).
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_simulationManager = blck_useBlckeaglsSimulationManagement;
blck_hideRocksAndPlants = true; // When true, any rocks, trees or bushes under enterable buildings will be 'hidden'
// Note that you can define map-specific variants in custom_server\configs\blck_custom_config.sqf
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_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 = 2; // Daytime time accelearation
blck_timeAccelerationDusk = 4; // Dawn/dusk time accelearation
blck_timeAccelerationNight = 8; // Nighttim time acceleration
@ -78,7 +78,7 @@
//Minimum distance between missions
blck_MinDistanceFromMission = 2000;
blck_minDistanceToBases = 800;
blck_minDistanceToBases = 500;
blck_minDistanceToPlayer = 500;
blck_minDistanceFromTowns = 300;
blck_minDistanceFromDMS = 500; // minimum distance for a blackeagls mission from any nearby DMS missions. set to -1 to disable this check.
@ -420,7 +420,11 @@
blck_maxMoneyGreen = 40;
blck_maxMoneyRed = 30;
blck_maxMoneyBlue = 20;
// Define the chance of attachments
blck_chanceOptics = 0.4;
blck_chanceMuzzle = 0.3;
blck_chancePointer = 0.25;
blck_chanceUnderbarrel = 0.25;
if (toLower(blck_modType) isEqualTo "epoch") then
{
[format[" Loading Mission System using Parameters for %1 for militarized servers",blck_modType]] call blck_fnc_log;

View File

@ -1,4 +1,4 @@
#define blck_buildNumber 230 // Address issues with cleanup of objects
#define blck_versionNumber 7.02
#define blck_buildDate "10-5-20"
#define blck_buildNumber 233 // Address issues with cleanup of objects
#define blck_versionNumber 7.04
#define blck_buildDate "11-8-20"

View File

@ -1,18 +0,0 @@
uiSleep 5;
diag_log format["<< ---- START TEST Crate Loading ---- >>"];
_coords = [12000,12000,0];
//_loot = blck_supportLoot; //[causes problems] blck_highPoweredLoot; // [causes problems] blck_contructionLoot ; //blck_BoxLoot_Orange;
_loot = blck_BoxLoot_Orange;
_lootCounts = [100,100,100,100,100,100];
_aiDifficultyLevel = "Orange";
for "_i" from 1 to 100 do
{
diag_log format["testCrateLoading: pass %1",_i];
_crateType = selectRandom blck_crateTypes;
_crate = [_coords,_crateType] call blck_fnc_spawnCrate;
[_crate,_loot,_lootCounts] call blck_fnc_fillBoxes;
//uiSleep 0.1;
diag_log format["testCrateLoading: crate inventory = %1",getItemCargo _crate];
};

View File

@ -1,21 +1,7 @@
Variables to define
marker parameters
Marker Text
Features:
Mission start message
Mission end message
Mission level
To pull units:
private _units = allUnits;
Exports static or dynamic missions preformated in .sqf code. Simply paste the output of the editor into a new .sqf file, edit entires to refine mission parameters and add the name of the mission file to GMS_missionLists.
Captures simple objects, sets allow dammage and allow similation according to editor settings, and captures marker configurations.
To pull objects:
_center = allMissionObejcts "RoadCone_L_F";
_buildings = allMissionObjects "Building";
_things = allMissionObjects "ThingX";
_baseObjects = _buildings append _things;
_static = allMissionObejcts "StaticWeapon";
_vehicles = allMissionObejcts "Car" + allMissionObejcts "Tank" + allMissionObejcts "Ship";
_air = allMissionObejcts "Air";

View File

@ -10,6 +10,13 @@ Many thanks for new Coding and ideas from Grahame.
Significant Changes:
=====================
7.03 Build 233
New: Player stats updated for each AI kill on Epoch.
Fixed: Launchers and Launcher rounds were not being deleted.
AI at Turrets were spawned with scubba loadouts.
7.02 Build 230
New: Option to hide bushes and trees that happen to be under the location in which an enterable building is spawned