I want the script just to remove their hats but keep the hair.
This can be done with HumanoidDescriptions.
-- access the character and humanoid local character = workspace:WaitForChild("username") local humanoid = character:WaitForChild("Humanoid") -- access the previously existing HumanoidDescription local HumanoidDescription = humanoid.HumanoidDescription -- set the value of every non-hair accessory to an empty string HumanoidDescription.BackAccessory = "" HumanoidDescription.FaceAccessory = "" HumanoidDescription.FrontAccessory = "" HumanoidDescription.HatAccessory = "" HumanoidDescription.NeckAccessory = "" HumanoidDescription.ShouldersAccessory = "" HumanoidDescription.WaistAccessory = "" -- reapply the humanoid description humanoid:ApplyDescription(HumanoidDescription)