Enable/disable mall parts

Don't know how to use a machine? Looking for efficient setups? Stuck in a mission?
Post Reply
Tertius
Filter Inserter
Filter Inserter
Posts: 675
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

Enable/disable mall parts

Post by Tertius »

I'm currently searching for the best method to enable/disable certain mall parts, for example to enable all nuclear power plant parts production only if I want it.

It's mainly intended for the building phase of the mall itself. While building, it should start produce only items required for building itself and omit all the expensive items not yet needed. It's for an endgame/megabase mall that's able to produce everything in high quantities. Not science, only production entities like inserters, belts, miners, modules etc. But to get it built up, it first has to focus on helping the existing mall produce the stuff to get the new mall up and running.

So I'm searching the best way to signal all the input inserters for the not yet needed assembling machines to not activate, so they don't steal all my steel and circuits.
  • I could create tiered copies of the mall blueprint and remove all assembling machines for the not yet needed items. So there is no signalling required in the first place. But tedious if I want to change the mall - all tiered copies have to be remade as well.
  • I could wire them all and switch them on/off with a constant combinator. However, that requires tedious wiring, which would also create an ugly circuit wire web all over the mall.
  • Or I could connect them to the logistic network and use information from the logistic network that's present anyway. No wire, instant connection. I could set the inserters to activate only, if there is some item available in the network. An item not usually present in the mall's logistic network but put manually into it by me. I came up with the blueprint (blue), upgrade planer (green) and deconstruction planner (red) items - they will never be created by an assembling machine, but I can create them manually. The only caveat: they cannot be stacked. So to send a red signal (deconstruction planner) with value 3, I need to create and put 3 distinct planners. (Idea: 0=only essential items, 1=essential+not so essential, 2=everything except optional, 3=everything. )
    That's not too tedious, but I fear I forget about this detail some time later, and during some manual cleanup I remove duplicate items, so parts of my mall deactivate unintentionally.
tl;dr:
Any idea how I can create and send arbitrary signals out of thin air into the logistic network, in a way I can do this with a constant combinator in the circuit network?

Are there better suited items than I already found? Can I somehow stack blueprint-like items?

I know it's somewhat misuse of the logistic network, because the signals are there for a reason: they only count items available to the network. They cannot exist without being backed by physical items. What cannot be carried by robots, cannot be present as signal in that network.

Any other, totally different idea, totally different approach?

mrvn
Smart Inserter
Smart Inserter
Posts: 5709
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Enable/disable mall parts

Post by mrvn »

You could just put all the essential items at the start of the belts so they consume all the input and nothing reaches the assembler that builds nuclear reactors. Only when the belt, inserter and assembler production backlogs would the extra items be produced. Or, if you can't sort it like that, you could read the belts contents at the end of the belts and program the inserter for the extra items to only activate once there is something at the end of the belts.

Both assume that you consume more raw materials than you can input into the mall. But if you can throw more resources at the mall than is needed to build essential stuff then what is the harm in building nuclear reactors from it?


The problem I think you have with your idea is that it won't work for building a new mall. There is no way to blueprint the whole thing and then have the bots build the essential parts first that lets the mall produce the material for the rest of the mall. And circuit control won't work when some parts are ghosts as the wires won't be placed and signal transmission will be broken. The build order of a blueprint is pretty random. You need to make at least 2 blueprints: First just the essential part to produce belts, inserter and assembers. Wait for that to build and then a second blueprint for the rest of the mall. And then you might just wait long enough between blueprint to produce all the belts, inserter and assemblers you need to finish the mall.

Another problem I have building the mall is that when I start building the mall I don't have the recipes for all the things I want in the mall. So there is no way to build nuclear reactors or even just trains at the point in the game where you would want a mall. So it kind of makes sense to have a mini mall first that produces early game stuff. And then later build a larger mall or extend it. By the time you hit the endgame and have all the recipes isn't it trivial to produce all the items to build a new mall before you blueprint it? Or the mini-mall will just produce it. Don't take down the mini-mall before the full mall is finished building. Problem solved.


