Major Hotfix 01042025@1925

This commit is contained in:
Jacob Schmidt 2025-01-04 19:45:49 -06:00
parent c02adb897b
commit 124cff654d
123 changed files with 1372 additions and 396 deletions

View File

@ -4,8 +4,7 @@ class CfgBanks {
className = "Land_Atm_01_F";
pos[] = {4818, 8075, 0};
dir = 180;
bankType = "object";
bankName = "FDIC";
type = "object";
};
};
};

View File

@ -4,7 +4,6 @@ class CfgCpofs {
className = "Land_MultiScreenComputer_01_olive_F";
pos[] = {4821, 8075, 0};
dir = 180;
cpofName = "Commander's CPOF";
};
};
};

View File

@ -1,21 +1,20 @@
class CfgGarages {
locations[] = {
{"garageAircraft", {4805,8075,0}, 0},
{"garageArmored", {4805,8075,0}, 0},
{"garageChopper", {4805,8075,0}, 0},
{"garageMarine", {4805,8075,0}, 0},
{"garageStatic", {4805,8075,0}, 0},
{"garageUAV", {4805,8075,0}, 0},
{"garageUGV", {4805,8075,0}, 0},
{"garageWheeled", {4805,8075,0}, 0}
{"car", {4805,8075,0}, 0},
{"armor", {4805,8075,0}, 0},
{"heli", {4805,8075,0}, 0},
{"plane", {4805,8075,0}, 0},
{"naval", {4805,8075,0}, 0},
{"static", {4805,8075,0}, 0},
{"uav", {4805,8075,0}, 0},
{"ugv", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
garageType = "object";
garageName = "Player Garage";
type = "object";
};
};
};

View File

@ -4,8 +4,7 @@ class CfgLockers {
className = "Box_NATO_Equip_F";
pos[] = {4812, 8075, 0};
dir = 0;
lockerType = "object";
lockerName = "Player Locker";
type = "object";
};
};
};

View File

@ -1,6 +1,5 @@
class CfgPaygrades {
payGrades[] = {
// Army
{"E1", 1000, "Enlisted"},
{"E2", 1250, "Enlisted"},
{"E3", 1500, "Enlisted"},

View File

@ -4,113 +4,101 @@ class CfgStores {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
storeType = "object";
storeCategories[] = {
{"Backpacks", "storeBackpacks"},
{"Goggles", "storeGoggles"},
{"Headgear", "storeHeadgear"},
{"Items", "storeItems"},
{"Magazines", "storeMagazines"},
{"Uniforms", "storeUniforms"},
{"Vests", "storeVests"},
{"Weapons", "storeWeapons"},
{"Aircraft", "storeAircraft"},
{"Armored", "storeArmored"},
{"Chopper", "storeChopper"},
{"Marine", "storeMarine"},
{"Static", "storeStatic"},
{"UAV", "storeUAV"},
{"UGV", "storeUGV"},
{"Wheeled", "storeWheeled"}
type = "object";
name = "General Military Surplus Store";
paymentMethods[] = {
{"Bank", "FORGE_Bank", "player"},
{"Cash", "FORGE_Cash", "player"},
{"Company", "FORGE_Company", "mission", {"76561198027566824"}}
};
storeRestrictedCategories[] = {};
storeModset[] = {
"STOCK",
"ACE3",
"RHS",
"SMA",
"TFAR"
categories[] = {
"Backpacks",
"Headgear",
"Items",
"Magazines",
"Medical",
"Uniforms",
"Vests",
"Weapons",
"Aircraft",
"Armored",
"Helicopter",
"Marine",
"Static",
"UAV",
"UGV",
"Wheeled"
};
storeName = "General Military Surplus Store";
storeBackpacks[] = {
{"B_AssaultPack_rgr", 250, "STOCK"},
{"B_AssaultPack_blk", 250, "STOCK"}
};
storeGoggles[] = {};
storeHeadgear[] = {
{"H_Cap_blk_ION", 100, "STOCK"}
};
storeItems[] = {
{"Binocular", 335, "STOCK"},
{"ItemCompass", 50, "STOCK"},
{"ItemMap", 20, "STOCK"},
{"ItemWatch", 50, "STOCK"},
{"ToolKit", 450, "STOCK"},
{"Chemlight_blue", 2, "STOCK"},
{"Chemlight_green", 2, "STOCK"},
{"Chemlight_red", 2, "STOCK"},
{"Chemlight_yellow", 2, "STOCK"},
{"ACE_MapTools", 525, "ACE3"},
{"ACE_CableTie", 2, "ACE3"},
{"ACE_EarPlugs", 1, "ACE3"},
{"ACE_wirecutter", 65, "ACE3"},
{"ACE_SpareBarrel", 300, "ACE3"}
};
storeMagazines[] = {
{"16Rnd_9x21_Mag", 10, "STOCK"},
{"30Rnd_65x39_caseless_mag", 10, "STOCK"},
{"100Rnd_65x39_caseless_mag", 10, "STOCK"}
};
storeUniforms[] = {
{"U_BG_Guerrilla_6_1", 500, "STOCK"}
};
storeVests[] = {
{"V_Chestrig_rgr", 500, "STOCK"},
{"V_PlateCarrier2_rgr", 2000, "STOCK"}
};
storeWeapons[] = {
{"hgun_P07_F", 1000, "STOCK"},
{"arifle_MXC_F", 1500, "STOCK"},
{"arifle_MX_SW_F", 1500, "STOCK"},
{"arifle_MXM_F", 10000, "STOCK"}
};
storeAircraft[] = {};
storeArmored[] = {
{"B_APC_Wheeled_01_cannon_F", 10000, "STOCK"},
{"B_MBT_01_TUSK_F", 10000, "STOCK"}
};
storeChopper[] = {
{"B_T_VTOL_01_infantry_F", 10000, "STOCK"},
{"B_T_VTOL_01_vehicle_F", 10000, "STOCK"},
{"B_T_VTOL_01_armed_F", 10000, "STOCK"},
{"B_Heli_Transport_03_F", 10000, "STOCK"},
{"B_Heli_Attack_01_F", 10000, "STOCK"},
{"B_Heli_Transport_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_armed_F", 10000, "STOCK"},
{"B_Heli_Light_01_stripped_F", 10000, "STOCK"}
};
storeMarine[] = {};
storeStatic[] = {};
storeUAV[] = {};
storeUGV[] = {};
storeWheeled[] = {
{"B_MRAP_01_F", 10000, "STOCK"},
{"B_MRAP_01_gmg_F", 10000, "STOCK"},
{"B_MRAP_01_hmg_F", 10000, "STOCK"},
{"B_Quadbike_01_F", 10000, "STOCK"},
{"B_Truck_01_transport_F", 10000, "STOCK"},
{"B_Truck_01_covered_F", 10000, "STOCK"},
{"B_Truck_01_mover_F", 10000, "STOCK"},
{"B_Truck_01_box_F", 10000, "STOCK"},
{"B_Truck_01_Repair_F", 10000, "STOCK"},
{"B_Truck_01_ammo_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"},
{"B_Truck_01_medical_F", 10000, "STOCK"},
{"B_LSV_01_armed_F", 10000, "STOCK"},
{"B_LSV_01_AT_F", 10000, "STOCK"},
{"B_LSV_01_unarmed_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"}
products[] = {
{"Binocular", 335, "Items", "item", "item"},
{"ItemCompass", 50, "Items", "item", "item"},
{"ItemGPS", 250, "Items", "item", "item"},
{"ItemMap", 20, "Items", "item", "item"},
{"ItemWatch", 50, "Items", "item", "item"},
{"Toolkit", 450, "Items", "item", "item"},
{"Chemlight_blue", 2, "Items", "magazine", "item"},
{"Chemlight_green", 2, "Items", "magazine", "item"},
{"Chemlight_red", 2, "Items", "magazine", "item"},
{"Chemlight_yellow", 2, "Items", "magazine", "item"},
{"ACE_EarPlugs", 1, "Items", "item", "item"},
{"ACE_MapTools", 225, "Items", "item", "item"},
{"ACE_CableTie", 5, "Items", "item", "item"},
{"ACE_wirecutter", 50, "Items", "item", "item"},
{"ACE_SpareBarrel", 250, "Items", "item", "item"},
{"ACE_fieldDressing", 10, "Medical", "item", "item"},
{"ACE_packingBandage", 10, "Medical", "item", "item"},
{"ACE_elasticBandage", 10, "Medical", "item", "item"},
{"ACE_quikclot", 10, "Medical", "item", "item"},
{"ACE_tourniquet", 10, "Medical", "item", "item"},
{"ACE_morphine", 10, "Medical", "item", "item"},
{"ACE_epinephrine", 10, "Medical", "item", "item"},
{"16Rnd_9x21_Mag", 10, "Magazines", "magazine", "magazine"},
{"30Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"100Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"U_BG_Guerrilla_6_1", 300, "Uniforms", "uniform", "uniform"},
{"V_Chestrig_rgr", 500, "Vests", "vest", "vest"},
{"V_PlateCarrier2_rgr", 1000, "Vests", "vest", "vest"},
{"H_Cap_blk_ION", 100, "Headgear", "headgear", "headgear"},
{"B_AssaultPack_rgr", 250, "Backpacks", "backpack", "backpack", {"B_AssaultPack_blk"}},
{"hgun_P07_F", 1000, "Weapons", "weapon", "weapon"},
{"arifle_MXC_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MX_SW_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MXM_F", 10000, "Weapons", "weapon", "weapon"},
{"B_APC_Wheeled_01_cannon_F", 10000, "Armored", "vehicle", "armor"},
{"B_MBT_01_TUSK_F", 10000, "Armored", "vehicle", "armor"},
{"B_T_VTOL_01_infantry_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_vehicle_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_03_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Attack_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_stripped_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_MRAP_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_gmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_hmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Quadbike_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_transport_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_covered_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_mover_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_box_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_Repair_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_ammo_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_fuel_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_medical_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_armed_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_AT_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_unarmed_F", 10000, "Wheeled", "vehicle", "car"}
};
};
};

View File

@ -9,7 +9,7 @@ onLoadMissionTime = 1;
// Game type and player count
class Header {
gameType = COOP;
gameType = FORGE_CAMP;
minPlayers = 1;
maxPlayers = 32;
};

View File

@ -1,4 +1,3 @@
[] call forge_client_arsenal_fnc_initArsenal;
[] spawn forge_client_init_fnc_initPlayer;
[] spawn forge_client_medical_fnc_initMedical;
[] spawn forge_client_phone_fnc_initPhone;

View File

@ -3,6 +3,16 @@
finishMissionInit;
enableSaving [false, false];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
diag_log _this;
if (_name isEqualTo "ArmaDragonflyClient") then {
parseSimpleArray _data call (missionNamespace getVariable [_function, {
hint "Function does not exist!"
}]);
};
}];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
if (_name isEqualTo "ArmaFORGEClient") then {

View File

@ -4,8 +4,7 @@ class CfgBanks {
className = "Land_Atm_01_F";
pos[] = {4818, 8075, 0};
dir = 180;
bankType = "object";
bankName = "FDIC";
type = "object";
};
};
};

View File

@ -4,7 +4,6 @@ class CfgCpofs {
className = "Land_MultiScreenComputer_01_olive_F";
pos[] = {4821, 8075, 0};
dir = 180;
cpofName = "Commander's CPOF";
};
};
};

