Factorio

Factorio

View Stats:
mrxak Oct 22, 2024 @ 10:03pm
Parameterized blueprints and setting recipe on assembler with circuits
How did we ever play this game without them? I just made my first machine to make anything that shares the same ingredient types, and then automatically create more of whatever I'm low on between those. Just one assembler, multiple recipes, on-demand production. I parameterized it, now I'm using it to make all kinds of random hub/mall stuff on a fraction of the footprint, and it's the basis of my new make-any-module machine. I should have started doing this a lot sooner. I'm probably going to make an outright make-anything-machine that tries to satisfy any pending logistics requests before I leave Nauvis.

Wube, you absolute maniacs, I love you.

If you need help getting something like this set up yourself, here's example blueprints:

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
Last edited by mrxak; Oct 23, 2024 @ 12:28pm
< >
Showing 1-7 of 7 comments
Zhardoz Oct 22, 2024 @ 10:21pm 
nice
mrxak Oct 23, 2024 @ 12:49am 
Huh, looks like when the recipe changes, all the inputs go into the output and this can jam things up, so I guess you need filtered inserters to remove that when that happens. You could cycle it right back into whatever belt or box you're taking your ingredients out of to make it work.
mrxak Oct 23, 2024 @ 1:41am 
Okay, I updated the blueprint string above, to include the fix for inputs jamming up the works when they suddenly demand to be outputted. When you use the parameterized blueprint, the filters on the inserters are automatically set to help you with this. The blueprint is designed around a basic 2 recipes with two ingredients. But this style of build can be easily extended with additional arithmetic combinators plugged into the decider combinator to add additional recipes (such as modules or boxes, where there's more than two things that use the same ingredients). If more ingredients are needed than just two, this could also be added with additional parameterized inserters.

Pretty neat feature! I was glad to make a little demo like this just to learn how to use it. In my game I'm already using similar designs all over the place.

I do think there are some issues with the variable fields and the "ingredient of" thing has some quirks I haven't quite figured out. Maybe there's bugs. I don't think the beta testers messed with circuitry all that much. If anyone has any tips, let me know, but I did get this blueprint to work at least, and it's very handy in my game.
Now imagine doing this with a bot net system, then clogging is a lot less an issue when it changes they take the materials unnecessary away :auyay: for some lesser needed items honestly this would be handy across planets for smaller setups that aren't entire malls.
mrxak Oct 23, 2024 @ 12:36pm 
Okay, I have continued to refine my design, and I've updated the blueprints. There's now two versions. A basic version uses just arithmetic combinators, and then the advanced version uses a selector combinator to make the assembler focus on making the item with the biggest network deficit. This can easily be set to make the item with the least deficit, which might actually be better as it will switch back and forth less often. However, if you're just trying to get a few of each item, biggest deficit is the best way to do that, so I think slightly slower production overall is still the way to go in most cases where you just need some stuff to build with. This works really well for things like chests and combinators. Least deficit probably works better for modules, when you need to build a lot of them for a new construction.
Tal'Shar Nov 11, 2024 @ 11:52am 
For anyone struggling with "ingredient of" parameterization like I was when I found this post:

You have to have the thing it's an ingredient of above whatever parameters you want to make the ingredients, before it'll let you define what your parameter will be an ingredient of. So if you're assembling part 0 and you want its ingredients to be 1, 2, and 3, you have to make sure 0 is above 1, 2, and 3 in the parameter list.
KingOfFriedChicken Nov 11, 2024 @ 12:17pm 
I wonder if you could set pumps to a system 🤔 and auto turn on the 1 you need for parts that need fluids 🤣 probably hmmm
< >
Showing 1-7 of 7 comments
Per page: 1530 50

Date Posted: Oct 22, 2024 @ 10:03pm
Posts: 7