Basic Recipes | Advanced Recipes | Recipe Flags | Recipe Books | Name Index | Commands & Permissions

Basic Recipes

HOW TO MAKE A RECIPE FILE First go to /plugins/RecipeManager/recipes folder and create a file with the .txt extension. Then you can just open that with an text editor and start writing recipes. ABOUT RECIPE FILES You can have as many recipe files and recipes per file as you want, you can also create folders for organization. The text in recipe files can be any letter case and can have any amount of spaces, tabs and new lines. They also support diferent styles of comments: //, /* */ and # Also, < > are used to enclose required arguments and [ ] optional ones. Do not type <, >, [ or ] !, anything outside their bounds are constant characters that need to be used, anything inside are variables. ABOUT DEFINING ITEMS Item formats are usually 'material:data' and results are 'material:data:amount' - 'material' = name, id or alias (see 'name index.html' and 'aliases.yml') - (optional) 'data' = data name (from 'aliases.yml'), number or * for any data value (default) - (optional) 'amount' = number, default 1 Item definitions also support names, lore and enchantments. Full format is: <material>:<data>:<amount> ; name <name> ; lore <line> ; enchant <enchant> <level> Where lore and enchant can be repeated. And of course all meta definitions are optional and order does not matter (unlike material:data:amount). For more stuff that can be set using flags on items, see recipe flags.html. ABOUT MULTI-RESULTS Certain recipes support having multiple results. Only one result type can be crafted at one time, therefore each result has a set chance of success. Additionally you can set 'air' as result to make the recipe fail by that chance, which gives no result item but still decreases ingredients. Chances must be a total of 100%, if you do not define the chance for one or more items the chance will be evenly calculated for the remaining chance up to 100%. The options for this can be extended even more with flags, be sure to see the advanced recipes.html file after reading this one. ABOUT RECIPE NAMES Recipe names are use by recipe books. If you define a custom name it must be unique and between 3 and 32 characters long (18 recommended). The custom name will be displayed in the books if defined, otherwise it will use the result. In the 'books/*.yml' files the recipe names (custom or auto-generated) are used to add and sort recipes in the books. More about recipe books...

RECIPE SYNTAXES

CRAFT RECIPE - shaped workbench recipe

CRAFT [recipe name] <material:[data]> + [material:[data]] + [material:[data]] [material:[data]] + [material:[data]] + [material:[data]] [material:[data]] + [material:[data]] + [material:[data]] = [chance]% <material:[data]:[amount]> [...]
The ingredients are in the shape of the recipe grid, it will also work if horizontally mirroed. NOTE: The recipe is exacly the same if you place the ingredients reversed horizontally, it's how the game works. Number of ingredients is optional, you can specify only 1 or all 9 of them if you want. Specifying a square of 4 or smaller makes it work in player's inventory crafting. As for the result the 'chance%' part is optional and if defined then 'chance' must be a number between 0.0 and 100.0 (yes, accepts decimals) The '[...]' part means that you can repeat the previous statement, so you can define more than one result and the recipe will randomly pick one of the results. You can avoid defining the chance number or use *% even to allow it to be calculated. You can also add a chance of failure to the recipe by using fail, air or 0 as one of the results. Examples:
// this is just a comment by the way // a hoe craftable in player inventory craft wood + wood stick = wood_hoe // fragile bowl named recipe craft Bowl craft attempt stick + wood + stick air + stick = bowl // undefined chance, will be calculated = 25% fail // 'fail' is alias for 'air'.

COMBINE RECIPE - shapeless workbench recipe

COMBINE [recipe name] <material:[data]:[amount]> + [...] = [chance]% <material:[data]:[amount]> [...]
Unlike shaped recipe, this recipe's ingredients can be placed in any order anywhere on the grid. You can specify up to 9 items added up. This recipe also supports multiple results just like shaped recipe, read above for information. Examples:
// 3 sulphur + 2 sand = 2 TNT combine sulphur:*:3 + sand + sand = TNT:0:2 // smash 2 diamonds and pray for something good combine Smash 2 diamonds and pray diamond + diamond = 0.1% diamond:0:32 = coal:0:4 // let it calculate the chance evenly for this and the next two = iron_ingot = gold_ingot = 75% fail

SMELT RECIPE - furnace smelting recipe

SMELT [recipe name] <material> % [time] & [material:[data]] = [chance]% <material:[data]:[amount]> // one result max!
The first '<material>' is the ingredient, it can't have data values because the game doesn't support it but you can use @ingredientcondition flag. (optional) '% [time]' can be the time to smelt, 'time' should be a 'instant', a float number or a range of float numbers separated by a dash. (optional) '& [material:[data]]' can be an item to act as the ONLY fuel for this recipe (no need to have a fuel recipe for the item!) And '= [chance]% <material:[data]:[amount]>' is the result with optional success chance but this recipe type only supports 1 result! Examples:
// smelt gold_ingot to ore smelt gold_ingot = gold_ore // glowstone and water bottle as fuel makes an exp bottle smelt Exp Bottle Alchemy glowstone % 20.5-30 // random cook time between 20.5 and 30 seconds & potion:water // fuel, 'water' data value from 'aliases.yml' = 25% exp_bottle // 25% chance to get the result, rest 75% will result in nothing

FUEL RECIPE - furnace fuel

FUEL [recipe name] <material:data> % <time> ...
Adds a fuel with the specified burn time. 'time' is required and can be a float number or a range of float numbers separated by a dash. The '...' part means you can specify more than one item, they are all added just like individual fuel recipes. Example:
FUEL sulphur % 0.75 // see 'advanced recipes.html' how to make this EXPLODE ! lantern % 20 // 'lantern' is alias for 'jack_o_lantern'

For more customization options and examples see advanced recipes.html. If you don't get these instructions you can ask people in the plugin's dev.bukkit.org page to make a recipe for you.