Changing actors orientation so it can walk on walls/roofs

So I’m relatively new to unreal, and I know my way around C++. What I’m trying to do is to create a custom gravity system that handles gravity volumes in a scene. I’ve fixed the part of using my own gravity and having gravity volumes in the scene to affect actors.

I’m using an Actor that inherits from ACharacter which has a pre-written movecomponent

But now I’m a bit stuck on the part of rotating the actor so that when the actor hits the wall/roof(which is now the ground for the actor), it lands on the wall/roof and stands on it. (print screen link for reference) http://prntscr.com/n0dsv9

I know I can rotate the actor, but it seems like even though if it has the right orientation(I know it doesn’t have the correct orientation in the print screen, but that doesn’t matter right now) it doesn’t want to “stand” on the wall/roof.

And the input seems very off when I’ve rotated the actor in the right orientation(at least it looks like the correct orientation), and that is probably because I need to have a rotation offset for the input or something like that.

If anyone has any idea or any links to push me in the right direction post them, I want to say that I’m not looking for a straight up answer I wish to get hints to what I might want to look into

And if someone has already posted a similar post that might help me, please link it!