Grenade goes backwards

Are you wanting the grenade to not fall then…? I’m still confused on the video you sent since it literally showed the “Pearl” rising & falling as soon as 1 was created & parented to the workspace

yeah it rises, but the grenade that i made only rise a tiny bit or i dont even know if it rises

If that’s the case you could just simply increase the Y value to the Velocity

local Throw = script.Parent:WaitForChild("Throw")

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local SmokeGrenade = ReplicatedStorage:WaitForChild("SmokeGrenade")

Throw.OnServerEvent:Connect(function(player, Pos)
	local Char = player.Character or player.CharacterAdded:Wait()
	local HRP = Char:FindFirstChild("HumanoidRootPart")
	
	if HRP then
		local Cloned_SmokeGrenade = SmokeGrenade:Clone()
		Cloned_SmokeGrenade.Parent = game.Workspace
		Cloned_SmokeGrenade.CFrame = CFrame.new(HRP.Position + Vector3.new(0,1,3), Pos)
		Cloned_SmokeGrenade.Velocity = (Cloned_SmokeGrenade.CFrame.LookVector.Unit * 100) + Vector3.new(0, 25, 0) --Change the Y value to how high you want the Grenade to be thrown from
		wait(1)
		
		Cloned_SmokeGrenade.Touched:Connect(function()
			local TempPart = Instance.new("Part")
			TempPart.Parent = game.Workspace
			local Smoke = Instance.new("Smoke")
			Smoke.Parent = TempPart
			Smoke.Color = Color3.fromRGB(213,213,213)
			Smoke.Size = 45
			wait(12)
			TempPart:Destroy()
		end)
		Cloned_SmokeGrenade:Destroy()
	end
end)