[2.0.69] Bots return modules to wrong chest when upgrade is cancelled

Post your bugs and problems so we can fix them.
Dwarven Cogs
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sun Oct 26, 2025 7:00 pm
Contact:

[2.0.69] Bots return modules to wrong chest when upgrade is cancelled

Post by Dwarven Cogs »

I used an upgrade planner to replace efficiency modules 3 with speed modules 3 in an assembler, but cancelled the upgrade using control+Z while the bots were mid-flight (after collecting the speed modules, but before reaching the machine). The bots returned the speed modules to a storage chest filtered for efficiency modules, instead of the storage chest filtered for speed modules which they had got them from (which would have been the expected behaviour).

This is 100% reproducible for me for all cases where I upgrade from any module type to any other (including different qualities of the same module type), in any machine (which takes modules), the only requirement for triggering the bug is that the upgrade is cancelled between the bots collecting the new modules and reaching the machine. If they reach the machine and swap the modules, and then I use control+Z to undo the upgrade, then the bots swap the modules back and put the modules into the correct chests. To trigger the bug you can cancel the upgrade by either using control+Z or using the right-click+drag "downgrade" functionality of the upgrade planner. You can even trigger it using the control+Y (redo) command if the bots are currently undoing an upgrade and have collected the modules but not yet reached the machine.

As a demonstration here is one straightforward setup to reproduce this bug (this setup is also provided as an attached save game):

SETUP
Place a roboport
Ensure roboport is supplied with power
Add 1 construction robot to the roboport
Place an assembling machine 3 (pick any recipe) within construction range of the roboport
Add 4 "efficiency module 3" to the assembler
Place a storage chest with filter set to "efficiency module 3" within logistic range of the roboport
Place a storage chest with filter set to "speed module 3" within logistic range of the roboport
Add 4 "speed module 3" to that chest
Create an upgrade planner which replaces "efficiency module 3" with "speed module 3"
Bug Setup.png
Bug Setup.png (3.39 MiB) Viewed 56 times
REPRODUCE BUG
Use the upgrade planner on the assembler
After the bot has collected the speed modules (but before it reaches the assembler) use control+Z to cancel the upgrade
The bot will return the speed modules to chest filtered for efficiency modules instead of the one it got them from
Attachments
factorio-current.log
(7.95 KiB) Downloaded 3 times
Bot Module Bug Repro.zip
(2.47 MiB) Downloaded 4 times
Post Reply

Return to “Bug Reports”