Jump to content
scorch_052

Turret model turns currectly but crosshair does not

Recommended Posts

I am trying to create a car with an attached turret. I have defined the necessary selections in the model config and created the necessary points in the Memory LOD, however it is very possible i have made some mistake.

Here is my model config:

class Rotation{
   type = "rotation";
   memory = 1;
   minValue = 0;
   maxValue = 1;
   angle0 = 0;
   angle1 = 1;
};
class CfgSkeletons
{
   class Default
   {
       isDiscrete = 1;
       skeletonInherit = "";
       skeletonBones[] = {};
   };
   class Vehicle : Default {};
   class Car : Vehicle {
       skeletonBones[]=
       {
           "drivewheel","",


           "wheel_1_1_damper_land","",
           "wheel_1_2_damper_land","",
           "wheel_1_3_damper_land","",
           "wheel_1_4_damper_land","",


           "wheel_2_1_damper_land","",
           "wheel_2_2_damper_land","",
           "wheel_2_3_damper_land","",
           "wheel_2_4_damper_land","",


           "wheel_1_1_damper","wheel_1_1_damper_land",
           "wheel_1_2_damper","wheel_1_2_damper_land",
           "wheel_1_3_damper","wheel_1_3_damper_land",
           "wheel_1_4_damper","wheel_1_4_damper_land",


           "wheel_2_1_damper","wheel_2_1_damper_land",
           "wheel_2_2_damper","wheel_2_2_damper_land",
           "wheel_2_3_damper","wheel_2_3_damper_land",
           "wheel_2_4_damper","wheel_2_4_damper_land",


           "wheel_1_1_steering","wheel_1_1_damper",
           "wheel_1_2_steering","wheel_1_2_damper",
           "wheel_1_3_steering","wheel_1_3_damper",
           "wheel_1_4_steering","wheel_1_4_damper",


           "wheel_2_1_steering","wheel_2_1_damper",
           "wheel_2_2_steering","wheel_2_2_damper",
           "wheel_2_3_steering","wheel_2_3_damper",
           "wheel_2_4_steering","wheel_2_4_damper",


           "wheel_1_1","wheel_1_1_steering",
           "wheel_1_2","wheel_1_2_steering",
           "wheel_1_3","wheel_1_3_steering",
           "wheel_1_4","wheel_1_4_steering",


           "wheel_2_1","wheel_2_1_steering",
           "wheel_2_2","wheel_2_2_steering",
           "wheel_2_3","wheel_2_3_steering",
           "wheel_2_4","wheel_2_4_steering",


           "wheel_1_1_unhide","wheel_1_1",
           "wheel_1_2_unhide","wheel_1_2",
           "wheel_1_3_unhide","wheel_1_3",
           "wheel_1_4_unhide","wheel_1_4",


           "wheel_2_1_unhide","wheel_2_1",
           "wheel_2_2_unhide","wheel_2_2",
           "wheel_2_3_unhide","wheel_2_3",
           "wheel_2_4_unhide","wheel_2_4",


           "wheel_1_1_hide","wheel_1_1",
           "wheel_1_2_hide","wheel_1_2",
           "wheel_1_3_hide","wheel_1_3",
           "wheel_1_4_hide","wheel_1_4",


           "wheel_2_1_hide","wheel_2_1",
           "wheel_2_2_hide","wheel_2_2",
           "wheel_2_3_hide","wheel_2_3",
           "wheel_2_4_hide","wheel_2_4",


           "OtocVez","",
           "OtocHlaven","OtocVez",


           "damageHide","",
           "damageVez","OtocVez",
           "damageHlaven","OtocHlaven",


           "ukaz_rychlo","",
           "ukaz_rychlo2","",
           "ukaz_rpm","",
           "mph","",
           "rpm","",
           "fuel","",
           "fuel_1","",
           "fuel_01","",
           "fuel_2","",
           "fuel_3","",
           "prop_01","",
           "prop_02","",
           "prop_2","",
           "prop_1","",
           "glass1","damageHide",
           "glass2","damageHide",
           "glass3","damageHide",
           "glass4","damageHide"
       };
   };
};


