This update adds a new feature to the server list profile. This also includes changes to the API.
Note about 1.20.2
I am aware that 1.20.2 is available now. And I'm confident that my plugin works on BungeeCord and Velocity, and also will work on Paper once they publish first updates.
However, Spigot is not supported yet, which is due to the plugin's dependance on ProtocolLib which has yet not received any update for 1.20.2 from what I know.
New maxPlayers
option
The server list profile now supports a new section called maxPlayers
. It is part of the playerCount
section and behaves similarly to the extraPlayers
section.
The difference here is, that the number you provide is used as the max player count to display while extraPlayers adds it to the online players and uses that for the max player count.
Note that extraPlayers takes priority over this new option, so if you want to use maxPlayers, you have to disable or remove extraPlayers.
Example configuration:
priority: 0
# We use just colour to hide the MOTD
motd:
- '<grey>'
- '<grey>'
playerCount:
maxPlayers:
enabled: true
amount: -1
Result:
API updated
The API has been updated to v3.1.0
.
It includes support for the above mentioned maxPlayers feature but also a deprecation.
Please read the v3.1.0 changelog for details.
This update, despite being only a Minor one, brings some significant changes to AdvancedServerList... Tho not necessarely as a plugin only.
AdvancedServerList moved to Codeberg.org
From this version onwards will AdvancedServerList be hosted on Codeberg.org instead of GitHub. There are various reasons, but the main one is, that I just like Codeberg more, even if GitHub with their GitHub Actions is quite nice.
What this means now is, that the GitHub Repository is semi-archived... It will still be open and I'll still manage issues there, but you won't receive active Updates there anymore and I hightly recommend to check Codeberg instead. Releases will (obviously) still be available on Modrinth and Hangar, just don't expect any releases on GitHub anymore.
Wiki has moved too
For the third time (First time was github wiki to github pages wiki and second time changing from andre601.ch/AdvancedServerList
to docs.andre601.ch/AdvancedServerList
) has the Wiki of AdvancedServerList moved.
You can now find it under https://asl.andre601.ch.
Pages on the former Wiki location (docs.andre601.ch/AdvancedServerList
) will have a banner at the top informing you about the move while also linking to the new place.
Tho, keep in mind that the pages may not be up-to-date here...
Changelog
Maintenance Plugin support
Added support for KennyTV's Maintenance plugin. If said plugin is loaded on the server will AdvancedServerList hook into its API to check if maintenance mode is enabled. If it is will it not manage the server list to avoid possible conflicts.
As of right now is there no logic in place to check on the proxy, whether maintenance mode only affects a specific server or not, so keep that in mind.
This update includes the changes of the Previous Beta Version, so make sure to read it.
Changes to reload command
The /asl reload
command will no longer clear the Player and Favicon caches when used.
If you still want to clear the caches, use /asl clearcache
instead.
⚠️ WARNING: This is a BETA
Due to a lack of a proper server network was I unable to test out this plugin version. I'm confident that it will work, but I do not give any guarantees.
Make sure to create backups of your server!
PAPIProxyBridge support
This update implements support for the plugin PAPIProxyBridge which allows the usage of PlaceholderAPI placeholders on your BungeeCord or Velocity proxy.
Do note that AdvancedServerList requires at least version 1.3 of PAPIProxyBridge to work due to new methods being implemented by that plugin.
Favicon improvements
The FaviconHandler - the class responsible for the favicon creation and management - has received some changes.
The creation of the Favicon has been wrapped into a CompletableFuture, allowing asynchronous creation. Tho, this also means that if the CompletableFuture is not done yet when the plugin requests the favicon will null
be returned, which is treated as no favicon being applied.
This hopefully helps with Waterfall reporting the plugin being slow whenever a favicon is being used...
There is a rare chance that gson.fromJson(Reader, Type)
will return null
in the PlayerHandler loading process, which causes an NPE to happen.
This should be fixed now and AdvancedServerList will print a warning about the JSON not being parsable, which seems to be the only explanation for this to occur.
This update brings a few minor improvements to the plugin.
New whitelistEnabled
placeholder
The Spigot/Paper version now has a new ${server whitelistEnabled}
placeholder. When used will it return true or false based on if the whitelist is enabled.
Multiple worlds/servers for playersOnline
The playersOnline
placeholder now allows to set multiple worlds/servers separated by spaces.
When multiple are provided will the placeholder combine each player count and return the total.
Config backups
The plugin will now make a backup of your old config whenever it makes a config migration. This should help restore an old config in case something breaks.
Should the backup fail will the entire config migration be cancelled.
Backups are stored in a dedicated backups
folder in the plugin's own directory and will have the format config_<ISO date>.yml
For Paper users
Paper introduced changes to the paper-plugin.yml
file in regards to the Dependencies declaration in more recent 1.19.4+ patches. What this means is, that this version of AdvancedServerList is only compatible with the latest releases of Paper for 1.19.4 and newer!
Trying to use it on any versions before these patches will result in an exception.
I cannot guarantee that the plugin works on any forks such as Purpur or Pufferfish, so make sure to check if they include these patches before using this version of AdvancedServerList.
Server placeholder changes
The Server placeholder now allows you to add an additional argument in the form of a world or server name (Depending on the platform you use it on).
This allows you to display the online players in a world or server, or the host used for a specific server.
Please refer to the wiki for more details.
Config Migrator
The main config.yml has received changes, mainly in terms of its formatting. This means the old config isn't compatible anymore.
Thankfully does the library used by AdvancedServerList offer a migration tool.
This means that it will automatically migrate the config to the new format while preserving existing settings.
However, a backup is still recommended.
Also, the migration will remove any existing comments within the config.yml
There is now a configVersion
setting. Do not edit this option! It determines whether the config needs an update or not.
New operators
~=
and !~
have been added as operands for the conditions.
~=
checks if the left value is equal to the right value, while being case-insensitive.!~
checks if the left value is not equal to the right value, while being case-insensitive.
Updated ASL API
The ASL API has been updated to v3.0.0
Full changelog can be found here