AdvancedServerList
5.9.1A plugin to display a custom MOTD, Player count text, player count hover and Favicon using conditions and priorities.
5.9.1latestv5.9.1 (velocity)Sep 27, 2026 This update is bumping Dependencies, namely cloud-paper, to support 26.3, which didn't reliably work due to errors.Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating on my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any person who donated will be mentioned in the next release, if their name isn't inapropriate.5.9.0v5.9.0 (paper, folia)Jul 3, 2026 PLEASE READ BEFORE UPDATING!
This update brings various important changes alongside a known issue/limitation on Paper Servers (More below). Please make sure to read this update completely before deciding to update.Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating on my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any person who donated will be mentioned in the next release, if their name isn't inapropriate.Removal of BungeeCord support
Due to recent dependency issues and the fact that a [long standing issue blocking Dialog support for ASL on BungeeCord](https://github.com/SpigotMC/BungeeCord/issues/3871) hasn't been addressed yet after almost a year, did I decide to finally drop BungeeCord support. This means that with this version onwards, will ASL only support Paper, Velocity and possibly forks of these two (If they do not bring breaking API changes). I'm sorry about this sudden change, but I simply cannot see a reason to support a dated, inefficient Proxy software like this anymore.Paper: Known issues
The dialog system for/asl profiles edit <profile>will not display content of a profile correctly on versions prior to 26.x (Encountered on 1.21.11). I cannot currently think of a possible solution other than distribution a separate jar build using the 1.21.11 API of Paper. Dialogs seem to work fine on 26.x (Tested on 26.2).Changes
Improvements of Commands
The commands have been organized into their own set of record classes, to allow easier maintenance and overall better organisation. Function-wise should there've been no notable changes.26.x support
The plugin uses the 26.1.2 API of Paper and should work on these versions alongside 26.2.Dependency updates
Several dependencies have been updated.5.8.0v5.8.0 (velocity)May 3, 2026 This is a small update that bumps the version of the ExpressionParser to v1.7.0-b1 which allows ASL to provide custom extra arguments to the parser without the need of using a hacky workaround. Additionally is the condition parsing now wrapped in a try-catch to prevent stacktraces from filling your console if someone with f.e. a wrong/malformed protocol version (A bot?) pings your server and the parser fails due to an unexpected exception. It will now only print a warning with the exception reason. Whendebugis enabled will it also give the Stacktrace.Ko-fi supporters
This update was supported by... JW! If you can, consider donating to my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any donators will have their names mentioned in the next release of this plugin as a thank you. Note that I may not mention your name, if it appears to be inapropriate or otherwise indecent.5.7.3v5.7.3 (velocity)Mar 20, 2026 This update brings two smaller changes alongside smaller dependency updates: 1. The PAPIUtil now uses a CacheKey created from the Player's UUID and the text to parse, to properly separate individual text with placeholders to parse. This should fix errors like the Favicon option suddenly having MOTD text present, causing errors. 2. The FaviconHandler now only prints stacktraces for its errors, if thedebugoption was enabled.Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating to my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any donators will have their names mentioned in the next release of this plugin as a thank you. Note that I may not mention your name, if it appears to be inapropriate or otherwise indecent.Before updating...
It's recommended to always make backups before updating the plugins. While I try to test features, I cannot test everything due to a lack of a proper server setup with active players on it. As such can bugs and issues appear. Always [report them on Codeberg](https://codeberg.org/Andre601/AdvancedServerList/issues) when you find them. Thanks.5.7.2v5.7.2 (paper, folia)Jan 2, 2026 This patch update fixes a bad argument length check for the date placeholder, specifically the isBefore, isExact and isAfter placeholders. This fix was done by @UninenVille. Thanks!Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating to my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any donators will have their names mentioned in the next release of this plugin as a thank you. Note that I may not mention your name, if it appears to be inapropriate or otherwise indecent.Before updating...
It's recommended to always make backups before updating the plugins. While I try to test features, I cannot test everything due to a lack of a proper server setup with active players on it. As such can bugs and issues appear. Always [report them on Codeberg](https://codeberg.org/Andre601/AdvancedServerList/issues) when you find them. Thanks.5.7.1v5.7.1 (bungeecord, waterfall)Jan 1, 2026 Happy new year everyone! This small update fixes a NullPointer issue reported in #537 where using/asl profiles setwould give a NullPointerException. This was caused due to a missing Meta Key to set the command type (Whether it can only be used by player or also console). Thanks to @UninenVille for reporting!Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating to my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any donators will have their names mentioned in the next release of this plugin as a thank you. Note that I may not mention your name, if it appears to be inapropriate or otherwise indecent.Before updating...
It's recommended to always make backups before updating the plugins. While I try to test features, I cannot test everything due to a lack of a proper server setup with active players on it. As such can bugs and issues appear. Always [report them on Codeberg](https://codeberg.org/Andre601/AdvancedServerList/issues) when you find them. Thanks.Updates
- Fix #537 (NullPointerException for/asl profiles set)5.7.0v5.7.0 (paper, folia)Dec 19, 2025 It has been a long time since a proper release was made, so I now decided to make one and actually make it a proper release, instead of a beta, as I haven't heard about any issues with the Dialog system on Paper and consider it stable. As a quick note, I do plan to implement Dialog support into BungeeCord as a last, final update for the platform, before finally dropping support for it. But until an [annoying issue is fixed](https://github.com/SpigotMC/BungeeCord/issues/3871) am I unable to ship this feature for people to use. If you know possible causes and/or ways to fix it, maybe contribute to BungeeCord (Or this plugin if it actually is a mistake on my end) to get it fixed!Ko-fi supporters
This update was supported by... nobody ;-; If you can, consider donating to my [ko-fi](https://ko-fi.com/andre_601) to support this project. Any donators will have their names mentioned in the next release of this plugin as a thank you. Note that I may not mention your name, if it appears to be inapropriate or otherwise indecent.Before updating...
It's recommended to always make backups before updating the plugins. While I try to test features, I cannot test everything due to a lack of a proper server setup with active players on it. As such can bugs and issues appear. Always [report them on Codeberg](https://codeberg.org/Andre601/AdvancedServerList/issues) when you find them. Thanks.Updates
Support for newer MC versions
Newer MC versions (1.21.11 for example) should now be properly supported by the plugin. They weren't due to dependencies, namely Adventure, not being updated, which should now be the case.LuckPerms Addon
A new Addon, namely the [LuckPerms Addon](https://asl.andre601.ch/addons/first-party/luckperms/), has been created and is now available to use. It will provide placeholders to use in conditions to check for things such as the player's primary group, if it has a specific group or if it has a specific permission. This addon does has some downsides tho, namely the fact that LP's retrieval of User data is asynchronous, but due to various issues and limitations, the addon forces the data to be given synchronous, causing possible lag. This is mitigated by caching the data for 1 minute.New
A new placeholder set named [dateplaceholder setdate](https://asl.andre601.ch/profiles/placeholders/#date) is available for use. It allows you things related to dates such as getting the current date, whether it is before, excactly or after the specified date. Each placeholder accepts an optional pattern to represent the date with. As an example,${date current dd/MM/yyyywould return19/12/2025for the current date of this release.MiniPlaceholders support
This version brings (experimental) support for MiniPlaceholders on Paper and Velocity. Note that only global placeholders/tags, meaning those not requiring a player, are actively supported, as per-player tags aren't due to various limitations. Also, just as with PAPI placeholders are MiniPlaceholders tags not supported in theconditionoption. I do hope this feature is working well for you.5.7.0-b2v5.7.0-b2 (paper, folia)Jul 22, 2025 This update fixes aNoClassDefFoundErroron Paper versions before 1.21.7 (Before their implementation of a Dialog API). The entire Dialog handling was rewritten in the process, making it a lot more platform-agnostic too, allowing future expansion into other platforms (Velocity) once API becomes available.5.7.0-b1v5.7.0-b1 (bungeecord, waterfall)Jul 16, 2025 This beta introduces a new command allowing you to edit profiles ingame using the new Dialog feature, and also announces the planned discontinuation of BungeeCord support.New Dialog-based edit feature
A new command called/asl profiles edit <profile>was added to allow editing of profiles ingame using the Dialog feature introduced in MC 1.21.6.IMPORTANT
This feature currently only supports Paper Builds 17 and newer for 1.21.7 due to older builds not having the necessary API and Velocity having no Dialog support yet. Once Velocity provides Dialog support will it be added to the plugin.Discontinuation of BungeeCord support
v5.7.0will be the final version of AdvancedServerList that will support BungeeCord. I simply cannot see any good reason for keeping support given the existance of Velocity - a far superior Proxy. Note that the plugin can work on future BungeeCord versions, especially due to their attempts at keeping backwards compatability, but it's not guaranteed. This means, that oncev5.7.0has been released, there will be no future updates -including bug fixes - for it anymore.5.6.0v5.6.0 (paper, folia)Jun 25, 2025 As promised last time is here a proper release ofv5.6.0which I call the "Favicon Overhaul". This update provides significant changes to the FaviconHandler, providing a new feature in the form of Favicon merging and also a config.yml option to set how ASL should handle images with sizes that aren't exactly 64x64 pixels.FaviconHandler improvements
The FaviconHandler has received major improvements. First of all are PlaceholderAPI placeholders now supported. Additionally was the async handling of Favicon creation simplified, as it was overcomplicated before.Favicon merging
A new feature was added called favicon merging. With this feature are you able to combine multiple sources into a single favicon, allowing more complex, dynamic favicons to be created. To merge favicons, add new entries to the String separated by semicolons. As an example${player uuid};border.pngwould first place the Player head followed by puttingborder.pngover it. The result would be similar to this: Jun 19, 2025 This update adds afaviconStrategy: <string>option to the config.yml This option allows you to change how AdvancedServerList should handle images for a favicon, that do not have a size of 64x64 pixels. The following Options are available: -resize(Default): Resizes the image to fit the 64x64 pixels area. -center: Doesn't resize the image, but instead centers it as good as possible. -none: Doesn't resize nor center the image. It simply puts it at 0,0 (top-left corner of the favicon) unchanged. Note that the favicon itself is always 64x64, even if the images depicted in it are smaller. This is simply due to Minecraft requiring such a size. This option should allow some creative aproaches with Favicons, especially when combined with the favicon merging published in the previous beta. Should there be no reports of bugs or similar do I plan to publish a proper release during the next week.5.6.0-b1v5.6.0-b1 (bungeecord, waterfall)Jun 3, 2025 This Beta brings support for PlaceholderAPI placeholders in the Favicon and a new feature of Favicon merging!PlaceholderAPI support in favicon
For whatever reason did the plugin not support placeholders from PlaceholderAPI in the favicon option. This has been changed now.Favicon merging
The Favicon option now allows you to merge multiple values into a single Favicon to display. To use this option, separate each part with a semicolon. Each part supports the same options as a normal favicon, meaning you can use URLs, a placeholder that turns into a player name/UUID or an image name maching one in the favicons folder. As an example, setting${player uuid};border.pngcan return a favicon like this: Feb 6, 2025 Fixes a NoClassDefFoundError you encounter on Paper. This was due to the fact that the cloud-paper dependency wasn't shaded into the jar itself.5.5.0v5.5.0 (paper, folia)Feb 5, 2025 This update brings three significant changes: The addition of new operands for the condition option, the move to cloud for command handling and some new commands. Please note that I tried my best in testing these changes, but given I do not have an actual server can there be bugs and issues. Please report them to me if you encounter them! Also, do note that the plugin now compiles against Java 21. But given there being no stats listing Java 16 should this not be an issue here. If it is for you, update your Java version please.New operands
There are three new operands that can be used within your conditions: -|~Starts with (Ignoring case) -~|Ends with (Ignoring case) -<~Contains (Ignoring case)Move to cloud command framework
The plugin is now shading in and using the Cloud command framework by incendo, to have some better overall handling of commands, including improved tab completion. The/asl helpcommand has also been changed. It now uses theMinecraftHelpclass from cloud to display a list of all available commands with hover and click actions. It also allows you to provide a query to search for specific commands (Has suggestions and tab completion available).New commands
New commands have been added to further improve the handling of profiles in the plugin:/asl profiles info <profile>This command provides you with information regarding the selected profile. The returned tree will be a representation of the profile's options, including whether they are set or not and what value they may have. Additionally do most of these options have click actions to receive a matching/asl profiles setcommand to set or reset the value accordingly./asl profiles set <profile> <option> [value]This command allows you to update an option's value. What values you can set depends on the provided option (i.e.priorityonly allows whole number values). The optionsmotdandplayercount.hoverallow you to set multiple lines by using either\nor<newline>in the text. Finally can you also leave[value]blank to reset the option to its default value, which usually is an empty String or List. Note that the returned success response has a hover for the mentioned option that shows the old and new values you have set.5.4.1v5.4.1 (paper, folia)Jan 6, 2025 This is just a small fix to addhidePlayersHoverto theignoreMaintenanceoption in the config.yml alongside adding the option to the default.yml file. As usual should the plugin make a backup and migrate the config.yml on its own.5.4.0v5.4.0 (bungeecord, waterfall)Jan 5, 2025 This update brings two changes to the plugin, the first being a newplayerCountoption calledhidePlayersHoverand the second being a small refactoring of the command usage output.New
This option is part of thehidePlayersHoveroptionplayerCountoption, similar tohidePlayers. When set to true will it remove the list of players (or custom text ifhoveris used) from the player count when hovering over it. Do note that I couldn't test this option properly, as I do not have a server with players on it to test, but it seems to work. Do also note, that enabling this will automatically disable thehoveroption.Smaller refactoring of the Command usage text
The commands displayed when f.e. running/asl helpis now a bit more detailed in terms of hovering over it. Individual arguments will now have a hover describing their purpose. Here are some screenshots: Dec 29, 2024 This update brings basic support for SayanVanish to the BungeeCord and Velocity versions of AdvancedServerList.What does this mean?
Should a player be vanished through this plugin will AdvancedServerList not count it for the online player count, similar to how it did this for PremiumVanish already.5.2.1v5.2.1 (bungeecord, waterfall)Dec 24, 2024 Styled Log messages
The plugin now makes use of the ComponentLogger provided by Kyori Adventure, allowing to have more styled messages. This Library was implemented into Paper around 2 years ago and into Velocity 3.2.0-SNAPSHOT. This means should you be using older versions will the plugin not function properly. BungeeCord won't use the componentlogger and therefore won't have styled log entries.Added
The config.yml now has aprintBannerconfig optionprintBannerboolean option. When set to false will the plugin no longer print the "ASL" ASCI art in the console. I personally can't see why this logo should bother you so much, but here you go if it really bothers you... As usual should the plugin automatically create a backup and migrate the config for you. If not present will the option default totrue.Reduced startup messages
The number of text printed in console on startup has been reduced. Some messages were removed, while others got moved into debug, meaning they only display whendebugis enabled in the config.yml file.5.2.0v5.2.0 (bungeecord, waterfall)Dec 20, 2024 Bit of an early christmas present for you all. This update provides a feature some of you have been waiting for: Center support formotd! It also has some notable changes making it incompatible with older Paper servers.MOTD Centering
The feature is relatively simple. Start a line with<center>and the plugin will try to center it as good as possible using spaces. Example:
Result:  in 1.19 builds of Paper, tho notable breaking changes regarding dependencies were introduced in later 1.19.4 builds of Paper. To be on the safe side here will releases on Modrinth and Hangar now only list 1.20+ versions as supported.5.1.2v5.1.2 (paper, folia)Dec 10, 2024 This small update should hopefully fix an issue where aIndexOutOfBoundsExceptioncould be raised in Conditions if only using a placeholder. Truth be told, I'm not sure if this issue is fixed for good or not, as I wasn't really able to properly reproduce it. But the way I understand it is this: I had a system in place where the index (Current position in the full text) would be increased by one, if the placeholder was parsed in a condition. This had a unwanted side-effect here, where if you only used a Placeholder for the condition, it could cause the aforementioned exception. It could also happen, if the condition ended with a placeholder. As an example, here are the indexes indicated on a condition after handling the placeholder:
I really hope this issue is now fixed, as I otherwise have no idea what could be the problem.# This one is fine. ${player name} != "Anonymous" ^ # This one is Out of bounds ${player isWhitelisted} ^ # This one is also Out of bounds "Anonymous" != ${player name} ^5.1.1v5.1.1 (paper, folia)Dec 10, 2024 This is a small update that only changes the MiniMOTD Migrator. It now also converts "random" being set as favicon option given the recent update of allowing random favicon to be set in AdvancedServerList. Only other changes are some dependency bumps.5.1.0v5.1.0 (bungeecord, waterfall)Dec 1, 2024 This update adds the option to setrandomas the favicon option. Doing so will make AdvancedServerList pick a random image from its favicons folder, if any are available. This can be useful for setups, where you want a randomized MOTD and Favicon without having to makeprofilesentries for every possible combination.5.0.5v5.0.5 (bungeecord, waterfall)Oct 10, 2024 AdvancedServerList now caches the CompletableFuture PAPIProxyBridge gives for finding servers, rather than the actual result (which may be null). This should hopefully help in improving compatability of the plugin without having to block threads, causing larger delays.5.0.4v5.0.4 (velocity)Oct 5, 2024 Due to an oversights was hover text not being sent through PAPIProxyBridge to be parsed by PlaceholderAPI. This should now be fixed.5.0.3v5.0.3 (bungeecord, waterfall)Oct 2, 2024 There is no longer a warning whenever the plugin is unable to ping a server. Other than that was there only some smaller code cleanup.5.0.2v5.0.2 (paper, folia)Oct 1, 2024 Another small fix for the BanPlugins Addon. This update fixes a wrong name for the Paper version, where the plugin expects AdvancedBans when it should be AdvancedBan.5.0.1v5.0.1 (bungeecord, waterfall)Oct 1, 2024 This is a small bugfix correcting a wrongly set main class for the paper version of the BanPlugins Addon.5.0.0v5.0.0 (velocity)Sep 27, 2024 This is a major plugin release, meaning it has breaking changes due to API changes, making it incompatible with plugins using the v3 API of ASL.Breaking Changes
- API was bumped to v4 due to major breaking changes: -ProfileEntry#extraPlayersCount()andProfileEntry#maxPlayersCount()now return a String instead of an Integer. - Methods inProfileEntry.Builderto set max and extra players count also have changed to accept Strings instead of Integers. - Deprecated methods inProfileEntry.Builderhave been removed.Additions
- New Server List Profile OptionOnlinePlayers- It allows to modify the online player count to any number value you like. - It has the same structure as theExtraPlayersandMaxPlayersoption, meaning it's underPlayerCountand has the optionsEnabled: <boolean>andAmount: <String>- Should an invalid number be provided will it default to the current online player counts. - IMPORTANT: Similar toExtraPlayersandMaxPlayersinfluencing${server playersMax}does using this option modify${server playersOnline}(Except when used inCondition). It also alters the output ofExtraPlayersdue to it addingxnumber to online players. - New${proxy ...}placeholders were added for the BungeeCord and Velocity version of the plugin. - These allow you to retrieve the motd, online players, max players, etc. of a Server connected to the proxy. - This system uses pinging servers every 10 seconds, so it may take a while for values to update properly.Changes
-ExtraPlayersandMaxPlayersoptions now accept a String instead of an Integer. - This allows the usage of placeholders that return a number. - All${server ...}placeholders now return an empty String instead ofnull. - This should avoid random situations of some placeholders being treated as "invalid" despite being a supported placeholder. See [#317](https://codeberg.org/Andre601/AdvancedServerList/issues/317) for such a case. - Actually unknown placeholder values (i.e.${server invalidValue}) will still returnnulland be therefore treated as invalid.4.13.1v4.13.1 (velocity)Aug 29, 2024 This update fixes an issue, where the FaviconHandler stores local favicons using their non-lowercased file-names, while checking for an all-lowercased filename when getting it. This means, if you had a file namedExample.pngwould the FaviconHandler save it as such but always check forexample.png, which results in it failing. This has now been fixed.4.13.0v4.13.0 (paper, folia)Aug 12, 2024 A new Placeholder called${maintenance maintenanceEnabled}was added to the plugin. It gets registered when the [Maintenance Plugin](https://hangar.papermc.io/kennytv/Maintenance) by KennyTV is present on the server/proxy and allows you to return true or false based on if the global maintenance mode is active or not. Other than that have there mostly been some smaller code improvements to the plugin. You should (hopefully) not notice a difference.4.12.1v4.12.1 (bungeecord, waterfall)Jul 30, 2024 The UpdateChecker has received some improvements to hopefully help in fixing lag and slowdowns in case the Modrinth API is down or struggling. The HTTPClient used now times out after 5 seconds of no response. In addition is the message players receive on join (if they have permissions) done inside a CompletableFuture'swhenComplete(...)method, meaning the sending of the message is done outside the main thread itself, which should help reducing the load on the main thread.4.12.0v4.12.0 (bungeecord, waterfall)Jul 11, 2024 This update fixes an issue, where the hover did not work when using the plugin on a 1.21 Paper Server. The reason was breaking changes within Paper's code (Which afaik go even back to the latest 1.20.6 builds) that made AdvancedServerList's way of updating the hover no longer functional. I've implemented a fix for this now. The plugin should also still work on older Server versions, but I want to emphasize that I do not guarantee this and should this old API be removed in the future, will I not implement a hacky backwards aproach but instead simply remove this old code. With that said will I still try to fix smaller issues with this hover, if they are within my skillset to do so.4.11.1v4.11.1 (paper, folia)Jun 6, 2024 This is a small update that only updates some dependencies which also adds proper support for 1.20.6 in BungeeCord (Which wasn't the case before, because apparently adventure platform bungeecord wasn't supporting it.)4.11.0v4.11.0 (paper, folia)May 25, 2024 This update reworks the command handling a bit while also adding a new sub-command calledprofiles.Command overhaul
The command system has been tweaked to add some quality of life changes. Namely, the help command now contains hover and click actions for the listed commands, to show usage of command, permission required and description respectively, while also putting the sub-command into your chat-bar when clicking it.Profiles sub-command
A newprofilessub-command has been added. It allows you an easier creation of new profiles. There are the following options available: -/asl profiles add <profile>- Create a new Profile with file name<profile>-/asl profiles copy <profile> <name>- Make a copy of<profile>and save it as file<name>-/asl profiles list- Show all loaded profiles. This list has hover text showing priority, condition and whether the profile is considered valid.Screenshots
Here are some screenshots showing all the changes. ![clearcache command hover](https://codeberg.org/Andre601/AdvancedServerList/raw/bran… ![profiles command hover](https://codeberg.org/Andre601/AdvancedServerList/raw/bran…
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.3MSueta
Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
Chunky
Pre-generates chunks, quickly and efficiently
20.8MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta