I made a bow for the first time a while back so I learned a lot. Here’s some things I would change:
-
Don’t use Roblox physics to move the bow. It’s convenient but it almost always yields wrong results. Instead use CFrame.
-
You need to change the properties before setting anything’s parent to avoid bad performance: PSA: Don't use Instance.new() with parent argument
-
This won’t work with FE. Oof. It will only work for the client using the bow.
-
I personally just avoided moving my arrow at all and just moved it directly where the user clicked to avoid any weird errors. You might want to try this.