I can't quite figure out this problem with my DataStore, It's on Filtering Enabled and a server-side script in workspace. a Local Script is changing the values in a StarterGui Frame, any help would be great!
local DSService_Q = game:GetService("DataStoreService"):GetDataStore("Quest")
game.Players.PlayerAdded:Connect(function(player)
local UniqueKey = "id-"..player.userId
local Holder = Instance.new("Folder")
Holder.Name = "Data"
Holder.Parent = player
local SpinVal = Instance.new("NumberValue")
SpinVal.Value = 0
SpinVal.Name = "SpinnerCalculations"
SpinVal.Parent = Holder
local CurrentPlate = Instance.new("NumberValue")
CurrentPlate.Value = 1
CurrentPlate.Name = "CurrentTile"
CurrentPlate.Parent = Holder
local Number = Instance.new("NumberValue")
Number.Value = 0
Number.Name = "NumberPrototype"
Number.Parent = Holder
local Quests = Instance.new("Folder")
Quests.Name = "Quests"
Quests.Parent = Holder
local Q1 = Instance.new("StringValue")
Q1.Name = "Quest1"
--Q1.Value = --data
Q1.Parent = Quests
local QP = Instance.new("IntValue")
QP.Name = "QuestProgress"
QP.Parent = Q1
--//Get Async
local GetData = DSService_Q:GetAsync(UniqueKey)
if GetData then
Q1.Value = GetData[1]
QP.Value = GetData[2]
else
local NumbersForSaving = {Q1.Value, QP.Value}
DSService_Q:SetAsync(UniqueKey, NumbersForSaving)
end
end)
game.Players.PlayerRemoving:Connect(function(player)
local UniqueKey = "id-"..player.userId
local SaveTable = {player.Data.Quests.Quest1.Value, player.Data.Quests.Quest1.QuestProgress.Value}
DSService_Q:SetAsync(UniqueKey, SaveTable)
end)

1 comment
changing values in a localscript doesnt work, you can create a remoteevent and call it in a localscript and change the values there