class CfgModels
{
   class Default
   {
       sectionsInherit = "";
       sections[] = {};
       skeletonName = "";
   };
   class Vehicle: Default
   {
       sections[] =
       {
           "cislo",
           "grupa",
           "side",
           "sektor",
           "clan",
           "clan_sign",
           "podsvit pristroju",
           "poskozeni",
           "L svetlo",
           "P svetlo",
           "zasleh"
       };
   };
   class Car: Vehicle
   {
       htMin = 60;        // Minimum half-cooling time (in seconds)
       htMax = 180;    // Maximum half-cooling time (in seconds)
       afMax = 100;    // Maximum temperature in case the model is alive (in celsius)
       mfMax = 8;        // Maximum temperature when the model is moving (in celsius)
       mFact = 1;        // Metabolism factor - number from interval <0, 1> (0 - metabolism has no influence, 1 - metabolism has full influence (no other temperature source will be considered)).
       tBody = 150;    // Metabolism temperature of the model (in celsius)


       sections[]=
       {
           "ammo",
           "zadni svetlo",
           "brzdove svetlo",
           "spz",
           "motor",
           "body",
           "clan",
           "clan_sign",
           "zasleh",
           "Light_R",
           "Light_L",
           "podsvit pristroju",
           "glass1",
           "glass2",
           "glass3",
           "glass4",
           "glass5",
           "glass6"
       };
       skeletonName="Car";
       class Animations
       {
           // destruct START
           class damageHide
           {
               type="hide";
               source="damage";
               selection="damageHide";
               hideValue=1.0;
           };
           class damageHideVez:damageHide
           {
               selection="OtocVez";
           };
           class damageHideHlaven:damageHide
           {
               selection="OtocHlaven";
           };


           // Wheels START
           // Wheels Complete Destruct START
           class wheel_1_1_destruct
           {
               type="hide";
               selection="wheel_1_1_hide";
               source="HitLFWheel";
               minValue = 0; // upravit na 0.99
               maxValue = 1; // upravit na 1.0
               hidevalue = 0.1;
           };
           class wheel_1_2_destruct:wheel_1_1_destruct {source="HitLBWheel";selection="wheel_1_2_hide";};
           class wheel_1_3_destruct:wheel_1_1_destruct {source="HitLMWheel";selection="wheel_1_3_hide";};
           class wheel_1_4_destruct:wheel_1_1_destruct {source="HitLF2Wheel";selection="wheel_1_4_hide";};


           class wheel_2_1_destruct:wheel_1_1_destruct {source="HitRFWheel";selection="wheel_2_1_hide";};
           class wheel_2_2_destruct:wheel_1_1_destruct {source="HitRBWheel";selection="wheel_2_2_hide";};
           class wheel_2_3_destruct:wheel_1_1_destruct {source="HitRMWheel";selection="wheel_2_3_hide";};
           class wheel_2_4_destruct:wheel_1_1_destruct {source="HitRF2Wheel";selection="wheel_2_4_hide";};


           class wheel_1_1_destruct_unhide
           {
               type="hide";
               selection="wheel_1_1_unhide";
               source="HitLFWheel";
               minValue = 0; 
               maxValue = 1; 
               hidevalue = 0.00000;
               UnHidevalue = 1.00000;
           };
           class wheel_1_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLBWheel";selection="wheel_1_2_unhide";};
           class wheel_1_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLMWheel";selection="wheel_1_3_unhide";};
           class wheel_1_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLF2Wheel";selection="wheel_1_4_unhide";};


           class wheel_2_1_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRFWheel";selection="wheel_2_1_unhide";};
           class wheel_2_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRBWheel";selection="wheel_2_2_unhide";};
           class wheel_2_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRMWheel";selection="wheel_2_3_unhide";};
           class wheel_2_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRF2Wheel";selection="wheel_2_4_unhide";};


