Robot Replacer

by Peppe

Utility mod to help replace/upgrade bots within a network. Bots in the replacer provider chest are released to the network when a bot of the same type, but different name is found in a roboport. The bots that do not match the provider are removed from the roboport and placed in the logistics storage network. Should work with all modded bots and roboports. *** Megabase warning: Chest is Calculation heavy when any items are in it. Only put bots in it and keep empty to idle efficiently. ***

2 years ago
0.14 - 1.1
32.2K

g small guide

9 months ago

So, I aways get lost when I try using this mod again, it is simple and straight forward, but idk, it always confuses me for some time. I also see some people don't quite get it, so maybe the way it's written or the replacer chest itself make us expect some behavior that it does not.

In simple words, the replacer chest, if you put any bot in it, while it is inside the logistic zone, it will look at all roboports for any bot that is NOT the same name, that is it.

AKA, if you have a construction bot called MyModdedConBot and you put it inside the "robot replacer requestor chest", actual bot inside the chest, not the logistic slots. It will look in all roboports in the network that have any construction bot with different name, the mod is not aware of TIERS, better or worse bots, it just gets anything with different name, logistics bots check against logistic name, construction bots check against construction name.

It does not add bots to the network, every time it finds any bot that does not match the name of the bot in the replacer chest, it will move the bot from the roboport to the any available logistic chest, and then spawn the equivalent bot on top of the replacer chest. Populations stays the same.

What I do if have want to update from OldBotA to NewBotB.
Considering a production line of NewBotB, that requires OldBotA, if it is just a different recipe that does not require previous bot, just skip the first step.

1[optional] - At the end of the OldBotA production line, add a requester chest requesting the OldBotA, and make so the requested bots are used prior to the bots your assembly produces, so first use the already deployed bots before making new ones, also make sure you stopped feeding OldBotA to the network.

2 - Create the production line of NewBotB and at the end, insert them inside the "robot replacer requestor chest".
3 - Make sure you have some empty logistic spaces (Storage chest), otherwise nothing will happen.

4 - Somehow, manually or with combinator, track how many or how long have passed since a bot was replaced, for that you can either monitor the chest count or the inserter inserting into the chest. Once you consider it is finished, just remove the replacer chest and add them to the network as you wish.

New response