Friday Facts #123 - Better circuit network (Part 2)

Regular reports on Factorio development.
User avatar
ssilk
Global Moderator
Global Moderator
Posts: 12888
Joined: Tue Apr 16, 2013 10:35 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by ssilk »

Olix wrote:'Circuit Network Connector Writer'? It sounds like a class name from Java or similar.
http://fun.drno.de/pics/english/melodys ... guages.png
I think you should try to think of some names for this and the other new objects that are more concise. For instance, I quite like the word 'Actuator' that is used by the Smarter Circuitry mod. And maybe 'Sensor' for the 'Readers'?
That sounds very useful!
Cool suggestion: Eatable MOUSE-pointers.
Have you used the Advanced Search today?
Need help, question? FAQ - Wiki - Forum help
I still like small signatures...

daniel34
Global Moderator
Global Moderator
Posts: 2761
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by daniel34 »

If you're interested in programming languages and their history/development, that's actually a very interesting read: https://en.wikipedia.org/wiki/Plankalk%C3%BCl [Wikipedia - Plankalkül]
quick links: log file | graphical issues | wiki

ikarikeiji
Long Handed Inserter
Long Handed Inserter
Posts: 95
Joined: Sun Jul 12, 2015 6:28 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by ikarikeiji »

I have a suggestion for the train controlling.

Connecting a "Reader" to a track reads whether there is a train in the block (i.e. whether a signal facing into the block would be red).
Connecting a "Reader" to a signal reads whether the signal is red.

Writers could have two conditions for two different "levels" of how much they affect the train network.
Connecting a "Writer" to a track, at level 0 does nothing, at level 1 makes the game behave like there was a train on the track (so that signals leading in become red), at level 2 makes it like that the track didn't exist (so trains don't path through that track piece).
Connecting a "Writer" to a signal, at level 0 does nothing, at level 1 makes the signal behave like a chain signal, at level 2 turns the signal red.

I believe with these you could make fancy prioritisation or time-division signal systems, which is something I've wanted to do for a while, as well as make a safe at grade crossing (manually switch constant combinator -> turns signals red), and just generally be able to have the factory react to a train showing up.

Also +1 to whoever it was that suggested calling them "sensors" and "actuators".

Also also, they should be able to connect to gates. Readers tell whether it's open or not, writers force it open (or force it closed).

Also x3, the newspost mentions turning belts off and determining number of items on belt. Does this mean just one belt square, or the whole line of connected belts (traversing corners but stopping at merges/splitters/side-loaders/perpendicular underground belts)? Because the latter would be much more useful than the former :)

User avatar
Dr. Walrus
Long Handed Inserter
Long Handed Inserter
Posts: 96
Joined: Fri Nov 20, 2015 6:30 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Dr. Walrus »

I honestly cannot see why these changes seem like a good idea to anyone. I like the way the game works now where entities that connect to the circuit network either read a value or write a value to the circuit network. Its simple, doesn't clutter up space, and systems are easy to build, like a pump next to a storage tank that only runs if the tank is over a certain limit. It currently requires a pump, a tank, and 1 wire. Under this new system, it will require an additional 2 spaces for circuit network connectors for (in my eyes) no real reason and no more enjoyment for the player. And any large bank of chests used for storage will now take up twice the space in order to send their signal to the circuit network for the player to monitor their materials stored.

I like the idea of accumulators, drills, roboports, and train stations being attached to the circuit network, but why not make them compatible with the system already in place? Accumulators could send out their stored energy as a new virtual signal. Roboports could be attached to the circuit network and their contents would be added to the network signal. Train stations could have both a read and write attachment point, the write point showing the inventory of the train currently at the station, and the read point be configurable similar to a lamp's read point, which will give the train a true/false condition for the new train controls to work with. I just don't see why we would need to litter our factories with a circuit network connector to accomplish this.

When it comes to turning off and on entities, I don't see why this new system is needed. Assembly machines can already be turned on/off using smart inserters or pumps, and now they will be also be able to be turned on/off by cutting the power with the power switch. Bringing back the filter inserter would be nice to cut down CPU usage for players who only use the smart inserter for its filtering properties, but I'm not aware of any huge performance issues from using lots of smart inserters.

It just seems to me that this update will make the game needlessly more complex, both building wise and user interface wise. It will also gameplay wise and a big obstacle to any player who wants to add small circuit network controls to their factory. I love how the system works now. Its simple and the circuit network GUIs are not at all difficult to understand. If the game get updated as described I for one will loose a lot of interest in using the circuit network. :(
DaveMcW wrote:I would like a "push-button" entity, that when clicked, generates a circuit network value for 1 tick and then resets itself.

Or at least an easy way to make a power switch act like a push-button.
Ive got a mod that does exactly that. It adds a pressure plate that sends a circuit signal when you stand on it. Clicking is a bit harder, the best I can do with the current game is a switch that turns on/off when you rotate it, or turns on/off when you click it using the wrench mod.
Last edited by Dr. Walrus on Sun Jan 31, 2016 10:31 pm, edited 4 times in total.

User avatar
The Phoenixian
Fast Inserter
Fast Inserter
Posts: 209
Joined: Mon May 26, 2014 4:31 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by The Phoenixian »

Last week I mentioned that I felt aggressively limiting the number of entities in the game could go too far.

This, I think, is a good example of that.

Removing the smart chest and filter inserter dramatically limits the simplicity of certain operations, such as item counting in train stations: With the smart chest as an intermediate upgrade that every player will build there is little incentive not to use that functionality, be it counting the ore supply in your mines, or deciding not to produce a good once a storage limit is reached. Some of this will still be basic later, (anything named "pipes" for one) others not.

Right now the barrier to entry in wiring stations, for example, is fairly low and is mainly limited by the task of long distance wiring. In a lot of ways, that's an solution that's only waiting for the player to have a use for it, any use at all. Before that use was met with indicator lights for distant storage. With the proposed changes to stations in the circuit network update it could be used to disable a station until a certain buffer limit is reached. I cannot overstate how very fine an introduction that would be to the circuit network introduction to have a thing that is just there with all the parts in place just incidentally, patiently waiting for you to do it.

With the removal of smart chests there is far more reason not to use the circuit network in that same basic case: Not only does the size increase mean you have to plan to use it from the beginning, meaning that a new player upgrading towards using the circuit network for a train station, their storage, or a ore buffer faces not only the challenge of wiring up everything and upgrading his inserters and chests, but also of doubling the space they give to the system, and at worst ripping out their entire old setup in order to increase the space because they didn't plan ahead. (Because, after all, they were new.)

tl;dr:

In short, having some objects directly connectable to the circuit network without the use of an intermediary component creates a lower barrier to entry and the fact that smart chests allow you to effectively "just add wires!" makes it very easy to move from a dumb system to a smart one. As things stand, this more forgiving system could serve as a tutorial with no text or voice, one that needs only the underlying design of the game to explain itself.


Beyond that I do have some efficiency concerns, mostly for trains, but everything I would say has already been said.
The greatest gulf that we must leap is the gulf between each other's assumptions and conceptions. To argue fairly, we must reach consensus on the meanings and values of basic principles. -Thereisnosaurus

Rahjital
Filter Inserter
Filter Inserter
Posts: 435
Joined: Thu May 29, 2014 10:44 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Rahjital »

Sounds interesting, but won't this limit building possibilities in some ways? After all there's only a certain limited amount of spots around your machinery, so the amount of combinations you can make is finite. Won't chests be reduced from 5 "inputs" (4 machines at each side + circuit network) to 4 inputs (4 machines at each side, circuit network replaces one)?

I've got this low-tech circuit controlled storage depot that sorts different kinds of ore, stores up to 100k of each and keeps it balanced between chests, and stops trains at outposts when it gets over 80% capacity. How would one make this work in the new version of Factorio? You could probably do it with robots, but that comes later in the game and is probably a lot more expensive.

sekanz
Inserter
Inserter
Posts: 26
Joined: Sat Aug 08, 2015 12:15 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by sekanz »

I, for one, am excited about the new features. So the bases are going to be larger... I'm all for it! What factorio player wouldn't like some additional complexity?

AmbulatoryCortex
Inserter
Inserter
Posts: 33
Joined: Sun Jul 26, 2015 1:13 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by AmbulatoryCortex »

sekanz wrote:I, for one, am excited about the new features. So the bases are going to be larger... I'm all for it! What factorio player wouldn't like some additional complexity?
Additional complexity is detrimental when it doesn't add anything meaningful.

ske
Filter Inserter
Filter Inserter
Posts: 411
Joined: Sat Oct 17, 2015 8:00 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by ske »

Transport belt: turn it on and off and read the number items that are now on the belt.
I'm getting excited! :P

Can we actually read the number of items on a whole length of belt or is it just a few tiles?

Can we please have this feature yesterday?

User avatar
Dr. Walrus
Long Handed Inserter
Long Handed Inserter
Posts: 96
Joined: Fri Nov 20, 2015 6:30 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Dr. Walrus »

This circuit network update seems like it incorporates a lot of the concepts of the Smarter Circuitry mod. I really liked the concept of the mod, and it seemed like it should be a future part of the vanilla game. The problem with using the mod in practice is the same as my big objection I have to this circuit update, the requirement of using a circuit network connector. Using the directional sensor in the mod allowed the player to monitor information from trains and assembly machines and other entities. But it felt tacked on and not intuitive. However it was necessary to be included in the mod as a crutch because that was the only way for the mod to get the internal data from the entities it interacted with and send it as a circuit signal. The developers of the game have much greater control over the game than the modders do, so they don't need to use workarounds like the creator of the smart circuitry mod had to.

At the very least, the Smarter Circuitry mod didn't change how any of the existing circuit network worked. This update will overhaul and remove a lot of what I like about the way the circuit network works and that makes me very disappointed.

Also I've heard people talking about now thanks to this update players will be able to control long handed inserters with the circuit network. I don't think they need to be able to be controlled with the circuit network. All this would be doing is removing some of the uniqueness and balance from each inserter type. Additionally, if the player really wants to control a long handed inserter, they can either download a mod like this one that adds smart long handed inserters to the game, or they can use the upcoming power switch to use a circuit condition to cut power to the long handed inserter.
Last edited by Dr. Walrus on Sun Jan 31, 2016 10:32 pm, edited 1 time in total.

kovibear
Burner Inserter
Burner Inserter
Posts: 6
Joined: Fri Jun 13, 2014 2:35 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by kovibear »

I don't post very often, but definitely feel the need to voice my dislike of these changes.. at least, on paper.

Massive changes to the way the smart functionality and the things attached to them seems like a lot of work for what I (and clearly multiple others) don't see as an improvement. It feels a lot like complexity for the sake of complexity. I don't know why it wouldn't be easier to have toggles on smart devices that enable or disable their "extra"/"optional" features like logistics check-ins. I'd be way happier to see component cost increases, or other "nerfs" than another hit to an already suffering and limiting layout options.. and I say that as a player who has been using my own 90-degree inserters mod for over a year. It's so odd seeing so many things be rotatable for layout orientation and convenience, but then things like this be arbitrarily added for a sake of "consistency"?

I just don't really see how needlessly adding an extra block to do something that is already explained with the components of an object (smart devices are made smart by specific electronic components) can be perceived as anything but a waste of development and programming time. I'll withhold final opinion on it until we see the final implementation, but right now.. I'm not seeing anything good coming from it.

I definitely see the applications and need for an official sensor-type object that will allow us to detect build logic around conditions of blocks they pointed at (detecting inventory of train cargo, fuel, etc..) to couple more functionality with what is already in place. Sensors, train logic implementation, and a few other logic objects will pretty much give us players everything we need and want for the majority of applications we can't currently achieve.

All of that said, you're the developers of the game and what you feel is the right choice for balance and optimization is ultimately your choice.. but I personally see these changes being something a majority of veteran players (the people who have supported and played the game for this long) will mod out, assuming they actually go through. It's possible there's more to it that we're not seeing or isn't being explained ideally, but I'm just concerned about these changes. You guys are great about taking feedback and working with the community to make the best choices, and I just hope that the best compromise or option for everyone is what ultimately gets implemented.

Looking forward to seeing how the changes unfold or evolve, though.. and hoping I wind up being wrong. :)

