Jump to content
Sign in to follow this  
spectrersg

ShipX Engine Cutting in and out

Recommended Posts

Hi all,

I'm having issues with my engine. My engine cuts in and out after it hits some sort of artificial limit that I dont have in place as far as I'm aware. Does anyone know why my ship using the shipx physics does this? In the video linked below you can listen to the engine cutting out and then cutting back in. When it cuts out and cuts in, I have no rudder control. So, what gives? Why is my engine cutting out (mind you, its still on. Just not providing thrust/power)?

TwitchTV video link

My mass is 150000 just to get the boat to sit properly. This is vastly high compared to what it is IRL.

My physX/gearbox config is below:

waterEffectSpeed = 1;

engineEffectSpeed = 1;

waterFastEffectSpeed = 10;

steerAheadSimul = 0.5;

steerAheadPlan = 1.0;

predictTurnPlan = 3.0;

predictTurnSimul = 1.5;

brakeDistance = 30.0;

turnCoef = 1;

thrustDelay = .01;

AntiRollbarForceCoef = 1;

AntiRollbarForceLimit = 40;

AntiRollbarSpeedMin = 1;

AntiRollbarSpeedMax = 200;

overSpeedBrakeCoef = 0.5;

engineShiftY = -0.11;

waterLeakiness = 55.5;

waterLinearDampingCoefY = 2;

waterLinearDampingCoefX = 2;

waterAngularDampingCoef = 2;

waterResistanceCoef = 0.005;

rudderForceCoef = 1;

rudderForceCoefAtMaxSpeed = .5;

maxSpeed = 180;

acceleration = 20;

idleRpm = 200;

redRpm = 3900;

enginePower = 5500;

maxOmega = 4500;

peakTorque = 3500;

class complexGearbox

{

GearboxRatios[] = {"R1", -5.367, "N", 0, "D1", 5.367, "D2", 3.67, "D3", 2.238, "D4", 1.00, "D5", 0.8}; //These relate to real world gear ratios, nothing fancy here

TransmissionRatios[] = {"High", 5.0}; //unknown?

gearBoxMode = "auto"; //changing it has no effect yet

moveOffGear = 1; //unknown?

driveString = "D"; //Must be for some kind of gear indicator

neutralString = "N"; //Must be for some kind of gear indicator

reverseString = "R"; //Must be for some kind of gear indicator

gearUpMaxCoef = 0.8; //possibly to do with shift points /full throttle

gearDownMaxCoef = 0.5; //possibly to do with shift points /full throttle

gearUpMinCoef = 0.45; //possibly to do with shift points /light throttle

gearDownMinCoef = 0.15; //possibly to do with shift points /light throttle

transmissionDelay = 1; //1 of a few settings that control shifting

};

A note: I tried removing the gearbox completely, and although it went to it's maxspeed of 180, or close to it, the engine STILL cut off and I had to wait till it hit like ~35 kph for it to kick back in.

Share this post


Link to post
Share on other sites
Hi all,

I'm having issues with my engine. My engine cuts in and out after it hits some sort of artificial limit that I dont have in place as far as I'm aware. Does anyone know why my ship using the shipx physics does this? In the video linked below you can listen to the engine cutting out and then cutting back in. When it cuts out and cuts in, I have no rudder control. So, what gives? Why is my engine cutting out (mind you, its still on. Just not providing thrust/power)?

TwitchTV video link

My mass is 150000 just to get the boat to sit properly. This is vastly high compared to what it is IRL.

My physX/gearbox config is below:

waterEffectSpeed = 1;

engineEffectSpeed = 1;

waterFastEffectSpeed = 10;

steerAheadSimul = 0.5;

steerAheadPlan = 1.0;

predictTurnPlan = 3.0;

predictTurnSimul = 1.5;

brakeDistance = 30.0;

turnCoef = 1;

thrustDelay = .01;

AntiRollbarForceCoef = 1;

AntiRollbarForceLimit = 40;

AntiRollbarSpeedMin = 1;

AntiRollbarSpeedMax = 200;

overSpeedBrakeCoef = 0.5;

engineShiftY = -0.11;

waterLeakiness = 55.5;

waterLinearDampingCoefY = 2;

waterLinearDampingCoefX = 2;

waterAngularDampingCoef = 2;

waterResistanceCoef = 0.005;

rudderForceCoef = 1;

rudderForceCoefAtMaxSpeed = .5;

