As for rotation, you can rotate a offset vector based on rotator which you can get using “get actor rotation”, not sure how it is called in blueprint just search rotate
You can use the “Get Actor Forward Vector” node to get the direction the actor is facing. Then multiply that by the amount you want to offset, and add that to the actor’s location.