RecipeManager 2

Complex recipes made easy !


NOTE: I will refer to some .html files in here, those files can be found in your /plugins/RecipeManager/ folder after you loaded the plugin the first time. The html files will also be updated automatically on new versions.

  • Add new recipes:
    • Shaped or shapeless recipes with optionally multiple results;
    • Furnace recipes with optional custom cook time and optional special fuel;
    • Fuel recipes with custom burning time or even random time from speciifed range.
    • See 'basic recipes.html' for more info.
  • Making recipes more special with flags, featured flags:
    • @permission to limit a recipe (or result) to specific permission node(s);
    • @remove, @restrict and @overwrite to remove/restrict/overwrite existing recipes, including Minecraft recipes.
    • @ingredientcondition to make extra requirements from ingredients like enchantments, ranged data values, stack amounts, etc;
    • @keepitem to keep an ingredient from using up and optionally damaging it in the process;
    • @modmoney/@reqmoney and their experience and level counterparts to require/give/take money/exp/level from crafter;
    • @cooldown to limit the usage of the recipe;
    • And a lot more, see 'recipe flags.html' for all of them including documentation.
  • Flags can also be added to results to make them more special, some featured result flags:
    • @cloneingredient to clone an ingredient's features over to the result, like data value, amount, enchantments, etc;
    • @itemname and @itemlore to edit a result's display name and description with colors;
    • @potionitem and @fireworkitem to design your custom potions and fireworks;
    • @getrecipebook to get a RecipeBook as result, ones generated by this plugin with recipes in them;
    • And a lot more, see 'recipe flags.html' for all of them including documentation.
  • Flexible recipe files to add your recipes in:
    • You can use any kind of spacing and letter casing you want in recipe files, also supports comments;
    • Design your file names and folder structure as you want in the 'recipes' folder;
  • Auto-generated recipe books with high customization:
    • Pick which recipes to be added and to what volume;
    • Re-arrange them as you like;
    • Books that players have are automatically updated when edited by admin and reloaded;
    • For more information see 'recipe books.yml' file.
  • Other features:
    • Local documentation files for ease, the .html files that will be generated the first time you run the plugin;
    • Customizable settings, messages and item/data/enchant aliases in their respective YML files;
    • Supports Vault for economy and permission groups;
    • API for plugin developers, custom events and utility methods for most features;
    • MCStats / Metrics:

Installing or updating

  1. Download the latest version of the plugin
  2. Place the RecipeManager.jar file in the plugins folder and start/restart the server
  3. Now the plugins/RecipeManager/ folder is created which contains configuration files (.yml) and documentation files (.html)

NOTE If you're upgrading from 1.x versions of RecipeManager, please first delete all files and folders except recipes folder from your RecipeManager folder before installing version 2, this will keep your folder clean because alot of files have been renamed and this way will be less confusing.

Also some recipes or flags might not work like in 1.x versions, please re-test your recipes.

Using the plugin

  • Run the plugin at least once to allow the .html files to be generated then start with 'basic recipes.html'.
  • Plugin settings can be configured in "plugins/RecipeManager/config.yml"
  • When you're done editing, type rmreload in server console to reload everything without a server restart.
  • Commands and permissions can be found in 'commands & permissions.html' file.

Tutorials, example recipes, tips and tricks

User-contributed resources in the Resources forum section.


In the jar file, auto-extracted when first ran to plugins/RecipeManager/changelog.txt and on GitHub:

Having problems, found bugs ?

If you have any issues or found some bugs, please create a ticket. But first you should check other tickets if the issue has been already reported. Also check the latest file's known caveats (under changelog) before posting a ticket.

Note: I don't support any previous versions other than the absolute latest, so if you used a older version, update and test again :P

Source code

Source code is on github, feel free to look at it, improve on it and provide feedback: If you need, you can use code from my project but please give credits.

Support project

If you feel I deserve:

