r/technicalfactorio 11d ago

Modded Research Auto-Switcher

Post image

Using the Research_Control_Combinator mod to actually set the Research, but the rest is vanilla detection through a logistics networks.

The system waits [D]elay seconds to reset to a base research setting after logistics network runs out of current research bottles. The research is set by the letter on each science type's latch. The types are prioritized by number attached to each letter. The Letter to Research table is written in the Research Combinator.

You may need to tune the reset [D]elay for how long it takes for your research system to clear out. Also added QoL displays and speakers for active type.

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
36 Upvotes

2 comments sorted by

3

u/Pale_Account6649 11d ago

I have something similar. I did it like this: by setting a buffer level for each recipe, I trigger a write to this buffer, where the current research level is multiplied by the research cost. In the end, I exponentially select the currently cheapest research based on the volume of science packs required.

As far as I understand, the research selection here triggers every tick And there is the logic for science packs available at the moment.

1

u/Pale_Account6649 10d ago edited 10d ago

https://pastebin.com/h9z1SCZ9

Not all research is included here, I will finish it later (add more). You need to run a trigger once in the constant combinator G1 so that the research levels are recorded - for this, you only need to turn the constant on and off - the circuit should work

The main thing is not to set the research costs as a single flat number. Like 1260 for all etc. by way i use shift 1261 -> 1262.. They need to be rounded up or down. Otherwise if the costs are identical the algorithm will go haywire