           // Wheels Complete Destruct END


           #define DamageOffset 0.2


           // Wheels Damage START
           class wheel_1_1_Damage:wheel_1_1_destruct
           {
               type="translation";
               axis="Basic_Damper_Destruct_Axis";
               memory=1;
               selection="wheel_1_1_damper";
               source="HitLFWheel";
               minValue = 0.0;
               maxValue = 1;
               offset0 = 0;
               offset1 = DamageOffset;
           };
           class wheel_1_2_Damage:wheel_1_1_Damage {source="HitLBWheel";selection="wheel_1_2_damper";};
           class wheel_1_3_Damage:wheel_1_1_Damage {source="HitLMWheel";selection="wheel_1_3_damper";};
           class wheel_1_4_Damage:wheel_1_1_Damage {source="HitLF2Wheel";selection="wheel_1_4_damper";};


           class wheel_2_1_Damage:wheel_1_1_Damage {source="HitRFWheel";selection="wheel_2_1_damper";};
           class wheel_2_2_Damage:wheel_1_1_Damage {source="HitRBWheel";selection="wheel_2_2_damper";};
           class wheel_2_3_Damage:wheel_1_1_Damage {source="HitRMWheel";selection="wheel_2_3_damper";};
           class wheel_2_4_Damage:wheel_1_1_Damage {source="HitRF2Wheel";selection="wheel_2_4_damper";};




           class wheel_1_1_Damper_Damage_BackAnim:wheel_1_1_Damage {selection="wheel_1_1_damper";offset1 = -1.2*DamageOffset;};
           class wheel_1_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLBWheel";selection="wheel_1_2_damper";};
           class wheel_1_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLMWheel";selection="wheel_1_3_damper";};
           class wheel_1_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLF2Wheel";selection="wheel_1_4_damper";};


           class wheel_2_1_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRFWheel";selection="wheel_2_1_damper";};
           class wheel_2_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRBWheel";selection="wheel_2_2_damper";};
           class wheel_2_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRMWheel";selection="wheel_2_3_damper";};
           class wheel_2_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRF2Wheel";selection="wheel_2_4_damper";};


           // Wheels Damage END
           // Wheels END


               //Glass Damage START
               class Glass1_destruct
               {
                   type="hide";
                   selection="glass1";
                   source="HitGlass1";
                   minValue = 0; 
                   maxValue = 1; 
                   hidevalue = 0.99999;
               };
               class Glass2_destruct:Glass1_destruct{selection="glass2";source="HitGlass2";};
               class Glass3_destruct:Glass1_destruct{selection="glass3";source="HitGlass3";};
               class Glass4_destruct:Glass1_destruct{selection="glass4";source="HitGlass4";};
               class Glass5_destruct:Glass1_destruct{selection="glass5";source="HitGlass5";};
               class Glass6_destruct:Glass1_destruct{selection="glass6";source="HitGlass6";};
               //Glass Damage END


