Bot Recall

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

TheSAguy
Smart Inserter
Smart Inserter
Posts: 1449
Joined: Mon Jan 13, 2014 6:17 pm
Contact:

Bot Recall

Post by TheSAguy »

Not sure if this is a mod or game feature, but I'd love to have the ability to recall all my bots.
Maybe a filter re-call button that you set what bot(s) to recall. Let's say all Logistic Mk2 bots to come to this port immoderately, since version 3 just came out :)

So all bots in that robo-ports network will come to that port.
liqo
Burner Inserter
Burner Inserter
Posts: 17
Joined: Fri May 25, 2018 1:19 am
Contact:

Re: Bot Recall

Post by liqo »

I agree, because otherwise you just have to "lure" the bots with some task and try to catch them in time, which turns your Factorio gameplay to Tom & Jerry cartoon :lol:
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Bot Recall

Post by bobingabout »

That is a minor annoyance introduced by my Logistics mod. (Though, DyTech did it first.)

This has been requested over and over again, there's really nothing I can do about it on the modding side of things, though others have released mods to try.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
thedarkbunny
Inserter
Inserter
Posts: 46
Joined: Mon Oct 23, 2017 10:46 pm
Contact:

Re: Bot Recall

Post by thedarkbunny »

Not to mention sometimes you just want to deconstruct a roboport without having all of its logistics bots hauled to storage.

Idea: Give each roboport something like a requester chest UI. Each roboport can specify the number and type of bots that should be kept on hand. If a roboport is below that limit, it summons a bot from a roboport that has extra.

This prevents common (well, common-to-me) problems like "I deconstructed a storage chest earlier and now all of the bots that should be unloading my train are en route from the other side of the factory."
nuhll
Filter Inserter
Filter Inserter
Posts: 958
Joined: Mon Apr 04, 2016 9:48 pm
Contact:

Re: Bot Recall

Post by nuhll »

@bobing

cant you just "cheat it correct"?

Like A box where all MK1 appear in, and then gets removed from rest of the game (flyin around?)

Like

find "Mk1", calcuclate how much there is, put in chest, remove all active bots MK1.
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Bot Recall

Post by bobingabout »

the problem with that is the "Find". doing a simple "Scan the entire map to look for X", depending on map size, can lock up the entire game for several seconds. It's an instruction I've used before, and decided to avoid.

It's also why I removed the ore mods migration script adding the new ores to existing maps. You'd load the game to instantly be greeted with a 2 minute lockup while it went through 1 by 1 and generated every single new ore patch on the existing large map.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
User avatar
steinio
Smart Inserter
Smart Inserter
Posts: 2638
Joined: Sat Mar 12, 2016 4:19 pm
Contact:

Re: Bot Recall

Post by steinio »

Well you need to limit it to a given force and logistic network...
Image

Transport Belt Repair Man

View unread Posts
User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 2905
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

Re: Bot Recall

Post by darkfrei »

You can also use the chunk iterator and search entities/tiles (what you need) on only one of them per tick.
orzelek
Smart Inserter
Smart Inserter
Posts: 3924
Joined: Fri Apr 03, 2015 10:20 am
Contact:

Re: Bot Recall

Post by orzelek »

darkfrei wrote:You can also use the chunk iterator and search entities/tiles (what you need) on only one of them per tick.
I thought that it works like that but it doesn't.
You can't keep the iterator between ticks. So you would basically need to go through it and build your own chunk list. Then you could use that list to process them one by one.
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Bot Recall

Post by bobingabout »

steinio wrote:Well you need to limit it to a given force and logistic network...
can you even limit a map search by Logistic network?
As for force, it makes little difference, because you still have to scan and find the entity, then check to see what force it's on. Filtering by force would just be the same, except in one instruction, it's the map scan itself that takes the time.
darkfrei wrote:You can also use the chunk iterator and search entities/tiles (what you need) on only one of them per tick.
And the problem with doing that, is how long do you wait between checks? a few ticks between checking a chunk and it's neighbour is enough to have the bot move from one chunk to the next, and be missed by both scans.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
bobucles
Smart Inserter
Smart Inserter
Posts: 1708
Joined: Wed Jun 10, 2015 10:37 pm
Contact:

Re: Bot Recall

Post by bobucles »

Can't you use filter inserters to rip out low tier bots? The only recall option that I really need is to return bots to the personal roboport when I rip them out of the armor, but that can be fixed by putting a power switch on the damn things.
Aeternus
Filter Inserter
Filter Inserter
Posts: 835
Joined: Wed Mar 29, 2017 2:10 am
Contact:

Re: Bot Recall

Post by Aeternus »

A workaround I've used is to use filter inserters to yank specific bot types out of frequently used roboports. Typically dumping them into a purple chest to be sent off to the bot upgrade centers. For construction bots: Use roboports near logistics storage and wherever you are dropping off wood/stone garbage. For logistics bots use wherever you've got a lot of peaks of deliveries, that's where the bots will nest after such a goods dropoff peak.
As for personal roboports... those bots just go to inventory, so set the lower tier bots to auto-trash, and the problem tends to solve itself.
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Bot Recall

Post by bobingabout »

