`So I've been working on a Roblox Evolution Simulator game and I'm trying to make a level system. I need to have the base max Xp per level be 1000. I can right a simple script if everything's base is 0 but if there is a number above 0 it just won't work! I've tried in Studio and in game. Also I don't use leaderstat because I have an Xp bar. Wont save, I've looked through every possible forum page it just wont work! Here's my code:
local playerData = DataStoreService:GetDataStore("PlayerData") local function onPlayerJoin(player) local leaderstats = Instance.new("Folder") leaderstats.Name='lead' leaderstats.Parent=player local xp = Instance.new("IntValue", leaderstats) xp.Name='Exp' local level = Instance.new("IntValue", leaderstats) level.Name='Level' local maxExp = Instance.new("IntValue", leaderstats) maxExp.Name='Max' local playerUserId = 'Player....'..player.UserId local data = playerData:GetAsync(tostring(playerUserId)) if data then xp.Value = data['Exp'] print(data["Exp"]) game.StarterGui.ScreenGui.One.Text=data["Exp"] level.Value = data['Level'] game.StarterGui.ScreenGui.Two.Text=data["Level"] print(data["Level"]) maxExp.Value = data['Max'] game.StarterGui.ScreenGui.Three.Text=data["Max"] print(data['Max']) else xp.Value=0 level.Value=0 maxExp.Value=1000 game.StarterGui.ScreenGui.Three.Text='Hi' print("first time") end end local function create_table(player) local player_stats = {} for _, stat in pairs(player.lead:GetChildren()) do player_stats[stat.name] = stat.value end return player_stats end local function onPlayerExit(player) local player_stats = create_table(player) local success, err = pcall(function() local playerUserId = 'Player....'..player.UserId playerData:SetAsync(tostring(playerUserId), player_stats) end) if not success then warn('Could not save data') end end game.Players.PlayerAdded:Connect(onPlayerJoin) game.Players.PlayerRemoving:Connect(onPlayerExit)``