So here is my solution:

0) starter setup to produce stuff from chests, no belts
1) sparse mini-mall blueprint with just enough to produce stuff, replaces starter setup
2) update blueprint to improve throughput and update assemblers to blue
3) update blueprint to add recipes and go to yellow assemblers

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

Re: Enable/disable mall parts

Post by mmmPI »

Tertius wrote:
Sat Dec 09, 2023 5:34 pm
tl;dr:
Any idea how I can create and send arbitrary signals out of thin air into the logistic network, in a way I can do this with a constant combinator in the circuit network?

Any other, totally different idea, totally different approach?
The system i like to use for my nuclear reactor/turbines/heat exchanger mall limitation is not the same i would use for a mall that build itself overtime.

For the first one i like to have the giant web of wire so that green wire hold (negative) required quantity, and red wire current quantity sitting in chests. Then anywhere on the mall you can add a constant combinator adding negative things on the green wire.

All inserter outputting from assembly of the mall connected to red and green wire and activate when the item they would output from an assembly machine quantity is inferior to 0. This allow to turn on/off the constant combinator that would request the mall items in a quantity desired for a blueprint. One can have a constant combinator with the amount of material for a rail junctions, and then multiply this by 40 and send it to the green wire to request that 40 junctions worth or rail and signal and power pole or whatever be built and sit in chest by the mall. One can enable/disable request like that.

This will become super easy to change thanks to the logistic group in 2.0

You can somehow already use a similar system if you connect all the inserter to a wire that is itself connected to a robotport. (instead of the red wire connecting to local quantity) It's not out of thin air, but it allows to inject value to what is in the logistic network so that the mall avoid producing things that are sitting in chest in excess somewhere else in the factory depending a on a threshold written in a constant combinator, you don't need 1 giant neb of wire, only little island connected to roboport in the same network.

You could also manually enter all the chained the conditions for it to work without any wire at all, by that i mean if you want to first build 300 yellow belt, before building 50 splitter, you can connect the inserters outputting from the assembly machine making splitters to the logistic network ( out of thin air) and hardcode the condition that they are not active unless there is at least 300 yellow belt in the network. And you could connect similarly the inserters feeding the assembly machine making the splitters to only be active if splitters are under 50 so that it doesn't overproduce when the 300 belts are there. No wire, nothing to forget about, but tedious. It can be made so that you are sure that things used for making the mall itself are made before things like reactors, because as long as the mall is building itself, there will never be 300 belts in stock but when they are all placed on the map, they will start to accumulate in the network. So 300 isn't even necessary, 50 would do, it could be seen as "wasted material" even if more than 5 accumulating in chests regarding your purpose.

If you are not using belts for your mall there may be something to do with setting up the request for the requester chest instead of controlling the inserters to avoid buffering material needlessly. It is possible to create 1 time request. So if you have a blueprint of your mall with 125 yellow assembly machines, you can already beforehand make sure to configure a 1 time request of 250 assembly 2 and there would be no risk to overproduce because the machine would be starved. That require circuitry though.

I'm not sure those are better or even different approach than what you describe, i'm not sure i understand the decon planner/ blueprint item thing you describe.

You could use mods too, one to tell you if item are missing in the logistic network i know there is a mod for this, and the recursive blueprint mod, to trigger the pasting of the next part of the mall , when there is no more item missing item in the logistic network of the first part of the mall. It also require circuitry but i expect you to find it easy anyway :)

How do you define best method ? how do you rate the fun ? the difficulty ? the way it looks when it is finally working ? the uniqueness of the solution ?

Because if you want a difficult , good looking and unique solution , there may be something to do with trains that bring material and enabling station only when a train has departed due to inactivity when trying to unload material in a previous station so that you are sure the first part of the mall has built everything it need before the second part is serviced. I would find that good looking but i also like the way the web of wire look , it's just a pain to make, if the goal is to find the weirdest way to achieve the task, this is an endless fun :)

