Friday Facts #379 - Abstract rewiring

Regular reports on Factorio development.
TheRaph
Fast Inserter
Fast Inserter
Posts: 226
Joined: Sun Sep 24, 2017 6:31 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by TheRaph »

Nice work, but ....

There are some wires in front of that pole which should be on the back side ...

And I spot some wired shadow ... :)
Screenshot 2023-10-09 182926-2.png
Screenshot 2023-10-09 182926-2.png (121.26 KiB) Viewed 1835 times
If you are that heavy in wiring code:

I find ait anoying if using an electric swich it separetes the two networks so tha the statisc goes wrong.

Are there any way to add swich-separated networks as kind of subnets?
I had use much of electric swiches to swich of minor poarts in case of electric problems (eg. heavy laser defense) or in case of output jamming up.
But that has some quirky issues on teh electric stats - were I missed the words to describe whats happening or what would be a better solution.

User avatar
Usul
Fast Inserter
Fast Inserter
Posts: 133
Joined: Mon Oct 31, 2016 5:05 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by Usul »

Please also allow remotely manipulating a splitter's configuration (preferred input/output, filter). This is not possible on the map, however locally placing a splitter, configuring it, taking a blueprint and pasting it remotely is a very commonly used, yet tedious workaround.

User avatar
BrainlessTeddy
Long Handed Inserter
Long Handed Inserter
Posts: 79
Joined: Sun May 19, 2019 7:50 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by BrainlessTeddy »

Yep, that is a huge yep from me. Absolutely awesome.
Please consider english is not my native language.

raidho36
Long Handed Inserter
Long Handed Inserter
Posts: 93
Joined: Wed Jun 01, 2016 2:08 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by raidho36 »

mmmPI wrote:
Mon Oct 09, 2023 11:01 am
But i'm not sure i understand correctly the thing you made to be honest.

If you monitor when steam is low in tanks and trigger synchronized refuel at that moment doesn't that replicate the self-adjusting property of the PID controller for fuel insertion rate ? ( mechanically with belt backed up triggering production of exactly what's being consumed with a delay ).

That can't overshoot though, so i suppose it's not quite the same mechanism of self-adjustment than for a PID controller.

If you don't mind me bothering you again with more questions, i'm curious if you wouldn't mind share the blueprint, i think you could even make a post "showing your creation" as that's what people do when they come up with such stuff, maybe someone else trying to do something similar would find it helpful. I would look at it for sure.
If you do something like read steam level and make progressively more fuel inserters activate as it gets lower, that's just a spring. If you compress it, it'll exert exactly the amount of force to oppose further compression. For a nuclear reactor, this means the more power you use the less buffered steam you'll have available, in a steady-state. A PID controller hooked to the same steam tank, would maintain constant steam level in that tank no matter the power loading. I do this in Warptorio so I have space-constrained setup, meaning I need to use steam pumps so using steam tanks doesn't works for me. So it's actually connected to accumulators (of the warp-tech variety, with extremely huge capacity). Which I think is actually preferable since charge only starts to go down once buffered heat is getting depleted and you can't feed the entire turbine array.

I made a better version of it. Still not great but at least being a solid brick everything just blends together and doesn't draws your attention to the godawful wiring.
Untitled.png
Untitled.png (1.29 MiB) Viewed 1745 times
Clock compensators had to be staggered with PID multipliers because integer division destroys small values.

Here's an inserter speed controller to go along with it, since it just outputs arbitrary numbers that don't actually mean anything other than "bigger number = faster speed".

mmmPI
Smart Inserter
Smart Inserter
Posts: 2749
Joined: Mon Jun 20, 2016 6:10 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by mmmPI »

raidho36 wrote:
Mon Oct 09, 2023 11:42 pm
I made a better version of it. Still not great but at least being a solid brick everything just blends together and doesn't draws your attention to the godawful wiring.
Thank you ! It's beautiful ! It's so helpful to refine understanding. I'll post the rest on the thread dedicated to it !

computeraddict
Fast Inserter
Fast Inserter
Posts: 111
Joined: Sat Oct 07, 2023 6:44 am
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by computeraddict »

raidho36 wrote:
Mon Oct 09, 2023 11:42 pm
If you do something like read steam level and make progressively more fuel inserters activate as it gets lower, that's just a spring. If you compress it, it'll exert exactly the amount of force to oppose further compression. For a nuclear reactor, this means the more power you use the less buffered steam you'll have available, in a steady-state. A PID controller hooked to the same steam tank, would maintain constant steam level in that tank no matter the power loading.
Because of the neighbor bonus you want to either trigger all of the inserters or none of them. Reactors are best suited to bang-bang control if not being run continuously. If you're only using a single reactor the two steam tanks required to hold the entire output of a fuel cell (2.4GJ per tank, 5GJ in the reactor's heat buffer) only take 18 tiles. Rather than a steady state spring you get a system that rubber bands between a lower set point and an upper bound based on usage.

Truthfully, I have no idea how you'd even make PID for a reactor that is substantively different in energy storage requirements from a bang-bang controller. You have to have energy buffer for a full fuel cell burn cycle (minus any known constant draw) regardless of the control scheme.

