admiral\admiral.h
dk description.ext e_q hull3\AK74MZ_RU.h e_ hull3\briefing\blufor.sqf n _ hull3\briefing\civilian.sqf n _ hull3\briefing\indfor.sqf n _ hull3\briefing\opfor.sqf +'n_ hull3\CUP_RU_RATNIK_DE.h je_Z hull3\hull3.h P
d initPlayerLocal.sqf le_h initServer.sqf
d mission.sqm
d class Admiral {
isEnabled = 1;
class Camp {
defaultUnitTemplate = "SYND_BANDIT";
defaultZoneTemplate = "Camp";
};
class Patrol {
defaultUnitTemplate = "SYND_BANDIT";
defaultZoneTemplate = "Patrol";
};
class Cqc {
defaultUnitTemplate = "SYND_BANDIT";
defaultZoneTemplate = "Cqc";
};
};#include "admiral\admiral.h"
#include "hull3\hull3.h"
enableDebugConsole = 1;
disableChannels[]={{2,true,true},{4,true,true},{6,true,true}};
onLoadName = "Good Faith";
onLoadMission = "Made with Hull3";
author = "Cyruz";
loadScreen = "x\ark\addons\hull3\resources\hull3_logo.paa";
class Header
{
gameType = Coop;
minPlayers = 1;
maxPlayers = 73;
};
respawn = 0;
respawndelay = 3;
respawnTemplates[] = {"Hull3_RespawnHandler"};
class Params {
class Hull3_Date {
title = "Moon Phase";
values[] = {0,1};
texts[] = {"New Moon", "Full Moon"};
default = 1;
code = "hull3_mission_date = %1";
};
class Hull3_TimeOfDay {
title = "Time of Day";
values[] = {0,1,2,3,4,5,6,7};
texts[] = {"Dawn", "Early Morning", "Morning", "Noon", "Afternoon", "Evening", "Dusk", "Night"};
default = 5;
code = "hull3_mission_timeOfDay = %1";
};
class Hull3_Fog {
title = "Fog";
values[] = {0,1,2};
texts[] = {"None", "Light", "Heavy"};
default = 0;
code = "hull3_mission_fog = %1";
};
class Hull3_Weather {
title = "Weather";
values[] = {0,1,2,3,4,5,6,7,8,9};
texts[] = {"Random", "Clear (Calm)", "Clear (Light Winds)", "Clear (Strong Winds)", "Overcast (Calm)", "Overcast (Light Winds)", "Overcast (Strong Winds)", "Rain (Light Winds)", "Rain (Strong Winds)", "Storm"};
default = 1;
code = "hull3_mission_weather = %1";
};
class Hull3_SafetyTimer {
title = "Safety Timer";
values[] = {9999,0};
texts[] = {"On", "Off"};
default = 9999;
code = "hull3_mission_safetyTimerEnd = %1";
};
};
class CfgDebriefingSections {
class acex_killTracker {
title = "Acex Killed Events";
variable = "acex_killTracker_outputText";
};
};
allowProfileGlasses = 0;
class AK74MZ_RU {
class Rifleman {
primaryWeapon = "CUP_arifle_AK74M_railed_afg";
primaryWeaponItems[] = {"CUP_optic_1P87_RIS", "CUP_acc_Flashlight"};
secondaryWeapon = "";
secondaryWeaponItems[] = {};
handgunWeapon = "";
handgunItems[] = {};
uniformWeapons[] = {};
vestWeapons[] = {};
backpackWeapons[] = {};
uniformMagazines[] = {
{"HandGrenade", 1},
{"ACE_Chemlight_HiRed", 2},
{"SmokeShell", 1}
};
vestMagazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 6},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 2}
};
backpackMagazines[] = {
{"HandGrenade", 1},
{"SmokeShell", 1},
{"CUP_30Rnd_545x39_AK74M_M", 4},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 2}
};
basicAssignItems[] = {"ItemMap", "ItemCompass", "ItemWatch"};
assignItems[] = {};
binocular = "";
uniformItems[] = {
{"ACE_Flashlight_KSF1", 1},
{"ACE_wirecutter", 1}
};
vestItems[] = {};
backpackItems[] = {};
uniformRadios[] = {"ACRE_PRC343"};
vestRadios[] = {};
backpackRadios[] = {};
uniformMedicalItems[] = {
{"ACE_fieldDressing", 10},
{"ACE_tourniquet", 2}
};
vestMedicalItems[] = {};
backpackMedicalItems[] = {};
code = "";
headGear = "";
uniform = "";
goggles = "";
vest = "";
backpack = "";
};
class Leader : Rifleman {
primaryWeapon = "CUP_arifle_AK74M_GL_railed";
primaryWeaponItems[] = {"CUP_optic_1P87_RIS", "CUP_acc_Flashlight"};
handgunWeapon = "hgun_Rook40_F";
vestMagazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 6},
{"CUP_1Rnd_HE_GP25_M", 4},
{"CUP_1Rnd_SMOKE_GP25_M", 2},
{"CUP_1Rnd_SmokeRed_GP25_M", 2},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 1},
{"16Rnd_9x21_Mag", 3}
};
backpackMagazines[] = {
{"HandGrenade", 1},
{"SmokeShell", 1},
{"CUP_30Rnd_545x39_AK74M_M", 4},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 2},
{"CUP_1Rnd_SMOKE_GP25_M", 2},
{"CUP_FlareWhite_GP25_M", 2},
{"CUP_1Rnd_SmokeRed_GP25_M", 2}
};
assignItems[] = {"ItemGPS"};
binocular = "Binocular";
};
class Officer : Leader {
assignItems[] = {"ItemGPS"};
binocular = "ACE_VectorDay";
uniformRadios[] = {"ACRE_PRC343", "ACRE_PRC152"};
};
class Crew : Rifleman {
primaryWeapon = "CUP_arifle_AKS74U_railed";
primaryWeaponItems[] = {};
uniformMagazines[] = {
{"ACE_Chemlight_HiRed", 2},
{"SmokeShell", 1}
};
uniformRadios[] = {"ACRE_PRC343", "ACRE_PRC152"};
vestMagazines[] = {{"CUP_30Rnd_545x39_AK74M_M", 4}};
backpackMagazines[] = {};
assignItems[] = {"ItemGPS", "ACE_NVG_Wide"};
};
class CO : Officer {
};
class XO : CO {
backpackMagazines[] = {
{"CUP_1Rnd_SMOKE_GP25_M", 8},
{"CUP_FlareWhite_GP25_M", 8},
{"CUP_1Rnd_SmokeRed_GP25_M", 8}
};
backpackRadios[] = {"ACRE_PRC117F"};
};
class SL : Officer {
};
class Medic : Rifleman {
primaryWeapon = "CUP_arifle_AKS74U_railed";
primaryWeaponItems[] = {"CUP_optic_TrijiconRx01_black", "CUP_acc_Flashlight"};
vestMagazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 6},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 2},
{"SmokeShell", 4}
};
backpackMagazines[] = {
{"SmokeShellBlue", 4},
{"CUP_30Rnd_545x39_AK74M_M", 2}
};
assignItems[] = {"ItemGPS"};
binocular = "Binocular";
uniformRadios[] = {"ACRE_PRC343", "ACRE_PRC152"};
backpackMedicalItems[] = {
{"ACE_fieldDressing", 30},
{"ACE_morphine", 30},
{"ACE_epinephrine", 30},
{"ACE_bloodIV_500", 24},
{"ACE_splint", 4}
};
};
class FTL : Leader {
};
class AR : Rifleman {
primaryWeapon = "CUP_lmg_Pecheneg_B50_vfg";
primaryWeaponItems[] = {"CUP_optic_PechenegScope", "CUP_muzzle_mfsup_Flashhider_PK_Black"};
vestMagazines[] = {{"CUP_100Rnd_TE4_LRT4_762x54_PK_Tracer_Green_M", 2}};
backpackMagazines[] = {
{"HandGrenade", 1},
{"SmokeShell", 1},
{"CUP_100Rnd_TE4_LRT4_762x54_PK_Tracer_Green_M", 6}
};
};
class AAR : Rifleman {
primaryWeapon = "CUP_arifle_AK74M_railed";
backpackMagazines[] = {
{"HandGrenade", 1},
{"SmokeShell", 1},
{"CUP_100Rnd_TE4_LRT4_762x54_PK_Tracer_Green_M", 4}
};
binocular = "Binocular";
};
class RAT : Rifleman {
secondaryWeapon = "CUP_launch_RPG7V";
secondaryWeaponItems[] = {"CUP_PG7VL_M"};
vestMagazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 6},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 2}
};
backpackMagazines[] = {
{"HandGrenade", 1},
{"SmokeShell", 1},
{"CUP_30Rnd_545x39_AK74M_M", 4},
{"CUP_PG7VL_M", 2}
};
};
class VC : Crew {
binocular = "ACE_VectorDay";
};
class VG : Crew {
};
class VD : Crew {
};
class P : Crew {
};
class PCM : P {
};
class Vehicle {
weapons[] = {
{"CUP_arifle_AK74M_railed", 2},
{"CUP_launch_RPG26", 2}
};
magazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 20},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 10},
{"CUP_100Rnd_TE4_LRT4_762x54_PK_Tracer_Green_M", 10},
{"CUP_1Rnd_SMOKE_GP25_M", 5},
{"CUP_PG7VL_M", 2},
{"ACE_HandFlare_White", 5},
{"HandGrenade", 5},
{"CUP_FlareWhite_GP25_M", 5},
{"SmokeShell", 5}
};
items[] = {{"ItemGPS", 1}};
medicalItems[] = {
{"ACE_fieldDressing", 50},
{"ACE_splint", 12}
};
};
class Car : Vehicle {};
class Truck : Vehicle {};
class Armored : Truck {
weapons[] = {{"CUP_launch_RPG26", 4}};
magazines[] = {
{"CUP_30Rnd_545x39_AK74M_M", 60},
{"CUP_30Rnd_TE1_Green_Tracer_545x39_AK74M_M", 30},
{"CUP_100Rnd_TE4_LRT4_762x54_PK_Tracer_Green_M", 40},
{"CUP_1Rnd_SMOKE_GP25_M", 10},
{"CUP_PG7VL_M", 12},
{"SatchelCharge_Remote_Mag", 5},
{"ACE_HandFlare_White", 10},
{"CUP_FlareWhite_GP25_M", 10},
{"HandGrenade", 10},
{"SmokeShell", 10}
};
items[] = {
{"ACE_M26_Clacker", 1},
{"ItemGPS", 1}
};
medicalItems[] = {
{"ACE_fieldDressing", 50},
{"ACE_splint", 12}
};
};
};
// BLUFOR Notes
// Situation
player createDiaryRecord ["Diary", ["Situation","
*** Insert general information about the situation here.***
ENEMY FORCES
*** Insert information about enemy forces here.***
FRIENDLY FORCES
*** Insert information about friendly forces here.***
"]];
// Mission
player createDiaryRecord ["Diary", ["Mission","
*** Insert the mission here. ***
"]];
// Execution
player createDiaryRecord ["Diary", ["Execution","
COMMANDER'S INTENT
*** Insert very short summary of plan here. ***
MOVEMENT PLAN
*** Insert movement instructions here. ***
FIRE SUPPORT PLAN
*** Insert fire support instructions here. ***
SPECIAL TASKS
*** Insert instructions for specific units here. ***
"]];
// Administration
player createDiaryRecord ["Diary", ["Administration","
*** Insert information on administration and logistics here. ***
"]];
// Credits
player createDiaryRecord ["Diary", ["Credits", "
Made by
"]];
// CIVFOR Notes
// Situation
player createDiaryRecord ["Diary", ["Situation","
*** Insert general information about the situation here.***
ENEMY FORCES
*** Insert information about enemy forces here.***
FRIENDLY FORCES
*** Insert information about friendly forces here.***
"]];
// Mission
player createDiaryRecord ["Diary", ["Mission","
*** Insert the mission here. ***
"]];
// Execution
player createDiaryRecord ["Diary", ["Execution","
COMMANDER'S INTENT
*** Insert very short summary of plan here. ***
MOVEMENT PLAN
*** Insert movement instructions here. ***
FIRE SUPPORT PLAN
*** Insert fire support instructions here. ***
SPECIAL TASKS
*** Insert instructions for specific units here. ***
"]];
// Administration
player createDiaryRecord ["Diary", ["Administration","
*** Insert information on administration and logistics here. ***
"]];
// Credits
player createDiaryRecord ["Diary", ["Credits", "
Made by
"]];
// INDFOR Notes
// Situation
player createDiaryRecord ["Diary", ["Situation","
*** Insert general information about the situation here.***
ENEMY FORCES
*** Insert information about enemy forces here.***
FRIENDLY FORCES
*** Insert information about friendly forces here.***
"]];
// Mission
player createDiaryRecord ["Diary", ["Mission","
*** Insert the mission here. ***
"]];
// Execution
player createDiaryRecord ["Diary", ["Execution","
COMMANDER'S INTENT
*** Insert very short summary of plan here. ***
MOVEMENT PLAN
*** Insert movement instructions here. ***
FIRE SUPPORT PLAN
*** Insert fire support instructions here. ***
SPECIAL TASKS
*** Insert instructions for specific units here. ***
"]];
// Administration
player createDiaryRecord ["Diary", ["Administration","
*** Insert information on administration and logistics here. ***
"]];
// Credits
player createDiaryRecord ["Diary", ["Credits", "
Made by
"]];
// OPFOR Notes
// Situation
player createDiaryRecord ["Diary", ["Situation","
We're pulling out of Kujari. On our route to the airfield we've been instructed to dump our humanitarian supplies for generic PR reasons. The area is heavily controlled by local factions who are hostile. IDAP have a presense in this area, however we have no direct comms with them.
ENEMY FORCES
Local militia forces / Improvised armoured vehicles / Old soviet-era armour
FRIENDLY FORCES
Glorious pink Russians
"]];
// Mission
player createDiaryRecord ["Diary", ["Mission","
• Pull out your forces to Marwey Airfield and await pickup.
• Along the way distribute your food supplies to the local towns (in any order). The local towns are populated with civilians but it's likely someone will report your movements to militia forces so expect the enemy to know your movements.
• IDAP have small outposts in each town, drop the crates off there.
"]];
// Execution
player createDiaryRecord ["Diary", ["Execution","
COMMANDER'S INTENT
Towns will likely only have civilians in initially as milita forces favour hiding in the desert, however this can't be guaranteed. Cover your vehicles in towns and expect counter attacks.
MOVEMENT PLAN
Transport via IFVs and one Vodnik.
FIRE SUPPORT PLAN
BTR80s. Big gun, weak wheels and armour. Keep this in mind.
SPECIAL TASKS
Try not to die.
"]];
// Administration
player createDiaryRecord ["Diary", ["Administration","
All cargo is controlled by ACE interaction. Boxes are preloaded in each IFV, you only need to drop off one per town so you've got lots of spares.
"]];
// Credits
player createDiaryRecord ["Diary", ["Credits", "
Made by Cyruz
"]];
class CUP_RU_RATNIK_DE {
class Rifleman {
headGear = "CUP_H_RUS_6B47_v2_GogglesClosed_Desert";
goggles = "CUP_RUS_Balaclava_tan";
uniform = "CUP_U_O_RUS_Ratnik_Desert";
vest = "CUP_Vest_RUS_6B45_Sh117_Desert_ARM";
backpack = "CUP_O_RUS_Patrol_bag_Desert";
};
class Leader : Rifleman {
vest = "CUP_Vest_RUS_6B45_Sh117_VOG_Desert_ARM";
backpack = "CUP_O_RUS_Patrol_bag_Desert_Shovel";
};
class Officer : Leader {
headGear = "CUP_H_RUS_Beret_VDV";
goggles = "";
};
class Crew : Rifleman {
headGear = "H_Tank_eaf_F";
uniform = "CUP_U_O_RUS_Ratnik_Desert";
vest = "CUP_V_O_TK_CrewBelt_ARM";
goggles = "";
};
class CO : Officer {
};
class XO : CO {
backpack = "ark_backpack_large";
};
class SL : Officer {
};
class Medic : Rifleman {
backpack = "ark_backpack_large";
};
class FTL : Leader {
headGear = "CUP_H_RUS_6B47_v2_GogglesClosed_Desert";
};
class AR : Rifleman {
headGear = "CUP_H_RUS_6B47_v2_GogglesDown_Desert";
vest = "CUP_Vest_RUS_6B45_Sh117_PKP_Desert_ARM";
backpack = "ark_backpack_large";
};
class AAR : Rifleman {
backpack = "CUP_O_RUS_Patrol_bag_Desert_Shovel";
};
class RAT : Rifleman {
headGear = "CUP_H_RUS_6B47_v2_GogglesUp_Desert";
backpack = "ark_backpack_large";
};
class VC : Crew {
};
class VG : Crew {
};
class VD : Crew {
};
};
class Hull3 {
isEnabled = 1;
class MissionParams {
weather[] = {
{-1}, // Random
{0.33, 0, 0, 0, 1, 0, 0}, // Clear (Calm)
{0.33, 0, 0, 0, 5, 0, 0.25}, // Clear (Light Winds)
{0.33, 0, 0, 0, 10, 0, 0.50}, // Clear (Stong Winds)
{0.48, 0, 0, 0, 1, 0, 0}, // Overcast (Calm)
{0.48, 0, 0, 0, 5, 0, 0.25}, // Overcast (Light Winds)
{0.48, 0, 0, 0, 10, 0, 0.50}, // Overcast (Strong Winds)
{1, 1, 0, 0.25, 5, 0, 0.25}, // Rain (Light Winds)
{1, 1, 0, 0.50, 10, 0, 0.50}, // Rain (Strong Winds)
{1, 1, 0, 1, 20, 0, 1} // Storm
};
};
class Briefing {
blufor = "hull3\briefing\blufor.sqf";
opfor = "hull3\briefing\opfor.sqf";
indfor = "hull3\briefing\indfor.sqf";
civilian = "hull3\briefing\civilian.sqf";
};
class Uniform {
#include "CUP_RU_RATNIK_DE.h"
};
class Gear {
#include "AK74MZ_RU.h"
};
class Faction {
class CUP_RU_RATNIK_DE {
gear = "AK74MZ_RU";
uniform = "CUP_RU_RATNIK_DE";
languages[] = {{"east", 100}};
};
};
};["ace_cargoUnloaded", {_item remoteExecCall ["ark_fnc_checkCargoPos", 2]}] call CBA_fnc_addEventHandler;//Vars for spawning and objectives
ark_var_town1 = false;
ark_var_town2 = false;
ark_var_town3 = false;
ark_var_town4 = false;
ark_var_town5 = false;
ark_fnc_cleanUpAI = {
params ["_trigger"];
private _side = [adm_camp_defaultUnitTemplate] call adm_common_fnc_getUnitTemplateSide;
{
if ((side _x == _side) && (!isPlayer _x) && (_x inArea _trigger)) then {
if (isNull objectParent _x) then {
deleteVehicle _x;
} else {
private _vehicle = objectParent _x;
{_vehicle deleteVehicleCrew _x} forEach crew _vehicle;
deleteVehicle _vehicle;
};
};
} forEach allUnits;
};
ark_fnc_checkCargoPos = {
params ["_item"];
if (_item inArea "mkrTown1" && { ark_var_town1 isEqualTo false } ) then {
["task1","SUCCEEDED"] call BIS_fnc_taskSetState;
"mkrTown1" setMarkerAlpha 0;
ark_var_town1 = true;
};
if (_item inArea "mkrTown2" && { ark_var_town2 isEqualTo false } ) then {
["task2","SUCCEEDED"] call BIS_fnc_taskSetState;
"mkrTown2" setMarkerAlpha 0;
ark_var_town2 = true;
ark_chase_ai_var_maxAIUnits = ark_chase_ai_var_maxAIUnits + 3;
};
if (_item inArea "mkrTown3" && { ark_var_town3 isEqualTo false } ) then {
["task3","SUCCEEDED"] call BIS_fnc_taskSetState;
"mkrTown3" setMarkerAlpha 0;
ark_var_town3 = true;
ark_chase_ai_var_maxAIUnits = ark_chase_ai_var_maxAIUnits + 3;
};
if (_item inArea "mkrTown4" && { ark_var_town4 isEqualTo false } ) then {
["task4","SUCCEEDED"] call BIS_fnc_taskSetState;
"mkrTown4" setMarkerAlpha 0;
ark_var_town4 = true;
ark_chase_ai_var_maxAIUnits = ark_chase_ai_var_maxAIUnits + 3;
};
if (_item inArea "mkrTown5" && { ark_var_town5 isEqualTo false } ) then {
["task5","SUCCEEDED"] call BIS_fnc_taskSetState;
"mkrTown5" setMarkerAlpha 0;
ark_var_town5 = true;
ark_chase_ai_var_maxAIUnits = ark_chase_ai_var_maxAIUnits + 3;
{[_x,true] call ark_fnc_enableSim} forEach [helo3,helo4];
};
};
ark_fnc_loadVics = {
params ["_veh"];
[_veh, 30] call ace_cargo_fnc_setSpace;
for "_i" from 0 to 3 do {
private _box = "C_IDAP_supplyCrate_F" createVehicle [0,0,0];
_box call ark_clear_cargo_fnc_doClearVehicle;
_box addItemCargoGlobal ["ACE_Banana", 20];
[_box, 2] call ace_cargo_fnc_setSize;
[_box, _veh, true] call ace_cargo_fnc_loadItem;
};
};
ark_fnc_enableSim = {
params ["_veh","_enabled"];
_veh enableSimulationGlobal _enabled;
{_x enableSimulationGlobal _enabled} forEach crew _veh;
if (_enabled && {_veh isEqualTo helo1 || { _veh isEqualTo helo2 }}) then {
["Marwey airfield is sending air cover for your extract",0,0,5] remoteExec ["BIS_fnc_dynamicText",0];
};
};
// RPG men get 1 shot before switching
["I_C_Soldier_Bandit_8_F_ARK", "init", {
params ["_unit"];
if (local _unit) then {
_unit removeWeapon (primaryWeapon _unit);
_unit addEventHandler ["Fired", {
params ["_unit", "_weapon"];
if (local _unit) then {
if (_weapon isEqualTo "CUP_launch_RPG7V") then {
_unit addWeapon "CUP_arifle_AK47";
_unit removeEventHandler ["Fired", _thisEventHandler];
};
};
}];
}
}] call CBA_fnc_addClassEventHandler;
["mission.safetytimer.ended", {
"task1" call BIS_fnc_taskSetCurrent;
}] call hull3_event_fnc_addEventHandler;
{_x call ark_fnc_loadVics} forEach [ifv1,ifv2,ifv3,ifv4];
{[_x,false] call ark_fnc_enableSim} forEach [helo1,helo2,helo3,helo4];
[true, ["task1"], ["Supply the local towns people", "Supply Bora"], getMarkerPos "mkrTown1", "CREATED", -1, true, "talk1"] call BIS_fnc_taskCreate;
[true, ["task2"], ["Supply the local towns people", "Supply Biri Noula"], getMarkerPos "mkrTown2", "CREATED", -1, true, "talk2"] call BIS_fnc_taskCreate;
[true, ["task3"], ["Supply the local towns people", "Supply Gonidi"], getMarkerPos "mkrTown3", "CREATED", -1, true, "talk3"] call BIS_fnc_taskCreate;
[true, ["task4"], ["Supply the local towns people", "Supply Mourimadi"], getMarkerPos "mkrTown4", "CREATED", -1, true, "talk4"] call BIS_fnc_taskCreate;
[true, ["task5"], ["Supply the local towns people", "Supply Wondori"], getMarkerPos "mkrTown5", "CREATED", -1, true, "talk5"] call BIS_fnc_taskCreate;
[true, ["task6"], ["Extract to the airfield", "Extract"], getMarkerPos "mkrAir", "CREATED", -1, true, "navigate"] call BIS_fnc_taskCreate; raP
version 6 EditorData L sourceName ark_co72_good_faith addons <