Apologies if this is in the wrong category — I’m not entirely sure where to post this, and I also don’t have a script to share at the moment. Hopefully, someone can still help.
I’ve been experimenting with creating geometric characters, and in this case, I set the, HumanoidRootPart to be a sphere. (Character only consists of a RootPart and Humanoid.)
I’ve also disabled the Humanoid.AutoRotate property and implemented a custom rotation script (though this might not be directly related).
The issue I’m running into is this:
When I rotate the sphere’s orientation to 180° (flipping it upside down), the character refuses to move.
Is there any known workaround or fix for this issue? Any insight would be greatly appreciated!
i might be wrong, but you could print the humanoid state each time it changes and seeing if its a humanoid state thats preventing you from moving when upside down, otherwise i got no idea, never thought of experimenting with characters like that
The character uses a Sphere as the RootPart for smoother collisions, while the visible model is a Cube connected via a WeldConstraint.
The RootPart is a Sphere to ensure smoother collisions than a box shape.
Character
RootPart -- Sphere
Test -- 2nd Sphere
Cube -- Visual
I tried rotating a secondary sphere (Test) to avoid affecting the RootPart, but it still rotated—possibly due to WeldConstraints
An alternative I’m considering is rotating only the Cube while leaving the RootPart unrotated. I’m not yet sure what implications this might have, but will try.
I’m not a wizard at creating custom (or connecting) characters, so I’ve used WeldConstraints. Do let me know if it’s incorrect…
I wonder if Roblox locks the ability of a Humanoid to move once it’s past a certain rotation? In that case it may be better to flip the cube.
Also, how are you rotating the rotation? Orientation? Or if you are CFraming it every frame are you CFraming the Position accidentally?