GithubHelp home page GithubHelp logo

pyvesb / advanced-achievements Goto Github PK

View Code? Open in Web Editor NEW
199.0 12.0 206.0 5.87 MB

:fireworks: Popular plugin that adds unique and challenging achievements to Minecraft servers.

Home Page: https://www.spigotmc.org/resources/83466

License: GNU General Public License v3.0

Java 100.00%
minecraft plugin spigot bukkit java achievements

advanced-achievements's Introduction


Advanced Achievements

Advanced Achievements enables unique and challenging achievements on Minecraft servers. Collect as many as you can, earn rewards, climb the rankings and receive RP books! The plugin supports SQLite, MySQL, H2 and PostgreSQL, manages an extensive statistics system, handles YAML configuration files and features fancy in-game GUIs and effects!


🌎 Useful links

  • Spigot, homepage of the plugin.

  • Wiki, a lot of valuable information on how to set the plugin up and use it properly.

  • Translations, 19 languages available, feel free to improve them!

⭐ Support and feedback

Thought of a cool idea? Found a problem or need some help? Simply open an issue!

Find the project useful, fun or interesting? Star the repository by clicking on the icon on the top right of this page!

💻 Code contributions

Want to make Advanced Achievements better, faster, stronger? Contributions are welcome, open a pull request and share your code! Simply fork the repository by clicking on the icon on the top right of this page and check out the developers Wiki section.

⚖️ License

GNU General Public License v3.0

advanced-achievements's People

Contributors

addstar avatar alchemistmatt avatar andrei1058 avatar arciniegasdiaz avatar aurorals3 avatar billzhucn avatar bsavasc avatar crylegend avatar dependabot-preview[bot] avatar dependabot[bot] avatar dereku avatar doctorwratch avatar elgbar avatar enterih avatar fabianwennink avatar jascotty2 avatar kaspiandev avatar kondziosvk avatar magmablock avatar meowsome avatar montlikadani avatar n57b avatar phoetrix avatar platinteufel avatar pocakking avatar pyvesb avatar supertassu avatar taehyuun avatar timvango avatar ytkater avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

advanced-achievements's Issues

More detailed achievements

Hi guys

Some achievement categories are able to be more precise, and instead of only a simple global count it could be nice to set achievement per item (current global count is needed and still be here, but a detailed count could be fun!)

  • items broken
  • items eaten
  • items enchanted
  • potions drunk and splashed (consumed potions)
  • fishs and treasures caughted
  • smelting (like crafting)
  • taming (per animal, like breeding)

Thank you :)

Random reward from the kit

How difficult it is to make the award of the sets?

bundle.yml

WoodenBundle:
...
StoneBundle:
Item: stone_sword
Name: '&eStone Sword Novice'
Amount: 1
Chance: 0.7 (1 = 100%)
Item: stone_pickaxe
Name: '&eStone Pickaxe Novice'
Amount: 1
Chance: 0.6 (1 = 100%)
Item: stone_pickaxe
Name: '&eStone Pickaxe Novice'
Amount: 1
Chance: 0.6 (1 = 100%)
...
Item: stone_hoe
Name: '&eStone Hoe Novice'
Amount: 1
Chance: 0.2 (1 = 100%
IronBundle:
...
GoldenBundle:
...
DiamondBundle:
...

Item: {itemid} or {gunpowder} or {<ore:barsIron>} or {<EnderIO:itemMaterial:8>} or {<TwilightForest:tile.TFSapling:*>}

config.yml

Kills:
zombie:
'1':
Message: '&cТвоё первое убийство зомби!'
Name: Ходячие мертвецы
Reward:
{Money: 1
Item: diamond 1}
or
Bundle: StoneBundle
Amount: 3 (Number of random items from the set)

Maximum level reached.

Maximum level reached.

MaxLevel:
'10':
Message: Level 10 reached!
Name: '&4Rookie'

In some modes it is possible to maintain the experience and then type it again from the places of storage in the player. This achievement is given each time you get level 10.
For example: I need to enchant an item. I dialed previously stored experience and get the achievement. Then I again enchant items and then take the experience from the repository. Again, I get an achievement. Every time I get the 10 level achievement given me.
Perhaps to make a record in the database, only 1 time of the receipt of this achievement. When I get the 10 level again, it should no longer be given to achieve this, the way I got it for a long time.

Idea: Support scoreboard objectives

Hello,

if it's possible to support scoreboard objectives you could make A LOT of custom achievements, also with own plugins that use the scoreboard. Just a suggestion for future updates. :)

Show your current progress

With /aach list you can see which achievements you can get and which you already have. It would be awesome if you could also see your current progress, so that you know how many stones you have to break (just an example) for the next achievement.

27.05 07:04:22 [Server] ERROR [AdvancedAchievements] Errors while trying to display achievement screen title. Is your server up-to-date?

I run a 1.7 - 1.8 Spigot Minecraft Server and your plugin is meant to be 1.7 compatible. Please take a look:
27.05 07:04:22 [Server] ERROR [AdvancedAchievements] Errors while trying to display achievement screen title. Is your server up-to-date? 27.05 07:04:22 [Server] WARN java.lang.ClassNotFoundException: net.minecraft.server.v1_7_R4.EnumTitleAction 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:91) 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:86) 27.05 07:04:22 [Server] WARN at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 27.05 07:04:22 [Server] WARN at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 27.05 07:04:22 [Server] WARN at java.lang.Class.forName0(Native Method) 27.05 07:04:22 [Server] WARN at java.lang.Class.forName(Class.java:264) 27.05 07:04:22 [Server] WARN at com.hm.achievement.particle.ReflectionUtils$PackageType.getClass(ReflectionUtils.java:415) 27.05 07:04:22 [Server] WARN at com.hm.achievement.particle.PacketSender.sendTitlePacket(PacketSender.java:94) 27.05 07:04:22 [Server] WARN at com.hm.achievement.AchievementDisplay.displayAchievement(AchievementDisplay.java:103) 27.05 07:04:22 [Server] WARN at com.hm.achievement.listener.AchieveKillListener.onEntityDeath(AchieveKillListener.java:63) 27.05 07:04:22 [Server] WARN at sun.reflect.GeneratedMethodAccessor740.invoke(Unknown Source) 27.05 07:04:22 [Server] WARN at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 27.05 07:04:22 [Server] WARN at java.lang.reflect.Method.invoke(Method.java:498) 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:298) 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:514) 27.05 07:04:22 [Server] WARN at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:499) 27.05 07:04:22 [Server] WARN at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:379) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.EntityLiving.die(EntityLiving.java:810) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.EntityLiving.damageEntity(EntityLiving.java:745) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.EntityMonster.damageEntity(EntityMonster.java:48) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.EntityHuman.attack(EntityHuman.java:950) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:1204) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.a(PacketPlayInUseEntity.java:37) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.PacketPlayInUseEntity.handle(PacketPlayInUseEntity.java:49) 27.05 07:04:22 [Server] WARN at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186)