View File

@ -0,0 +1,20 @@
class CfgGarages {
locations[] = {
{"car", {4805,8075,0}, 0},
{"armor", {4805,8075,0}, 0},
{"heli", {4805,8075,0}, 0},
{"plane", {4805,8075,0}, 0},
{"naval", {4805,8075,0}, 0},
{"static", {4805,8075,0}, 0},
{"uav", {4805,8075,0}, 0},
{"ugv", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
type = "object";
};
};
};

View File

@ -4,8 +4,7 @@ class CfgLockers {
className = "Box_NATO_Equip_F";
pos[] = {4812, 8075, 0};
dir = 0;
lockerType = "object";
lockerName = "Player Locker";
type = "object";
};
};
};

105
contract/configs/stores.h Normal file
View File

@ -0,0 +1,105 @@
class CfgStores {
class stores {
class store1 {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
type = "object";
name = "General Military Surplus Store";
paymentMethods[] = {
{"Bank", "FORGE_Bank", "player"},
{"Cash", "FORGE_Cash", "player"},
{"Company", "FORGE_Company", "mission", {"76561198027566824"}}
};
categories[] = {
"Backpacks",
"Headgear",
"Items",
"Magazines",
"Medical",
"Uniforms",
"Vests",
"Weapons",
"Aircraft",
"Armored",
"Helicopter",
"Marine",
"Static",
"UAV",
"UGV",
"Wheeled"
};
products[] = {
{"Binocular", 335, "Items", "item", "item"},
{"ItemCompass", 50, "Items", "item", "item"},
{"ItemGPS", 250, "Items", "item", "item"},
{"ItemMap", 20, "Items", "item", "item"},
{"ItemWatch", 50, "Items", "item", "item"},
{"Toolkit", 450, "Items", "item", "item"},
{"Chemlight_blue", 2, "Items", "magazine", "item"},
{"Chemlight_green", 2, "Items", "magazine", "item"},
{"Chemlight_red", 2, "Items", "magazine", "item"},
{"Chemlight_yellow", 2, "Items", "magazine", "item"},
{"ACE_EarPlugs", 1, "Items", "item", "item"},
{"ACE_MapTools", 225, "Items", "item", "item"},
{"ACE_CableTie", 5, "Items", "item", "item"},
{"ACE_wirecutter", 50, "Items", "item", "item"},
{"ACE_SpareBarrel", 250, "Items", "item", "item"},
{"ACE_fieldDressing", 10, "Medical", "item", "item"},
{"ACE_packingBandage", 10, "Medical", "item", "item"},
{"ACE_elasticBandage", 10, "Medical", "item", "item"},
{"ACE_quikclot", 10, "Medical", "item", "item"},
{"ACE_tourniquet", 10, "Medical", "item", "item"},
{"ACE_morphine", 10, "Medical", "item", "item"},
{"ACE_epinephrine", 10, "Medical", "item", "item"},
{"16Rnd_9x21_Mag", 10, "Magazines", "magazine", "magazine"},
{"30Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"100Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"U_BG_Guerrilla_6_1", 300, "Uniforms", "uniform", "uniform"},
{"V_Chestrig_rgr", 500, "Vests", "vest", "vest"},
{"V_PlateCarrier2_rgr", 1000, "Vests", "vest", "vest"},
{"H_Cap_blk_ION", 100, "Headgear", "headgear", "headgear"},
{"B_AssaultPack_rgr", 250, "Backpacks", "backpack", "backpack", {"B_AssaultPack_blk"}},
{"hgun_P07_F", 1000, "Weapons", "weapon", "weapon"},
{"arifle_MXC_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MX_SW_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MXM_F", 10000, "Weapons", "weapon", "weapon"},
{"B_APC_Wheeled_01_cannon_F", 10000, "Armored", "vehicle", "armor"},
{"B_MBT_01_TUSK_F", 10000, "Armored", "vehicle", "armor"},
{"B_T_VTOL_01_infantry_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_vehicle_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_03_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Attack_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_stripped_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_MRAP_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_gmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_hmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Quadbike_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_transport_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_covered_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_mover_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_box_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_Repair_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_ammo_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_fuel_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_medical_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_armed_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_AT_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_unarmed_F", 10000, "Wheeled", "vehicle", "car"}
};
};
};
};

