So, here's the script:
local ReplicatedStorage = game:GetService("ReplicatedStorage") local DS = game:GetService("DataStoreService"):GetDataStore("Statsandstuff") game.Players.PlayerAdded:Connect(function(plr) local player = plr repeat wait() until player.Character local hitbox = Instance.new("Part") local weld = Instance.new("Weld",hitbox) hitbox.Parent = player.Character hitbox.Name = "PlayerHitBox" hitbox.Size = Vector3.new(3.85, 5.74, 1.19) hitbox.Position = Vector3.new(player.Character.UpperTorso.Position.X,player.Character.UpperTorso.Position.Y - 2,player.Character.UpperTorso.Position.Z) hitbox.Transparency = 1 hitbox.CanCollide = false weld.Part0 = hitbox weld.Part1 = player.Character.HumanoidRootPart local folder = Instance.new("Folder") folder.Name = player.Name folder.Parent = ReplicatedStorage local folder2 = Instance.new("Folder") folder2.Name = player.Name folder2.Parent = game:GetService("ServerScriptService") local vars = Instance.new("Folder") vars.Parent = folder vars.Name = "Vars" local Int = Instance.new("NumberValue") Int.Parent = vars Int.Name = "Intelligence" local Lev = Instance.new("NumberValue") Lev.Parent = vars Lev.Name = "Level" local Points = Instance.new("NumberValue") Points.Parent = vars Points.Name = "Points" local Quirk = Instance.new("StringValue") Quirk.Parent = vars Quirk.Name = "Quirk" local QuirkD = Instance.new("NumberValue") QuirkD.Parent = vars QuirkD.Name = "QuirkDevelopment" local Stam = Instance.new("NumberValue") Stam.Parent = vars Stam.Name = "Stamina" local Str = Instance.new("NumberValue") Str.Parent = vars Str.Name = "Strength" local XP = Instance.new("NumberValue") XP.Parent = vars XP.Name = "XP" local XPTL = Instance.new("NumberValue") XPTL.Parent = vars XPTL.Name = "XPtolevel" local savedstuff = DS:GetAsync(plr.userId) if savedstuff then for i,v in pairs(savedstuff) do if i % 2 == 0 then ReplicatedStorage[plr.Name].Vars:FindFirstChild(savedstuff[i-1]).Value = v end end else Int.Value = 1 Lev.Value = 0 Points.Value = 0 Quirk.Value = "Quirkless" QuirkD.Value = 1 Stam.Value = 1 Str.Value = 1 XP.Value = 0 XPTL.Value = 50 end end) local function savestuff(plr) local saveddata = {} for i,v in pairs(ReplicatedStorage[plr.Name].Vars:GetChildren()) do saveddata[#saveddata + 1] = v.Name saveddata[#saveddata + 1] = v.Value end DS:SetAsync(plr.userId, saveddata) end game.Players.PlayerRemoving:Connect(function(plr) savestuff(plr) end)
I get no errors whatsoever, but it won't save. Please help!