Concreep Redux

by utoxin

Utilize idle bots in your logistics network to pave the world.

Utilities
a day ago
1.1 - 2.0
2.83K
Logistic network

Changelog

Version: 3.0.3
Date: 2024/11/03
  Added:
    - Setting for working in a circle instead of a square while placing ghosts. (End result doesn't change, just the way it places ghosts.)
    - Settings for disabling creep on specific surfaces if Space Age is enabled. (Issue #34)
  Known Issues:
    - Concreep will happily overwrite farming / soil tiles, both natural and artificial. Until I can figure out a better solution, disabling creep on Gleba or other locations where you have those tile types is your best solution.
Version: 3.0.2
Date: 2024/10/28
  Added:
    - Settings to disable the automatic deconstruction of cliffs, rocks, and trees. (Issue #37, Requested by Blastinburn)
  Changes:
    - Fixed settings for bricks in Tiles by Area. (Issue #36, Reported by Serjevski)
Version: 3.0.1
Date: 2024/10/26
  Changes:
    - Disabling pattern storage, solving crash reported by ololduck, Nachoboy00, and Os.
Version: 3.0.0
Date: 2024/10/26
  Changes:
    - Updated to Factorio 2.0.0
    - Disabling prototype GUI for now, to get it to run
Version: 2.3.3
Date: 2024/05/18
  Changes:
    - Fixed tile placement in space.
Version: 2.3.2
Date: 2024/05/18
  Added:
    - Setting to control update frequency. (Issue #26, Requested by Avaa2499)
    - Setting to control number of roboports processed per update.
Version: 2.3.1
Date: 2024/04/07
  Changes:
    - Adjusted the lower bound on usable bots to zero, so that it won't place a single tile ghost if you have 0 bots in the network. (Issue #24, Reported by skofisk)
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.3.0
Date: 2024/04/06
  Added:
    - Added landfill support, with logic to leave water around pumps if desired.
    - Nonfunctional GUI for managing settings in a better way has been started.
  Internal Changes:
    - Split code up into new subdirectories, and prepared groundwork for new settings GUI.
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.2.5
Date: 2024/03/30
  Changes:
    - Fixed an issue with some math that greatly reduced how many bots it would put to work.
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.2.4
Date: 2024/03/30
  Changes:
    - Fixed an issue where an internal tracking counter could get out of sync with the number of roboports in use.
    - Fixed a rare issue discovered by Dir39 that could cause a non-recoverable error.
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.2.3
Date: 2024/03/17
  Changes:
    - More tweaks to idle bot calculations that should improve creep throughput further
    - Fixed a crash when a port switched from initial creep to upgrade mode.
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.2.2
Date: 2024/03/16
  Changes:
    - Fixing bug with available-for-work bot calculations
  Known Issues:
    - Space Exploration Compatability: When attempting to place space scaffolding, it will error once per tile, but the creep will progress. (Issue #1)
    - Angels Bioprocessing Compatability: Attempting to place Bio Tiles near water will deadlock a ropobort's creep method. (Issue #10)
Version: 2.2.1
Date: 2024/03/14
  Changes:
    - Fixed slight mis-alignment with area creep. (Reported by: Violet_Scarelli)
    - Partially fixed issues with SE space surfaces, allowing 'asteroid' tiles to be upgraded into space platform.
Version: 2.2.0
Date: 2024/03/13
  Added:
    - Added a mode that allows you to select tile types based on logistics/construction area. (Suggested by: Violet_Scarelli)
  Changes:
    - Refactored the code to separate the various creep types into their own methods.
    - Partially fixed issues with SE space surfaces, allowing 'asteroid' tiles to be upgraded into space platform.
  Optimizations:
    - Removed redundant / unused code.
  Info:
    - When attempting to place space scaffolding, it will error once per tile, but the creep will progress.
Version: 2.1.1
Date: 2024/03/10
  Changes:
    - Added the idle bot logic mentioned in the 2.0.0 changelog. It will now limit bots used for construction based on this setting.
    - Additionally, each active roboport will limit how many ghosts it places, attempting to spread the work around between active roboports.
  Optimizations:
    - Removed redundant / unused code.
    - Improved looping logic to avoid early exits, allowing more processing per iteration.
  Info:
    - There may be minor issues with SE space surfaces, and placing tiles on asteroids. If you know of a way to improve this, I'd love to hear about it.
Version: 2.1.0
Date: 2024/03/10
  Added:
    - Added support for Space Exploration platforms.
    - Added setting for using logistic range instead of construction range for creep.
    - Added setting for how many items to keep in your logistics network before creep starts.
Version: 2.0.0
Date: 2021/12/19
  Changes:
    - New Author (Utoxin), New Name.
    - Changed logic around roboports 'sleeping' so that if all roboports are 'sleeping' it will wake them all back up and check for more work.
    - Updated required Factorio version to 1.1.49.
    - Starting laying groundwork for a new setting to control how many idle bots the mod is allowed to use. Currently, non-functional.
Version: 1.4.6
Date: 2020/12/08
  Changes:
    - Fixed case where non-electric roboports caused an error
Version: 1.4.5
Date: 2020/11/24
  Changes:
    - Updated for Factorio 1.1
    - Added support for raised_revive event.
Version: 1.4.4
Date: 2020/05/14
  Changes:
    - Made the concreep range setting more strict.  Now setting to 0 pauses the mod.
Version: 1.4.3
Date: 2020/04/24
  Bugfixes:
    - Fixed a bug preventing tile upgrading from proceeding
Version: 1.4.2
Date: 2020/04/24
  Changes:
    - Streamlined logic for reserving tiles for upgrading.
  Bugfixes:
    - Fixed potential error when number of available tiles was too low.
Version: 1.4.1
Date: 2020/04/06
  Bugfixes:
    - Fixed a script error around trying to preserve some refined-concrete.
Version: 1.4.0
Date: 2020/04/03
  Added:
    - Concreep won't place tiles unless there's more than 200 of the relevant item in the network.
    - Concreep won't activate unless there's 30 idle robots
Version: 1.3.9
Date: 2020/03/09
  Changes:
    - Fixed migration logic (old versions of concreep or adding to a new game)
Version: 1.3.8
Date: 2020/03/05
  Changes:
    - Changed how tiles are checked to support Space Exploration scaffold/plating.  Upgrading scaffold to plating not currently supported.
Version: 1.3.7
Date: 2020/01/23
  Changes:
    - Updated for Factorio 0.18
Version: 1.3.6
Date: 2019/10/30
  Added:
    - Added setting for using concreep logic for laying bricks.  On by default.
  Changes:
    - Concreep will finish paving an area before looking for tiles to upgrade.
Version: 1.3.5
Date: 2019/10/08
  Bugfixes:
    - Fixed bug to make the intended change in v1.3.4 work properly.
Version: 1.3.4
Date: 2019/09/20
  Bugfixes:
    - Added additional checks to ensure roboport tile matching works safely, like if dectorio is removed mid-game.
Version: 1.3.3
Date: 2019/09/19
  Bugfixes:
    - Added additional check to prevent placing brick when none are in the logistic network.
Version: 1.3.2
Date: 2019/09/18
  Added:
    - Concreep can also upgrade brick to concrete or reinforced concrete.
    - Added settings to upgrade brick or concrete.
  Fixed:
    - Restored replicating Dectorio and most other placed tiles
    - Concreep once again respects the range setting.
Version: 1.3.1
Date: 2019/08/26
  Fixed:
    - Fixed a crash when adding this mod to a pre-existing save
Version: 1.3.0
Date: 2019/08/25
  Added:
    - Concreep performs much better than ever before!
    - Concreep lays down reinforced concrete first, then regular concrete, then seeks out regular concerete to upgrade.
    - Concreep marks cliffs for deconstruction rather than autoremoves them using previous logic.
Version: 1.2.0
Date: 2017/12/28
  Added:
    - Concreep now autoremoves cliffs as concrete is laid down.  Right now it auto-deducts the cliff-explosives from the logistic network instead of delivering it via bot.  Hoping to change this in the future.
  Note:
    - A roboport may fail to remove cliffs if insufficient cliff-explosives are available, and it can be stuck in a state where it won't check again.
Version: 1.1.0
Date: 2017/12/15
  Added:
    - Updated for 0.16
    - Added option to scale back the range roboports will build concrete.
    - Added option to ignore already built tiles (Brick, asphault, etc)