Panda Bullet

Right, reading the force and torque applied to each of the two bodies is added only with version 2.81 of Bullet. We still use the version 2.80, so we can’t expose this information.

But you can get an estimate of the applied impulse using constraint.getAppliedImpulse(), which should be perfectly fine for your purpose.

Note: Bullet does support breaking of constraints (by setting a threshold for the maximum applied impulse). But back then when writing the bindings for Panda3D I didn’t find out who Bullet reports back the fact that a joint is broken, and since I didn’t want to have zombie objects I did not expose the whole breaking feature.