-
Notifications
You must be signed in to change notification settings - Fork 304
Recipes Overview [1.13 and Up]
sciwhiz12 edited this page Sep 5, 2022
·
4 revisions
JEI has built-in recipes for nearly everything related to crafting. This includes:
- Anvil recipes (Applying enchanted books)
- Potion brewing
- All forms of smelting (campfire, furnace, smoker, and blast furnace)
- Fuel for furnaces
- Regular crafting table recipes
- Stonecutter recipes
If the recipe you are adding is listed above, it is implemented in JEI as the Vanilla Plugin (using the same API as any other mod plugin). Otherwise, if your recipe is NOT listed above, it is a modded recipe.
At this point, if you haven't already, you'll want to create a plugin. Afterwards, you'll need to:
- (REQUIRED) Create a recipe category. Examples of categories already in Vanilla include "crafting", "cooking", etc. If you're using another mod's recipe category, this is not required.
- (PRACTICALLY REQUIRED) Register your recipes with the recipe category. This way, JEI knows that your mod's recipes are part of the category you're creating. This can be done in the
registerRecipes
function of your plugin, callingIRecipeRegistration.addRecipes(RECIPE_LIST, KEY)
. In this scenario,RECIPE_LIST
is a JavaCollection
with all of the recipes in it, whileKEY
is the sameResourceLocation
as you return from your recipe category'sgetUid()
function. - (OPTIONAL) Register a catalyst or catalysts for the recipe category. This way, JEI knows what to display as the block/item used for the crafting category (ie. Crafting tables for crafting, furnace for cooking, etc.). This can be done in your recipe's
registerRecipeCatalysts
function, callingIRecipeCatalystRegistration.addRecipeCatalyst(ItemStack, KEY)
.ItemStack
is anItemStack
of the item you want to be the catalyst, whileKEY
is the same key from step 2. - (OPTIONAL) Register a transfer handler for the recipe category. This way, the + button in JEI will transfer items properly. This can be done using the
IRecipeTransferRegistration.addRecipeTransferHandler()
function.
- Setup
- Item Ingredients
- Essential Extras
- Advanced
List of Plugin Implementations
- Setup
- Item Ingredients
- Working with Recipes
- Other