local TeleportService = game:GetService("TeleportService") local dVersion = 1 local VIPGamepass = 0 local WinsDataStore = game:GetService("DataStoreService"):GetDataStore('Wins') game.Players.PlayerAdded:Connect(function(Player) local Stats = Instance.new('Folder') Stats.Name = 'leaderstats' Stats.Parent = Player local Wins = Instance.new('IntValue') Wins.Name = 'Wins' Wins.Parent = Stats local Data = WinsDataStore:GetAsync(Player.UserId) if Data then for name, value in pairs(Data.Stats) do Stats[name].Value = value end end end) game.Players.PlayerRemoving:Connect(function(Player) local SaveData = {Stats = {}} for _, stat in pairs(Player.leaderstats:GetChildren()) do SaveData.Stats[stat.Name] = stat.Value end WinsDataStore:SetAsync(Player.UserId,SaveData) end) game:BindToClose(function() for _, Player in pairs(game.Players:GetPlayers()) do local SaveData = {Stats = {}} for _,stat in pairs(Player.leaderstats:GetChildren()) do SaveData.Stats[stat.Name] = stat.Value end WinsDataStore:SetAsync(Player.UserId,SaveData) end wait(2) end) local SaveCoins = game:GetService("DataStoreService"):GetOrderedDataStore("Coins", dVersion) game.Players.PlayerAdded:Connect(function(player) local previousData = SaveCoins:GetAsync(player.UserId) local Coins if previousData ~= nil then Coins = previousData else Coins = 0 SaveCoins:SetAsync(player.UserId, 0) end local WinsValue = Instance.new("NumberValue", player) WinsValue.Name = "Coins" WinsValue.Value = Coins local val1 = Instance.new("StringValue",player) val1.Name = 'GotPet' val1.Value = '' local val2 = Instance.new("StringValue",player) val2.Name = 'OpenValue' val2.Value = '' if game:GetService("MarketplaceService"):UserOwnsGamePassAsync(player.UserId, VIPGamepass) then player.Coins.Value = player.Coins.Value *2 end end) game:BindToClose(function() for i, player in pairs(game.Players:GetPlayers()) do local Value = player.Coins.Value SaveCoins:SetAsync(player.UserId, Value) end end) game.Players.PlayerRemoving:Connect(function(player) local Value = player.Coins.Value if Value ~= nil then print("Found data to save for "..player.Name.."!") SaveCoins:SetAsync(player.UserId, Value) print("Saved data for "..player.Name) else print("Did not manage to find data to save for "..player.Name.."!") end end)