Crafting Recipes
Creating crafting recipes is a simple process. It requires creating one JSON file and then keeping a couple rules in mind.
Crafting recipes are located in a different place in the content pack file structure:
packname/
assets/
data/
pointblank/
recipes
ext.json
pack.mcmetaRecipes go inside packname/data/pointblank/recipes.
The name of the recipe file itself should share the same name as the item you want this recipe to craft. If the name of the gun item file is doom_combatshotgun.json then the name of the recipe json must also be doom_combatshotgun.json.
Weapon Printer Crafting Recipes
A Weapon Printer crafting recipe for a gun might look like this:
{
"type": "pointblank:default",
"ingredients": [
{
"count": 40,
"item": "pointblank:doom_argent_ingot"
},
{
"count": 15,
"item": "pointblank:guninternals"
},
{
"count": 2,
"item": "pointblank:processor"
},
{
"count": 5,
"item": "minecraft:diamond"
},
{
"count": 40,
"tag": "forge:ingots/copper"
},
{
"count": 30,
"item": "minecraft:redstone"
}
],
"result": {
"item": "pointblank:doom_plasmagun"
}
}The things to keep in mind are the items you want to use in the recipe, their count (i.e. here, the player needs 30 redstone dust), and the result item, which is the name of the gun you want this recipe to craft.
Here’s an example of Weapon Printer ammo item recipe:
{
"type": "pointblank:default",
"ingredients": [
{
"count": 2,
"tag": "forge:ingots/copper"
},
{
"count": 1,
"item": "minecraft:gunpowder"
}
],
"result": {
"count": 16,
"item": "pointblank:doom_50calpistol"
}
}Here, since the player is crafting ammo, maybe the result count should be higher than 1, so it’s specified as 16.
Item IDs
Be mindful of the respective item ID for any item you want to use in your recipes.
Any item from Point Blank should be defined as pointblank:itemname.
Any item from Minecraft should be defined as minecraft:itemname.
In theory, you may be able to use items from other mods using their IDs.
Ingot IDs
Ingot items require different code. For a regular item, you might write "item": "minecraft:itemname". This is good for items like gunpowder or other miscellaneous items.
But ingot requires require "tag": "forge:ingots/copper" or "tag": "forge:ingots/iron".
Crafting Table Recipes
You can also create recipes that are done in-game via the Crafting Table, instead of Point Blank’s Weapon Printer.
Example from the Doom pack:
{
"type": "minecraft:crafting_shaped",
"category": "misc",
"key": {
"X": {
"item": "minecraft:blaze_powder"
},
"Y": {
"item": "minecraft:magma_cream"
},
"Z": {
"item": "minecraft:gunpowder"
},
"W": {
"tag": "minecraft:soul_fire_base_blocks"
}
},
"pattern": [
"XZ",
"YW"
],
"result": {
"item": "pointblank:doom_argent_compound"
},
"show_notification": true
}There are a few standout differences. This example shows an item called Argent Compound, created in a Crafting Table via a shaped recipe. Shaped recipes meaning you have to place certain items in certain places in the Crafting Table.
You put down the item, and give it a letter, then assign the letter a position in pattern, which corresponds to the Crafting Table GUI.
Here, Gunpowder is assigned Z.
"Z": {
"item": "minecraft:gunpowder"
},And is subsequently used in pattern:
"pattern": [
"XZ",
"YW"
],So in a 2x2 shaped recipe, the Gunpowder is used at the top right.