things like local humanoid = player.Character:WaitForChild("Humanoid") aren't efficient and pretty unreliable. I like using this; local Char = player.Character or player.CharacterAdded:Wait(); local H:Humanoid = player.Character:FindFirstChildOfClass("Humanoid"). First get the Character or wait until it exists, for convenience. Since a player character only has one humanoid, we dont need to wait for a child named Humanoid but rather an instance. :Humanoid also tells Luau that the variable is a Humanoid Instance, so that autofill works again.