Buggy descriptions

Hey,

for some reasons the descriptions at /aach list are very buggy. Would be awesome if you could fix it!

2016-01-17_03 33 13

Exploit to get crafting achievements without actually crafting

Steps to reproduce: Fill your entire inventory of items, so you dont have any slot free. Then, open a crafting table and craft, for example, a diamond sword. Then shift+left click it. The plugin will acknowledge it as a diamond sword craft, but you didnt actually craft anything because there is no free space in your inventory. Spam shift+left click to get achievement rewards without crafting.
Works the same with anvils, and probably brewing stands (but i didn't test it)

Using:

- Spigot:
[03:00:40 INFO]: This server is running CraftBukkit version git-Spigot-798f32d-0cd0397 (MC: 1.9.4) (Implementing API version 1.9.4-R0.1-SNAPSHOT)
[03:00:40 INFO]: You are running the latest version

- AdvancedAchievements:
[03:04:36 INFO]: [☘] Name: AdvancedAchievements
[03:04:36 INFO]: [☘] Version: 2.5.5
[03:04:36 INFO]: [☘] Website: https://github.com/PyvesB/AdvancedAchievements
[03:04:36 INFO]: [☘] Author: DarkPyves
[03:04:36 INFO]: [☘] Description: Advanced Achievements enables unique and challenging achievements. Try to collect as many as you can, earn rewards, climb the rankings and receive RP books!
[03:04:36 INFO]: [☘] Vault integration: YES
[03:04:36 INFO]: [☘] Database type: MySQL

java.lang.ClassNotFoundException: net/minecraft/server/v1_7_R4/EntityPlayer

AdvancedAchievements v2.5.1
[07:23:58 INFO]: [AdvancedAchievements] Player LLIaMMaH received the achievement: Big Walker [07:23:58 ERROR]: [AdvancedAchievements] Errors while trying to display achievement screen title. Is your server up-to-date? [07:23:58 WARN]: java.lang.ClassNotFoundException: net/minecraft/server/v1_7_R4/EntityPlayer [07:23:58 WARN]: at java.lang.Class.forName0(Native Method) [07:23:58 WARN]: at java.lang.Class.forName(Unknown Source) [07:23:58 WARN]: at com.hm.achievement.particle.PacketSender.sendTitlePacket(PacketSender.java:61) [07:23:58 WARN]: at com.hm.achievement.AchievementDisplay.displayAchievement(AchievementDisplay.java:103) [07:23:58 WARN]: at com.hm.achievement.runnable.AchieveDistanceRunnable.awardDistanceAchievement(AchieveDistanceRunnable.java:332) [07:23:58 WARN]: at com.hm.achievement.runnable.AchieveDistanceRunnable.refreshDistance(AchieveDistanceRunnable.java:298) [07:23:58 WARN]: at com.hm.achievement.runnable.AchieveDistanceRunnable.run(AchieveDistanceRunnable.java:159) [07:23:58 WARN]: at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftTask.run(CraftTask.java:71) [07:23:58 WARN]: at org.bukkit.craftbukkit.v1_7_R4.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:346) [07:23:58 WARN]: at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:873) [07:23:58 WARN]: at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [07:23:58 WARN]: at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [07:23:58 WARN]: at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [07:23:58 WARN]: at java.lang.Thread.run(Unknown Source)

