FabricMC / fabric

Essential hooks for modding with Fabric.
Apache License 2.0
2.31k stars 404 forks source link

Replace vanilla recipes to point to common tags for input #3860

Open TelepathicGrunt opened 3 months ago

TelepathicGrunt commented 3 months ago

This came up in a random server but would be good to mention here.

Fabric API could replace recipes like bows or axes so they pull from c:rods/wooden and so forth. Example is Forge and NeoForge has done this for a long time: https://github.com/neoforged/NeoForge/blob/92792c6d573c9dff84bf8d04c6eae62eefa5aa19/src/generated/resources/data/minecraft/recipe/bow.json#L6

The vanilla JSON file would simply be replaced. Probably by datagen and some additional tests surrounding it so it doesn't break on MC version updates.

ThatGravyBoat commented 3 months ago

Id like to add in addition to the stick example, a common one multiple mods do including mine is add additional recipes for pumpkin pie and cakes using our own eggs, if such a system were to be added replacing those recipes using the eggs tag would be great.

apple502j commented 3 months ago

Wasn't the whole point of Convention Tags not to affect vanilla game simply by changing its content?

TelepathicGrunt commented 3 months ago

@apple502j Yesn't. Sorta. Large behavior changes? Yes modloader specific tag. But for the recipe replacing stuff, I kinda well, ported that to the c tags in Neo at the time. Maybe a mistake. Maybe not.

So it seems better to talk about the usage of the recipes stuff. Let's see

I can see arguments either way for having the recipe always point to a modloader tag or to a c tag. Just need to know which way Fabric leans.