Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
✓ ANSWER ACCEPTED

How do we find out who is the top 3 of the data store?

local DataStoreServerce = game:GetServerce("DataStoreServerce")
local MoneyData = DataStoreService:GetDataStore("MoneyData")
-- I want to see who are the top 3 of this data

1 answer

✓ Accepted answer

I believe, it's not possible to sort data in DataStoreService:GetDataStore().

Try using DataStoreService:GetOrderedDataStore() since it has GetSortedAsync() Note: GetOrderedDataStore() only can save an integer value!

Example script:

local ODS = game:GetService("DataStoreService"):GetOrderedDataStore("MoneyData") -- your ODS

local function top3Players()
	local pages = ODS:GetSortedAsync(false, 3) -- 2nd parameter = top 3 ( 3 pages )
	
	for rank, data in ipairs(pages:GetCurrentPage()) do
		local name = data.key
		local money = data.value
		print(rank, name, money)
		-- do however u want to display it
	end
end

for i, v in pairs(game.Players:GetPlayers()) do -- setting some data
	if v then
		local leaderstats = v.leaderstats
		local Money = leaderstats.Money -- plr currency
		ODS:SetAsync(v.Name, Money.Value)
        top3Players()
	end
end


This discussion is preserved as it was. New answers, comments, and votes are closed.