DataStore request was added to queue

You can write your topic however you want, but you need to answer these questions:

  1. DataStore request was added to queue. If request queue fills, further requests will be dropped. Try sending fewer requests.Key = 1707130439 - Studio

what do you think is wrong? this datastore has 15+ variables idk if because this is a lot or else

O k a y, that warning simply means that you’re firing SetAsync/UpdateAsync WAY TOO OFTEN

Try to limit the amount of requests that you fire when attempting to configure the data

It’s exactly what it says on the error. Send fewer datastore requests.

Datastores are basically a whole one time fire type thing, it cant fire more than 1 since datastore will take it as a big thing, meaning you need to combine every value together in a table and connect them to one. (get/set async causes this issue btw)

ye im gonna try to learn module script data store

Modules are basically a fun way of making a table, you can just make a table in the same script your using for datastore, no need to use module scripts and requiring them.

1 Like

i just change it might work with more and more variables
SCRIPT:
local DataStoreService = game:GetService(“DataStoreService”)

local playerData = DataStoreService:GetDataStore(“PlayerData”)

local function onPlayerJoin(player) – Runs when players join

local leaderstats = Instance.new("Folder")  --Sets up leaderstats folder

leaderstats.Name = "leaderstats"

leaderstats.Parent = player



local money = Instance.new("IntValue") --Sets up value for leaderstats

money.Name = "Money"

money.Parent = leaderstats



local exp = Instance.new("IntValue") --Sets up value for leaderstats

exp.Name = "Experience"

exp.Parent = leaderstats



local playerUserId = "Player_" .. player.UserId  --Gets player ID

local data = playerData:GetAsync(playerUserId)  --Checks if player has stored data

if data then

    money.Value = data['Money']

exp.Value = data['Experience']

else

    -- Data store is working, but no current data for this player

money.Value = 0

exp.Value = 0

end

end

local function create_table(player)

local player_stats = {}

for _, stat in pairs(player.leaderstats:GetChildren()) do

    player_stats[stat.Name] = stat.Value

end

return player_stats

end

local function onPlayerExit(player) --Runs when players exit

local player_stats = create_table(player)

local success, err = pcall(function()

    local playerUserId = "Player_" .. player.UserId

    playerData:SetAsync(playerUserId, player_stats) --Saves player data

end)



if not success then

    warn('Could not save data!')

end

end

game.Players.PlayerAdded:Connect(onPlayerJoin)

game.Players.PlayerRemoving:Connect(onPlayerExit)

1 Like