View File

@ -9,7 +9,7 @@ onLoadMissionTime = 1;
// Game type and player count
class Header {
gameType = COOP;
gameType = FORGE_CNT;
minPlayers = 1;
maxPlayers = 32;
};

View File

@ -1,4 +1,3 @@
[] call forge_client_arsenal_fnc_initArsenal;
[] spawn forge_client_init_fnc_initPlayer;
[] spawn forge_client_medical_fnc_initMedical;
[] spawn forge_client_phone_fnc_initPhone;

View File

@ -3,6 +3,16 @@
finishMissionInit;
enableSaving [false, false];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
diag_log _this;
if (_name isEqualTo "ArmaDragonflyClient") then {
parseSimpleArray _data call (missionNamespace getVariable [_function, {
hint "Function does not exist!"
}]);
};
}];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
if (_name isEqualTo "ArmaFORGEClient") then {

View File

@ -4,8 +4,7 @@ class CfgBanks {
className = "Land_Atm_01_F";
pos[] = {4818, 8075, 0};
dir = 180;
bankType = "object";
bankName = "FDIC";
type = "object";
};
};
};

View File

@ -4,7 +4,6 @@ class CfgCpofs {
className = "Land_MultiScreenComputer_01_olive_F";
pos[] = {4821, 8075, 0};
dir = 180;
cpofName = "Commander's CPOF";
};
};
};

View File

@ -1,21 +1,20 @@
class CfgGarages {
locations[] = {
{"garageAircraft", {4805,8075,0}, 0},
{"garageArmored", {4805,8075,0}, 0},
{"garageChopper", {4805,8075,0}, 0},
{"garageMarine", {4805,8075,0}, 0},
{"garageStatic", {4805,8075,0}, 0},
{"garageUAV", {4805,8075,0}, 0},
{"garageUGV", {4805,8075,0}, 0},
{"garageWheeled", {4805,8075,0}, 0}
{"car", {4805,8075,0}, 0},
{"armor", {4805,8075,0}, 0},
{"heli", {4805,8075,0}, 0},
{"plane", {4805,8075,0}, 0},
{"naval", {4805,8075,0}, 0},
{"static", {4805,8075,0}, 0},
{"uav", {4805,8075,0}, 0},
{"ugv", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
garageType = "object";
garageName = "Player Garage";
type = "object";
};
};
};

View File

@ -4,8 +4,7 @@ class CfgLockers {
className = "Box_NATO_Equip_F";
pos[] = {4812, 8075, 0};
dir = 0;
lockerType = "object";
lockerName = "Player Locker";
type = "object";
};
};
};

View File

