Cookbook
Cookbook 1.2
A plugin to customize the recipes on your server to your liking. Currently it only allows to set recipes in the recipes.cb config file, but an in-game recipe creator is planned as well as recipe-based permissions.
Recipes are read from recipes.cb. The format is pretty intuitive; it is most easily explained by example.
# The # symbol indicates that the rest of the line is a comment @Shaped dirt dirt # An up to 3x3 grid of the ingredients, with air for empty slots. 0 3 # ingredients can be specified by ID or name -> 2x IRON_INGOT # The format of the result is the same for all recipe types @Smelt Dirt -> 3x Wheat @Shapeless Apple, Bowl -> 1 Water-bucket # The x is optional @Smelt Redstone -> 6 ink-sack/3 # You can specify data-values anywhere except on smelting input @Smelt Bow -> 1 Bow ARROW_INFINITE=1 # You can add enchantments or other metadata like this.
For more details, see Recipe Format.
Configuration
The following keys are used from the config.yml in the Cookbook folder
- startup - Specifies how Cookbook should behave on startup. Valid values are "clear" (remove all vanilla recipes before adding the ones from recipes.cb), "reset" (reset to vanilla recipes before adding your custom recipes), and "compound" (just add your recipes). You could use this to suppress recipes from other plugins, or to completely redo the recipes Minecraft offers. Note that some vanilla recipes, such as fireworks, dyed leather armour, map copying, map zooming, and book copying, are impossible to reimplement using Cookbook, so consider this before deciding to use "clear".
- fix.soup-bowl - If true, Cookbook will give back the bowl if you use mushroom soup in a recipe.
- fix.glass-bottle - If true, Cookbook will give back the bottle if you use a potion in a recipe. Note that, if you set this to true and create recipes where potions are used as ingredients to craft other potions, you will get a free glass bottle each time a potion is crafted from a potion. So don't set it to true if you want recipes of that type.
- allow-high-enchants - If true, Cookbook will allow enchantments of higher than normal levels.
- allow-wrong-enchants - If true, Cookbook will allow enchantments on items that they don't normally apply to.
- generate-defaults-cb - If true, Cookbook will generate a defaults.cb before adding any recipes. After doing so, this flag will be set to false. Note that, due to Bukkit quirks, a few recipes in the resulting defaults.cb won't be accurate; generally the complicated things involving maps, leather armour, books, or fireworks. However, these recipes can't be replicated with Cookbook's capability anyway. Note also that if other plugins add custom recipes, these recipes may appear in the defaults.cb if they loaded before Cookbook.
List of item/block names || List of enchantment names
Note: This is not the original Cookbook by fullwall and is not even based on his code; it has been rewritten from scratch, but I liked the name and, since his has been inactive for a long time, decided to recycle it. If there is enough demand I may write a converter to convert fullwall's Cookbook format to my Cookbook format.
It shouldn't assume any damage when left unspecified. Are you certain it does this? You should need to specify /-1 damage for it to allow any damage; if this is not the case, it's a bug.
Empty buckets should be left behind by default if full ones are used in a crafting recipe.
This is awsome! BTW, it assumes any damage when left unspecified.
Can I make a recipe that uses buckets of water and lava that leaves empty buckets in the crafting grid? I really want an obsidian recipe that doesn't eat my buckets.
You have the name wrong. See the list of names here. And for any damage, just use -1.
So, for your example, you'd want CHAINMAIL_CHESTPLATE/-1.
When I use "CHAIN_CHESTPLATE" it doesnt work. What should that be? And does it assume any item damage is allowed? (making repair/smelt recipe)
Currently the only way is /reload, which should force Cookbook to reload them (it even clears all registered recipes before re-adding them). I'll likely add a command such as you describe eventually, though.
How do we reload the recipes in game or from console?
I tried:
/cookbook reload /cb reload
neither worked. Is this a possibility?
@Celtic_Minstrel
ok thanks
@astinax
Yes, damage is given as a slash (/) followed by the number. You can't specify damage greater than 127 at the moment, though. This is a Bukkit bug that I can't do much about without greatly uglifying my code. You can however specify -1 damage to have it match any damage (but if you use that in the result you'll get an infinite stack).
Can I make recipes for colored wools or other items with damage ?
Never mind I guess it is...
Is it Spout compatible?
Looks good :)
where are permission nodes saays i dont have permission in game when i right click a crafting able and etc.
@alfskan
I won't be supporting Permissions 3, sorry. You'll need to switch to something like PermissionsEx to take advantage of permissions in this plugin.
@bluehasia
No; I may add the ability to import files from the old Cookbook format and from the CustomCrafting format, but that's not high priority.
@Mysteana
As shown in the example smelting recipe, data values are specified by a slash followed by a number. Using a colon is not currently supported but would be trivial to add.
@Celtic_Minstrel It's completely your decision if you want to do add in support for bucket consuming/non-consuming recipes. If it requires too much of a hack job, don't worry about it but it would be nice to have in the options it opens up. Also, how do you handle damage/data values? Do you use the normal itemid:data notation?
@alfskan Personally, I don't think supporting Permissions 3.x is a good idea. The plug-in itself has been abandoned and Nijikokun has posted a message to developers to not support it any more and migrate towards a Superperms based system.
so does recipe creator still work with this if i export as a cookbook file?
" recipe-based permissions "
I CAN'T WAIT !! and please please please support permissions 3.x!
@Mysteana
It would be slightly fiddly since Minecraft tracks that property per item type, but it should be possible to configure on a per-recipe basis by changing the setting just before the recipe is crafted. I'll try that and see if it works. Note though that it'll currently require Spout for that to work (this will never require the Spout client mod though, only the server plugin, though their will be some tiny, aesthetic bonuses to having the client mod).
Looking promising. Would really love to use this to customise the recipes (as well as adding in quick repair recipes). How are you planning on handling buckets? eg: the cake recipe returns the buckets from the milk used. Is that a hard-coded function of Minecraft, or are you able to modify that so that it is selectable if it consumes the buckets?
I think this will be great :D I loved the original :D