Module effect multipliers on applicable entities

Place to ask discuss and request the modding support of Factorio. Don't request mods here.
User avatar
MrSmoothieHuman
Fast Inserter
Fast Inserter
Posts: 174
Joined: Sat Aug 05, 2023 1:20 am
Contact:

Module effect multipliers on applicable entities

Post by MrSmoothieHuman »

How feasible would it be to add a 'effect multiplier' for AssemblingMachine/Furnace/RocketSilo/etc, similar to distribution efficiency on beacons? So, for example, if I put in 5 modules that increase consumption by 10%, and the building has a consumption effect multipler of x2, then the building would actually have 100% consumption instead of the 50% it would have without the modifier.

I'd like this specifically because of an interaction I've found in my own overhaul, where a module category is used to make a building work properly but can also be used in other, 'normal' machines. The prime example is with 'heating coils', which are required to have any electric furnaces work at a proper speed but should also be usable in other furnaces that dont have this requirement.
04-02-2026, 20-47-59.png
04-02-2026, 20-47-59.png (441.56 KiB) Viewed 115 times
(an electric furnace filled with productivity coils, which requires coils which is next to a blast furnace filled with productivity coils. The blast furnace does not require coils, but uses them as its module category.)
In this situation, the blast furnace can only get +25% productivity despite being a more advanced machine and have recipes specific to its recipe categories, that can only ever reach 25% prod. The first assumption is to just double the module slots, but this creates the problem of inflating every other stat (like speed, pollution, consumption, etc) because the modules are designed around that idea.
If this were to be added, I can think of two primary ways to show this off to the player visually:
04-02-2026, 20-43-54.png
04-02-2026, 20-43-54.png (74.73 KiB) Viewed 115 times
04-02-2026, 20-45-39.png
04-02-2026, 20-45-39.png (74.74 KiB) Viewed 115 times
(you could also have a seperate tooltip for multipliers, but i can see that making tooltips too visually noisy :P) - code wise I could just see this being a table of all 5 module effects, where each defaults to x1 and you can put whatever values you'd like:

Code: Select all

module_effect_multiplier = 
{
	speed = 1
	consumption = 1,
	pollution = 2,
	productivity = 2.5,
	quality = 1.5,
},
The best way to achieve this, in the current API is to just give the building a base productivity that matches the max amount of productivity you can do via modules - this has its own issues ('power creep' being a big one, not that intiutive, very unadjustable) but is the closest thing you can get 'the same' thing :lol:
coder? i hardly know her!
User avatar
protocol_1903
Filter Inserter
Filter Inserter
Posts: 479
Joined: Fri Sep 09, 2022 4:33 pm
Contact:

Re: Module effect multipliers on applicable entities

Post by protocol_1903 »

Related: viewtopic.php?t=129221

This does feel like a better solution. For pY, we wanted something like this to reduce the usefulness of efficiency modules on certain fluid consuming buildings (like the antimony drill) and the only solution was to give it a very high base efficiency on the energy source such that 50% efficiency became something like 5%. This was very confusing to players and in the end efficiency modules were banned outright. I'd prefer a solution where we don't have to make that tradeoff.
pY and pYblock developer, wielder of fluid networks and subtick events in arbitrary ways. I make mods. Check them out, maybe.
https://mods.factorio.com/user/protocol_1903

Buy me a coffee
Post Reply

Return to “Modding interface requests”