Page 1 of 1

Improve Basic Circuit Overview

Posted: Sun Feb 12, 2017 12:50 pm
by ssilk
Well I come to this cause I imported a blueprint from Optera's Logistic Train Network ( viewtopic.php?f=97&t=36976&p=242671#p242609 ).

This is how it looks in my map (I kept the original resolution, sorry for the size, that are mac screenshoots with retina display, you need eventually to reduce to 50%)
Screenshots
I quote from the thread:
ssilk wrote:
Optera wrote:
ssilk wrote: I didn't get it to run without that glitch. And after 1.5 hours I gave up to understand how this works. :) Not your fault. I think this is one of Factorios big, big fails, that it is currently hard to impossible to debug/re-engineer circuit network: you cannot follow the wires. I cannot see, where what is connected. :)
even when I designed something myself I often miss connections in this mess... There should be some form of "logic connection mode" showing at glance all connections and the signals on them, I bet you have a whole collection of requests for something like that.
:) Yes. I just looked (viewtopic.php?f=80&t=22760 , viewtopic.php?f=80&t=18153 , viewtopic.php?f=80&t=30845 and much mentions besides the threads). But not so much as I thought. :?
Maybe we should push this as a an important suggestion? cause I think this hinders really playing with a bit more complex circuits than standard. :)
So I tried to analyze what really is needed to improve the circuit network, that a player is enabled to understand it and keep it understandable for himself. Most of the issues you can see in the pictures above:

- You don't see the connection-points: Is this wire now going into that device or does it just look like?
- Wires overlap. Even with the highlighting this overlapping can be misinterpreted.
- Wires are hard to recognize (Too thin, too pixelated).
- Wires are virtual. You cannot touch them once placed: a) What happens if I remove this wire? Impossible to find out, cause you cannot interact with a wire. b) Shit I have made the wrong connection. Where is the UNDO-Key?
- You don't see the signal flow: This output has changed and now that is the new value. Now stop simulation! When this signal goes into this device it will change it's value like so. Ah! But: Unable to debug step by step.
- The handling is a mess: In reality I would make a prototype first. And I don't want to keep an eye on the number of wires, combinators, poles, etc. I just want to plan it first, then prototype it. Placing and mounting of the circuit is a completely different task.

So I mean it is clear, that the circuit network as it is, cannot be used well to share semi-complex circuit blueprints, cause the person, that uses it is sometimes not able to engineer it. He needs to look like a handicapped person on the wires: he cannot touch them. :)

What is needed to improve this?

- As Optera already mentioned: A "logic connection mode":
Image
You see the wires and devices very schematic and especially you see, where the wires connect.

- Also some kind of commentary:
Image

- Wires needs to be handled with the mouse and can be moved around:
Image
You can grab the wires on both ends and plug it into a different plug/device...

- You need to see, what's going on IN the wire. Now you need to place a pole anywhere and connect the circuit with a wire.

- A prototyping mode would be super-cool: I want some kind of empty surface/edit-mode where I can place any device and wire as I like it and when finished I can drag everything to the right place and orientation, and place that as ghosts.

- And vice versa: Copy a part of the world into this surface/edit-mode and edit it. See above.

- A debug mode would be perfect. :)

Re: Improve Basic Circuit Overview

Posted: Wed Feb 15, 2017 2:45 pm
by Shiandow
I think it would already help a lot if pressing alt showed not only the signals chosen as inputs and outputs (which is already an option) but also their current value. And it'd be nice if the operator was still readable. I'd imagine this would look something like the following:

Image

It works quite well for horizontal combinators, but with vertical ones you run out of space... Also showing the value for 'each' or 'any' signals is difficult, but even if you leave that out you can at least see what the combinator is doing.

Re: Improve Basic Circuit Overview

Posted: Thu Feb 16, 2017 6:20 pm
by Hugedata
What would be ideal would be to have another view layer that just shows the circuit network. Similar to what the old Sim City games did with the layer for water and subways. That way you could get all of the normal clunky graphics out of the way to see what is going on with your circuits. Maybe have only the items that are connected show up on this layer in a sort of 'ghost view' i.e. semi transparent.

Just a thought

Re: Improve Basic Circuit Overview

Posted: Sun Feb 19, 2017 4:10 pm
by ssilk
Yes, that might be one option, so added to viewtopic.php?f=80&t=18153 Information-Layers (for map and/or normal view)

Re: Improve Basic Circuit Overview

Posted: Sat Apr 08, 2017 12:22 pm
by ssilk
I point here also to

