Yes I understand what you want, but there will likely be multiple ways to achieve it. The humanoid can be a bit fiddly at times so it’s probably best to take a look at how EgoMoose achieved it in his wall stick module (or just use his module).
It allows you to do all sorts of crazy things, including walking on curved surfaces/spheres and terrain. Egomoose is far superior at this kind of math and has taken the time to work out all the funky things without you ragdolling or being unable to jump or all of the other issues that come with trying to set the torso or root part CFrame directly.
Added: If you can learn parts of it and understand how it works, then you can recreate a subset of its functionality if you’re against using the module.
The reason I don’t want to use it is because when ever a player jumps off a part they end up flying in the other direction which makes it look a bit weird.
Do you have a video of what you mean? You might be better off modifying the module to prevent that particular bit of logic.
You don’t have to directly use the module, I know you said you didn’t want to, but what I was more suggesting is to look into the code to understand how it works, and then you can apply the same techniques that are applied there.
I personally haven’t had the time to really look into it, so I couldn’t tell you off the top of my head, but I’m sure if you can identify exactly what behaviour it does that you don’t like, and can pinpoint the cause of it, myself or someone else on the forum might have some suggestions to try that might fix that without having to reinvent the wheel.