Stats & Achievements
This Project is currently abandoned (and probably will forever be). See here for a alternative plugin
2-in-1 Stats and Achievements
This plugin logs various player activity as stats in a MySQL or SQLite database. With the integrated achievement system it is possible to award players when they reached a predefined target.
Features
- Logs block, mob, pvp and miscellaneous player statistics very detailled
- Logs also crafting statistics when spout is installed
- Integrated achievements system
- New database format which is more performant than older databases
- Integrated time delay to reduce server load and the number of SQL queries
- Planned web stats system
- Compatible with every Bukkit version since 1.1-R4
Tools
- You can convert older databases using our utility: http://89.144.25.51:8888/convert.php
- Achievements generator (will be extended soon): http://plugins.maniacraft.de/SaAPlugin/achgen
Requirements
- Vault (Permissions)
- Spout (if you want to get crafting stats)
Commands
- /stats help - General Help
- /stats [<player>] - Shows your stats or stats by <player>.
- /stats block [<player>] <block>[:<data>] - Shows stats for <block>.
- /stats pvp [<player>] [<player2>] - Shows PVP stats.
- /stats mob [<player>] [<mob>] - Shows mob damage stats.
- /achievements help - General Help
- /achievements [<player>] - Shows your obtained achievements or achievements obtained by <player>.
- /achievements list [<page>] - Lists all available achievements.
- /achievements admin add <name> <description> <category> <block> <data> <value> <command> - Adds a new achievement.
- /achievements admin remove <id> - Removes the achievement <id>.
- /achievements admin convert - Convert old achievements.
Achievement Commands
- /give <block>[:<data>] [<amount>] - gives the player the item <block> <data>
- All commands available on your server. Example (Essentials warp): /warp darkroom %player%
Permissions
Permission | Description |
---|---|
stats.show.blocks.own | Show own block stats |
stats.show.blocks.other | Show block stats by others |
stats.show.pvp.own | Show own pvp stats |
stats.show.pvp.other | Show pvp stats by others |
stats.show.mob.own | Show own mob stats |
stats.show.mob.other | Show mob stats by others |
stats.overview.own | Show your overview |
stats.overview.other | Show overview by others |
stats.receive | Log stats at all (for example not for Guests) |
achievements.receive | Gives achievements at all (for example not for Guests) |
achievements.admin.remove | Admin Command Remove |
achievements.admin.add | Admin Command Add |
achievements.admin.convert | Admin Command Convert achievements from old DB |
achievements.list | List all achievements |
achievements.show.own | Show obtained achievements |
achievements.show.other | Show achievements obtained by others |
Config
general: language: en # Language (Available: en/de, other languages can be added in plugins/StatsAndAchievements/lang/) update-delay: 30 # The time interval in seconds how often the stats will be updated in the database (Default and recommended: 30) achievements: true # Activating and deactivating Achievements text_color: '&6' # Color of command texts (1st color) data_color: '&7' # Color of data output (2nd color) debug: false # Debug output (Default and recommended: false) database: type: mysql # Database type, either mysql or sqlite table_prefix: '' # Table prefix to save stats of more than one server in a single database host: localhost # Only MySQL: Database server (Default: localhost) port: 3306 # Only MySQL: Database server port (MySQL default 3306) database: minecraft # Only MySQL: Database name user: root # Only MySQL: Database user password: stats123 # Only MySQL: Database password DisabledWorlds: # In this worlds the stats will be deactivated - disabledworld1 - creative listeners: blockStats: true # Block related stats brewingStats: true # Brewing related stats (maybe bugged) craftingStats: true # Crafting related stats (maybe bugged) enchantingStats: true # Enchanting related stats (maybe bugged) entityStats: true # Entity related stats playerStats: true # Player related stats (Your really should NOT disable this or you'll break everything!) playerMoveStats: true # Player move stats (if you experience lags you should set this to false) vehicleStats: true # Vehicle related stats
Language file formating
{br} - Line break &[0-f] - Color codes (http://img109.imageshack.us/img109/4334/mccolors.png) %[A-Z0-9]% - Internal variables, don't supposed to be translated!
I have tryed the website to generate sql code but some mismatch columns with data occured, did someone have a list of examples please ?
is it possible to not use spout but bukkit please ?
with the latest version, it doesn't work and crash, any update ?, if I use 1.10 SNAPSHOT #2, it is ok but nothing happened, am I the only one ?
@ManiacTwister
Sorry, it's fixed for crafting now but I just noticed I'm also getting it for enchanting :)
@ManiacTwister
Thanks for the fix, much appreciated! Really loving the plugin btw! Now to think up interesting achievements :)
COLLOM in Mysql data doesnt support text. Like for Achievements for killing a zombie or whatever doesnt work.
I'm making some Achievment like psn... :P
Thanks god its MySQL ill hook this to website and it will be awesome
Roughly how fare away is the Web Based System?
@add5tar
Should be fixed in the newest version which i just uploaded. (Waiting for approval)
Hello,
Your plugin works fine for me, except occasionally I get this message on console: http://pastebin.com/raw.php?i=w9EvvA7f
The player_id is not the same each time and I haven't yet had a chance to look up the player from the DB and find out what they did at the time. I will try to do that and try to get more information for you.
Can you explain how the achievements work. Because when i check my achievements list i get all kill achgievements and after very achievement stands AIR. Is this a bug? And when my players die they always get all the LEVEL achievements while i put in a value of 5, 10, 20 and 30
Please help, i really like this plugin and i dont want to switch!
@AZDiablo
Check your mysql user/password/database settings..
I am getting this error when I attempt to load the plugin. Specifically the section that states: "Could not be resolved because of an SQL Exception: Access denied for user"
Could anyone provide an MySQL export with quite some achievements you people use? I find it hard to define, specify and add each achievements... Please?
where could I find achievements? I implemented this plugin but achievements are empty... the generator above link is broken
Nevermind, I figured it out. Love the plugin.
I'm wondering if there's a way to:
1. Grant an achievement by being in a certain area, like completing a maze/obstacle course.
2. Make someone dig a block with a certain tool or kill someone with a certain tool. (I know this one's unlikely but it would be great)
3. Grant an achievement for executing a certain command.
4. Multiple requirements: Ex: Craft every block for an achievement.
@Wipfcraft
How about posting the errors you get?
Can someone PLEASE insert a working example of their config? It would help tremendously. Also, how many configs are there supposed to be? I only have one but I keep getting messages from my console that the package isn't loaded. Every time I try to insert an achievement the plugin breaks.
@ManiacTwister
I just get these over and over
[WARNING] [StatsAndAchievements] [MySQL]: Error in SQL query: Data truncation: Out of range value for column 'data' at row 1
@jjacobson
The Querystring will be printed. If you get SQL errors you could post them here, so i can fix it ;)
@ManiacTwister
What does the debug output for SQL errors do? I get those errors a lot but I don't want any debug spam happening every time they happen. It's already spammy enough.