The small angles given are probably just because its actually off by that small angle
A 0.1 degree difference or even a 3 degree difference Id say is an expected value
Does it not increase beyond that?
If you just anchor it and tilt and rotate it does it give the proper angle, even on slopes?
It should always give the angle to the flat edge of the surface in degrees
if its a flat edge i dont understand why it varies so much from 0,0. Anyways heres a clip
Are you using the skateboards look right and up vector or the humanoidrootparts?
It doesn’t look responsive to the rotation of the skateboard like it should be (they’d prob be welded together anyways but) but is definitely acting correctly in response to a certain CFrame, I’d guess the hrp
Otherwise it looks like it’s working perfectly
im not too sure about perfect, its doing the sole problem i was trying to fix and it kind of glitches out or something randomly
You could add an additional pid for steering or use a bodygyro for steering or smthn, but given that you didnt want to use a bodygyro for balancing Id guess not
If the angle is reading correctly which it is Id say the issue is then mostly with the implementation of it (the sudden turning doesnt help because it can cause the angles to suddenly change, but theres ways to compensate), you could try applying the force at the center of mass + some height, or some other solution
Not sure whatd work
why does it vary so much though? that doesnt feel right to me
i think what your code is doing is giving the angle that it is in instead of what it should be
You are right that it gives you what it currently is relative to the surface, but what the angle should be relative to the surface is always 0
Im not very good with scripting, but I hope this can help, change the max slope angle to a higher number in settings