I would recommend using a library called FastCast. It’s a popular library for gun systems that handles projectile physics and hit detection for you. Using it is very similar to a raycast so it’s also pretty easy to implement. You can find a dev forum post by it’s creator on how to use it and where to get it here.