Recursive Blueprints+

by FoxLBA

Automate blueprints to build a self-expanding factory. Fork of Recursive Blueprints with new small features: navigation through nested blueprint books, deployer logging and scanner upgrade.

Content
4 days ago
1.1 - 2.0
15.3K
Blueprints

i deploy blueprint from book with icons matching signals

1 year, 7 months ago

An absolute game-changer would be if the deployer chest could read a new construction command, and use any signals on the other wire to match the first blueprint in a book with icons that match the given signals. afaik the icons of a blueprint are also signals that can be matched.

This could be used with a circuit network reporting demand for a specific blueprint to be deployed... lots of potential.

For performance and respect of the underlying many-to-many matching problem, it could naively choose the first blueprint it encounters in the book with icons that are also >0 in the circuit signals. That rule would avoid complex lua edgecases, and encourage users to organize books they supply.

1 year, 7 months ago

The described behavior can be achieved with the combinators and a properly folded book.

The combinator at the input has the following setting: 'each'>0 -> 'any'.
It will select one of the request signals.
Next comes selective memory. Each cell consists of two combinators: a constant and a decisive one. The constant combinator stores the command for the deployment (blueprint number, coordinates, etc.).
The decisive combinator has the following settings: 'item signal'>0 -> 'all'. The task of this combinator is to issue a command corresponding to the request.

In general, I do not see the point of implementing the above described algorithm in code.

1 year, 7 months ago
(updated 1 year, 7 months ago)

But I have a big book and a small base :(

Nah you're right that this can still be achieved with combinators and organized blueprints in a book.
Just with the level of blueprints I'm working with It'd be more convenient. But more folding of the book is probably the better solution here now that I've been thinking of it. Thank You!

New response