simplify primary and secondary electric usage priority

Things that we aren't going to implement
Post Reply
User avatar
Optera
Smart Inserter
Smart Inserter
Posts: 1823
Joined: Sat Jun 11, 2016 6:41 am
Contact:

simplify primary and secondary electric usage priority

Post by Optera » Fri Jan 25, 2019 10:15 am

Currently only terciary can be used for entities that can switch between consumer and producer, like accumulators and electric energy interface.
https://wiki.factorio.com/Types/ElectricUsagePriority

Having secondary and primary priorities not lock down entities as either drain or source allows for more versatile entities.
When designing and testing power setups an electric interface set to primary for example could simulate both solar source and laser turret drain.
During normal gameplay it would allow for transformators that can drain AND charge accumulators without resorting to hacking together multiple entities.

User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 6157
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: simplify primary and secondary electric usage priority

Post by bobingabout » Tue Jan 29, 2019 10:05 am

I actually gave a change to this system a lot of though, what would happen if you allowed a primary (in and out) or secondary as a priority, how would adding quaternary effect the system...

After spending an hour on it, I deleted it, because I came to the conclusion that it just wouldn't work.

I also had the benefit of looking at the game's source code to figure out how what exists currently works, and tertiary actually has a few exceptions to how it functions.

as an output, how does primary, secondary and tertiary work?
Primary (Solar) gets consumed first, giving power to all entities with a demand.
Secondary (Steam) then gets consumed if there's anything left over with demand after primary has been consumed.
Tertiary then gets consumed if there's still a primary or secondary demand on the grid. it cannot supply power to Tertiary.

as an input, how do the 3 work?
Primary input has highest priority, it will consume anything from all sources.
Secondary input has second priority, once Primary is satisfied, it will consume anything from all sources.
Tertiary input has third priority, and it will draw energy from any Primary or Secondary output if power is available. Again, Conditional, it can't be powered by a tertiary source.

The interesting thing to note is that a primary or secondary source or drain will provide to, or drain from any drain or source, but tertiary (Because it's an input and output) can only supply/drain from primary or secondary, it can't power/drain itself, because if it could, accumulators would try and charge from each other.

If you were to try and add an input/output as primary or secondary, how do you account for the conditions already laid out with the existing system? it can't power it's own level, so should be allowed to power a lower level? if you made a "secondary", you'd end up with a system that can only be powered by primary output (solar) and can only power primary input (laser turrets basically, nearly everything else is secondary), otherwise you run the issue of it being able to power itself.

what about trying to write in a Quaternary? can it draw from tertiary's accumulators? can it supply to them? if you follow tertiary's rules about secondary, yes, it should be able to both supply to, and drain from tertiary, so by having a quaternary accumulator on the same grid as a tertiary accumulator, then it should charge and drain the other accumulator at the same time. Look back at adding "secondary" and you end up with the same issue between secondary and tertiary.


So, what do you do? Like I said, After thinking about it for an hour, I decided... you really can't do anything to change the current system that makes sense with the rules laid out.


As for what is a source, and what is a drain... that is determined by the entity itself. Assembling machine is a drain, Steam engine is a source. the only two special ones is Accumulator is Both and the electric energy interface is either.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.

Rseding91
Factorio Staff
Factorio Staff
Posts: 8195
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: simplify primary and secondary electric usage priority

Post by Rseding91 » Wed Jan 30, 2019 12:30 am

Moved to won't implement for the reasons that bob explained.

An entity can't produce power and consume power from the same energy priority or it ends up charging/draining itself. The electric energy interface can end up doing exactly that and will do that if you set it to produce and consume power - effectively disabling itself.
If you want to get ahold of me I'm almost always on Discord.

Post Reply

Return to “Won't implement”

Who is online

Users browsing this forum: No registered users and 0 guests