maxSpeed = 180;

acceleration = 20;

idleRpm = 200;

redRpm = 3900;

enginePower = 5500;

maxOmega = 4500;

peakTorque = 3500;

class complexGearbox

{

GearboxRatios[] = {"R1", -5.367, "N", 0, "D1", 5.367, "D2", 3.67, "D3", 2.238, "D4", 1.00, "D5", 0.8}; //These relate to real world gear ratios, nothing fancy here

TransmissionRatios[] = {"High", 5.0}; //unknown?

gearBoxMode = "auto"; //changing it has no effect yet

moveOffGear = 1; //unknown?

driveString = "D"; //Must be for some kind of gear indicator

neutralString = "N"; //Must be for some kind of gear indicator

reverseString = "R"; //Must be for some kind of gear indicator

gearUpMaxCoef = 0.8; //possibly to do with shift points /full throttle

gearDownMaxCoef = 0.5; //possibly to do with shift points /full throttle

gearUpMinCoef = 0.45; //possibly to do with shift points /light throttle

gearDownMinCoef = 0.15; //possibly to do with shift points /light throttle

transmissionDelay = 1; //1 of a few settings that control shifting

};

A note: I tried removing the gearbox completely, and although it went to it's maxspeed of 180, or close to it, the engine STILL cut off and I had to wait till it hit like ~35 kph for it to kick back in.

try rising or lowering engineShiftY = -0.11

The reason it cuts out is because the engine is leaving the water thus unable to produce trust.

Share this post


Link to post
Share on other sites

I set it to -.9 and it still did it, tried again with setting it to -10 and now my bow lifts up out of the water and into the air, but it seems to not want to cut in and out anymore. So is the sweetspot I'm looking for between those two? Or am I going in the wrong direction?

Share this post


Link to post
Share on other sites

You appear to be at the cutting edge of experimentation ....... Hence the rest of us are just (unfortunately) observing your problems.

I personally am going to wait for the official tools and hopefully some BI provided BIKI knowledge.

Share this post


Link to post
Share on other sites

Amen to that Gnat.

As a follow up, does anyone know how to simulate roll in a boat without using the new physx?

Share this post


Link to post
Share on other sites

Easy if youre not using PhysX mode

If you are using Landcontact points to float your boat, simply animate them to tilt left/right as you use rudder.

If you are using normal Geomtry lod to float your boat, again simply animate the some of the lod to "push" one side up, other down.

..... Actually I don't remember the tests on that last one, but should work.

Edit sorry, forgot, mix it with another animation (onto same points or geometry) linked to Speed and you can damp the effect when there no speed.

Share this post


Link to post
Share on other sites

Thanks for the advise Gnat, I'm going to continue to tweak and get it working with shipx info, but in the meantime would you mind elaborating on the use of the Geo LOD method?

Share this post


Link to post
Share on other sites

I'm not quite sure, but I think it could be because your maxOmega (Angular Velocity) doesn't fit to your maxRPM.

Try adding this into your vehicle class:

torqueCurve[] = {

{0 , 0},

{0.14 , 0.7},

{0.29 , 1},

{0.43 , 1},

{0.57 , 1},

{0.71 , 0.9},

{0.86 , 0.7},

{1 , 0.3},

};

maxOmega = 408.41;

enginePower = 3408;

peakTorque = 6800;

idleRpm = 500;

redRpm = 3900;

thrustDelay = 1.14;

It's just a guess, more or less.

Remove also the anti-rollbar parameter. You won't need them in a boat.

Edited by RedPhoenix

Share this post


Link to post
Share on other sites
but in the meantime would you mind elaborating on the use of the Geo LOD method?

Geo LOD for boats are generally simple, almost box like. They typically don't protrude below the water line.

So for animating, imagine the GEO lod is just 1 box. The lower left edge of the box we'll name LL, the lower right edge of the box well name LR.

If you animate/rotate or translate the LL "upwards" the boat will tilt to the left.

If you animate/rotate or translate the LR "upwards" the boat will tilt to the right.

If you lift the rear more than the front, then you get similar to a full power bow raise "twist".

Its also how I simulated damage to my frigates, slowly tilt in one direction, in proportion to the damage taken.

Share this post


Link to post
Share on other sites

I've gotten the boat's engine adjusted where it does not cut in/out. BIS, if you see this just before the engine is above the waterline does not mean it shuts off/cuts out.

