I find it weird that I am forced to use OrderedDataStores as the only way to make multiple Leaderboards in my game. Are there any experts around who could teach us some ways if there are any?
you could try using standard DataStores and manage the sorting and ordering of the leaderboard data manually within your game’s code. This can be more complex and may require additional look outs for performance and data consistency, but it gives you more control over the process
Im not sure if I can like save a certain data value for all the players in the game in one table, there has to be a limit before the table becomes too big
Why do you not want to use OrderedDataStore
s? They simplify the process a lot. I think what @cooldi13 means is that each player’s data would have its own entry into the store, and you would iterate over all the entries in the store. The only problem with this is budgeting. You would need to use DataStore:ListKeysAsync()
, and for each key you would need to use GetAsync()
to get the associated data. This will eventually end up exceeding the budget for GetAsync
, unless you did it very, very slowly to the point where it would just be pointless. Don’t even get me started on the internal server errors you might encounter.
GetSortedAsync
uses one request and returns the ordered entires, I don’t get why you don’t want to use an OrderedDataStore
.
TLDR: Not using an ordered store would result in overcomplication, (possible) errors, and very slow retrieval of data (as after the budget is exceeded requests are subject to throttling).