[07:26:29 INFO]: [AdvancedAchievements] Player LLIaMMaH received the achievement: ┬з4╨Э╨╛╨▓╨╛╨▒╤А╨░╨╜╨╡╤Ж [07:26:29 ERROR]: [AdvancedAchievements] Errors while trying to display achievement screen title. Is your server up-to-date? [07:26:29 WARN]: java.lang.ClassNotFoundException: net/minecraft/server/v1_7_R4/EntityPlayer [07:26:29 WARN]: at java.lang.Class.forName0(Native Method) [07:26:29 WARN]: at java.lang.Class.forName(Unknown Source) [07:26:29 WARN]: at com.hm.achievement.particle.PacketSender.sendTitlePacket(PacketSender.java:61) [07:26:29 WARN]: at com.hm.achievement.AchievementDisplay.displayAchievement(AchievementDisplay.java:103) [07:26:29 WARN]: at com.hm.achievement.listener.AchieveXPListener.onPlayerExpChange(AchieveXPListener.java:71) [07:26:29 WARN]: at sun.reflect.GeneratedMethodAccessor106.invoke(Unknown Source) [07:26:29 WARN]: at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) [07:26:29 WARN]: at java.lang.reflect.Method.invoke(Unknown Source) [07:26:29 WARN]: at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) [07:26:29 WARN]: at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [07:26:29 WARN]: at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [07:26:29 WARN]: at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [07:26:29 WARN]: at org.bukkit.craftbukkit.v1_7_R4.event.CraftEventFactory.callPlayerLevelChangeEvent(CraftEventFactory.java:653) [07:26:29 WARN]: at net.minecraft.entity.player.EntityPlayerMP.func_71127_g(EntityPlayerMP.java:453) [07:26:29 WARN]: at net.minecraft.network.NetHandlerPlayServer.func_147347_a(NetHandlerPlayServer.java:482) [07:26:29 WARN]: at net.minecraft.network.play.client.C03PacketPlayer.func_148833_a(C03PacketPlayer.java:36) [07:26:29 WARN]: at net.minecraft.network.play.client.C03PacketPlayer$C05PacketPlayerLook.func_148833_a(C03PacketPlayer.java:182) [07:26:29 WARN]: at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [07:26:29 WARN]: at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [07:26:29 WARN]: at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [07:26:29 WARN]: at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [07:26:29 WARN]: at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [07:26:29 WARN]: at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [07:26:29 WARN]: at java.lang.Thread.run(Unknown Source)

In version 2.5 there was no error.

KCauldron version 1.7.10-R0.1-SNAPSHOT & GRASS_PATH

This server is running KCauldron version 1.7.10-R0.1-SNAPSHOT (MC: 1.7.10) (Implementing API version 1.7.10-R0.1-SNAPSHOT)
....
[18:48:55 ERROR]: Error occurred while enabling AdvancedAchievements v2.5 (Is it up to date?)
java.lang.NoSuchFieldError: GRASS_PATH
at com.hm.achievement.command.ListCommand.(ListCommand.java:44) ~[?:?]
at com.hm.achievement.AdvancedAchievements.configurationLoad(AdvancedAchievements.java:452) ~[?:?]
at com.hm.achievement.AdvancedAchievements.onEnable(AdvancedAchievements.java:162) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) ~[JavaPlugin.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:368) [JavaPluginLoader.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:410) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugin(CraftServer.java:415) [CraftServer.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.craftbukkit.v1_7_R4.CraftServer.enablePlugins(CraftServer.java:349) [CraftServer.class:1.7.10-R0.1-SNAPSHOT]
at net.minecraft.server.MinecraftServer.func_71243_i(MinecraftServer.java:511) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.func_71222_d(MinecraftServer.java:485) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:445) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:336) [lt.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:631) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_91]

http://minecraft.gamepedia.com/Grass_Path
History (Official release)
1.9 - 15w31a - Added grass path.
1.9 - 15w31c - Changed collision height to 15⁄16 of a block.

Could not pass event InventoryClickEvent

Recently there were such errors.
[07:02:40] [Server thread/INFO]: LLIaMMaH has just earned the achievement [Land Mugger!] [07:02:42] [Server thread/INFO]: LLIaMMaH has just earned the achievement [Getting Wood] [07:03:07] [Server thread/INFO]: LLIaMMaH has just earned the achievement [Shattered Ice] [07:03:43] [Server thread/INFO]: LLIaMMaH has just earned the achievement [Rock Pool Bully!] [07:04:26] [Server thread/INFO]: LLIaMMaH has just earned the achievement [2Cool4U] [07:05:56] [Server thread/ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?] at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?] at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_91] Caused by: java.lang.NullPointerException at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?] at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] ... 13 more [07:05:56] [Server thread/ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?] at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?] at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_91] Caused by: java.lang.NullPointerException at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?] at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] ... 13 more [07:06:03] [Server thread/ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?] at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?] at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_91] Caused by: java.lang.NullPointerException at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?] at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] ... 13 more [07:06:04] [Server thread/ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.3 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT] at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?] at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?] at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?] at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?] at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?] at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?] at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?] at java.lang.Thread.run(Unknown Source) [?:1.8.0_91] Caused by: java.lang.NullPointerException at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?] at sun.reflect.GeneratedMethodAccessor44.invoke(Unknown Source) ~[?:?] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91] at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT] ... 13 more

.bak

Whenever I reload the plugin the config turns into config.yml.bak, and there is another config generated that hardly has anything in it, just

