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.
In reply to pinakeeg:
If there's any lag then it should be related to the server loading Player's heads (based on usernames) which would happen with other plugins also (eg: the same user's head generated with /skull username using Essentials). This shouldn't be an issue if you don't have something causing problems with skin caching, username/uuid resolution or connecting to mojang servers (like if you have the server in offline-mode).
PlayerHeads doesn't even do anything during heads being placed or listen for heads being placed - heads being placed and their texture/account information being updated is something the server does itself.
In this case there may be no other solution than to set dropboringplayerheads: true which prevents new heads for Players from having an account or username attached to them - which should eliminate any delay, but unfortunately it will cause player's heads to all appear as Steve/Alex.
It seems that the looting modifier does not work in the latest release? I do get heads with all the items I have set. This is my config:
pkonly: true
droprate: 1
lootingrate: 1.0
mobpkonly: true
fixcase: false
updatecheck: true
broadcast: true
broadcastrange: 0
broadcastmob: false
broadcastmobrange: 0
antideathchest: false
dropboringplayerheads: false
dropvanillaheads: true
convertvanillaheads: false
nerfdeathspam: false
addlore: true
clickspamcount: 5
clickspamthreshold: 1000
deathspamcount: 5
deathspamthreshold: 300000
fixdroppedheads: true
requireitem: true
requireditems:
- wooden_axe
- stone_axe
- golden_axe
- iron_axe
- diamond_axe
- netherite_axe
- diamond_sword
considermobkillers: false
considertameowner: false
In reply to Ninjamaster4427:
Which plugin version did looting last work in for you?
What kind of droprates for mobs do you use? (an example, cowdroprate / piglinbrutedroprate)
What other kinds of plugins do you use on the server and which version of Spigot/Paper/etc do you use?
As an aside, you've defined players to have a droprate of 100%, that will not be affected by looting to provide more than one head.
Thank you, this will help with attempting to reproduce the issue.
In lang.properties, setting:
HEAD_PLAYER=Cabeza de %1%
Heads still spawn like this:
https://imgur.com/ezJJ5q2
when given with /playerhead __Mithrandir__
In reply to MithrandirMage:
Please post logs from when PlayerHeads loads during the start of the server.
Are there other ".properties" files in your PlayerHeads folder?
If your server locale is different, it may be preferring another file.
I'll try to reproduce the issue and investigate this weekend (I'm very busy with work at the moment), but it's more likely to be a file conflict issue. (preferring a different file, or unable to access the file provided, etc)
If you provide your lang.properties file, that would also be helpful to debugging the issue.
In reply to crashdemons:
> Please post logs from when PlayerHeads loads during the start of the server.
https://gist.github.com/MithrandirCraft/36cf3c35a8d0beb908784783bb1f1aba
> Are there other ".properties" files in your PlayerHeads folder?
No, there's only 1:
https://gist.github.com/MithrandirCraft/5acb9da7cf6bacd6291b9e8e3aa27745
Yeah it does seem like all plugin messages are in english even though translated.
In reply to MithrandirMage:
Translations just don't seem to work (at least not entirely). I tried installing PlayerHeads on a clean server, you can try it yourself:
Paper b128 for mc 1.16
1. Install paper
2. Drop PlayerHeads plugin in plugins folder and start the server
3. Change just HEAD_ZOMBIE entry in lang.properties to
HEAD_ZOMBIE=Cabeza de Zombie
4. Restart the server
5. Give yourself a zombie head with /ph spawn #zombie, you will notice it's
still in english.
In reply to MithrandirMage:
I tested today and I wasn't able to reproduce your problems - I used Paper 128 and PlayerHeads 5.2.9.
When I used your .properties file and restarted the server - head names and messages were translated how you have configured them.
I used /playerheads spawn __Mithrandir__ , I also tried with zombie (*see note) and cow.
So I'm not sure why you would have issues, but there are some possible causes:
(*Note: the name of default vanilla heads (Zombie, Skeleton, WitherSkeleton, Dragon) is not translated by this plugin because a name is not set - it is determined by client language settings. Third-party heads like Cow, Husk, and Player drops are handled by the plugin.)
I have the plugin installed and set the witherskeletondroprate to 0.025 but it drops 100% of time, how to fix?
In reply to Forge_User_10250485:
if you are Op or you have given yourself the playerheads.* (or playerheads.alwaysbehead / playerheads.alwaysbeheadmob) permission - then your rate will be 100% for staff with those permissions.
To fix it, you will need to negate (or deny, depending on your permissions configuration) the two permissions I mentioned lastly above.
(or don't give the star permission at all)
This is also mentioned in FAQ Entry #9.
Thanks.
Hello!
I installed your plugin and it's working really good! I have only one issue. When mob kills me or I die from height damage i don't get mine head. I havent tried it with other player but i dont think that is the problem. Also I wasnt able to find drop rate for player. I am using 5.2.9 v. of your plugin on 1.16.1
In reply to Forge_User_06324517:
the droprate for the player is just called droprate for legacy reasons.
if you're not getting headdrops when dying to mobs or natural death, make sure that the pkonly setting isn't on (it is on by default) - this setting makes it so heads only drop from deaths caused by a player.
keep in mind to drop a head you also need the playerheads.canlosehead permission (on by default).
Hi, I've just found out that in vanilla Minecraft "wearing the corresponding mob head reduces the detection range of skeletons, zombies, and creepers to 50% of usual, and stacks with Invisibility."
Is that true for this plugin too? Is that what's meant by "wear your opponent's face as a mask like camouflage"?
Thank you for your response
In reply to venqueuev:
This plugin does not provide detection range benefits; I think that line of text was originally written in a more literal sense (although it was before I came onto the project).
It is possible for a plugin developer who wants to add this feature to check the head the player is wearing using the PlayerHeads-api though.
In reply to crashdemons:
Oh gotcha. Thankfully I was able to achieve my goal of trapping a ghast in the overworld, in a glass sphere, without it blowing up everything, so it's all good anyways. Thank you
I have player heads set to drop 100% of the time but if you also have Dead Chest (plugin) installed it will not behead other players. The only way these two plugins worked together was if a player's inventory was empty (Then he would drop his head). I would love to see these two plugins working together.
In reply to kyles120:
having you tried changing the antideathchest setting in the config?
Are the default drop rates in this plugin the same as default MC? Same question for looting level drop rates
In reply to austincherry:
no, many of the mobs supported do not normally drop heads, and the vanilla head drop behavior is not something that can be easily controlled (except for turning it on/off or modifying it after the fact).
By default, PlayerHeads enhances the drops for these mobs with its own rates without modifying vanilla head drops
For the mobs that drop heads in vanilla minecraft (zombie, skeleton, creeper, witherskeleton), their droprate can be set to -1 in order to force them to drop only vanilla heads. (in fact, you can set any mob to -1 to ensure vanilla behavior)
There are also a couple configuratiion options (chargedcreeperbehavior, witherskeletonbehavior) that can be set to vanilla in order to prevent the plugin from doing any deeper processing for these special cases.
Looting rates applied by PlayerHeads do not affect vanilla drops unless you configure PH to enhance ("ignore" behavior) or replace drops. That said, for legacy reasons, the PlayerHeads looting formula does not match vanilla minecraft.
PlayerHeads increases the droprate for a head by 20% (of the base droprate) for each level of looting. So a head with 0.03 (3%) droprate would increase to 0.03*(1+0.2*3)=0.048 (4.8%) with Looting III. The "20%" value is configurable in the config file. (lootingrate: 0.2)
Sidenote: There is a sideproject also called TrophyLuckModifier which increases droprates the same way for each level of luck attribute (mostly unused/forgotten vanilla effect that currently only affects fishing).
In reply to crashdemons:
Thank you for the detailed explanation, that cleared up everything. Might check out that luck modifier too, seems neat.