Reactors lose energy to the air when not powered.

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

Post Reply
User avatar
NotRexButCaesar
Smart Inserter
Smart Inserter
Posts: 1120
Joined: Sun Feb 16, 2020 12:47 am
Contact:

Reactors lose energy to the air when not powered.

Post by NotRexButCaesar »

The way reactors are currently, you can turn them off and they stay up to temperature indefinitely. This is really unrealistic and removes the long startup times that real reactors have, leading to some designs which actually switch the reactors on and off continuously rather than having a variable power supply to fill out peaks.
I think that letting reactors lose heat when without fuel would incentivize people to use more varied and interesting power supplies, rather than build one giant nuclear setup.
—Crevez, chiens, si vous n'étes pas contents!

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: Reactors lose energy to the air when not powered.

Post by foamy »

Add heat loss to steam tanks while you're about it, maybe? On the one hand it's kind of silly that all power operation in Factorio is 100% efficient, but, on the other hand, I don't know that adding in that bookkeeping makes for a more entertaining game.

User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Reactors lose energy to the air when not powered.

Post by ssilk »

It doesn’t (much) and in the end you need an extra scan over each reactor and heat pipe to calculate the heat-loss for each tick. Can eat lots of CPU-cycles.
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

foamy
Filter Inserter
Filter Inserter
Posts: 432
Joined: Mon Aug 26, 2019 4:14 am
Contact:

Re: Reactors lose energy to the air when not powered.

Post by foamy »

ssilk wrote:
Sun Nov 15, 2020 7:53 am
It doesn’t (much) and in the end you need an extra scan over each reactor and heat pipe to calculate the heat-loss for each tick. Can eat lots of CPU-cycles.
I don't know if it necessarily would chew lots of CPU cycles, though obviously it would need some. If you make a simplifying assumption about the ambient temperature being of fixed temperature and infinite thermal capacity, it's one more operation per entity per tick, strictly dependent on the calculated temperature of the entity. Factorio isn't ONI and doesn't need to get deep into things like thermal conductivity variances and whatnot.

Koub
Global Moderator
Global Moderator
Posts: 7199
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Reactors lose energy to the air when not powered.

Post by Koub »

Indeed, but what once one starts with reactors, all the things that heat up are not far away. First reactors, next heatpipes, tanks with steam, and pipes with steam. Those things quickly add up and **might** become a significant UPS drain on big bases.
Koub - Please consider English is not my native language.

coppercoil
Filter Inserter
Filter Inserter
Posts: 472
Joined: Tue Jun 26, 2018 10:14 am
Contact:

Re: Reactors lose energy to the air when not powered.

Post by coppercoil »

I think natural cooling can be implemented is already implemented and just need to be activated. There already is some engine for thermodynamics, which transfers heat across all heat pipes. Every pipe considers its neighbours, so add a virtual neighbour "Air" with constant temperature. You even don't need to address "Air" entity, just add a constant: TemperatureSum += 20 * 0.0001; NeighbourSum++;
This should not eat CPU.

protocol_1903
Inserter
Inserter
Posts: 43
Joined: Fri Sep 09, 2022 4:33 pm
Contact:

Non-Electric Energy Source Drain (+ Heat Pipe Drain)

Post by protocol_1903 »

TL;DR
Energy sources that are not electrical (burner, fluid, heat) should be able to have a passive drain just like electric energy sources.
What ?
I would like to see the option for entities that use burnable fuel, such as furnaces and boilers, have the option to constantly drain fuel just like most electrical entities. I would then also like to extend this to fluid and heat energy sources. Imagine that boilers constantly consumed a small amount of fuel to keep the fire hot, as well as steam engines consuming a small amount of steam to keep turbines spinning. This change would mean that placing more boilers and steam engines increases your passive fuel use, as well as increasing your electrical network capacity.

As far as heat energy sources go, it would make more sense that heat exchangers lose some heat to the surroundings. In addition, heat pipes losing some heat to the air would also be a neat addition. You could have one overground variant that loses heat to the atmosphere, and another buried or insulated variant that loses much less heat/none at all. On the topic of buried heat pipes, an underground variant would be useful, even if very limited. This post details heat loss for reactors and heat pipes. The last post on the topic details a simple solution to the optimization problem. I would also note that, since heat is not a very fast system, heat loss and/or transfer could be regulated to every other update, if not less often.
Why ?
This would mostly be for the modding toolkit, but with the many additions and changes in 2.0 this could prove useful as part of the challenges on any given planet. It would increase complexity for nuclear, and create more depth to power generation. As far as mods go, this expands the capabilities of all entities not using an electrical energy source.

User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 2242
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: Non-Electric Energy Source Drain (+ Heat Pipe Drain)

Post by boskid »

Such "features" would go with a performance penalty that i am not sure we want to introduce. BurnerEnergySource, FluidEnergySource and HeatEnergySource are only updating when entity is updated this is why they have no drain on them. FluidEnergySource holds one FluidBox but the FluidBox itself is not aware who owns it so it cannot perform the drain logic. If any drain logic would be added here, there would have to be an unconditional update every tick just to count for the drain and possibly apply pollution generation to a chunk. Just because this would require a quite expensive update every tick this is unlikely to happen. Reason why ElectricEnergySource is allowed to have a drain in it is that the drain is applied during electric network transfer which happens every tick on all electric energy sources but this logic had to be there anyway to transfer energy from producers to consumers. On top of that electric energy sources are kept in a continuous memory chunks making them less expensive to iterate over all of them in one go.

So this is unlikely, at least for now.

Koub
Global Moderator
Global Moderator
Posts: 7199
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Reactors lose energy to the air when not powered.

Post by Koub »

[Koub] Merged into older thread on the same topic
Koub - Please consider English is not my native language.

Post Reply

Return to “Ideas and Suggestions”