Tutorial by: ButterflyBullets


How to make your own custom crafting recipes using Skript!

DISCLAIMER: In order for this to work you will need skBee, Tuske, skQuery, Skript

Now the order of the slots goes as following using the first item as one, the second item as two and so on:

knowing this is helpful so you know which way your putting your blocks in, unless its a shapeless recipe.

This tutorial will show you how to make your own custom crafting recipes for your server with your friends, community, or whatever it is that you want, now without further ado, lets get into it!
To make your own recipe your going to want to create a variable for it first and keep in mind that all color codes are supported, we can create the variable by typing the following:

on load:
  set {_hellingot} to brick named "&cHell Ingot"
  register new shaped recipe for {_hellingot} named "&cHell Ingot" using iron ingot, gold ingot, iron ingot, gold ingot, netherite ingot, gold ingot, iron ingot, gold ingot and iron ingot with id "hell_ingot"

Another way of doing this would be to put a requirements area for the custom item which would look like this:

on load:
  set {_requirements::*} to iron ingot, gold ingot, iron ingot, gold ingot, netherite ingot, gold ingot, iron ingot, gold ingot and iron ingot
  register new shaped recipe for {_hellingot} named "&cHell Ingot" using {_requirements::*} with id "hell_ingot"

You can use whatever way you find is easier for you, I prefer the first method but the second works just as well.

Now what this does is Skript will create a new recipe for our test item called {_hellingot}, now you can change the recipe and name to whatever you want for your item. Using this new recipe you just made you can combine this recipe into another recipe to make a custom item using a custom item you already have, now with the text above you can make a new recipe but with your custom recipe looking like this:

on load:
  set {_hellforge} to furnace named "&4Hell Forge"
  register new shaped recipe for {_hellforge} named "&4Hell Forge" using air, {_hellingot}, air, {_hellingot}, blast furnace, {_hellingot}, air, {_hellingot} and air with id "hell_forge"

With that new recipe for a "Hell Forge" that we made, we can now see how you can make custom items using custom items, but lets say you want to make a new recipe for a diamond chestplate to make them harder or easier to obtain you could do wipe the current recipe for a diamond chestplate and add a new one looking like this:

on load: #harder version
  wipe crafting recipes for diamond chestplate
  register new shaped recipe for diamond chestplate named "Diamond Chestplate" using diamond, air, diamond, diamond, nether star, diamond, diamond, diamond, diamond

on load: #easier version
  wipe crafting recipes for diamond chestplate
  register new shaped recipe for diamond chestplate named "Diamond Chestplate" using diamond, air, diamond, diamond, iron ingot, diamond, diamond, diamond, diamond

These are the basics of custom recipes and can be applied in many ways but not all, so lets get more advanced and see what else we can do with these shall we? So using all the information you been given so far you can change vanilla recipes, make custom recipes and custom recipes using custom recipes, and although that might seem like a lot there is much more to learn. There is so much more that you can do with this, some of it is more confusing and harder than other parts, so go and learn with your newfound knowledge and see what you can make!

Here is one final recipe for you before you go, use this all to make your own custom recipes for your server and see what you can do! Be sure to leave comments on your experience with this and of course you can see all syntaxes to further your knowledge right here!

on load: #hell sword
  set {_hellsword} to netherite sword named "&4Hell Sword"
  register new shaped recipe for {_hellsword} named "&4Hell Sword" using air, {_hellingot}, air, air, {_hellingot}, air, air, {_hellstick} and air with id "hell_sword"

on load: #hell stick
  set {_hellstick} to blaze rod named "&6Hell stick"
  register new shaped recipe for {_hellstick} named "&4Hell Stick" using air, blaze rod, air, air, nether star, air, air and blaze rod with id "hell_stick"

- ButterflyBullets


Did you find ButterflyBullets's tutorial helpful?


You must be logged in to comment

  • May 11, 2022, 2:47 p.m. - MattTheOG  

    I Have A Lifesteal Server That my friend made but i cant figure out how to make a custom craft to make a heart because i cant figure out what the name of red dye is in Skript. Just to let you know i am just starting skripting

    |     
    July 17, 2022, 7:23 a.m. - WrongBot  

    You can just search Minecraft colour code on Google and they will provide a wide-range of colour codes, just see if it works!

    |     
  • July 17, 2022, 7:17 a.m. - WrongBot  

    This is so awesome!

    |     
  • Oct. 12, 2022, 4:32 p.m. - 1_x409  

    TuSke is out-dated. Right now, there is no way to make a custom craft.

    |     
  • Feb. 25, 2023, 8:26 p.m. - ShaneBee  

    I'm sorry to say it, but this tutorial is awful.

    For starters:
    ""
    DISCLAIMER: In order for this to work you will need skBee, Tuske, skQuery,
    ""
    SkQuery removed recipe syntax, and Tuske has been broken since Skript 2.6.1.
    Even so, I'm not sure why you are telling users they need ALL THREE addons to create recipes when only one is needed.

    Secondly:
    Your first couple code blocks use SkBee syntax (this is easy to figure out because you can see with id "id_here")
    Then you move on to using another addon (this is easy to figure out because there is no ID)
    Then you finish off with another code block using SkBee's syntax.

    This tutorial has given me a lot of headaches because people blame ME (the creator of SkBee) for their code not working, because they got it from this incorrectly written tutorial.

    |     
    April 9, 2023, 3:40 p.m. - MCCreatorUser  

    Hello, I'm contacting you because I have a problem with the custom skript recipe using smithing tables. It seem to me that custom items aren't working as intended. I am playing on 1.17.1, as provided with the added in notation of '1.16.5+ required'. I've tried to also make a custom named item to be the outcome, but minecraft still decided to make it a netherite chestplate called 'Netherite Chestplate' rather than an actual named one. I'd really appreciate a reply, and some help with the coding. Here is the coding I used:

    on load:
    set {_R} to amethyst shard named "---------" with lore "--------"
    register new smithing recipe for netherite chestplate named "------" using {_R} and diamond chestplate with id "--------"
    This doesn't proceed to even work when loaded. The skript loads perfectly, it's just that it's not working as intended, and doesn't proceed to craft the said item named "-------". I have SkBee downloaded, SkQuery, althought it was outdated, I believe it works fine, since there were no issues when making a custom crafting table recipe, and that's pretty much all the plugins I have installed. Thank you for listening, hopefully I could see a reply with some help anytime soon. Appreciate your plugin SkBee, very useful.

    |     
    Aug. 31, 2023, 5:20 p.m. - flowaxexd  
    |     
  • Aug. 31, 2023, 5:21 p.m. - flowaxexd  
    |