local DSS = game:GetService("DataStoreService") local DS = DSS:GetDataStore("ETSING BOY") local ValuesToCreate = {TermsOfUse = {Name = "TermsOfUse", className = "BoolValue", Value = false}} game.Players.PlayerAdded:Connect(function(Player) local Folder = Instance.new("Folder", Player) Folder.Name = "PlayerData" for i,v in pairs(ValuesToCreate)do local Val = Instance.new(v.className, Folder) Val.Name = v.Name end local SavedData local success, errormsg = pcall(function() SavedData = DS:GetAsync(Player.UserId) end) if success and SavedData ~= nil then print("SAVED DATA OF PLAYER "..Player.Name..": "..game:GetService("HttpService"):JSONEncode(SavedData)) for i,v in pairs(SavedData)do local FindVal = Folder:FindFirstChild(v.Name) if FindVal and FindVal.className == v.className then FindVal.Value = v.Value end end elseif success and SavedData == nil then for i,v in pairs(ValuesToCreate)do local FindVal = Folder:FindFirstChild(v.Name) if FindVal and FindVal.className == v.className then FindVal.Value = v.Value end end elseif not success then warn("Error while trying to get saved data of player "..Player.Name..": "..errormsg) end end) game.Players.PlayerRemoving:Connect(function(Player) if not game:GetService("RunService"):IsStudio() then local Folder = Player:WaitForChild("PlayerData") local SaveData = {} for i,v in pairs(Folder:GetChildren())do SaveData[v.Name] = {Name = v.Name, className = v.className, Value = v.Value} end print("SAVING DATA OF PLAYER "..Player.Name..": "..game:GetService("HttpService"):JSONEncode(SaveData)) local success, errormsg = pcall(function() DS:SetAsync(Player.UserId, SaveData) end) if not success then warn("Couldn't save data of player "..Player.Name..": "..errormsg) end end end) game:BindToClose(function() for i, Player in pairs(game.Players:GetPlayers())do local Folder = Player:WaitForChild("PlayerData") local SaveData = {} for i,v in pairs(Folder:GetChildren())do SaveData[v.Name] = {Name = v.Name, className = v.className, Value = v.Value} end print("SAVING DATA OF PLAYER "..Player.Name..": "..game:GetService("HttpService"):JSONEncode(SaveData)) local success, errormsg = pcall(function() DS:SetAsync(Player.UserId, SaveData) end) if not success then warn("Couldn't save data of player "..Player.Name..": "..errormsg) end end end)
So everytime I change "TermsOfUse" to true I make the datastore script print out the whole table it's going to save and there it says that "TermsOfUse" is false and the datastore saves it as false aswell.
what can I do about it??
the datastore does not save anything u change in the studio; only in the game itself. So to really test out wether ur datastore saves, u have to test it in ur actual game