           // destruct END
           class Fuel: Rotation
           {
               source="fuel";
               selection="fuel";
               axis="fuel_axis";
               maxValue=1;
               memory=1;
               angle0="rad -110";
               angle1=0;
           };
           class IndicatorSpeed: Rotation
           {
               source="speed";
               selection="mph";
               axis="mph_axis";
               memory=1;
               maxValue=38.900002;
               angle1="rad -265";
           };
           class IndicatorFuel: Rotation
           {
               type="rotation";
               source="fuel";
               selection="fuel_1";
               axis="fuel_1_axis";
               memory=1;
               minValue=0.000000;
               maxValue=1.000000;
               angle0=-0.087266;
               angle1=-1.658063;
           };
           class IndicatorRPM: Rotation
           {
               source="rpm";
               selection="rpm";
               axis="rpm_axis";
               memory=1;
               angle1="rad 80";
           };
           class DrivingWheel: Rotation
           {
               source="drivingWheel";
               selection="drivewheel";
               axis="drivewheel_axis";
               minValue=-1;
               maxValue=1;
               angle0=(rad 80);
               angle1=(rad -80);
           };
           class Steering_1_1
           {
               type="rotationY";
               source="drivingWheel";
               selection="wheel_1_1_steering";
               axis="wheel_1_1_steering_axis";
               memory=1;
               minValue= -1;
               maxValue= 1;
               angle0=1.047198;
               angle1=-1.047198;
           };
           class Steering_2_1: Steering_1_1
           {
               selection="wheel_2_1_steering";
               axis="wheel_2_1_steering_axis";
           };
           class Wheel_1_1
           {
               type="rotationX";
               source="wheel";
               selection="wheel_1_1";
               axis="wheel_1_1_axis";
               memory=1;
               sourceAddress="loop";
               minValue=0;
               maxValue=1;
               angle0=0;
               angle1="rad -360";
           };
           class wheel_2_1: Wheel_1_1
           {
               selection="wheel_2_1";
               axis="wheel_2_1_axis";
           };
           class wheel_1_2: Wheel_1_1
           {
               selection="wheel_1_2";
               axis="wheel_1_2_axis";
           };
           class wheel_1_3: Wheel_1_1
           {
               selection="wheel_1_3";
               axis="wheel_1_3_axis";
           };
           class Wheel_2_2: Wheel_1_1
           {
               selection="wheel_2_2";
               axis="wheel_2_2_axis";
           };
           class Wheel_2_3: Wheel_1_1
           {
               selection="wheel_2_3";
               axis="wheel_2_3_axis";
           };
           class Wheel_1_4: Wheel_1_1
           {
               selection="wheel_1_4";
               axis="wheel_1_4_axis";
           };
           class Wheel_2_4: Wheel_1_1
           {
               selection="wheel_2_4";
               axis="wheel_2_4_axis";
           };
           class Wheel_1_1_Damper
           {
               type="translation";
               source="damper";
               selection="wheel_1_1_damper_land";
               axis="posun wheel_1_1";
               animPeriod = 1;
               minValue="0";
               maxValue="1";
               offset0= "0.5";
               offset1= "-0.5";
               memory=1;
           };
           class wheel_2_1_Damper: Wheel_1_1_Damper
           {
               selection="wheel_2_1_damper_land";
           };
           class wheel_1_2_Damper: Wheel_1_1_Damper
           {
               selection="wheel_1_2_damper_land";
           };
           class Wheel_2_2_Damper: Wheel_1_1_Damper
           {
               selection="wheel_2_2_damper_land";
           };
           class daylights
           {
               type="hide";
               source="rpm";
               selection="daylights";
               minValue=-0.8;
               maxValue=0.2;
               unhidevalue=1;
               sourceAddress="clamp";
           };

           class reverse_light
           {
               type="Hide";
               selection="reverse_light";
               sourceAddress="clamp";
               source="Gear";
               minValue = -1;
               maxValue = 0;
               hideValue = "0.2";    
           };            
       };
   };
   class warthog: Car
   {
       skeletonName = "Car";
       sectionsInherit = "Car";
       sections[]=
       {
           "Camo1",
           "body",
           "karoserie",
           "palivo",
           "attach_mg",
           "attach_apc"
       };
       class Animations: Animations
       {
           // destruct START
           class damageHide
           {
               type="hide";
               source="damage";
               selection="damageHide";
               hideValue=1.0;
           };
           class damageHideVez:damageHide
           {
               selection="OtocVez";
           };
           class damageHideHlaven:damageHide
           {
               selection="OtocHlaven";
           };


           // Wheels START
           // Wheels Complete Destruct START
           class wheel_1_1_destruct
           {
               type="hide";
               selection="wheel_1_1_hide";
               source="HitLFWheel";
               minValue = 0; // upravit na 0.99
               maxValue = 1; // upravit na 1.0
               hidevalue = 0.99;
           };
           class wheel_1_2_destruct:wheel_1_1_destruct {source="HitLBWheel";selection="wheel_1_2_hide";};
           class wheel_1_3_destruct:wheel_1_1_destruct {source="HitLMWheel";selection="wheel_1_3_hide";};
           class wheel_1_4_destruct:wheel_1_1_destruct {source="HitLF2Wheel";selection="wheel_1_4_hide";};


