This model and ModuleScript will help many developers when creating Leaderboard, it works with DataStoreService, fetches the data from your DataStore and sorts it in descending order.
GLeaderboard was published to Roblox through a Model, it contains 3 different objects:
’Leaderstats’: GLeaderboard already contains its own Leaderstats created, it can be changed to suit the developer who uses it, in the same way, you can create your own Leaderstats, and use GLeaderboard through require (). I suggest putting it in Server ScriptService.
’Leaderboard’: This is the main board, it must be placed in Workspace, otherwise GLeaderboard will not work.
’README’: A guide within a Script, which helps in the placement of all objects in their corresponding directories.
It seems to work even with datastore2, but I’ve run into some bugs like double player stats (e.g., Xaioro - 50 points, Xaioro - 50 points, etc.) or stats to only the top 10 players. I’m suggesting making the leaderboard wall a scrollable UI and making it handle a lot since I have a big game and it’s getting some bugs in the global leaderboard because of the number of players.
Yes, that’s a nice idea, and thanks for your comment! You would have to change your leaderstats, GLeaderboard may store decimal numbers. The system of it is the next: It get the leaderstats name passed through arguments in :SetData(), and gets the data from the Object. Then, it stores the data into OrderedDataStore.
I think the biggest downside to this is how it doesn’t seem to have easily-editable UI. I think that making a customization option would help so that we can make a leaderboard that fits a certain game style.
I mean built-in features to make it easy. The only way is to fork the module which is just a pain to deal with. If I was able to easily set something like the frame that lists the players, or the textlabel that has the players name, etc. that would be helpful.