Push To Craft

Quick rating

Community listing page, reviews here may not be monitored by the author.

Push To Craft

By SiphalorOwner

No reviews yet

A minecraft mod to enable expanding items/tags in recipes

Mod Loaders
Minecraft

About

Description

Latest release tested for up to 1.15.2 | 1.16.1

bar

logo

bar

Discord

bar

Since curseforge's formatting is totally broken you can see a better description in the readme file here.

Usage

This mod adds a new data type called push to craft.

A valid json file is built like this:

  • additions: Array - Defines all items or tags that you want to add to the targets
    • Entries are item ids as Strings. You can use tags by prepending a #.
  • targets: Array or String - Defines which items and tags to target in the recipes
    • Entries are item ids or tags as Strings.
  • recipes: Object - Gives conditions for which items to choose
    • types: Array - optional - Defines which recipe serializers to target
      • Entries are recipe serializer ids as Strings
    • ids: Array - optional - Defines which recipes to target
      • Entries are Strings that are either of these:
        • Exact recipe ids à la minecraft:anvil
        • Namespace specific regular expression that only mark the last part of the id as regex à la minecraft:.*
        • A complete regular expression beginning and ending with a forward slash à la /.*craft:.*/

Example

This allows you to use blackstone in favor of cobblestone everywhere:

{ "additions": [ "minecraft:blackstone" ], "targets": [ "minecraft:cobblestone" ], "recipes": {} }

This allows you to use emeralds and all kinds of planks as alternatives to diamonds and iron ores in crafting and smelting recipes:

{ "additions": [ "minecraft:emerald", "#minecraft:planks" ], "targets": [ "minecraft:diamond", "minecraft:iron_ore" ], "recipes": { "types": [ "crafting_shaped", "crafting_shapeless", "blasting" ], "ids": [ "minecraft:/.*/" ] } }

Have fun :)

Usage

This mod adds a new data type called push_to_craft. Put the files into a push_to_craft directory in your datapack or data folder of your mod (beneath the recipes or tags directories).

A valid json file is built like this:

  • additions: Array - Defines all items or tags that you want to add to the targets
    • Entries are item ids as Strings. You can use tags by prepending a #.
    • targets: Array or String - Defines which items and tags to target in the recipes
      • Entries are item ids or tags as Strings.
    • recipes: Object - Gives conditions for which items to choose
      • types: Array - optional - Defines which recipe serializers to target
        • Entries are recipe serializer ids as Strings
      • ids: Array - optional - Defines which recipes to target
        • Entries are Strings that are either of these:
          • Exact recipe ids à la minecraft:anvil
          • Namespace specific regular expression that only mark the last part of the id as regex à la minecraft:.*
          • A complete regular expression beginning and ending with a forward slash à la /.*craft:.*/

Example

This allows you to use blackstone in favor of cobblestone everywhere:

{
    "additions": [
        "minecraft:blackstone"
    ],
    "targets": [
        "minecraft:cobblestone"
    ],
    "recipes": {}
}

This allows you to use emeralds and all kinds of planks as alternatives to diamonds and iron ores in crafting and smelting recipes:

{
	"additions": [
		"minecraft:emerald",
		"#minecraft:planks"
	],
	"targets": [
		"minecraft:diamond",
		"minecraft:iron_ore"
	],
	"recipes": {
		"types": [
			"crafting_shaped",
			"crafting_shapeless",
			"blasting"
		],
		"ids": [
			"minecraft:/.*/"
		]
	}
}

Modders

If you're a modder and like to use this in your projects you can do so using my maven:

repositories {
    maven {
        name "Siphalor's Maven"
        url "https://maven.siphalor.de"
    }
}

dependencies {
    modCompile "de.siphalor:pushtocraft-1.15:+"
    // Optionally you can include this mod into your jar
    include "de.siphalor:pushtocraft-1.15:+"
}