When I sprint in the game, and when connected to a server, it jitters. Using (basically) the same code in blueprints does not have this effect. It is replicated to the server, Unreliably.
Well without seeing more of how this is working I can only guess. In general I have found that movement “Jitters” are almost always a difference in velocity between the server and the client. If this function is fired only once (say button pressed event) and replicates “unreliably” that could be a problem in itself, but if that function is fired on tick than the unreliable tag is appropriate (Never run reliable functions on tick, and only ever try to have at most one unreliable RPC on tick). Generally all my to server RPCs that handle input are reliable (except for the ones that continuously fire of course).
The jittering you are experiencing comes from the network corrections the MovementComponent on your Character performs automatically.
Like all other MovementTypes (Jumping, Crouching, etc.) sprinting should also be implemented using the MovementComponent, you can find tutorials on how to do this correctly here: