Whenever I run my data script to obviously save and load things, I made functions to go through and load data, then made a function to be called multiple times and load, but anyway, thats not related. Using this script, I, the player is kicked from the game as the script does. Although it shouldnt..? This may be an incredibly stupid mistake... It's stumped me because the whole game relies on this.
function LoadItem(Data2,DataType,PlayerID, Parent, Player)
local F
local Scope = "Player_" .. PlayerID
local Data = DataStore:GetDataStore("Data", Scope)
if DataType == "Number" then
F = Instance.new("NumberValue", Parent)
elseif DataType == "Int" then
F = Instance.new("IntValue", Parent)
elseif DataType == "String" then
F = Instance.new("StringValue", Parent)
elseif DataType == "Bool" then
F = Instance.new("BoolValue", Parent)
end
F.Name = Data2
repeat
Tries = Tries + 1
local Sucess, Temp = pcall(function()
return Data:GetAsync(Data)
end)
if not Success then wait(1) end
until Tries == ALLOWED_RETRIES or Success
if not Success then
PWE:FireClient(Player, "Warn", "ROBLOX's DataStoreService may be offline. Please try again later. We have kicked you to prevent you losing your data.")
wait(2)
Player:Kick("ROBLOX's DataStoreService may be offline. Please try again later. We have kicked you to prevent you losing your data.")
end
F.Value = Temp
Temp = nil
end

3 comments
This is not how you use a data store at all. The scope is used to to structure the data stores in more meaning full groups. It it not meant to create a data store per player.
Ok go ahead. Question the work of those who are chosen to write to the roblox wiki.. Yeah seems legit that it's wrong.... You haven't even seen it. http://wiki.roblox.com/index.php?title=Data_store
Question it all you want. I can structure it how I want. I'll follow the wiki, written by those chosen by roblox itself.