raidho36
Long Handed Inserter
Long Handed Inserter
Posts: 93
Joined: Wed Jun 01, 2016 2:08 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by raidho36 »

computeraddict wrote:
Tue Oct 10, 2023 3:17 am
Truthfully, I have no idea how you'd even make PID for a reactor that is substantively different in energy storage requirements from a bang-bang controller. You have to have energy buffer for a full fuel cell burn cycle (minus any known constant draw) regardless of the control scheme.
I do it in Warptorio, which means on one hand I can't use steam tanks, on the other is means I have tons of heat pipes which store a lot more energy per tile than steam tanks, and on the third warp abilities require silly amounts of battery power due to infinite power draw scaling, so immense electric storage comes for free reactor design wise.

computeraddict
Fast Inserter
Fast Inserter
Posts: 111
Joined: Sat Oct 07, 2023 6:44 am
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by computeraddict »

raidho36 wrote:
Tue Oct 10, 2023 4:15 am
I can't use steam tanks
You don't have to consider just steam tanks. Steam tanks are just the go-to in vanilla since they are the densest storage medium with a circuit output. Iirc there's a way to read the platform accumulator level in Warptorio, so you could just read it directly. If there's enough heat storage in piping and reactors to store a full burn cycle you could use the very simple condition "insert when accumulator < full". (Though whenever I'm circuiting reactors, I enable/disable the removal inserter based on needs_fuel and fuel_cell_available_for_all_feeding_inserters and enable the feeding inserters only when the appropriate removal inserter swings. It produces a few frames of unpowered reactors, but it also means the feeder inserter won't feed more than one cell at a time.)

User avatar
Palaber1984
Inserter
Inserter
Posts: 32
Joined: Sat Feb 16, 2019 10:09 am
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by Palaber1984 »

Hey everyone.

Is it possible to highlight the wired system a little bit more by giving the user the opportunity to change things like thickness or saturation for examples in the options?

And is it possible to highlight connected buildings as well?

And last is it possible to build wires on the ground without being under the ground. Just on top of the ground. in some situation like train station where there are a mass of wired connections it’s annoying that there hang a lot of cables around and it looks that the train would cross the cable .

Thx

Qon
Smart Inserter
Smart Inserter
Posts: 2118
Joined: Thu Mar 17, 2016 6:27 am
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by Qon »

Palaber1984 wrote:
Tue Oct 10, 2023 6:58 am
Is it possible to highlight the wired system a little bit more by giving the user the opportunity to change things like thickness or saturation for examples in the options?
I use a mod to change wire color, because red and green wire on constant combinators that are red with some greenish details and yellow green arithmetic combinators is a bit hard to see. See in my pics on page 7.


I think there are mods with wire thickness options as well. Maybe even the mod I use have options for it? Don't remember.

gallomimia
Long Handed Inserter
Long Handed Inserter
Posts: 55
Joined: Fri Apr 22, 2016 6:20 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by gallomimia »

The Pop Quiz:
The shadows of the wires and the wire poles are superimposed and combined with alpha channel, when they should just be the same darkness

Khada
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sat Aug 26, 2023 1:41 am
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by Khada »

I love the Futurama reference

User avatar
husnikadam
Long Handed Inserter
Long Handed Inserter
Posts: 78
Joined: Mon May 21, 2018 1:56 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by husnikadam »

I would like to add more entities with circuit network interface for even bigger circuit possibilities. Main ideas include:
1. Power pole for power statistics - avaiable power total, avaiable power from different power sources power, total power usage and demand...
2. pipes for fluid content and enable/disable (i know i can use tanks and pumps if needed)
3. All production machines and furnaces - read content/enable disable (work around using switches)
4. Radars for scanning statistics (f.e. how many chunks to yet be scanned for the first time)
5. Roboports - new mode enable/disable
I could find more, but those would be ever more niche cases than some of these. I hope this idea is not too ofensive

revanar
Manual Inserter
Manual Inserter
Posts: 2
Joined: Tue Nov 07, 2023 2:51 pm
Contact:

Re: Friday Facts #379 - Abstract rewiring

Post by revanar »

A bit late to the party here!

All of the changes that are being announced are great, including this one! Even just not having to carry around red and green wire everywhere will be great!

I notice a few small issues though:

While an improvement in most ways, the shadows touching the wires on low wired objects like inserters really highlight how weird it is that the wires pass over the inserter, rather than under it. I realize that it would make it harder to see wire connections if the wires ran behind the inserter heads, and also that doing masking to make the wires pass under the inserter arm but over the base would be awkward and potentially weird-looking at certain angles---but I wonder if finding a way to give the wires a little more "height" or distance from the inserter arm to make it look like they could actually be above / beside the inserter arm would help it look a bit more natural?

Another thought: Maybe it would make sense to change the abstract entity for wiring up electrical poles to be black and named "electrical wire" instead of copper wire to avoid confusion!
Attachments
Inserters looking particularly flat under the wires
Inserters looking particularly flat under the wires
Screenshot 2023-11-07 095527.png (646.06 KiB) Viewed 868 times

Post Reply

Return to “News”