Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How can I not exceed request limit?

Asked by 8 years ago
        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!

0
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 adark 5487 — 8y
0
If you're setting a datastore value, use :UpdateAsync instead of :SetAsync. It's safer to use. GoldenPhysics 474 — 8y

Answer this question