Profiles (v1.5.3 and older) - Andre601/AdvancedServerList GitHub Wiki

wiki-moved Wiki moved!

The wiki has been moved to a new location and can be found here: https://docs.andre601.ch/AdvancedServerList

About

Looking for the current Profile options?

Click Here to get to the page for v1.6.0 and newer!

AdvancedServerList allows you to create multiple "profiles".
A Profile is simply a YAML file that contains a priority, conditions, motd, player list and/or player count.

With the exception of priority are all other settings optional, tho at least one of motd, players or playerCount needs to be set to have a valid profile configuration.

Options


Formatting

The following information can be applied to all text options available, with the exception of conditions not supporting MiniMessage formatting.

MiniMessage

AdvancedServerList uses MiniMessage from Kyori Adventure to format text.
While the MOTD option supports more advanced formatting such as HEX colours, gradients and translatable lines, are only basic color and formatting codes such as <red> or <bold> supported for players and playerCount.

The following MiniMessage features are NOT supported for any kind of config option:

  • Hover Actions (Show text, show item, etc.)
  • Click Actions (Execute command, suggest command, etc.)
  • Custom Fonts (May work, but would require an already active resource pack with the font)

Also, remember that features such as HEX colours only work on a 1.16+ server/proxy and will be downsampled to normal colors on older versions by the Adventure library.

Placeholders

AdvancedServerList supports a placeholder pattern adopted from BungeeTabListPlus, meaning the general format is ${<target> <identifier>}.
Placeholders can be used in all options except for Priority.

Please make sure to read the Notes about possible limitations.

Placeholder Notes Platforms Requires cached player?*
${player name} The name of the player. All Yes**
${player protocol} The protocol version the player uses. All No
${player version} The version the player uses displayed as MC version. Velocity No
${player hasPlayedBefore} Whether the player has played before on the server. Spigot/PaperMC Yes
${player isBanned} Whether the player has been banned from the server. Spigot/PaperMC Yes
${player isWhitelisted} Whether the player has been whitelisted on the server. Spigot/PaperMC Yes
${player uuid} The UUID of the Player. Spigot/PaperMC Yes
${server playersOnline} The number of online players. All No
${server playersMax} The number of players that can join. All No
${server host} The domain/IP the player pinged. All No
Any PlaceholderAPI placeholder*** uses the default %<identifier>_<values>% format. Spigot/PaperMC Yes

*When Yes, requires the player to have joined before while AdvancedServerList was running to have them "cached"
**Defaults to the text set in unkown_player in the config.yml when the player hasn't been cached yet.
***Cannot be used in Conditions


Priority

Type: Integer
Required: Yes

Sets the priority for this profile. When checking available profiles will AdvancedServerList go through each in order of priority, starting with the highest number.
It will go through each file until it finds one that has conditions returning true (Default when no conditions are set).

This means if you have a file with priority 0 and a condition that checks if a player uses 758 (MC 1.18) or older and another file with priority 1 and no condition will AdvancedServerList use the second file, even when the said player uses MC 1.18.

Conditions

Type: String List
Required: No

Allows you to define a collection of conditions that need to be met in order to have the profile displayed.
This setting works best with a higher priority to make sure it is checked first before any other file.

Only when all conditions return true will the profile be shown.

Operants

The following operands are supported:

Operant Description
< Checks if X is less than Y. In the case of non-integers will it simply compare the lengths of each string.
<= Checks if X is less than OR equal to Y. In the case of non-integers will it simply compare the lengths of each string.
> Checks if X is larger than Y. In the case of non-integers will it simply compare the lengths of each string.
>= Checks if X is larger than OR equal to Y. In the case of non-integers will it simply compare the lengths of each string.
= Checks if X and Y are equal.
!= Checks if X and Y are NOT equal.

Important!
Due to how expressions are currently parsed can you only use one operant per entry!

MOTD

Type: String List
Required: No*

Allows you to set the MOTD to display in the server list.
The plugin will only use the first two lines provided. Any extra ones will be ignored.

Remove this option or set it to motd: [] to not change the MOTD.

Basic colours such as <aqua> but also HEX colours (1.16+ only) and Gradients are supported through the MiniMessage format.

HidePlayers

Type: Boolean
Required: No

Allows you to hide the player count. Hiding it results in the player count being displayed as ??? rather than the usual <online>/<max> text.

Note that when this option is set to true will the options Players and PlayerCount be ignored.

Players

Type: String List
Required: No*

Allows you to override the hover text that usually shows the players online.

Remove this option or set it to players: [] to not change the player list.

Only basic colours through the MiniMessage format (i.e. <aqua>) are supported.

PlayerCount

Type: String
Required: No*

Allows you to override the text that usually displays the current and total amount of players for the server.

Remove this option or set it to playerCount: '' to not change the player count text.

Only basic colours through the MiniMessage format (i.e. <aqua>) are supported.

Favicon

Type: String
Required: No

Gives you the option to override the favicon with a different one.

Supported are:

  • Valid URL pointing towards an image
  • ${player name} placeholder to display the avatar of a player. Uses https://mc-heads.net for this.
  • Name of a file located in the favicons folder (i.e. example.png). The provided name has to end with .png and needs to be a valid PNG file.

AdvancedServerList will try to rescale the images to 64x64 pixels, so it's recommended to use an image with these dimensions.

XMore

Type: Integer
Required: No

When set to 0 or higher, will this option alter the max players count, by adding xMore to the online player count.
For example: With 20 online players would xMore: 0 show 20/20 and 20/21 with xMore: 1.

Note:
The ${server playersMax} placeholder will display the modified max player count when used in MOTD, Players or PlayerCount.
However, it will not use the modified max player count in conditions and instead use whatever the server/proxy has been configured to use.


*

You need to provide AT LEAST one of the three options for the profile to be valid. This means, not providing motd, players nor playerCount (Including leaving them empty) will result in the profile being considered "invalid" by the plugin.
⚠️ **GitHub.com Fallback** ⚠️