BeardStat

BeardStat is statistics tracking plugin for bukkit. It tracks a wide variety of user statistics and makes them available to your playerbase and plugins.
Recorded stats
- last Login and logout time
- Total playtime
- block placement and breaking (including sub/metadata blocks like wool, logs etc)
- Items picked up/dropped
- Damage dealt and recieved
- Kills and deaths
- Food consumed
- Sheep sheared and dyed
- TNT detonated
- Distance travelled on foot/boat/cart/horse/pig
- Items crafted
- Animals tamed
- Teleports
- Fishing
Web interface (under development)
BeardStat also comes with a web interface for stats, this allows players to view their own and friends stats on your servers website. the Web interface also includes a scoreboard system to rank players based on various statistics (playtime, creepers killed)
Commands
Stats are recorded per world, and you can blacklist worlds/gamemodes from tracking. BeardStat also has a number of commands: * /stats - access to all stats information * /played - shows a players playyime. * /laston - Returns the last time the player was on * /statpage - Allows showing a selection of player stats, useful with Bukkit's command aliasing
Dev builds
Development builds of this project can be acquired at the provided continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
(Please note, zips in dev builds currently contain a broken implementation of the web interface, please instead download the .jar file instead. The web interface available on the right of this page) Development builds fresh from Jenkins
Issues
BeardStat has an issue tracker on github, https://github.com/tehbeard/beardstat/issues.
For error reports please include the following: * full stacktrace of the error * plugin version (inc. build number if using one from CI) * Bukkit version * Database type used (SQLite / MySQL)
Plugin integration
BeardStat provides a rich API for plugin developers to hook into BeardStat and read / record statistics.
For Developers
BeardStat stats are identifiable by a unique Id generated from 4 sub components: * Domain * World * Category * Statistic
Domain is the primary namespace for a collection of stats, the "default" domain is used by BeardStat, I ask that you use your own unique domain for your plugin (i.e. if you make a PvP arena plugin, you could use the domain "pvparena").
World represents the world in which this stat was recorded, these are for the most part the name of the world.
Two special cases exist however. "__global__" is a reserved world name, meant for stats that do not pertain to a world. The second case is "__imported__", this is a reserved world for stats that have been imported from an older version of BeardStat before per world storage was implemented.
While not intended, you can use the world id for a unique area that is not a whole world (Going back to our pvp arena example, you could use the arena names instead, such as old_forge, broken_bow instead of a world name)
Current plugins that are known to integrate BeardStat: * BeardAch - Achievements plugin * SimpleSpleef Evolution
Metrics
BeardStat includes the plugin metrics code developed by Hidendra (author of LWC), which collects anonymous information about the plugins deployment (minecraft, server, plugin version, assumed server location at country level and database type used by BeardStat, aggregated into graph form.) More information on this system, including how to disable it can be found here
-
View User Profile
-
Send Message
Posted Mar 26, 2012@Superkuuk
worlds: is worlds to exclude
Will update documentation to make that clearer :)
Also your error points towards an issue between the bukkit server and the mysql server not being able to connect.
Try using 127.0.0.1 instead of localhost.
-
View User Profile
-
Send Message
Posted Mar 26, 2012Hi,
It seems a great plugin, but I can't get it to work :(
I'm currently hosting my server on Bukkit 1.2.4 dev build. (That could be a problem, I didn't test on 1.2.3)
Here's my error: http://pastebin.com/JrpnJz7U
And here is my config:
stats:
database:
type: mysql
host: localhost
username: _
password: _
database: BeardStat
worlds:
- world
- world_nether
- world_the_end
pages:
default:
- blocks placed:stats.totalblockcreate
- blocks broken:stats.totalblockdestroy
- kills:kills.total
- deaths:deaths.total
archery:
- total shots:bow.shots
- fire shots:bow.fireshots
- Epirus bow shots:bow.infiniteshots
version: 0.4-grapefruit
-
View User Profile
-
Send Message
Posted Mar 24, 2012@deleted_7536780
There is a page labelled configuration (http://dev.bukkit.org/server-mods/beardstat/pages/configuration/) that details setting up the config.yml, the above bit is blurb on the plugin, not how to set it up (but thanks for pointing out the missed capitalization, and the bug, next version will ignore case for "type:")
-
View User Profile
-
Send Message
Posted Mar 24, 2012@dickwick
well its the authors fail. i Quote from above 'Statistics can be stored in a mySQL database, or flatfile YML.'
-
View User Profile
-
Send Message
Posted Mar 24, 2012@deleted_7536780
It is mysql, not mySQL!
-
View User Profile
-
Send Message
Posted Mar 24, 2012I get: http://pastebin.com/CxNbwwBx Config is: http://pastebin.com/DkADgsXC
-
View User Profile
-
Send Message
Posted Mar 23, 2012@Tehbeard
It's not just torch, it is almost every block, that stores metadata (fence/stairs/etc. position, color, size of crop, etc.. everything is written here: http://www.minecraftwiki.net/wiki/Data_values#Data )
Anyways, here is my dump http://stats.majncraft.cz/dump.sql.zip (13MB .sql)
I would really apreciate, if you could look at it and figure some nifty way to solve this. I really don't want to reset all those stats :(
-
View User Profile
-
Send Message
Posted Mar 23, 2012@dickwick
That looks like a stats 2.0 feature.
I do plan on having metadata on certain blocks tracked in the next version (hooray! wool colors, dyes, types of log!)
as for the torch thing, if i can get a dump of them, I might be able to throw some sql together that'll pile them into the correct stats.
-
View User Profile
-
Send Message
Posted Mar 22, 2012Hello, I have quite a problem here. I have long running server with stats from beginning. I had Stats, Stats 2.0 and now BeardStat and here is my problem. My stats db is kinda messy, because of Stats or Stats 2.0 and it looks like this:
Each one of those is torch, but I need to find a way, how to merge them for every player, every category and each block, that have data value stored. Isn't there any way, how to do it?
-
View User Profile
-
Send Message
Posted Mar 21, 2012Hey can you post a link on my project HERE with a demo MySQL of all the data types. So that I can start adding this plugin.
-
View User Profile
-
Send Message
Posted Mar 21, 2012Grapefruit is out! Web API, more stats and bug fixes. Grab a slice today!
-
View User Profile
-
Send Message
Posted Mar 19, 2012@JohnKapsis
Plugin is pretty much working (not encountered any bugs)
I'm waiting on furdabip to finish up the example script that uses the API, then I just have to package it all together and write up the release notes.
Oh and of course wait an age for file approval .-.
best guess, within the week / weekend by the latest.
-
View User Profile
-
Send Message
Posted Mar 18, 2012@Tehbeard
Is there any ETA on it?
-
View User Profile
-
Send Message
Posted Mar 16, 2012Good news everyone!
The web API should be included with 0.4-grapefruit.
-
View User Profile
-
Send Message
Posted Mar 15, 2012@JohnKapsis
There is this, though it's a bit incomplete. http://dev.bukkit.org/server-mods/beardstat/pages/the-big-list-of-statistics/
And you will be able to add your own touch, or even your own functionality. The code will provide a bunch of functions for grabbing the data and formatting it based on a config. The config maps a human readable name to a statistic/sum of statistics (as in the case of music discs)
-
View User Profile
-
Send Message
Posted Mar 15, 2012@Tehbeard
Well, this is coded by a pro... I'll take it!!!! haha I was really wanting to have my own touch on it but if it works i don't mind at all!
I can see they are sorted in a really nice way and very easy to read i love especially the image generation feature in the sample you posted, but again there is no way to have a documentation on how the stats are collected? i mean what is what in the SQL. I can wait till you have the API ready and either use it or read it to make mine but again it would be nice to just be able to tell what is what in the SQL.
-
View User Profile
-
Send Message
Posted Mar 13, 2012@JohnKapsis
Hi John,
We actually have something in the works that pretty much fits with what you are asking for (web view of the statistics). Currently it's hardcoded in how it displays content, but can be configured to display stats in interesting ways (for instance, the Music Discs stat is a combination one of all 11 record types) http://www.escapecraft.net/stats.php?top=86 http://www.escapecraft.net/stats.php?player=tehbeard
Furdabip (the guy who wrote the web page) is working on making the code more flexible/into an API for people to use. I'll see if I can find out how close we are to releasing it :)
-
View User Profile
-
Send Message
Posted Mar 13, 2012Hello!
Is there a page where you explain all the stats gathered and how they should/could be used?
Here is my problem, we are a "not so large but we would like to be" server, we got support by youtubes MCA (which is co-owner), Sethbling, Teapoted, TaviRider, and a few more.
I am a very big noob at html, php, MySQL, etc but i try and i get better by the day, with all my efforts and hard work we have managed to build a decent server and then of course a website was needed and as I was becoming aware of the possibilities available more and more was added there.
Then we thought about holding Stats on our players gameplay and needed an SQL plugin to do that, that's were you came in!! You have a very nice plugin and our tools are saying it is really light weight! But i run into some problems when i started to code the pages that would display data in a rational format, my main problem is sorting them out, i know that some logic is enough to read it but when you are trying to display the data to a wide audience that doesn't necessarily have common sense it is a bit hard.
So i would really love to have a page where in as much detail as possible is explained what data are gathered and how they are gathered as well as what each one is! i.e. "stats - kicks - 3 " means that this guys kicked 3 times someone else or did he got kicked 3 times??
If you would like to have a better idea of what am i doing and why this long post here is a link of Our Live Playerlist open that and click any of the names, I advise "lochlain" as he plays the most, he is in the Moderator list. Thanks in advance and sorry for the long post, i like to be thorough.
-
View User Profile
-
Send Message
Posted Mar 12, 2012Could "join date" be saved to a player's stat record? That would be an easier fix that "days on server" that I requested earlier. I realize it won't work for preexisting players, but it would allow us to track "server age" going forward. :)
-
View User Profile
-
Send Message
Posted Mar 12, 2012@rbos
Ah, so it's the /reload messing things up :/
I'll test with latest version tonight and see if that is still an issue.