CheckForUpdate: true
RetroVault: false
Firework: true
Sound: true
Icon: �
ChatNotify: false
BookSeparator: ''
RestrictCreative: false
MultiCommand: true
DatabaseBackup: true
ExcludedWorlds: []
TopList: 5
AdditionalEffects: true
FireworkStyle: BALL_LARGE
ObfuscateNotReceived: true
HideNotReceivedCategories: false
TitleScreen: true
Color: '5'
TimeBook: 900
TimeList: 0
AsyncPooledRequestsSender: true

Enchanted items as reward

Just a quick question: Is it possible to give a enchanted pickaxe as reward?
I've also tried to give named items (e.g. Pickaxe of the stone god NAME) as trophy, but it breaks my config.

[suggestion] Seniority in days

Hi,

This isn't an issue at all :) Your plugin is great and bugfree on my server !
But I have a suggestion of functionality that would be great : the seniority of players
This achievement is based on the length (in days) the player has joined the server for the first time.
I have no knowledge in java programmation so i can't do a pull request but in think it will be a great functionality .
I hope it will be implanted 👍

Sincerely,

Achievement categories with progressbar

Hey,
currently we have one gui full of items, it's not very clear.
Some config options to create categories would be nice.

Example:
categories:
PvP:
gui_positionx: 3
gui_positiony: 3
Itemname: stone

Enchantments:
'5':
Message: 5 objects enchanted!
Name: '&5Wizard'
category: PvP

Let's say we have 6 achievements in the PvP category and we did 5 of them, when you hover over the PvP category item, there is a 5/6 in the Item lore.
When you click the PvP category item, you open a menu with these 6 achievements.

1.9 Error

I'm sure your probably working on this since 1.9 like just updated but ehh its an error and thought I'd post it :)

http://hastebin.com/nurumujesi.avrasm

Awesome plugin cant wait for 1.9 update!

[23:13:06 INFO]: Plugins (15): WorldEdit, DeluxeTags, PlaceholderAPI, DeluxeMenus, DeluxeJoin, PermissionsEx, NametagEdit, ActionAnnouncer, Vault, Essentials, AdvancedAchievements, MarriageMaster, Towny, EssentialsSpawn, DeluxeChat

Config.yml Has No Achievements

When I use the plugin without editing the config.yml, the plugin works normally, but when I added achievements to the config.yml, the file deletes ALL of the achievements and just has the basic config options.

(I converted the .yml files to .txt files to upload.)

config.txt
config2.txt

(config.txt is the edited config.yml file, and config2.txt is the edited config.yml file after loading the server (i.e. after the achievements get deleted).

New wood sorts aren't be counted for Item-Breaks -> Wood

For the "Item-Breaks -> Wood" achievement only blocks with id 17:* be counted. The new wood sorts, 162:* (Acacia Wood & Dark Oak Wood), don't count. Seems like this is because the "old" sorts are minecraft:log and the new sorts minecraft:log2 .. but that's a bit confusing for my players. Is there anything that I can do?

Crash while charge the plug

I started my server, then it sent the following crash:

Error occurred while enabling AdvancedAchievements v2.5.1 (Is it up to date?)
java.lang.NullPointerException
at com.hm.achievement.command.StatsCommand.(StatsCommand.java:18) ~[?:?]
at com.hm.achievement.AdvancedAchievements.configurationLoad(AdvancedAchievements.java:450) ~[?:?]
at com.hm.achievement.AdvancedAchievements.onEnable(AdvancedAchievements.java:162) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:292) ~[spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.craftbukkit.v1_9_R1.CraftServer.loadPlugin(CraftServer.java:361) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.craftbukkit.v1_9_R1.CraftServer.enablePlugins(CraftServer.java:321) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.craftbukkit.v1_9_R1.CraftServer.reload(CraftServer.java:745) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.Bukkit.reload(Bukkit.java:539) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.craftbukkit.v1_9_R1.CraftServer.dispatchCommand(CraftServer.java:645) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at org.bukkit.craftbukkit.v1_9_R1.CraftServer.dispatchServerCommand(CraftServer.java:631) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at net.minecraft.server.v1_9_R1.DedicatedServer.aL(DedicatedServer.java:438) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:401) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:660) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:559) [spigot-1.9.2.jar:git-Spigot-e6f93f4-d884ab3]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_66]

Breakwith achievement

Hi

Could you add an achievement like "breakwith" ? We define which block must be break with an item in particular to get achievement.

Thank you for reading

NoSuchMethodError: org.bukkit.entity.Player.isGliding()

This gets spammed in console every 5 seconds. Please solve the Problem. I'm using Spigot 1.9 with the default config and language file.

[22:21:20 WARN]: [AdvancedAchievements] Task #43622 for AdvancedAchievements v2.5.3 generated an exception
java.lang.NoSuchMethodError: org.bukkit.entity.Player.isGliding()Z
at com.hm.achievement.runnable.AchieveDistanceRunnable.refreshDistance(AchieveDistanceRunnable.java:286) ~[?:?]
at com.hm.achievement.runnable.AchieveDistanceRunnable.run(AchieveDistanceRunnable.java:159) ~[?:?]
at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-f32adba-bf43ca6]
at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot.jar:git-Spigot-f32adba-bf43ca6]
at net.minecraft.server.v1_9_R1.MinecraftServer.D(MinecraftServer.java:729) [spigot.jar:git-Spigot-f32adba-bf43ca6]
at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:400) [spigot.jar:git-Spigot-f32adba-bf43ca6]
at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:660) [spigot.jar:git-Spigot-f32adba-bf43ca6]
at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:559) [spigot.jar:git-Spigot-f32adba-bf43ca6]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_77]

