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
-
View User Profile
-
Send Message
Posted Jan 12, 2014@Lolmewn
Sweet, phew! Glad you said its still fine. Can't wait for the fix though. PS: Tho I edited the single_player's and charisma's file to load players heads from my webserver. I'm happy that I added teh lil player head in its page with stats :P (Instead of the body with a head icon)
Also, the plugin takes a long time to disable... so it hangs the main thread.
-
View User Profile
-
Send Message
Posted Jan 12, 2014@iSeven77
Thanks for your support :)
@TNTUP
Your stats are still there, the web-end simply doesn't know how to read them anymore since there were table changes. (The new web-end will not have this issue).
And yes, the global stats thingy is mcstats.nl, which has been broken for several months now (as in, the web-end only. New web-end will also be compatible with that, so that's two fixes in one go :))
-
View User Profile
-
Send Message
Posted Jan 12, 2014@Lolmewn
oh sweet can't wait for it, I wish I wont lose my 6 month worth of stats. Also, whats the "global" server thing? I see alot of "Couldn't connect to the global server! Maybe its offline", is it the mcstats.nl site? If yes, it doesn't load anymore
-
View User Profile
-
Send Message
Posted Jan 12, 2014@TNTUP
i think the updater did it without asking XD
@pacmanlikespie
if u read below u we are all having same issue XD
@Lolmewn
thanks man good think i dont care much about data and as soon as u get the fix i will set it up in a clean instalation :-) THANKS ! btw is an honest thanks not ironic :)
-
View User Profile
-
Send Message
Posted Jan 12, 2014I keep getting this spam error in my console: This happened right after I updated my server IP on PlanetMinecraft. And I'm still running v1.37
12.01 14:08:35 [Server] INFO at java.lang.Thread.run(Unknown Source) [?:1.7.0_45] 12.01 14:08:35 [Server] INFO at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.7.0_45] 12.01 14:08:35 [Server] INFO at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.7.0_45] 12.01 14:08:35 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) [spigot-1231.jar:git-Spigot-1231] 12.01 14:08:35 [Server] INFO at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:58) [spigot-1231.jar:git-Spigot-1231] 12.01 14:08:35 [Server] INFO at nl.lolmewn.stats.Main$7.run(Main.java:1040) [Stats.jar:?] 12.01 14:08:35 [Server] INFO at nl.lolmewn.stats.Main.access$300(Main.java:47) [Stats.jar:?] 12.01 14:08:35 [Server] INFO at nl.lolmewn.stats.Main.runTableUpdates(Main.java:617) [Stats.jar:?]
-
View User Profile
-
Send Message
Posted Jan 12, 2014Expect a temp fix somewhere tomorrow, which will include a converter to the old version which should stabilize everything again.
In the mean time, report as many problems you have to the issue tracker. This will improve fixing speed
-
View User Profile
-
Send Message
Posted Jan 12, 2014@TNTUP
THANK YOU YOU!! my F*King DATABASE is unusable, now I lost all my DATA because of F*K autoupdates!!!!EDIT: Mhm I hope the converter will work.
How could I do backups if I wasn't notified about this update?? Damnit
So if theres no way back, so... lost worth 6 months worth of data... Though unique players, total distance, killing, deaths are fine
-
View User Profile
-
Send Message
Posted Jan 12, 2014@iSeven77
getting this also!!
-
View User Profile
-
Send Message
Posted Jan 12, 2014@Lolmewn:
idk if this helps but i got this error with all clean install
[12:50:43] [pool-3-thread-56/ERROR]: null java.sql.SQLException: Parameter index out of range (4 > number of parameters, which is 3). at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.PreparedStatement.checkBounds(PreparedStatement.java:3709) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3693) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.PreparedStatement.setInternal(PreparedStatement.java:3735) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at com.mysql.jdbc.PreparedStatement.setDouble(PreparedStatement.java:3641) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at org.apache.commons.dbcp.DelegatingPreparedStatement.setDouble(DelegatingPreparedStatement.java:126) [Stats.jar:?] at nl.lolmewn.stats.saver.KillSaver.save(KillSaver.java:66) [Stats.jar:?] at nl.lolmewn.stats.Main.updateStatsInDatabase(Main.java:653) [Stats.jar:?] at nl.lolmewn.stats.Main.runTableUpdates(Main.java:617) [Stats.jar:?] at nl.lolmewn.stats.Main.access$300(Main.java:47) [Stats.jar:?] at nl.lolmewn.stats.Main$7.run(Main.java:1040) [Stats.jar:?] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) [x.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2982jnks] at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.7.0_45] at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.7.0_45] at java.lang.Thread.run(Unknown Source) [?:1.7.0_45]
looking forward to the fix since this plugin is very nice :-) i do know its a lot of work so thanks for giving your time for this some of us really appreciate it !
-
View User Profile
-
Send Message
Posted Jan 12, 2014@Lolmewn
Lolmewn i use the 1.37 i think ?
-
View User Profile
-
Send Message
Posted Jan 12, 2014Hey, i got the following MySQL errors, i dont know why u jus restarted my server. Using v1.37 http://pastebin.com/cmKn27za any ideas?
-
View User Profile
-
Send Message
Posted Jan 12, 2014Fuck, I think the autoupdater in 1.37 didn't see the -DEV in the title of 1.38. It shouldn't have downloaded it, but it did anyway. Aaargh.
I'll release a 1.37-downgrade fix soon, which you'll have to use until a stable 1.38 comes out.
-
View User Profile
-
Send Message
Posted Jan 12, 2014on Server Start an error occured...: null om.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Duplicate column name 'firstjoin'
But I Can't find that column in my sql DB....
(using Version 1.38 (snapshot-134))
-
View User Profile
-
Send Message
Posted Jan 12, 2014@Shooty_
Which version?
-
View User Profile
-
Send Message
Posted Jan 12, 2014I have an error : java.sql.SQLException: Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED. :(
-
View User Profile
-
Send Message
Posted Jan 11, 2014@Lolmewn
I added the perm, it senses it now. Thanks :D
-
View User Profile
-
Send Message
Posted Jan 11, 2014@pacmanlikespie
Permissions perhaps? If that *should* be good, what version are you running?
-
View User Profile
-
Send Message
Posted Jan 11, 2014@Lolmewn
Ok, it works, thanks. I have another problem. I killed a player as a test but it says my kill number is 0. I killed him 3 times to make sure, but it just stays at 0. Please help.
-
View User Profile
-
Send Message
Posted Jan 11, 2014@pacmanlikespie
Try turning off your server, then changing the configuration, then turning it on again.
-
View User Profile
-
Send Message
Posted Jan 10, 2014I am trying to turn usebetafunctions to true in my config, but after I reload the plugin or restart the server, it reverts back to false. Help me please. It's required for some features of AutoRank I'm using