From 2caf7cb720d6feb9b76f3603036098bbb94d0c10 Mon Sep 17 00:00:00 2001 From: Hizumi Date: Mon, 19 Jun 2023 00:57:30 -0500 Subject: [PATCH] Initial commit --- .gitattributes | 2 + .gitignore | 4 + CHANGELOG.md | 95 +++++++++++++ README.md | 54 ++++++++ description.ext | 123 +++++++++++++++++ functions/CfgFunctions.hpp | 46 +++++++ functions/ambience/fn_flakEH.sqf | 101 ++++++++++++++ functions/ambience/fn_flakInitVehicle.sqf | 83 ++++++++++++ functions/client/fn_zenModules.sqf | 70 ++++++++++ functions/init/fn_init.sqf | 60 +++++++++ functions/init/fn_initDNI_PlayerFPS.sqf | 85 ++++++++++++ functions/init/fn_initManager.sqf | 11 ++ functions/init/fn_initPlayerCPS.sqf | 45 +++++++ functions/init/fn_initPlayerLocal.sqf | 133 +++++++++++++++++++ functions/init/fn_initServer.sqf | 140 ++++++++++++++++++++ functions/intel/fn_MDS_callsigns.sqf | 22 +++ functions/intel/fn_MDS_environment.sqf | 16 +++ functions/intel/fn_MDS_fixedAssets.sqf | 19 +++ functions/intel/fn_MDS_radioFrequencies.sqf | 35 +++++ functions/intel/fn_MDS_rotaryAssets.sqf | 19 +++ functions/intel/fn_MDS_smokeColors.sqf | 30 +++++ functions/intel/fn_initFBCB2.sqf | 8 ++ functions/intel/fn_messageAssetStatus.sqf | 31 +++++ functions/map/fn_copyMapFromPlayer.sqf | 5 + functions/map/fn_getPlayerMapMarkers.sqf | 16 +++ functions/map/fn_loadMapMarkers.sqf | 10 ++ functions/map/fn_mapMarkerToString.sqf | 52 ++++++++ functions/map/fn_stringToMapMarker.sqf | 70 ++++++++++ functions/resupply/fn_createAmmoBox.sqf | 111 ++++++++++++++++ functions/resupply/fn_createMedicalBox.sqf | 86 ++++++++++++ functions/resupply/fn_createWeaponsBox.sqf | 82 ++++++++++++ images/.gitkeep | 2 + mission.jpg | Bin 0 -> 118877 bytes mission_settings.hpp | 26 ++++ scripts/.gitkeep | 2 + sounds/.gitkeep | 2 + 36 files changed, 1696 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 CHANGELOG.md create mode 100644 README.md create mode 100644 description.ext create mode 100644 functions/CfgFunctions.hpp create mode 100644 functions/ambience/fn_flakEH.sqf create mode 100644 functions/ambience/fn_flakInitVehicle.sqf create mode 100644 functions/client/fn_zenModules.sqf create mode 100644 functions/init/fn_init.sqf create mode 100644 functions/init/fn_initDNI_PlayerFPS.sqf create mode 100644 functions/init/fn_initManager.sqf create mode 100644 functions/init/fn_initPlayerCPS.sqf create mode 100644 functions/init/fn_initPlayerLocal.sqf create mode 100644 functions/init/fn_initServer.sqf create mode 100644 functions/intel/fn_MDS_callsigns.sqf create mode 100644 functions/intel/fn_MDS_environment.sqf create mode 100644 functions/intel/fn_MDS_fixedAssets.sqf create mode 100644 functions/intel/fn_MDS_radioFrequencies.sqf create mode 100644 functions/intel/fn_MDS_rotaryAssets.sqf create mode 100644 functions/intel/fn_MDS_smokeColors.sqf create mode 100644 functions/intel/fn_initFBCB2.sqf create mode 100644 functions/intel/fn_messageAssetStatus.sqf create mode 100644 functions/map/fn_copyMapFromPlayer.sqf create mode 100644 functions/map/fn_getPlayerMapMarkers.sqf create mode 100644 functions/map/fn_loadMapMarkers.sqf create mode 100644 functions/map/fn_mapMarkerToString.sqf create mode 100644 functions/map/fn_stringToMapMarker.sqf create mode 100644 functions/resupply/fn_createAmmoBox.sqf create mode 100644 functions/resupply/fn_createMedicalBox.sqf create mode 100644 functions/resupply/fn_createWeaponsBox.sqf create mode 100644 images/.gitkeep create mode 100644 mission.jpg create mode 100644 mission_settings.hpp create mode 100644 scripts/.gitkeep create mode 100644 sounds/.gitkeep diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0003c88 --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +# ---> NotepadPP +# Notepad++ backups # +*.bak + diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..94adbf9 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,95 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project badly attempts [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [2.2] - 2023-04-23 + +### Added + +- Add CPS metrics to all clients and publish to server + +### Fixed + +- Update CPS metrics localEvent emitter to emit the current value, not the previous + +### Changed + +- Force `sideChat` CBA setting to 'disabled' on mission start by default + +## [2.1] - 2023-04-12 + +### Added + +- Fortify preset and object area restriction +- Zeus module for grounds cleanup +- `sideChat` restrictions to allow only Zeus and `#admins` to send messages +- Allow `#admin` to enable or disable `sideChat` via CBA setting on a per mission file basis. +`Escape -> Configure -> Addon Options -> Server -> 17th Battalion -> Enable Side Chat` + +## [2.0] -2023-04-12 + +### Added + +- Automated calculations-per-second metrics gathering + +### Fixed + +- mission.jpg to correct dimensions and optimize + +## [1.9] - 2023-03-07 + +### Added + +- Tire interaction to allow patching to 80% with toolkit + +### Changed + +- Zeus resupply box contents +- Command callsigns diary section +- Rotary asset list diary section +- Fixed wing asset list diary section + +## [1.8] - 2022-10-22 + +### Added + +- Local environment sunrise and sunset times to diary intel section + +## [1.7] - 2022-10-15 + +### Added + +- `#respawn` chat command to respawn player in attempt to fix rare instance of player initializing their spawn at [0, 0, 0] + +## [1.6] - 2022-10-06 + +### Changed + +- FBCB2 code now switched to respawn modules instead of old-style respawn marker for BLUFOR base area for asset calculations + +## [1.5] - 2022-10-02 + +### Added + +- Map copying code in preparation for disabling of `sideChat` + +## [1.4] - 2022-09-19 + +### Added +- `#saveaar` chat command for `#admin` to initiate OCAP replay upload + +### Fixed + +- Flak code now accounts for ~~shit~~ RHS vehicles *because they're formatted special* + +## [1.3] - 2022-08-17 + +### Added + +- Function for converting an artillery piece into a "flak cannon" + +## [1.2] - 2022-07-14 + +> Initial Public Release \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..c227fea --- /dev/null +++ b/README.md @@ -0,0 +1,54 @@ +# Installation Instructions + +Once your mission has been created and saved in the Arma 3 Eden Editor, download the latest mission template zip and copy its contents to the folder where your mission file lives. + +The only file which should be pre-existing in your mission folder is `mission.sqm` + +Once copied, the final structure should appear similar to the following: +```markdown +├── functions/ +├── images/ +├── scripts/ +├── sounds/ +├── description.ext +├── mission.jpg +├── mission.sqm +├── mission_settings.hpp +``` + +After the requisite configuration file edits have been made, your mission is ready to be packed into a pbo for deployment. + +# Files + +Almost none of the template files should be edited in anyway as they have been formatted specially and specifically for their purpose. + +*The following files however **must** be edited:* +`mission_settings.hpp` + +*The following files however **should** be edited:* +`mission.jpg` + +## mission_settings.hpp + +The contents of this file must be edited to reflect the naming of your mission for display purposes. All variables are self-documented inside the file to clearly identify the purpose of each piece of required text + +The contents of the lower half of the file are where the mission maker is able to add/replace/modify the built in `#ace-fortify` preset + +## mission.jpg + +This file will be displayed the client mission loading screen. +File should remain small *(under 300KiB)* and should optimally be `1024px by 512px` in resolution + +## images/ + +This directory is for organizational purposes for any images you wish to use in your mission + +## scripts/ + +This directory is for organizational purposes for any custom scripts you wish to use in your mission. +> **Note**: Scripts may need to be edited to account for their new location + +## sounds/ + +This directory is for organizational purposes for any custom scripts you wish to use in your mission. +> **Note:** Using custom sounds require adding the proper CfgSounds codeblock into mission_settings.hpp diff --git a/description.ext b/description.ext new file mode 100644 index 0000000..8020801 --- /dev/null +++ b/description.ext @@ -0,0 +1,123 @@ +//-------------------------------------------DESCRIPTION.EXT----------------------------------------------------------------- +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + + + +////////////////////////////////////// +// // +// DO NOT EDIT THIS FILE // +// // +////////////////////////////////////// + + + + +//-------------------------------------------INCLUDES------------------------------------------------------------------------ +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#include "mission_settings.hpp" + +//-------------------------------------------MISSION INFO-------------------------------------------------------------------- +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + +overviewPicture = ""; +OnLoadIntro = "UNUSED"; + +onLoadMissionTime = 1; +onLoadIntroTime = 1; + +//-------------------------------------------GAMETYPE----------------------------------------------------------------------// +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +class Header +{ + gameType = COOP; + minPlayers = 2; + maxPlayers = 80; +}; + +//-------------------------------------------RESPAWN SETTINGS--------------------------------------------------------------// +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +respawn = 3; +respawnDelay = 10; +respawnVehicleDelay = 30; +respawnTemplatesWest[] = {"Counter", "MenuPosition"}; //Templates: "Spectator";"Revive";"Wave";"Tickets";"Counter";"MenuPosition";"EndMission";"MenuInventory"; +respawnTemplatesEast[] = {"Counter", "MenuPosition"}; +respawnTemplatesGuer[] = {"Counter", "MenuPosition"}; +respawnTemplatesCiv[] = {"Counter", "MenuPosition"}; + +respawnOnStart = 1; //has to always be disabled with startLoadingscreen and waitUntil {alive player};!! +respawnButton = 1; //enables the respawn button +respawnDialog = 1; //enables the score table + +//-------------------------------------------MISSION SETTINGS--------------------------------------------------------------// +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +enableDebugConsole[] = { "76561198009349760", "76561198013533294" }; +aikills = 0; //show ai kills in score table +disabledAI = 1; //disable AI for all playable units +//disableChannels[]={0,1,6}; //0=Global;1=Side;2=Command;3=Group;4=Vehicle;5=Direct;6=System; +disableChannels[]={{0,true,true},{1,false,true},{2,false,true},{3,false,true},{4,false,true},{5,false,true},{6,true,true}}; + // {channelID, disableChat, disableVoice} for 0=Global;1=Side;2=Command;3=Group;4=Vehicle;5=Direct;6=System; +forceRotorLibSimulation = 0; //0=options based;1=force enable;2=force disable +disableRandomization[] = {}; + +//-------------------------------------------Clean Up SETTINGS-------------------------------------------------------------// +///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +corpseManagerMode = 1; //0 = None, 1 = All, 2 = None_But_Respawned, 3 = All_But_Respawned +corpseRemovalMinTime = 600; +corpseRemovalMaxTime = 900; +corpseLimit = 80; + +wreckManagerMode = 0; //0 = None, 1 = All, 2 = None_But_Respawned, 3 = All_But_Respawned +wreckRemovalMinTime = 600; +wreckRemovalMaxTime = 900; +wreckLimit = 40; + +minPlayerDistance = 600; + +//-------------------------------------------BASE SETTINGS---------------------------------------------------------------// + +class Params +{ +}; + + +class cfgFunctions +{ + #include "functions\CfgFunctions.hpp" +}; + + +class cfgRemoteExec +{ + // List of script commands allowed to be sent from client via remoteExec + class Commands + { + // State of remoteExec: 0-turned off, 1-turned on, taking whitelist into account, 2-turned on, however, ignoring whitelists (default because of backward compatibility) + mode = 2; + }; + // List of script functions allowed to be sent from client via remoteExec + class Functions + { + // State of remoteExec: 0-turned off, 1-turned on, taking whitelist into account, 2-turned on, however, ignoring whitelists (default because of backward compatibility) + mode = 2; + // Ability to send jip messages: 0-disabled, 1-enabled (default) + jip = 1; + class BIS_fnc_effectKilledAirDestruction {}; + class BIS_fnc_effectKilledSecondaries {}; + class BIS_fnc_objectVar {}; + class BIS_fnc_execVM {}; + }; +}; + +class CfgDebriefingSections { + class acex_killTracker { + title = "Acex Killed Events"; + variable = "acex_killTracker_outputText"; + }; +}; \ No newline at end of file diff --git a/functions/CfgFunctions.hpp b/functions/CfgFunctions.hpp new file mode 100644 index 0000000..8979a7b --- /dev/null +++ b/functions/CfgFunctions.hpp @@ -0,0 +1,46 @@ +class milsim +{ + tag = "milsim"; + class init + { + class initManager { postInit = 1; }; + class init {}; + class initPlayerLocal {}; + class initPlayerCPS {}; + class initDNI_PlayerFPS {}; + class initServer {}; + }; + class userSettings + { + }; + class intel { + class initFBCB2 {}; + class MDS_callsigns {}; + class MDS_fixedAssets {}; + class MDS_rotaryAssets {}; + class MDS_smokeColors {}; + class MDS_radioFrequencies {}; + class MDS_environment {}; + class messageAssetStatus {}; + }; + class client { + class zenModules { postInit = 1; }; + }; + class resupply { + class createAmmoBox {}; + class createWeaponsBox {}; + class createMedicalBox {}; + } + class ambience { + class flakInitVehicle {}; + class flakEH {}; + }; + class map + { + class copyMapFromPlayer {}; + class getPlayerMapMarkers {}; + class loadMapMarkers {}; + class mapMarkerToString {}; + class stringToMapMarker {}; + }; +}; diff --git a/functions/ambience/fn_flakEH.sqf b/functions/ambience/fn_flakEH.sqf new file mode 100644 index 0000000..ef81f99 --- /dev/null +++ b/functions/ambience/fn_flakEH.sqf @@ -0,0 +1,101 @@ +params [ + ["_event", [], []], + ["_maximumDistance", 2000, [0]], + ["_minimumAltitude", 0, [0]], + ["_primaryTurret", 0, [0]], + ["_fullAmmoCount", 2000, [0]], + ["_flakRoundsEvery", 2, [0]], + ["_speedDispersion", 20, [0]], + ["_distanceDispersion", 30, [0]] +]; + +// diag_log("flakEH running"); +// diag_log(_event); + +_unit = _event select 0; +// diag_log(format["i have a unit: %1", _unit]); + +_projectile = _event select 6; +// diag_log(format["i have a projectile in flight: %1", _projectile]); + +deleteVehicle _projectile; +// diag_log("i have deleted the projectile"); + +// diag_log(_unit weaponsTurret [0] select _primaryTurret); + +_weapon = _unit weaponsTurret [0] select _primaryTurret; + +_munitionConversionRate = _fullAmmoCount - _flakRoundsEvery; + +// diag_log(format["munition count: %1", _unit ammo _weapon]); +// diag_log(format["munition replacement at: %1", _munitionConversionRate]); + +if (_unit ammo _weapon < _munitionConversionRate) then { + _unit setAmmo [_weapon, _fullAmmoCount]; + // diag_log(format["replacing ammo count to: %1", _fullAmmoCount]); + + _targetPosition = []; + + _target = 0; + + if (isPlayer (assignedGunner _unit)) then { + + _target = cursorTarget; + + if (_unit distance _target < _maximumDistance) then { + _targetPosition = getPos _target; + }; + + } else { + _possibleTargets = _unit nearTargets _maximumDistance; + diag_log(format["ai has %1 possible targetting solutions", count _possibleTargets]); + + if ((count _possibleTargets) > 0) then { + + _i = 0; + _hold = 0; + + { + _i = _unit aimedAtTarget [_x select 4, _weapon]; + if (_i > _hold && (_x select 3) > 0) then { + _target = _x select 4; + diag_log(format["setting target to %1", _target]); + _targetPosition = _x select 0; + _hold = _i; + }; + } forEach _possibleTargets; + + }; + + }; + + // diag_log(format["i have found target coordinates: %1", _targetPosition]); + + if ((count _targetPosition) > 0) then { + // diag_log("calculating new projectile placement"); + + _targetX = _targetPosition select 0; + _targetY = _targetPosition select 1; + _targetZ = _targetPosition select 2; + + // diag_log(format["checking target altitude: %1", _targetZ]); + + if (_targetZ > _minimumAltitude) then { + // diag_log("target is above minimum height, proceeding"); + + if !(lineIntersects [getPos _unit, _targetPosition, _unit, _target]) then { + + // diag_log("intersection calculated"); + + _flakDistance = ((speed _target * 0.8) * (_speedDispersion / 100)) + ((_unit distance _target) * (_distanceDispersion / 500)); + + _distanceX = ((random (_flakDistance * 2)) - _flakDistance) + _targetX; + _distanceY = ((random (_flakDistance * 2)) - _flakDistance) + _targetY; + _distanceZ = ((random (_flakDistance * 2)) - _flakDistance) + _targetZ; + // diag_log( format["target is distance: %1 / distance2D %2 from me, creating munition distance %3, distance2D %4 from me", _unit distance _targetPosition, _unit distance2D _targetPosition, _unit distance [_distanceX, _distanceY, _distanceZ], _unit distance2D [_distanceX, _distanceY, _distanceZ]]); + _flak = createVehicle ["SmallSecondary", [_distanceX, _distanceY, _distanceZ], [], 0, "CAN_COLLIDE"]; + + }; + }; + }; +}; \ No newline at end of file diff --git a/functions/ambience/fn_flakInitVehicle.sqf b/functions/ambience/fn_flakInitVehicle.sqf new file mode 100644 index 0000000..4afcb61 --- /dev/null +++ b/functions/ambience/fn_flakInitVehicle.sqf @@ -0,0 +1,83 @@ +params [ + ["_unit", objNull, [objNull]], + ["_maximumDistance", 2000, [0]], + ["_minimumAltitude", 0, [0]], + ["_flakRoundsEvery", 2, [0]], + ["_speedDispersion", 20, [0]], + ["_distanceDispersion", 30, [0]], + ["_removeMissiles", true, [true]] +]; + +diag_log("initializing flak v16"); + +_primaryTurret = objNull; + +if (_removeMissiles) then { + + diag_log("removing missiles"); + + _magazines = magazinesAllTurrets _unit; + + { + _magazine = _x select 0; + diag_log( format["Checking: %1", _magazine]); + + _ammo = gettext( configfile >> "CfgMagazines" >> _magazine >> "ammo"); + diag_log( format["ammo: %1", _ammo]); + + _type = gettext(configFile >> "CfgAmmo" >> _ammo >> "simulation"); + diag_log( format["ammo type: %1", _type]); + + if (_type == "shotMissile") then { + _unit removeMagazinesTurret [_magazine, [0]]; + diag_log(format["removing ammo: %1", _ammo]); + }; + + if ((_type == "shotBullet") && (_primaryTurret isEqualTo objNull)) then { + _primaryTurret = _forEachIndex; + diag_log(format["found primary turret: %1", _unit weaponsTurret [0] select _primaryTurret]); + }; + + } foreach _magazines; + +}; + +_weapon = _unit weaponsTurret [0] select _primaryTurret; + +_fullAmmoCount = _unit ammo _weapon; + + +_unit setVariable["feh_maximumDistance", _maximumDistance]; +_unit setVariable["feh_minimumAltitude", _minimumAltitude]; +_unit setVariable["feh_primaryTurret", _primaryTurret]; +_unit setVariable["feh_fullAmmoCount", _fullAmmoCount]; +_unit setVariable["feh_flakRoundsEvery", _flakRoundsEvery]; +_unit setVariable["feh_speedDispersion", _speedDispersion]; +_unit setVariable["feh_distanceDispersion", _distanceDispersion]; + +diag_log( format[ + "{[_this, maximumDistance: %1, minimumAltitude: %2, primaryTurret: %3, fullAmmoCount: %4, flakRoundsEvery: %5, speedDispersion: %6, distanceDispersion: %7] call milsim_fnc_flakEH;}", + _maximumDistance, + _minimumAltitude, + _primaryTurret, + _fullAmmoCount, + _flakRoundsEvery, + _speedDispersion, + _distanceDispersion + ] + ); + + + _unit addEventHandler [ + "Fired", + format[ + "diag_log('firing'); [_this, %1, %2, %3, %4, %5, %6, %7] call milsim_fnc_flakEH", + _maximumDistance, + _minimumAltitude, + _primaryTurret, + _fullAmmoCount, + _flakRoundsEvery, + _speedDispersion, + _distanceDispersion + ] + ]; \ No newline at end of file diff --git a/functions/client/fn_zenModules.sqf b/functions/client/fn_zenModules.sqf new file mode 100644 index 0000000..2ea9959 --- /dev/null +++ b/functions/client/fn_zenModules.sqf @@ -0,0 +1,70 @@ +[ + "17th Battalion", + "Create Resupply Box", + { + params [["_pos", [0,0,0], [[]], 3], ["_target", objNull, [objNull]]]; + + [ + "Resupply Box Options", + [ + [ "COMBO", "Box Type", [[1,2,3], [["Ammo"],["Weapons"],["Medical"]],0] ] + ], + { + + params ["_dialog", "_args"]; + + _dialog params ["_type"]; + _args params ["_pos", "_target"]; + + switch (_type) do { + case 1: { + [_target, _pos] call milsim_fnc_createAmmoBox; + }; + case 2: { + [_target, _pos] call milsim_fnc_createWeaponsBox; + }; + case 3: { + [_target, _pos] call milsim_fnc_createMedicalBox; + }; + }; + }, + {}, + [_pos, _target] + ] call zen_dialog_fnc_create; + + } +] call zen_custom_modules_fnc_register; + + +[ + "17th Battalion", + "Grounds Cleanup2", + { + params [["_pos", [0,0,0], [[]], 3], ["_target", objNull, [objNull]]]; + + _pos = [_pos#0, _pos#1, 0]; + + [ + "Cleanup Area", + [ + [ "SLIDER:RADIUS", "Radius (meters)", [50, 500, 100, 0, _pos, [0.8, 0.2, 0.2, 1.0]], true ] + ], + { + + params ["_dialog", "_args"]; + + _dialog params ["_radius"]; + _args params ["_pos", "_target"]; + + _objects = _pos nearObjects ["GroundWeaponHolder", _radius]; + { + deleteVehicle _x; + } forEach _objects + + }, + {}, + [_pos, _target] + ] call zen_dialog_fnc_create; + + } +] call zen_custom_modules_fnc_register; \ No newline at end of file diff --git a/functions/init/fn_init.sqf b/functions/init/fn_init.sqf new file mode 100644 index 0000000..6c3f5fe --- /dev/null +++ b/functions/init/fn_init.sqf @@ -0,0 +1,60 @@ +// Disable saving +enableSaving[false, false]; + +// Disable radio chatter and sentences +enableRadio false; +enableSentences false; + +// update ace weight settings since arma quadruples the value when an object is loaded into another object +missionNamespace setVariable ["ACE_maxWeightDrag", 2400]; +missionNamespace setVariable ["ACE_maxWeightCarry", 1800]; + +// Disable RHS radio chatter (if RHS is present) +if(isClass(configfile >> "CfgPatches" >> "rhs_main")) then { + rhs_vehicleRadioChatter = 0; +}; + +// Disable ambient life (rabbits & snakes) once the mission starts +waitUntil {time > 0}; +enableEnvironment[false, true]; +diag_log text "[MILSIM] (init) ambient life disabled"; + +[ + "saveaar", + { + [] remoteExec["ocap_fnc_exportData", 2]; + }, + "admin" +] call CBA_fnc_registerChatCommand; + +[ + "respawn", + { + _clientID = _thisArgs select 0; + player setDamage 1; + format["[MILSIM] (init) %1 claims they were glitched and respawned - %2", name player, netID player] remoteExec["diag_log", 2]; + format["%1 claims they were glitched and respawned (%2)", name player, netID player] remoteExec["systemChat", -_clientID]; + }, + "all", + [clientOwner] +] call CBA_fnc_registerChatCommand; + +diag_log text "[MILSIM] (init) OCAP chat handler registered"; + + +[ + "milsim_sideChat", + "CHECKBOX", + "Enable Side Chat Text", + "17th Batallion", + false, + true, + { + params ["_value"]; + missionNamespace setVariable["milsim_sideChat", _value]; + } +] call CBA_fnc_addSetting; + +["milsim_sideChat", false] call CBA_settings_fnc_set; + +diag_log text "[MILSIM] (init) Custom CBA settings initialized"; diff --git a/functions/init/fn_initDNI_PlayerFPS.sqf b/functions/init/fn_initDNI_PlayerFPS.sqf new file mode 100644 index 0000000..3b06435 --- /dev/null +++ b/functions/init/fn_initDNI_PlayerFPS.sqf @@ -0,0 +1,85 @@ +diag_log text "[MILSIM] (DNI) writing variable loop"; + +[] spawn { + while {true} do { + player setVariable ["DNI_PlayerFPS", floor diag_fps, true]; + sleep 1 + }; +}; + +diag_log text "[MILSIM] (DNI) variable loop complete"; + +///////////////////////////////////////////////////////// +//Waits until curators are initalized in order to check// +//if player is zeus to run the fps scripts // +///////////////////////////////////////////////////////// +diag_log text "[MILSIM] (DNI) waiting for curators"; + +waitUntil { + private _hasCurators = (count allcurators) > 0; + private _hasInitializedCurators = (count (call BIS_fnc_listCuratorPlayers)) > 0; + private _curatorsInitialized = !_hasCurators || _hasInitializedCurators; + ((time > 2) || _curatorsInitialized) + }; + +diag_log text "[MILSIM] (DNI) curator init complete"; + +///////////////////////////////////////////////////////// +//If player is a curator it will run the script and each/ +//player will have their FPS appear beneath them // +///////////////////////////////////////////////////////// +if (player in (call bis_fnc_listcuratorplayers)) then { + + diag_log text "[MILSIM] (DNI) player is in curator list, adding Draw3D handler"; + + addMissionEventHandler ["Draw3D", { + { + _distance = position curatorCamera distance _x; + //if zeus camera is farther than 1200 meters away from the targets the text will not display + if (_distance < 1200) then { + _playerFPS = _x getVariable ["DNI_PlayerFPS",50]; + //if the FPS is below 20 it turns red and becomes more visible for zeus to see so they are aware + if (_playerFPS <20) then + { + drawIcon3D + [ + "",//Path to image displayed near text + [1,0,0,0.7],//color of the text using RGBA + position _x,//position of the text _x referring to the player in 'allPlayers' + 1,//Width + 2,//height from position, below + 0,//angle + format["%1 FPS: %2", name _x, str _playerFPS],//text to be displayed + 0,//shadow on text, 0=none,1=shadow,2=outline + 0.05,//text size + "PuristaMedium",//text font + "center"//align text left, right, or center + ]; + } + //if the FPS is above 20 text is smaller and less visible as to not conern zeus as much + else + { + drawIcon3D + [ + "",//Path to image displayed near text + [1,1,1,0.3],//color of the text using RGBA + position _x,//position of the text _x referring to the player in 'allPlayers' + 1,//Width + 2,//height from position, below + 0,//angle + format["%1 FPS: %2", name _x, str _playerFPS],//text to be displayed + 0,//shadow on text, 0=none,1=shadow,2=outline + 0.03,//text size + "PuristaMedium",//text font + "center"//align text left, right, or center + ]; + }; + }; + } forEach allPlayers; + //Here is the array of units you wish to display the FPS text for, it can be + //changed to be an array of specific units or players if you wish + }]; +}; +///////////////////////////////////////////////////////// +/////////////////////End FPS Script////////////////////// +///////////////////////////////////////////////////////// \ No newline at end of file diff --git a/functions/init/fn_initManager.sqf b/functions/init/fn_initManager.sqf new file mode 100644 index 0000000..fae3de2 --- /dev/null +++ b/functions/init/fn_initManager.sqf @@ -0,0 +1,11 @@ +[] spawn milsim_fnc_init; + + +if (isServer) then { + [] spawn milsim_fnc_initServer; +}; +if (hasInterface) then { + [] spawn milsim_fnc_initPlayerLocal; +}; + +nil \ No newline at end of file diff --git a/functions/init/fn_initPlayerCPS.sqf b/functions/init/fn_initPlayerCPS.sqf new file mode 100644 index 0000000..0513f2d --- /dev/null +++ b/functions/init/fn_initPlayerCPS.sqf @@ -0,0 +1,45 @@ +diag_log text "[MILSIM] (initPlayerCPS) writing variable loop"; + +_cpsPFH = [ + { + + [] spawn { + // warning: while loop without suspension executes multiple times per frame + private _counter = 0; + private _endTime = diag_tickTime + 5; + private _frameNo = diag_frameNo; + while { diag_tickTime < _endTime } do + { + _counter = _counter + 1; + }; + // in an empty mission, the _counter may go well over 2000 times per frame! + diag_log text format ["[MILSIM] (initPlayerCPS) Average Execution: %1 times per frame", _counter / (diag_frameNo - _frameNo)]; + player setVariable["milsim_player_raw_cps", _counter / (diag_frameNo - _frameNo), true]; + + // with suspension + private _counter = 0; + private _endTime = diag_tickTime + 5; + private _frameNo = diag_frameNo; + while { diag_tickTime < _endTime } do + { + _counter = _counter + 1; + uiSleep 0.001; // waits at least 1 frame + }; + // _counter says one per frame, as expected + diag_log text format ["[MILSIM] (initPlayerCPS) Average Execution: %1 times per frame", _counter / (diag_frameNo - _frameNo)]; + player setVariable["milsim_player_cps", _counter / (diag_frameNo - _frameNo), true]; + + + }; + + }, + 300, + [], + { diag_log text "[MILSIM] (initPlayerCPS) CPS PFH loaded" }, + { diag_log text "IF YOU SEE THIS CPS PFH FUCKED UP" }, + { true }, + { false }, + [] +] call CBA_fnc_createPerFrameHandlerObject; + +player setVariable ["milsim_player_cps_handler", _cpsPFH]; diff --git a/functions/init/fn_initPlayerLocal.sqf b/functions/init/fn_initPlayerLocal.sqf new file mode 100644 index 0000000..0c05243 --- /dev/null +++ b/functions/init/fn_initPlayerLocal.sqf @@ -0,0 +1,133 @@ +if (!hasInterface) exitWith {}; + +waitUntil {player == player}; + + +player createDiarySubject["Status","FBCB2 - Status"]; +player createDiarySubject["Intel","FBCB2 - Combat Msgs"]; +player createDiarySubject["Messages","FBCB2 - Messages"]; +diag_log text "[MILSIM] (initPlayerLocal) diaries created"; + + +waitUntil {time > 0}; +[] spawn milsim_fnc_initDNI_PlayerFPS; +[] spawn milsim_fnc_initPlayerCPS; + + +_action = [ + "CheckFuel", + "Check Fuel", + "", + { + hint format ["Fuel: %1", (fuel _target *100)] + }, + {true} + ] call ace_interact_menu_fnc_createAction; +["LandVehicle", 0, ["ACE_MainActions"], _action, true] call ace_interact_menu_fnc_addActionToClass; + + +_action = [ + "Unfuck", + "Flip Vehicle", + "", + { + _target setpos [(getpos _target) select 0,(getpos _target) select 1, 0.5]; + _target setVectorUp surfaceNormal position _target; + }, + {true} + ] call ace_interact_menu_fnc_createAction; +["LandVehicle", 0, ["ACE_MainActions"], _action, true] call ace_interact_menu_fnc_addActionToClass; + + +_action = ["CheckExtTank","Check External Tank","",{hint format ["Ext Tank: %1", 5]},{true}] call ace_interact_menu_fnc_createAction; +["Tank_F", 0, ["ACE_MainActions", "CheckFuel"], _action, true] call ace_interact_menu_fnc_addActionToClass; + + +_map_copy_condition = { + ('ItemMap' in (assignedItems _player)) && ('ItemMap' in (assignedItems _target)) && ([_player, _target, []] call ace_common_fnc_canInteractWith) +}; + +_map_copy_action = [ + "MilSimCopyMap", + "Copy Map", +// "\a3\ui_f\data\IGUI\Cfg\holdactions\holdAction_connect_ca.paa", + "\a3\ui_f\data\igui\cfg\actions\talk_ca.paa", + {[_target,_player] call milsim_fnc_copyMapFromPlayer}, + _map_copy_condition + ] call ace_interact_menu_fnc_createAction; + +["Man", 0, ["ACE_MainActions"], _map_copy_action, true] call ace_interact_menu_fnc_addActionToClass; + + +_patchTire = +[ + "patchTire", + "Patch Tire", + "\a3\ui_f\data\IGUI\Cfg\Actions\repair_ca.paa", + { + [_player, "AinvPknlMstpSnonWnonDr_medic5", 0] call ace_common_fnc_doAnimation; + + [ + 30, + [_player, _target], + { + params ["_args"]; + _args params ["_player", "_target"]; + hint "Tire Patched"; + _target setDamage 0.2; + _target setVariable["milsim_ace_repair_wheel_canPatch", false]; + }, + { + params ["_args"]; + _args params ["_player", "_target"]; + hint "Stopped repair"; + [_player, "", 0] call ace_common_fnc_doAnimation; + }, + "Patching" + ] call ace_common_fnc_progressBar + }, + { ( alive _target ) && ( [_player, "ToolKit"] call ace_common_fnc_hasItem ) && ( getDammage _target > 0.2 ) && ( _target getVariable["milsim_ace_repair_wheel_canPatch", true] ) } +] call ace_interact_menu_fnc_createAction; + + +["ACE_Wheel", 0, ["ACE_MainActions"], _patchTire, true] call ace_interact_menu_fnc_addActionToClass; + + +player addEventHandler["Respawn", +{ + params ["_unit", "_corpse"]; + _killer = _corpse getVariable ["ace_medical_causeOfDeath", "#scripted"]; + if (_killer == "respawn_button") then { + format["[MILSIM] (initPlayerLocal) %1 was unconscious then clicked the respawn button", name _unit] remoteExec["diag_log", 0]; + // format["%1 was unconscious then clicked the respawn button", name _unit] remoteExec["systemChat", 0]; + }; +}]; + + +[{ + params ["_unit", "_object", "_cost"]; + private _return = (count nearestObjects [_unit, ["B_APC_Tracked_01_CRV_F", "rhsusf_M1239_M2_Deploy_socom_d", "rhsusf_stryker_m1132_m2_wd", "rhsusf_m113_usarmy_supply", "rhsusf_M1078A1P2_B_WD_CP_fmtv_usarmy", "B_Slingload_01_Cargo_F"], 120]) > 0; + _return +}] call ace_fortify_fnc_addDeployHandler; + +addMissionEventHandler ["HandleChatMessage", { + params ["_channel", "_owner", "_from", "_text", "_person", "_name", "_strID", "_forcedDisplay", "_isPlayerMessage", "_sentenceType", "_chatMessageType"]; + + if ( missionNamespace getVariable ["milsim_sideChat", false] ) exitWith{ false }; + + if (_channel != 1) exitWith { false }; + + if ( ( admin _owner ) != 0 ) exitWith { false }; + + if ( !isNull ( getAssignedCuratorLogic _person ) ) exitWith { false }; + + true; +}]; + + +waitUntil {!isNil "milsim_complete"}; +[] spawn milsim_fnc_initFBCB2; + + +// Initializes the player/client side Dynamic Groups framework and registers the player group +["InitializePlayer", [player, true]] call BIS_fnc_dynamicGroups; diff --git a/functions/init/fn_initServer.sqf b/functions/init/fn_initServer.sqf new file mode 100644 index 0000000..424cbfc --- /dev/null +++ b/functions/init/fn_initServer.sqf @@ -0,0 +1,140 @@ +if (isServer) then { + + _fixedAssets = [ + ["Ares", "USAF_A10", 0], + ["Odyssey", "RHSGREF_A29B_HIDF", 0], + ["Hercules", "USAF_C130J", 0] + + ]; + + _rotaryAssets = [ + ["Apollo", "RHS_MELB_MH6M", 0], + ["Artemis", "RHS_MELB_AH6M", 0], + ["Icarus", "RHS_MELB_H6M", 0], + ["Achilles", "RHS_CH_47F", 0], + ["Hades", "ej_MH60MDAP4", 0], + ["Griffin", "RHS_UH60M", 0], + ["Dustoff", "RHS_UH60M_MEV2", 0], + ["Pegasus", "B_T_VTOL_01_INFANTRY_F", 0], + ["Spartan", "B_T_VTOL_01_ARMED_F", 0], + ["Orion", "RHS_AH64D", 0], + ["Athena", "RHS_AH1Z", 0], + ["Homer", "RHS_UH1Y", 0], + ["Atlas", "rhsusf_CH53E_USMC", 0] + + ]; + + _homes = allMissionObjects "ModuleRespawnPosition_F"; + + { + _home = _x; + { + _a = _home nearEntities [ _x select 1, 750]; + _x set [2, (_x select 2) + count _a]; + + } forEach _fixedAssets; + } forEach _homes; + + missionNamespace setVariable ["milsim_var_fixedAssets", _fixedAssets]; + + { + _home = _x; + { + _a = _home nearEntities [ _x select 1, 750]; + _x set [2, (_x select 2) + count _a]; + + } forEach _rotaryAssets; + } forEach _homes; + + missionNamespace setVariable ["milsim_var_rotaryAssets", _rotaryAssets]; + + publicVariable "milsim_var_fixedAssets"; + publicVariable "milsim_var_rotaryAssets"; + + // Initializes the Dynamic Groups framework and groups + ["Initialize", [true]] call BIS_fnc_dynamicGroups; + + missionNamespace setVariable["milsim_raw_cps", 0]; + missionNamespace setVariable["milsim_cps", 0]; + + publicVariable "milsim_raw_cps"; + publicVariable "milsim_cps"; + + _cpsPFH = [ + { + + [] spawn { + // warning: while loop without suspension executes multiple times per frame + private _counter = 0; + private _endTime = diag_tickTime + 5; + private _frameNo = diag_frameNo; + while { diag_tickTime < _endTime } do + { + _counter = _counter + 1; + }; + // in an empty mission, the _counter may go well over 2000 times per frame! + diag_log text format ["[MILSIM] (initServer) Average Server Execution: %1 times per frame", _counter / (diag_frameNo - _frameNo)]; + missionNamespace setVariable["milsim_raw_cps", _counter / (diag_frameNo - _frameNo)]; + publicVariable "milsim_raw_cps"; + + // with suspension + private _counter = 0; + private _endTime = diag_tickTime + 5; + private _frameNo = diag_frameNo; + while { diag_tickTime < _endTime } do + { + _counter = _counter + 1; + uiSleep 0.001; // waits at least 1 frame + }; + // _counter says one per frame, as expected + diag_log text format ["[MILSIM] (initServer) Average Server Execution: %1 times per frame", _counter / (diag_frameNo - _frameNo)]; + missionNamespace setVariable["milsim_cps", _counter / (diag_frameNo - _frameNo)]; + publicVariable "milsim_cps"; + + ["milsim_serverEfficiency", [ [ ["float", "milsim_raw_cps", missionNamespace getVariable ["milsim_raw_cps", -1]], ["float", "milsim_cps", missionNamespace getVariable ["milsim_cps", -1]] ] ] ] call CBA_fnc_localEvent; + + }; + + }, + 300, + [], + { diag_log text "[MILSIM] (initServer) CPS PFH loaded" }, + { diag_log text "IF YOU SEE THIS CPS PFH FUCKED UP" }, + { true }, + { false }, + [] + ] call CBA_fnc_createPerFrameHandlerObject; + + + missionNamespace setVariable ["milsim_cps_handler", _cpsPFH]; + + _playerCpsPFH = [ + { + + diag_log text "[MILSIM] (initServer) ** Player Executions **"; + + { + diag_log ( format ["%1: ( %2, %3 )", name _x, _x getVariable ["milsim_player_raw_cps",-1], _x getVariable ["milsim_player_cps",-1] ] ) + } forEach allPlayers; + + diag_log text "[MILSIM] (initServer) ***********************"; + + }, + 300, + [], + { diag_log text "[MILSIM] (initServer) Player CPS PFH loaded" }, + { diag_log text "IF YOU SEE THIS CPS PFH FUCKED UP" }, + { true }, + { false }, + [] + ] call CBA_fnc_createPerFrameHandlerObject; + + missionNamespace setVariable ["milsim_player_cps_handler", _playerCpsPFH]; + + + missionNamespace setVariable ["milsim_complete", true]; + diag_log text "[MILSIM] (initServer) milsim_complete"; + + publicVariable "milsim_complete"; + +}; \ No newline at end of file diff --git a/functions/intel/fn_MDS_callsigns.sqf b/functions/intel/fn_MDS_callsigns.sqf new file mode 100644 index 0000000..32d1b27 --- /dev/null +++ b/functions/intel/fn_MDS_callsigns.sqf @@ -0,0 +1,22 @@ + +_text = " +=======------ Mission Data Set ------======= +

