riten 153 Posted August 4, 2016 Hello, I've problem adding gunner position to "L39" BI sample aircraft, 1. I've added proxy "gunner001" to my model 2. Added "gunner dir", "gunner pos dir" I was told to ask on config forum, so I'm trying here. What am I doing wrong? My model.cfg (from BI samples) Reveal hidden contents class CfgSkeletons { class Vehicle; class Plane: Vehicle { skeletonInherit="Vehicle"; skeletonBones[]={}; }; class L39Skeleton: Plane { isDiscrete=0; skeletonInherit="Plane"; skeletonBones[]= { "3dhud", "", "rpm_2", "", "altBaro", "", "flaps", "", "fuel_L", "", "fuel_R", "", "rpm_4", "", "rpm_3", "", "rpm_1", "", "mph", "", "mph_3", "", "vertspeed", "", "speedmach", "", "gear_switch", "", "vario_1", "", "vario_2", "", "mala", "", "velka", "", "alt_1", "", "alt_2", "", "alt_3", "", "horizont_1", "", "horizont_2", "", "horizont_3", "", "compass_1", "", "compass_2", "", "compass_3", "", "ind_gear", "", "gforce1", "", "gforce2", "", "rotor_1", "", "rotor_2", "", "flapL", "", "flapR", "", "elevatorL", "", "elevatorR", "", "rudder", "", "rudder_Small", "rudder", "aileronL", "", "aileronR", "", "airbrake1", "", "airbrake2", "", "canopy_elevator", "", "canopy1", "", "canopy2", "", "gear_1_hatch_1", "", "gear_1_hatch_2", "", "gear_1", "", "gear_1_steering", "gear_1", "gear_1_Steering2", "gear_1", "gear_1_damper", "gear_1_steering", "gear_1_stabil_1", "gear_1_steering", "wheel_1", "gear_1_stabil_1", "gear_2", "", "gear_2_damper", "gear_2", "gear_2_stabil", "gear_2", "wheel_2", "gear_2_stabil", "gear_2_hatch", "", "gear_3", "", "gear_3_damper", "gear_3", "gear_3_stabil", "gear_3", "wheel_3", "gear_3_stabil", "gear_3_hatch", "", "ladder_hatch", "", "ladder", "", "ladder_1", "", "ladder_1_1", "ladder_1" }; }; }; class Rotation; class CfgModels { class Vehicle; class Plane: Vehicle { sectionsInherit="Vehicle"; sections[]={}; skeletonName="Plane"; class Animations { }; }; class model: Plane { sections[]= { "zbytek", "podsvit pristroju", "clan", "clan_sign", "trup", "motor", "palivo", "L svetlo", "sklo predni L", "camo1", "camo2" }; skeletonName="L39Skeleton"; class Animations { class rotorL: Rotation { type="rotation"; source="rotor"; selection="rotor_1"; axis="rotor_1_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; angle0=0; angle1=6.283185; }; class rotorR: Rotation { type="rotation"; source="rotor"; selection="rotor_2"; axis="rotor_2_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; angle0=0; angle1=6.283185; }; class FlapL: Rotation { source="flap"; selection="FlapL"; axis="FlapL_axis"; minValue=0; maxValue=1; angle1=-0.60000002; }; class FlapR: FlapL { selection="FlapR"; axis="FlapR_axis"; }; class AileronL: Rotation { source="aileron"; selection="aileronL"; axis="aileronL_axis"; minValue=-1; maxValue=1; angle0=-0.43633199; angle1=0.52359903; }; class AileronR: AileronL { selection="aileronR"; axis="aileronR_axis"; angle0=-0.52359903; angle1=0.43633199; }; class ElevatorL: Rotation { source="elevator"; selection="elevatorL"; axis="elevatorL_axis"; minValue=-1; maxValue=1; angle0=-0.49916399; angle1=0.49916399; }; class ElevatorR: ElevatorL { selection="elevatorR"; axis="elevatorR_axis"; angle0=-0.5; angle1=0.5; }; class Rudder: Rotation { source="rudder"; selection="rudder"; axis="rudder_axis"; minValue=-1; maxValue=1; angle0=-0.37524599; angle1=0.37524599; memory=1; }; class Rudder_Small: Rudder { selection="rudder_Small"; axis="rudder_Small_axis"; }; class canopy_elevator: Rotation { type="rotation"; source="cabin"; selection="canopy_elevator"; axis="canopy_elevator_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=8; angle0=0.92502499; angle1=0; }; class canopy1: canopy_elevator { selection="canopy1"; axis="canopy1_axis"; minValue=0; maxValue=8; angle0=-1.32645; angle1=0; }; class canopy2: canopy1 { selection="canopy2"; axis="canopy2_axis"; minValue=1; maxValue=9; angle0=-1.32645; angle1=0; }; class Gear_1: Rotation { type="rotation"; source="Gear"; selection="Gear_1"; axis="Gear_1_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=0.60000002; angle0=0; angle1=1.95; }; class gear_1_Steering: Rotation { type="rotation"; source="noseWheelTurn"; selection="gear_1_Steering"; axis="gear_1_damper_axis"; memory=1; sourceAddress="clamp"; minValue=-1; maxValue=1; angle0=0.34906599; angle1=-0.34906599; }; class gear_1_Steering2: gear_1_Steering { selection="gear_1_Steering2"; axis="gear_1_Steering2_axis"; angle0="0.349066*0.7"; angle1="-0.349066*0.7"; }; class gear_1_hatch_1: Gear_1 { selection="gear_1_hatch_1"; axis="gear_1_hatch_1_axis"; minValue=0.60000002; maxValue=1; angle0=1.570796; angle1=0; }; class gear_1_hatch_2: Gear_1 { selection="gear_1_hatch_2"; axis="gear_1_hatch_2_axis"; minValue=0; maxValue=0.60000002; angle1=0; angle0=-2; }; class gear_1_damper: Rotation { type="translation"; source="altRadar"; selection="gear_1_damper"; axis="gear_1_damper_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; offset0=0; offset1=0.12; }; class gear_1_stabil_1: gear_1_damper { type="rotation"; selection="gear_1_stabil_1"; axis="gear_1_stabil_1_axis"; angle1=0.26179901; }; class Gear_2: Rotation { type="rotation"; source="Gear"; selection="Gear_2"; axis="Gear_2_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=0.69999999; angle1=0; angle0=1.5700001; }; class gear_2_hatch: Gear_2 { selection="gear_2_hatch"; axis="gear_2_hatch_axis"; minValue=0.5; maxValue=1; angle1=0; angle0=-1.6; }; class gear_2_piston_2: Gear_2 { selection="gear_2_piston_2"; axis="gear_2_piston_2_axis"; minValue=0; maxValue=1; angle0=0; angle1=0.95993102; }; class gear_2_piston_1: Gear_2 { selection="gear_2_piston_1"; axis="gear_2_piston_1_axis"; minValue=0; maxValue=1; angle0=0; angle1=0.52359903; }; class Gear_2_damper: Rotation { type="translation"; source="altRadar"; selection="Gear_2_damper"; axis="Gear_2_damper_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; offset0=0.15000001; offset1=0; }; class gear_2_stabil: Rotation { type="Rotation"; source="altRadar"; selection="gear_2_stabil"; axis="gear_2_stabil_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; angle0=0.22689299; angle1=0; }; class Gear_3: Rotation { type="rotation"; source="Gear"; selection="Gear_3"; axis="Gear_3_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=0.69999999; angle1=0; angle0=-1.5700001; }; class gear_3_hatch: Gear_3 { selection="gear_3_hatch"; axis="gear_3_hatch_axis"; minValue=0.5; maxValue=1; angle1=0; angle0=1.6; }; class gear_3_piston_2: Gear_3 { selection="gear_3_piston_2"; axis="gear_3_piston_2_axis"; minValue=0; maxValue=1; angle0=0; angle1=-0.95993102; }; class gear_3_piston_1: Gear_3 { selection="gear_3_piston_1"; axis="gear_3_piston_1_axis"; minValue=0; maxValue=1; angle0=0; angle1=-0.52359903; }; class Gear_3_damper: Rotation { type="translation"; source="altRadar"; selection="Gear_3_damper"; axis="Gear_3_damper_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; offset0=-0.15000001; offset1=0; }; class gear_3_stabil: Rotation { type="Rotation"; source="altRadar"; selection="gear_3_stabil"; axis="gear_3_stabil_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; angle0=-0.22689299; angle1=0; }; class Ladder_1: Rotation { type="rotation"; source="cabin"; selection="ladder_1"; axis="ladder_1_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=8; angle0=2; angle1=0; }; class Ladder_1_1: Ladder_1 { selection="ladder_1_1"; axis="ladder_1_1_axis"; minValue=0; maxValue=8; angle0=1; angle1=-8; }; class Ladder: Rotation { type="rotation"; source="cabin"; selection="ladder"; axis="ladder_rot_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=8; angle0=1; angle1=0; }; class Ladder1: Rotation { type="translation"; source="cabin"; selection="ladder1"; axis="ladder_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=9; offset0=1; offset1=-0; }; class Ladder2: Ladder1 { selection="ladder2"; axis="ladder_axis"; minValue=3; maxValue=6; }; class Ladder3: Ladder1 { selection="ladder3"; axis="ladder_axis"; minValue=0; maxValue=3; }; class Ladder_Hatch: Rotation { type="rotation"; source="cabin"; selection="Ladder_Hatch"; axis="Ladder_Hatch_axis"; memory=1; sourceAddress="clamp"; minValue=10; maxValue=12; angle0=0; angle1=-3.141593; }; class Wheel_1 { type="rotation"; source="wheel"; selection="wheel_1"; axis="wheel_1_axis"; memory=1; sourceAddress="loop"; minValue=0; maxValue=1; angle0=0; angle1=-3.141593; }; class Wheel_2: Wheel_1 { selection="wheel_2"; axis="wheel_2_axis"; }; class Wheel_3: Wheel_1 { selection="wheel_3"; axis="wheel_3_axis"; }; class airbrake1: Rotation { type="rotation"; source="SpeedBrake"; selection="airbrake1"; axis="airbrake1_axis"; memory=1; sourceAddress="clamp"; minValue=0; maxValue=1; angle0=0; angle1=-1.134464; }; class airbrake2: airbrake1 { selection="airbrake2"; axis="airbrake2_axis"; }; class IndicatorAltBaro1: Rotation { source="altBaro"; selection="alt_1"; axis="alt_1_axis"; memory=0; sourceAddress="loop"; maxValue=1000; angle1=-6.283185; }; class IndicatorAltBaro2: IndicatorAltBaro1 { selection="alt_2"; axis="alt_2_axis"; maxValue=1000; angle1=6.283185; }; class IndicatorAltRadar3: Rotation { source="altRadar"; selection="alt_3"; axis="alt_3_axis"; minValue=0; maxValue=10000; angle0=0; angle1=4.302237; }; class Mala: Rotation { source="clockHour"; selection="mala"; memory="false"; axis="clock_axis"; angle1="rad 360"; }; class Velka: Mala { source="clockMinute"; selection="velka"; axis="clock_axis"; }; class IndicatorCompass: Rotation { source="direction"; selection="compass_1"; axis="compass_1_axis"; minValue=-3.141593; maxValue=3.141593; angle0=0; angle1="-rad 360"; }; class IndicatorCompass2: IndicatorCompass { source="direction"; selection="compass_2"; axis="compass_2_axis"; minValue=-3.141593; maxValue=3.141593; angle0=0; angle1="-rad 360"; }; class IndicatorCompass3: IndicatorCompass { source="direction"; selection="compass_3"; axis="compass_3_axis"; minValue=-3.141593; maxValue=3.141593; angle0=0; angle1="-rad 360"; }; class HorizonDive { type="rotationX"; source="horizondive"; selection="horizont_1"; axis="horizont_1_axis"; memory=0; minValue=-0.78539801; maxValue=0.78539801; angle0=-0.78539801; angle1=0.78539801; }; class Horizon2Dive: HorizonDive { selection="horizont_2"; axis="horizont_2_axis"; }; class Horizon3Dive: HorizonDive { selection="horizont_3"; axis="horizont_3_axis"; minValue="rad -90"; maxValue="rad 90"; angle0=-1.570796; angle1=1.570796; }; class HorizonBank { type="rotation"; source="horizonBank"; selection="horizont_1"; axis="HorizontBank_1_axis"; memory=0; minValue=-6.2831898; maxValue=6.2831898; angle0=-6.283185; angle1=6.283185; }; class Horizon2Bank: HorizonBank { selection="horizont_2"; axis="HorizontBank_2_axis"; }; class Horizon3Bank: HorizonBank { selection="horizont_3"; axis="horizontBank_3_axis"; }; class IndicatorGMeter: Rotation { source="gmeter"; selection="Gforce1"; axis="Gforce_axis"; memory=1; minValue=-2; maxValue=8; angle0="rad 45"; angle1="rad -100"; }; class IndicatorAOA: IndicatorGMeter { selection="Gforce2"; source="aoa"; memory=0; minvalue="-rad 10"; maxValue="rad 50"; angle0="-rad 30"; angle1="rad 130"; }; class ind_gear { type="hide"; source="gear"; selection="ind_gear"; minValue=0; maxValue=0.2; hidevalue=0.19; sourceAddress="mirror"; }; class IndicatorSpeed: Rotation { source="speed"; selection="mph"; axis="mph_axis"; memory=1; minValue=2.5; maxValue=175.5; angle0=-0.26179901; angle1=-6.0213861; }; class IndicatorSpeed3: Rotation { source="speed"; selection="mph_3"; axis="mph_3_axis"; memory=1; minValue=-55.549999; maxValue=277.76999; angle0=0; angle1=1.570796; }; class IndicatorRPM_1: Rotation { source="rpm"; selection="rpm_1"; axis="rpm_1_axis"; memory=1; minValue=0; maxValue=1; angle0=0; angle1=-6; }; class IndicatorRPM_2: IndicatorRPM_1 { selection="rpm_2"; axis="rpm_2_axis"; angle1=-3.7; }; class IndicatorRPM_3: IndicatorRPM_1 { selection="rpm_3"; axis="rpm_3_axis"; angle1=-4; }; class IndicatorRPM_4: IndicatorRPM_1 { selection="rpm_4"; axis="rpm_4_axis"; angle1=-4; }; class IndicatorFuel_L: Rotation { source="Fuel"; selection="Fuel_L"; axis="Fuel_L_axis"; memory=1; minValue=0; maxValue=1; angle0=0; angle1=-4.0999999; }; class IndicatorFuel_R: IndicatorFuel_L { selection="Fuel_R"; axis="Fuel_axis"; memory=1; minValue=0; maxValue=1; angle0=0; angle1=-2.792527; }; class IndicatorFlaps: Rotation { source="Flap"; selection="flaps"; axis="flaps_axis"; memory=1; minValue=0; maxValue=1; angle0=0; angle1=1.570796; }; class IndicatorVertSpeed: Rotation { source="vertSpeed"; selection="vertSpeed"; axis="vertSpeed_axis"; minvalue=-65; maxValue=65; angle0="rad 110"; angle1="-rad 110"; sourceAddress="clamp"; }; class IndicatorGear { type="translation"; source="gear"; selection="gear_lock"; axis="gear_lock_axis"; memory=1; minValue=0; maxValue=1; offset0=-1; offset1=0; }; class Gear_switch { type="rotation"; source="gear"; selection="gear_switch"; axis="gear_switch_axis"; memory=1; minValue=0.5; maxValue=1; angle0=0.30000001; angle1=1; }; class 3dhudOn1: Rotation { type="translation"; source="cabin"; selection="3dhud"; axis="3dhud_axis"; memory=1; minValue=14.99; maxValue=15; offset0=15; offset1=0; }; class 3dhudOn2: 3dhudOn1 { selection="horizont_3"; }; class 3dhudOn3: 3dhudOn1 { selection="mph_3"; }; class 3dhudOn4: 3dhudOn1 { selection="alt_3"; }; class 3dhudOn5: 3dhudOn1 { selection="compass_3"; }; class ProxyCrew { autocenter=0; scope=1; model=""; simulation="proxycrew"; crewPosition="CPDriver"; }; class ProxyCommander: ProxyCrew {crewPosition="CPCommander";}; class ProxyDriver: ProxyCrew {crewPosition="CPDriver";}; class ProxyGunner: ProxyCrew {crewPosition="CPGunner";}; class ProxyCargo: ProxyCrew {crewPosition="CPCargo";}; class ProxyPilot: ProxyDriver {}; }; }; }; config.cpp Reveal hidden contents #define true 1 #define false 0 #define private 0 #define protected 1 #define public 2 #define TEast 0 #define TWest 1 #define TGuerrila 2 #define TCivilian 3 #define TSideUnknown 4 #define TEnemy 5 #define TFriendly 6 #define TLogic 7 enum { DESTRUCTENGINE = 2, DESTRUCTDEFAULT = 6, DESTRUCTWRECK = 7, DESTRUCTTREE = 3, DESTRUCTTENT = 4, STABILIZEDINAXISX = 1, STABILIZEDINAXESXYZ = 4, STABILIZEDINAXISY = 2, STABILIZEDINAXESBOTH = 3, DESTRUCTNO = 0, STABILIZEDINAXESNONE = 0, DESTRUCTMAN = 5, DESTRUCTBUILDING = 1, }; class CfgPatches { class MY_Vehicles { units[] = {"MY_FirstPlane"}; weapons[] = {}; requiredAddons[] = {}; requiredVersion = 1.0; }; }; class CfgVehicleClasses { class MY_Airplanes { displayName = "My Airplanes"; }; }; class CfgVehicles { class Plane{class UserActions{};}; class MY_FirstPlane: Plane { vehicleClass = "MY_Airplanes"; simulation = "airplane"; _generalMacro = "Plane"; /*attenuationEffectType = "HeliAttenuation";*/ gearRetracting = 1; side = 1; displayName = "My First Airplane!"; model = "\test\model.p3d"; picture = ""; Icon = ""; scope = 2; faction = "BLU_F"; crew = "B_Soldier_F"; gunnerType="B_Soldier_F"; transportSoldier = 2; DriverAction = "Chopperlight_L_Static_H"; GunnerAction = "Chopperlight_L_Static_H"; GunnerInAction = "Chopperlight_L_Static_H"; getInAction = "GetInLow"; hasGunner = true; cargoIsCoDriver[] = {1,1}; cargoAction[] = {"Mi8_Cargo","Mi17_Cargo02"}; fuelCapacity = 10000; maxSpeed = 2420; acceleration = 200; noseDownCoef = 0; // how much goes nose down during turns landingSpeed = 170; nightVision = 1; //A3 enableGPS = 1; //A3 radarType = 4; //A3 LockDetectionSystem = 8; //A3 incomingMissileDetectionSystem = 16; //A3 irScanRangeMax = 10000; //A3 envelope[] = {0, 0.2, 1.2, 3, 5.1, 7, 7.3, 7, 6.3, 5.2, 3.8, 1.8, 0.5, 0}; aileronSensitivity = 1.2; // relative aileron sensitivity elevatorSensitivity = 0.9; // relative elevator sensitivity vtol = 3; class NewTurret; class Turrets { class MainTurret: NewTurret { commanding = -1; isCopilot = 1; gunnerName = "Instructor"; primaryGunner = 1; primaryObserver = 1; proxyIndex = 1; CanEject = "true"; memoryPointsGetInGunner = "pos gunner"; memoryPointsGetInGunnerDir = "pos gunner dir"; castGunnerShadow = 1; viewGunnerShadow = 1; gunnerAction = "Chopperlight_L_Static_H"; gunnerInAction = "Chopperlight_L_Static_H"; gunnerLeftHandAnimName = "throttle_rear"; gunnerRightHandAnimName = "stick_rear"; gunnerleftleganimname = "pedal_rear"; gunnerrightleganimname = "pedal_rear"; maxHorizontalRotSpeed = 8.2; maxVerticalRotSpeed = 8.2; stabilizedInAxes = 0; startEngine = 0; body = "main1turret"; gun = "main1gun"; animationSourceBody = "mainturret"; animationSourceGun = "maingun"; minElev = -90; maxElev = 15.0; initElev = -45; minTurn = -350; maxTurn = 350; initTurn = 0; soundServo[] = {"",0.01,1}; outGunnerMayFire = 1; inGunnerMayFire = 1; gunBeg = "ustihlavne1"; gunEnd = "konechlavne1"; memoryPointGunnerOptics = "ustihlavne1"; selectionFireAnim = ""; turretInfoType = "RscOptics_UAV_gunner"; gunnerForceOptics = 0; weapons[] = {}; magazines[] = {}; class OpticsOut { class ViewGunner { initFov = 1; minFov = 0.6; maxFov = 0.85; initAngleX = 0; minAngleX = -35; maxAngleX = 85; initAngleY = 0; minAngleY = -130; maxAngleY = 130; minMoveX = -0.2; maxMoveX = 0.2; minMoveY = -0.025; maxMoveY = 0.1; minMoveZ = -0.2; maxMoveZ = 0.2; visionMode[] = {"Normal","NVG"}; gunnerOpticsModel = ""; gunnerOpticsEffect[] = {}; stabilizedInAxes = 0; }; }; }; }; }; }; edit: Solved in model forum section https://forums.bistudio.com/topic/193276-gunner-problem/ Share this post Link to post Share on other sites