@Legoracer
How would you recommend I remake it? Raycast from the camera to get a position, and then get a direction from the gun to the position and slap that into the body gyro?
@DesiredFlamingFire
I have not tried that yet, I will test that soon. Thank you!
Where is the BodyGyro located? It isn’t centered with the projectile, it will point to the target as expected, but the projectile will not and will go a different path. Even if the gun is the mover, the bounding box may not be centered with the projectile.
Rough example with Microsoft Paint:
I think what’s happening here is that your mouse.Hit is actually very far away into space. It seems out of allignment because the line from gun > mouse position is obscured by whatever the projectile is hitting. It’s not getting the chance to reach the mouse position.
PS: If you anchor your projectile + hide it instead of simply destroying it then the smoke trail won’t instantly disappear like that
What I’ve seen done in games before is having a cursor for the mouse as normal but adding something like a Beam from the weapon to the actual collision point. If this isn’t desirable then I’d recommend moving the camera closer to the weapon.
Maybe it would be better to create your directional unit vector by doing (mover.Position - mousePos.Position).unit instead of (I assume) using the directional vector of the turret. To make sure projectiles don’t go sideways compared to your turret (because your turret could be pointing one way and the missile could go another way), get the angle between the turret’s lookvector and (mover.Position - mousePos.Position).unit and make sure the angle is very small.
Okay, then instead of setting the gyroscope CFrame to the mouse CFrame, then do (mover.Position - mousePos.Position).unit and use that directional vector to orient the missile launcher.