Enderpearls doesn't work

Seems like the EnderPearls category doesn't work. I'm spamming EnderPearls and can't reach any achievement here. ;-)

Umm?

Im not sure if this is on purpose but i have a brewing stand down in my config under the places section and whenever players placed obsidian they get the brewing stand achivements.

Plz help

Idea: Store vanilla stats and vanilla achievements

Hello everyone!

I have another idea to improve this plugin : currently plugin stores datas that it uses to give achievements.
On my server, i want to give to players a lot of datas and statistics. There are many plugin to track players and give these informations, but there isn't (or at least i didn't find) any simple plugin which only store vanilla's datas in mysql.

The goal is to store all stats (and maybe achievements) from minecraft (stats you can find in escap > statistics/achievements). It allows to display them on a website for instance.

English isn't my native language, so if you don't understand something please tell me :) Thanks for reading!

Idea: Prefix in database

Hi guys

Is it possible to add a configurable prefix in config for database's tables (mysql) ? (if '' no prefix, like currently)
Because it is hard to find this tables with many others plugins' tables :)

Thanks for reading :)

Using Silk Touch to easily get achievement

  1. Using a Pickaxe with Silk Touch to mining ore
  2. Place the ore which you just mined.
  3. Mining it again.

Then players will easily get the achievement below.

When a specific block is broken (specify material name, lower case).
# Below, the notation log:1 means log item with metadata 1.
Breaks:
  emerald_ore:
    '10':
      Message: 'example'
      Name: '&a example &fLv1'

Feature Request - Additional achievement conditions.