+RIPTIDE
+Command +

+ONI
+Alpha Platoon +

+GOLIATH
+Echo +

+TIGER
+RRC +

+BLACKFOOT/font>
+Weapons Squad +

+"; + +player createDiaryRecord ["Status", ["MDS - COMMAND - CALLSIGNS", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_MDS_environment.sqf b/functions/intel/fn_MDS_environment.sqf new file mode 100644 index 0000000..5c700fa --- /dev/null +++ b/functions/intel/fn_MDS_environment.sqf @@ -0,0 +1,16 @@ +_sunTimes = date call BIS_fnc_sunriseSunsetTime; + +_text = " +=======------ Mission Data Set ------======= +

+Local Sunrise +
+" + ([_sunTimes select 0, "HH:MM"] call BIS_fnc_timeToString) + " +

+Local Sunset +
+" + ([_sunTimes select 1, "HH:MM"] call BIS_fnc_timeToString) + " +

+"; + +player createDiaryRecord ["Status", ["MDS - INTEL - ENVIRONMENT", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_MDS_fixedAssets.sqf b/functions/intel/fn_MDS_fixedAssets.sqf new file mode 100644 index 0000000..3ec6bcf --- /dev/null +++ b/functions/intel/fn_MDS_fixedAssets.sqf @@ -0,0 +1,19 @@ + _assetList = missionNamespace getVariable "milsim_var_fixedAssets"; + +_text = "=======------ Mission Data Set ------======="; + + { + _callSign = _x select 0; + _asset = _x select 1; + _assigned = _x select 2; + _name = getText(configFile >> "CfgVehicles" >> _asset >> "displayName"); + + _data = "Callsign: " + _callsign + "
Asset: " + _name + "
Assigned: " + str _assigned + ""; + + _text = _text + "

