MalcolmCooks wrote:With the new circuit network reader/writer, will electric mining drills be connectible? my favourite use for the circuit network is to switch off mining when not needed, so the belts don't get clogged up with ore. If I didn't need to use smart inserters that would be very useful!
Why not just keep mining until the belts are saturated...?
Because my setups are based on only being able to handle nominal throughput, not maximum throughput of a belt. For reference: I realise most people have conveyer belts linking every single part of their factory, but I prefer producing things in batches, rather than continuously. It simplifies layout a lot and eliminates the need for belt-balancing except in very specific cases.
is there a update how you decided to make the new network?
And if you´re going to break the old builds, could you please (please, please) change the combinators to work on both wires seperatly instead of adding them up first? Would be great to have a combinator like "each red < each green output each red" or "each green * each red". The adding of both wires can be done with one combinator "each red + each green"
int type = all_items + all_signals;
//in and output from cables
int in_red[type];
int in_green[type];
int out_red[type];
int out_green[type];
//new options in gui
char left_color; //b=both (current behavior) r = red (newly added), g = green (newly added)
if (left_color == r){
char right_color = g;
newly add option right: all, any, each
}
//just vice versa
if (left_color == g){
char right_color = r;
newly add option right: all, any, each
}
//example for decider combinator (each red < each green: output all)
if (left_color == r){
if (left_type == right_type == (each || any || all)){
switch (left_type){
case each:
for (int i = 0, i <= type, ++i){
if (in_red[i] < in_green[i]){
out_red[i] = in_red[i]; //or 1 if output is set to 1 instead of input count
out_green[i] = in_green[i];
}else {
out_red[i] = 0;
out_green[i] = 0;
}
}
break;
case any:
bool temp = 0;
for (int i = 0, i <= type, ++i){
if (in_red[i] < in_green[i]){
temp = 1;
}
if (temp) {
out_red = in_red;
out_green = in_green;
break;
case all:
bool temp = 1;
for (int i = 0, i <= type, ++i){
if (in_red[i] >= in_green[i]){
temp = 0;
}
if (temp) {
out_red = in_red;
out_green = in_green;
break;
}
}
...
}
yeah, i really want to have this feauture for my logistic train network^^ its a pain in the ass with the current implementation