Hi guys; My game saves and gets data from DataStores often; and at 4 times:
When the user joins - Get Data from DataStore
When the user leaves - Set Data to DataStore (this doesn't work for some reason though)
Every 30 seconds - SetAsync called for all players
When the player buys something -SetAsync when player buys more currency -SetAsync when player spends currency
However... data saving seems... inconsistent. I've tracked it down to the following error: Failure when receiving data from the peer
This error occurs in multiple scripts where data is being saved and fetched from DataStores. It happens in these scripts:
game.Players.PlayerRemoving:connect(function(player) if player.Playing.Value == true then workspace.GameStatus.NumPlayers.FinishedPlayers.Value = workspace.GameStatus.NumPlayers.FinishedPlayers.Value + 1 end CoinsDS:SetAsync(key,player.Coins.Value) -- error (Failure when receiving data from the peer) here end)
local DataStore = game:GetService("DataStoreService"):GetDataStore("Coins") game.ReplicatedStorage.UpdateCoins.OnServerEvent:connect(function(player,coins) key = "user_"..player.userId player.Coins.Value = player.Coins.Value + coins if coins > 0 then DataStore:SetAsync(key,player.Coins.Value) -- error here end end)
local GoldTrail = game:GetService("DataStoreService"):GetDataStore("GoldTrail") local CoinTrail = game:GetService("DataStoreService"):GetDataStore("CoinsTrail") local FireTrail = game:GetService("DataStoreService"):GetDataStore("FireTrail") game.ReplicatedStorage.CheckTrails.OnServerEvent:connect(function(player) GTrail = GoldTrail:GetAsync("user_"..player.userId) -- here CTrail = CoinTrail:GetAsync("user_"..player.userId) -- here FTrail = FireTrail:GetAsync("user_"..player.userId) -- and here game.ReplicatedStorage.PlayerUpdateEvent.CheckedTrails:FireClient(player,GTrail,CTrail,FTrail) end)
In general this seems to be happening with any Get and SetAsync's in the game. I'm not sure whats causing this. I find it hard to believe I'm reaching the request limit. Also: My game has Filtering enabled.
MD