Thanks for your support !

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of haveric haveric Dec 21, 2014 at 04:47 UTC - 0 likes

    @xH3LLRAIZ3Rx: Go

    I've found a solution that will make the head update correctly in the inventory and crafting result, although it is a bit strange as I have to update a block in order to make it work. Right now, I am updating the block at y = 0 at the player's x,z coordinates. The block is assumed to be bedrock there and since it reverts it immediately, there shouldn't be an issue with temporarily replacing it.

    This will be working in the next version.

  • Avatar of haveric haveric Dec 21, 2014 at 03:31 UTC - 0 likes

    @crysis992: Go

    I am unable to replicate your issue in a couple different versions. Are you able to replicate this with ONLY RecipeManager installed?

    @xH3LLRAIZ3Rx: Go

    This is a strange issue, but apparently if you place the skull, it will update to the correct skin.

  • Avatar of xH3LLRAIZ3Rx xH3LLRAIZ3Rx Dec 21, 2014 at 01:46 UTC - 0 likes

    Why does this recipe not give my head?

    CRAFT Skull of xH3LLRAIZ3Rx
    265 + 265 + 265
    375 + 397:1 + 265
    265 + 265 + 265
    = 397:3:1
    @skullowner xH3LLRAIZ3Rx
    @ingredientCondition 265 | name &b&lReinforced Alloy Ingot | failmsg false

  • Avatar of haveric haveric Dec 19, 2014 at 15:52 UTC - 0 likes

    @crysis992: Go

    Thanks, I'll take a look tonight and see if I can replicate your issue.

  • Avatar of crysis992 crysis992 Dec 19, 2014 at 11:26 UTC - 0 likes

    1. I added this recipe: (Tried to decompose gold/iron and diamondsword)
    2. /rmreload
    3. Wasn't able to combine Tools/Weapons/Bows to repair them (workbench)

    4. remove the recipe from the folder
    5. /rmreload
    6. Was still unable to repair anything (workbench) till server restart.

  • Avatar of haveric haveric Dec 19, 2014 at 07:29 UTC - 0 likes

    @crysis992: Go

    I'm unable to replicate this issue. Are you getting any errors in the console? Can you share your recipe files? Does this happen with only RecipeManager installed?

  • Avatar of crysis992 crysis992 Dec 18, 2014 at 21:33 UTC - 0 likes

    On Spigot 1.8 I'm unable to combine 2 weapons/tools/bows to restore durability (repair), even without any custom crafting recipes.
    Special recipes/repair is set to true.

    A fix/solution would be nice.

  • Avatar of realmpixel realmpixel Dec 16, 2014 at 11:08 UTC - 0 likes


  • Avatar of haveric haveric Dec 15, 2014 at 23:30 UTC - 0 likes

    @CommodoreAlpha: Go

    I think the best option currently is to use a data range with the ingredientcondition flag. I don't believe there is anything built in currently to determine the max vanilla data value though, but that is something that can probably be added easily enough.

    I think the following recipe should work, but I'm unable to test it right now.

    stone_pickaxe + diamond:*:3
    = diamond_pickaxe
    @ingredientcondition stone_pickaxe | data 0-132 // I think it's 132 uses, so this may be off by one

    Let me know if this works or not, and I'll look into how easy it is to add a vanilla data check (and maybe a few other options) with the ingredientcondition flag.

  • Avatar of CommodoreAlpha CommodoreAlpha Dec 15, 2014 at 23:07 UTC - 0 likes

    Is there a shorthand method for specifying that a tool in a recipe should not be past its durability limit (or is this support already built-in)?

    For example, if I specify a "STONE_PICKAXE" to be used in a recipe, this will accept any damage value of a STONE_PICKAXE, from clean to almost broken. But does "any" also extend to "beyond broken"? (e.g. a stone pickaxe with a metadata of 10000)

    Server Information: ""

    Antarctic Special Operations, home of the buggiest (modded) server ever! With the most incompetent admin (me) also! Currently unplayable on survival due to construction accidents involving but not limited to a rebar in the face. I'll consider opening for Beta testing as soon as I overcome my incompetence. <3


Date created
Oct 11, 2011
Last update
Nov 21, 2014
Development stage
  • enUS
GNU Lesser General Public License version 3 (LGPLv3)
Curse link
Recent files
  • R: v2.2.3 for CB 1.7.9-R0.2 Nov 21, 2014
  • R: v2.2.2 for CB 1.7.9-R0.2 Nov 14, 2014
  • R: v2.2.1 for CB 1.7.9-R0.2 Nov 05, 2014
  • R: v2.2 for CB 1.7.9-R0.2 Nov 02, 2014
  • R: v2.1.1 for CB 1.7.9-R0.2 Sep 05, 2014



Optional dependency