           class wheel_2_1_destruct:wheel_1_1_destruct {source="HitRFWheel";selection="wheel_2_1_hide";};
           class wheel_2_2_destruct:wheel_1_1_destruct {source="HitRBWheel";selection="wheel_2_2_hide";};
           class wheel_2_3_destruct:wheel_1_1_destruct {source="HitRMWheel";selection="wheel_2_3_hide";};
           class wheel_2_4_destruct:wheel_1_1_destruct {source="HitRF2Wheel";selection="wheel_2_4_hide";};


           class wheel_1_1_destruct_unhide
           {
               type="hide";
               selection="wheel_1_1_unhide";
               source="HitLFWheel";
               minValue = 0; 
               maxValue = 1; 
               hidevalue = 0.0;
               UnHidevalue = 1.0;
           };
           class wheel_1_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLBWheel";selection="wheel_1_2_unhide";};
           class wheel_1_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLMWheel";selection="wheel_1_3_unhide";};
           class wheel_1_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLF2Wheel";selection="wheel_1_4_unhide";};


           class wheel_2_1_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRFWheel";selection="wheel_2_1_unhide";};
           class wheel_2_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRBWheel";selection="wheel_2_2_unhide";};
           class wheel_2_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRMWheel";selection="wheel_2_3_unhide";};
           class wheel_2_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRF2Wheel";selection="wheel_2_4_unhide";};


           // Wheels Complete Destruct END


           #define DamageOffset 0.2


           // Wheels Damage START
           class wheel_1_1_Damage:wheel_1_1_destruct
           {
               type="translation";
               axis="Basic_Damper_Destruct_Axis";
               memory=1;
               selection="wheel_1_1_damper";
               source="HitLFWheel";
               minValue = 0.0;
               maxValue = 1;
               offset0 = 0;
               offset1 = DamageOffset;
           };
           class wheel_1_2_Damage:wheel_1_1_Damage {source="HitLBWheel";selection="wheel_1_2_damper";};
           class wheel_1_3_Damage:wheel_1_1_Damage {source="HitLMWheel";selection="wheel_1_3_damper";};
           class wheel_1_4_Damage:wheel_1_1_Damage {source="HitLF2Wheel";selection="wheel_1_4_damper";};


           class wheel_2_1_Damage:wheel_1_1_Damage {source="HitRFWheel";selection="wheel_2_1_damper";};
           class wheel_2_2_Damage:wheel_1_1_Damage {source="HitRBWheel";selection="wheel_2_2_damper";};
           class wheel_2_3_Damage:wheel_1_1_Damage {source="HitRMWheel";selection="wheel_2_3_damper";};
           class wheel_2_4_Damage:wheel_1_1_Damage {source="HitRF2Wheel";selection="wheel_2_4_damper";};




           class wheel_1_1_Damper_Damage_BackAnim:wheel_1_1_Damage {selection="wheel_1_1_damper";offset1 = -1.2*DamageOffset;};
           class wheel_1_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLBWheel";selection="wheel_1_2_damper";};
           class wheel_1_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLMWheel";selection="wheel_1_3_damper";};
           class wheel_1_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLF2Wheel";selection="wheel_1_4_damper";};


           class wheel_2_1_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRFWheel";selection="wheel_2_1_damper";};
           class wheel_2_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRBWheel";selection="wheel_2_2_damper";};
           class wheel_2_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRMWheel";selection="wheel_2_3_damper";};
           class wheel_2_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRF2Wheel";selection="wheel_2_4_damper";};


           // Wheels Damage END
           // Wheels END


               //Glass Damage START
               class Glass1_destruct
               {
                   type="hide";
                   selection="glass1";
                   source="HitGlass1";
                   minValue = 0; 
                   maxValue = 1; 
                   hidevalue = 0.99;
               };
               class Glass2_destruct:Glass1_destruct{selection="glass2";source="HitGlass2";};
               class Glass3_destruct:Glass1_destruct{selection="glass3";source="HitGlass3";};
               class Glass4_destruct:Glass1_destruct{selection="glass4";source="HitGlass4";};
               class Glass5_destruct:Glass1_destruct{selection="glass5";source="HitGlass5";};
               class Glass6_destruct:Glass1_destruct{selection="glass6";source="HitGlass6";};
               //Glass Damage END


           // destruct END
           class Fuel: Rotation
           {
               source="fuel";
               selection="fuel";
               axis="fuel_axis";
               maxValue=1;
               memory=1;
               angle0="rad -110";
               angle1=0;
           };
           class IndicatorSpeed: Rotation
           {
               source="speed";
               selection="mph";
               axis="mph_axis";
               memory=1;
               maxValue=38.900002;
               angle1="rad -265";
           };
           class IndicatorFuel: Rotation
           {
               type="rotation";
               source="fuel";
               selection="fuel_1";
               axis="fuel_1_axis";
               memory=1;
               minValue=0.000000;
               maxValue=1.000000;
               angle0=-0.087266;
               angle1=-1.658063;
           };
           class IndicatorRPM: Rotation
           {
               source="rpm";
               selection="rpm";
               axis="rpm_axis";
               memory=1;
               angle1="rad 80";
           };
           class DrivingWheel: Rotation
           {
               source="drivingWheel";
               selection="drivewheel";
               axis="drivewheel_axis";
               minValue=-1;
               maxValue=1;
               angle0=(rad 80);
               angle1=(rad -80);
           };
           class Steering_1_1
           {
               type="rotationY";
               source="drivingWheel";
               selection="wheel_1_1_steering";
               axis="wheel_1_1_steering_axis";
               memory=1;
               minValue= -1;
               maxValue= 1;
               angle0=1.047198;
               angle1=-1.047198;
           };
           class Steering_2_1: Steering_1_1
           {
               selection="wheel_2_1_steering";
               axis="wheel_2_1_steering_axis";
           };
           class Wheel_1_1
           {
               type="rotationX";
               source="wheel";
               selection="wheel_1_1";
               axis="wheel_1_1_axis";
               memory=1;
               sourceAddress="loop";
               minValue=0;
               maxValue=1;
               angle0=0;
               angle1="rad -360";
           };
           class wheel_2_1: Wheel_1_1
           {
               selection="wheel_2_1";
               axis="wheel_2_1_axis";
           };
           class wheel_1_2: Wheel_1_1
           {
               selection="wheel_1_2";
               axis="wheel_1_2_axis";
           };
           class wheel_1_3: Wheel_1_1
           {
               selection="wheel_1_3";
               axis="wheel_1_3_axis";
           };
           class Wheel_2_2: Wheel_1_1
           {
               selection="wheel_2_2";
               axis="wheel_2_2_axis";
           };
           class Wheel_2_3: Wheel_1_1
           {
               selection="wheel_2_3";
               axis="wheel_2_3_axis";
           };
           class Wheel_1_4: Wheel_1_1
           {
               selection="wheel_1_4";
               axis="wheel_1_4_axis";
           };
           class Wheel_2_4: Wheel_1_1
           {
               selection="wheel_2_4";
               axis="wheel_2_4_axis";
           };
           class Wheel_1_1_Damper
           {
               type="translation";
               source="damper";
               selection="wheel_1_1_damper_land";
               axis="posun wheel_1_1";
               animPeriod = 1;
               minValue="0";
               maxValue="1";
               offset0= "0.5";
               offset1= "-0.5";
               memory=1;
           };
           class wheel_2_1_Damper: Wheel_1_1_Damper
           {
               selection="wheel_2_1_damper_land";
           };
           class wheel_1_2_Damper: Wheel_1_1_Damper
           {
               selection="wheel_1_2_damper_land";
           };
           class Wheel_2_2_Damper: Wheel_1_1_Damper
           {
               selection="wheel_2_2_damper_land";
           };
           class daylights
           {
               type="hide";
               source="rpm";
               selection="daylights";
               minValue=-0.8;
               maxValue=0.2;
               unhidevalue=1;
               sourceAddress="clamp";
           };