@PyvesB I was wondering if it was possible to add additional conditions based on activity, commands used, total money / money spent (vault), regions, chatting, etc. Some ideas I had and would love to be able to use;

  • Player plays for 8 hours in one session (no relogging - e.g. a playtime marathon, being online for a while without logging out in contrary to total hours/days played)
  • Player enters a specific WorldGuard region. (i.e. finding a secret area of spawn)
  • Player spends a certain amount of money in a shop. (i.e. buying from a chestshop sign/chest specific to either the 'adminshop' or player based https://www.spigotmc.org/resources/1-9-chestshop.19511)
  • Player spends a certain amount of money at the casino slots (i.e. http://dev.bukkit.org/bukkit-plugins/casino-slots/)
  • Player had 10,000, 100,000, or 1,000,000 in-game currency at any time (with support for earning those achievements if a player already has over that specified amount)
  • Player gave at least 100 in-game currency to 5 different players in one session
  • Player spent 20 hours online with moderators or admins online (or x amount of time with the owner online)
  • Player goes AFK 10 times in one session. (Not using the command /afk over and over again, but rather the auto-afk feature in Essentials when a player is truly away - showing no activity, then coming back, then afk again, etc.)
  • Player is AFK for 3 hours straight (e.g. where'd you go achievement?)
  • Player says a secret word in chat.
  • Player joined the server on a specific date (i.e. holidays - visited during christmas)
  • Player reached power level 100 in mcmmo (or a specific level in a certain skill - e.g. level 100 in mining)
  • Player performed a certain command in-game (i.e. /suicide, /me)
  • Player wins the lottery (i.e. https://www.spigotmc.org/resources/lottery-unofficial-update.16801/)

I was also wondering if it was possible to not count time online when a player is afk. So you can have total hours played achievements be hours they were actually playing rather than sat idling somewhere. For example, play 30 days on the server.

NullPointException in Task #18

Hi,

I've got a couple of achievements set up and everything worked correctly until now. I don't see any client-side warnings, only server-side exception that is recurring (I'm guessing it's doing it every time aach tries to check for achievements). Here's the error:

[17:13:04 WARN]: [AdvancedAchievements] Task #18 for AdvancedAchievements v2.2 generated an exception
java.lang.NullPointerException
        at com.hm.achievement.db.SQLDatabaseManager.hasPlayerAchievement(SQLDatabaseManager.java:508) ~[?:?]
        at com.hm.achievement.runnable.AchievePlayTimeRunnable.registerTimes(AchievePlayTimeRunnable.java:70) ~[?:?]
        at com.hm.achievement.runnable.AchievePlayTimeRunnable.run(AchievePlayTimeRunnable.java:48) ~[?:?]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot-1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at java.lang.Thread.run(Thread.java:745) [?:1.8.0_66]

Here's my config:

#==============================O==============================#
# I---------------------------------------------------------I #
# |    Advanced Achievements 2.2 configuration - Readme     | #
#1---------------------------------------------------------1 #
#==============================o==============================#

# You can use Minecraft chat colours in messages and names, but include ' ' around the whole text.
# If you want to use a ' in a text, write two ' instead, and include additional ' ' around the whole text.
# In command rewards, PLAYER designates the name of the player who got the achievement.
# Only spaces, no tabs. Don't forget the indents, plugin won't work otherwise! 
# To check your file, use: yaml-online-parser.appspot.com
# Available mobs for the Kills section: hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/EntityType.html
# Available items for rewards/Crafts/Places/Breaks: hub.spigotmc.org/javadocs/bukkit/org/bukkit/Material.html
# Default file: dev.bukkit.org/bukkit-plugins/advanced-achievements/pages/configuration/

#=============================O=O=============================#
# II-------------------------------------------------------II #
# |                    General  settings                    | #
#2---------------------------------------------------------2 #
#=============================o=o=============================#

# Time in seconds between each /aach book.
TimeBook: 900

# Time in seconds between each /aach list.
TimeList: 0

# Check for update on plugin launch and notify when an OP joins the game.
CheckForUpdate: true

# Set to true to activate firework effects when a player receives an achievement.
Firework: true

# Choose BALL_LARGE, BALL, BURST, CREEPER or STAR.
FireworkStyle: BALL

# Set to true to activate particle effects when receiving book and when player in top list.
AdditionalEffects: true

# Set to true to activate sound effects when receiving book and when player in top list.
Sound: true

# Set to true if you are using a version of Vault prior to 1.4.
RetroVault: false

# Set the icon of the plugin (default: shamrock, "\u2618").
Icon: "\u2618"

# Set the color of the plugin (default: 5, dark purple).
Color: '5'

# Notify other connected players when an achievement is received.
ChatNotify: false

# Separator between name, description and date on a book page.
BookSeparator: ''

# Stop stats from increasing when player in creative mode (except Connections and PlayedTime).
RestrictCreative: false

# Stop stats from increasing when player in a specific world (delete the [] before using).
ExcludedWorlds: []
#  - yourWorld1
#  - yourWorld2

# Number of players displayed on /aach top command.
TopList: 5

# Obfuscate achievements that have not yet been received in /aach list.
ObfuscateNotReceived: true

# Hide categories with no achievements yet received in /aach list.
HideNotReceivedCategories: false

# Display achievement name and description as screen titles.
TitleScreen: false

#=============================OOO=============================#
# III-----------------------------------------------------III #
# |                    Database settings                    | #
#3---------------------------------------------------------3 #
#=============================ooo=============================#

# DO NOT CHANGE OR DELETE.
DatabaseVersion: 6

# Make a daily backup of your local database.
DatabaseBackup: false

# Database type, sqlite or mysql.
DatabaseType: mysql

# Settings to link with MySQL database (ignore if sqlite).
MYSQL:
  Database: 'jdbc:mysql://localhost:3306/minecraft'
  User: root
  Password: root

#============================OO=OO============================#
# IV-------------------------------------------------------IV #
# |                  Performance settings                   | #
#4---------------------------------------------------------4 #
#============================oo=oo============================#

# DO NOT CHANGE THE FOLLOWING UNLESS YOU ARE AN EXPERIENCED USER. The intervals are in seconds.
# Frequency of play time checks for players. Smaller values give more precision but more CPU usage.
# default: 150
PlaytimeTaskInterval: 150

# Calculates distance travelled by players. Smaller values give more precision but more CPU usage.
DistanceTaskInterval: 5

# Frequency of some statistics writes to the database.
PooledRequestsTaskInterval: 60

#============================OOOOO============================#
# V---------------------------------------------------------V #
# |                  Action  achievements                   | #
#5---------------------------------------------------------5 #
#============================ooooo============================#

DistanceFoot:
  '8500':
    Message: '&e/back&f command enabled'
    Name: Traveller
    Reward:
        Command: 'pex user PLAYER add mcf.back'
  '30000':
    Message: '&e/tploc&f command enabled'
    Name: Quick Feet
    Reward:
        Command: 'pex user PLAYER add mcf.tploc'

DistanceBoat:
  '12000':
    Message: '&e/back&f command enabled'
    Name: Traveller
    Reward:
        Command: 'pex user PLAYER add mcf.back'

Breaks:
  stone:
    '100':
      Message: '100 stones broken, have some diamonds :)'
      Name: The Gift
      Reward:
        Command: 'give PLAYER diamond 25'
    '1000':
      Message: '&e10%&f experience gain boost'
      Name: Gifted
      Reward:
        Command: 'pex user PLAYER add mcmmo.perks.xp.10percentboost.all'
    '1500':
      Message: 'all skills cooldown shortened by &e1/4'
      Name: Quick Recovery
      Reward:
        Command: 'pex user PLAYER add mcmmo.perks.cooldowns.quartered'
    '2000':
      Message: 'skills activation time prolonged by &e4 seconds'
      Name: Endurance
      Reward:
        Command: 'pex user PLAYER add mcmmo.perks.activationtime.fourseconds'
    # '1500':
      # Message: '&e50%&f experience gain boost'
      # Name: Graduate
      # Reward:
        # Command: 'pex user PLAYER add mcmmo.perks.xp.50percentboost.all'
    # '3000':
      # Message: 'experience gain &edoubled&f'
      # Name: Hard at Work
      # Reward:
        # Command: 'pex user PLAYER add mcmmo.perks.xp.double.all'
    # '6000':
      # Message: '&e150%&f experience gain boost'
      # Name: Workaholic
      # Reward:
        # Command: 'pex user PLAYER add mcmmo.perks.xp.150percentboost.all'
    # '3000':
      # Message: 'experience gain &etripled&f'
      # Name: Overload
      # Reward:
        # Command: 'pex user PLAYER add mcmmo.perks.xp.triple.all'
    # '3000':
      # Message: 'experience gain &quadrupled&f'
      # Name: Impossible
      # Reward:
        # Command: 'pex user PLAYER add mcmmo.perks.xp.quadruple.all'
PlayedTime:
  '5':
    Message: Experience comes with age. You have just aged 5 hours and gained 10xp levels.
    Name: First Five
    Reward:
      Command: 'xp 10L PLAYER'
  '10':
    Message: Ten hours passed for you in this realm. Please accept this 30xp levels gift.
    Name: Experienced
    Reward:
      Command: 'xp 30L PLAYER'

#===========================OOO=OOO===========================#
# VI-------------------------------------------------------VI #
# |                  Command achievements                   | #
#6---------------------------------------------------------6 #
#===========================ooo=ooo===========================#

# Let achievement commands be given several times.
MultiCommand: true

# A player with achievement.give (or the console) can use the /aach give yourAch1 playerName 
# to give yourAch1 achievement to playerName.
#Commands:
#  yourAch1:
#    Message: You took part in the special event!
#    Name: Special Event Achievement! 

No idea what's wrong from that error alone though. Seems to be playedtime-related. Here's my playedtime table:

+--------------------------------------+------------+
| playername                           | playedtime |
+--------------------------------------+------------+
| cde563e7-7874-313a-9f5e-15c26d764062 |     255353 |
+--------------------------------------+------------+

Thanks!

Configurable GUI Items

hi,
right now the gui items are hardcoded, we aren't able for example to change the "deaths" icon to a flower.
A config option like this would be helpful:
list-connections: "grass"
list-places: "dirt"

2.5.2: Don't get item rewards

Since 2.5.2 I don't get Item Rewards if they are defined in config. Also with the default config I didn't get a diamond for "The Walking Dead". I'm sorry to bother you again. :/

Idea : Achievement based on permission's group

Hi guys

I use a permission plugin (PermissionsEx). Is it possible to add creation of achievements based on groups ? When the plugin detect a rank change, player take achievement (have to work with other permissions plugins if possible)

Thanks for reading :)

"Big walker" and respawn

I've just noticed that you can use a warp that is a long way from your home and if you die there and respawn at home the distance will be count for "Big Walker" (DistanceFoot), so this achievement is not usable for me atm. :/

File "config.yml" line 14

[23:33:25] [Server thread/ERROR]: [AdvancedAchievements] Error while loading configuration file, disabling plugin.
[23:33:25] [Server thread/ERROR]: [AdvancedAchievements] Verify your syntax using the following logs and by visiting yaml-online-parser.appspot.com
[23:33:25] [Server thread/WARN]: org.bukkit.configuration.InvalidConfigurationException: while scanning for the next token
found character '\t' that cannot start any token
in "", line 14, column 78:
... bs for the Kills section_COLON_ hub.spigotmc.org/javadocs/buk ...
^

[23:33:25] [Server thread/WARN]: at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:57)
[23:33:25] [Server thread/WARN]: at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:226)
[23:33:25] [Server thread/WARN]: at com.hm.achievement.utils.YamlManager.(YamlManager.java:33)
[23:33:25] [Server thread/WARN]: at com.hm.achievement.utils.FileManager.getNewConfig(FileManager.java:36)
[23:33:25] [Server thread/WARN]: at com.hm.achievement.AdvancedAchievements.configurationLoad(AdvancedAchievements.java:362)
[23:33:25] [Server thread/WARN]: at com.hm.achievement.AdvancedAchievements.onEnable(AdvancedAchievements.java:166)
[23:33:25] [Server thread/WARN]: at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316)
[23:33:25] [Server thread/WARN]: at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:368)
[23:33:25] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:410)
[23:33:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugin(CraftServer.java:415)
[23:33:25] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_7_R4.CraftServer.enablePlugins(CraftServer.java:349)
[23:33:25] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.func_71243_i(MinecraftServer.java:511)
[23:33:25] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.func_71222_d(MinecraftServer.java:485)
[23:33:25] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.func_71247_a(MinecraftServer.java:445)
[23:33:25] [Server thread/WARN]: at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:336)
[23:33:25] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:631)
[23:33:25] [Server thread/WARN]: at java.lang.Thread.run(Unknown Source)
[23:33:25] [Server thread/WARN]: Caused by: while scanning for the next token
found character '\t' that cannot start any token
in "", line 14, column 78:
... bs for the Kills section_COLON_ hub.spigotmc.org/javadocs/buk ...
^

