ClientStats [Bungee] 2.10.0

Track how many players joined and their versions

  1. MTC
    Tested Minecraft Versions:
    • 1.7
    • 1.8
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    • 1.14
    • 1.15
    Source Code:
    https://github.com/MineTheCube/ClientStats
    The plugin is in beta. Please report any bugs in the discussion!
    Want to run this on Bukkit/Spigot? Here you are!

    .
    [​IMG]



    Description
    Did you ever asked yourself how many players joined your server since startup? And what is the most used version? The average playtime? Then this plugin is what you need!

    [​IMG]

    To use version detection, your server has to accept multiple versions of Minecraft, but it's not mandatory. To accept different versions, you can use one of these:
    - ViaVersion (use latest)
    - ProtocolSupport (use latest)
    - Spigot protocol hack (1.7/1.8)

    [​IMG]


    Installation
    No configuration is needed, just drag and drop the file ClientStats.jar into your plugins folder. A config will be created, that you can edit to change all the messages as your needs.


    Commands
    The base command is /clientstats, but there are shorter alias: /cstats or /cs or /bcs.

    Command list:
    /cstats stats - Statistics of the day
    /cstats version - Versions of player who joined
    /cstats online - Versions of currently online players
    /cstats player [player] - Version of a player
    /cstats reset - Reset tracked stats
    /cstats reload - Reload configuration
    /cstats - Display theses commands


    Permissions
    You only need the following permission to access to every commands of the plugin: clientstats.admin

    Also, to be excluded from statistics, you need to have this permission: clientstats.exempt

    But you can give only access to some parts with these permissions:
    - clientstats.cmd.stats
    - clientstats.cmd.version
    - clientstats.cmd.online
    - clientstats.cmd.player
    - clientstats.cmd.reset
    - clientstats.cmd.reload


    Developper API
    Use ClientStats API to access to stats, or get protocol/version name of a player. After adding ClientStats.jar to your build path, fetch API like that:
    Code (Java):
    // Get ClientStatsAPI
    ClientStatsAPI cstats = ClientStats.getApi();
    // Check if it is useable
    if (cstats != null && cstats.isVersionDetectionEnabled()) {
        // Get a player
        Player p = ProxyServer.getInstance().getPlayer("Notch");
        // Get his protocol version (e.g.: 47)
        int protocolVersion = cstats.getProtocol(p.getUniqueId());
        // Get the version name (e.g.: "1.8 - 1.8.9")
        String versionName = cstats.getVersionName(protocolVersion);
    }
    See Github project for sources and API.


    Bugs & suggestions
    Do NOT use reviews for bugs or suggestions, but please post it in discussion with many details as needed :)
    .

Recent Updates

  1. Add 1.15.* version support
  2. Full 1.13 and 1.14 support
  3. Add 1.12.2

Recent Reviews

  1. anarpotato
    anarpotato
    5/5,
    Version: 2.10.0
    it's working perfect but when i updated it on my bungee it's not working please fix it
  2. xTPS9x
    xTPS9x
    5/5,
    Version: 2.9.0
    Really Nice plugin :} But please add 1.15 support as it says '1 player uses unknown'
    1. MTC
      Author's Response
  3. lordxarus
    lordxarus
    5/5,
    Version: 2.9.0
    I'm running a beta of a huge network and I've been looking for something like this. Not necessary enough to do myself but all of the competition is outdated / broken / doesn't support bungee / have the features I need. Open source, good API. Skilled developer. Thank you man.
    1. MTC
      Author's Response
      Thank you for this great review!
  4. Gida
    Gida
    5/5,
    Version: 2.9.0
    Great plugin. Provides all the information you need. ___________________________
    1. MTC
      Author's Response
      Thank you!
  5. Gurugs12
    Gurugs12
    3/5,
    Version: 2.8.5
    Nice Plugin, but you can add a lot of features:
    - MySQL for all time stats
    - More diffrent stats, for exemple: wich servers are the most used or average player ammount
    - Webinterface for nice management (i know thats need a lot of time)

    Thank you for your work! <3
  6. xXTheCreepyBoyXx
    xXTheCreepyBoyXx
    4/5,
    Version: 2.8.5
    Good plugin and developer but if you add MySQL Support will be add the 5 Stars! Come on guy you can :)
  7. ssamjh
    ssamjh
    5/5,
    Version: 2.8.5
    Very nice plugin.

    It is extremely useful to see the most popular version of MC on your server. It has helped us make many decisions as to remove support for older versions.
    1. MTC
      Author's Response
      Glad to know that it helped!
  8. 8Marc8
    8Marc8
    5/5,
    Version: 2.8.3
    Here are the ★★★★★ for your fast update.
    I use the plugin for my network since January and it's really useful.
    1. MTC
      Author's Response
      Thanks for the ★! haha
  9. AliMahmutoglu
    AliMahmutoglu
    5/5,
    Version: 2.8.3
    Plugin is very very beautiful, but ı found bungeecord console error! please fixed

    [SEVERE] Haz 08, 2017 2:17:25 PM net.md_5.bungee.event.EventBus post
    WARNING: Error dispatching event PostLoginEvent(player=CroseBoy_99) to listener [email protected]18
    java.lang.NullPointerException
    at fr.onecraft.clientstats.bungee.BungeePlugin$1.getProtocol(BungeePlugin.java:41)
    at fr.onecraft.clientstats.common.core.AbstractAPI.getProtocol(AbstractAPI.java:179)
    at fr.onecraft.clientstats.common.core.AbstractAPI.registerJoin(AbstractAPI.java:201)
    at fr.onecraft.clientstats.common.core.EventListener.onPlayerJoin(EventListener.java:21)
    at fr.onecraft.clientstats.bungee.dispatcher.EventDispatcher.on(EventDispatcher.java:21)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at net.md_5.bungee.event.EventHandlerMethod.invoke(EventHandlerMethod.java:19)
    at net.md_5.bungee.event.EventBus.post(EventBus.java:47)
    at net.md_5.bungee.api.plugin.PluginManager.callEvent(PluginManager.java:367)
    at net.md_5.bungee.connection.InitialHandler$6$1.run(InitialHandler.java:488)
    at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:380)
    at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:357)
    at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
    at java.lang.Thread.run(Unknown Source)
    1. MTC
      Author's Response
      I'll send you a PM right now ;)
  10. Dorian349
    Dorian349
    5/5,
    Version: 2.8.3
    Thanks so much for the 1.12 support :D
    Amazing plugin ! /////////////////////////////////////////////
    1. MTC
      Author's Response
      Thanks! :D