From 9384e0112c5f33afc58edc7828e9b25686b4e506 Mon Sep 17 00:00:00 2001 From: A Man Date: Thu, 17 Mar 2022 16:14:45 +0100 Subject: [PATCH] Add BI Camels --- .../CfgServerTrader/Category/AirVehicles.hpp | 10 + .../Category/AirVehicles.hpp | 10 + .../Configs/CfgVehicles/CfgVehicles.hpp | 1 + .../Configs/CfgVehicles/Plane/Camel.hpp | 271 ++++++++++++++++++ SQF/dayz_code/Configs/cfgMoves.hpp | 19 +- SQF/dayz_code/stringtable.xml | 10 + 6 files changed, 318 insertions(+), 3 deletions(-) create mode 100644 SQF/dayz_code/Configs/CfgVehicles/Plane/Camel.hpp diff --git a/SQF/dayz_code/Configs/CfgServerTrader/Category/AirVehicles.hpp b/SQF/dayz_code/Configs/CfgServerTrader/Category/AirVehicles.hpp index 4ff4c7847..1fd112b86 100644 --- a/SQF/dayz_code/Configs/CfgServerTrader/Category/AirVehicles.hpp +++ b/SQF/dayz_code/Configs/CfgServerTrader/Category/AirVehicles.hpp @@ -4,6 +4,7 @@ class Category_46 { class GNT_C185_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; class GNT_C185R_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; class GNT_C185C_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; + class Camel_Civ_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; //Green class AN2_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; //Red and white @@ -12,6 +13,15 @@ class Category_46 { class An2_2_TK_CIV_EP1_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemGoldBar10oz"};sell[] = {2,"ItemGoldBar10oz"};}; class C130J_US_EP1_DZ {type = "trade_any_vehicle";buy[] = {4,"ItemBriefcase100oz"};sell[] = {2,"ItemBriefcase100oz"};}; class MV22_DZ {type = "trade_any_vehicle";buy[] = {5,"ItemBriefcase100oz"};sell[] = {2,"ItemBriefcase100oz"};}; + //Armed + class AN2_VICKER_DZ {type = "trade_any_vehicle";buy[] = {-1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; + class AN2_VICKER_DZE {type = "trade_any_vehicle";buy[] = {1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; + class AN2_M134_DZ {type = "trade_any_vehicle";buy[] = {-2,"ItemBriefcase100oz"};sell[] = {1,"ItemBriefcase100oz"};}; + class AN2_M134_DZE {type = "trade_any_vehicle";buy[] = {2,"ItemBriefcase100oz"};sell[] = {1,"ItemBriefcase100oz"};}; + class Camel_West_DZ {type = "trade_any_vehicle";buy[] = {-1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; + class Camel_West_DZE {type = "trade_any_vehicle";buy[] = {1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; + class Camel_East_DZ {type = "trade_any_vehicle";buy[] = {-1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; + class Camel_East_DZE {type = "trade_any_vehicle";buy[] = {1,"ItemBriefcase100oz"};sell[] = {5,"ItemGoldBar10oz"};}; }; //Helicopters diff --git a/SQF/dayz_code/Configs/CfgServerTraderZSC/Category/AirVehicles.hpp b/SQF/dayz_code/Configs/CfgServerTraderZSC/Category/AirVehicles.hpp index 1078d7547..dad6e68a0 100644 --- a/SQF/dayz_code/Configs/CfgServerTraderZSC/Category/AirVehicles.hpp +++ b/SQF/dayz_code/Configs/CfgServerTraderZSC/Category/AirVehicles.hpp @@ -4,6 +4,7 @@ class Category_46 { class GNT_C185_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; class GNT_C185R_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; class GNT_C185C_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; + class Camel_Civ_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; //Green class AN2_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; //Red and white @@ -12,6 +13,15 @@ class Category_46 { class An2_2_TK_CIV_EP1_DZ {type = "trade_any_vehicle";buy[] = {4000,"worth"};sell[] = {2000,"worth"};}; class C130J_US_EP1_DZ {type = "trade_any_vehicle";buy[] = {40000,"worth"};sell[] = {20000,"worth"};}; class MV22_DZ {type = "trade_any_vehicle";buy[] = {50000,"worth"};sell[] = {20000,"worth"};}; + //Armed + class AN2_VICKER_DZ {type = "trade_any_vehicle";buy[] = {-1,"worth"};sell[] = {5000,"worth"};}; + class AN2_VICKER_DZE {type = "trade_any_vehicle";buy[] = {10000,"worth"};sell[] = {5000,"worth"};}; + class AN2_M134_DZ {type = "trade_any_vehicle";buy[] = {-2,"worth"};sell[] = {10000,"worth"};}; + class AN2_M134_DZE {type = "trade_any_vehicle";buy[] = {20000,"worth"};sell[] = {10000,"worth"};}; + class Camel_West_DZ {type = "trade_any_vehicle";buy[] = {-1,"worth"};sell[] = {5000,"worth"};}; + class Camel_West_DZE {type = "trade_any_vehicle";buy[] = {10000,"worth"};sell[] = {5000,"worth"};}; + class Camel_East_DZ {type = "trade_any_vehicle";buy[] = {-1,"worth"};sell[] = {5000,"worth"};}; + class Camel_East_DZE {type = "trade_any_vehicle";buy[] = {10000,"worth"};sell[] = {5000,"worth"};}; }; //Helicopters diff --git a/SQF/dayz_code/Configs/CfgVehicles/CfgVehicles.hpp b/SQF/dayz_code/Configs/CfgVehicles/CfgVehicles.hpp index 47f76462d..b9c2bb79f 100644 --- a/SQF/dayz_code/Configs/CfgVehicles/CfgVehicles.hpp +++ b/SQF/dayz_code/Configs/CfgVehicles/CfgVehicles.hpp @@ -698,6 +698,7 @@ class CfgVehicles #include "Plane\MV22.hpp" #include "Plane\C130.hpp" #include "Plane\Cessna_DZ.hpp" + #include "Plane\Camel.hpp" //Bikes #include "Bikes\ATVs.hpp" #include "Bikes\Bikes.hpp" diff --git a/SQF/dayz_code/Configs/CfgVehicles/Plane/Camel.hpp b/SQF/dayz_code/Configs/CfgVehicles/Plane/Camel.hpp new file mode 100644 index 000000000..5f6041e84 --- /dev/null +++ b/SQF/dayz_code/Configs/CfgVehicles/Plane/Camel.hpp @@ -0,0 +1,271 @@ +class Camel_Base_DZE: Plane +{ + scope = 0; + side = 1; + faction = "USMC"; + vehicleClass = "DayZ Epoch Vehicles"; + displayName = "Camel"; + crew = ""; + typicalCargo[] = {}; + class TransportMagazines{}; + class TransportWeapons{}; + weapons[] = {"TwinVickers","pook_H13Grenades"}; + magazines[] = {"500Rnd_TwinVickers","pook_12Rnd_Grenade_Camel"}; + gunnerHasFlares = false; + commanderCanSee = 2+16+32; + gunnerCanSee = 2+16+32; + driverCanSee = 2+16+32; + transportMaxWeapons = 7; + transportMaxMagazines = 40; + transportmaxbackpacks = 3; + fuelCapacity = 650; + terrainCoef = 1.8; + selectionHRotorStill = "vrtule staticka"; + selectionHRotorMove = "vrtule staticka"; + nameSound = "plane"; + accuracy = 0.3; + maxSpeed = 210; + gearRetracting = 0; + flaps = 0; + airBrake = 0; + cabinOpening = 0; + ejectSpeed[] = {0,0,0}; + ejectDamageLimit = 0.75; + armor = 15; + damageResistance = 0.00453; + model = "CYBP\CYBP_Camels\CYBP_Camel.p3d"; + picture = "CYBP\CYBP_Camels\data\ico\BIScamel_CA.paa"; + Icon = "CYBP\CYBP_Camels\data\map_ico\icomap_camel_CA.paa"; + mapSize = 8; + selectionFireAnim = "zasleh"; + landingSpeed = 75; + landingAoa = "5.0*3.1415/180"; + irScanGround = 1; + irScanRangeMin = 100; + irScanRangeMax = 12000; + flapsFrictionCoef = 2; + wheelSteeringSensitivity = 0.5; + driverAction = "Camel_a2_Pilot"; + soundDammage[] = {"\CYBP\cybp_camels\Data\Sound\Camel_dammage.wss",4.0,1,400}; + soundLandCrash[] = {"\CYBP\cybp_camels\Data\Sound\Camel_reifen.wss",5.0,1,400}; + soundCrash[] = {"\CYBP\cybp_camels\Data\Sound\Camel_crash.wss",4.0,1,1000}; + soundGetIn[] = {"\CYBP\cybp_camels\Data\Sound\Camel_goin.wss",4.0,1,150}; + soundGetOut[] = {"\CYBP\cybp_camels\Data\Sound\Camel_goout.wss",20.0,1.1,150}; + soundEngineOnInt[] = {"\CYBP\cybp_camels\Data\Sound\Camel_start.wss",0.452341,1.0}; + soundEngineOnExt[] = {"\CYBP\cybp_camels\Data\Sound\Camel_start.wss",0.884328,1.0,800}; + soundEngineOffInt[] = {"\CYBP\cybp_camels\Data\Sound\Camel_stop.wss",0.400341,1.0}; + soundEngineOffExt[] = {"\CYBP\cybp_camels\Data\Sound\Camel_stop.wss",0.884328,1.0,800}; + insideSoundCoef = 1.0; + + class HitPoints + { + class HitHull + { + armor = 1; + material = -1; + name = "telo"; + visual = "trup"; + passThrough = 1; + }; + }; + class AnimationSources: AnimationSources + { + class MGHide + { + source = "user"; + animPeriod = 1; + initPhase = 0; + }; + }; + class Sounds + { + class EngineLowOut + { + sound[] = {"\CYBP\CYBP_Camels\Data\Sound\Camel_engine.wss",2.02341,0.8,1300}; + frequency = "1.0 min (rpm + 0.5)"; + volume = "engineOn*camPos*(rpm factor[0.85, 0])"; + }; + class EngineHighOut + { + sound[] = {"\CYBP\CYBP_Camels\Data\Sound\Camel_engine.wss",2.62341,1.3,1900}; + frequency = "1"; + volume = "engineOn*camPos*(rpm factor[0.55, 1.0])"; + }; + class ForsageOut + { + sound[] = {"\CYBP\cybp_camels\Data\Sound\Camel_idle1a.wss",1.49189,2.0,1000}; + frequency = "1"; + volume = "engineOn*camPos*(thrust factor[0.5, 1.0])"; + cone[] = {3.14,3.92,2.0,0.4}; + }; + class WindNoiseOut + { + sound[] = {"\CYBP\cybp_camels\Data\Sound\Camel_wind.wss",3.758374,3.0,900}; + frequency = "(0.1+(1.2*(speed factor[1, 150])))"; + volume = "camPos*(speed factor[1, 150])"; + }; + class EngineLowIn + { + sound[] = {"\CYBP\CYBP_Camels\Data\Sound\Camel_engine.wss",2.02341,0.8}; + frequency = "1.0 min (rpm + 0.5)"; + volume = "engineOn*camPos*(rpm factor[0.85, 0])"; + }; + class EngineHighIn + { + sound[] = {"\CYBP\CYBP_Camels\Data\Sound\Camel_engine.wss",2.62341,1.3}; + frequency = "1"; + volume = "(1-camPos)*(engineOn*(rpm factor[0.55, 1.0]))"; + }; + class ForsageIn + { + sound[] = {"\CYBP\cybp_camels\Data\Sound\Camel_idle1a.wss",1.49189,2.0}; + frequency = "1"; + volume = "(1-camPos)*(engineOn*(thrust factor[0.8, 1.0]))"; + }; + class WindNoiseIn + { + sound[] = {"\CYBP\cybp_camels\Data\Sound\Camel_wind.wss",3.758374,3.0}; + frequency = "(0.1+(1.2*(speed factor[1, 150])))"; + volume = "(1-camPos)*(speed factor[1, 150])"; + }; + class NoiseIn + { + sound[] = {"ca\sounds\Vehicles\Tracked\M1A1\int\noise2",0.1,0.5}; + frequency = "(0.1+(1.2*(speed factor[1, 150])))"; + volume = "(1-camPos)*(speed factor[1, 150])"; + }; + }; + gunAimDown = 0; + transportSoldier = 0; + hiddenSelections[] = {"camo1","camo2","camo3"}; + hiddenSelectionsTextures[] = {"CYBP\CYBP_Camels\data\camel_west_co.paa","","CYBP\CYBP_Camels\data\clear_empty.paa"}; + extCameraPosition[] = {0,1.2,-13}; + type = 2; + threat[] = {0.1,1,0.7}; + audible = 8; + aileronSensitivity = 0.66; + elevatorSensitivity = 0.33; + enableGPS = 0; + envelope[] = {0.0,0.2,0.9,2.1,2.5,3.3,3.5,3.2,2.5,2.0,1.5,1.0}; + fov = 0.5; + class ViewOptics + { + initAngleX = 0; + minAngleX = 0; + maxAngleX = 0; + initAngleY = 0; + minAngleY = 0; + maxAngleY = 0; + initFov = 0.5; + minFov = 0.5; + maxFov = 0.5; + }; + class ViewPilot: ViewPilot + { + initFov = 1; + minFov = 0.4; + maxFov = 1.2; + initAngleX = 10; + minAngleX = -45; + maxAngleX = 85; + initAngleY = 0; + minAngleY = -150; + maxAngleY = 150; + }; + class Reflectors + { + class Left + { + color[] = {0,0,0,1.0}; + ambient[] = {0,0,0,1.0}; + position = "L svetlo"; + direction = "konec L svetla"; + hitpoint = "L svetlo"; + selection = "L svetlo"; + size = 1; + brightness = 0.25; + }; + class Right + { + color[] = {0,0,0,1.0}; + ambient[] = {0,0,0,1.0}; + position = "P svetlo"; + direction = "konec P svetla"; + hitpoint = "P svetlo"; + selection = "P svetlo"; + size = 1; + brightness = 0.25; + }; + }; + class Library + { + libTextDesc = "Plane"; + }; + class Damage + { + tex[] = {}; + mat[] = {"CYBP\CYBP_Camels\data\camel_west.rvmat","CYBP\CYBP_Camels\data\camel_west.rvmat","CYBP\CYBP_Camels\data\camel_west_destruct.rvmat"}; + }; +}; + +class Camel_West_DZ: Camel_Base_DZE +{ + displayName = $STR_VEH_NAME_CAMEL_WEST; + scope = 2; +}; + +class Camel_West_DZE: Camel_West_DZ +{ + magazines[] = {}; +}; + +class Camel_East_DZ: Camel_Base_DZE +{ + scope = 2; + hiddenSelectionsTextures[] = {"CYBP\CYBP_Camels\data\camel_east_co.paa","","CYBP\CYBP_Camels\data\clear_empty.paa"}; + picture = "CYBP\CYBP_Camels\data\ico\BIScamel2_CA.paa"; + displayName = $STR_VEH_NAME_CAMEL_EAST; + + class Damage + { + tex[] = {}; + mat[] = {"CYBP\CYBP_Camels\data\camel_east.rvmat","CYBP\CYBP_Camels\data\camel_east.rvmat","CYBP\CYBP_Camels\data\camel_east_destruct.rvmat"}; + }; +}; + +class Camel_East_DZE: Camel_East_DZ +{ + magazines[] = {}; +}; + +class Camel_Civ_DZ: Camel_Base_DZE +{ + scope = 2; + weapons[] = {}; + magazines[] = {}; + hiddenSelectionsTextures[] = {"CYBP\CYBP_Camels\data\clear_empty.paa","","CYBP\CYBP_Camels\data\clear_empty.paa"}; + displayName = $STR_VEH_NAME_CAMEL_CIVIL; + transportSoldier = 2; + cargoGetInAction[] = {"GetInLow"}; + cargoGetOutAction[] = {"GetOutLow"}; + cargoAction[] = {"Mi8_Cargo","Mi8_Cargo"}; + driverCompartments = "Compartment1"; + cargoCompartments[] = {"Compartment2"}; + memoryPointsGetInCargo = "pos driver"; + memoryPointsGetInCargoDir = "pos driver dir"; + + class AnimationSources: AnimationSources + { + class MGHide + { + source = "user"; + animPeriod = 1; + initPhase = 1; + }; + }; + class Damage + { + tex[] = {}; + mat[] = {"CYBP\CYBP_Camels\data\camel_east.rvmat","CYBP\CYBP_Camels\data\camel_east.rvmat","CYBP\CYBP_Camels\data\camel_east_destruct.rvmat"}; + }; +}; \ No newline at end of file diff --git a/SQF/dayz_code/Configs/cfgMoves.hpp b/SQF/dayz_code/Configs/cfgMoves.hpp index 84cd12e66..d611157e3 100644 --- a/SQF/dayz_code/Configs/cfgMoves.hpp +++ b/SQF/dayz_code/Configs/cfgMoves.hpp @@ -5,12 +5,26 @@ class CfgMovesAnimalsBase { class BlendAnims; }; -class CfgMovesBasic; //Fix for server CTD -class CfgMovesMaleSdr: CfgMovesBasic +class CfgMovesBasic { + class ManActions + { + Camel_a2_Pilot = "Camel_a2_Pilot"; + }; +}; + +class CfgMovesMaleSdr: CfgMovesBasic //Fix for server CTD { class States { class TransAnimBase_noIK; + class Crew; + class KIA_Camel_Pilot; + class Camel_a2_Pilot: Crew + { + file = "\CYBP\CYBP_Camels\Data\Anim\Pilot_a2.rtm"; + interpolateTo[] = {"KIA_Camel_Pilot",1}; + }; + class AwopPercMstpSoptWbinDnon_AwopPknlMstpSoptWbinDnon_lnr: TransAnimBase_noIK { rightHandIKCurve[] = {}; @@ -33,7 +47,6 @@ class CfgMovesDogBase class Default { actions = ""; - //access = 3; file = ""; looped = 1; speed = 0.5; diff --git a/SQF/dayz_code/stringtable.xml b/SQF/dayz_code/stringtable.xml index 5523429e2..45c26416f 100644 --- a/SQF/dayz_code/stringtable.xml +++ b/SQF/dayz_code/stringtable.xml @@ -14209,6 +14209,16 @@ Cessna C185F (Amphibian) Cessna C185F (Амфибия) + + Camel (West) + + + Camel (East) + + + Camel (Civil) + Camel (Zivil) + Stash Planque