bobucles wrote:Can't you use filter inserters to rip out low tier bots? The only recall option that I really need is to return bots to the personal roboport when I rip them out of the armor, but that can be fixed by putting a power switch on the damn things.
yes, but then you have to wait for them to dock to the apropriate roboports.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
bobucles
Smart Inserter
Smart Inserter
Posts: 1708
Joined: Wed Jun 10, 2015 10:37 pm
Contact:

Re: Bot Recall

Post by bobucles »

Pulling out low tech bots to upgrade them is a problem that only exists for mods. It's really up to mod authors to find solutions to the problems they add into the game. It has no direct importance for vanilla.

That being said it would still be nice to have a "summon bot" command accessible through the logistic network. A combinator sends a signal to the roboport, and the roboport acts like a requester chest to summon bots to itself. I feel that this wouldn't be TOO difficult to implement since the requester system already exists and we're only talking about moving items explicitly between roboports. It should be flexible enough that players can use it however they please, whether it's to rip out obsolete bots, distribute them around the network, or drain the network dry for a tear down.

So for example:
- Roboport has 20 logi bots
- Combinator sends signal [logistic bot, 50]
- 30 free logi bots fly to the roboport.
Rinse and repeat for construction bots and maybe even repair packs.
Zavian
Smart Inserter
Smart Inserter
Posts: 1650
Joined: Thu Mar 02, 2017 2:57 am
Contact:

Re: Bot Recall

Post by Zavian »

Well even in vanilla there are times you might want to summon all bots. Imagine a large solar field built using bots. It has a rail station to deliver materials and remove wood/stone, but doesn't have anywhere doesn't have a logistics connection to anywhere else. Eventually it runs out of room to expand and the player decides to build a new solar field somewhere else. At that point he can remove the station and it's chests (plus surplus solar panels etc), but there isn't a convenient way to grab the construction bots that are now surplus. Sure not a huge issue, but some people like to tidy up and reclaim any surplus items/other stuff that is lying around. (The easiest way to do it that in vanilla that I am aware of is to deconstruct the outer row of roboports and replace then with accumulators. Once that is done, repeat with the new set of outer roboports. That does have the advantage that you also reclaim the now surplus roboports as well).
adam_bise
Filter Inserter
Filter Inserter
Posts: 465
Joined: Fri Jun 08, 2018 10:42 pm
Contact:

Re: Bot Recall

Post by adam_bise »

I've ran into this issue even in vanilla.

You could create another row of boxes for disabled bots and a roboport and / or circuit network option to auto-disable inserted / docked bots as well as a logistics summary page for each network similar to the power summary window (needed anyway to read statistics that overflow the current GUI) with a "disable all bots" option which would set all roboports in the network to auto disable all bots.

The only thing that actually happens is the bots are moved from non-disabled inventory to disabled inventory, which could be just a flag in the code and not a new inventory slot.

The disabled boxes could also serve as a replacement bot buffer without actually deploying them to the network yet.

You would also need an option to set the roboport into passive mode, ejecting all bots, and no bots can then be docked or inserted, but still provides charging and preserves the logistics path / construction area.

After this, a bot recall button on a roboport would set all other roboports in that logi network to passive, and set itself to auto-disable where a waiting inserter could remove them.
User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 2905
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

Re: Bot Recall

Post by darkfrei »

orzelek wrote:
darkfrei wrote:You can also use the chunk iterator and search entities/tiles (what you need) on only one of them per tick.
I thought that it works like that but it doesn't.
You can't keep the iterator between ticks. So you would basically need to go through it and build your own chunk list. Then you could use that list to process them one by one.
You can also use on_chunk_generated, but one chunk later. Some cache in global and the performance will be fast same.
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: Bot Recall

Post by bobingabout »

bobucles wrote:It has no direct importance for vanilla.
what about situations where you have too many Logistic/construction bots? A method to monitor and remove excess of certain types between these two could be just as important as removing MK2 to replace with MK4 fusion. and then it would be a vanilla problem.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.
mrvn
Smart Inserter
Smart Inserter
Posts: 5969
Joined: Mon Sep 05, 2016 9:10 am
Contact:

Re: Bot Recall

Post by mrvn »

bobingabout wrote:
bobucles wrote:It has no direct importance for vanilla.
what about situations where you have too many Logistic/construction bots? A method to monitor and remove excess of certain types between these two could be just as important as removing MK2 to replace with MK4 fusion. and then it would be a vanilla problem.
If you have to many then they settle in a roboport and you can remove them with an inserter. There is also a mod for removing older bots form any roboport. The problem with upgrading bots are the bots that are busy doing something. As long as there are logistic or construction jobs the bots will stay out of the roboports and can't be easily grabbed.


I think to solve this would require a switch in the logistic networks to disable specific bot types or more direct to tell a roboport to issue a recall order on a bot type. The later would prevent those bots from taking a new job and make them settle in the specific roboport. Something only vanilla can implement.
adam_bise
Filter Inserter
Filter Inserter
Posts: 465
Joined: Fri Jun 08, 2018 10:42 pm
Contact:

Re: Bot Recall

Post by adam_bise »

Is there a way to manipulate the construction and logistics radius?

If there were, and it didn't break the logistics network up, perhaps you could reduce them to zero for all roboports in the recalled network?

This should hopefully force all bots to dock, where they could then be extracted.
Post Reply

Return to “Ideas and Suggestions”