@ -4,117 +4,101 @@ class CfgStores {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
storeType = "object";
storeCategories[] = {
{"Backpacks", "storeBackpacks"},
{"Goggles", "storeGoggles"},
{"Headgear", "storeHeadgear"},
{"Items", "storeItems"},
{"Magazines", "storeMagazines"},
{"Uniforms", "storeUniforms"},
{"Vests", "storeVests"},
{"Weapons", "storeWeapons"},
{"Aircraft", "storeAircraft"},
{"Armored", "storeArmored"},
{"Chopper", "storeChopper"},
{"Marine", "storeMarine"},
{"Static", "storeStatic"},
{"UAV", "storeUAV"},
{"UGV", "storeUGV"},
{"Wheeled", "storeWheeled"}
type = "object";
name = "General Military Surplus Store";
paymentMethods[] = {
{"Bank", "FORGE_Bank", "player"},
{"Cash", "FORGE_Cash", "player"},
{"Company", "FORGE_Company", "mission", {"76561198027566824"}}
};
storeRestrictedCategories[] = {};
storeModset[] = {
"STOCK",
"ACE3",
"RHS",
"SMA",
"TFAR"
categories[] = {
"Backpacks",
"Headgear",
"Items",
"Magazines",
"Medical",
"Uniforms",
"Vests",
"Weapons",
"Aircraft",
"Armored",
"Helicopter",
"Marine",
"Static",
"UAV",
"UGV",
"Wheeled"
};
storePaymentMethods[] = {
"Personal",
"Company Funds"
};
storeName = "General Military Surplus Store";
storeBackpacks[] = {
{"B_AssaultPack_rgr", 250, "STOCK"},
{"B_AssaultPack_blk", 250, "STOCK"}
};
storeGoggles[] = {};
storeHeadgear[] = {
{"H_Cap_blk_ION", 100, "STOCK"}
};
storeItems[] = {
{"Binocular", 335, "STOCK"},
{"ItemCompass", 50, "STOCK"},
{"ItemMap", 20, "STOCK"},
{"ItemWatch", 50, "STOCK"},
{"ToolKit", 450, "STOCK"},
{"Chemlight_blue", 2, "STOCK"},
{"Chemlight_green", 2, "STOCK"},
{"Chemlight_red", 2, "STOCK"},
{"Chemlight_yellow", 2, "STOCK"},
{"ACE_MapTools", 525, "ACE3"},
{"ACE_CableTie", 2, "ACE3"},
{"ACE_EarPlugs", 1, "ACE3"},
{"ACE_wirecutter", 65, "ACE3"},
{"ACE_SpareBarrel", 300, "ACE3"}
};
storeMagazines[] = {
{"16Rnd_9x21_Mag", 10, "STOCK"},
{"30Rnd_65x39_caseless_mag", 10, "STOCK"},
{"100Rnd_65x39_caseless_mag", 10, "STOCK"}
};
storeUniforms[] = {
{"U_BG_Guerrilla_6_1", 500, "STOCK"}
};
storeVests[] = {
{"V_Chestrig_rgr", 500, "STOCK"},
{"V_PlateCarrier2_rgr", 2000, "STOCK"}
};
storeWeapons[] = {
{"hgun_P07_F", 1000, "STOCK"},
{"arifle_MXC_F", 1500, "STOCK"},
{"arifle_MX_SW_F", 1500, "STOCK"},
{"arifle_MXM_F", 10000, "STOCK"}
};
storeAircraft[] = {};
storeArmored[] = {
{"B_APC_Wheeled_01_cannon_F", 10000, "STOCK"},
{"B_MBT_01_TUSK_F", 10000, "STOCK"}
};
storeChopper[] = {
{"B_T_VTOL_01_infantry_F", 10000, "STOCK"},
{"B_T_VTOL_01_vehicle_F", 10000, "STOCK"},
{"B_T_VTOL_01_armed_F", 10000, "STOCK"},
{"B_Heli_Transport_03_F", 10000, "STOCK"},
{"B_Heli_Attack_01_F", 10000, "STOCK"},
{"B_Heli_Transport_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_armed_F", 10000, "STOCK"},
{"B_Heli_Light_01_stripped_F", 10000, "STOCK"}
};
storeMarine[] = {};
storeStatic[] = {};
storeUAV[] = {};
storeUGV[] = {};
storeWheeled[] = {
{"B_MRAP_01_F", 10000, "STOCK"},
{"B_MRAP_01_gmg_F", 10000, "STOCK"},
{"B_MRAP_01_hmg_F", 10000, "STOCK"},
{"B_Quadbike_01_F", 10000, "STOCK"},
{"B_Truck_01_transport_F", 10000, "STOCK"},
{"B_Truck_01_covered_F", 10000, "STOCK"},
{"B_Truck_01_mover_F", 10000, "STOCK"},
{"B_Truck_01_box_F", 10000, "STOCK"},
{"B_Truck_01_Repair_F", 10000, "STOCK"},
{"B_Truck_01_ammo_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"},
{"B_Truck_01_medical_F", 10000, "STOCK"},
{"B_LSV_01_armed_F", 10000, "STOCK"},
{"B_LSV_01_AT_F", 10000, "STOCK"},
{"B_LSV_01_unarmed_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"}
products[] = {
{"Binocular", 335, "Items", "item", "item"},
{"ItemCompass", 50, "Items", "item", "item"},
{"ItemGPS", 250, "Items", "item", "item"},
{"ItemMap", 20, "Items", "item", "item"},
{"ItemWatch", 50, "Items", "item", "item"},
{"Toolkit", 450, "Items", "item", "item"},
{"Chemlight_blue", 2, "Items", "magazine", "item"},
{"Chemlight_green", 2, "Items", "magazine", "item"},
{"Chemlight_red", 2, "Items", "magazine", "item"},
{"Chemlight_yellow", 2, "Items", "magazine", "item"},
{"ACE_EarPlugs", 1, "Items", "item", "item"},
{"ACE_MapTools", 225, "Items", "item", "item"},
{"ACE_CableTie", 5, "Items", "item", "item"},
{"ACE_wirecutter", 50, "Items", "item", "item"},
{"ACE_SpareBarrel", 250, "Items", "item", "item"},
{"ACE_fieldDressing", 10, "Medical", "item", "item"},
{"ACE_packingBandage", 10, "Medical", "item", "item"},
{"ACE_elasticBandage", 10, "Medical", "item", "item"},
{"ACE_quikclot", 10, "Medical", "item", "item"},
{"ACE_tourniquet", 10, "Medical", "item", "item"},
{"ACE_morphine", 10, "Medical", "item", "item"},
{"ACE_epinephrine", 10, "Medical", "item", "item"},
{"16Rnd_9x21_Mag", 10, "Magazines", "magazine", "magazine"},
{"30Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"100Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"U_BG_Guerrilla_6_1", 300, "Uniforms", "uniform", "uniform"},
{"V_Chestrig_rgr", 500, "Vests", "vest", "vest"},
{"V_PlateCarrier2_rgr", 1000, "Vests", "vest", "vest"},
{"H_Cap_blk_ION", 100, "Headgear", "headgear", "headgear"},
{"B_AssaultPack_rgr", 250, "Backpacks", "backpack", "backpack", {"B_AssaultPack_blk"}},
{"hgun_P07_F", 1000, "Weapons", "weapon", "weapon"},
{"arifle_MXC_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MX_SW_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MXM_F", 10000, "Weapons", "weapon", "weapon"},
{"B_APC_Wheeled_01_cannon_F", 10000, "Armored", "vehicle", "armor"},
{"B_MBT_01_TUSK_F", 10000, "Armored", "vehicle", "armor"},
{"B_T_VTOL_01_infantry_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_vehicle_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_03_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Attack_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_stripped_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_MRAP_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_gmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_hmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Quadbike_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_transport_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_covered_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_mover_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_box_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_Repair_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_ammo_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_fuel_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_medical_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_armed_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_AT_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_unarmed_F", 10000, "Wheeled", "vehicle", "car"}
};
};
};

View File

@ -1,4 +1,3 @@
[] call forge_client_arsenal_fnc_initArsenal;
[] spawn forge_client_init_fnc_initPlayer;
[] spawn forge_client_medical_fnc_initMedical;
[] spawn forge_client_phone_fnc_initPhone;

View File

@ -3,7 +3,7 @@ author = "YOUR_NAME, FORGE";
onLoadName = "MISSION_NAME";
onLoadMission = "MISSION_SUMMARY";
forge_type = 0; // 0: Contract, 1: Sub-Contract, 2: Training, 3: Special
forge_type = 1; // 0: Contract, 1: Sub-Contract, 2: Training, 3: Special
// Randomization
disableRandomization[] = {}; // Disables randomization of units and vehicles based off of variable name or classname

View File

@ -1,21 +0,0 @@
class CfgGarages {
locations[] = {
{"garageAircraft", {4805,8075,0}, 0},
{"garageArmored", {4805,8075,0}, 0},
{"garageChopper", {4805,8075,0}, 0},
{"garageMarine", {4805,8075,0}, 0},
{"garageStatic", {4805,8075,0}, 0},
{"garageUAV", {4805,8075,0}, 0},
{"garageUGV", {4805,8075,0}, 0},
{"garageWheeled", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
garageType = "object";
garageName = "Player Garage";
};
};
};

View File

@ -1,117 +0,0 @@
class CfgStores {
class stores {
class store1 {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
storeType = "object";
storeCategories[] = {
{"Backpacks", "storeBackpacks"},
{"Goggles", "storeGoggles"},
{"Headgear", "storeHeadgear"},
{"Items", "storeItems"},
{"Magazines", "storeMagazines"},
{"Uniforms", "storeUniforms"},
{"Vests", "storeVests"},
{"Weapons", "storeWeapons"},
{"Aircraft", "storeAircraft"},
{"Armored", "storeArmored"},
{"Chopper", "storeChopper"},
{"Marine", "storeMarine"},
{"Static", "storeStatic"},
{"UAV", "storeUAV"},
{"UGV", "storeUGV"},
{"Wheeled", "storeWheeled"}
};
storeRestrictedCategories[] = {};
storeModset[] = {
"STOCK",
"ACE3",
"RHS",
"SMA",
"TFAR"
};
storeName = "General Military Surplus Store";
storeBackpacks[] = {
{"B_AssaultPack_rgr", 250, "STOCK"},
{"B_AssaultPack_blk", 250, "STOCK"}
};
storeGoggles[] = {};
storeHeadgear[] = {
{"H_Cap_blk_ION", 100, "STOCK"}
};
storeItems[] = {
{"Binocular", 335, "STOCK"},
{"ItemCompass", 50, "STOCK"},
{"ItemMap", 20, "STOCK"},
{"ItemWatch", 50, "STOCK"},
{"ToolKit", 450, "STOCK"},
{"Chemlight_blue", 2, "STOCK"},
{"Chemlight_green", 2, "STOCK"},
{"Chemlight_red", 2, "STOCK"},
{"Chemlight_yellow", 2, "STOCK"},
{"ACE_MapTools", 525, "ACE3"},
{"ACE_CableTie", 2, "ACE3"},
{"ACE_EarPlugs", 1, "ACE3"},
{"ACE_wirecutter", 65, "ACE3"},
{"ACE_SpareBarrel", 300, "ACE3"}
};
storeMagazines[] = {
{"16Rnd_9x21_Mag", 10, "STOCK"},
{"30Rnd_65x39_caseless_mag", 10, "STOCK"},
{"100Rnd_65x39_caseless_mag", 10, "STOCK"}
};
storeUniforms[] = {
{"U_BG_Guerrilla_6_1", 500, "STOCK"}
};
storeVests[] = {
{"V_Chestrig_rgr", 500, "STOCK"},
{"V_PlateCarrier2_rgr", 2000, "STOCK"}
};
storeWeapons[] = {
{"hgun_P07_F", 1000, "STOCK"},
{"arifle_MXC_F", 1500, "STOCK"},
{"arifle_MX_SW_F", 1500, "STOCK"},
{"arifle_MXM_F", 10000, "STOCK"}
};
storeAircraft[] = {};
storeArmored[] = {
{"B_APC_Wheeled_01_cannon_F", 10000, "STOCK"},
{"B_MBT_01_TUSK_F", 10000, "STOCK"}
};
storeChopper[] = {
{"B_T_VTOL_01_infantry_F", 10000, "STOCK"},
{"B_T_VTOL_01_vehicle_F", 10000, "STOCK"},
{"B_T_VTOL_01_armed_F", 10000, "STOCK"},
{"B_Heli_Transport_03_F", 10000, "STOCK"},
{"B_Heli_Attack_01_F", 10000, "STOCK"},
{"B_Heli_Transport_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_F", 10000, "STOCK"},
{"B_Heli_Light_01_armed_F", 10000, "STOCK"},
{"B_Heli_Light_01_stripped_F", 10000, "STOCK"}
};
storeMarine[] = {};
storeStatic[] = {};
storeUAV[] = {};
storeUGV[] = {};
storeWheeled[] = {
{"B_MRAP_01_F", 10000, "STOCK"},
{"B_MRAP_01_gmg_F", 10000, "STOCK"},
{"B_MRAP_01_hmg_F", 10000, "STOCK"},
{"B_Quadbike_01_F", 10000, "STOCK"},
{"B_Truck_01_transport_F", 10000, "STOCK"},
{"B_Truck_01_covered_F", 10000, "STOCK"},
{"B_Truck_01_mover_F", 10000, "STOCK"},
{"B_Truck_01_box_F", 10000, "STOCK"},
{"B_Truck_01_Repair_F", 10000, "STOCK"},
{"B_Truck_01_ammo_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"},
{"B_Truck_01_medical_F", 10000, "STOCK"},
{"B_LSV_01_armed_F", 10000, "STOCK"},
{"B_LSV_01_AT_F", 10000, "STOCK"},
{"B_LSV_01_unarmed_F", 10000, "STOCK"},
{"B_Truck_01_fuel_F", 10000, "STOCK"}
};
};
};
};

71
special/briefing.sqf Normal file
View File

@ -0,0 +1,71 @@
#include "..\do_not_edit\script_component.hpp"
/*
* Author: Kresky, Jonpas
* Adds briefing based on side.
* Call from initPlayerLocal.sqf.
* Copy to other side briefings if you want to add briefings to those sides.
*
* Arguments:
* 0: Player <OBJECT>
*
* Return Value:
* None
*
* Example:
* [player] call FUNC(briefing);
*
* New Line:
* <br/>
*
* Text Colour (Hex colour Code)
* <font color='#FF0000'>TEXT HERE</font color>
*
* Clickable Marker Link:
* <marker name = 'MARKER_NAME'>MARKER_TEXT</marker>
*
* Image:
* <img image='FOLDER\IMAGE.jpg' width='200' height='100'/>
*/
params ["_player"];
switch (side _player) do {
// BLUFOR briefing
case west: {
};
// OPFOR briefing
case east: {
};
// RESISTANCE/INDEPENDENT briefing -- THIS IS THE BRIEFING YOU WANT TO EDIT FOR YOUR MISSION!
case resistance: {
_player createDiaryRecord ["Diary", ["Employer", "
<br/>Republic of Karellia
"]];
_player createDiaryRecord ["Diary", ["Situation", "
<br/><font color='#D81717'>ENEMY FORCES:</font color>
<br/>PMC Wagner
<br/>
<br/><font color='#1D69F6'>FRIENDLY FORCES:</font color>
<br/>Synixe Contractors
<br/>
<br/><font color='#993399'>CIVILIAN CONSIDERATIONS:</font color>
<br/>Mostly evacuated, very few civilians remain.
"]];
_player createDiaryRecord ["Diary", ["Mission", "
<br/>We have been hired to destroy communications towers in a region that has fallen to PMC Wagner.
<br/>
<br/>We will have access to frequency detection equipment in order to locate the towers.
"]];
};
// CIVILIAN briefing
case civilian: {
};
};

1
special/cba_settings.sqf Normal file
View File

@ -0,0 +1 @@
// FORGE - Basic Settings

23
special/config.h Normal file
View File

@ -0,0 +1,23 @@
class Params {
#include "params\paramArsType.h"
#include "params\paramDT.h"
#include "params\paramFuelCost.h"
#include "params\paramInsDeduct.h"
#include "params\paramMedCost.h"
#include "params\paramMultiplyr.h"
#include "params\paramOpBudget.h"
#include "params\paramOpRating.h"
#include "params\paramPDBMode.h"
#include "params\paramRepairCost.h"
#include "params\paramTeamCoord.h"
#include "params\paramVAEnable.h"
};
#include "configs\banks.h"
#include "configs\cpofs.h"
#include "configs\garages.h"
#include "configs\lockers.h"
#include "configs\paygrades.h"
#include "configs\stores.h"
#include "\@forge\userconfig\forge_phone.hpp"

10
special/configs/banks.h Normal file
View File

@ -0,0 +1,10 @@
class CfgBanks {
class banks {
class bank1 {
className = "Land_Atm_01_F";
pos[] = {4818, 8075, 0};
dir = 180;
type = "object";
};
};
};

9
special/configs/cpofs.h Normal file
View File

@ -0,0 +1,9 @@
class CfgCpofs {
class cpofs {
class cpof1 {
className = "Land_MultiScreenComputer_01_olive_F";
pos[] = {4821, 8075, 0};
dir = 180;
};
};
};

20
special/configs/garages.h Normal file
View File

@ -0,0 +1,20 @@
class CfgGarages {
locations[] = {
{"car", {4805,8075,0}, 0},
{"armor", {4805,8075,0}, 0},
{"heli", {4805,8075,0}, 0},
{"plane", {4805,8075,0}, 0},
{"naval", {4805,8075,0}, 0},
{"static", {4805,8075,0}, 0},
{"uav", {4805,8075,0}, 0},
{"ugv", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
type = "object";
};
};
};

10
special/configs/lockers.h Normal file
View File

@ -0,0 +1,10 @@
class CfgLockers {
class lockers {
class locker1 {
className = "Box_NATO_Equip_F";
pos[] = {4812, 8075, 0};
dir = 0;
type = "object";
};
};
};

View File

@ -0,0 +1,16 @@
class CfgPaygrades {
payGrades[] = {
{"E1", 1000, "Enlisted"},
{"E2", 1250, "Enlisted"},
{"E3", 1500, "Enlisted"},
{"E4", 1750, "Enlisted"},
{"WO1", 2000, "Warrant"},
{"WO2", 2250, "Warrant"},
{"WO3", 2500, "Warrant"},
{"WO4", 2750, "Warrant"},
{"2LT", 3000, "Officer"},
{"1LT", 3250, "Officer"},
{"CPT", 3500, "Officer"},
{"MAJ", 3750, "Officer"}
};
};

105
special/configs/stores.h Normal file
View File

@ -0,0 +1,105 @@
class CfgStores {
class stores {
class store1 {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
type = "object";
name = "General Military Surplus Store";
paymentMethods[] = {
{"Bank", "FORGE_Bank", "player"},
{"Cash", "FORGE_Cash", "player"},
{"Company", "FORGE_Company", "mission", {"76561198027566824"}}
};
categories[] = {
"Backpacks",
"Headgear",
"Items",
"Magazines",
"Medical",
"Uniforms",
"Vests",
"Weapons",
"Aircraft",
"Armored",
"Helicopter",
"Marine",
"Static",
"UAV",
"UGV",
"Wheeled"
};
products[] = {
{"Binocular", 335, "Items", "item", "item"},
{"ItemCompass", 50, "Items", "item", "item"},
{"ItemGPS", 250, "Items", "item", "item"},
{"ItemMap", 20, "Items", "item", "item"},
{"ItemWatch", 50, "Items", "item", "item"},
{"Toolkit", 450, "Items", "item", "item"},
{"Chemlight_blue", 2, "Items", "magazine", "item"},
{"Chemlight_green", 2, "Items", "magazine", "item"},
{"Chemlight_red", 2, "Items", "magazine", "item"},
{"Chemlight_yellow", 2, "Items", "magazine", "item"},
{"ACE_EarPlugs", 1, "Items", "item", "item"},
{"ACE_MapTools", 225, "Items", "item", "item"},
{"ACE_CableTie", 5, "Items", "item", "item"},
{"ACE_wirecutter", 50, "Items", "item", "item"},
{"ACE_SpareBarrel", 250, "Items", "item", "item"},
{"ACE_fieldDressing", 10, "Medical", "item", "item"},
{"ACE_packingBandage", 10, "Medical", "item", "item"},
{"ACE_elasticBandage", 10, "Medical", "item", "item"},
{"ACE_quikclot", 10, "Medical", "item", "item"},
{"ACE_tourniquet", 10, "Medical", "item", "item"},
{"ACE_morphine", 10, "Medical", "item", "item"},
{"ACE_epinephrine", 10, "Medical", "item", "item"},
{"16Rnd_9x21_Mag", 10, "Magazines", "magazine", "magazine"},
{"30Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"100Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"U_BG_Guerrilla_6_1", 300, "Uniforms", "uniform", "uniform"},
{"V_Chestrig_rgr", 500, "Vests", "vest", "vest"},
{"V_PlateCarrier2_rgr", 1000, "Vests", "vest", "vest"},
{"H_Cap_blk_ION", 100, "Headgear", "headgear", "headgear"},
{"B_AssaultPack_rgr", 250, "Backpacks", "backpack", "backpack", {"B_AssaultPack_blk"}},
{"hgun_P07_F", 1000, "Weapons", "weapon", "weapon"},
{"arifle_MXC_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MX_SW_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MXM_F", 10000, "Weapons", "weapon", "weapon"},
{"B_APC_Wheeled_01_cannon_F", 10000, "Armored", "vehicle", "armor"},
{"B_MBT_01_TUSK_F", 10000, "Armored", "vehicle", "armor"},
{"B_T_VTOL_01_infantry_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_vehicle_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_03_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Attack_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_stripped_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_MRAP_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_gmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_hmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Quadbike_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_transport_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_covered_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_mover_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_box_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_Repair_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_ammo_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_fuel_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_medical_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_armed_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_AT_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_unarmed_F", 10000, "Wheeled", "vehicle", "car"}
};
};
};
};

3
special/description.ext Normal file
View File

@ -0,0 +1,3 @@
#include "config.h"
#include "do_not_edit\description.ext"
#include "edit_me\description.ext"

View File

@ -0,0 +1,21 @@
#include "..\do_not_edit\script_component.hpp"
private _fnc_createRecord = {
params ["_title"];
private _file = format ["edit_me\briefing\%1.html", toLower _title];
if (fileExists _file) then {
private _contents = loadFile _file;
player createDiaryRecord ["Diary", [_title, _contents regexReplace ["\n", "<br/>"]]];
} else {
diag_log format ["No %1.html found in briefing folder", toLower _title];
};
};
{
[_x] call _fnc_createRecord;
} forEach [
"Objectives",
"Mission",
"Situation",
"Employer"
]; // Use reverse order to get correct order in diary

View File

@ -0,0 +1,30 @@
// Do not edit this file
// Version of mission template
forge_template = 3;
// Mission Settings
onLoadIntroTime = 1;
onLoadMissionTime = 1;
// Game type and player count
class Header {
gameType = FORGE_SPC;
minPlayers = 1;
maxPlayers = 32;
};
// Respawn Settings
respawn = "BASE";
respawnButton = 1;
respawnDelay = 5;
respawnDialog = 0;
// AI & Debug
disableAI = 1;
enableTargetDebug = 1;
// Other Settings
cba_settings_hasSettingsFile = 1;
corpseManagerMode = 0; // No bodies will be cleaned up
allowProfileGlasses = 0; // Disables glasses set in profile being added to player gear

View File

@ -0,0 +1,10 @@
[] spawn forge_client_init_fnc_initPlayer;
[] spawn forge_client_medical_fnc_initMedical;
[] spawn forge_client_phone_fnc_initPhone;
[] spawn forge_client_service_fnc_initService;
[] spawn forge_client_store_fnc_initStore;
player addItem "FORGE_Phone";
// TODO replace with function
[player] call compile preprocessFileLineNumbers "do_not_edit\briefing.sqf";

View File

@ -0,0 +1,11 @@
#define PREFIX forge
#define COMPONENT mission
// Mission
#define MISSION_TYPES ["Contract", "Sub-Contract", "Training", "Special"]
// Debug
#define DEBUG_SYNCHRONOUS
//#define DEBUG_MODE_FULL
#include "\x\cba\addons\main\script_macros_mission.hpp"

View File

@ -0,0 +1 @@
INSERT NAME OF EMPLOYER HERE

View File

@ -0,0 +1,5 @@
INSERT YOUR MISSION DESCRIPTION HERE,
YOU CAN ADD AS MUCH AS YOU FEEL IS RELEVANT.
AS A RULE OF THUMB, CONSIDER: WHO, WHAT (TASKS), WHERE, WHEN, AND WHY

View File

@ -0,0 +1,7 @@
<font color='#E3D310'>PRIMARY OBJECTIVES:</font color>
INSERT OBJECTIVES THAT MUST BE COMPLETED TO ACHIEVE THE MISSION GOAL
<font color='#E3D310'>SECONDARY OBJECTIVES:</font color>
INSERT OBJECTIVES THAT ARE NOT REQUIRED TO COMPLETE THE MISSION, BUT MAY BE USEFUL

View File

@ -0,0 +1,15 @@
<font color='#D81717'>ENEMY FORCES:</font>
INSERT ENEMIES HERE
INSERT ENEMY AMLCOA (Most Likely Course of Action, AKA, what they're doing, how they act, how they'll act towards us, what we know, etc)
<font color='#1D69F6'>FRIENDLY FORCES:</font>
Synixe Contractors, INSERT FRIENDLIES HERE
<font color='#139120'>INDEPENDENT FORCES:</font>
INSERT INDEPENDENT FORCES IF THERE ARE ANY, OTHERWISE REMOVE THIS LINE AND ONE ABOVE
<font color='#993399'>CIVILIAN CONSIDERATIONS:</font>
INSERT THINGS TO CONSIDER ABOUT CIVILIANS, PRESENCE/ABSENCE AND/OR BEHAVIOUR/SUPPORT TO FRIENDLIES OR ENEMIES
<font color='#663300'>TERRAIN CONSIDERATIONS:</font>
INSERT ANYTHING YOU FIND RELEVANT ABOUT HOW THE TERRAIN MAY BE ADVANTAGEOUS OR DISADVANTAGEOUS

View File

@ -0,0 +1,9 @@
// Mission settings - title, description, author etc.
author = "YOUR_NAME, FORGE";
onLoadName = "MISSION_NAME";
onLoadMission = "MISSION_SUMMARY";
forge_type = 3; // 0: Contract, 1: Sub-Contract, 2: Training, 3: Special
// Randomization
disableRandomization[] = {}; // Disables randomization of units and vehicles based off of variable name or classname

23
special/init.sqf Normal file
View File

@ -0,0 +1,23 @@
#include "do_not_edit\script_component.hpp"
finishMissionInit;
enableSaving [false, false];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
diag_log _this;
if (_name isEqualTo "ArmaDragonflyClient") then {
parseSimpleArray _data call (missionNamespace getVariable [_function, {
hint "Function does not exist!"
}]);
};
}];
addMissionEventHandler ["ExtensionCallback", {
params ["_name", "_function", "_data"];
if (_name isEqualTo "ArmaFORGEClient") then {
parseSimpleArray _data call (missionNamespace getVariable [_function, {
hint "Function does not exist!"
}]);
};
}];

View File

@ -0,0 +1,2 @@
#include "do_not_edit\script_component.hpp"
#include "do_not_edit\initPlayerLocal.sqf"

4
special/initServer.sqf Normal file
View File

@ -0,0 +1,4 @@
if (isServer || isDedicated) then {
true spawn dragonfly_db_fnc_init;
[] call forge_server_init_fnc_serverSetup;
};

View File

@ -0,0 +1,6 @@
class ARS_TYPE {
title = "Personal Arsenal Type:";
values[] = {0, 1};
texts[] = {"BIS", "ACE3"};
default = 1;
};

6
special/params/paramDT.h Normal file
View File

@ -0,0 +1,6 @@
class DT {
title = "Delivery Time:";
values[] = {0, 10, 30, 60, 120, 180, 240, 300};
texts[] = {"0 Seconds", "10 Seconds", "30 Seconds", "1 Minute", "2 Minutes", "3 Minutes", "4 Minutes", "5 Minutes"};
default = 10;
};

View File

@ -0,0 +1,6 @@
class FUEL_COST {
title = "Fuel Cost:";
values[]= {0, 2, 4, 6, 7, 8, 10, 12};
texts[] = {"$0.00 / Gallon", "$2.00 / Gallon", "$4.00 / Gallon", "$6.00 / Gallon", "$8.00 / Gallon", "$10.00 / Gallon", "$12.00 / Gallon", "$14.00 / Gallon"};
default = 2;
};

View File

@ -0,0 +1,6 @@
class INS_DEDUCT {
title = "Insurance Deductible";
values[]= {0, 100, 200, 300, 400, 500};
texts[] = {"$0.00","$100.00", "$200.00", "$300.00", "$400.00", "$500.00"};
default= 200;
};

View File

@ -0,0 +1,6 @@
class MED_COST {
title = "Medical Cost";
values[]= {0, 200, 400, 600, 800, 1000};
texts[] = {"$0.00","$200.00", "$400.00", "$600.00", "$800.00", "$1000.00"};
default= 400;
};

View File

@ -0,0 +1,6 @@
class MULTIPLYR {
title = "Payout Multiplier (Personal Accounts):";
values[] = {0, 0.5, 1, 2, 3};
texts[] = {"Zero", "Half", "None", "Double", "Triple"};
default = 1;
};

View File

@ -0,0 +1,6 @@
class OP_BUDGET {
title = "Company Budget:";
values[] = {0, 5000000, 12000000, 25000000, 50000000, 75000000, 120000000};
texts[] = {"Broke", "5 Million", "12 Million", "25 Million", "50 Million", "75 Million", "120 Million"};
default = 5000000;
};

View File

@ -0,0 +1,6 @@
class OP_RATING {
title = "Company Rating:";
values[] = {0, 500, 1000, 2000, 5000};
texts[] = {"0", "500 RP", "1000 RP", "2000 RP", "5000 RP"};
default = 500;
};

View File

@ -0,0 +1,6 @@
class PDB_MODE {
title = "Persistent Database Mode:";
values[] = {0, 1};
texts[] = {"ProfileNamespace", "ArmaDragonfly"};
default = 1;
};

View File

@ -0,0 +1,6 @@
class REPAIR_COST {
title = "Repair Cost:";
values[]= {0, 20, 40, 60, 70, 80, 100, 120};
texts[] = {"$0.00 / Hr", "$20.00 / Hr", "$40.00 / Hr", "$60.00 / Hr", "$80.00 / Hr", "$100.00 / Hr", "$120.00 / Hr", "$140.00 / Hr"};
default = 20;
};

View File

@ -0,0 +1,6 @@
class TEAM_COORD {
title = "Force Team Coordinator:";
values[] = {0, 1};
texts[] = {"False", "True"};
default = 0;
};

View File

@ -0,0 +1,6 @@
class VA_ENABLE {
title = "Virtual Arsenal/Garage:";
values[] = {0, 1};
texts[] = {"False", "True"};
default = 0;
};

View File

@ -0,0 +1,28 @@
#define PREFIX forge
#define COMPONENT mission
// Version
#define MAJOR 1
#define MINOR 0
#define PATCHLVL 0
// Mission
#define MISSION_TYPES ["Contract", "Sub-Contract", "Training", "Special"]
// Debug
#define DEBUG_SYNCHRONOUS
//#define DEBUG_MODE_FULL
#include "\x\cba\addons\main\script_macros_mission.hpp"
// ACE3
#define ACE_PREFIX ace
#define ACEGVAR(module,var) TRIPLES(ACE_PREFIX,module,var)
#define QACEGVAR(module,var) QUOTE(ACEGVAR(module,var))
#define ACEFUNC(var1,var2) TRIPLES(DOUBLES(ACE_PREFIX,var1),fnc,var2)
#define QACEFUNC(var1,var2) QUOTE(ACEFUNC(var1,var2))
#define PATHTOACEF(var1,var2) PATHTOF_SYS(\z\ace\addons,var1,var2)
#define QPATHTOACEF(var1,var2) QUOTE(PATHTOACEF(var1,var2))

71
training/briefing.sqf Normal file
View File

@ -0,0 +1,71 @@
#include "..\do_not_edit\script_component.hpp"
/*
* Author: Kresky, Jonpas
* Adds briefing based on side.
* Call from initPlayerLocal.sqf.
* Copy to other side briefings if you want to add briefings to those sides.
*
* Arguments:
* 0: Player <OBJECT>
*
* Return Value:
* None
*
* Example:
* [player] call FUNC(briefing);
*
* New Line:
* <br/>
*
* Text Colour (Hex colour Code)
* <font color='#FF0000'>TEXT HERE</font color>
*
* Clickable Marker Link:
* <marker name = 'MARKER_NAME'>MARKER_TEXT</marker>
*
* Image:
* <img image='FOLDER\IMAGE.jpg' width='200' height='100'/>
*/
params ["_player"];
switch (side _player) do {
// BLUFOR briefing
case west: {
};
// OPFOR briefing
case east: {
};
// RESISTANCE/INDEPENDENT briefing -- THIS IS THE BRIEFING YOU WANT TO EDIT FOR YOUR MISSION!
case resistance: {
_player createDiaryRecord ["Diary", ["Employer", "
<br/>Republic of Karellia
"]];
_player createDiaryRecord ["Diary", ["Situation", "
<br/><font color='#D81717'>ENEMY FORCES:</font color>
<br/>PMC Wagner
<br/>
<br/><font color='#1D69F6'>FRIENDLY FORCES:</font color>
<br/>Synixe Contractors
<br/>
<br/><font color='#993399'>CIVILIAN CONSIDERATIONS:</font color>
<br/>Mostly evacuated, very few civilians remain.
"]];
_player createDiaryRecord ["Diary", ["Mission", "
<br/>We have been hired to destroy communications towers in a region that has fallen to PMC Wagner.
<br/>
<br/>We will have access to frequency detection equipment in order to locate the towers.
"]];
};
// CIVILIAN briefing
case civilian: {
};
};

View File

@ -0,0 +1 @@
// FORGE - Basic Settings

23
training/config.h Normal file
View File

@ -0,0 +1,23 @@
class Params {
#include "params\paramArsType.h"
#include "params\paramDT.h"
#include "params\paramFuelCost.h"
#include "params\paramInsDeduct.h"
#include "params\paramMedCost.h"
#include "params\paramMultiplyr.h"
#include "params\paramOpBudget.h"
#include "params\paramOpRating.h"
#include "params\paramPDBMode.h"
#include "params\paramRepairCost.h"
#include "params\paramTeamCoord.h"
#include "params\paramVAEnable.h"
};
#include "configs\banks.h"
#include "configs\cpofs.h"
#include "configs\garages.h"
#include "configs\lockers.h"
#include "configs\paygrades.h"
#include "configs\stores.h"
#include "\@forge\userconfig\forge_phone.hpp"

10
training/configs/banks.h Normal file
View File

@ -0,0 +1,10 @@
class CfgBanks {
class banks {
class bank1 {
className = "Land_Atm_01_F";
pos[] = {4818, 8075, 0};
dir = 180;
type = "object";
};
};
};

9
training/configs/cpofs.h Normal file
View File

@ -0,0 +1,9 @@
class CfgCpofs {
class cpofs {
class cpof1 {
className = "Land_MultiScreenComputer_01_olive_F";
pos[] = {4821, 8075, 0};
dir = 180;
};
};
};

View File

@ -0,0 +1,20 @@
class CfgGarages {
locations[] = {
{"car", {4805,8075,0}, 0},
{"armor", {4805,8075,0}, 0},
{"heli", {4805,8075,0}, 0},
{"plane", {4805,8075,0}, 0},
{"naval", {4805,8075,0}, 0},
{"static", {4805,8075,0}, 0},
{"uav", {4805,8075,0}, 0},
{"ugv", {4805,8075,0}, 0}
};
class garages {
class garage1 {
className = "Box_NATO_Equip_F";
pos[] = {4810, 8075, 0};
dir = 0;
type = "object";
};
};
};

View File

@ -0,0 +1,10 @@
class CfgLockers {
class lockers {
class locker1 {
className = "Box_NATO_Equip_F";
pos[] = {4812, 8075, 0};
dir = 0;
type = "object";
};
};
};

View File

@ -0,0 +1,16 @@
class CfgPaygrades {
payGrades[] = {
{"E1", 1000, "Enlisted"},
{"E2", 1250, "Enlisted"},
{"E3", 1500, "Enlisted"},
{"E4", 1750, "Enlisted"},
{"WO1", 2000, "Warrant"},
{"WO2", 2250, "Warrant"},
{"WO3", 2500, "Warrant"},
{"WO4", 2750, "Warrant"},
{"2LT", 3000, "Officer"},
{"1LT", 3250, "Officer"},
{"CPT", 3500, "Officer"},
{"MAJ", 3750, "Officer"}
};
};

105
training/configs/stores.h Normal file
View File

@ -0,0 +1,105 @@
class CfgStores {
class stores {
class store1 {
className = "Land_CashDesk_F";
pos[] = {4815, 8075, 0};
dir = 0;
type = "object";
name = "General Military Surplus Store";
paymentMethods[] = {
{"Bank", "FORGE_Bank", "player"},
{"Cash", "FORGE_Cash", "player"},
{"Company", "FORGE_Company", "mission", {"76561198027566824"}}
};
categories[] = {
"Backpacks",
"Headgear",
"Items",
"Magazines",
"Medical",
"Uniforms",
"Vests",
"Weapons",
"Aircraft",
"Armored",
"Helicopter",
"Marine",
"Static",
"UAV",
"UGV",
"Wheeled"
};
products[] = {
{"Binocular", 335, "Items", "item", "item"},
{"ItemCompass", 50, "Items", "item", "item"},
{"ItemGPS", 250, "Items", "item", "item"},
{"ItemMap", 20, "Items", "item", "item"},
{"ItemWatch", 50, "Items", "item", "item"},
{"Toolkit", 450, "Items", "item", "item"},
{"Chemlight_blue", 2, "Items", "magazine", "item"},
{"Chemlight_green", 2, "Items", "magazine", "item"},
{"Chemlight_red", 2, "Items", "magazine", "item"},
{"Chemlight_yellow", 2, "Items", "magazine", "item"},
{"ACE_EarPlugs", 1, "Items", "item", "item"},
{"ACE_MapTools", 225, "Items", "item", "item"},
{"ACE_CableTie", 5, "Items", "item", "item"},
{"ACE_wirecutter", 50, "Items", "item", "item"},
{"ACE_SpareBarrel", 250, "Items", "item", "item"},
{"ACE_fieldDressing", 10, "Medical", "item", "item"},
{"ACE_packingBandage", 10, "Medical", "item", "item"},
{"ACE_elasticBandage", 10, "Medical", "item", "item"},
{"ACE_quikclot", 10, "Medical", "item", "item"},
{"ACE_tourniquet", 10, "Medical", "item", "item"},
{"ACE_morphine", 10, "Medical", "item", "item"},
{"ACE_epinephrine", 10, "Medical", "item", "item"},
{"16Rnd_9x21_Mag", 10, "Magazines", "magazine", "magazine"},
{"30Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"100Rnd_65x39_caseless_mag", 10, "Magazines", "magazine", "magazine"},
{"U_BG_Guerrilla_6_1", 300, "Uniforms", "uniform", "uniform"},
{"V_Chestrig_rgr", 500, "Vests", "vest", "vest"},
{"V_PlateCarrier2_rgr", 1000, "Vests", "vest", "vest"},
{"H_Cap_blk_ION", 100, "Headgear", "headgear", "headgear"},
{"B_AssaultPack_rgr", 250, "Backpacks", "backpack", "backpack", {"B_AssaultPack_blk"}},
{"hgun_P07_F", 1000, "Weapons", "weapon", "weapon"},
{"arifle_MXC_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MX_SW_F", 1500, "Weapons", "weapon", "weapon"},
{"arifle_MXM_F", 10000, "Weapons", "weapon", "weapon"},
{"B_APC_Wheeled_01_cannon_F", 10000, "Armored", "vehicle", "armor"},
{"B_MBT_01_TUSK_F", 10000, "Armored", "vehicle", "armor"},
{"B_T_VTOL_01_infantry_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_vehicle_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_T_VTOL_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_03_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Attack_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Transport_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_armed_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_Heli_Light_01_stripped_F", 10000, "Helicopter", "vehicle", "heli"},
{"B_MRAP_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_gmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_MRAP_01_hmg_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Quadbike_01_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_transport_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_covered_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_mover_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_box_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_Repair_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_ammo_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_fuel_F", 10000, "Wheeled", "vehicle", "car"},
{"B_Truck_01_medical_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_armed_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_AT_F", 10000, "Wheeled", "vehicle", "car"},
{"B_LSV_01_unarmed_F", 10000, "Wheeled", "vehicle", "car"}
};
};
};
};

3
training/description.ext Normal file
View File

@ -0,0 +1,3 @@
#include "config.h"
#include "do_not_edit\description.ext"
#include "edit_me\description.ext"

View File

@ -0,0 +1,21 @@
#include "..\do_not_edit\script_component.hpp"
private _fnc_createRecord = {
params ["_title"];
private _file = format ["edit_me\briefing\%1.html", toLower _title];
if (fileExists _file) then {
private _contents = loadFile _file;
player createDiaryRecord ["Diary", [_title, _contents regexReplace ["\n", "<br/>"]]];
} else {
diag_log format ["No %1.html found in briefing folder", toLower _title];
};
};
{
[_x] call _fnc_createRecord;
} forEach [
"Objectives",
"Mission",
"Situation",
"Employer"
]; // Use reverse order to get correct order in diary

View File

@ -0,0 +1,30 @@
// Do not edit this file
// Version of mission template
forge_template = 3;
// Mission Settings
onLoadIntroTime = 1;
onLoadMissionTime = 1;
// Game type and player count
class Header {
gameType = FORGE_TRN;
minPlayers = 1;
maxPlayers = 32;
};
// Respawn Settings
respawn = "BASE";
respawnButton = 1;
respawnDelay = 5;
respawnDialog = 0;
// AI & Debug
disableAI = 1;
enableTargetDebug = 1;
// Other Settings
cba_settings_hasSettingsFile = 1;
corpseManagerMode = 0; // No bodies will be cleaned up
allowProfileGlasses = 0; // Disables glasses set in profile being added to player gear

Some files were not shown because too many files have changed in this diff Show More