How would i make a high number maxforce don't float

so i have a “E” to fire projectile, and I only know bodyvolcity to float, i want my projectile to go straight and don’t spin around when I touch it.
here’s my script but idk if it have any problems

local UIS = game:GetService("UserInputService")
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")

local camera = workspace.CurrentCamera
local Player = Players.LocalPlayer
local pathToThePart = ReplicatedStorage.Part:clone()

UIS.InputBegan:Connect(function(Key, Chatted)
	if Chatted then
		return
	end
	if Key.KeyCode == Enum.KeyCode.E then
		local projectile = pathToThePart
		projectile.Parent = workspace
		projectile.CFrame = Player.Character.HumanoidRootPart.CFrame
		projectile.BodyVelocity.Velocity = Player.Character.HumanoidRootPart.CFrame.lookVector * 10
		end
end)
1 Like

Experiment with your values, as the BodyVelocity needs to be quite high to overcome the game gravity. Try moving up in 100 unit steps until you get to the right level.

To avoid the spinning problem, add a BodyGyro into the projectile and set the BodyGyro.CFrame to be the direction towards the target. Such as

BodyGyro.CFrame = CFrame.new(spawnPosition, targetPosition)

Be sure to give the BodyGyro a proper amount of MaxTorque (it can be high numbers). This will stop it from changing its rotational CFrame in flight