Moreover, my boat has a mass of 130000. If I set it to it's real life weight, the boat hovers above the waterline - the physic's isn't adjusted properly methinks. The boat IRL is 57 tons operationally. I did a quick google calculation to convert the short tonnage over to kg (which is what I assume to be the unit the 'mass' in O2 is referring to), and it turned out to be about 52000 kg. Using that as the mass, the boat hovers above the water. I had to increase the mass to 130000 from 52000 to get it to sit properly in the water. So thats the new mass.

Being told that the enginepower is NOT horsepower, but kW, I took the 2285 engine doubled it (since it uses two of those) and took the total HP and converted to kW and got: 4516(hp)=> 3400 (kW). However, that's based on its 52000kg IRL weight. So I'm toying with it.

Red, would you possibly give me another torque/maxomega/enginepower based on the 130,000kg weight it uses in game?

Reference link here.

Video on how it should ride (

) just the first few moments.

Some more questions I'd like input on:

  • I'm a little confused on how to define/adjust the reverse speed? Is that the ration in the R1 of the gearbox that needs to be adjusted?
  • What variables define the braking distance and efficiency when it interacts with the shipx simulation. Right now when I hold S to brake the bow pitches down and the stern kicks up like a car. I know to a certain extend its real but is there a way to define such a 'brakeLinearDamping' as it pertains to the shipx?
  • Is there a way to limit the the amount of roll the boat has when using the A and D keys? Right now you can roll it over and capsize if you're careless like in a A3 standard car at high speeds.

Edited by SpectreRSG

Share this post


Link to post
Share on other sites

Red, would you possibly give me another torque/maxomega/enginepower based on the 130,000kg weight it uses in game?

Try simply doubling the values for torque and hp (so like it would have 4 engines). That should do the trick. If no, add some hp and Nm's more, until it works fine.

  • I'm a little confused on how to define/adjust the reverse speed? Is that the ration in the R1 of the gearbox that needs to be adjusted?

Yup. R1 is nothing more then "Reverse 1st", whereas D1 means "Drive 1st".

  • What variables define the braking distance and efficiency when it interacts with the shipx simulation. Right now when I hold S to brake the bow pitches down and the stern kicks up like a car. I know to a certain extend its real but is there a way to define such a 'brakeLinearDamping' as it pertains to the shipx?

It is because of a wrong Reverse Gear ratio. Simply try only one reverse gear with a lower ratio.

Set Transmission to ratio 1.0, then use for R1 at first "R1",5.0;

Arma3 shipX uses somehow Reverse gear to brake. I had the problem with the Motorboat as well, when I had a very big reverse ratio.

If that's not the reason it's an unbalanced waterResistanceCoef.

  • Is there a way to limit the the amount of roll the boat has when using the A and D keys? Right now you can roll it over and capsize if you're careless like in a A3 standard car at high speeds.

Yes. Change the X value off

waterLinearDampingCoefX = 4;

waterLinearDampingCoefY = 1.2;

Linear damping in the X and Y axis. Higher values in the X axis will make the ship corner better and slide to the side less. Higher values in the Y axis will reduce the amount the ship bounces up and down, but it will also sink more slowly.

http://manuals.bisimulations.com/vbs2/2-00/devref/#Adding_Models/How_to/AMHT_Physx.htm

Edited by RedPhoenix

Share this post


Link to post
Share on other sites

Yeah I've been toying with the waterLinear stuff. I have it to where I like it, the problem is that it is possible to roll over if not careful. Those I dont believe limit the actual pitch, but slow it down. I'd like it pitched.

waterLinearDampingCoefY = 48;

waterLinearDampingCoefX = 48;

waterAngularDampingCoef = 0.12;

waterResistanceCoef = 0.005;

rudderForceCoef = .015;

rudderForceCoefAtMaxSpeed = .1;

I know the settings are high, but it works. I'm looking for it to stop after a certain angular pitch though (I'm trying to make it idiot proof)

Share this post


Link to post
Share on other sites

Could be a problem of mass distribution as well.

Btw: If you like, I could take a look on your model. Just PM me if you like.

Share this post


Link to post
Share on other sites

Thats what I was thinking but it'd be so much easier if we could also add mass to points, not just shapes. Ie, like weighting down land contact points (unless thats already possible?)

---------- Post added at 14:10 ---------- Previous post was at 13:25 ----------

Also just to confirm, mass in O2 is in kg, correct?

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
Sign in to follow this  

×