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.
PlayerHeads 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
Nice 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)
Cool plugin ill try it on my server 5.9.158.149:25577
Cool plugin , i will try it on my server! :)
super - plugin.
Question, I have my base skin, as it used to do?
@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.
I 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.
2.9.0083 another error
http://pastie.org/5977801 :/
Any chance we can have some sort of Vault integration so we can sell heads using our economy?
How 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 :)
@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.
@externo6
same here with 2.9.0082 and a bug with placement direction with heads :| I maked 2 tikets :P
@meiskam
2.9.0082 bug http://pastie.org/5968095#8
Getting 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
@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.
i can place, but i can't destroy enderman head. it is bug.?
Awesome plugin! Liked very much its customization
@meiskam
Any news on spawning in all of the mob heads?
@Switch0r
CraftBukkit build #2617 (Spigot higher then build #455) fixes the issue.
We love this plugin!
Cant you make a temp fix for this :p