" + _data; + +} foreach _assetList; + +_text = _text + "

Run Report on local node?"; + +player createDiaryRecord ["Status", ["MDS - ASSETS - FIXED", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_MDS_radioFrequencies.sqf b/functions/intel/fn_MDS_radioFrequencies.sqf new file mode 100644 index 0000000..7e58dcf --- /dev/null +++ b/functions/intel/fn_MDS_radioFrequencies.sqf @@ -0,0 +1,35 @@ + +_text = " +=======------ Mission Data Set ------======= +

+EXODUS +
+6 - 45 +
+RTO - 45 / 35 +

+RIPTIDE +
+Actual - 45 / 100 +
+Romeo - 45 / 35 +
+1 - 110 / 100 +
+2 - 120 / 100 +
+3 - 130 / 110 +
+Blackfoot - 150 / 100 +

+ECHO +
+Impaler - 45 / 35 +
+JTAC - 35 / 82 +
+IDF - 82 / 100 +

+"; + +player createDiaryRecord ["Status", ["MDS - INTEL - RADIO FREQS", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_MDS_rotaryAssets.sqf b/functions/intel/fn_MDS_rotaryAssets.sqf new file mode 100644 index 0000000..9ccf6e5 --- /dev/null +++ b/functions/intel/fn_MDS_rotaryAssets.sqf @@ -0,0 +1,19 @@ + _assetList = missionNamespace getVariable "milsim_var_rotaryAssets"; + +_text = "=======------ Mission Data Set ------======="; + + { + _callSign = _x select 0; + _asset = _x select 1; + _assigned = _x select 2; + _name = getText(configFile >> "CfgVehicles" >> _asset >> "displayName"); + + _data = "Callsign: " + _callsign + "
Asset: " + _name + "
Assigned: " + str _assigned + ""; + + _text = _text + "

