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!
bug report: total crafting achievement type is bugged: it rewards someone when he reach 1/10 of the value.
example: my players are rewarded when they reach 3000 crafted objects, but i have set achievement for 30000..
Thanks man !!!
Nice page, i still don't really know how to set achivements, i hope someone upload a tutorial or something :D
@Mayhem777 English Language File: http://triavolution.de/Bukkit/SaAPlugin_en.properties.txt
(after edit, remove the ".txt")
For example: my Webscript: http://triavolution.de/TriaCraft/Achievements/achievements/?user=ChrisX930
Can i have the english lang to translate into spanish please? How can i use only achievements and no the stats recording?
Also please add explanation to this lines in the config:
DisableCreative SimpleSpleefSupport ForcePlaytimeUpdate
THANKS!
Is it possible to add Spout-support?
I want to give Achievements for special items (use the warp-wing (Item 318:1024).
But this plugin only logs flint (318:0) and don't get the data_value ._.
Please add this function
@radarwolf
sorry, but this is a private project^^
<<reply 765799="">>
You won't find any. Ill give you my address when I am done. You can see it won't be copied.
@radarwolf
yea, I've the source on my webserver, but I can't make it public. It's my own work and I don't want to find "copys" of this^^
<<reply 764608="">>
You have the source? I will only look into it how you made it.
Is it possible to add Spoutfeatures? I want to log custom blocks (for example: 318:1024), but Stats$Achievements won't log the data Value "1024".
http://triavolution.de/TriaCraft/Achievements/achievements/?user=ChrisX930
Watch this out. My Web-Achievement-System (not completed, but nice)
Is there a web site included? Or an example so i can make one my self?
@MJRamon
working for me with %player%, maybe you need vault..
example:
/money give %player% 10
Is it possible to mplement MCMMO-Support? Like: Woodcutting lvl-50 = Achievement (or something)
@MJRamon
try /money give %player% <value> it works for me
@MJRamon
http://triavolution.de/TriaCraft/Achievements/achievements/?user=ChrisX930 You mean something like this?
How do I give player iConomy money? Commands like "money give 5", "money give * 5" and "money give %player% 5" don't work. Actually, I have to know, how to post a username in a command line
AWESOME, AMAZING plugin! really cool! :D
bug report:
- language folder is not automatically generated
- achievement generator uses mob names for "kills" and "deaths" types instead of entity numbers
-this error appears every few minutes:
[SEVERE] java.util.ConcurrentModificationException
[SEVERE] at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
[SEVERE] at java.util.HashMap$EntryIterator.next(HashMap.java:834)
[SEVERE] at java.util.HashMap$EntryIterator.next(HashMap.java:832)
[SEVERE] at java.util.HashMap.putAll(HashMap.java:523)
[SEVERE] at de.maniacraft.statsandachievements.Update.run(Update.java:54)
[SEVERE] at org.bukkit.craftbukkit.scheduler.CraftWorker.run(CraftWorker.java:34)
[SEVERE] at java.lang.Thread.run(Thread.java:662)
suggestions:
- hook into vault and add conditions like "spend X money", "collect X money in a row", "collect X money in total"
- add conditions like:
"kill X monsters in a row" (without dying, when you die the counter go to 0)
"kill X players in a row" (same here)
"kill X entities in a row" (same, with players + monsters)
"take 19 damages in a single fall without dying"
Would it be possible to make an achievement that is something like "You have gotten 50% of the achievements!" or something like that?
An HTML report would be pretty useful... please consider it.