Cbrad24
Inserter
Inserter
Posts: 29
Joined: Sun Dec 20, 2015 4:36 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Cbrad24 »

ikarikeiji wrote:I have a suggestion for the train controlling.

Connecting a "Reader" to a track reads whether there is a train in the block (i.e. whether a signal facing into the block would be red).
Connecting a "Reader" to a signal reads whether the signal is red.

Writers could have two conditions for two different "levels" of how much they affect the train network.
Connecting a "Writer" to a track, at level 0 does nothing, at level 1 makes the game behave like there was a train on the track (so that signals leading in become red), at level 2 makes it like that the track didn't exist (so trains don't path through that track piece).
Connecting a "Writer" to a signal, at level 0 does nothing, at level 1 makes the signal behave like a chain signal, at level 2 turns the signal red.

I believe with these you could make fancy prioritisation or time-division signal systems, which is something I've wanted to do for a while, as well as make a safe at grade crossing (manually switch constant combinator -> turns signals red), and just generally be able to have the factory react to a train showing up.

Also +1 to whoever it was that suggested calling them "sensors" and "actuators".

Also also, they should be able to connect to gates. Readers tell whether it's open or not, writers force it open (or force it closed).

Also x3, the newspost mentions turning belts off and determining number of items on belt. Does this mean just one belt square, or the whole line of connected belts (traversing corners but stopping at merges/splitters/side-loaders/perpendicular underground belts)? Because the latter would be much more useful than the former :)
+1 to this. Need gate control and some bare minimum of turning a signal red. Wanted to make safe crossings for so long (I play with my 12 year old brother who dies on trains every now and again + It'd be awesome to setup :D ).
Apart from that the new control sounds good, but reading through all this thread there is some good improvements to be considered.

Swich
Burner Inserter
Burner Inserter
Posts: 11
Joined: Thu Feb 12, 2015 11:33 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Swich »

I think it's a good choice. It makes some logic more simple. I think it's the way final game should look: you just have few simple components, and few logical component to control simple. And from this you don't need to think "I have only smart inserter", or "I need to make something to control charging and discharging accumulators". Of course, this things make some kind of challenge in the game, but I think it will be better when you have some simple construction's block, which you can connect to each other and make some complex and great thing. And the process of construct don't need to make special challenge, I think the freedom in construction and more possibilities in function will be much better. It's sound great, when you don't need to think about smart inserter, or anything else like this, and just place any kind of inserters, and connect it to some kind of "smart controller" which will control how it work. I think it's also a more "natural" way to constructor difficult things. I can't wait to try this type of construction!)
Hindenobyl wrote:Am I understanding correctly, that every single entity that we want to have a circuit condition is going to need its own circuit network condition writer? For example, if I have 32 red circuit factories that I only want working on a single network condition, I will also need 32 writers next to each assembler? If that is the case that sounds incredibly and unnecessarily tedious.
I also hope you can connect 1 writer to many things.)

Kalanndok
Long Handed Inserter
Long Handed Inserter
Posts: 58
Joined: Sat Dec 12, 2015 9:07 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Kalanndok »

Swich wrote:I also hope you can connect 1 writer to many things.)
That's what got me concerned...On the reader side it is supposed to actually be like that. That's why they wrote lamps would stay as they are so that you don't have to put a reader to each lamp. So that would imply that for the writer you'd also need one writer per chest to put on the wire.

Fatmice
Filter Inserter
Filter Inserter
Posts: 808
Joined: Thu Dec 04, 2014 11:03 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Fatmice »

Why can't the two new objects be one, call it a local controller, and allow it to have an area affect where it can service or sense things, much like the beacon? This would ameliorate the concern that 1x1 entity will complicate the layout of things. Drop this maybe 1x1 entity with a service area of say 5x5 in the middle of some entities you want to control and it will give you sensory information and control points for the entities. Registration/unregistration of entities to this controller is based on seniority if there are overlaps. Access to individual entity under the service area is by index where you simply number them ascending starting with 1 from upper left to bottom right. This allows the turning on or off of certain entities when condition is satisfied. There should be some global control like turning off all entities or change recipes of all entities. I think these changes would make the new object more liken to a combinator and not some dangling modifier.
Maintainer and developer of Atomic Power. See here for more information.
Current release: 0.6.6 - Requires 0.14.x
Example build - Requires 0.14.x