" + _data; + +} foreach _assetList; + +_text = _text + "

Run Report on local node?"; + +player createDiaryRecord ["Status", ["MDS - ASSETS - ROTARY", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_MDS_smokeColors.sqf b/functions/intel/fn_MDS_smokeColors.sqf new file mode 100644 index 0000000..14a6212 --- /dev/null +++ b/functions/intel/fn_MDS_smokeColors.sqf @@ -0,0 +1,30 @@ + +_text = " +=======------ Mission Data Set ------======= +

+Smoke is a Guideline Not a Rule +

+WHITE
+Concealment +

+GREEN
+Friendly Forces +

+BLUE
+LZ Markers +

+RED
+Enemy Location +

+ORANGE
+Resupply Marker +

+YELLOW
+Medical Emergency +

+PURPLE
+Broken Arrow - 100m radius +

+"; + +player createDiaryRecord ["Status", ["MDS - INTEL - SMOKES", _text]]; \ No newline at end of file diff --git a/functions/intel/fn_initFBCB2.sqf b/functions/intel/fn_initFBCB2.sqf new file mode 100644 index 0000000..968f372 --- /dev/null +++ b/functions/intel/fn_initFBCB2.sqf @@ -0,0 +1,8 @@ +waitUntil {player == player && !isNil "milsim_complete"}; + +[] spawn milsim_fnc_MDS_callsigns; +[] spawn milsim_fnc_MDS_fixedAssets; +[] spawn milsim_fnc_MDS_rotaryAssets; +[] spawn milsim_fnc_MDS_radioFrequencies; +[] spawn milsim_fnc_MDS_smokeColors; +[] spawn milsim_fnc_MDS_environment; diff --git a/functions/intel/fn_messageAssetStatus.sqf b/functions/intel/fn_messageAssetStatus.sqf new file mode 100644 index 0000000..abfc739 --- /dev/null +++ b/functions/intel/fn_messageAssetStatus.sqf @@ -0,0 +1,31 @@ +_assetList = param [0, [objNull], [[objNull]]]; + +_text = parseText "MESSAGE"; +_text = composeText [_text, lineBreak ]; + +_text = composeText [_text, parseText "AssetAvailable", lineBreak ]; + +{ + _callSign = _x select 0; + _asset = _x select 1; + _assigned = _x select 2; + _available = 0; //count (getMarkerPos "respawn_west" nearEntities [ _asset, 2000] ); + + _homes = allMissionObjects "ModuleRespawnPosition_F"; + + { + _home = _x; + _available = _available + count( _home nearEntities [ _asset, 750] ); + } forEach _homes; + + + _image = getText(configFile >> "CfgVehicles" >> _asset >> "picture"); + + _name = getText(configFile >> "CfgVehicles" >> _asset >> "displayName") select [0, 24]; + _data = " " + _name + "" + str _available + " [ " + str _assigned +" ]"; + _text = composeText[ _text, parseText _data, lineBreak ]; + + +} foreach _assetList; + +hint _text; diff --git a/functions/map/fn_copyMapFromPlayer.sqf b/functions/map/fn_copyMapFromPlayer.sqf new file mode 100644 index 0000000..16d988e --- /dev/null +++ b/functions/map/fn_copyMapFromPlayer.sqf @@ -0,0 +1,5 @@ +params ["_sourcePlayer","_destinationPlayer"]; + +hint format["Copying map markers from %1", name _sourcePlayer]; + +[_destinationPlayer] remoteExecCall ["milsim_fnc_getPlayerMapMarkers",_sourcePlayer]; diff --git a/functions/map/fn_getPlayerMapMarkers.sqf b/functions/map/fn_getPlayerMapMarkers.sqf new file mode 100644 index 0000000..299985c --- /dev/null +++ b/functions/map/fn_getPlayerMapMarkers.sqf @@ -0,0 +1,16 @@ +params ["_destinationPlayer"]; + +_markerData = []; + +hint format["Your map is being copied by %1", name _destinationPlayer]; + +{ + _marker = toArray _x; + _marker resize 15; + if ( toString _marker == "_USER_DEFINED #" ) then { + _marker = _x call milsim_fnc_mapMarkerToString; + _markerData pushBack _marker; + }; +} forEach allMapMarkers; + +[_markerData] remoteExecCall ["milsim_fnc_loadMapMarkers",_destinationPlayer]; diff --git a/functions/map/fn_loadMapMarkers.sqf b/functions/map/fn_loadMapMarkers.sqf new file mode 100644 index 0000000..d01989b --- /dev/null +++ b/functions/map/fn_loadMapMarkers.sqf @@ -0,0 +1,10 @@ +params ["_markerList"]; + +if ('ItemMap' in (assignedItems player)) then { + { + _x call milsim_fnc_stringToMapMarker; + } foreach _markerList; + hint format["Map copied!"]; +} else { + hint format["You need a map to copy onto!"]; +}; diff --git a/functions/map/fn_mapMarkerToString.sqf b/functions/map/fn_mapMarkerToString.sqf new file mode 100644 index 0000000..9b64613 --- /dev/null +++ b/functions/map/fn_mapMarkerToString.sqf @@ -0,0 +1,52 @@ +/* + Author: + Killzone_Kid, modified by LAxemann + + Description: + Serializes marker to string for storage + + Parameter(s): + 0: STRING - existing marker name + 1: STRING (Optional) - a single data delimiter character. Default "|" + + Returns: + STRING - serialized marker to be used with BIS_fnc_stringToMarker or BIS_fnc_stringToMarkerLocal + or + "" on error + + Example: + ["marker_0"] call RR_mapStuff_fnc_markerToString; + ["marker_1", ":"] call RR_mapStuff_fnc_markerToString; +*/ + +params [["_markerName", "", [""]], ["_delimiter", "|", [""]]]; + +private _markerShape = markerShape _markerName; +private _polyLineArray = []; +private _markerType = "none"; +if (_markerShape isEqualTo "POLYLINE") then { + _polyLineArray = markerPolyline _markerName; +} else { + _markerType = markerType _markerName; +}; + + + +toFixed 4; +private _markerPosition = str markerPos [_markerName, true]; +toFixed -1; + +[ + "", + _markerName, + _markerPosition, + _markerType, + _markerShape, + markerSize _markerName, + markerDir _markerName, + markerBrush _markerName, + markerColor _markerName, + markerAlpha _markerName, + str _polyLineArray, + markerText _markerName +] joinString _delimiter; diff --git a/functions/map/fn_stringToMapMarker.sqf b/functions/map/fn_stringToMapMarker.sqf new file mode 100644 index 0000000..49aea6d --- /dev/null +++ b/functions/map/fn_stringToMapMarker.sqf @@ -0,0 +1,70 @@ +/* + Author: + Killzone_Kid, modified by LAxemann + + Description: + Creates marker from serialized data + + Parameter(s): + 0: STRING - marker data from BIS_fnc_markerToString + + Returns: + STRING - created marker + or + "" on error or if marker exists + + Example: + ["|marker_0|[4359.1,4093.51,0]|mil_objective|ICON|[1,1]|0|Solid|Default|1|An objective"] call RR_mapStuff_fnc_stringToMarker; +*/ + +params [["_markerData","",[""]]]; + +if (_markerData isEqualTo "") exitWith +{ + ["Marker data is empty"] call BIS_fnc_error; + "" +}; + +_markerData splitString (_markerData select [0,1]) params +[ + "_markerName", + "_markerPos", + "_markerType", + "_markerShape", + "_markerSize", + "_markerDir", + "_markerBrush", + "_markerColor", + "_markerAlpha", + "_polyLineArray", + ["_markerText",""] +]; + +if ((count _polyLineArray) > 0) then { +_polyLineArray = parseSimpleArray _polyLineArray; +}; + +_markerNameData = _markerName splitString "#" select 1; +_markerNameData splitString "/" params ["_markerCreator", "_markerID", "_markerChannel"]; + +_markerName = "_USER_DEFINED #" + _markerCreator + "/" + _markerCreator + _markerID + "/" + _markerChannel; + + +private _marker = createMarkerLocal [_markerName, parseSimpleArray _markerPos]; + +_marker setMarkerColorLocal _markerColor; +_marker setMarkerShapeLocal _markerShape; +_marker setMarkerAlphaLocal parseNumber _markerAlpha; + + +if ((count _polyLineArray) > 0) then { + _marker setMarkerPolylineLocal _polyLineArray; +} else { + _marker setMarkerTypeLocal _markerType; + _marker setMarkerSizeLocal parseSimpleArray _markerSize; + _marker setMarkerBrushLocal _markerBrush; + _marker setMarkerTextLocal _markerText; + _marker setMarkerDirLocal parseNumber _markerDir; +}; + +_marker \ No newline at end of file diff --git a/functions/resupply/fn_createAmmoBox.sqf b/functions/resupply/fn_createAmmoBox.sqf new file mode 100644 index 0000000..29903d3 --- /dev/null +++ b/functions/resupply/fn_createAmmoBox.sqf @@ -0,0 +1,111 @@ +/* + * Author: Hizumi + * + * Create Ammo resupply box for the 17th Batallion + * + * Arguments: + * 0: Vehicle - + * 1: Position - + * + * Return Value: + * Function executed + * + * Example: + * [box] call milsim_fnc_createAmmoBox; // create ammo box via init line of editor object + * [objNull, pos] call milsim_fnc_createAmmoBox // create ammo box via zeus module + * + * Public: Yes + */ + + +params [ + ["_box", objNull, [objNull]], + ["_pos", [0,0,0], [[]], 3] +]; + +if (isNull _box) then { + _box = "Box_Syndicate_Ammo_F" createVehicle _pos; +}; + +clearBackpackCargoGlobal _box; +clearItemCargoGlobal _box; +clearMagazineCargoGlobal _box; +clearWeaponCargoGlobal _box; + +_packs = []; + +_items = []; + +_magazines = [ + ["1Rnd_SmokePurple_Grenade_shell",12], + ["1Rnd_SmokeBlue_Grenade_shell",24], + ["1Rnd_SmokeOrange_Grenade_shell",12], + ["rhs_mag_M441_HE",25], + ["rhs_mag_M433_HEDP",15], + ["ACE_40mm_Flare_ir",12], + ["rhsusf_200Rnd_556x45_mixed_soft_pouch_coyote",25], + ["rhsusf_20Rnd_762x51_m993_Mag",25], + ["SmokeShell",12], + ["rhs_mag_m67",12], + ["1Rnd_Smoke_Grenade_shell",24], + ["1Rnd_SmokeRed_Grenade_shell",24], + ["1Rnd_SmokeGreen_Grenade_shell",24], + ["1Rnd_SmokeYellow_Grenade_shell",12], + ["Tier1_30Rnd_556x45_M856A1_EMag",25], + ["Tier1_30Rnd_556x45_Mk318Mod0_EMag",75], + ["ACE_30Rnd_65_Creedmor_mag",25], + ["SMA_30Rnd_762x35_BLK_EPR",25], + ["Tier1_30Rnd_762x35_300BLK_SMK_PMAG",25], + ["SMA_30Rnd_68x43_SPC_FMJ",25], + ["SMA_30Rnd_68x43_SPC_FMJ_Tracer",25], + ["SMA_20Rnd_762x51mm_M80A1_EPR",25], + ["SMA_20Rnd_762x51mm_M80A1_EPR_Tracer",25], + ["SMA_20Rnd_762x51mm_Mk316_Mod_0_Special_Long_Range",25], + ["SMA_20Rnd_762x51mm_Mk316_Mod_0_Special_Long_Range_Tracer",25], + ["Tier1_250Rnd_762x51_Belt_M993_AP",15], + ["ACE_20Rnd_762x51_Mag_Tracer",25], + ["ACE_20Rnd_762x51_M993_AP_Mag",25], + ["rhsusf_20Rnd_762x51_SR25_m993_Mag",25], + ["Tier1_20Rnd_762x51_M993_SR25_Mag",25], + ["Tier1_20Rnd_65x48_Creedmoor_SR25_Mag",25], + ["rhssaf_30rnd_556x45_EPR_G36", 25], + ["DemoCharge_Remote_Mag",16] +]; + +_weapons = [ + ["rhs_weap_M136",4], + ["rhs_weap_M136_hp",4], + ["rhs_weap_m72a7",2] +]; + +{ + _x params ["_class", "_qty"]; + + _box addBackpackCargoGlobal [_class, _qty] + +} foreach _packs; + +{ + _x params ["_class", "_qty"]; + + _box addItemCargoGlobal [_class, _qty] + +} foreach _items; + +{ + _x params ["_class", "_qty"]; + + _box addMagazineCargoGlobal [_class, _qty] + +} foreach _magazines; + +{ + _x params ["_class", "_qty"]; + + _box addWeaponCargoGlobal [_class, _qty] + +} foreach _weapons; + +[_box,1] call ace_cargo_fnc_setSize; + +true; diff --git a/functions/resupply/fn_createMedicalBox.sqf b/functions/resupply/fn_createMedicalBox.sqf new file mode 100644 index 0000000..b149db9 --- /dev/null +++ b/functions/resupply/fn_createMedicalBox.sqf @@ -0,0 +1,86 @@ +/* + * Author: Hizumi + * + * Create Ammo resupply box for the 17th Battalion + * + * Arguments: + * 0: Vehicle - + * 1: Position - + * + * Return Value: + * Function executed + * + * Example: + * [box] call milsim_fnc_createMedicalBox; // create ammo box via init line of editor object + * [objNull, pos] call milsim_fnc_createMedicalBox // create ammo box via zeus module + * + * Public: Yes + */ + + +params [ + ["_box", objNull, [objNull]], + ["_pos", [0,0,0], [[]], 3] +]; + +if (isNull _box) then { + _box = "ACE_medicalSupplyCrate_advanced" createVehicle _pos; +}; + +clearBackpackCargoGlobal _box; +clearItemCargoGlobal _box; +clearMagazineCargoGlobal _box; +clearWeaponCargoGlobal _box; + +_packs = []; + +_items = [ + ["ACE_packingBandage",100], + ["ACE_elasticBandage",100], + ["ACE_tourniquet",48], + ["ACE_splint",48], + ["ACE_morphine",50], + ["ACE_epinephrine",50], + ["ACE_bloodIV",75], + ["ACE_bloodIV_500",50], + ["ACE_bloodIV_250",25], + ["ACE_quikclot",75], + ["ACE_personalAidKit", 5], + ["ACE_surgicalKit", 5] +]; + +_magazines = []; + +_weapons = []; + +{ + _x params ["_class", "_qty"]; + + _box addBackpackCargoGlobal [_class, _qty] + +} foreach _packs; + +{ + _x params ["_class", "_qty"]; + + _box addItemCargoGlobal [_class, _qty] + +} foreach _items; + +{ + _x params ["_class", "_qty"]; + + _box addMagazineCargoGlobal [_class, _qty] + +} foreach _magazines; + +{ + _x params ["_class", "_qty"]; + + _box addWeaponCargoGlobal [_class, _qty] + +} foreach _weapons; + +[_box,1] call ace_cargo_fnc_setSize; + +true; diff --git a/functions/resupply/fn_createWeaponsBox.sqf b/functions/resupply/fn_createWeaponsBox.sqf new file mode 100644 index 0000000..dd25c58 --- /dev/null +++ b/functions/resupply/fn_createWeaponsBox.sqf @@ -0,0 +1,82 @@ +/* + * Author: Hizumi + * + * Create Ammo resupply box for the 17th Battalion + * + * Arguments: + * 0: Vehicle - + * 1: Position - + * + * Return Value: + * Function executed + * + * Example: + * [box] call milsim_fnc_createWeaponsBox; // create ammo box via init line of editor object + * [objNull, pos] call milsim_fnc_createWeaponsBox // create ammo box via zeus module + * + * Public: Yes + */ + + +params [ + ["_box", objNull, [objNull]], + ["_pos", [0,0,0], [[]], 3] +]; + +if (isNull _box) then { + _box = "Box_NATO_Wps_F" createVehicle _pos; +}; + +clearBackpackCargoGlobal _box; +clearItemCargoGlobal _box; +clearMagazineCargoGlobal _box; +clearWeaponCargoGlobal _box; + +_packs = []; + +_items = []; + +_magazines = [ + ["MRAWS_HEAT_F",35], + ["MRAWS_HE_F",15], + ["Tier1_250Rnd_762x51_Belt_M993_AP",50], + ["Tier1_30Rnd_556x45_M856A1_EMag",25], + ["Tier1_30Rnd_556x45_Mk318Mod0_EMag",50], + ["Titan_AA",10], + ["Titan_AT",10], + ["200Rnd_65x39_cased_Box_Tracer_Red",50] +]; + +_weapons = []; + +{ + _x params ["_class", "_qty"]; + + _box addBackpackCargoGlobal [_class, _qty] + +} foreach _packs; + +{ + _x params ["_class", "_qty"]; + + _box addItemCargoGlobal [_class, _qty] + +} foreach _items; + +{ + _x params ["_class", "_qty"]; + + _box addMagazineCargoGlobal [_class, _qty] + +} foreach _magazines; + +{ + _x params ["_class", "_qty"]; + + _box addWeaponCargoGlobal [_class, _qty] + +} foreach _weapons; + +[_box,1] call ace_cargo_fnc_setSize; + +true; diff --git a/images/.gitkeep b/images/.gitkeep new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/images/.gitkeep @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/mission.jpg b/mission.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1aba0378ed499bfc0b87f5bb050fa219d364d515 GIT binary patch literal 118877 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