Stats by Lolmewn
Stats - made by Lolmewn
Plugin description
Stats is an advanced statistics gathering plugin, currently focused on player statistics. Information such as PVP kills, blocks broken, playtime and much more. You can store this data as simple files, or store them in a MySQL database. The benefit of using the database is that you can also use any web-end out there to display your players' statistics on your website.
Installation instructions
To install the plugin, simply drag-and-drop the Stats.jar into your 'plugins' folder.
When you start the server, a "Stats" folder will be created, containing a config file.
For a detailed description on the config file, click here.
The most important option is "storage", which can be set to either "flatfile" or "mysql" by default.
If you choose MySQL, there is another file (mysql.yml). Fill in your MySQL details there. That's all!
If you're installing a web-end as well, please read the instructions for said web-end on how to install it.
A list of web-ends compatible with Stats 3:
Made one, too? Let me know!
List of available Stats
This is a list of all available stats. Please note that there might be more stats in your environment, as other plugins can add their own stats to the plugin. For those stats, please see the documentation of the plugin providing them.
Stat name | Description | Available Metadata |
Arrows | Amount of arrows shot (not hit!) | world |
Beds entered | Self-explanatory | world |
Blocks broken | Self-explanatory | world, name, data (see here for more info) |
Blocks placed | Self-explanatory | world, name, data (see here for more info) |
Buckets emptied | Self-explanatory | world |
Buckets filled | Self-explanatory | world |
Commands done | Amount of commands done | world |
Damage taken | Self-explanatory | world, cause |
Death | Amount of times died | world, cause |
Eggs thrown | Self-explanatory | world |
Fish caught | Self-explanatory | world |
Items crafted | Self-explanatory | world, name |
Items dropped | Self-explanatory | world, name |
Items picked up | Self-explanatory | world, name |
Joins | Amount of times joined the server | None |
Kill | Amount of kills gotten | world, (name of) weapon, entityType |
Last join | Last time (in milliseconds epoch time) joined the server | world |
Last seen | Last time (in milliseconds epoch time) left the server | world |
Money | Not yet functional | world |
Move | Amount of blocks moved | world, type (0 = walking, 1 = boat, 2 = minecart, 3 = pig, 4 = on a pig in a minecart, 5 = horse, 6 = flying) |
Omnomnom | Amount of food eaten | world |
PVP | PVP kills gotten | world, victim (UUID of the other player), time (in milliseconds epoch time), (name of) weapon |
PVP streak | Current kill-chain, gets reset when killed | world |
PVP top streak | Highest PVP streak ever achieved - may be moved to Highscores in the future | world |
Playtime | Time in seconds played on the server | world |
Shears | Amount of sheeps sheared | world |
Teleports | Amount of times teleported | world |
Times kicked | Self-explanatory | world |
Tools broken | Self-explanatory | world, name |
Trades | Amount of times traded with a villager | world |
Votes | Removed since 3.1.1-RC due to incompatibility. If the player name is not found, the vote is ignored | None |
Words said | Amount of words said | world |
Times changed world | Self-explanatory | None |
Xp gained | Amount of XP gained in total | world |
Permissions
Some commands require special permissions to be executed. Here is a list with all permission nodes:
Node | Default value | Description |
stats.view | true | Access to /stats |
stats.view.others | true | Access to /stats <player> |
stats.custom | op | Gives access to nodes stats.add and stats.create |
stats.add | op | Access to /stats add |
stats.create | op | Access to /stats create |
stats.admin | op | Access to /stats admin |
stats.reset | op | Gives access to nodes stats.reset.self and stats.reset.others |
stats.reset.all | op | Access to /stats reset all |
stats.set | op | Access to /stats set |
stats.sign.place | op | Can create [Stats] signs |
More info soon
Donations
If you feel like giving something back to me, you can donate to me. All income from donations will be spent on coffee or similar.
I'm accepting donations through:
- Bitcoins on address 1QC19kut8nuMJNAsMZ3QneKuW2a8f5QgQG
- Dogecoins on address DKN8Lrm4KfC7Jh9M2KopjPkwcRfA7Ak3zj
- Paypal, either via email lolmewn(at)gmail.com or via this link
I'm getting this error constantly in console. what's wrong? can please help thanks.
[09:56:01] [Craft Scheduler Thread - 548/ERROR]: null com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock found when trying to get lock; try restarting transaction at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [?:1.7.0_79] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) [?:1.7.0_79] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [?:1.7.0_79] at java.lang.reflect.Constructor.newInstance(Constructor.java:526) [?:1.7.0_79] at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.Util.getInstance(Util.java:382) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1064) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2407) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2325) [Spigot.jar:git-Spigot-870264a-0a645a2] at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:2310) [Spigot.jar:git-Spigot-870264a-0a645a2] at org.apache.commons.dbcp.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:102) [Stats.jar:?] at nl.lolmewn.stats.api.mysql.StatsTable.updateStat(StatsTable.java:316) [Stats.jar:?] at nl.lolmewn.stats.Main.updateStatsInDatabase(Main.java:465) [Stats.jar:?] at nl.lolmewn.stats.Main.runTableUpdates(Main.java:429) [Stats.jar:?] at nl.lolmewn.stats.Main$5.run(Main.java:578) [Stats.jar:?] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftTask.run(CraftTask.java:71) [Spigot.jar:git-Spigot-870264a-0a645a2] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) [Spigot.jar:git-Spigot-870264a-0a645a2] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [?:1.7.0_79] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [?:1.7.0_79] at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Okay, I understand. Well hopefully you get a chance to look into it, Im trying to build a web end that tracks weekly, monthly usage but its difficult to test because everymonth all the snapshots go away.
@Lolmewn
Yes! Thanks, I updated the Vault and its fixed now!! :)
@davewolax
Vault version? Might want to update that.
I'm getting this error in Console every 5 seconds.
<code> java.lang.NoSuchMethodError: net.milkbowl.vault.economy.Economy.getBalance(Lorg/bukkit/OfflinePlayer;Ljava/lang/String;)D at nl.lolmewn.stats.compat.EconHandler.run(EconHandler.java:35) [?:?] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftTask.run(CraftTask.java:71) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at org.bukkit.craftbukkit.v1_8_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at net.minecraft.server.v1_8_R2.MinecraftServer.A(MinecraftServer.java:718) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at net.minecraft.server.v1_8_R2.DedicatedServer.A(DedicatedServer.java:368) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at net.minecraft.server.v1_8_R2.MinecraftServer.z(MinecraftServer.java:651) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at net.minecraft.server.v1_8_R2.MinecraftServer.run(MinecraftServer.java:554) [Spigot.jar:git-Spigot-2f787bd-1a1bc08] at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79] </code>
@SentinelCraft
I unfortunately haven't. Uni is killing me and most of my spare time either goes to Stats 3 or to my friends.
Did you ever look into/test that Time to live issue? Whether or not you could recreate the problem? Id like to get this squared away if possible.
@MotheMan
Not yet, going to implement the commands back first.
@Stranic
You mean like... in Stats 3? Which is currently in development?
@Ricky12Awesome
Would be better if you just asked me politely ;)
Make it where u can disable MySQL cuz it really anying on localhosts
Please give the ability to use a config file instead of MySQL, as in 3 Stats
Any idea when signs will be implemented in stats 3? Looking forward to it!
@Hardcore0uch
Hmm... must be something wrong at loading then. Will investigate.
@ashley0891
Stats 3 might, Stats 2 still has trouble with that afaik. Stats 3 isn't ready for production servers though.
@Hardcore0uch
Any recommendations on what we should do to try fix this?
Thanks :)
Does the plugin still not track votes if the player is offline when voting? Had this issue before and was wondering if there is a fix for now.
@Lolmewn
We dont seem to get any errors on the login.
@Hardcore0uch
Any errors on login?
Hey, @Lolmewn
we have run into a problem with stats. So we installed the version you suggested and everything seemed to work perfectly. It connects to the sql properly (all the stats3_ entries are there and they update).
So the problem we are having is, that it basically starts from 0 again after a player reconnects. Quick example. I break 5 wool blocks, the data in the sql shows 5 wool blocks. I disconnect and reconnect. Still shows 5 wool blocks. Now if I break 1 wool block the counter jumps back to 1, so it basically overwrites the old data.
Our stats settings are default (besides the sql settings). I already tried to reinstall stats and I completely erased the sql database. This is the stats version we are using: http://dev.bukkit.org/bukkit-plugins/lolmewnstats/files/64-stats-v3-0-0-dev/
We are using stats with autorank, permissionsex and colorme. (Spigot 1.8.3 R0.1 BuildTools:35)
Kind regards
@Lolmewn
Sorry for the mistake, pasted the error log to another website ,hope this can help :)
http://www.wepaste.com/afsd/
@Stranic
no, you support plugin!
please update and remove bugs and add support plugin