Control an oject via its velocity

Hi,

I’m trying to do a bullet that can be directly controlled by the player, kinda like the sniper bullets in bulletstorm. I’ve figured out how to directly control them with my mouse but now I want to try something different. I want to bullet to be able to bounce of objects and be controlled by the player. So what I currently have is a pawn with a projectile movement component that has some initial velocity. What I want to do is to be able to push it up and down, left and right based on player’s input. I’ve managed to do up and down by using the following blueprint:

However I cannot do the same with the yaw. If I do something similar with the right vector then my projectile will steer to one direction. What I was thinking about using discrete events. Something like pressing W,A,S,D nudges the bullet in the direction. The thing is that I’m really bad at physics and I have some trouble understanding what exactly I need to do.

Here’s what I want to do, change the direction without affecting the speed:

If I understand vectors I must add the green vector at the location of my projectile and then add the current velocity in order to create the new velocity. Then again I’m really not sure if this is correct at all. I tried to do the following but I didn’t see any difference.

If someone could be nice and explain the actual physics I would really appreciate it.