           class reverse_light
           {
               type="Hide";
               selection="reverse_light";
               sourceAddress="clamp";
               source="Gear";
               minValue = -1;
               maxValue = 0;
               hideValue = "0.2";    
           };

           class MainTurret 
           {
               type="rotationY";
               source="mainTurret";
               selection="OtocVez";
               axis="OsaVeze";
               animPeriod=0;
               minValue="rad -360";
               maxValue="rad +360";
               angle0="rad -360";
               angle1="rad +360";
               memory = 1;
           };    
           class MainGun: MainTurret 
           {
               type="rotationX";
               source="mainGun";
               selection="OtocHlaven";
               axis="Osa Hlavne";
           };    
           class MachineGun: Rotation
           {
               selection="otocHlavne";
               axis="axis_otocHlavne";
               angle1 = "rad 2000*43";
               source="Gatling";
           };
           class muzzleFlashROT
           {
               type="rotationZ";
               source="Gatling_flash";            //use ammo count as phase for animation
               sourceAddress="loop";     //loop when phase out of bounds
               selection="Zasleh";       //selection we want to rotate
               axis="";                  //no own axis - center of rotation is computed from selection
               centerFirstVertex=true;   //use first vertex of selection as center of rotation
               minValue=0;
               maxValue=4;               //rotation angle will be 360/4 = 90 degrees
               angle0="rad 0";
               angle1="rad 360";    
           };
       };
   };
};

Resolution LOD:

http://i.imgur.com/qrCxXcB.jpg (286 kB)

Memory LOD: (Konec Hlavne memPoint is defined)

http://i.imgur.com/OAhoAns.jpg (188 kB)

Let me know if any more information is needed. I would really like to figure this out.

Share this post


Link to post
Share on other sites

Here it is:

		class Turrets: Turrets		{
		class MainTurret:MainTurret
		{
			body 								= "OtocVez";
			gun 								= "OtocHlaven";
			gunAxis 							= "Osa Hlavne";
			gunBeg 								= "usti hlavne";
			gunEnd 								= "konec hlavne";
			minElev 							= -4;
			maxElev 							= 10;
			minTurn 							= -360;
			maxTurn 							= 360;
			initTurn							= 0;
			turretAxis 							= "OsaVeze";
					maxHorizontalRotSpeed		= 1.2;
					maxVerticalRotSpeed			= 1.2;
			gunnerAction						= "driver_boat01";
			gunnerInAction						= "driver_boat01";
			gunnerGetInAction					= "GetInMRAP_01";
			gunnerGetOutAction					= "GetOutMRAP_01"; 
			gunnerName							= "Gunner"; 
			hideWeaponsGunner					= false;
			soundServo[]						= {"",0.01,1};
			outGunnerMayFire					= 1;
			commanding							= 1;
			primaryGunner						= 1;
			memoryPointsGetInGunner				= "Pos Gunner";
			memoryPointsGetInGunnerDir			= "Pos Gunner dir";
			gunnerLeftHandAnimName				= "trigger";
			gunnerRightHandAnimName				= "trigger";
			memoryPointGun						= "machinegun";
			weapons[] 							= {"LMG_Minigun"};
			magazines[] 						= {"2000Rnd_65x39_Belt_Tracer_Yellow"};
			memoryPointGunnerOptics 			= "gunnerview";
			gunnerOpticsShowCursor 				= true;
			castGunnerShadow 					= 1;
			startEngine							= false;
		};
	};

Share this post


Link to post
Share on other sites

is the gunnerview memorypoint part of your OtocHlaven selection in O2?