[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:358)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:179)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingKey.produce(ParserImpl.java:563)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:230)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:160)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:123)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:106)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:480)
[23:33:25] [Server thread/WARN]: at org.yaml.snakeyaml.Yaml.load(Yaml.java:399)
[23:33:25] [Server thread/WARN]: at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55)
[23:33:25] [Server thread/WARN]: ... 16 more

You have to constantly change the word "Kills" on the "Kill's".

/aach give

For some reasons /aach give doesn't work for me. I've just typed /aach give Cobble! MyName, but it tells me that the specified achievement was not found. If the achievement has spaces like "The Walking Dead" /aach give The Walking Dead MyName only shows me the aach help site.

Offline player support

Hello, some of my achievements have to be given to the player when they are offline. But when the command "/aach give ach name " is executed it says the player is offline, so I would had like to know if you could add an offline player support (a line in the config like "offline-player-can-get-achievements : true/false for example)

Thanks

Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.5

[16:38:44 ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.5
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?]
at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?]
at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?]
at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?]
at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_91]
Caused by: java.lang.NullPointerException
at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?]
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
... 13 more
[16:52:34 ERROR]: Could not pass event InventoryClickEvent to AdvancedAchievements v2.5.5
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:338) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[RegisteredListener.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:507) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:492) [SimplePluginManager.class:1.7.10-R0.1-SNAPSHOT]
at net.minecraft.network.NetHandlerPlayServer.func_147351_a(NetHandlerPlayServer.java:2015) [nh.class:?]
at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:32) [ix.class:?]
at net.minecraft.network.play.client.C0EPacketClickWindow.func_148833_a(SourceFile:10) [ix.class:?]
at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:245) [ej.class:?]
at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:173) [nc.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:991) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:431) [lt.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:809) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:669) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_91]
Caused by: java.lang.NullPointerException
at com.hm.achievement.listener.AchieveTradeAnvilBrewListener.onInventoryClick(AchieveTradeAnvilBrewListener.java:27) ~[?:?]
at sun.reflect.GeneratedMethodAccessor79.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_91]
at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_91]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:334) ~[JavaPluginLoader$1.class:1.7.10-R0.1-SNAPSHOT]
... 13 more

