When you grab Get Control Rotation → Get Forward Vector, the resulting vector points toward where you are looking; if you point straight down means you’re trying to move into the ground so you have no ‘forward’ input.
In order to move independently from you forward pitch, use the pawn/actor rotation instead which doesn’t pitch with the control rotation.
First off I think this should go on the controller, not the character/pawn.
This is how we do it:
From the controller grab the inputs:
Then to get the vector:
Then get move the player:
I have “GetControl rotation” with “GetActorRotation” replaced. Works well.