And NO I'm not going to use teams as I have 2500 checkpoints and I don't think their are enough 2500 brickcolors. Anywheres here is my script in ServerScriptService.
game.Players.PlayerAdded:Connect(function(plr)
plr.CharacterAdded:Connect(function(char)
local notFound = true
for i, v in pairs(game.Workspace.Checkpoints:GetChildren()) do
if v.CheckPointNumber.Value == plr:WaitForChild("leaderstats"):WaitForChild("Stage").Value then
char:WaitForChild("HumanoidRootPart").CFrame = v.CFrame * CFrame.new(Vector3.new(0,2,0)) --Tried with torso but nothing happened. I'm attempting to use HumanoidRootPart for R15. No errors are given nor is player ever teleported.
notFound = false
break
end
end
wait(1)
if notFound then
plr:LoadCharacter()
end
end)
end)
I can confirm that it does identify the location of the checkpoint but does not teleport the player to on top of the checkpoint. The player is never teleported nor there is never anything added to the output. Please help.

2 comments
Can you add prints and see where you get ?
I ALLREADY DID