Item Renamer
Tired of blocks called Sand? Want your enderpearls to say Grenade instead? Want to add extra lines of text below item names? Do all that and more with ItemRenamer. You can create your own custom item names for all items in your server, but still let users rename with an anvil. You can create your very own language pack!
Installation
- Download ProtocolLib and put it in your plugins folder
- Place ItemRenamer.jar in your plugins folder, on server start the configuration will be generated
- Test out the example config by setting your world to run the example pack, to see how it works
- Go crazy and make your own language pack
Developer Build
Development builds of this project can be acquired at the provided continuous integration server.
These builds have not been approved by the BukkitDev staff. Use them at your own risk.
Jenkins server
For developers
ItemRenamer 2.0.0 contains a fully-fledged API. Click here for more information.
Configuration
Default configuration can be found here.
Config | Default | Ranges | Description |
---|---|---|---|
autoupdate | true | [true/false] | Will remind you when a new version is available |
creativedisable | true | [true/false] | Will disable ItemRenamer while you're in creative mode |
worlds.<worldname> | Pack name | Will set this world to run the pack you put here | |
packs.<packname>.<itemid>.<data>.name | Any string | Will rename itemid:data to your string | |
packs.<packname>.<itemid>.all.name | Any string | Will rename all itemid data values to your string | |
packs.<packname>.<itemid>.other.name | Any string | Will rename all unset itemid data values to your string | |
packs.<packname>.<itemid>.<data>.name | Any string | Will add your name to itemid:data | |
packs.<packname>.<itemid>.<data>.lore | Any string | Will add your lore list to itemid:data | |
packs.<packname>.<itemid>.<first>-<last>.name | Any string | Will add your name to every itemid with a data value of the give range. | |
packs.<packname>.<itemid>.<first>-<last>.lore | Any string | Will add your lore list to every itemid with a data value of the give range. | |
packs.<packname>.<itemid>.all.lore | Any string | Will add your lore list to all itemid data values | |
packs.<packname>.<itemid>.other.lore | Any string | Will add your lore list to all unset itemid data values |
- Note: place lore in [square brackets] OR on seperate lines starting with a dash -
Player-specific packs
If you want to customize the renamer pack for a specific group of players, regardless of world, you may use the player info itempack along with the desired renamer pack. This feature requires Vault and a permission/chat plugins that supports player info.
This can be done as follows with PermissionEx:
users: Player: group: - Members options: itempack: none
Usage
It's possible to configure ItemRenamer without ever having to touch the configuration file or deal with the more complicated (but powerful) commands. Simply select an item you want to rename, and type the following:
/renamer select hand
That will select your current item's ID and durability (except for armor and tools), along with any enchantments, potion/fireworks effect, etc. Then use set name and add lore to rename the item and every other like it on the server:
/renamer set name Nameless Tool /renamer add lore Unknown Artifact
This will automatically be applied to the current world you're in. Use "renamer set pack" to apply it to a different item pack, or teleport to the world with the item pack you want to rename.
Commands
- Change whether or not to automatically check for updates:
/renamer set setting autoupdate [true|false] - Get what item pack has been assigned to a particular world:
/renamer get world [world_name] - Assign an item pack to the given world:
/renamer set world [world_name] [pack_name] - Add a new item pack:
/renamer add pack [pack_name] - Delete an item pack:
/renamer delete pack [pack_name] - Select a item pack to use for all subsequent commands:
/renamer select pack [pack_name] - Rename all items similar to the one the player currently is holding:
/renamer select hand - Deselect the current item pack, going back to manually typing it:
/renamer select none - Get the rename rule for a particular item:
/renamer get item [pack_name] [itemID] [all|other|0-32767] - Set the name of an item(s) matching a single or multiple damage values:
/renamer set name [pack_name] [itemID] [all|other|0-32767] [0-32767] [name (with spaces)] - Add a new lore line to an item(s) matching a single or multiple damage values:
/renamer add lore [pack_name] [itemID] [all|other|0-32767] [0-32767] [lore (with spaces)] - Remove all the existing lores for a particular set of items:
/renamer delete lore [pack_name] [itemID] [all|other|0-32767] [0-32767] - Add a new enchantment to a set of items: /renamer add enchantment [pack_name] [itemID] [all|other|0-32767] [0-32767] [enchantment_name] [level]
- Remove an existing enchantment for a set of items: /renamer remove enchantment [pack_name] [itemID] [all|other|0-32767] [0-32767] [enchantment_name] [level]
- Reload configuration:
/renamer reload - Save configuration now instead of during server shutdown:
/renamer save
All commands default to OP, but also have permissions.
Modify enchantments
It is also possible to add or remove existing enchantments to any given item. The easiest method is to mark the item you want to modify in your hotbar, and type the following command:
/renamer select hand /renamer add enchantment NO_ATTRIBUTES 1
Every vanilla enchantment is supported:
- Bow: POWER, PUNCH, INFINITY, FLAME
- Weapon: SHARPNESS, BANE_OF_ARTHROPODS, SMITE, FIRE_ASPECT, KNOCKBACK, LOOTING, UNBREAKING
- Tool: FORTUNE, EFFICIENCY, UNBREAKING, SILK_TOUCH
- Armor: RESPIRATION, PROTECTION, BLAST_PROTECTION, FEATHER_FALLING, FIRE_PROTECTION, PROJECTILE_PROTECTION, THORNS, AQUA_AFFINITY
There's also three custom enchantments:
- GLOW 1: Preserve the enchantment glow with no visible enchantment name
- NO_ATTRIBUTES 1: Remove all the attribute lines introduced in 1.6.1 and 1.6.2.
- NO_DURABILITY 0: Remove any visible durability on the item. Switch out 0 with any other number to force a durability value.
Permissions
itemrenamer.config.get — read-only access to configs
itemrenamer.config.set — can edit configs or reload from disk
itemrenamer.update — gets a notification when update is ready, and can use update command
Notes
- Join us on irc at: irc://esper.net/ItemRenamer
- Items in the creative menu are only client-side, and thus cannot be renamed by this plugin. But creative players will see their items renamed in the main inventory bar.
- This plugin doesn't actually edit any items, they just appear renamed .. if you were to suddenly stop using this plugin all items should go back to normal
- If a player renames an item in an anvil, that name should take precedence over the ItemRenamer one
- When setting lore in game make sure to wrap the text in square brackets, each line separated by a comma, and enclosed in quotes if it contains special characters
Sourcecode
Access the source code via GitHub:
https://github.com/meiskam/ItemRenamer
@Maldorian4
The default configuration will only modify the standard world. If you want this to also apply in the nether/end or a custom world (Multiworld, etc.), you'll have to manually add them to the "worlds" section:
@aadnk
Aight. Well, fixed that but now I reload it all and the items dont show up renamed when I spawn them. Help?
@Maldorian4
That's due to a bug in the current version. I'll probably upload a fixed version when I'm back from vacation.
In the meantime, use the development version on my Jenkins server. Or download the default configuration and place it into plugins/ItemRenamer/config.yml.
How exactly do we make a config file for this? There aren't any folders. Are we supposed to give permissions or something?
@aadnk worked well. Thanks. Used: /pex group {group} set itempack {pack}
@TheElm
Not in the main configuration, unfortunately, but it is possible with a decent permission plugin. Simply set the permission node "itempack" to the group of players you want to modify:
@Mistermastermine
It's very simple. Hold F3 and press H to make Minecraft display item ID and damage value. Then you just find a potion (type, level and duration) you want to modify, for instance Potion of Fire resist, and enter the item ID (373) and damage value you see:
Well it works well enough just changing the 403 for getting their main title, it gets them all.
I am having trouble with the bottles though, I did water, but could you show me how to do the other ones? It seems to break when I try them.
Is it possible to use an asterisk '*' instead of a worldname? I'm constantly making new worlds and deleting old un-needed ones for my PvP server and I would rather the packs just be in all worlds.
EDIT: After testing an asterisk, it didn't work. Is there any way to do 'all' worlds?
@jmartin657
Did you try it in survival mode?
@Mistermastermine
Unfortunately, the current system doesn't allow you to distinguish items based on enchantments.
I may put it on my todo-list, but it would be a lot of work to support.
@Mistermastermine
Havent been able to get it to work either -_- and my world name is the default "world" so you would think the default config would work. I even removed ALL plugins to see if there was a conflict somewhere... still doesnt work
Mainly it deals with the enchanted books, my understanding is that their ID is handled deferentially. The best examples to compare the deferences would be 373, a Water Bottle and 403, an Enchanted Book Adding the:16 to water makes the Awkward Potion, but there is no data to make an Enchanted Book specific to say like smite V, which in turn I would name smack 5 :) or something.
Are these id's available?
@Mistermastermine
Ah, right. Yeah, I can add a note/remark about that. It's basically because the whole menu is never transmitted from the server, and created solely on the client side.
@Mistermastermine
NBT list?
If you're talking about the item IDs, they're all built-in and accessible in the Bukkit API, so that's not a problem.
I will bug you one more time, is this set up to handle the NBT List, and if so do you know their id numbers?
OK thanks, I had done all that but I didn't understand that it does not change the name until you pull it down to the bar. Working great, I thank you very much :)
@Mistermastermine
If you world is called "world", the default configuration file should change a whole bunch of things, including the name of logs.
To set the default item pack in a particular world, set it in the "words" section:
Installation
Download ProtocolLib and put it in your plugins folder Place ItemRenamer.jar in your plugins folder, on server start the configuration will be generated Test out the example config by setting your world to run the example pack, to see how it works Go crazy and make your own language pack
It now has a config, but how do you load it? I have tried every combo I can think of, nothing works, could you post an example of the line to set your world to run the example pack /ItemRenamer ???? Sorry but I can't seem to hit it.
@Mistermastermine
Looks like there's a bug causing the config-file to never regenerate when it's missing. Try this version instead.
Yeah, the tutorial might need some work. But modifying the configuration should be fairly self-evident once you get a hand on it. :)
You can also get the default configuration here.
hmmmm, don't seem to work at all, It never made a config file that I can find, and the tutorial seem to need be a little clearer as to what to do.
@aadnk
For example i could give Mods Tooltips on Wand Items :)
@GlabbichRulz
No, sorry. That setting is all client-side. But all you need to do, is give those particular users a different permission node, as explained here.