NPE

I'm getting this NPE sometimes and I'm wondering if it causes issues.

http://pastebin.com/vciPAaWt
http://pastebin.com/BKXKSkAk

[...] Caused by: java.lang.NullPointerException at org.bukkit.inventory.ItemStack.<init>(ItemStack.java:68) ~[patched_1.9.2.jar:git-Paper-724] at com.hm.achievement.AchievementRewards.getItemReward(AchievementRewards.java:50) ~[?:?] at com.hm.achievement.AchievementRewards.checkConfig(AchievementRewards.java:155) ~[?:?] at com.hm.achievement.listener.AchieveBlockBreakListener.onBlockBreak(AchieveBlockBreakListener.java:51) ~[?:?] at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor424.execute(Unknown Source) ~[?:?] at org.bukkit.plugin.EventExecutor$1.execute(EventExecutor.java:44) ~[patched_1.9.2.jar:git-Paper-724] ... 18 more

Operators error PlayerJoinEvent Achievements ?

Receiving this error when a player who is Operator joins the server.

24.01 21:20:56 [Multicraft] bonnydust ran command Message of the Day
24.01 21:20:56 [Connect] User bonnydust, IP 180.181.147.167
24.01 21:20:56 [Server] INFO ... 14 more
24.01 21:20:56 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_65]
24.01 21:20:56 [Server] INFO at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_65]
24.01 21:20:56 [Server] INFO at sun.reflect.GeneratedMethodAccessor427.invoke(Unknown Source) ~[?:?]
24.01 21:20:56 [Server] INFO at com.hm.achievement.listener.AchieveConnectionListener.onPlayerJoin(AchieveConnectionListener.java:35) ~[?:?]
24.01 21:20:56 [Server] INFO Caused by: java.lang.NullPointerException
24.01 21:20:56 [Server] INFO at java.lang.Thread.run(Thread.java:745) [?:1.7.0_65]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:556) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:653) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:813) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.ServerConnection.c(ServerConnection.java:148) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.NetworkManager.a(NetworkManager.java:231) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.LoginListener.c(LoginListener.java:54) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.LoginListener.b(LoginListener.java:144) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.PlayerList.a(PlayerList.java:157) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at net.minecraft.server.v1_8_R3.PlayerList.onPlayerJoin(PlayerList.java:298) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[spigot-1.8.8-20150820a.jar:git-Spigot-fdc1440-53fac9f]
24.01 21:20:56 [Server] INFO org.bukkit.event.EventException
24.01 21:20:56 [Server] ERROR Could not pass event PlayerJoinEvent to AdvancedAchievements v2.3.1
24.01 21:20:56 [Server] INFO UUID of player bonnydust is 7871ce06-f8a5-4bff-90ae-12acec0932fa

New categories :)

Hey PyvesB,
I just have some suggestions for new categories for your really awesome plugin. :)

When a distance is traveled by elytra.

DistanceElytra:
'1000': [...]

When an enderpearl is thrown.

Enderpearl:
'1000': [...]

When a cake is eaten.

EatenCakes:
'1': [...]

When the player has jumped

Jumps:
'100': [...]

Music Discs played

MusicDiscs:
'1': [...]
'12': [...]
Maybe it's possible to count only the different music discs here, so that you have to use ALL discs to get the highest achievement.

I want to install this plugin on my main server later this week. Should I install the current version or should I wait for an update with even more features if there's an update planned in time? ;)

Better Gui? IDEA

I was thinking that you should maybe add like a new and improved GUI with a red stained clay (or any configuarbale block) for the achievements that you haven't completed yellow stained clay for ones in progress and green stained clay for one's you've completed. This would make it easier for players to navigate through achievements

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.