[1.9-1.16] Custom Recipes and Crafting (CraftEnhance)
There's also a discord now! https://discord.gg/8xYEbft
More detailed info is written in the github wiki, so make sure to check that out too.
And also, Donations are really appreciated! I've put alot of my spare time into developing this opensource plugin. So maybe consider buying me a nice cup of coffee! :)
CraftEnhance is the first plugin that allows crafting with all custom items. It's very unique. Try and see how awesome it is! It's compatible with basically every bukkit or spigot version.
Create recipes with all custom items
This means you can add recipes with enchantments, custom names, a durability, potions or anything you can think of that exists in the game.
Full GUI support.
Editing recipes, creating recipes, viewing recipes and ordering the recipes in the viewer GUI are all possible through inventory GUIs.
Middle click to edit.
Opening the editor for a recipe is not done through a command, but done through a simple middlemouseclick on a recipe in the recipe viewer. This does require a permission.
Set permissions for a recipe.
In order to completely let server owners be owners of their server, permissions for the custom recipes exist. People that don't have the permission for a custom recipe, can't craft or see it. The 'seeing' part can be configured.
Edit items in-game.
To make cool recipes an item editor is needed. This item editor allows users to set colored lore, set colored names, set the durability, add enchantments, add itemflags or even set the localizedname of items. And for the record: itemflags are the things that allow you to hide enchantments or attributes on items!
Full tab completion support!
I personally think this is an obligated feature to have in the 1.13 update of Minecraft. No more remembering all commands, just the first few letters of a few basic ones.
Creating recipes is easy and done through GUI's. Here's a quick video where everything is explained.
Making the custom items for your precious recipes is also really easy to do as explained in this video.
SoulStriker has also kindly made a showcase for this plugin:
These are all the command you need when using this plugin. If something is between [these brackets], it means it's an optional part of the command. If something is between (these backets) it's not optional.
Just use autocompletion on this command! Oh and by the way, it's short for CraftEnHance.
View the available custom recipes in a GUI. You can also use the /ceh viewer command if you're really feeling like typing this longer command.
/ceh createrecipe [key perms]
Create a new custom recipe with a generated key by default. This will open a recipe editor GUI. You can leave the perms empty, but if you wanna set a permission, you also gotta set a key!
/ceh specs (key)
Shows the specifications of the recipe with the specified key. You can find the key of a recipe by middle clicking it in the recipe viewer to open the editor for it where the key is displayed.
/ceh setpermission (key) (permission)
Set the permission of the recipe with the specified key to the specified permission. Again, you can find the key of a recipe in the editor.
/ceh changekey (oldkey) (newkey)
Simply changes the key of a recipe to "newkey"!
Cleans the items.yml file meaning that it'll remove all saved unused items from the file. I wouldn't recommend to use this because it doesn't affect performance of your server much or at all.
This is the basic command for editing items. Please use tab completion on this.
/edititem name [name]
Edit the name of the item in your main hand. Make sure that you use all the colors you want!
/edititem durability [1-100]
Set the durability of the item in your main hand to [1-100]% of it's max durability.
/edititem enchant [enchant] [lvl] [enchant] [lvl][..]
Set your specified enchantments to your held item. It removes all enchants and then adds the specified ones.
/edititem itemflag [itemflag] [itemflag] [..]
Toggle the specified itemflags on your held item. This are the available itemflags:
Setting to show/hide Attributes like Damage
Setting to show/hide what the ItemStack can break/destroy
Setting to show/hide enchants
Setting to show/hide where this ItemStack can be build/placed on
Setting to show/hide potion effects on this ItemStack
Setting to show/hide the unbreakable State
/edititem lore [line_number] [lore]
Set the specified line of the lore of your held item to be the specified tekst. The tekst section can be left empty if an empty line needs to be added.
The permissions are configurable!
However, these are the default permissions. You can also look these up in the config.yml file.
/ceh createrecipe, /ceh cleanitemfile, /ceh orderrecipes, /ceh setpermission, /ceh specs, /ceh changekey. This is also the permission required to middleclick recipes to open the editor.
/ceh viewer, /recipes.
All commands that start with /edititem.
Alongside the config.yml, 3 other files will be created: guitemplates.yml, recipes.yml and items.yml.
You can fully customize all the gui's that you see using this file. I think they're faily self-explanatory given the preset files, so I'll only go over the basics. "fill-space" is a range of slot indexes where items can get filled, like the recipes in the recipes viewer. "template" specifies the items that are put into the inventory. Make sure that those don't overlap with fill-space. In template the buttons are also made.
"buttons" specifies where the buttons are located, where the value is the type of the button. Please refer to the preset file to see your options.
You can manually make or edit all your recipes in here. The recipes use item keys of items in the items.yml file. However, because all recipes can be created through gui's, I'll not go over this more in-depth.
Items are stored here with a unique key. This is also managed by the plugin, so there's no real need to touch this.
Some of the messages and permissions are stored in here. One of the important settings is whether you want people to see a recipe that they don't have permissions to.