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 a 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 different 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 mirrored.
- NOTE: The recipe is exactly 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>:[data] % [time]
& [material:[data]]
= [chance]% <material:[data]:[amount]>
// one result max!
- The first '<material>:[data]' is the ingredient with optional data.
- (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'
BREW RECIPE - brewing stand recipes
This is an experimental feature. Expect bugs and frequent changes.
BREW [recipe name]
<material:[data]:[amount]> // ingredient
<material:[data]> // potion
= [chance]% <material:[data]:[amount]>
[...]
- The first '<material>:[data]' is the ingredient with optional data and amount.
- The second '<material>:[data]' is the potion with optional data.
- And '= [chance]% <material:[data]:[amount]>' is the result with optional success chance.
- Note: Currently requires a vanilla brewing recipe, but can have customized items.
Example:
brew
nether_warts // aliased in item aliases to bukkit's nether_stalk
potion:water // water aliased in item aliases
= stone
@name <red>Test Stone. Please Ignore
@ingredientcondition nether_warts | name &cTest
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.