Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

My NPC pathfinding script appears to not follow the player?

So I made this script to enchant my original npc following script (Because the original one would just go on a strait line

But It appears to not follow the player

local NPC = script.Parent --Describes the humanoid
local PathfindingService = game:GetService("PathfindingService") ---Makes a varibel of PathfindingService
local Players = game.Players

Players.PlayerAdded:Connect(function(player)
	player.CharacterAdded:Connect(function(char)
		while wait() do
			local path = PathfindingService:CreatePath()
			path:ComputerAsync(NPC.Torso.Position, char.Humanoid.Torso.Position)
			local waypoints = path:GetWaypoints()
			
			for i, waypoints in pairs(waypoints) do
				NPC:MoveTo(waypoints.Position)
				NPC.MoveToFinish:Wait(5)
			end
		end
	end)
end)

while wait() do
	NPC:MoveTo(char.Humanoid.Torso.Position)
end

1 answer

Basic error, look at the comment I left in the script:

local NPC = script.Parent --Describes the humanoid
local PathfindingService = game:GetService("PathfindingService") ---Makes a varibel of PathfindingService
local Players = game.Players

Players.PlayerAdded:Connect(function(player)
    player.CharacterAdded:Connect(function(char)
        while wait() do
            local path = PathfindingService:CreatePath()
            path:ComputerAsync(NPC.Torso.Position, char.Humanoid.Torso.Position)
            local waypoints = path:GetWaypoints()

            for i , v waypoints in pairs(waypoints) do -- forgot to add v
                NPC:MoveTo(v.Position) -- Go to v, waypoints is a table
                NPC.MoveToFinish:Wait(5)
            end
        end
    end)
end)

while wait() do
    NPC:MoveTo(char.Humanoid.Torso.Position)
end

This discussion is preserved as it was. New answers, comments, and votes are closed.