Tertius
Filter Inserter
Filter Inserter
Posts: 675
Joined: Fri Mar 19, 2021 5:58 pm
Contact:

Re: Enable/disable mall parts

Post by Tertius »

Many thanks for the thoughts and ideas.

May be it was an error to not describe the idea more thoroughly I was preferring.
The general concept of the mall is that it uses belts to provide the input items to assembling machines. All produced items are put into passive provider chests (or storage chests with a filter, I'm not decided yet), so they are immediately available to the logistics network.

Now there is the signals "out of thin air" part. It might have slipped, but you can connect most entities with one click to the logistics network, without wire. Just activate it in the top right corner of the entity's configuration menu by clicking the wifi icon, than check "connect". The activation condition you enter now is directly supplied by the items in the network currently available. Works like magic.

In this place, I handled the input inserters and output inserters for the assembling machines differently. For the output inserter of the solar panel assembling machines, I set "[solar panel]" < 400, so no more items are output if there are 400 pieces available. For the input inserter(s) of these machines, I set "[upgrade planner]" >= 1. So these machines don't even begin to produce, unless one or more upgrade planners are available in the logistics network. Since there are none by default, no solar panels are produced in the first place. Only after I manually put one or more upgrade planners into the network.
The presence of the upgrade planner acts as enabling switch for all corresponding inserters.

This avoids wiring every inserter.
You can still wire the inserters. If you do this, you have 2 conditions: one from the logistics network and one from the circuit network. They are combined with AND, so they must both be true. So if you additionally require some special condition, you can still use wires in addition.

However, you don't have a central point of configuration how many items you want the mall to create. You have to directly configure the amount in each (output) inserter.

Everything has its pro's and con's.

Currently, it seems the flexibility in control you get if you wire everything and use constant combinators to define values beats my urge for not wiring everything. I didn't tell everything: I configured every value twice. There is a warehouse at a central location with a bunch of buffer chests. They request the items I intend to pull from the mall and provide them from one central location, so I can actually "see" what's currently available by looking into the chests.

The whole thing (work in progress) currently looks like this:
Don't ask why one half is vertically orientated and the actual mall horizontally orientated. I don't want to rearrange the mess, err, the bus.
It's slightly more than just a mall. It's intended to provide everything to the base except power and what is needed to perform research. You also get bottled sulfuric acid for uranium mining outposts and bottled heavy oil for initiating coal liquefaction, as well as a fully working uranium processing facility.
screenshot_1188h_35m_15s.jpg
screenshot_1188h_35m_15s.jpg (1.21 MiB) Viewed 703 times
Blueprint:
mall.txt
(144.33 KiB) Downloaded 22 times
Input is ore. Batteries not included. External power supply required. Peak usage is about 1.5 GW. The main consumer is of course the module producer.

Zero switch items: only items required for the mall itself except modules are produced.
1 upgrade planner manually put into one storage chest: railway and mining post items added.
2 upgrade planners: walls and weapons and ammo and personal equipment.
3 upgrade planners: rocket silo(s)
1 blueprint: modules are produced (what modules are produced/recalled from the network can be further fine tuned with a bunch of constant combinators in front of the module factory)
1 deconstruction planner: items for nuclear power plant added

That's the general idea at the moment.

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

Re: Enable/disable mall parts

Post by mmmPI »

Tertius wrote:
Sun Dec 10, 2023 1:51 pm

Zero switch items: only items required for the mall itself except modules are produced.
1 upgrade planner manually put into one storage chest: railway and mining post items added.
2 upgrade planners: walls and weapons and ammo and personal equipment.
3 upgrade planners: rocket silo(s)
1 blueprint: modules are produced (what modules are produced/recalled from the network can be further fine tuned with a bunch of constant combinators in front of the module factory)
1 deconstruction planner: items for nuclear power plant added

That's the general idea at the moment.
I undertand this now, i had in mind something like connecting to the logistic network all the inserters feeding the assembly producing " railway and mining post items"to be active only when "items required for the mall itself except modules are produced" at a desired quantity and then the inserter feeding the assembly producing "walls and weapons and ammo and personal equipment" to be active only when enough "rail and mining outpost item" are sitting in chest and so on. That is hardcoding the value in every inserter once , it was thinking for the initialization of the mall .

But then if you want to change the request later in the game it's annoying.

So instead you could wire the feeding inserters of the different part each to their own roboport with one wire color reading the network quantity from it instead of from the "thin air connection". And later in game you could add some (negative) value to that wire , with constant combinator where you write the amount of material for 1 train junction so you could get 40 of them easily with a arithmetic combinator, this added to the base quantity hardcoded. That is making several isolated wire network centered around their own roboport rather than a giant web, you only need 1 wire color, and not everything need to be connected with each other.

You could still remotely ( from map view ) control things by copy pasting an empty or with different value constant combinator , to offset the logi-network value as received by inserters, this is fast to do if they were added all in a sensible location that is easy to remember. ( and that's going to fit 2.0 logistic group ).
Tertius wrote:
Sun Dec 10, 2023 1:51 pm
You can still wire the inserters. If you do this, you have 2 conditions: one from the logistics network and one from the circuit network. They are combined with AND, so they must both be true. So if you additionally require some special condition, you can still use wires in addition.
I haven't used the fact that both condition are combined with AND, i had not realized it was the case. It is not necessary if you connect the roboport to brodcast the network content to the inserters controling assemblies through wire because it is from this wire that one can subtract request hold by constant combinator to trick the inserter into believing the network has a negative quantity of item somehow the inserter doesn't need the thin air logistic connection-condition .

This allow the inserter to not be prevented to act because of the logistic condition being met when you want to set an additionnal request with circuits.
Tertius wrote:
Sun Dec 10, 2023 1:51 pm
However, you don't have a central point of configuration how many items you want the mall to create. You have to directly configure the amount in each (output) inserter.
You could make such central point of configuration if you "know" which robotport are used to send the network quantity to each set of inserter, that would mean running several additionnal wire used for the circuit condition in parrallel to the same place, a sensible location to place all your constant combinator that match your blueprint material . Not sure it's less wiring or better than 1 single giant net at this point because it would be very similar , it's the drawback x).

But it makes it so that you can have one central location to control how all inserters react to the logisitic network &/or the constant combinator request that can be interacted with from map view, but it's not using the "logistic connexion". ( because "only" using it as you say means no central point of control and using it alongside wire is annoying if the hardcoded logistic condition is met but you want to trigger more production with circuit better skip it entirely maybe ? ).
Tertius wrote:
Sun Dec 10, 2023 1:51 pm
There is a warehouse at a central location with a bunch of buffer chests. They request the items I intend to pull from the mall and provide them from one central location, so I can actually "see" what's currently available by looking into the chests.
Make sense for such a mall , it's a nice touch x), i use buffer chest to bring modules or concrete in small quantity because i don't do those in the mall usually , for personnal request i want to have around the same cooldown for everything so they sit near the mall . Sometimes in other game i have separated small network for the mall that transfert item to the rest of the larger factory with inserter. ( mall => self expanding solar in 2 different network connected with inserters ) and i have a train station to drop me near that little mall network and other train station to load supply material from the mall. I'm just saying, since you will have to do some sort of train station for the inputs i suppose, access and transportation is very important for the ouput of for the mall too for it to be pleasant to use and as it interact with the control mechanism/request of material sitting on chest it can also influence the choice for both system.

mrvn
Smart Inserter
Smart Inserter
Posts: 5709
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Enable/disable mall parts

Post by mrvn »

Instead of programming all the input inserters you can also connect the belt to the logistic network. Although you only ever program the inserters once and then the blueprint does it for every other mall. So does the amount of first configuration really matter?

Post Reply

Return to “Gameplay Help”