allow recipe outputs to be minecraft:air
Warbringer12 opened this issue ยท 8 comments
Describe the the feature you'd like
allow modpack creators the ability to make outputs for machines to be minecraft:air
Describe alternatives you've considered
no alternatives
Additional context
This feature will allow clean up errors occurring in datapack loading and make it to were modpack creators can make there packs unique and potentially harder
This request makes no sense, as the two machines I can think of that have "multiple" outputs, the sawmill and the PRC, both allow for only specifying one of the two outputs, there aren't any other machines I can think of where it would make sense to output "air"??? As then it basically would be just deleting the items. What is it you are actually trying to do here?
i'm not talking about machines that have multiple outputs we were trying to do this as a recipe
{
"type": "mekanism:enriching",
"input": {
"ingredient": {
"tag": "mekanism:dirty_dusts/lead"
}
},
"output": {
"item": "minecraft:air"
}
}
and it would say this Parsing error loading recipe mekanism:processing/lead/dust/from_dirty_dust
com.google.gson.JsonSyntaxException: Recipe output must not be empty.
Correct, the output cannot be empty because then in your example recipe you would basically just be deleting lead dust at the cost of energy, at which point using dispenser to drop it in lava or use some other mod that adds a trash can would be more effective as that removes the energy cost.
were trying to remove to recipe completely so that way it doesn't show up in jei when people look up uses for the item and the only way we know how to remove them is to use a output of minecraft:air
So to make this a little bit easier to understand hopefully is we are trying to disable Skystone dust from Mekanism Enriching as we removed skystone from our Modpack using Datapacks. As you can see in the code below this is what we are trying to do by setting it to air and we have set alot of other things to air in different other mods and had no issues until we did it with this
{
"type": "mekanism:enriching",
"conditions": [
{
"modid": "appliedenergistics2",
"type": "forge:mod_loaded"
}
],
"input": {
"ingredient": {
"item": "appliedenergistics2:sky_dust"
}
},
"output": {
"item": "minecraft:air"
}
}
Just override the recipe with the same path with whatever vanilla expects for when removing recipes. Alternatively I think in theory:
{
"type": "mekanism:enriching",
"conditions": [
{
"type": "forge:false"
}
]
}
might work for you as the condition will always be false and it won't try to load the recipe.