I want to make a game where the only currency that gets saved is your Bank Balance, however it does not save any data at all.
Check my script, tell me if anything is missing or misplaced.
local DataStoreService = game:GetService('DataStoreService')
local playerData = DataStoreService:GetDataStore('PlayerData')
local function onPlayerJoin(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = 'moneyAmounts'
leaderstats.Parent = player
local pocketMoney = Instance.new('IntValue')
pocketMoney.Name = 'Pocket'
pocketMoney.Parent = leaderstats
pocketMoney.Value = 0
local bankMoney = Instance.new('IntValue')
bankMoney.Name = 'Bank'
bankMoney.Parent = leaderstats
local playerUserID = 'Player_'..player.UserId
local data = playerData:GetAsync(playerUserID)
if data then
bankMoney.Value = data
else
bankMoney.Value = 0
end
end
local function onPlayerExit(player)
local success, err = pcall(function()
local playerUserID = 'Player_'..player.UserId
playerData:SetAsync(playerUserID, player.moneyAmounts.Bank.Value)
end)
if not success then
warn('Could not save data!')
end
end
game.Players.PlayerAdded:Connect(onPlayerJoin)
game.Players.PlayerRemoving:Connect(onPlayerExit)
Note: the script is under “ServerScriptService” as a “Script”