MoveTo doesn't move the prop to the exact player location

is there a reason you’re using ViewLocation and ViewRotation over GetTransform().Translation and .Rotation?

the GetTransform().Translation will probably solve most of your issues

if you don’t like typing it you can write an extension function to make it less annoying to type something like this

(FChar:fort_character).GetTranslation():vector3=
    return FChar.GetTransform().Translation

#Same for rotation
(Fchar:fort_character).GetRotation():rotation=
    return FChar.GetTransform().Rotation

And then just do

playerLoc := FChar.GetTranslation()
playerRot := FChar.GetRotation()

Note, To add onto this i also believe there is a new-ish device called the vfx power up device that can directly attach a niagara system to a player models socket of choice.

Only downside is there’s no verse module so you’d have to play around with implementation. I usually just use triggers.