diff --git a/addons/atragmx/functions/fnc_initGunList.sqf b/addons/atragmx/functions/fnc_initGunList.sqf index 87e2a074c6..aab682f6ac 100644 --- a/addons/atragmx/functions/fnc_initGunList.sqf +++ b/addons/atragmx/functions/fnc_initGunList.sqf @@ -76,7 +76,7 @@ if (_resetGunList) then { ["5.56x45mm Mk318" , 872, 100, 0.0814490, -0.00125880, 7.11, 0, 2, 10, 120, 0, 0, 4.018, 5.70, 17.78, 0.307, 1, "ASM" , [[-15,853],[0,860],[10,867],[15,872],[25,886],[30,895],[35,906]] , [[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]], true], ["5.56x45mm M995" , 861, 100, 0.0825279, -0.00126182, 7.11, 0, 2, 10, 120, 0, 0, 4.536, 5.70, 17.78, 0.310, 1, "ASM" , [[-15,842],[0,849],[10,856],[15,861],[25,875],[30,884],[35,895]] , [[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]], true], - ["5.45x39mm 7N6M" , 735, 100, 0.0784916, -0.00119458, 3.81, 0, 2, 10, 120, 0, 0, 3.43, 5.6, 16.00, 0.336, 1, "ICAO", [[-15,716],[0,723],[10,730],[15,735],[25,749],[30,758],[35,769]], [[0, 0.339], [730, 0.331], [960, 0.323], [1100, 0.321], [1220, 0.320], [1380, 0.320], [1480, 0.320]], true]]; + ["5.45x39mm 7N6M" , 735, 100, 0.0784916, -0.00119458, 3.81, 0, 2, 10, 120, 0, 0, 3.430, 5.60, 16.00, 0.336, 1, "ICAO", [[-15,716],[0,723],[10,730],[15,735],[25,749],[30,758],[35,769]] , [[0, 0.339], [730, 0.331], [960, 0.323], [1100, 0.321], [1220, 0.320], [1380, 0.320], [1480, 0.320]], true]]; [] call FUNC(clear_user_data); profileNamespace setVariable ["ACE_ATragMX_gunList", GVAR(gunList)]; diff --git a/addons/ballistics/CfgWeapons.hpp b/addons/ballistics/CfgWeapons.hpp index c8e04c776f..b272277d17 100644 --- a/addons/ballistics/CfgWeapons.hpp +++ b/addons/ballistics/CfgWeapons.hpp @@ -1,144 +1,81 @@ -class Mode_SemiAuto; -class Mode_Burst; -class Mode_FullAuto; - class CfgWeapons { - class LMG_RCWS; - class MGun; - class MGunCore; - class MMG_01_base_F; - class MMG_02_base_F; + class HMG_01; + class Pistol_Base_F; class Rifle_Base_F; class Rifle_Short_Base_F: Rifle_Base_F {}; class Rifle_Long_Base_F: Rifle_Base_F {}; + // Rifle_Long_Base_F Sniper Marksman // GM6 Lynx class GM6_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.45); - }; + ACE_barrelLength = 730; + ACE_barrelTwist = 381.0; + initSpeed = -1.0; + magazineWell[] += { + "CBA_50BMG_M107" + }; // empty in vanilla }; // M200 Intervention class LRR_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.50); - }; - }; - - // MX - class arifle_MX_Base_F: Rifle_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; - }; - - // KH2002 Sama - class arifle_katiba_Base_F: Rifle_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; - }; - - // CTAR-21 - class Tavor_base_F: Rifle_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; - }; - - // F2000 - class mk20_base_F: Rifle_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; - }; - - // P90 (1.86) - class SMG_03_TR_BASE: Rifle_Base_F { - ACE_barrelTwist = 228.6; // 1:9 inch twist - ACE_barrelLength = 407; - ACE_twistDirection = 1; - initSpeed = -1.083916; // 775 m/s according with the ACE_muzzleVelocities at 15°C, default BI value -1.1 (786 m/s) - modes[] = {"Single"}; - }; - class SMG_03C_BASE: SMG_03_TR_BASE { - ACE_barrelLength = 264; - modes[] = {"Single", "FullAuto"}; - }; - - // Noreen "Bad News" ULR - class DMR_02_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.61); - }; - }; - - // VS-121 - class DMR_01_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.81); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.81); - }; + ACE_barrelLength = 736.6; + ACE_barrelTwist = 330.2; + initSpeed = -1.0; + magazineWell[] += { + "CBA_408CT_Inter" + }; // vanilla magazineWell[] = {"M320_408"}; }; // Mk14 Mod 1 EBR class EBR_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.81); - }; + ACE_barrelLength = 457.2; + ACE_barrelTwist = 304.8; + initSpeed = -0.979444; + }; - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.81); + // VS-121 + class DMR_01_base_F: Rifle_Long_Base_F { + ACE_barrelLength = 609.6; + ACE_barrelTwist = 241.3; + initSpeed = -1.00019; + }; + + // Noreen "Bad News" ULR + class DMR_02_base_F: Rifle_Long_Base_F { + ACE_barrelLength = 508.0; + ACE_barrelTwist = 254.0; + initSpeed = -1.0; + magazines[] += { + "ACE_10Rnd_338_300gr_HPBT_Mag", + "ACE_10Rnd_338_API526_Mag", + "ACE_20Rnd_762x67_Mk248_Mod_0_Mag", + "ACE_20Rnd_762x67_Mk248_Mod_1_Mag", + "ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag" }; }; // SIG 556 class DMR_03_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.81); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.81); - }; + ACE_barrelLength = 508.0; + ACE_barrelTwist = 254.0; + initSpeed = -0.991536; + magazineWell[] += { + "CBA_762x51_M14" + }; // vanilla magazineWell[] = {"M14_762x51"}; }; // ASP-1 Kir class DMR_04_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.0); - }; + ACE_barrelLength = 450.088; + ACE_barrelTwist = 203.2; + initSpeed = -1.0; }; // Cyrus class DMR_05_base_F: Rifle_Long_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.67); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.67); - }; + ACE_barrelLength = 620.0; + ACE_barrelTwist = 360.0; + initSpeed = -1.0; // 780 m/s according with the ACE_ammoTempMuzzleVelocityShifts at the normal conditions (15°C) }; // M14 @@ -146,700 +83,373 @@ class CfgWeapons { ACE_barrelLength = 558.8; ACE_barrelTwist = 304.8; initSpeed = -0.999395; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.81); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.81); - }; - }; - - class DMR_06_hunter_base_F: DMR_06_base_F { - class Single: Single { - dispersion = MOA_TO_RAD(0.81); - }; - }; - - // MX LSW - class arifle_MX_SW_F: arifle_MX_Base_F { - magazines[] = { - "100Rnd_65x39_caseless_mag_Tracer", - "100Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_100Rnd_65x39_caseless_mag_Tracer_Dim", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" - }; - initSpeed = -0.981912; - ACE_barrelTwist = 228.6; - ACE_barrelLength = 406.4; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; - }; - - // MXM - class arifle_MXM_F: arifle_MX_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim", - "ACE_30Rnd_65x47_Scenar_mag", - "ACE_30Rnd_65_Creedmor_mag" - }; - initSpeed = -1.0; - ACE_barrelTwist = 228.6; - ACE_barrelLength = 457.2; - class Single: Single { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; - }; - - // HK416A5 11" - class arifle_SPAR_01_base_F: Rifle_Base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_green", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.869636; - ACE_barrelTwist = 177.8; - ACE_barrelLength = 264.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; - }; - - // HK416A5 14.5" - class arifle_SPAR_02_base_F: Rifle_Base_F { - initSpeed = -0.999864; - ACE_barrelTwist = 177.8; - ACE_barrelLength = 368.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; - }; - - // HK417A2 20" - class arifle_SPAR_03_base_F: Rifle_Base_F { - magazines[] = { - "20Rnd_762x51_Mag", - "ACE_20Rnd_762x51_Mag_Tracer", - "ACE_20Rnd_762x51_Mag_Tracer_Dim", - "ACE_20Rnd_762x51_Mk316_Mod_0_Mag", - "ACE_20Rnd_762x51_M118LR_Mag", - "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", - "ACE_20Rnd_762x51_M993_AP_Mag", - "ACE_20Rnd_762x51_Mag_SD" - }; - initSpeed = -0.991536; - ACE_barrelTwist = 279.4; - ACE_barrelLength = 508.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.81); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.81); - }; - }; - - // Stoner 99 LMG - class LMG_Mk200_F: Rifle_Long_Base_F { - initSpeed = -0.999327; - ACE_barrelTwist = 177.8; - ACE_barrelLength = 317.5; - }; - - // Negev NG7 - class LMG_Zafir_F: Rifle_Long_Base_F { - initSpeed = -1.00048; - ACE_barrelTwist = 304.8; - ACE_barrelLength = 459.74; - }; - - // M249 SPW - class LMG_03_base_F: Rifle_Long_Base_F { - initSpeed = -1.00051; - ACE_barrelTwist = 177.8; - ACE_barrelLength = 414.02; - }; - - // RFB SDAR - class SDAR_base_F: Rifle_Base_F { - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(3.0); - }; - - class Burst: Mode_Burst { - dispersion = MOA_TO_RAD(3.0); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(3.0); - }; - }; - - class Pistol; - class Pistol_Base_F: Pistol {}; - - // P99 - class hgun_P07_F: Pistol_Base_F { - initSpeed = -0.906977; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 101.6; - }; - - // MP-443 Grach - class hgun_Rook40_F: Pistol_Base_F { - initSpeed = -0.934884; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 111.76; - }; - - // Custom Covert II - class hgun_ACPC2_F: Pistol_Base_F { - initSpeed = -0.984252; - ACE_barrelTwist = 406.4; - ACE_barrelLength = 127.0; - }; - - // FNX-45 Tactical - class hgun_Pistol_heavy_01_F: Pistol_Base_F { - initSpeed = -0.944882; - ACE_barrelTwist = 406.4; - ACE_barrelLength = 114.3; - }; - - // Chiappa Rhino 60DS - class hgun_Pistol_heavy_02_F: Pistol_Base_F { - initSpeed = -0.905512; - ACE_barrelTwist = 406.4; - ACE_barrelLength = 76.2; - }; - - // Makarov PM - class hgun_Pistol_01_F: Pistol_Base_F { - initSpeed = -0.883721; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 93.5; - }; - - class pdw2000_base_F: Rifle_Short_Base_F {}; - - // CPW - class hgun_PDW2000_F: pdw2000_base_F { - initSpeed = -0.994186; - ACE_barrelTwist = 228.6; - ACE_barrelLength = 177.8; - }; - - // AKS - class arifle_AKS_base_F: Rifle_Base_F { - initSpeed = -1; // 735 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 160; - ACE_barrelLength = 210; - }; - - // AKM - class arifle_AKM_base_F: Rifle_Base_F { - initSpeed = -1; // 715 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 240; - ACE_barrelLength = 415; - }; - - // AK15,AK15K,RPK (AK12) - class arifle_AK12_base_F: Rifle_Base_F { - initSpeed = -1; // 715 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 240; - ACE_barrelLength = 415; - }; - - class arifle_AK12U_base_F: arifle_AK12_base_F { - initSpeed = -0.937063; // 715*0.937063= 670 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 240; - ACE_barrelLength = 314; - }; - - class arifle_RPK12_base_F: arifle_AK12_base_F { - initSpeed = -1.041958; // 715*1.041958= 745 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 240; - ACE_barrelLength = 590; - }; - - // MSBS GROT (Promet) - class arifle_MSBS65_base_F: Rifle_Base_F { - initSpeed = -0.971576; // 774*0.971576= 752 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelTwist = 228.6; - ACE_barrelLength = 406.4; // 16" - }; - - class arifle_MSBS65_Mark_base_F: arifle_MSBS65_base_F { - initSpeed = -1.007752; // 774*1.007752= 780 m/s according with the ACE_muzzleVelocities at 15°C - ACE_barrelLength = 508; // 20" - }; - - // QBZ-95-1 - class arifle_CTAR_base_F: Rifle_Base_F { - initSpeed = -0.978947; - ACE_barrelTwist = 244.0; - ACE_barrelLength = 463.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; }; // QBU-88 class DMR_07_base_F: Rifle_Long_Base_F { - initSpeed = -0.99998; - ACE_barrelTwist = 228.6; ACE_barrelLength = 640.0; - magazines[] = { - "20Rnd_650x39_Cased_Mag_F", + ACE_barrelTwist = 228.6; + initSpeed = -0.99998; + magazines[] += { "ACE_20Rnd_65x47_Scenar_mag", "ACE_20Rnd_65_Creedmor_mag" }; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.01); - }; }; - // QBZ-95-1 LSW - class arifle_CTARS_base_F: Rifle_Base_F { + // Rifle_Long_Base_F MG + // Stoner 99 LMG + class LMG_Mk200_F: Rifle_Long_Base_F { + ACE_barrelLength = 317.5; + ACE_barrelTwist = 177.8; + initSpeed = -0.999327; + }; + + // Negev NG7 + class LMG_Zafir_F: Rifle_Long_Base_F { + ACE_barrelLength = 459.74; + ACE_barrelTwist = 304.8; + initSpeed = -1.00048; + }; + + // M249 SPW + class LMG_03_base_F: Rifle_Long_Base_F { + ACE_barrelLength = 414.02; + ACE_barrelTwist = 177.8; + initSpeed = -1.00051; + }; + + // HK121 + class MMG_01_base_F: Rifle_Long_Base_F { // https://www.heckler-koch.com/en/products/military/machine-guns/mg5/mg5/technical-data.html93x + ACE_barrelLength = 550.0; + ACE_barrelTwist = 360.0; + initSpeed = -1.0; // 768 m/s according with the ACE_ammoTempMuzzleVelocityShifts at the normal conditions (15°C) + }; + + // LWMMG + class MMG_02_base_F: Rifle_Long_Base_F { + ACE_barrelLength = 609.6; + ACE_barrelTwist = 234.95; initSpeed = -1.0; - ACE_barrelTwist = 244.0; - ACE_barrelLength = 600.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; }; - // Type 115 - class arifle_ARX_base_F: Rifle_Base_F { - initSpeed = -0.984262; + // Rifle_Base_F + // MX variants + class arifle_MX_Base_F: Rifle_Base_F { ACE_barrelTwist = 228.6; - ACE_barrelLength = 463.0; - class Single: Mode_SemiAuto { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: Mode_FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; }; - // KH2002 Sama - class arifle_Katiba_F: arifle_katiba_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_green", - "30Rnd_65x39_caseless_green_mag_Tracer", - "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" - }; + // MX LSW + class arifle_MX_SW_F: arifle_MX_Base_F { + ACE_barrelLength = 406.4; + initSpeed = -0.981912; + }; + + // MXM + class arifle_MXM_F: arifle_MX_Base_F { + ACE_barrelLength = 457.2; initSpeed = -1.0; - ACE_barrelTwist = 203.2; - ACE_barrelLength = 508.0; - }; - - // KH2002C Sama - class arifle_Katiba_C_F: arifle_katiba_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_green", - "30Rnd_65x39_caseless_green_mag_Tracer", - "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" - }; - initSpeed = -0.961294; - ACE_barrelTwist = 203.2; - ACE_barrelLength = 393.7; - class Single: Single { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: FullAuto { - dispersion = MOA_TO_RAD(0.90); + magazines[] += { + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim", + "ACE_30Rnd_65x47_Scenar_mag", + "ACE_30Rnd_65_Creedmor_mag" }; }; - // KH2002 Sama KGL - class arifle_Katiba_GL_F: arifle_katiba_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_green", - "30Rnd_65x39_caseless_green_mag_Tracer", - "ACE_30Rnd_65x39_caseless_green_mag_Tracer_Dim" + class arifle_MXM_Black_F: arifle_MXM_F { + magazines[] += { + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim", + "ACE_30Rnd_65x47_Scenar_mag", + "ACE_30Rnd_65_Creedmor_mag" + }; + }; + + class arifle_MXM_khk_F: arifle_MXM_Black_F { + magazines[] += { + "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim", + "ACE_30Rnd_65x47_Scenar_mag", + "ACE_30Rnd_65_Creedmor_mag" }; - initSpeed = -1.0; - ACE_barrelTwist = 203.2; - ACE_barrelLength = 508.0; }; // MX class arifle_MX_F: arifle_MX_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" - }; - initSpeed = -0.972222; - ACE_barrelTwist = 228.6; ACE_barrelLength = 368.3; + initSpeed = -0.972222; }; // MX 3GL class arifle_MX_GL_F: arifle_MX_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" - }; - initSpeed = -0.972222; - ACE_barrelTwist = 228.6; ACE_barrelLength = 368.3; + initSpeed = -0.972222; }; // MXC class arifle_MXC_F: arifle_MX_Base_F { - magazines[] = { - "30Rnd_65x39_caseless_mag", - "30Rnd_65x39_caseless_mag_Tracer", - "ACE_30Rnd_65x39_caseless_mag_Tracer_Dim" - }; - initSpeed = -0.946382; - ACE_barrelTwist = 203.2; ACE_barrelLength = 266.7; - class Single: Single { - dispersion = MOA_TO_RAD(0.90); - }; - - class FullAuto: FullAuto { - dispersion = MOA_TO_RAD(0.90); - }; + ACE_barrelTwist = 203.2; + initSpeed = -0.946382; }; - // RFB SDAR - class arifle_SDAR_F: SDAR_base_F { - magazines[] = { - "20Rnd_556x45_UW_mag", - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.998321; - ACE_barrelTwist = 285.75; - ACE_barrelLength = 457.2; + // KH2002 Sama variants + class arifle_katiba_Base_F: Rifle_Base_F { + ACE_barrelTwist = 203.2; }; - class SMG_02_base_F: Rifle_Short_Base_F {}; - - // Scorpion Evo 3 A1 - class SMG_02_F: SMG_02_base_F { - initSpeed = -1.00029; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 195.58; + // KH2002 Sama + class arifle_Katiba_F: arifle_katiba_Base_F { + ACE_barrelLength = 508.0; + initSpeed = -1.0; }; - // MP5K - class SMG_05_base_F: Rifle_Short_Base_F { - initSpeed = -0.943783; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 115.0; + // KH2002C Sama + class arifle_Katiba_C_F: arifle_katiba_Base_F { + ACE_barrelLength = 393.7; + initSpeed = -0.961294; }; - // CTAR-21 - class arifle_TRG20_F: Tavor_base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.961496; + // KH2002 Sama KGL + class arifle_Katiba_GL_F: arifle_katiba_Base_F { + ACE_barrelLength = 508.0; + initSpeed = -1.0; + }; + + // CTAR-21 variants + class Tavor_base_F: Rifle_Base_F { ACE_barrelTwist = 177.8; + }; + + // CTAR-21 + class arifle_TRG20_F: Tavor_base_F { ACE_barrelLength = 381.0; + initSpeed = -0.961496; }; // TAR-21 class arifle_TRG21_F: Tavor_base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -1.0; - ACE_barrelTwist = 177.8; ACE_barrelLength = 459.74; - class Single: Single { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; + initSpeed = -1.0; }; // TAR-21 EGLM class arifle_TRG21_GL_F: arifle_TRG21_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; initSpeed = -1.0; + }; + + // F2000 variants + class mk20_base_F: Rifle_Base_F { ACE_barrelTwist = 177.8; - ACE_barrelLength = 459.74; }; // F2000 class arifle_Mk20_F: mk20_base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.992849; - ACE_barrelTwist = 177.8; ACE_barrelLength = 441.96; + initSpeed = -0.992849; }; // F2000 Tactical class arifle_Mk20C_F: mk20_base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.974297; - ACE_barrelTwist = 177.8; ACE_barrelLength = 406.4; - class Single: Single { - dispersion = MOA_TO_RAD(1.12); - }; - - class FullAuto: FullAuto { - dispersion = MOA_TO_RAD(1.12); - }; + initSpeed = -0.974297; }; // F2000 EGLM class arifle_Mk20_GL_F: mk20_base_F { - magazines[] = { - "30Rnd_556x45_Stanag", - "30Rnd_556x45_Stanag_Tracer_Red", - "30Rnd_556x45_Stanag_Tracer_Green", - "30Rnd_556x45_Stanag_Tracer_Yellow", - "30Rnd_556x45_Stanag_red", - "30Rnd_556x45_Stanag_green", - "ACE_30Rnd_556x45_Stanag_M995_AP_mag", - "ACE_30Rnd_556x45_Stanag_Mk262_mag", - "ACE_30Rnd_556x45_Stanag_Mk318_mag", - "ACE_30Rnd_556x45_Stanag_Tracer_Dim" - }; - initSpeed = -0.974297; - ACE_barrelTwist = 177.8; ACE_barrelLength = 406.4; + initSpeed = -0.974297; }; - class SMG_01_Base: Rifle_Short_Base_F {}; + // P90 (1.86) variants + class SMG_03_TR_BASE: Rifle_Base_F { + ACE_barrelLength = 407; + ACE_barrelTwist = 228.6; // 1:9 inch twist + initSpeed = -1.083916; // 775 m/s according with the ACE_muzzleVelocities at 15°C, default BI value -1.1 (786 m/s) + modes[] = {"Single"}; + }; + + class SMG_03C_BASE: SMG_03_TR_BASE { + ACE_barrelLength = 264; + modes[] = {"Single", "FullAuto"}; + }; + + // HK416 variants + // HK416A5 11" + class arifle_SPAR_01_base_F: Rifle_Base_F { + ACE_barrelLength = 264.0; + ACE_barrelTwist = 177.8; + initSpeed = -0.869636; + }; + + // HK416A5 14.5" + class arifle_SPAR_02_base_F: Rifle_Base_F { + ACE_barrelLength = 368.0; + ACE_barrelTwist = 177.8; + initSpeed = -0.999864; + }; + + // HK417A2 20" + class arifle_SPAR_03_base_F: Rifle_Base_F { + ACE_barrelLength = 508.0; + ACE_barrelTwist = 279.4; + initSpeed = -0.991536; + }; + + // RFB SDAR + class SDAR_base_F: Rifle_Base_F { + ACE_barrelLength = 457.2; + ACE_barrelTwist = 285.75; + initSpeed = -0.998321; + }; + + // AKS + class arifle_AKS_base_F: Rifle_Base_F { + ACE_barrelLength = 210; + ACE_barrelTwist = 160; + initSpeed = -1; // 735 m/s according with the ACE_muzzleVelocities at 15°C + }; + + // AKM + class arifle_AKM_base_F: Rifle_Base_F { + ACE_barrelLength = 415; + ACE_barrelTwist = 240; + initSpeed = -1; // 715 m/s according with the ACE_muzzleVelocities at 15°C + }; + + // AK15,AK15K,RPK (AK12) + class arifle_AK12_base_F: Rifle_Base_F { + ACE_barrelLength = 415; + ACE_barrelTwist = 240; + initSpeed = -1; // 715 m/s according with the ACE_muzzleVelocities at 15°C + }; + + class arifle_AK12U_base_F: arifle_AK12_base_F { + ACE_barrelLength = 314; + initSpeed = -0.937063; // 715*0.937063= 670 m/s according with the ACE_muzzleVelocities at 15°C + }; + + class arifle_RPK12_base_F: arifle_AK12_base_F { + ACE_barrelLength = 590; + initSpeed = -1.041958; // 715*1.041958= 745 m/s according with the ACE_muzzleVelocities at 15°C + }; + + // MSBS GROT (Promet) + class arifle_MSBS65_base_F: Rifle_Base_F { + ACE_barrelLength = 406.4; // 16" + ACE_barrelTwist = 228.6; + initSpeed = -0.971576; // 774*0.971576= 752 m/s according with the ACE_muzzleVelocities at 15°C + }; + + class arifle_MSBS65_Mark_base_F: arifle_MSBS65_base_F { + ACE_barrelLength = 508; // 20" + initSpeed = -1.007752; // 774*1.007752= 780 m/s according with the ACE_muzzleVelocities at 15°C + }; + + // QBZ-95-1 + class arifle_CTAR_base_F: Rifle_Base_F { + ACE_barrelLength = 463.0; + ACE_barrelTwist = 244.0; + initSpeed = -0.978947; + }; + + // QBZ-95-1 LSW + class arifle_CTARS_base_F: Rifle_Base_F { + ACE_barrelLength = 600.0; + ACE_barrelTwist = 244.0; + initSpeed = -1.0; + }; + + // Type 115 + class arifle_ARX_base_F: Rifle_Base_F { + ACE_barrelLength = 463.0; + ACE_barrelTwist = 228.6; + initSpeed = -0.984262; + }; + + // Rifle_Short_Base_F + // CPW + class pdw2000_base_F: Rifle_Short_Base_F { + ACE_barrelLength = 177.8; + ACE_barrelTwist = 228.6; + }; + + class hgun_PDW2000_F: pdw2000_base_F { + initSpeed = -0.994186; + }; // Vector SMG + class SMG_01_Base: Rifle_Short_Base_F { + ACE_barrelLength = 139.7; + ACE_barrelTwist = 406.4; + }; + class SMG_01_F: SMG_01_Base { initSpeed = -1.00148; + }; + + // Scorpion Evo 3 A1 + class SMG_02_base_F: Rifle_Short_Base_F { + ACE_barrelLength = 195.58; + ACE_barrelTwist = 254.0; + }; + + class SMG_02_F: SMG_02_base_F { + initSpeed = -1.00029; + }; + + // MP5K + class SMG_05_base_F: Rifle_Short_Base_F { + ACE_barrelLength = 115.0; + ACE_barrelTwist = 254.0; + initSpeed = -0.943783; + }; + + // Pistol_Base_F + // P99 + class hgun_P07_F: Pistol_Base_F { + ACE_barrelLength = 101.6; + ACE_barrelTwist = 254.0; + initSpeed = -0.906977; + }; + + // MP-443 Grach + class hgun_Rook40_F: Pistol_Base_F { + ACE_barrelLength = 111.76; + ACE_barrelTwist = 254.0; + initSpeed = -0.934884; + }; + + // Custom Covert II + class hgun_ACPC2_F: Pistol_Base_F { + ACE_barrelLength = 127.0; ACE_barrelTwist = 406.4; - ACE_barrelLength = 139.7; + initSpeed = -0.984252; }; - // VS-121 - class srifle_DMR_01_F: DMR_01_base_F { - magazines[] = { - "10Rnd_762x54_Mag", - "ACE_10Rnd_762x54_Tracer_mag" - }; - initSpeed = -1.00019; - ACE_barrelTwist = 241.3; - ACE_barrelLength = 609.6; + // FNX-45 Tactical + class hgun_Pistol_heavy_01_F: Pistol_Base_F { + ACE_barrelLength = 114.3; + ACE_barrelTwist = 406.4; + initSpeed = -0.944882; }; - // Mk14 Mod 1 EBR - class srifle_EBR_F: EBR_base_F { - magazines[] = { - "20Rnd_762x51_Mag", - "ACE_20Rnd_762x51_Mag_Tracer", - "ACE_20Rnd_762x51_Mag_Tracer_Dim", - "ACE_20Rnd_762x51_Mk316_Mod_0_Mag", - "ACE_20Rnd_762x51_M118LR_Mag", - "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", - "ACE_20Rnd_762x51_M993_AP_Mag", - "ACE_20Rnd_762x51_Mag_SD" - }; - initSpeed = -0.979444; - ACE_barrelTwist = 304.8; - ACE_barrelLength = 457.2; + // Chiappa Rhino 60DS + class hgun_Pistol_heavy_02_F: Pistol_Base_F { + ACE_barrelLength = 76.2; + ACE_barrelTwist = 406.4; + initSpeed = -0.905512; }; - // M200 Intervention - class srifle_LRR_F: LRR_base_F { - magazines[] = { - "7Rnd_408_Mag", - "ACE_7Rnd_408_305gr_Mag" - }; - initSpeed = -1.0; - ACE_barrelTwist = 330.2; - ACE_barrelLength = 736.6; - }; - - // GM6 Lynx - class srifle_GM6_F: GM6_base_F { - magazines[] = { - "5Rnd_127x108_Mag", - "5Rnd_127x108_APDS_Mag", - "ACE_5Rnd_127x99_Mag", - "ACE_5Rnd_127x99_API_Mag", - "ACE_5Rnd_127x99_AMAX_Mag" - }; - initSpeed = -1.0; - ACE_barrelTwist = 381.0; - ACE_barrelLength = 730; - }; - - // Noreen "Bad News" ULR - class srifle_DMR_02_F: DMR_02_base_F { - magazines[] = { - "10Rnd_338_Mag", - "ACE_10Rnd_338_300gr_HPBT_Mag", - "ACE_10Rnd_338_API526_Mag", - "ACE_20Rnd_762x67_Mk248_Mod_0_Mag", - "ACE_20Rnd_762x67_Mk248_Mod_1_Mag", - "ACE_20Rnd_762x67_Berger_Hybrid_OTM_Mag" - }; - initSpeed = -1.0; + // Makarov PM + class hgun_Pistol_01_F: Pistol_Base_F { + ACE_barrelLength = 93.5; ACE_barrelTwist = 254.0; - ACE_barrelLength = 508.0; + initSpeed = -0.883721; }; - // SIG 556 - class srifle_DMR_03_F: DMR_03_base_F { - magazines[] = { - "20Rnd_762x51_Mag", - "ACE_20Rnd_762x51_Mag_Tracer", - "ACE_20Rnd_762x51_Mag_Tracer_Dim", - "ACE_20Rnd_762x51_Mk316_Mod_0_Mag", - "ACE_20Rnd_762x51_M118LR_Mag", - "ACE_20Rnd_762x51_Mk319_Mod_0_Mag", - "ACE_20Rnd_762x51_M993_AP_Mag", - "ACE_20Rnd_762x51_Mag_SD" - }; - initSpeed = -0.991536; - ACE_barrelTwist = 254.0; - ACE_barrelLength = 508.0; - }; - - // ASP-1 Kir - class srifle_DMR_04_F: DMR_04_base_F { - initSpeed = -1.0; - ACE_barrelTwist = 203.2; - ACE_barrelLength = 450.088; - }; - - // Cyrus - class srifle_DMR_05_blk_F: DMR_05_base_F { - initSpeed = -1.0; // 780 m/s according with the ACE_ammoTempMuzzleVelocityShifts at the normal conditions (15°C) - ACE_barrelTwist = 360.0; - ACE_barrelLength = 620.0; - }; - - // HK121 - class MMG_01_hex_F: MMG_01_base_F { // https://www.heckler-koch.com/en/products/military/machine-guns/mg5/mg5/technical-data.html93x - initSpeed = -1.0; // 768 m/s according with the ACE_ammoTempMuzzleVelocityShifts at the normal conditions (15°C) - ACE_barrelTwist = 360.0; - ACE_barrelLength = 550.0; - }; - - // LWMMG - class MMG_02_camo_F: MMG_02_base_F { - initSpeed = -1.0; - ACE_barrelTwist = 234.95; - ACE_barrelLength = 609.6; - }; - - class HMG_127 : LMG_RCWS { - }; - class HMG_01: HMG_127 { - }; + // M2_Turret class HMG_M2: HMG_01 { - initSpeed = -1.0; - ACE_barrelTwist = 304.8; ACE_barrelLength = 1143.0; + ACE_barrelTwist = 304.8; + initSpeed = -1.0; }; /* Silencers */