For the start of my LocalScript, I put a repeating until all the stats in the player is loaded then I put a wait(.1)
repeat wait(.2) until game.Players.LocalPlayer.StatsLoaded and game.Players.LocalPlayer.StatsLoaded==true
wait(.1)
sp=script.Parent
local Plr=game.Players.LocalPlayer
local plrgui=Plr:findFirstChild("PlayerGui")
local StarterGui=game:GetService("StarterGui")
local Mouse=Plr:GetMouse()
local Char=Plr.Character
if not Char or Char.Parent==nil then Char=Plr.CharacterAdded:wait() end
Hum=Char:WaitForChild("Humanoid")
local CP=game:GetService("ContentProvider")
local Str=sp:WaitForChild("Start")
local Gm=sp:WaitForChild("Game")
I know the script should error if it can't detect or find the defined values but it doesn't look like it would have any trouble finding it. I'd put a longer wait at the beginning but I don't want everyone to have a 2 second delay after every time they die (This is for a fort). So is there a better way to find some of these things, especially the Player's Character and Humanoid?

1 comment
Ohhh. It was a child but I didn't realize that using .'s to separate them would make the script think it was a property of the player. Thank you.