What do I need to add to remove this error? Seems to break at the DS:GetAsync
Pieces of the main script posted below; bare with me i'm new to this..
local DS = game:getService("DataStoreService"):GetOrderedDataStore("Stats") game.Players.PlayerAdded:connect(function(player) local Data = script.Data:Clone() Data.Parent = player local CopyData = script.Data.leaderstats:Clone() CopyData.Parent = player --stat() if DS then local Stats = DS:GetAsync(player.userId);-- find old save if Stats then for _,Type in next,Data:GetChildren()do for _,S in next,Type:GetChildren()do if Stats[S.Name]then S.Value = Stats[S.Name] end end end end end player.CharacterAdded:connect(function(char) if char:WaitForChild("Humanoid") then update() Insert_FallDmg(char); -- Enables Damage_On_Fall Insert_Ragdoll(char); -- Enables Death_Animation Insert_Blood(char); Insert_Sprint(char); wait(1) Change_Clothes(char); CheckBadges(player) if isAuthenticated(player) then print(player.Name .. " has bought the game pass with id " .. passId) game.ReplicatedStorage.Weapons.M1014:Clone().Parent = player.Backpack player.Data.Inventory.M1014.Value = 1 char.Humanoid.MaxHealth = char.Humanoid.MaxHealth + 50 char.Humanoid.Health = char.Humanoid.Health + 50 end end end) end) game.Players.PlayerRemoving:connect(function(player) local Data = player:FindFirstChild("Data") local Stats = {} if Data then for _,Type in next,Data:GetChildren()do for _,S in next,Type:GetChildren()do Stats[S.Name] = S.Value end end end if DS then DS:SetAsync(player.userId,Stats) end end)
This problem is that you are using an Ordered Data Store. An ODS is like a regular old Data Store, except that it sorts data in either ascending or descending order. Because of this, the only type of object you are allowed to store as values are integers. This becomes very useful for creating leaderboards across servers and other implementations where efficiently ordering data is very important.
In your case, I don't see why you would want to use an ODS. For saving player data, a regular Data Store should suffice.
local DS = game:GetService("DataStoreService"):GetDataStore("Stats")