In my game I have a script which acts as a sort of 'GPS' system. It seems to work, except for when I go under terrain. Under the terrain it starts throwing some errors at me, Enum.PathStatus.ClosestOutOfRange a lot. This happens when I am only 5 studs away from the destination. Neither ComputeRawPathAsync or ComputerSmoothPathAsync fixes this error. Here are the main parts involved:

Contextual information: x is the x cordinate, y is the z coordinate, and pathw is a frame for inputting the values.

(the triggering event)

coords = CFrame.new(pathw.x.Text,math.floor(pathw.depth.Text)+218,pathw.y.Text)
	print(coords)
	path = game:GetService("PathfindingService"):ComputeRawPathAsync(game.Players.LocalPlayer.Character.Torso.CFrame.p,coords.p,512)

(the loop)

	local model = Instance.new("Model",game.Workspace.CurrentCamera)
while wait() do
	model:ClearAllChildren()
	if started then
		
		--path = game:GetService("PathfindingService"):ComputeRawPathAsync(game.Players.LocalPlayer.Character.Torso.CFrame.p,coords.p,512)
		if path.Status~=Enum.PathStatus.Success then
			game.StarterGui:SetCore("SendNotification", {
			Title = "Error!"; 
			Text = "Something went wrong in your path.. it might fix itself though, so just ignore this message"; 
			Icon = ""; 
			Duration = 5;
		})
		end
		pathc = path:GetPointCoordinates()
		for i=1,20 do
			if pathc[i] then
			local part = Instance.new("Part",model)
			part.Size= Vector3.new(1,1,1)
			part.CanCollide=false
			part.Transparency = 1
			part.TopSurface= "Smooth"
			part.BottomSurface = "Smooth"
			part.Transparency = 0.5
			part.Material ="Neon"
			part.Anchored=true
			part.Shape="Ball"
			part.CFrame = CFrame.new(pathc[i])
			end 
		end
	end
end

Thanks