Paintball v1.3.1


  • Filename
  • Uploaded by
  • Uploaded
    Feb 6, 2015
  • Size
    446.04 KB
  • Downloads
  • MD5

Supported Bukkit Versions

  • 1.8


__ (v1.3.1 for MC 1.8) __

  • Massive performance improvement: importing of player statistics is now a matter of seconds!
  • Change: when we run into some issue while fetching uuids, we keep retrying every 30 seconds now, in the hope that the issue is only temporary (connection issues for example).
  • Change: displaying the amount of uuid requests we have sent, instead of the amount of results we got back when displaying status reports.

__ (v1.3.0 for MC 1.8) __

This version is a quick attempt to make Paintball uuid-ready. Please read carefully.

In case you are updating from an older version of Paintball:
The first time you run this version it will immediately disable again, after generating a few new configuration settings in the Paintball config in the section 'UUID Conversion'.

Stop the server and verify that those settings have correct values set.
The setting 'UUID Conversion.Online Mode' is most important:

  • Keep it at 'true', if your server runs in online mode.
  • Set it to 'true', if your server runs in offline mode, BUT you are using spigot and an online-mode bungeecoord and have configured bungeecoord to forward online mode player uuids.
  • Only set it to 'false', in case you are really running a 'real' offline mode server..

In case you have the plugin UUIDCollector installed, make sure to set 'Use UUIDCollector data' to 'true'.
Using the uuids collected with this plugin might reduce the amount of uuids which need to be fetched from Mojang, AND it decreases the chance of players, which have already changed their name, to lose their statistics.

Same goes for 'Use local player data': If this setting is active, it might speedup the uuid-lookp process, by searching through the local playerdata files first.

After you have verified that the settings are correct, you can restart the server.

Paintball will start importing the old data from 'pbdata_110.db' into a new database file 'pbdata_130.db'. This might take a few minutes: during my tests with between 3000 and 8000 players it took about 1 second for 250 uuid lookups. In case you have more players you might even run into the situation that the uuid lookup has to pause for some time, because of Paintball sending too many uuid-lookup-requests to the Mojang servers.

While this is running the server will be unresponsive, but you should get periodically status reports about the progress in the console.

When it is done:

  • The old 'pbdata_110.db' file will be renamed to 'pbdata_110-backup.db'.
  • Player names for which no statistics could be imported because no uuids were found (usually players with offline-mode / cracked minecraft clients) will be stored in the file 'unconvertedPlayers.yml'.

In case you abort the process, or want to run it again:

  • Stop the server.
  • Remove the 'pbdata_130.db' file: Merging old data into an already existing database file is currently not possible.
  • Rename the 'pbdata_110-backup.db' file back to 'pbdata_110.db'.
  • Restart the server to start the process again.
Note about potential loss of statistics:

In case a player has already changed his name, AND has joined the server with his new name AND we find the uuid of his old name in local UUIDCollector data, we are now able to merge the statistics, the ones for his old name and the ones for his new name.
In this case a warning is printed to the console for every player with multiple names. You can ignore that warning though.

However, in all other cases (the player didn't join the server with his new name yet, or we have no uuid for his old name, because UUIDCollector wasn't used in the past) the player stats are not getting imported for that player, and his name is added to the 'unconvertedPlayers.yml' file.

  • No new features yet. I am still working on the rewrite for that.
  • Players which have already changed their name will lose their statistics, if they didn't join the server with their new name yet and UUIDCollector wasn't used in the past.