Achievements Reloaded

Achievements - made by Lolmewn

What does this plugin do?

This plugin allows you to add additional achievements to the game. This plugin requries my other plugin, Stats, to work.
Using this plugin, you can add achievements to the game, and add rewards to them. Whenever a player gets an achievement, you can let commands run, give them money and/or items, and much more using the API this plugin will have.

How do I install this?

Download the latest file from the files page and put it in your plugins folder.

Configuring the plugin


There's nothing much to configure here yet. You can toggle whether or not it auto-updates, but that's about it.


This is where you will store all your achievements. An achievement must have the following layout:

  name: YourAchievementName
  - Stat <amount> <TOTAL or the variables belonging to this Stat>
  - another one?

The rest of the things is pretty self-explanatory. Once I have time, I will write down a good how-to-write achievements page.


These are the available Stats:

Block_breakAll broken blocks with their DatavaluesitemId itemData breaking
Block_placeAll placed blocks with their DatavaluesitemId itemData breaking
DeathAll deaths with their causescause entity(boolean, true is safest)
KillAll kills with their causestype
MoveWalking, sailing, riding a train, on the back of a pig or by horse.type (0=walk, 1=boat, 2=train, 3=pig, 4=pig in train, 5=horse)
PlaytimeTime played in seconds
ArrowsArrows shot
Xp_gainedTotal XP gained
JoinsTotal times joined
Fish_catchedTotal fish Caught
Damage_takenTotal damage taken
Times_kickedTotal times kicked
Tools_brokenTotal Tools broken
Eggs_thrownTotal eggs thrown
Items_craftedTotal items crafted
OmnomnomTotal times had a snack
On_fireTotal times being on fire
Words_saidTotal words said
CommandsdoneTotal commands done
VotesTotal times voted for the server (uses Votifier)
WorldchangeTotal times worlds changed
BucketfillTotal buckets filled
BucketemptyTotal buckets emptied
BedenterTotal times bed entered
ItemdropsTotal times items dropped
ItempickupsTotal times items picked up
TeleportsTotal times teleported
ShearTotal times sheared
LastjoinThe time the player joined the server last
LastleaveThe time the player left the server last

Want to use a Stat that uses variables? You have to specify either the variables or use 'TOTAL'.

Variables with StatTypes

Some Stats have variables. A good example is Block_break, it has the variables <blockId> <blockData> and <breaking>.
If you want to have a goal where a player must break 5 blue wool blocks, the goal would be

- Block_break 5 35 3 true

