When freshly loading /baltop it takes approximately 2-3 minutes for the list to load, only for the cache to expire 2-3 minutes later. This is uh...not ideal. After some pondering, I think there's a few different routes that could be taken that could drastically improve things. Store balances in a database. This would CERTAINLY take a while to convert existing user balances to be stored in a database AND likely require a fair amount of custom code to get this to work. However, databases are GREAT at storing this type of data and ordering it. Taking the time to do this would make /baltop very quick and responsive. Given unlimited time / resources, this would probably be the "best" option. Prune inactive users. This is the idea that I like the least, however it would work. You'd certainly want a way to allow those inactive users to recover their data however, in case someone decides to return from a long hiatus. This might be more trouble than it's worth for many reasons. Increase the cache length. Probably the simplest option; increasing the cache length to...even 15-30 minutes could be incredibly nice in terms of at least being able to use baltop for a while without having to refresh it. Realistically, it's rare that someone needs fully up to date data when they're using baltop anyways.
idea 1 and 3 are great! As a skyblock player, i too get annoyed when i have to wait 3 mins to see who the rich people are on eco
Other than it being annoying with a long load time, unbeknownst to most running this command actually takes a toll on server resources. I remember during times of low tps in 2020-21 you could crash the server by running the command. Something needs to be done to optimise this as the list is only going to get longer and longer
The top 90 balances can be seen by clicking on the signs on the top 5 pedestals at /spawn. Albeit, it just shows players heads that you have to mouse over to see the names. The 90th player has under 6 million, which really isn't that much. Drogo doesn't know if anyone would want to see any more beyond this and as it appears they are already cached, perhaps have /baltop display just those 90 players. Maybe have an option to "see more" It would also be very handy if the balances had comma's at the thousand, million and billion place values. i.e. $93,234,945 instead of $93234945
Support. Waiting for /baltop to load is annoying. I really like ideas one and three. Both seem simple and easy to incorporate and shouldn't take Developers a long time to do so.