How to compensate part positioning for player movement?

Greetings,

I am wondering if there is some established way of compensating for the parts not appearing in the right place

https://streamable.com/6eyvix

as you can see in the video, when the player moves side by side the ball spawns somewhere to the side instead of spawning in front of the arm

So my question is, is there some common, established way of dealing with this issue?

My test script from the video

local Bomb = Tool.Handle:Clone()
Bomb.CFrame = Tool.Handle.CFrame * CFrame.new(0,0,-2)
Bomb.Parent = workspace

Any advise would be greatly appreciated, thank you for your time

Now I don’t know the exact math you need, I’m bad at math, but getting the magnitude or possibly velocity and applying that to the CFrame could work.

Maybe anchor the clone when it is parented

Indeed i thought of this. I tried welding the part to the handle for an instant and it works perfectly if the part is just created and put there, however if I try applying velocity to the part it becomes unreliable in the sense that sometimes it moves sometimes it doesn’t and i have to put a small wait after welding it to give it time to apply, during which time the player continues moving, bringing me back full circle to the original issue