User Tools

Site Tools


tools:rotorlibafm_xml_tool_docs

This is an old revision of the document!


primary contacts = 3 desired static compression = 0.18 m supported_weight = 4500 * 9.81 / 3 = 14715 N springConstant = 14715 / 0.18 = 81750 N/m </code> Damper is normally copied from a similar BIS XML, then tuned. Too little damping causes bounce. Too much damping can make touchdown feel dead or cause odd settling.

8.5 Wheel Dimensions

Value How To Derive
Wheel radius Tyre diameter / 2. Measure the model or use real wheel data.
Wheel mass Real wheel/gear mass if known, otherwise baseline value.
RollAxis Wheel axle direction. Most main wheels use x=“1” y=“0” z=“0”.

For skids and hull points, the tool uses a small proxy radius because the RotorLib contact block still contains a Wheel element. Treat this as a contact-model proxy, not a visible wheel.

8.6 Friction And Brakes

Value Guidance
slidingFriction Higher values resist sideways sliding. Skids usually need higher friction than wheels.
resistanceTorqueNoBrake Rolling resistance with no brake.
resistanceTorqueFullBrake Brake resistance torque at full brake.
isBrakable True for wheels that should brake. Usually false for skids and hull points.

Taxi and landing rollout should be tuned in game. Friction values that look reasonable in XML can still produce bad ground behavior.

8.7 Steering

Use steering only where the contact physically steers.

Value Guidance
isSteerable True for steerable nose/tail wheels.
maxTorque Steering motor authority.
maxRotSpeed Steering rotation speed.
controllerGain Response gain. Too high may oscillate.
inverseRotation Flip if visual steering turns opposite to input.
keepCenter Usually true for nose wheels.

Skids and hull contacts should normally be non-steerable.

8.8 Damage Threshold

Damage thresholdLoad is the contact load where damage/failure should occur. Start around several times the static supported load per contact:

thresholdLoad = static_supported_load_per_contact * 3 to 6

Then tune hard landings. If normal landings break gear, raise it. If severe impacts never damage the gear, lower it.

9. Step 7: Export And Review

Export:

  1. XML.
  2. JSON input/profile.
  3. Authoring report.

Before testing:

  1. Confirm the XML is well formed.
  2. Confirm addon config points to the packed XML path.
  3. Confirm there are no local development paths such as Q:\ in the final addon config.
  4. Confirm imported baseline sections such as drive trains were preserved when needed.
  5. Confirm every estimated value is noted.

10. First In-Game Test Order

Use this order. Do not tune forward flight before ground and hover basics work.

  1. XML load: no RotorLib parse errors.
  2. Ground stance: correct height, no sinking, no bounce, no tip-over.
  3. Engine and rotor RPM: reaches target RPM, no runaway or immediate RPM collapse.
  4. Liftoff: plausible collective setting.
  5. Hover: stable enough to observe trim and control signs.
  6. Pedals: correct yaw sign and sufficient authority.
  7. Cyclic: correct pitch/roll sign and plausible response rate.
  8. Taxi/landing rollout: brakes, steering, skids, and hull points behave as intended.
  9. Forward flight: acceleration, trim, top speed, stabilizer effects.
  10. Autorotation and edge cases.

11. Common Problems

Symptom Check First
XML does not load XML syntax, schema names, packed path, RTDconfig path.
Aircraft sinks into ground Contact Z, SuspensionLength, radius, spring constant.
Aircraft bounces Damper, spring constant, maxCompression, contact placement.
Aircraft tips on ground Contact width/length, CG, missing skid/hull points.
Cannot lift Mass, rotor radius, RPM, collective range, lift tables, engine torque.
Climbs too aggressively Collective minimum, lift coefficients, rotor RPM, mass.
Spins uncontrollably Tail rotor sign, rotation direction, pedal mapping, tail rotor station.
Pitch or roll reversed A1/B1 signs, swash phase, rotor rotation direction.
Cyclic too twitchy Moments of inertia, cyclic range, dampers, flapping values.
RPM unstable Engine controller, torque, rotation resistance, drivetrain ratio.

12. Required Handoff Notes

Every RotorLib XML handoff should include:

  1. Target vehicle class.
  2. Final XML path.
  3. Baseline XML used.
  4. Values copied from baseline.
  5. Values measured from model.
  6. Values calculated from formulas.
  7. Values guessed or estimated.
  8. First in-game test results.
  9. Remaining risks.

If a value is not sourced, say so directly. A clear estimate is better than a false precision value.

tools/rotorlibafm_xml_tool_docs.1784470210.txt.gz · Last modified: by rock