Long time no update ey?
This update brings an important change to the project. Namely, the Spigot platform will no longer be supported by AdvancedServerList.
There are many reasons, but the main one is, that I don't like having to rely on a 3rd-party plugin for features that other servers provide out of the box. It stops my plugin from working on newer versions on Spigot because I have to wait for the dependency to update, which may also bring breaking changes, making it possibly incompatible with former server versions.
The plugin will now print a huge warning and disable itself should it not detect specific classes present in Paper, so make sure your server is paper-compatible.
Other changes
There also were some other changes. One is in fact a breaking one and related to the ${server ...}
placeholders.
Previously, the ${server playersOnline}
would allow a space-separated list of server or world names to count the players in and display.
Issue is that I messed it up and didn't really split the string up at the spaces (Or rather I limited it to two parts: playersOnline
and whatever followed it afterwards). Also, using spaces feels weird... So I now changed it to split at commas.
This means that instead of ${server playersOnline lobby1 lobby2}
the new syntax would be ${server playersOnline lobby1,lobby2}
This update brings some signifcant changes to the placeholders provided by AdvancedServerList to use in PlaceholderAPI.
If you use %asl_extra_players_max%
read this changelog carefully as it has important news for you.
New placeholders %asl_playercount_maxplayers%
and %asl_server_maxplayers%
2 new placeholders have been added, each providing their own kind of functionality.
%asl_playercount_maxplayers%
will return the value ofplayerCount -> maxPlayers -> amount
. This value can returnnull
, so keep this in mind.%asl_server_playersmax%
will return the effective output of${server playersMax}
. This placeholder is meant as a replacement for%asl_extra_players_max%
's old behaviour (Read below for details)
Changes, deprecation and future replacement of %asl_extra_players_max%
This placeholder is planned to be removed in the next release, but for now still exists for you to use. There is however a new placeholder that will take its place, which is %asl_playercount_extraplayers%
.
The change was made to keep it consistent with the profile structure itself.
Another important thing to note is, that this placeholder (And its deprecated counterpart) will no longer return <online players> + <extraPlayers amount>
but instead just the value of playerCount -> extraPlayers -> amount
.
This value can return null
so keep that in mind.
To keep using the old behaviour, use %asl_server_playersmax%
instead.
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.