Перейти к содержимому
Mineforgian

ViaVersionStatus

Displays players' client versions when they join your server

Загрузки
24K
Подписчики
40
Обновлён
7 мая 2026 г.
Лицензия
GPL-3.0-only

Опубликован 25 февраля 2024 г.

Description

ViaVersionStatus will report which Minecraft versions your players are using when they join your server. Reports are sent to your server log file and online players with the permission viaversionstatus.notify. Optionally, if a player joins with a client version different than your server version, the plugin can send the player a warning that he's not using the matching client version. The plugin can also issue console commands based on the client's version.

Reasonable default values are provided in the configuration file, so you can simply put the plugin in your plugins folder and restart your server. The plugin requires ViaVersion and Java 17+.

Text shown when a player joins the game

Warning message shown to player using a non-recommended Minecraft version

Note that ViaVersion provides a command to show the versions of all currently online players: /viaversion list

Permissions

ViaVersionStatus has a number of permissions to allow fine-tuning of its behavior. However, all you really need to do is give the permission viaversionstatus.notify to admins you want to receive in-game version notifications when other players join. If you give yourself the '*' permission, you might also want to set viaversionstatus.notify.ignoresame to false.

Following are details of all ViaVersionStatus permissions:

Permission Details

The following permissions normally given only to admins, as they control the in-game notification given when players join the server.

viaversionstatus.notify - A player with this permission will get a message with the player's client version (as shown above) when they join the server. Defaults to op.

viaversionstatus.notify.ignoresame - A player with this permission will not get a message with the player's client version if the client's version matches the server's version. Defaults to false.

The following permissions apply to the players joining your server and can be used to control exactly which features of ViaVersionStatus will be invoked when they join. All of the following permissions default to false, so simply give a player(s) a permission to exempt them from the corresponding processing. Most of these features can also be disabled in the config file if you want to do so for all players.

viaversionstatus.exempt - Exempts this player from all processing at join.

viaversionstatus.exempt.log - Exempts this player from client version being logged at join.

viaversionstatus.exempt.notify - Exempts this player from notifying other players at join while also preventing them from triggering the configured join notification command.

viaversionstatus.exempt.notify.message - Exempts this player from notifying other players at join.

viaversionstatus.exempt.notify.command - Exempts this player from triggering the configured join notification command.

viaversionstatus.exempt.warn - Exempts this player from receiving an older version warning while also preventing them from triggering the configured older version warning command.

viaversionstatus.exempt.warn.message - Exempts this player from receiving an older version warning.

viaversionstatus.exempt.warn.command - Exempts this player from triggering the configured older version warning command.

viaversionstatus.exempt.warn.newer - Exempts this player from receiving an newer version warning while also preventing them from triggering the configured newer version warning command.

viaversionstatus.exempt.warn.newer.message - Exempts this player from receiving a newer version warning.

viaversionstatus.exempt.warn.newer.command - Exempts this player from triggering the configured newer version warning command.

Configuration (optional)

Strings in the configuration file can use four variables: %player% is replaced with the player's name, %displayname% is replaced with the player's "display name", %version% is replaced with the version of the player's client, and %server% is replaced with the detected server version. You can also use the standard Minecraft color codes. Strings should be enclosed in double quotes ("…").

notify-ops - If true, ops will be notified of the client's version when any player joins the server.

notify-string - This message is sent to players with the viaversionstatus.notify permission when any player joins the server.

notify-command - This command is issued by the console when a player joins the server (defaults to none).

warn-players - If true, players joining with a client that is older than the server version will be warned with the warn-string message.

warn-string - This message is set to players joining with a client that is older than the server version, if enabled. Note that warn-players must be true to use this.

warn-command - This command is issued by the console when a player joins with a client that is older than the server version (defaults to none). Note that warn-players must be true to use this.

warn-players-newer - If true, players joining with a client that is newer than the server version will be warned with the warn-string message.

warn-string-newer - This message is set to players joining with a client that is newer than the server version, if enabled. Note that warn-players-newer must be true to use this.

warn-command-newer - This command is issued by the console when a player joins with a client that is newer than the server version (defaults to none). Note that warn-players-newer must be true to use this.

high-priority - When set to true, ViaVersionStatus will run later in the login process. This can be useful if %displayname% in notify-string is not working as expected.

list-supported-protocols - If true, the protocols (Minecraft versions) supported by ViaVersion will be written to the log file at startup.

enable-metrics - If true, bStats metrics will be enabled by this plugin, subject to the bStats global config entry.

prism-integration - If true, ViaVersionStatus will send an event to the Prism logging plugin, with the player's name and client version. See the section below for more details.

prism-action-string - This string is used by Prism when displaying a player's client version.

A note about %displayname%: The displayname is set by other plugins, so this is dependent on the other plugin's timing. In particular, EssentialsX has a built-in time delay which will prevent the displayname from appearing in the notification sent to ops. However, the displayname can be used in the version warning sent to the players.

The default configuration results in the messages shown above.

Prism Integration

If you use the Prism V4 logging plugin, you can have ViaVersionStatus log each player's name and client version when they join the server. Prism V4 is a complete rewrite of Prism. The event is logged with the action vvs-connect. You can specify this during a lookup with the parameter a:connect. You must be using Prism V4.3-dev31 or later.

In order to enable the Prism integration you need to set prism-integration in the ViaVersionStatus config file to true. ViaVersionStatus will write to the log file if it has successfully hooked into Prism.

Here's an example of the Prism lookup results:

Prism lookup showing player's client version

Commands

None.

Miscellaneous

This plugin is compatible with ViaVersion, ViaBackwards, and ViaRewind.

This plugin uses the bStats metrics system to provide anonymous usage data. You may opt-out by changing enable-metrics in the ViaVersionStatus config file. The metrics are available at https://bstats.org/plugin/bukkit/ViaVersionStatus

Ченджлог

4.01Релиз26.1, 26.1.1, 26.1.2 · 7 мая 2026 г.

ViaVersionStatus 4.01 now works with the Prism V4 logging plugin. Prism V4 is a complete rewrite of Prism. If you enable Prism integration in the ViaVersionStatus config file, Prism will log which client versions your players are using. See the description page for how to enable this. You must be using Prism V4.3-dev31 or later.

The option to block 'No light data found for chunk' messages was removed. This option is now unnecessary. Nobody is using it anymore.

Updated to use bstats version 3.2.1.

4.00Релиз26.1, 26.1.1, 26.1.2 · 5 июня 2025 г.

ViaVersionStatus 4.00 is more of a maintenance update, despite the major version change. The main change is to remove support for ProtocolSupport, which hasn't been updated in 3 years. Metrics say that only 5 servers with ViaVersionStatus are using ProtocolSupport.

Other changes involve updating the plugin to align with recent ViaVersion upgrades, in particular requiring Java 17+. The minimum Spigot/Paper version has been updated to 1.18 (the first version that required Java 17) and the ViaVersion API dependency has been updated.

There are no added features in this new version and no configuration changes. You can simply replace the ViaVersionStatus jar file.

3.13Релиз1.21.3, 1.21.4, 1.21.5 · 25 февраля 2024 г.

ViaVersionStatus 3.13 has changes which affect only servers running both ProtocolSupport and ViaVersion. The protocol ID numbers assigned by Mojang before version 1.7 overlap with the IDs assigned with later versions. This change will handle these overlapping IDs and report the correct client versions for pre-1.7 clients.

Servers that don't use ProtocolSupport can also use this update.

Комментарии

Загружаем…