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 16, 2014@Lolmewn
If you can fix move event too :3 :3 lol i'm joking but seriously would be cool
-
View User Profile
-
Send Message
Posted Jan 16, 2014@lolitsthad
It's not your database, it's something on my end. I'll get to fixing it.
-
View User Profile
-
Send Message
Posted Jan 16, 2014Lately, Stats has been taking an extremely long time to disable when stopping the server, as well as to enable when starting the server (about 4 minutes, when every other plugin is done in a few seconds). I have not changed anything or even upgraded to the latest version yet, so my best guess is that the database has gotten so large that it's causing issues? There are no errors, but it's obvious something is wrong. Any idea what this could be?
-
View User Profile
-
Send Message
Posted Jan 16, 2014@smokeymcjay
Stop the server, do the config, start the server. I think it only does the ingame stuff when the file doesn't exist so you should be fine then.
-
View User Profile
-
Send Message
Posted Jan 15, 2014@Lolmewn
i do config it out of game but it still sends messages wanting me to use the wizard in game and it wont let the ops talk until they complete it but it's uncompleteable
want some screenshots it might help?
-
View User Profile
-
Send Message
Posted Jan 15, 2014@smc87
Eeh... with the stuff I have to do now? Quite a while. Still gotta do all the PHP.
@WhosHenry
Yeah, I'm gonna do something like that.
-
View User Profile
-
Send Message
Posted Jan 15, 2014@Lolmewn
Well for my server, I haven't got a web side of things for the stats. I have always just used /stats until they became per-world specific stats in the latest update.
I am asking whether you can include an option to bundle all of the worlds stats into one combined stat for the server? Thanks.
-
View User Profile
-
Send Message
Posted Jan 15, 2014@Lolmewn
@lolmewn
Thank you. Any idea on a rough timescale for the web frontend?
Thanks,
SMC
-
View User Profile
-
Send Message
Posted Jan 15, 2014@CJMaXTeR
Please report to BitBucket, or it'll get lost.
@smokeymcjay
Instead of configuring it in-game you can always just edit the config.yml file - Like any other plugin really haha.
-
View User Profile
-
Send Message
Posted Jan 15, 2014@Lolmewn
Aight blame bukkit ok thx anyway love the plugin but need it to work with autorank nd it wont let me so might switch but would love to use this again :D
-
View User Profile
-
Send Message
Posted Jan 15, 2014Encountered an exception:
[12:49:20 WARN]: Exception in thread "pool-3-thread-14" [12:49:20 WARN]: org.apache.commons.lang.UnhandledException: Plugin Stats v1.37-89 generated an exception while executing task 25 at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Caused by: java.util.NoSuchElementException at java.util.concurrent.ConcurrentHashMap$HashIterator.nextEntry(Unknown Source) at java.util.concurrent.ConcurrentHashMap$KeyIterator.next(Unknown Source) at nl.lolmewn.stats.player.StatData.getValueUnsafe(StatData.java:148) at nl.lolmewn.stats.signs.SignDataGetter.run(SignDataGetter.java:71) at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftTask.run(CraftTask.java:53) at org.bukkit.craftbukkit.v1_7_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53) ... 3 more
-
View User Profile
-
Send Message
Posted Jan 15, 2014@smc87
Fixing.
@smokeymcjay
The answer should be a boolean (aka, true or false or stuff like that). I'm not verifying the answers myself, that's what Bukkit does for me. Therefore, I blame bukkit!
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Lolmewn
The question after the port 3306 where it asks for a data value in the in game wizard i tryed putting yes,Y,no,N,accept,true,false,deny.
what is the answer?
-
View User Profile
-
Send Message
Posted Jan 14, 2014hey, just want to upvote Issue #132. I have the same problem with huge hangs on server shutdown. No messages appear in the log, running spigot.
Is there anything i can do to help diagnose further?
EDIT: ahh i diddnt see that there was a newer version, is there a fix in this? either way looks like ill have to wait until i have sometime to update the webend, or the new one comes out.
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Shooty_
Top 5 of nothing is still nothing. It's not just a "little" thing, I have to add additional checks etc and force-disable events. I'm not gonna get into that right now anyway.
@WhosHenry
The change is mostly for the web-end anyway, there's no real use in-game yet (Maybe soon per-world signs or /stats world <world> ?)
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Lolmewn
Yes, all worlds combined is what would be best for me :D
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Lolmewn
So you really don't wanna update this little things =_= ? just remove one events seriously.
It appear to be on the TOP 5 of cpu usage so yeah i wanna reduce it in any ways.
-
View User Profile
-
Send Message
Posted Jan 14, 2014@MARODEUR2
Should be approved soon. If you search a bit, you'll find a few links though.
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Shooty_
0.0015 out of 50 milliseconds average per tick...
You have to know when optimizing is worth the work. In this case, it really isn't.
-
View User Profile
-
Send Message
Posted Jan 14, 2014@Shooty_
http://aikar.co/timings.php?url=6751594 Here, i think it's really huge and can be optimized yes.