Uristqwerty
Inserter
Inserter
Posts: 20
Joined: Tue May 06, 2014 8:00 pm
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Uristqwerty »

Sounds like an interesting change with valid motivations; too bad it's attracting the all-too-common response of "it sounds less convenient than what I'm used to, therefore it will suck".

Kalanndok
Long Handed Inserter
Long Handed Inserter
Posts: 58
Joined: Sat Dec 12, 2015 9:07 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Kalanndok »

Uristqwerty wrote:Sounds like an interesting change with valid motivations; too bad it's attracting the all-too-common response of "it sounds less convenient than what I'm used to, therefore it will suck".
The complaints are rather "If it works how it appears to work I'll be required to refactor all my combinator builds which got distributed through 50 outposts via blueprints."

psihius
Fast Inserter
Fast Inserter
Posts: 192
Joined: Mon Dec 15, 2014 12:47 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by psihius »

Kalanndok wrote:
Uristqwerty wrote:Sounds like an interesting change with valid motivations; too bad it's attracting the all-too-common response of "it sounds less convenient than what I'm used to, therefore it will suck".
The complaints are rather "If it works how it appears to work I'll be required to refactor all my combinator builds which got distributed through 50 outposts via blueprints."
Make a new blueprint, copy-paste.
Yes, it will take some work, but really, in Factorio, that can be automated :D :twisted: :twisted:

What I would really like them to fix, is train positioning. So we can finally have predictable station loading/unloading layouts and inserters on the sides not having to reach into the middle (although, writing it, did they actually fix it in 0.12.x? I don't see that happening any more in Arumba/Steejo current play-though...)

Oxyd
Former Staff
Former Staff
Posts: 1428
Joined: Thu May 07, 2015 8:42 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by Oxyd »

psihius wrote:What I would really like them to fix, is train positioning. So we can finally have predictable station loading/unloading layouts and inserters on the sides not having to reach into the middle (although, writing it, did they actually fix it in 0.12.x? I don't see that happening any more in Arumba/Steejo current play-though...)
Inserters reaching into the middle of the cargo wagon was fixed in 0.12, yes.

ske
Filter Inserter
Filter Inserter
Posts: 411
Joined: Sat Oct 17, 2015 8:00 am
Contact:

Re: Friday Facts #123 - Better circuit network (Part 2)

Post by ske »

One change I'd like to see is having this as a module instead of extra entitity on the map.

Right now I don't like the module system because it's pretty unspecific and works like magic spells making a factory faster or consume less energy. That doesn't really make sense.

Having a logic module, a transport module etc. to be inserted into other items like assemblers, inserters, chests, turrets, etc. to give them extra abilities would make much more sense to me.

Insert the logic module into something and you can attach a wire to it.

Insert the logistcs module into something and it can send/receive items.

An assembler requires a motor. You can insert a coal burner motor, a diesel engine or an electric engine and the result is different speeds.

Post Reply

Return to “News”