You can make it alot easier/handier to find errors if you just rename all the czenglish stuff to english - you dont have to use those czech names anymore - you can use any name you want, as long as its consistent in the p3d, config and model.cfg

  • Like 1

Share this post


Link to post
Share on other sites

Yes, gunnerview is part of the OtocHlaven selection. Also, the only reason i'm using the czech names is because i was working from the sample models.

Share this post


Link to post
Share on other sites

What is exactly happening/not happening when you rotate the turret/gun ?

Share this post


Link to post
Share on other sites

Whenever i move my mouse, the turret rotates correctly. However, the crosshair and aiming point (where the rounds actually land) do not move and remain still.

Share this post


Link to post
Share on other sites

i had encountered this myself, although i don't know if its the same cause; in my case, i needed to select none, then reselect the points for the selection, and use 'redefine' in the rt-click menu. i often found oxygen to be flaky in saving my memorypoint selections, and did this often to ensure everything stayed grouped.

now, when you say, "... aiming point (where the rounds actually land)", do you mean the (virtual) 'barrel' doesn't rotate either? just the model of the turret moves?

Share this post


Link to post
Share on other sites
i had encountered this myself, although i don't know if its the same cause; in my case, i needed to select none, then reselect the points for the selection, and use 'redefine' in the rt-click menu. i often found oxygen to be flaky in saving my memorypoint selections, and did this often to ensure everything stayed grouped.

now, when you say, "... aiming point (where the rounds actually land)", do you mean the (virtual) 'barrel' doesn't rotate either? just the model of the turret moves?

Yes, the virtual barrel isn't moving. The actual model itself turns just fine.

Share this post


Link to post
Share on other sites

and you're absolutely sure that the memory points 'usti hlavne' & 'konec hlavne' are grouped with the memory point 'otocHlaven'? such that if you start with no points highlighted, and you click only on 'otocHlaven', the memorypoints for usti & konec highlight too?

Share this post


Link to post
Share on other sites

i changed it to fix this and it still doesnt work properly

Share this post


Link to post
Share on other sites

I had this problem as well. The way I fixed it was by swapping the gunBeg and gunEnd around. It definitely worked for me, the cursor was facing the wrong way until I swapped it.

Try this

gunBeg = "konec hlavne";
gunEnd = "usti hlavne";

Edited by deltagamer

Share this post


Link to post
Share on other sites

body = "MainTurret"; this is the actual gun portion thats is defined in your model.cfg
gun = "MainGun"; this was used as the actual turret housing for my project.
animationSourceBody = "MainTurret"; same as body
animationSourceGun = "MainGun"; same as gun. 

use the animations that are in the model config mainTurret handles up and down rotation (or vise versa) if you cant get it working i will try to catch you on steam one day and see if we cant figure somthing out.

Share this post


Link to post
Share on other sites
Working with UH 60 had the same problem, according to the information of our friend  :)

 

is the gunnerview memorypoint part of your OtocHlaven selection in O2?

You can make it alot easier/handier to find errors if you just rename all the czenglish stuff to english - you dont have to use those czech names anymore - you can use any name you want, as long as its consistent in the p3d, config and model.cfg

 is the gunnerview memorypoint part of your OtocHlaven selection in O2?

 

Adjusting gunpoint (Crosshair):
 
-Osaveze And OsaHlavne must be correctly set for alignment and synchronization of the "crosshair" (sight) of weapons in P3D and model.cfg.
 
-Osaveze And OsaHlavne redefine to OtocHlaven (group).
 
If not set correctly gun turns, but the crosshair gun will remain in the same direction
the shots will follow the direction of the crosshair, it determines the direction of the shot.
 
This was the result that solved my problem.
 
14212548_1737544379843564_75473032732971
 
14225549_1737544403176895_60153599728668

Share this post


Link to post
Share on other sites

I was very long fight with this and other around turret config problems anf this was reason (of course make selections in p3d is needed to but thismodel.cfg and turret body/gun/sources names are critical: 

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×