
ajLeaderboards
Create leaderboards for almost anything!
- Загрузки
- 103K
- Подписчики
- 197
- Обновлён
- 10 июня 2026 г.
- Лицензия
- GPL-3.0-only
Опубликован 17 августа 2022 г.
ajLeaderboards
ajLeaderboards is a plugin to allow you to create leaderboards for basically anything using PlaceholderAPI placeholders.
- Supports server versions 1.8.x-1.21.x & 26.1.x and will (almost certainly) work fine on new MC versions without requiring an update.
- Can be used to make leaderboards from basically any plugin, it just needs to have a PAPI placeholder that returns a number.
- Can show player prefixes/suffixes (from Vault) on the leaderboard
- Display leaderboards anywhere that PlaceholderAPI is supported (holograms / display entities, NPCs, etc.)
- Display leaderboards on signs (built-in and fully customizable)
- Display leaderboards with NPCs (using PAPI, see wiki)
- Players' heads above signs
- Players' heads on Armor Stands
- MySQL supported (to make sure leaderboards are synced, the target placeholder must also be synced)
- "Extra" placeholders (allows you to display any placeholders' text alongside the leaderboard)
- Timed leaderboards that reset automatically without effecting all-time stats (hourly, daily, monthly, etc.)
- Folia Support
- More features to come! (request them)
A leaderboard displayed using holograms
A NPC leaderboard using Citizens
A sign leaderboard (using the built-in signs) with heads.
(also supports Armor Stands, and the heads are optional)
Interactive hologram leaderboards using DecentHolograms' pages feature.
Basically, each timed type is a separate page, and the pages are switched by clicking.
You must have PlaceholderAPI installed!
Setup is pretty straightforward.
You just use the /ajLeaderboards add command to start tracking a placeholder that returns a numberical value (a number).
Then, as players join, they will be added to the leaderboard.
To display the leaderboard, you use the PlaceholderAPI LB placeholders, or use the built-in signs.
For a more detailed (and explained) setup process, including the exact requirements for the placeholder you put in /ajlb add,
check out the setup guide on the wiki.
Before trying to get support, please read the FAQ
After reading the FAQ, if you have any questions, suggestions, or issues with the plugin, please contact me on any of the below methods:
(Discord is preferred and the quickest way to get a response)
AI Support is also available on the Discord server, which you can get instant support from. It is able to answer the vast majority of questions and solve most issues that people ask about in support.
AI Support is always optional, and you do not need to use it if you don't want to.
PLEASE use my AI support instead of a public chatbot such as ChatGPT or Gemini. Public ones make stuff up a lot more often than mine does, since they do not have direct access to the wiki.
My AI support has direct access to the wiki, which means it has the most up-to-date information and recommendations.
Pre-Releases (also known as dev builds) are builds of the plugin from the dev branch,
which may contain unstable and/or untested changes.
You can download them on Modrinth
and Voxel.shop (formerly Polymart).
They are not available on Spigot because Spigot does not allow a separate release channel for them.
Make sure you download it from the "Versions" or "Updates" tab, because if you download from the main download button,
you will probably get the latest full release instead of the latest Pre-Release.
The version you download should have a build number on the end of the version name (e.g. 2.10.1-b320).
If this build number is missing from the version name or the jar name, it is not a Pre-Release.
bStats
This plugin collects anonymous usage information via bStats. It can be disabled in bStats' config file.
Some icons made by authors from www.flaticon.com
Ченджлог
2.11.0-b333Бета26.1, 26.1.1, 26.1.2 · 10 июня 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0-b332Бета26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0-b331Бета26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0-b330Бета26.1, 26.1.1, 26.1.2 · 16 мая 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0-b329Бета26.1, 26.1.1, 26.1.2 · 9 мая 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0-b328Бета26.1, 26.1.1, 26.1.2 · 24 апреля 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
2.11.0Релиз26.1, 26.1.1, 26.1.2 · 20 апреля 2026 г.
Hey everyone! Here's a bunch of fixes/features that have accumulated since the last update. I'm mainly pushing this main release to fix the issues with the new Minecraft versioning, but it also includes a bunch of other new fixes/features that some people will like.
- Use probably faster way of fetching players' positions on the leaderboard. Should lead to less database cpu usage if you struggled with it before (no difference on my machine even with stress testing, but I didnt see issues with the old one. Some people testing pre-releases have reported it fixed their issues)
- Use Java Virtual Threads if they're available (Java 21+). This allows for more efficient updates, and should also help with native-thread-limited environments (such as servers running in containers).
- ajLeaderboards will still work on <Java 21, but I highly recommend updating your Java version (Java is highly backwards-compatible so it will almost certainly work without any changes needed)
- Added an option to allow occasional updates of all offline players. It is per-board and disabled by default because a lot of placeholders don't support updating offline players.
- Added an alert if the Trojan that breaks the ajLeaderboards jar is detected, with a link to how to remove it. This checks the ajLeaderboards jar both on startup, and on an interval (to catch if the jar is infected later, but before a restart in case it breaks the jar)
- Sometimes it's surprising the number of people coming to support with this issue. I'm hoping this will reduce that number slightly.
- The Trojan seems to have a bug that incorrectly modifies the ajLeaderboards jar when spreading itself, which usually causes the plugin to fail to load on the next restart (but can sometimes still load but have other issues)
- Don't use pirated/stolen premium plugins y'all. That the main source of this Trojan, which would then spread to all other plugins on the server. At best it's only a backdoor for your server (allowing anyone to get op). At worse, it will steal all your passwords and/or logged in sessions.
- ajLeaderboards can now track 5 decimals, but by default will still round to 2 when displaying it. If you want, you can raise the rounded decimals in the config (
round-decimal-places) - Added
show-zero-decimalswhich lets you show decimals for specific boards even if they're 0. - Added
time-format-display-weeksto the config that allows you to not display weeks (e.g. show17dinstead of2w 3d) - Added
skin_uuidplaceholder, which returns the UUID instead of the name. - Fixed ajLeaderboards not handling Minecraft's new versioning system properly
- ajLeaderboards checks the minecraft version to decide which APIs it can use. The previous version ignored the major version (first number). Now it doesn't and properly uses modern APIs on MC >26.1 servers.
- Updates (from db to display, not player stat updates) are now throttled sooner, since in most cases the stat is updated in-place in the in-memory cache when the player is updated. This should lessen the effects of an overloaded (slow) db.
- Reduced the frequency of some internal checks. This probably will have minimal to no effect on performance but better safe than sorry.
- Use a separate scheduled executor for calculating how overloaded the DB is. Previously this used the Bukkit scheduler which would for some reason sometimes go crazy and spawn a couple hundred threads. Using the normal java scheduled thread executor fixes this.
- Maybe handle some timezones a little better. Some people in edge-case timezones had issues with timed type resets before, this should be fixed now.
- Better database error handling, which should prevent some theoretical memory leaks. I never saw any actual leaks here (and the situation where it might happen was already pretty rare), but now its not even theoretical, so better.
- Use a custom mirror for downloading dependencies. This should hopefully fix issues where maven central (or the other mirror used previously) goes down or is blocked for some reason. Some hosts and some countries block these for some reason, so using my own mirror for this should fix those cases.
- Handle placeholders returning NaN or Infinite values (instead of erroring)
- Skip signs in worlds that don't (or no longer) exist instead of throwing an error every time a sign update was attempted.
- Added a known colon time placeholder (Parkour personal best)
- Added
parse-placeholders-in-placeholdersoption to parse PAPI (bracket) placeholders inside ajlb placeholders. - Allow specifying board name(s) in the webviewer command, in case all of your boards together are too big to upload
- Fixed the relative extra placeholder always saying the extra doesn't exist, even if it does (dumb mistake on my part, I was reading the wrong argument)
- ajLeaderboards skips scheduling a reset (using the bukkit scheduler) if it is more than 16 minutes away. ajLeaderboards checks if it should schedule resets every 15 minutes so this won't break resets, just skips unnecessary scheduling.
- Catch errors that could happen during plugin shutdown, if something tries to access the db after its already been disconnected from.
- Messed with the shutdown logic to close things down a little better. This is to hopefully prevent any other rare errors during shutdown.
- Fixed exports of boards with certain characters failing (due to illegal filename characters)
- Added a warning to the config that custom comments are replaced when the config is updated.
- Eventually I hope to have a config updating system that, among other things, would keep your custom comments. But this is probably a long way off, so a warning is good for now.
- Send the number of boards registered on the server to bStats (anonymous usage statistics). Eventually I hope this will let me advertise "Powering xxxx+ leaderboards" or something, but is also just a cool number to see.
As always, if you have any issues with this update, please let me know (preferably by joining my Discord, invite link on the plugin page)
2.11.0-b327Бета26.1, 26.1.1, 26.1.2 · 20 апреля 2026 г.
Note: This is a potentially unstable (and possibly untested) build. It is not guaranteed to work, and may have issues.
If you do decide to run this, make sure to report any issues to support.
Changes in this build:
Комментарии
Загружаем…