I’m currently scripting a sort of “fireball” attack, and I’m currently stuck on the movement part of it. What would be the best way to get it moving from its origin to its endpoint?
I was thinking I could use movement systems such as BodyVelocity (not the best because of occasional “stutters”), RunService.Heartbeat, etc.
You can use TweenService.
If you don’t now what this is, it is a Roblox API that can be used to smoothly move one value to another. An example of this would be moving the position of a part to another position smoothly. This could be used for your fireball. Documentation: TweenService | Documentation - Roblox Creator Hub
I do see what you’re saying, however TweenService will scale the further the endpoint is from the origin. In other words, the fireball will move quicker if the endpoint is further. I ended up using RunService.Renderstepped, and incorporated DeltaTime into the speed of the fireball.