I was writing a Global LeaderBoard code, but I encountered some errors. Could you help? The error occurs at line 10.
Error1
DataStoreService: ValueNotNumeric: Sorted datastore values must be integer numbers API: SetAsync, Data Store: PowerLeaderboard
Error2
502: API Services rejected request with error. Error code: 14 Reason: Sorted datastore values must be integer numbers
local DataStoreService = game:GetService("DataStoreService")
local PowerDataStore = DataStoreService:GetOrderedDataStore("PowerLeaderboard")
local LeaderboardPart = game.Workspace.PowerLeaderBoard
local RefreshRate = 5
local function RefreshLeaderboard()
for i, Player in pairs(game.Players:GetPlayers()) do
PowerDataStore:SetAsync(Player.UserId, tonumber(Player.leaderstats.Power.Value))
end
local Success, Error = pcall(function()
local Data = PowerDataStore:GetSortedAsync(false, 10)
local PowerPage = Data:GetCurrentPage()
for Rank, SavedData in ipairs(PowerPage) do
local Username = game.Players:GetNameFromUserldAsync(tonumber(SavedData.Key))
local Power = SavedData.Value
if Power then
local NewSample = game.ReplicatedStorage.LeaderBoard:Clone()
NewSample.Parent = LeaderboardPart.SurfaceGui.ScrollingFrame
NewSample.Name = Username
NewSample.Power.Text = Power
end
end
end)
end
while true do
for i, Frame in pairs(LeaderboardPart.SurfaceGui.ScrollingFrame:GetChildren()) do
if Frame:IsA("Frame") then
Frame:Destroy()
end
RefreshLeaderboard()
wait(RefreshRate)
end