[2.0.28] Furnace interaction with item+fluid ingredients should be clarified
Posted: Sun Dec 29, 2024 10:55 pm
Imagine if recycling recipes required a fluid. Say you specify the fluid as 2nd ingredient:
Game would recognize this setup when the furnace entity has an input fluidbox, showing it as 2nd ingredient in GUI, and that the fluid is required to select those recipes.
But inserting an item would actually fail even with fluid present
because it implicitly hints a restriction on ingredient order with that tooltip. Despite the fact it's also 2nd in ingredient list, it actually expects the mod to put fluid ingredient 1st as well:
for it to actually work.
I haven't seen this quirk documented anywhere within RecipePrototype and FurnacePrototype, and a mod has had this exact setup before in 1.1 - Industrial Revolution 3 and its Electroplater, which even has 2 different input fluids and recipes associated to both.
This is a feature not used in base game so it's understandable for it to not be mentioned, but now that i've bumped into it, i suppose mentioning something along the lines of:
Code: Select all
data:extend({{
type = "recipe",
...
ingredients = {
{type = "item", name = item_name, amount = 1},
{type = "fluid", name = "promethium-emulsion", amount = fluid_requirement}
},
...
}})
But inserting an item would actually fail even with fluid present
because it implicitly hints a restriction on ingredient order with that tooltip. Despite the fact it's also 2nd in ingredient list, it actually expects the mod to put fluid ingredient 1st as well:
Code: Select all
...
ingredients = {
{type = "fluid", name = "promethium-emulsion", amount = fluid_requirement},
{type = "item", name = item_name, amount = 1}
},
...
I haven't seen this quirk documented anywhere within RecipePrototype and FurnacePrototype, and a mod has had this exact setup before in 1.1 - Industrial Revolution 3 and its Electroplater, which even has 2 different input fluids and recipes associated to both.
This is a feature not used in base game so it's understandable for it to not be mentioned, but now that i've bumped into it, i suppose mentioning something along the lines of:
to the description of FurnacePrototype should be enough.If the furnace has input fluidboxes, all recipes available to the furnace must specify their fluid ingredients first.