Jump to content
Bonezz

truck wheel floating

Recommended Posts

Hey all probably this been asked before but i couldnt find anything for what i need im converting a truck to arma and yes i know they dont support trucks and trailers but i wana do it so i have everything setup wheels spin in buldozer and i game they spin too but i have one wheel wheel_2_3 floating and i dont have an idea why i tweaked sprungMass and other stuff but didnt work.

 

heres a pic

https://gyazo.com/29c44612bd9b7cfc6813a31e07917502

 

model.cfg

Spoiler

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 pete_379_dc: Car
    {
        skeletonInherit="Car";
        isDiscrete = 1;
        skeletonBones[]=
        {
            "damagehide","",
            "drivewheel","",
            "volant","drivewheel",
            "ventilate","",
            "speed","",
            "oil","",
            "glass1","damagehide",
            "glass2","damagehide",
            "glass3","damagehide",
            "glass4","damagehide",
            "RGlass","damagehide",
            "LGlass","damagehide"
        };
    };
};


class CfgModels
{
    class Vehicle
    {
        sectionsInherit = "";
        sections[] = {};
        skeletonName = "";
    };
    class Car: Vehicle
    {
        sections[] = {};
        
        class Animations
        {
            // 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.99999;
            };
            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
            
            
            class Glass1_destruct    {source="HitGlass1"; selection="glass1"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class Glass2_destruct    {source="HitGlass2"; selection="glass2"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class Glass3_destruct    {source="HitGlass3"; selection="glass3"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class Glass4_destruct    {source="HitGlass4"; selection="glass4"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class RGlass_destruct    {source="HitRGlass"; selection="Rglass"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class LGlass_destruct    {source="HitLGlass"; selection="Lglass"; type="hide"; minValue = 0; maxValue = 1; minPhase=0; maxPhase=1; hideValue = 0.99;};
            class damageHide                                            {type="hide"; source="damage"; selection="damageHide"; sourceAddress = clamp; minValue = 0.0; maxValue = 1.0; minPhase=0; maxPhase=1; hideValue = 1.0;};
            
            class reverse_light
            {
                type="Hide";
                selection="reverse_light";
                sourceAddress="clamp";
                source="Gear";
                minValue = -1;
                maxValue = 0;
                hideValue = "0.2";
            };
        };
    };
    
    class pete_379_dc: Car
    {
        sections[]=
        {
            "glass1",
            "glass2",
            "glass3",
            "glass4",
            "RGlass",
            "LGlass",
            "motor",
            "p svetlo",
            "l svetlo",
            "zbytek",
            "camo1",
            "camo2",
            "podsvit pristroju",
            "backlight",
            "brakelight",
            "spz",
            "trunk",
            "door_1_1",
            "door_1_2",
            "door_2_1",
            "door_2_2",
            "damagehide",
            "palivo",
            "karoserie",
            "reverse_light",
            "wheel_1_1",
            "wheel_1_2",
            "wheel_1_3",
            "wheel_2_1",
            "wheel_2_2",
            "wheel_2_3",
            "rpm",
            "mph",
            "zadni_kapota",
            "pedall",
            "pedalr"
        };
        sectionsInherit="Car";
        skeletonName="pete_379_dc";
        class Animations:Animations
        {
            class IndicatorSpeed
            {
                animPeriod=0;
                type="rotation";
                source="speed";
                selection="speed";
                axis="speed_axis";
                memory=1;
                minValue=0.000000;
                maxValue=35;
                angle0=0.000000;
                angle1=5;
            };
            class IndicatorRPM
            {
                animPeriod=0;
                type="rotation";
                source="rpm";
                selection="rpm";
                axis="rpm_axis";
                memory=1;
                minValue=0.000000;
                maxValue=1.000000;
                angle0=0.000000;
                angle1=3.8;
            };
            class Ventilate: IndicatorRPM
            {
                selection="ventilate";
                axis="ventilate_axis";
                angle1="2* rad 360";
                sourceAddress="loop";
            };
            class IndicatorOilTemp: IndicatorRPM
            {
                source="rpm";
                selection="oil";
                axis="oil_axis";
                memory=0;
                maxValue=0.3;
                angle1="1.5";
            };
            class Fuel: IndicatorRPM
            {
                source="fuel";
                selection="fuel";
                axis="fuel_axis";
                memory=0;
                maxValue=1.000000;
                angle0=0;
                angle1=2.2;
            };
            
