From what I think I see in the code
What you will get though is varying torque applied to the flipper while it travels from start to end position. Whether the flipper will reach full force depends on several factors, amount of angle rotation, flipper strength setting and coil ramp up setting. True if angle of rotation is too low, or flipper strength is too high or coil ramp up is too high, then yes, the flipper will not achieve full speed. I have no idea how long it takes for a flipper to rotate fully on a real pinball machine. Does the real pinball machine flipper achieve the full force of the solenoid being used? I have no idea on this either
Strength value is the maximum torque that the flipper can achieve.
CoilRampUp is a value used to vary the torque value applied to the flipper over time.
It looks like the physics calculation is done in 10 msec steps.
The torque value is incremented every 10 msec by this value, Strength/CoilRampup, until the maximum specified strength is reached, so:
- If Strength is 2100 and CoilRampUp is 3
- First 10 msec, torque applied is 2100/3 =700
- Next 10 msec torque is increased by that value, so currentValue + 2100/3 = 1400
- Next 10 msec torque is increased again by that value, so currentValue + 2100/3 = 2100
- If the flipper is still rotating, it remains at the max value of 2100
So.. If it takes less than 30 msec (maybe it's less than 20 msec) for the flipper to rotate to end you end up with a flipper strength of 700 then 1400 and its never get to full force of 2100
If the flipper takes less than 10 msec, then yeah using Strength of 700 and CoilRampUp of 0, would behave the same as using Strength/CoilRampUp values of 1400/2 or 2100/3 or 2800/4...
If you set CoilRampUp to 0, then torque is set immediately to the Strength value, 2100 in this example
Edited by gtxjoe, 29 December 2015 - 09:33 PM.