[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.
/ceh
Just use autocompletion on this command! Oh and by the way, it's short for CraftEnHance.
/recipes
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 reload
Reload everything!
/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"!
/ceh cleanitemfile
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.
/edititem
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:
HIDE_ATTRIBUTES |
Setting to show/hide Attributes like Damage
|
---|---|
HIDE_DESTROYS |
Setting to show/hide what the ItemStack can break/destroy
|
HIDE_ENCHANTS |
Setting to show/hide enchants
|
HIDE_PLACED_ON |
Setting to show/hide where this ItemStack can be build/placed on
|
HIDE_POTION_EFFECTS |
Setting to show/hide potion effects on this ItemStack
|
HIDE_UNBREAKABLE |
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.
craftenhance.edit
/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.
craftenhance.view
/ceh viewer, /recipes.
craftenhance.edititems
All commands that start with /edititem.
Alongside the config.yml, 3 other files will be created: guitemplates.yml, recipes.yml and items.yml.
guitemplates.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.
recipes.yml
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.yml
Items are stored here with a unique key. This is also managed by the plugin, so there's no real need to touch this.
config.yml
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.
In reply to brickdude300:
You could set a permission to make the recipes non-viewable (assuming that only-show-available is set to true in the config). I hope that somewhat helps.
I think that for your situation a fork of the craftenhance plugin would be a best option, but that would require you to code a little bit.
Help, When I installed the plugin it worked fine, but after restarting the server the plugin didn't initiate and I reinstalled the plugin but when I do some recipe and restart it fails again on initiate the plugin and when I put /ceh createrecipe it says "An internal error occurred while attempting to perform this command"
Here is the pastebin of the registry of the initiation of the server and the error.
Im using the Spigot/Bukkit version of the Aternos server and the CraftEnhance-2.3.3 version in the 1.12.2.
https://pastebin.com/CNGsADAn
All my recipes stop working after server restart. They still remain in the viewer but are unable to be crafted. Even if I reinstall the plugin and remake the recipes this still occurs.
In reply to thesexyllamaftw:
Yeah that's what's been happening to me.
I installed this plugin on my server, and for a few days it worked fine, but eventually stopped working completely. When I tried any of the commands it just said that "an internal error has occurred while trying to perform this command"
The only way I could fix it was to reinstall the plugin. But that also means re-entering all of the custom recipes. Any ideas of what might be going on?
In reply to yellowhawktheobserver:
I would like to resolve this issue. The entire trace of the error should be printed in the console. I can't tell you what's going wrong without this trace. So if you could look in your console, you'd help me out alot with bugfixing the plugin.
Also, reinstalling would be possible if you simply copy the recipes.yml and items.yml files and save them somewhere!
In reply to DutchJellydev:
I can show you the console, the server is on mcprohosting so i could maybe give you access to the console from there
I added this plugin on my minehut server. I can do everything that it should allow me to except using middle mouse to edit recipes in the viewer. So basically I can't edit recipes. Any fixes?
In reply to JWong42O:
You need to make sure that you have the "craftenhance.edit" permission, and that your 'pick a block' key in your minecraft settings is your middle click button. I hope that helps.
hi, I've done setpermission to ceh.op for a recipe as shown in your video, but I would like to revert it back to the default perm, which all people can craft. What should I type?
In reply to benip2012:
You can just leave the permission empty to set no permission. Also you could just remove the permission in the recipes.yml file.
Heyo. So I wanted a little help with the script. I don't know how to allow players to view the recipes. Can you please tell me what should I do in order to do so? I would love a detailed explanation please due to my lack of knowledge in these kinds of things.
In reply to minecrafterscr:
The permissions that your players need is the "craftenhance.view" permission. To give them a permission you could use some other plugin, or just edit the permissions.yml file that's in your server folder. The second option is easier to setup.
So here's an example of a permissions.yml file that'd give all players the "craftenhance.view" permission by default:
I hope that helps. The "someotherpermission" is where you'd put other permissions you would want to give to your players, like a permission to access a specific recipe.
In reply to DutchJellydev:
Excuse me, whenever I installed a plugin for the permission the server couldnt start and it crashed. Also I dont have a permission.yml file.Do I have to edit the example you told me or should it remain the same? I use aternos.me
In reply to minecrafterscr:
If you're using bukkit or spigot you should have some permissions.yml file in your server folder! I don't know why your server crashes when using permission plugins.
Hey so I am having a problem. So the key in minecraft that works with the middle mouse button is bound to the "0" key for me because my middle mouse button doesn't work at all. And whenever I click it on the item it just brings up a recipe viewer that views that specific recipe and it won't let me edit it.
In reply to Jaxonx101:
I think you can just change the pick block button and click on the recipe with that button to edit the recipes.
Hey, love your plugin. Is it possible to implement stack-able items in recipes? I'm trying to put multiple of an item for a recipe. For example:
1xGrass|1xGrass|1xGrass
------------------------------------
1xGrass|1xGrass|1xGrass
------------------------------------
1xGrass|1xGrass|64xdiamonds
Is this 1.15 compatible?
Is it possible to make this plugin work for very old versions like 1.5?