            class DrivingWheel: Rotation
            {
                source="drivingWheel";
                selection="drivewheel";
                axis="drivewheel_axis";
                minValue=-1;
                maxValue=1;
                angle0=(rad 80);
                angle1=(rad -80);
            };
            class reverse_light
            {
                type="Hide";
                selection="reverse_light";
                sourceAddress="clamp";
                source="Gear";
                minValue = -1;
                maxValue = 0;
                hideValue = "0.2";
            };
            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= 0.65;
                angle1= -0.65;
            };
            class Steering_2_1: Steering_1_1
            {
                selection="wheel_2_1_steering";
                axis="wheel_2_1_steering_axis";
            };
            
            class Wheel_1_1                {selection="wheel_1_1"; axis="wheel_1_1_axis"; type="rotationX"; source="wheel"; memory=1; sourceAddress="loop"; minValue=0; maxValue=1; angle0=0; angle1="rad -360";};
            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_1_4: Wheel_1_1    {selection="wheel_1_4"; axis="wheel_1_4_axis";};
            class wheel_2_1: Wheel_1_1    {selection="wheel_2_1"; axis="wheel_2_1_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_2_4: Wheel_1_1    {selection="Wheel_2_4"; axis="wheel_2_4_axis";};
            
            class Wheel_1_1_Damper                        {selection="wheel_1_1_damper_land"; axis="wheel_1_1_damper_axis"; offset0= "0.5"; offset1= "-0.3"; type="translation"; source="damper"; animPeriod = 1; minValue="0"; maxValue="1"; memory=1;};
            class wheel_1_2_Damper: Wheel_1_1_Damper    {selection="wheel_1_2_damper_land"; axis="wheel_1_2_damper_axis";};
            class wheel_1_3_Damper: Wheel_1_1_Damper    {selection="wheel_1_3_damper_land"; axis="wheel_1_3_damper_axis";};
            class wheel_1_4_Damper: Wheel_1_1_Damper    {selection="wheel_1_4_damper_land"; axis="wheel_1_4_damper_axis";};
            class wheel_2_1_Damper: Wheel_1_1_Damper    {selection="wheel_2_1_damper_land"; axis="wheel_1_1_damper_axis";};
            class Wheel_2_2_Damper: Wheel_1_1_Damper    {selection="wheel_2_2_damper_land"; axis="wheel_2_2_damper_axis";};
            class wheel_2_3_Damper: Wheel_1_1_Damper    {selection="wheel_2_3_damper_land"; axis="wheel_2_3_damper_axis";};
            class wheel_2_4_Damper: Wheel_1_1_Damper    {selection="wheel_2_4_damper_land"; axis="wheel_2_4_damper_axis";};
        };
    };
};

physx.hpp

Spoiler

		/// splendid tutorial by RedPhoenix could be found at
		/// http://forums.bistudio.com/showthread.php?165390-Tutorial-Creating-Custom-Engine-Gearbox-and-Suspension-Vehicle-configuration

		thrustDelay            	= 0.2; 		/// initial delay to cause lesser slip when on 1st gear - thrust goes from zero to full in this time
		brakeIdleSpeed         	= 1.78; 	/// under what speed (in m/s) does the brake apply for a vehicle without thrust
		maxSpeed               	= 250; 		/// vehicle can go a bit over, but dramatically decreases thrust
		fuelCapacity           	= 80;
		wheelCircumference     	= 2.277; 	/// diameter of 725

		antiRollbarForceCoef	= 0; 	/// how strong is the anti-roll bar of vehicle preventing it to lose grip in turns (not any magical stuff, real ARB)
		antiRollbarForceLimit	= 0; 	/// highest possible force of ARB
		antiRollbarSpeedMin 	= 0; 	/// the roll bar force gets from zero to full in range of min and max speed
		antiRollbarSpeedMax		= 0;  	/// this simulates losing grip at high speed turns
		
		selectionBackLights = "backlight";
		selectionBrakeLights = "brakelight";

		/// Gearbox and transmission  via PhysX
		idleRpm = 600; // RPM at which the engine idles.
		redRpm = 6000; // RPM at which the engine redlines.

		class complexGearbox
		{
			GearboxRatios[] = {"R1",-6.575,"N",0,"D1",4.827,"D2",2.855,"D3",1.716,"D4",1.073,"D5",0.755,"D6",0.575};
				TransmissionRatios[] = {"High",5.69};
				gearBoxMode = "auto";
				moveOffGear = 1;
				driveString = "D";
				neutralString = "N";
				reverseString = "R";


		};

		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		/// PhysX parameters
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// <Description>: Defines simulation type of the vehicle. PhysX simulation ends with letter "x", "carx", "tankx" ...
		// <Type>: string
		// <Default>: (required)
		simulation = "carx";