If the block has no special blockData (e.g. there's only one type of it), use 0 as blockData. Example:

- Block_break 20 1 0 true

This means break 20 stone blocks.

Examples for the other special Stats:

- Block_place 5 TOTAL
- Move 1000 1 #move 1000 blocks with transport type 1 (boat)
- Kill 10 Zombie
- Death 3 Creeper

The format always is - Stat Amount Total|Variables|<empty>

Item Rewards

The way Item Rewards are written down is somewhat difficult. Basically, you should write it down as

items: <itemId>.<itemData>,<amount>;<itemId>.<itemData>,amount;... etc.
items: 35.3,10;1,10
items: 1,20

Note that the itemData doesn't have to be specified
The itemID obvioulsy is the ID the item has (which you can find a full list of here), the itemData is also on that list, and the amount.. well, duhh.
The first example gives you 10 colored wool, and 10 stone. The second example gives you 20 stone.

Example achievements.yml

You can find an example right here. When writing new achievements, I suggest you grab this page and see what all the options do.

Commands and permissions

/achachievements.view.selfCheck out your progress
/ach player <player>achievements.view.othersCheck out someone elses progress
/ach reloadachievements.reloadSaves all players and reloads all achievements
/ach page <page>achievements.view.selfCheck out page <page> of your progress
/ach <achievement>Check out what the achievement is all about

Development 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, they may or may not work at all.
Development builds for Stats can be found at my CI, over at


Want to help develop, or simply view what makes this plugin run?
Visit my bitbucket!


This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • The plugin's version
  • The server's version
  • The OS version/name and architecture
  • The core count for the CPU
  • The number of players online
  • The Metrics version

If you wish to disable this feature (/me cries), you can do so by opt-ing out, which you can do in the config file under /plugins/PluginMetrics/


This plugin has a built-in auto-updater, which connects to BukkitDev to check for updates. If you, for some reason, wish to disable this process, you can do so by setting 'update' to false in the plugins' settings file.

IRC Support

You can find me (and possibly, when I'm around, support) in my IRC channel #Lolmewn on - See you there!

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Lolmewn Lolmewn Oct 11, 2015 at 09:20 UTC - 0 likes

    @McPixel: Go

    There is no version for Stats 3 yet.

    Waiting to see what's going to become of BukkitDev. May or may not switch to a replacement if it completely dies off (which is what I presume to happen really).

  • Avatar of McPixel McPixel Oct 11, 2015 at 06:43 UTC - 0 likes

    not working on spigot 1.8.8 :(

    im using latest dev stats3

  • Avatar of Lolmewn Lolmewn Jul 15, 2015 at 11:39 UTC - 0 likes

    @donnie8986: Go

    Try "Fish catched". I was being silly when I wrote it and didn't realize it was caught, so your version might still have the old name. As for mobs killed, use the Kill stat for that (I don't think there's a separate counter for just mobs). It'll also count players, except when you specify all mobs.

  • Avatar of donnie8986 donnie8986 Jul 13, 2015 at 18:26 UTC - 0 likes


    I set up my advanced config for Autorank and also installed Stats. After some time in setting it up (couple of errors on my part), I very much enjoy the plugin! There are many things my players can do on my server as part of ranking up :) Anyhow, I seem to have some issues with 'fish caught' and 'mob killed'. For example I set my 'fish caught' to 5 fish on the first rank however when a player completed getting 5 fish the task was not shown as complete when I checked the player's /ar check. Any help on this? I can provide more info if needed. Thanks in advance.


  • Avatar of felunka felunka Mar 05, 2015 at 16:28 UTC - 0 likes

    @Lolmewn: Go


  • Avatar of Lolmewn Lolmewn Mar 04, 2015 at 18:44 UTC - 0 likes

    @felunka: Go

    It's in the latest DEV build - just open the jar (with winrar/zip or similar) and it's there.

  • Avatar of felunka felunka Mar 04, 2015 at 17:49 UTC - 0 likes

    @Lolmewn: Go

    how do i get the new conf?

  • Avatar of Lolmewn Lolmewn Mar 02, 2015 at 21:21 UTC - 0 likes

    @felunka: Go

    Read my last comment.

  • Avatar of felunka felunka Mar 02, 2015 at 17:20 UTC - 0 likes

    any help?

    [18:10:46] [Server thread/INFO]: felunka issued server command: /Ach
    [18:10:46] [Server thread/ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'ach' in plugin Achievements v2.0.0-50
    	at org.bukkit.command.PluginCommand.execute( ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at org.bukkit.command.SimpleCommandMap.dispatch( ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at org.bukkit.craftbukkit.v1_8_R1.CraftServer.dispatchCommand( ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.PlayerConnection.handleCommand( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.PlayerConnection.a( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.PacketPlayInChat.a( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.PacketPlayInChat.a( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at java.util.concurrent.Executors$ Source) [?:1.7.0_71]
    	at Source) [?:1.7.0_71]
    	at net.minecraft.server.v1_8_R1.MinecraftServer.z( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.DedicatedServer.z( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at net.minecraft.server.v1_8_R1.MinecraftServer.y( [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at [spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at Source) [?:1.7.0_71]
    Caused by: java.lang.NoClassDefFoundError: net/minecraft/util/com/google/gson/Gson
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.createChatPacket( ~[?:?]
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.send( ~[?:?]
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.send( ~[?:?]
    	at nl.lolmewn.achievements.CommandHandler.sendAchievements( ~[?:?]
    	at nl.lolmewn.achievements.CommandHandler.onCommand( ~[?:?]
    	at org.bukkit.command.PluginCommand.execute( ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	... 14 more
    Caused by: java.lang.ClassNotFoundException:
    	at ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.7.0_71]
    	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.7.0_71]
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.createChatPacket( ~[?:?]
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.send( ~[?:?]
    	at nl.lolmewn.libs.mkremins.fanciful.FancyMessage.send( ~[?:?]
    	at nl.lolmewn.achievements.CommandHandler.sendAchievements( ~[?:?]
    	at nl.lolmewn.achievements.CommandHandler.onCommand( ~[?:?]
    	at org.bukkit.command.PluginCommand.execute( ~[spigot-1.8.jar:git-Spigot-c3c767f-33d5de3]
    	... 14 more
  • Avatar of Lolmewn Lolmewn Feb 28, 2015 at 15:10 UTC - 0 likes

    @Liger_XT5: Go

    Spigot moved dependencies, so fanciful can't find GSON anymore. It has been fixed but the build its been fixed in contains a new config layout which isn't documented yet. You can try it of course, since you only have one achievement anyway it's not going to be extreme.


Date created
Apr 16, 2013
Last update
Jul 01, 2014
Development stage
GNU General Public License version 3 (GPLv3)
Curse link
Achievements Reloaded
Recent files



Required dependency
Optional dependency