I've started this project when PingList doesn't seemed to be maintained anymore, much thanks for @Dutch1ee for the idea and @Ozelo for pushing me into making this.
The plugin shows the players latency inside minecraft, not ICMP. So you should keep in mind that besides the connections between the client and the server, the server and client load (Disk, CPU and FPS) is taken in account.
Installation
- Download the jar
- Copy it to the plugins folder
- Restart or Reload the server
- Edit the config.yml as you please
- Restart or Reload the server
Upgrading
If you are upgrading, remove the old PingTab Folder before restarting or reloading the server, the folder and the new config.yml will be automatically created. On the 1.4 version, the config will be updated automatically.
Configuration
On config.yml you can set:
- AutoUpdate: Enable/Disable auto update checking (Default: true)
- AutoDownloadUpdate: Enable/Disable auto downloading new updates, when disabled warns you about new versions (Default: false)
- Interval: Pooling interval in seconds. (Default: 3)
- DisableTab: Disable the tab portion of the plugin. (Default: false)
- ShowPluginNameOnMessages: Show the plugin name on messages sent to the players and console. Please leave this option enabled so more people will know about this plugin! (Default: false)
- ColoredPingParameter: Make the %ping parameter on messages to be automatically colored based on it's value.
- GoodPing: Pings below this number will be printed as green in the /ping command. (Default: 200)
- MediumPing: Pings below this number will be printed as gold in the /ping command. If the ping gets above this number, it will be printed in red. (Default: 500)
- OwnPingMessage: Message that is sent to the player when he check it's own ping with /ping. Color codes are supported using & character. (Default: "Your ping is %pingms")
- Parameters:
- %ping - Ping Measured
- Parameters:
- PingMessage: Message that is sent to player when he check anothe player's ping with /ping. Color codes are supported using & character. (Default: "%playername's ping is %pingms")
- Parameters:
- %playername - Player Name;
- %ping - Ping Measured;
- Parameters:
- AlertPlayers: Alert players about high latency (Default: true)
- AlertThreshold: Players with the ping higher than this will be alerted (Default: 500)
- AlertInterval: The interval, in minutes, for the alerts to be sent (Default: 5)
- AlertMessage: The message that will be sent to the user on the alert event. Color codes are supported using & character. (Default: "%playername, your latency of %ping is above %threshold!")
- Parameters:
- %playername - Player Name
- %ping - Ping Measured
- %threshold - Threshold Set
- Parameters:
Default config.yml
# PingTab v1.3.0 # AutoUpdate: Enable/Disable auto update checking AutoUpdate: true # AutoDownloadUpdate: Enable/Disable auto downloading new updates, when disabled warns # you about new versions AutoDownloadUpdate: false # Interval: Ping Measurement interval in seconds Interval: 3 # DisableTab: Disable the tab portion of the plugin. DisableTab: false # ShowPluginNameOnMessages: Show the plugin name on messages sent to the players # and console. Please leave this option enabled so # more people will know about this plugin! ShowPluginNameOnMessages: false # ColoredPingParameter: Make the %ping parameter on messages to be automatically # colored based on it's value. ColoredPingParameter: true # GoodPing: Pings below this number will be printed as green in the /ping command. GoodPing: 200 # MediumPing: Pings below this number will be printed as gold in the /ping command. # If the ping gets over this number, it will be printed in red . MediumPing: 500 # OwnPingMessage: Message that is sent to the player when he check it's own # ping with /ping. Color codes are supported using & character. # Parameters: %ping - Ping Measured OwnPingMessage: "Your ping is %ping ms" # PingMessage: Message that is sent to player when he check anothe player's # ping with /ping. Color codes are supported using & character. # Parameters: %playername - Player Name # %ping - Ping Measured PingMessage: "%playername's ping is %ping ms" # AlertPlayers: Alert players about high latency (Default: true) AlertPlayers: true # AlertThreshold: Players with the ping higher than this will be alerted. AlertThreshold: 1000 # AlertInterval: The interval, in minutes, for the alerts to be sent. AlertInterval: 5 # AlertMessage: The message that will be sent to the user on the alert event. # Color codes are supported using & character. # Parameters: %playername - Player Name # %ping - Ping Measured # %threshold - Threshold Set AlertMessage: "%playername, your latency of %ping is above %threshold!"
Permissions
This plugin supports the following permissions:
Permission Nodes
- pingtab.* - Allow all users to use all commands
- pingtab.default - Default configuration
- pingtab.showscoreboard - Allow a user to see the PingTab scoreboard
- pingtab.ping - Allow a user to use the /ping command
- pingtab - Allow a user to use the /pingtab command
- pingtab.reload - Allow a user to use the /pingtab reload command
- pingtab.checkupdate - Allow a user to use the /pingtab checkupdate command
- pingtab.update - Allow a user to use the /pingtab update command
Default Permissions
- pingtab: Anyone
- pingtab.showscoreboard: Anyone
- pingtab.ping: Anyone
- pingtab.reload: Op only
- pingtab.checkupdate: Op only
- pingtab.update: Op only
Current Features
- Shows latency on the tablist
- Support for colored names (This means that if you use a plugin to make the names colored it will work just fine)
- /ping [player|self|list] command
- /pingtab reload command
- High latency alerts
- MCStats
- Permissions
- SuperPerms
Planned Features
- Autokick based on measured latency
- List players on tab based on radius and or limits for big servers
- List players order by own faction, enemy factions, other factions and lonewolves
- Messages of high latency on PvP
- Broadcast players with high ping
- Werewolves plugin support (there are some glitches when using this plugin)
Uninstalling
- Remove the jar from the plugins folder
- Restart the server
- Type /scoreboard objectives to clean the scoreboard
Review
A Review by VariationVault
Won't Work
- Configurable and colored measures: Unfortunately that isn't possible at the moment.
- ICMP latency measurements: Java doesn't support ICMP, there's a workaround but it too messy.
MCStats
This plugin utilizes Hidendra's plugin metrics system, which means that the following information is collected and/or sent to mcstats.org:
The following data is read from the server in some way or another:
- File Contents of plugins/Plugin Metrics/config.yml (created if not existent)
- Players currently online (not max player count)
- Server version string (the same version string you see in /version)
- Plugin version of the metrics-supported plugin
- Mineshafter status - it does not properly propagate Metrics requests however it is a very simple check and does not read the filesystem
The following data is sent to http://mcstats.org:
- Metrics revision of the implementing class
- Server's GUID
- System Architeture
- Players currently online (not max player count)
- Server version string (the same version string you see in /version)
- Plugin version of the metrics-supported plugin
- Minecraft Server Mod
- The server's version of Java
- Whether the server is in offline or online mode
- The plugin's version
- The server's version
- The OS version/name and architecture
- The core count for the CPU
Opting out of this service can be done by editing plugins/Plugin Metrics/config.yml and changing opt-out to true.
Feature Request and Bug Reports
Feel free to PM me with any other feature needed, bugs should be reported in the comments section on bukkit.org.
Source Code
You can get the source here. Just give the credits
Donations
If you like this plugin, feel free to donate, my kids will appreciate that!