		// <Description>: Defines how much dampers react to random little bumps on surface. It's only visual effect, doesn't influence drive simulation,
		// only taken into account when calculating damper animation.
		// <Type>: float
		// <Default>: 0.0
		dampersBumpCoef = 0.05;

		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// Differential parameters
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// <Description>: A number of differential types are supported: 4-wheel drive with open differential, 4-wheel drive with limited slip, front-wheel drive
		// with open differential, front-wheel drive with limited slip, rear-wheel drive with open differential, rear-wheel drive with limited slip.
		// <Type>: string; acceptable values: "all_open", "all_limited", "front_open", "front_limited", "rear_open", "rear_limited"
		// <Default>: "all_limited"
		differentialType = "all_open";

		// <Description>: Ratio of engine power that goes to front wheels out of total power for 4-wheel drive differentials.
		// Choosing a value greater than 0.5 delivers more torque to the front wheels, while choosing a value less than 0.5
		// delivers more torque to the rear wheels. This value is ignored for front-wheel drive and rear-wheel drive differentials.
		// <Type>: float
		// <Default>: 0.5
		frontRearSplit = 0.5;

		// <Description>: This is the largest possible relative difference between speed of front wheels. It helps to have outside wheels a bit faster
		// during the turns, but it prevents the faster wheel to take all the power while sliding. The power is shifted to slower wheel once the value is reached.
		// Locked differential has value of 1, the softer is the lock the greater should the value be.
		// This value is ignored except for front-wheel drive or four wheel drive with limited slip.
		// A good starting value is around 1.3.
		// <Type>:
		// <Default>:
		frontBias = 1.5;

		// <Description>: This is similar to frontBias except that it refers to the rear wheels.
		// This value is ignored except for rear-wheel drive or four wheel drive with limited slip.
		// A good starting value is around 1.3.
		// <Type>: float
		// <Default>: 1.3
		rearBias = 1.3;

		// <Description>: This value is similar to the frontBias and rearBias, except that it refers to the sum of the front wheel rotation speeds and the sum
		// of the rear wheel rotation speeds.
		// This value is ignored except for four wheel drive with limited slip.
		// A good starting value is around 1.3.
		// <Type>: float
		// <Default>: 1.3
		centreBias = 1.3;

		// <Description>: How fast is engine power distributed to the wheels. Stronger values mean more aggressive drive performance inclining to
		// slip a little while changing gears while weaker values are better for comfortable seamless ride.
		// <Type>: float
		// <Default>: 10.0
		clutchStrength = 15.0;

		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// Engine parameters
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// <Description>: Power of the engine in kW.
		// <Type>: float
		// <Default>: (required)
		enginePower = 410;


		// <Description>: This is the maximum rotational speed of the engine expressed in radians per second. It could be calculated from maximum
		// engine RPM like this:
		// maxOmega = (maxRpm*2*Pi)/60.
		// <Type>: float
		// <Default>: 600 which is cca 6000 rounds per minute.
		maxOmega = 720;

		// <Description>: This is the maximum torque that is ever available from the engine. This is expressed in Newton metres.
		// <Type>: float
		// <Default>: value calculated from enginePower according to http://en.wikipedia.org/wiki/Horsepower#Relationship_with_torque
		peakTorque = 350;

		// <Description>: These three values describe internal damping of the engine. Bigger values mean greater damping. Clutch disengaged value
		// is used while shifting gears, engine interpolates between clutch engaged and full throttle values according to throttle input.
		// We tend to use slightly lower clutch engaged values because it allows cars to turn more smoothly.
		// Typical values in range (0.25,3). The simulation can become unstable with damping rates of 0.
		// <Type>: float, float, float
		// <Default>: 0.08, 2.0, 0.35
		dampingRateFullThrottle = 0.08;
		dampingRateZeroThrottleClutchEngaged = 0.35;
		dampingRateZeroThrottleClutchDisengaged = 0.35;