viewtopic.php?f=193&t=43738
which includes this nice pic:

Image

I find this schematic overview really useful.

Re: Improve Basic Circuit Overview

Posted: Sun Jul 30, 2017 10:51 am
by wvlad
Still relevant, please implement this! Currently circuit networks are just unmaintainable. E.g. reverse engineering other people's circuits is impossible until you are very experienced with circuits.

Re: Improve Basic Circuit Overview

Posted: Wed Apr 14, 2021 11:04 am
by Krid
Yepp found it after my related Post: Combinator Grouping / Naming

Re: Improve Basic Circuit Overview

Posted: Sun Nov 28, 2021 6:31 am
by FuryoftheStars
Agree and support. So many combinator setups I have blueprinted not for time sake, but because I can't actually figure out how they work.

Re: Improve Basic Circuit Overview

Posted: Mon Nov 29, 2021 4:26 am
by NotRexButCaesar
You can always use the PickerDollies mod to help spread things out & make them more readable.

Re: Improve Basic Circuit Overview

Posted: Mon Nov 29, 2021 6:40 am
by ssilk
I use that mod always, it should be in vanilla. :)

But it doesn’t help much for more complicated or complex stuff. It’s just an annoyance to have the idea in mind, but not being able to implement it, because you lose the track, because the user-interface is so hard to read.

Re: Improve Basic Circuit Overview

Posted: Mon Nov 29, 2021 7:10 pm
by mrvn
Most people cram their combinator construction into the minimal area so they are easier to use. But that generally makes them impossible to understand with wires going every which way and overlapping. It's near impossible to see if a wire just goes through a connection point or is actually connected.

One I idea I like is https://mods.factorio.com/mod/circuitissimo

Combinator circuits can be build on a separate surface with lots of space between them. You could even add comments using text plates or support placing floating texts.

One problem is still that wires always go from one combinator directly to another. Often crossing other combinators or even connection points. Or wires end up on top of each other.

Placing the combinators carefully can minimize this but isn't always practical. I think it would help a lot to add mini poles that you place just to route the wires through them. That would allow routing wires more like in this example:

Image

At minimum you would place one mini pole at the places with a dot where 3 wires come together. More mini poles if you want the 90° corners too. Maybe a less noticeable mini pole for that case while the 3+ wire poles show the equivalent of the little dot to make it clear the wires do connect here. Implemenation wise the power poles could be electric poles with 0 copper connections and 0 height.

I don't think it would be possible to have the game take a combinator creation, explode it and reroute wires to make them not overlap or otherwise too confusing. Routing wires in circuit boards is a hard problem that can take hours even for fairly suboptimal results. It simply wouldn't scale well. So my focus would be allowing users to setup the wire routing nicely without it affecting the used space for the finished combinator. Something like circuitissimo allows for that.

Also a big +1 for being able to touch the wires. Expanding on this a bit:

One should be able to place a mini pole on top of a wire and have it automatically connect to the pole. Or grab a wire in the middle and drag it over to a circuit connector (either combinator, electrical pole, chest, belt, ... or mini pole) to connect it across it. Or using the wire tool select a circuit connector and then select a wire to make it connect. Dragging a wire could also automatically add a mini pole where you release it if there is no circuit connection close to there.

For the opposite effect one should also be able to remove a mini pole or combinator without breaking the wires. If a wire goes from A to B to C and you remove B then a wire connection A to C should remain.

Last if A, B, C, D connect to E then it should be possible to grab the wires at E and drag them away to somewhere else (call it F). On release there should be wires connecting A, B, C, D, E to F.

It would also be helpful to have a dedicated tool to break wires. Select the tool, click at a wire anywhere on it's length and the wire gets removed. No need to hunt for both circuit connectors of the wire. For this hovering over the wire should highlight only the wire segment that will be removed, not the whole circuit network the wire is part of. Or highlight the whole network and double highlight the wire segment so both can be seen. Extra bonus points if there is an indicator when the circuit network will be split when a segment gets removed.

More wire colors could help too. A mod could visualize wires with more colors while still only using red/green internally. It would then not allow using a new wire color when it can't be mapped back to red/green wires. Kind of like the colors for rail segments.

Re: Improve Basic Circuit Overview

Posted: Tue Nov 30, 2021 4:39 am
by NotRexButCaesar
mrvn wrote:
Mon Nov 29, 2021 7:10 pm
I think it would help a lot to add mini poles that you place just to route the wires through them.

Implemenation wise the power poles could be electric poles with 0 copper connections and 0 height.
I use constant combinators with no signals as “mini poles”