Mekanism Tools

Mekanism Tools

77M Downloads

Cannot modify Thermoelectric Boiler recipe

executionByFork opened this issue ยท 3 comments

commented

Issue description

I am using KubeJS to tweak recipes in a modpack I am making for 1.18.2. I have been changing instances where Mekanism uses the fluid input "tag":"minecraft:water" with "fluid":"minecraft:water" because otherwise Mekanism machines accept a ton of ridiculous fluids like oil and honey and chocolate... All of these fluids are tagged as minecraft:water I believe, because it allows these fluids to act like water. I have experimented with this, and removing this tag from a fluid makes the player fall straight through it as if it were air.

However, while I have successfully been able to edit most Mekanism machine recipes to accept only "fluid":"water", I cannot seem to do so with the Thermoelectric Boiler multiblock. I cannot find a datapack recipe for it, and I am wondering how this machine is implemented? Are the recipes hard coded in the source? Is there some way I can edit this recipe?

Side note, I think it might be nice to change it such that Mekanism machines do not accept the minecraft:water tag, and only accept the actual fluid ID for water. I can understand the tag was probably put in for compatibility, but are there even any mods that add a new type of water to the game? And even so, is it really a big deal if Mekanism only accepts ordinary minecraft water and doesn't integrate with whatever special water was added? I think doing this would help make the mod more robust in modpacks, considering the issues with fluid implementations as it stands.

Steps to reproduce

No response

Minecraft version

1.18.2

Forge version

40.2.0

Mekanism version

10.2.4.464

If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)

No response

commented

The boiler doesn't have proper recipes as it auto creates them based on defined coolant attributes of substances. In regards to mods claiming their things are water that aren't that isn't something we can fix that is a bug in other mods that should be making use of forge's fluid system to add fluid interactions rather than just pretending to be water.

commented

Are you able to give some context on how the boiler auto generates recipes? Or what defined attributes it looks for to create them? Pointing me to the portion of code that handles this might help as well, though I am not all that well versed in Java.

Since there is no way to edit the boiler recipe via json, my next option is to try and manipulate the tags of these fluids so that they no longer are categorized by mekanism as a coolant source. This is... much more convoluted but hopefully possible.

I don't know how feasible it would be, but it would be nice if the boiler followed the same conventions every other machine or multiblock does for minecraft recipes. The auto generation I assume was a little easier than formulating JSON to handle the recipe functionality, but it does have the nasty side effect of preventing modpack authors from tweaking anything regarding the machine easily.