		// <Description>: This is a graph of peak torque versus engine rotational speed.
		// The x-axis of the curve is the relative engine speed; that is, the engine speed divided by the maximum engine speed. The y-axis of the curve is a
		// multiplier in range (0,1) that is used to scale the peak torque. It is good to keep the values in mind while setting changeGearMinEffectivity.
		// <Type>: Array[i][2] where i = number of samples, maximum 8;
		// <Default>: {{0.0, 0.8}, {0.33, 1.0}, {1.0, 0.8}}
		torqueCurve[] = {{0.000, 0.000}, {0.178, 0.800}, {0.250, 1.0}, {0.461, 0.900}, {0.900, 0.800}, {1.000, 0.300}};

		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// Gearbox parameters
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// <Description>: Value of minimal gear effectivity to hold current gear. If there is better gear and effectivity is below this value then change gear.
		// <Range>: (0,1)
		// <Type>: Array[i] where i = number of gears
		// <Default>: 0.95 for every value (Neutral = 0.15 Not sure how important this is but we want to kick out of neutral very quickly)
		changeGearMinEffectivity[]   = {0.95, 0.15, 0.95, 0.95, 0.95, 0.95, 0.95};

		// <Description>: The switch time describes how long it takes (in seconds) for a gear change to be completed. This needs to be set to aggresive shifting
		// or it would cause issues while trying to run aggressively (mainly during evading the enemies).
		// <Type>: float
		// <Default>: 0.01
		switchTime = 0.31;

		// <Description>: Set the latency time of the gearbox, specified in s.
		// This is used to prevent instant shifting after changing gears - there is some power loss during gear change and it could seem that
		// previous gear is better for a brief time after shifting.
		// <Type>: float
		// <Default>: 2.0
		latency = 1.0;

		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		// Wheels parameters
		/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		class Wheels
		{
			class L1
			{
				boneName = "wheel_1_1_damper";
				steering = 1;
				side = "left";
				center = "wheel_1_1_axis";
				boundary = "wheel_1_1_bound";
				width = "0.2";
				mass = 80;
				MOI = 40;
				dampingRate = 0.1;
				dampingRateDamaged = 1.0;
				dampingRateDestroyed = 1000.0;
				maxBrakeTorque = 7500;
				maxHandBrakeTorque = 0;
				suspTravelDirection[] = {0,-1,0};
				suspForceAppPointOffset = "wheel_1_1_axis";
				tireForceAppPointOffset = "wheel_1_1_axis";
				maxCompression = 0.15;
				mMaxDroop = 0.15;
				sprungMass = 2000;
				springStrength = 94000;
				springDamperRate = 9000;
				longitudinalStiffnessPerUnitGravity = 10000;
				latStiffX = 25;
				latStiffY = 180;
				frictionVsSlipGraph[] = {{ 0,1 },{ 0.5,1 },{ 1,1 }};
			};
			class L2: L1
			{
				boneName = "wheel_1_2_damper";
				steering = 0;
				center = "wheel_1_2_axis";
				boundary = "wheel_1_2_bound";
				suspForceAppPointOffset = "wheel_1_2_axis";
				tireForceAppPointOffset = "wheel_1_2_axis";
				sprungMass = 1750;
				springStrength = 34000;
				springDamperRate = 9000;
			};
			class L3: L2
			{
				boneName = "wheel_1_3_damper";
				steering = 0;
				center = "wheel_1_3_axis";
				boundary = "wheel_1_3_bound";
				suspForceAppPointOffset = "wheel_1_3_axis";
				tireForceAppPointOffset = "wheel_1_3_axis";
				maxHandBrakeTorque = 75000;
			};
			class R1: L1
			{
				boneName = "wheel_2_1_damper";
				center = "wheel_2_1_axis";
				boundary = "wheel_2_1_bound";
				suspForceAppPointOffset = "wheel_2_1_axis";
				tireForceAppPointOffset = "wheel_2_1_axis";
				steering = 1;
				side = "right";
			};
			class R2: L2
			{
				boneName = "wheel_2_2_damper";
				steering = 0;
				center = "wheel_2_2_axis";
				boundary = "wheel_2_2_bound";
				suspForceAppPointOffset = "wheel_2_2_axis";
				tireForceAppPointOffset = "wheel_2_2_axis";
				side = "right";
				maxHandBrakeTorque = 0;
			};
			class R3: R2
			{
				boneName = "wheel_2_3_damper";
				steering = 0;
				center = "wheel_2_3_axis";
				boundary = "wheel_2_3_bound";
				suspForceAppPointOffset = "wheel_2_3_axis";
				tireForceAppPointOffset = "wheel_2_3_axis";
				maxHandBrakeTorque = 75000;
				sprungMass = 1750;
				springStrength = 34000;
				springDamperRate = 9000;
			};
		};

 

please if anyone can help let me know.

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

×