Schaltungsnetz
Work in progress
Netzwerkschaltungen werden mit grünen und roten Kabeln gebaut und ermöglichen die Kontrolle von Empfangsgeräten basierend auf den auf den von Sendegeräten in das Netzwerk ausgesandten Informationen. Die meisten Sendegeräte sind Speichergeräte (z.B. die Storage chest), welche ihre Informationen auf einem bestimmten Kanal, basierend auf der Menge der gelagerten Objekte / Flüssigkeiten, aussenden. Jede Netzwerkschaltung beinhaltet einen Kanal für jeden Typ von Objekt oder Flüssigkeit, sowie 45 Virtuelle Signale, welche benutzerdefinierbar sind.
"Alles" (Everything), "Etwas" (Anything) und "Jedes Einzeln" (Each) sind zusätzlich vorhandene Platzhalter.
Insgesamt lassen sich das grüne / rote Kabel als ein Bündel von verschieden Signalleitungen vorstellen.
Verwendung
Informationen senden
Sendegeräte senden entweder die Menge der Gegenstände oder Flüssigkeiten die sie enthalten oder ein vom Spieler definiertes Signal in das Netzwerk. Jedes Signal wird als numerischer Wert auf dem Kanal gesendet der zu der jeweiligen Ware (oder virtuellem Kanal) gehört. Zum Beispiel sendet ein Tank, welcher 1000 Einheiten Wasser enthält, den Wert 1000 auf dem Wasser-Kanal.
Die Kanäle sind innerhalb des Kabels von einander getrennt, so dass jedes Netzwerk gleichzeitig einen Wert für jedes Objekt und jede Flüssigkeit im Spiel, sowie ein Signal für jeden virtuellen Kanal (die Nummern 0-9, die Buchstaben A-Z und 9 unterschiedliche Farben) beinhalten kann. Ungenutzte Kanäle haben dabei den Wert null.
Wenn mehrere Senegeräte zeitgleich einen Wert auf dem selben Kanal in das Netzwerk senden, so addieren sich diese. Wenn z.B. zwei Tanks 1000 Einheiten Wasser enthalten und beide den Wert in das Netzwerk senden, so wird auf dem Kanal der Wert 2000 anliegen.
Alle Kabel der selben Farbe, welche über ein Netzwerkgerät miteinander verbunden sind verbinden ihre Signale. Wenn zum Beispiel zwei rote Kabel am Eingang eines Kombinators angeschlossen sind, so summieren sich die Werte der jeweiligen Kanäle auf. Die Kabel sind also direkt miteinander verbunden. Dies kann zu einer Rückkopplung führen, wenn nicht vorsichtig vorgegangen wird. (s. Rückkopplung)
Jeder Kanal im Netzwerk kann einen Wert von -2147483648 bis einschließlich 2147483647 haben. Dies rührt daher, dass der Wert als "signed 32 Bit integer" gespeichert wird. Das heißt, dass wenn theorethisch der Wert 2147483657 wäre, er praktisch -2147483639 ist. (sog. Overflow)
Empfangsgeräte
Receivers can use broadcast information, in most cases to enable/disable the device.
They can either compare results between different channels, or compare a channel to a specific value.
Receiving devices sum all signals from each wire connected to them, even red and green wires. For example, if an inserter is connected to a red wire carrying a signal for 20 iron plates, a green wire with 10 copper plates and another green wire with 5 iron plates, the input signal set for that receiver will be 25 iron plates and 10 copper plates.
Devices
Each entity connectable to one of the networks has icons in its top right corner. By clicking the left icon, you have access to the circuit network settings (if one is connected), by clicking the right icon, you have access to the logistic network settings, if one is reachable. There can be set conditions for both circuit (signals of red and green wires are summed) and logistic network, which will together act as a logical AND.
These devices can interact with the circuit network:
Device | Possible output signals | Possible control options |
---|---|---|
Fließbänder | Transport belts can send their content to the Circuit network.
Pulse mode: The signal is sent for only 1 tick when the item enters the belt. Hold mode: The signal is sent continuously as long as the items are on the belt. |
Transport belts can be enabled on a condition. |
Greifarme | All inserters can send their held items to the Circuit network.
Pulse mode: The signal is sent for only 1 tick when the item is picked up. Hold mode: The signal is sent continuously as long as the inserter is holding the item. |
All inserters can be enabled on a condition. The inserter stack size can also be overridden from a control signal (configurable). |
Filter inserters | Same as above. | The filter inserters can additionally set their filters from the Circuit network. |
Kisten | All chests can send their contents to the Circuit network. Logistic chests additionally send their contents to the Logistic network. | |
Anforderungskiste | Same as above. | Its requested items can be set by the Circuit network. |
Lagertank | The storage tank can send its fluid content to the Circuit network. | |
Tor | Gates can send a signal to the Circuit network. | Gates can be opened on a condition. |
Zugsignal | Rail signals can send their state to the Circuit network. | Rail signals can prevent trains by passing on a condition (set signal to red). |
Zughaltestelle | Train stations can send the contents of a stopped train to the circuit network as well as read a unique train identifier code. | Train stations can send the contents of the Circuit network to the train to use it for wait conditions, as well as enable/disable the stop itself. |
Akkumulator | It can send its charge level in percent to the Circuit network. | |
Roboterhangar | It can send its logistic network contents or its robot statistics to the Circuit network. | |
Befeuerter Erzförderer | It can send the expected resources, either from the drill itself or from the whole ore patch the drill is on. | It can be enabled on a condition. |
Elektrischer Erzförderer | It can send the expected resources, either from the drill itself or from the whole ore patch the drill is on. | It can be enabled on a condition. |
Förderpumpe | It can output the current oil mining rate. | It can be enabled on a condition. |
Stromschalter | Power switches can connect power networks on a condition. | |
Programmierbarer Lautsprecher | Shows alerts and plays sounds based on circuit network signals. It can be used to make simple songs. | |
Lampe | The lamp can be enabled on a condition. If it receives color signals, it can set the given color. | |
Gewässerpumpe | The offshore pump can be enabled on a condition. | |
Pumpe | The pump can be enabled on a condition. |
Physical network structure
A circuit network consists only of those devices connected together with the same color wire. Wire can be strung directly from device to device, or across any intervening power poles. Wire length is limited by its previous connection.
Note that each connected set of wires forms a separate network. For example, it's entirely possible to have four red-wire networks and three green-wire networks. If red and green wires happen to touch the same power pole or device, the red and green networks will remain separate and will not link up . However, two red cables or two green cables will link if they touch. Use different colored cables to separate networks in close proximity.
- To connect wires or cables to a power pole, simply click on one entity, then on the base of the power pole.
- To erase a wire or cable connection, place the same color wire over an existing connection. You don't get the wire/cable back.
- To remove all connections from a power pole, shift-click on the pole. The first shift-click will remove all electrical connections, and the second will remove all red and green wires. You don't get the wires back.
- When connecting to a Arithmetic Combinator or Decider combinator, take care to connect the wire to the correct input or output side. Use ALT-Key-Mode to see direction of combinator.
- Hovering the mouse cursor over an item will highlight all wires which form the network of the item.
- Hovering the mouse cursor over a power pole which is part of a network will display the signals on its network. Some items like combinators will also display their input and output signals when hovered over.
Combinators
Combinators can function as both receiving and sending devices and allow more advanced functions to be used on a circuit network.
- The Constant combinator broadcasts up to 15 values on any of the channels for whatever networks it is connected to. (You cannot currently specify whether a value should be on the red or green channel; if you need different values, use two combinators, one for each color wire.) You can use any item channel or any of the virtual signal channels.
- Note that using two of the 15 slots to broadcast values on the same channel is the same as broadcasting the sum of the two values from one slot.
- The Arithmetic Combinator performs arithmetic operations on input values and broadcasts the result to the specified output channel. The input and output channels can be any item channel or any of the virtual signal channels.
- Connecting: The Arithmetic Combinator connects to a red or green network on its input side (the terminals are set into the main body and look like spark plugs) and performs an arithmetic calculation which is broadcast into the specified channel on its output side (the output wires appear to stretch out a bit from the body of the device).
- Feedback: Note that the input network and the output network are not the same network. Connecting the output network back to the input network will result in a feedback loop. For example, adding 1 to the value for Copper Plates and broadcasting it as Copper Plates is an action that results in an infinite loop if output is connected back to input. The value for Copper Plates will rapidly (but not instantly) shoot upward. (Fun fact: The rate at which it climbs is the current tick rate) This technique can be combined with Decider Combinator logic to make electronic clocks, gates, and other systems; see Combinator Tutorial for advanced techniques.
- Each: This combinator can use the 'Each' signal for both input and output, in which case all non-zero input channels will have the combinator's operation performed and broadcast on the output side. Having Each signals for input and output and using a non-changing operation (like adding zero) is equivalent to having a 'one-way' wire; all the information from the input network is copied to the output network, but the reverse is not true.
- Multi-network: The Arithmetic Combinator can be joined to both red and green networks on the input side and will sum their inputs.
- The Decider combinator functions much like an Arithmetic Combinator, but is designed to compare values. Essentially, it is a conditional. In terms of Connecting, Feedback, and the Each signal it functions as specified above. In addition, it can handle the Everything and Anything signals, and performs more complex functions than summing when attached to multiple networks. See the Decider combinator page for more details on how to use this.
Virtual signals
Virtual signals are special non-item signals. Other than the three logic signals, virtual signals do not behave differently from item signals.
45 virtual signals can be sent over a network. They include the digits zero through nine, the letters A through Z and the colors red, green, blue, yellow, magenta, cyan, white, gray and black.
Logic signals
Three of the virtual signals cannot be sent over a network but apply special logic to multiple signals.
Everything
Everything can be used on the left side in conditionals. The condition will be true when the condition is true for each input signal. The condition is also true if there are no signals. This means that the everything signal behaves as universal quantification.
The output of a decider combinator may also use everything. When used the combinator will output all signals that pass the condition. The everything and anything signals are the only signals used in conditions that can make multiple signals pass a condition.
Anything
Anything can be used on the left side of conditions. The condition will be true when the condition is true for at least one signal. This means the anything signal behaves as existential quantification.
Each
Each can only be used in left input side and output of decider and arithmetic combinators. The signal can only be used as output when also used as input. When used in both the input and output it makes a combinator perform its action on each input signal individually. The combinator will output the sum of each of the actions if only used in the input.
Tutorials
Circuit Network Cookbook - Example heavy tutorials; for beginners who want to get to know and use the benefits of the Circuit Network.
Combinator Tutorial - Mainly textual and detailed tutorials.
Logistic Network
The Logistic network used by Logistic robots is essentially a third network (a wireless one), along with the green and red wired network. The Logistic Network is based on proximity to a central Roboport.
Some devices can also be connected to the logistic network. If a device has conditions set for circuit and for logistic network, it will become activated if both conditions are true.
See Logistic network and Roboport for more information.
History
- 0.15.0:
- Significantly improved circuit network performance. Up to 25 times less CPU usage and 10% less memory usage.
- Added the Programmable Speaker: it shows alerts and plays sounds based on circuit network signals. It can be used to make simple songs.
- Train Stop can output the contents of the stopped train's cargo.
- Train Stop can be disabled using the circuit network. Trains will skip disabled Train Stops, allowing simple train control.
- Mining Drills can be turned on and off using the circuit network. They can also output the remaining expected resources.
- Pumpjacks can be turned on and off using the circuit network. They can also output the current oil mining rate.
- Added Modulo, Power, Left Bit Shift, Right Bit Shift, Bitwise AND, Bitwise OR and Bitwise XOR to the Arithmetic Combinator.
- Added additional operators to the Decider Combinator and Circuit Conditions.
- 0.13.0:
- Many machines are now connectible to the circuit network.
- Wire disconnecting is incorporated into the latency hiding.
- Wires are now highlighted on entity mouseover.
- Reduced memory usage of circuit network.
- 0.12.33:
- Fluid values are rounded to the closest value instead of rounding down when transmitted to circuit network.
- 0.12.1:
- One can copy paste circuit network conditions between the Inserter, Lamp, Pump and Offshore pump.
- 0.12.0:
- Improvements to circuit network connection, one can connect multiple wires of the same color to the same entity.
- The Lamp, Storage tank, Pump and Offshore pump can be connected to the circuit network.
- 0.10.0:
- Blueprints copy circuit network connections.
- 0.8.3:
- Circuit network contents info has colored slots to specify the network it represents.
- 0.1.0:
- Introduced