Player Heads
Ever PVP someone or PVE a mob and get no good loot? Feel like you deserve a trophy for your victory? Want a simpler alternative to bigger plugins that implement everything but the kitchen sink? Then PlayerHeads is right for you! You can now lop off enemies heads in battle, and mount it on a pole for all to fear, wear your opponent's face as a mask like camouflage, or just collect all of the mob heads.
Installation
Place PlayerHeads.jar in your plugins folder, on server start the configuration will be generated. Remember to remove any outdated playerheads jars when adding the new one.
If you can't be bothered to read the rest of this page, then just watch this video by Awesome_Soul:
Portuguese (Português) video: http://youtu.be/OqhI_oIGPWo
German (Deutsch) video: http://youtu.be/ijEws5yjo6Y
Try It
Server: aztecmc.org (rare drops are enabled for mob and player-heads)
Website: aztecmc.org
Documentation
Notes
- PlayerHeads is now translatable! Edit "lang.properties" to whatever phrases you desire.
- lang files will change between releases, when updating be sure to delete the old file if you haven't edited it.
- If you've given people the * permission node, they will get 100% drop rates. If you don't want this to happen, deny (or add negative) nodes for the following: playerheads.alwaysbehead and playerheads.alwaysbeheadmob
- If you want to disable head drops in a specific world, use your permission plugin to deny (or add negative) nodes for the following in that world: playerheads.canbehead and playerheads.canbeheadmob
- If you have any problem using "lang_[language]_[country]_[variant].properties" for any reason, just use the file name "lang.properties" to override messages.
- Spawn mob heads with the following names: #creeper #zombie #skeleton #wither #spider #enderman #enderdragon ... (any many more!)
Known issues
- Renamed heads (with an anvil) don't stay renamed after placing, mining, dropping them.
- If for any reason your mob heads loose their name, you can get it back by placing and mining it.
- If you use the BountyHunters plugin and you have enabled head drops for bounties as well as player head drops from PlayerHeads, both will be dropped - for now, you should disable one or the other. Alternative solutions are being looked at.
- If you use JPerms, users with Op or playerheads.* permission will receive playerheads.alwaysbehead[mob] permissions and have 100% droprate since PlayerHeads permissions nodes are ignored. It's recommended to use another permissions plugin if this is a concern (LuckPerms, PermissionsEX, GroupManager).
Dev Builds
Development builds of this project can be acquired at the provided continuous integration servers. These builds have not been approved by the BukkitDev staff. Use them at your own risk.
https://ci.meme.tips/job/PlayerHeads (upstream)/ (selected major changes only)
https://ci.meme.tips/job/PlayerHeads-5.x/ (rapid changes and work-in-progress)
Sourcecode / API documentation
We've included the entire sourcecode via github:
https://github.com/meiskam/PlayerHeads
Third-party plugin-developers can view the PlayerHeads API documentation at the following link: https://crashdemons.github.io/PlayerHeads/
Server Support
Current versions of the plugin have been tested as compatible on the following server environments:
- Spigot/Paper 1.8-1.18.2 (Use PlayerHeads 5.20.2 or lower; READ NOTE)
- Spigot/Paper 1.19-1.20.4
Server environments that are known to be incompatible:
- Glowstone 1.12 (only partial support is available in PlayerHeads 5.20.2 and lower)
Support should exist for any modern bukkit server with access to authlib which is needed to set textures.
Legacy version notes:
- 5.x drops support for older usernamed-based mobheads (3.x), fixing some longstanding issues with spawn commands; uses vanilla and texured heads exclusively (4.x)
- 4.x introduces new, more reliable support for head textures, more configuration options, updated mobs, and more consistent permission behavior and will continue to receive updates in the future - some older configurations may be incompatible (see the changelog and Configuration page). This version automatically upgrades 3.x heads to 4.x when breaking or dropping heads.
- 3.x maintains the original behavior of the plugin with username-based mobheads, but head skins may be less reliable over time and support has been discontinued.
Legacy version documentation: changelog, configuration, permissions.
-
View User Profile
-
Send Message
Posted Feb 1, 2013@wrecktify80
You didn't have to go back to a previous build. If you read the changelog on this page you'd noticed he added 2 new permission nodes: "playerheads.alwaysbehead" to always drop a player's head from PvP, and "playerheads.alwaysbeheadmob" to always drop heads from mobs. Just set these to false in your permissions file and you should be good.
-
View User Profile
-
Send Message
Posted Feb 1, 2013Getting this error with latest. I am going to roleback on level.
2013-02-01 04:03:28 [INFO] This server is running CraftBukkit version git-Bukkit-1.4.7-R0.1-b2602jnks (MC: 1.4.7) (Implementing API version 1.4.7-R0.1) 2013-02-01 04:03:29 [SEVERE] Could not load 'plugins/PlayerHeads.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:255) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:132) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:52) at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:131) at java.util.jar.JarFile.<init>(JarFile.java:150) at java.util.jar.JarFile.<init>(JarFile.java:114) at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:243) ... 8 more 2013-02-01 04:03:29 [SEVERE] Could not load 'plugins/NoCheatPlus.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:255) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:132) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:52) at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:131) at java.util.jar.JarFile.<init>(JarFile.java:150) at java.util.jar.JarFile.<init>(JarFile.java:114) at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:243) ... 8 more 2013-02-01 04:03:29 [SEVERE] Could not load 'plugins/WorldGuard.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:255) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:132) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:52) at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:131) at java.util.jar.JarFile.<init>(JarFile.java:150) at java.util.jar.JarFile.<init>(JarFile.java:114) at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:243) ... 8 more 2013-02-01 04:03:29 [SEVERE] Could not load 'plugins/WorldEdit.jar' in folder 'plugins' org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:255) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:132) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:52) at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104) at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399) at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) Caused by: java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:131) at java.util.jar.JarFile.<init>(JarFile.java:150) at java.util.jar.JarFile.<init>(JarFile.java:114) at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:243) ... 8 more
-
View User Profile
-
Send Message
Posted Feb 1, 2013I went back to v2.8.0075 and don't have this problem
-
View User Profile
-
Send Message
Posted Feb 1, 2013PlayerHeads v2.9.0084, Bukkit 1.4.7-R1.0 I updated to the latest version and I am getting skeleton skulls on a mob grinder 100% of the time. My config is default and set at skeletondroprate: 0.002
-
View User Profile
-
Send Message
Posted Jan 31, 2013Nice Plugin dude, I don't mind helping you if you want, I am experienced in javascript and html (i don't know if that helps) my skype is: blockhead597831 (just copy and paste it if you decide to add me)
-
View User Profile
-
Send Message
Posted Jan 31, 2013Cool plugin ill try it on my server 5.9.158.149:25577
-
View User Profile
-
Send Message
Posted Jan 31, 2013Cool plugin , i will try it on my server! :)
-
View User Profile
-
Send Message
Posted Jan 31, 2013super - plugin.
Question, I have my base skin, as it used to do?
-
View User Profile
-
Send Message
Posted Jan 30, 2013@Hangar
All of the data from these heads is accessible with the Bukkit API, everything needed for integration is already available. Creating a method of trading is outside the scope of this plugin.
@ZwingGX
Thank you again for the report, try v2.9.0084 :)
@magana_10
Search your server console for errors, sounds like your yaml is corrupt. Try the command: "/ph config get droprate" and see what it's really set at. If all else fails, try giving everyone the "playerheads.alwaysbehead" permission node.
-
View User Profile
-
Send Message
Posted Jan 30, 2013I have my drop rate at 1. That is 100% rite? But when people get killed on my server it drops them rarely. Not 100% of the time.
-
View User Profile
-
Send Message
Posted Jan 30, 20132.9.0083 another error
http://pastie.org/5977801 :/
-
View User Profile
-
Send Message
Posted Jan 30, 2013Any chance we can have some sort of Vault integration so we can sell heads using our economy?
-
View User Profile
-
Send Message
Posted Jan 30, 2013How do I make people drop just regular steve heads instead of their own player heads? That doesn't seem to work. Help?
Edit: I'm talking about heads without people's name on it.
Thanks in advance!
Edit: Never mind, I fixed it already :)
-
View User Profile
-
Send Message
Posted Jan 30, 2013@externo6
@ZwingGX
Thanks for the report, I've put out v2.9.0083 that should fix it.
@FlashLight32
This has already been reported and fixed, even though it was a bug in Bukkit not PlayerHeads.
-
View User Profile
-
Send Message
Posted Jan 30, 2013@externo6
same here with 2.9.0082 and a bug with placement direction with heads :| I maked 2 tikets :P
-
View User Profile
-
Send Message
Posted Jan 30, 2013@meiskam
2.9.0082 bug http://pastie.org/5968095#8
-
View User Profile
-
Send Message
Posted Jan 30, 2013Getting this error
16:49:45 [SEVERE] Could not pass event EntityDeathEvent to PlayerHeads v2.9.0082
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:35)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at org.bukkit.craftbukkit.v1_4_R1.event.CraftEventFactory.callEntityDeathEvent(CraftEventFactory.java:315)
at net.minecraft.server.v1_4_R1.EntitySkeleton.dropDeathLoot(EntitySkeleton.java:175)
at net.minecraft.server.v1_4_R1.EntityLiving.die(EntityLiving.java:878)
at net.minecraft.server.v1_4_R1.EntitySkeleton.die(EntitySkeleton.java:126)
at net.minecraft.server.v1_4_R1.EntityLiving.damageEntity(EntityLiving.java:758)
at net.minecraft.server.v1_4_R1.EntityMonster.damageEntity(EntityMonster.java:39)
at net.minecraft.server.v1_4_R1.EntityWolf.m(EntityWolf.java:186)
at net.minecraft.server.v1_4_R1.PathfinderGoalMeleeAttack.e(PathfinderGoalMeleeAttack.java:83)
at net.minecraft.server.v1_4_R1.PathfinderGoalSelector.a(PathfinderGoalSelector.java:104)
at net.minecraft.server.v1_4_R1.EntityLiving.bl(EntityLiving.java:1476)
at net.minecraft.server.v1_4_R1.EntityLiving.c(EntityLiving.java:1273)
at net.minecraft.server.v1_4_R1.EntityAgeable.c(EntityAgeable.java:64)
at net.minecraft.server.v1_4_R1.EntityAnimal.c(SourceFile:33)
at net.minecraft.server.v1_4_R1.EntityWolf.c(EntityWolf.java:105)
at net.minecraft.server.v1_4_R1.EntityLiving.j_(EntityLiving.java:534)
at net.minecraft.server.v1_4_R1.EntityWolf.j_(EntityWolf.java:115)
at net.minecraft.server.v1_4_R1.World.entityJoinedWorld(World.java:1334)
at net.minecraft.server.v1_4_R1.WorldServer.entityJoinedWorld(WorldServer.java:548)
at net.minecraft.server.v1_4_R1.World.playerJoinedWorld(World.java:1315)
at net.minecraft.server.v1_4_R1.World.tickEntities(World.java:1193)
at net.minecraft.server.v1_4_R1.WorldServer.tickEntities(WorldServer.java:445)
at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:580)
at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224)
at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494)
at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427)
at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
Caused by: java.lang.NullPointerException
at org.shininet.bukkit.playerheads.PlayerHeadsListener.EntityDeathHelper(PlayerHeadsListener.java:125)
at org.shininet.bukkit.playerheads.PlayerHeadsListener.onEntityDeath(PlayerHeadsListener.java:99)
at sun.reflect.GeneratedMethodAccessor258.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
... 30 more
-
View User Profile
-
Send Message
Posted Jan 29, 2013@fliuxus
Please list your server version (/ver), playerheads version (/ver playerheads), other plugins (/pl), and any error report from the console. Were you placing it inside a worldguard or similar region? Were you OP at the time?
I've got a beta version that attempts to fix this issue, but I can't reproduce it and therefore can not check myself to see if the beta actually fixes the problem.
@Nickbbeezy
Will be avail next version. PM me if you want to know a work-around how to spawn them with your current version.
-
View User Profile
-
Send Message
Posted Jan 29, 2013i can place, but i can't destroy enderman head. it is bug.?
-
View User Profile
-
Send Message
Posted Jan 28, 2013Awesome plugin! Liked very much its customization