Namer
NOW WITH TagAPI SUPPORT! http://dev.bukkit.org/server-mods/tag/
The TagAPI enables users to display their nicknames above their head. This is toggleable with /toggledisplay
YOU MUST HAVE THE TagAPI.jar file in your plugins folder to enable using it.
RECENTLY ADDED VAULT SUPPORT. With vault all features (such as prefixes and suffixes) will work properly.
Namer is a special plugin that I've decided to release to the public. It has been running on the play.efcraft.net server for the past year and has made nicknames fun and entertaining for all.
What makes this plugin unique is the ability for any player to nickname another player. The way I manage this without getting endless nicknames is by having nick credits for each player. A nick credit is used to nickname yourself or another player. I have setup permissions for the plugin so admins can nickname without credits, while normal users must use credits to nickname.
I also support all colors, underline, bold, italic, and special characters. See http://www.minecraftwiki.net/wiki/Classic_server_protocol#Color_Codes for details about colors.
In the efcraft server we setup a donation option to obtain nick credits to nickname themselves or others. This was extremely popular, especially when users waged nickname wars with each other.
This plugin has been tested with bPermissions and PEX. It should support any permissions system that uses bukkit perms as well.
FEATURES
- Ability to nickname yourself or others
- Ability to give players nick credits to rename themselves or others. (nick.rename permission to enable this feature)
- Automatically converts player name to nicknames for join, quit, and death messages
- Updates the tab list with your nickname
- Manages list of unusable nicknames to prevent users from changing their nickname to admin names
- Ability to set the maximum length of a nickname
- Ability to lookup the real name of a player that has a nickname
- Ability to translate a nickname when using commands
- Use all color codes as well as underline, bold, and italics.
- Added ability to change prefix/suffix of players (PermissionsEx ONLY! ... Tested with Herochat)
- Added confirmation dialog for changing others or your own nick, prefix, suffix when using nick credits.
- NEWLY ADDED: Support with TagAPI to update the name above the player (THIS CHANGES THEIR SKIN)
- Added a /toggledisplay [name] to enable/disable displaying nickname above the player
- Ability to reset your nick, prefix, or suffix with /resetpriefix, /resetsuffix, /resetnick
- New Vault support added.
COMMANDS
Commands with [ ] are optional, commands with $ are mandatory
/nick help [#] Displays nick help menu
/nick info [player] Display player nick info about credits and nickname
/nick [player] $nickname$ Changes nickname for player
/prefix [player] $prefixname$ Changes prefix for player (PermissionsEx ONLY)
/suffix [player] $suffixname$ Changes suffix for player (PermissionsEx ONLY)
/credit [player] $#$ Adds # nick credits to player
/adddisabled $ Adds string value to disabled list
/listdisabled $ Displays disabled list
/setmaxlength $#$ Sets the max length for a nickname
/t $ Translates command example: /t 1 2 /tp nick1 nick2 (translates nick1 and nick2 to use the tp command on actual usernames... The 1 and 2 after /t indicate the location of the nicknames. /tp = 0, nick1 = 1, nick2 = 2)
/nick check $nick$ Looks up nickname for username
/toggledisplay [player] Toggles displaying a players nickname above their head (NOTE this can change a players skin)
/resetnick [player] Resets a player's nickname
/resetsuffix [player] Resets a player's suffix
/resetprefix [player] Resets a player's prefix
Permissions
nick.help /nick help
nick.check /nick check
nick.listdisabled /listdisabled
nick.adddisabled /adddisabled
nick.length /setmaxlength
nick.info /nick info
nick.name /nick [player] $nickname$ nicknames yourself or other players without using credits. Also gives access to /resetnick without credits.
Alternative permission for nick.name: nick.name.admin
nick.rename /nick $nickname$ nicknames yourself using nick credits. Also gives access to /resetnick.
Alternative permission for nick.rename: nick.name.player
nick.rename.other /nick [player] $nickname$ nicknames OTHERS using nick credits
Alternative permission for nick.rename.other: nick.name.player.other
nick.prefix.admin /prefix [player] $prefixname$ Changes prefix of yourself or others without using credits. Also gives access to /resetprefix without credits.
nick.prefix.player /prefix $prefixname$ Changes prefix of yourself using credits. Also gives access to /resetprefix.
nick.prefix.player.other /suffix [player] $prefixname$ Changes prefix of OTHERS using nick credits
nick.suffix.admin /suffix [player] $suffixname$ Changes suffix of yourself or others without using credits. Also gives access to /resetsuffix without credits.
nick.suffix.player /suffix $suffixname$ Changes suffix of yourself using credits. Also gives access to /resetsuffix.
nick.suffix.player.other /suffix [player] $suffixname$ Changes suffix of OTHERS using nick credits
nick.credit /credit [player] $#$ give credits to players to nickname their own or other names
nick.translate /t translate command
nick.toggledisplay /toggledisplay command
nick.toggledisplay.other /toggledisplay [player] command
Check out my other plugin(s)! efCraftTickets http://dev.bukkit.org/bukkit-plugins/efcrafttickets/
WEprotect - WorldEdit Protection
http://dev.bukkit.org/bukkit-plugins/weprotect/
@RustyDagger
I'll take a look tonight and see if I spot something... I have one idea as to what the problem is. I've been busy at work the past couple weeks, so I haven't had any time to work on any plugins. Sadly making bukkit plugins is not my day job :P
I hope you dont mind but i found your issue. You have a && (checkIsOwner(player)))) after every admin permission node check and that Check is owner checks to see if the player is OP this means that You have to be OP & have the permission node to BYPASS using credits. Yes YES lets just give OP to all my ADMINS.
Should be
to be honest I don't see why you need the checkIsOwner when you can just use player.IsOP like you have else where in the code Does that not just return a Boolean just as your function does? The Above error is present on EVERY admin Permission node check.
As a side note nick.name should really be nick.name.admin to follow the structure of all the other commands and nick.name should give a player type access instead of using the Rename Node.
@Jameshobbs
@RustyDagger
Yep, seems like you have the same issue as me, and you're running another different permissions plugin than me.
Adding the dedicated /freenick command may be the easiest solution, if you have'nt found the cause to this permissions bug/problem?
@Jameshobbs
If you deop your self as an admin with the right permissions you STILL can't bypass using credits.
TBH Most plugins I use i can open plugin.yml and change permission nodes in there and they work. meaning the plugin is somehow reading the file IDK im no dev but that's just my experience.
I am using bpermissions if that helps narrow down the cause in any way. AND i am not using TagApi Because the idea of my skin changing does not apeal to me.. maybe once skins are linked to a players UUID and not their name then ill consider it.
@RustyDagger
Unfortunately I have not been able to reproduce the permissions issue that a few have been having. I am using bukkit's permission system i.e player.hasPermission("permission"), as for adding permissions into the plugin.yml, I have been holding off on adding details in there. It is not required to add permission information in the plugin.yml file, but it does have some handy features, so I'm hoping to add them there at a later date.
@Jameshobbs
any update on the permissions issue I'm holding off installing until its fixed its remotely useless to have a system you cant administrate.
Im Now a little confused as to what dody hackery you have going on in this plugin Because None of the permissions are even listed in the plugin.yml Im not sure if your aware that MOST plugins assign permissions to commands in the plugin.yml. this also allows you to create grouped permissions that have children so that server owners like my self can say give out a permission like name.admin and name.player and be done setting up with the recommended instal that you decided on ofc the smaller nodes are still there for those that want fine control.
@thernztrom
I think I might know what is wrong with permissions. I will check it out when I get home from work.
Also I might add the /freenick command. It would be easy enough to add. But first let me see if my hunch is correct.
@ThisUsernameIsMine
" I was able to give someone a nickname of a player who also was on the server when i changed the nickname (the other person had no nickname)"
So when you changed someone's name their name disappeared or did it just show is normal player name?
" related to above: When the player with the original name relogs, an additional character (number) appears in the TAB playerlist, but NOT in the chat or above the head."
Sounds like something extra character is being added by another plugin unrelated to my plugin, so I dont have access to that information for the chat above the head
"Using colors in nicknames messes up the formatting of /realname"
/realname I think is used in essentials. If you want it to fix chat you will need to add the reset color character at the end of your nicknames
@Jameshobbs
Other wize, would'nt it just be all easier if you added another command to do the "credit-free" name-changing. I dont want any credits on my server, just a certain group with permission to be able to do this.
Add like /freenick [player] <nick> with the following permission nodes:
- nick.freenick
- nick.freenick.others
@Jameshobbs
Using the latest version with Vault, I still cannot make myself change my nick without credits.
Giving myself these permissions results in a "Insufficent permissions for this command" msg:
-nick.help
- nick.name (which should be the permission to do this?)
--
However if I give myself these permissions, I'm meet with the msg "You must be given credits..":
- nick.help
- nick.name
- nick.rename
Is the documentation for the permissions right?
@Jameshobbs
Hopefully.. that would be super-awesome! :)
I also have Essentials(Chat) but it doesn't change the name above the player-head.
The devs of Essentials also don't want to make use of external modules (such as TagAPI) so i don't think they'll ever plan on doing this by themselves.. =/
important: I did some testing and i've noticed a couple of things.
- I was able to give someone a nickname of a player who also was on the server when i changed the nickname (the other person had no nickname)
- related to above: When the player with the original name relogs, an additional character (number) appears in the TAB playerlist, but NOT in the chat or above the head.
- Using colors in nicknames messes up the formatting of /realname
Suggestions:
- Make nicknames distinguishable from real names, by adding a (custom) prefix to it (Essentials has ~ as default but i changed it to + )
- Add (nickname)formatting to the /list command ;-)
Hopefully you appreciate my input, as i appreciate your plugin! :-)
@ThisUsernameIsMine
Sadly the only way to do that at the moment would be to use /toggledisplay <playername>
What I could do is make it so the name auto toggles on when the player logs in. I'll see if I can add that into my next version of the plugin.
Glad you like it :D
Is it possible to toggle displayname above head for all players at once?
Nice plugin btw :) +1
@DropItLow123123
What plugins are you using and what are the specs for your server RAM, Disk, CPU, and connection speed?
Personally, I have not had any lag using this plugin and the plugin only uses CPU cycles when a player leaves/joins and when a nick name is changed. Because of this I do not believe the plugin is causing the lag. My guess is if you are using TagAPI, that could be one of the causes.
I get so much lag when using this any reason for this?
@Jameshobbs
I never play without Vault :D So thats ok then. Thanks.
@yanniclord
Sadly it is out of my control regarding the steve skin. What we would need is support to change display name, but keep the skin. Unfortunately it appears minecraft/bukkit links the display name above your head with your skin, so there is not much I can do at this time.
I expect the new version to be up soon. I'll send another message to the reviewer to see what the delay is.
Edit: Looks like it has been approved. It is now up.
Edit Edit: because you are using group manager, the older version of the plugin would not work for prefixes and suffixes. The new version that uses vault will support it. You will need Vault.jar in your plugins though for it to work.
@Jameshobbs
Ok, im using Groupmanager, if you can, PM me to send me the .jar you are waiting approval for (only if you want to). So if my Skin Changes then, how can i apply a Skin to the Nickname i changed to? Since i dont want to be steve.
@yanniclord
It would help if you'd provide me more information, such as what permissions plugin your using. Prefixes are handled by a chat plugin, so you need some form of a chat plugin to display the prefixes.
Currently in the latest version available, only PermissionsEx will work with prefixes and suffixes. I released a new version, which uses Vault, so with that version all permissions plugins will work for prefixes and suffixes. I'm still awaiting approval from bukkit staff for that version to be available.
To display the name above your head you need to do /toggledisplay. Remember that your skin will then be changed.
@Jameshobbs
Ok it works when i disable Essentials to handle the nicknames, but then my prefix is gone, how i fix that then? Do you mind adding an option to enable prefixes from Essentials?
Edit: Also if i change nick, and disable Essentials completely, my name above my head still is my true name, even if i had TagAPI installed? What is this shit (sorry, nothing against you). Adding prefixes gives me an error, no name changes above heads, only in tablist, and doesnt work without disabling Essentials completely. :(