[Luanoid] Calculate Rot. Velocity on World

I’m using a forked version of Luanoid for a project of mine. It works great however I’ve run into one issue:

My character does not output a vertical force on the unanchored objects that it interacts with. For example:

In this image, you’d expect the Character’s Mass (red box) to be applied to anything directly below it (blue arrow), causing the teeter-totter to react with a rotation velocity (green arrow). This does not occur since Luanoid is using raycasting to keep the root of the Character afloat at a desired height (HipHeight).

How can I realistically apply a force on the blue part given the Character’s mass and the point of intersection of which the character is floating above?

1 Like

To create the rotational effect when standing on something, I think a VectorForce could be a suitable candidate. Add a VectorForce to the part and set ApplyAtCenterOfMass to false. Set the Attachment0 at the point of intersection, found perhaps through a ray or just at the feet of the player. Set the Force property to the product of the mass of the player and the gravity. Let me know how you get on :slight_smile:

5 Likes

I’ve implemented this, and it works great for non-anchored, non-constrained parts. However, it doesn’t seem to take affect on a part that is constrained with a HingeConstraint, even though that axis of movement is free.
example GIFs retracted
Perhaps this is actually a bug with HingeConstraint/VectorForce objects…

edit: nevermind, I just needed to mess around with some CustomPhysicalProperties on the constrained object, my character simply wasn’t heavy enough! Your solution works great.

For those curious, this is what the solution results in:

4 Likes