if LevelStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Levels.Value = LevelStore:GetAsync("Points_"..newPlayer.Name)
else
Levels.Value = 1
end
Levels.Changed:connect(function(Val)
LevelStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if EXPStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
EXPs.Value = EXPStore:GetAsync("Points_"..newPlayer.Name)
else
EXPs.Value = 60
end
EXPs.Changed:connect(function(Val)
EXPStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if RyoStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Ryos.Value = RyoStore:GetAsync("Points_"..newPlayer.Name)
else
Ryos.Value = 0
end
Ryos.Changed:connect(function(Val)
RyoStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if NatureOneStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
NatureOnes.Value = NatureOneStore:GetAsync("Points_"..newPlayer.Name)
else
NatureOnes.Value = 0
end
NatureOnes.Changed:connect(function(Val)
NatureOneStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if NatureTwoStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
NatureTwos.Value = NatureTwoStore:GetAsync("Points_"..newPlayer.Name)
else
NatureTwos.Value = 0
end
NatureTwos.Changed:connect(function(Val)
NatureTwoStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if SpecAbilityStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
SpecAbilitys.Value = SpecAbilityStore:GetAsync("Points_"..newPlayer.Name)
else
SpecAbilitys.Value = 0
end
SpecAbilitys.Changed:connect(function(Val)
SpecAbilityStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if WeaponStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Weapons.Value = WeaponStore:GetAsync("Points_"..newPlayer.Name)
else
Weapons.Value = 0
end
Weapons.Changed:connect(function(Val)
WeaponStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if JinStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Jins.Value = JinStore:GetAsync("Points_"..newPlayer.Name)
else
Jins.Value = 0
end
Jins.Changed:connect(function(Val)
JinStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if StatusStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Statuss.Value = StatusStore:GetAsync("Points_"..newPlayer.Name)
else
Statuss.Value = 0
end
Statuss.Changed:connect(function(Val)
StatusStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
if CreationsStore:GetAsync("Points_"..newPlayer.Name) ~= nil then
Creationss.Value = CreationsStore:GetAsync("Points_"..newPlayer.Name)
else
Creationss.Value = 3
end
Creationss.Changed:connect(function(Val)
CreationsStore:SetAsync("Points_"..newPlayer.Name, Val)
end)
This is my current way to save the data. Dont worry the variables are all defined and this works perfectly. If you want the whole script let me know. But, the flaw in this is that it exceeds the request limit very quickly? How can I make that not so? What's a different other way to save it? If there is I probably don't know how to do it if I haven't tried it yet, so let me know please? Help is very much appreciated. =) Thanks in advance!

2 comments
I would suggest using the PlayerDataStore Module. It handles the request limit for you, and is as easy to use as DataPersistence: http://wiki.roblox.com/index.php?title=PlayerDataStore_module
If you're setting a datastore value, use :UpdateAsync instead of :SetAsync. It's safer to use.