For Players
What this mod does
In vanilla Factorio, the tasks of construction robots cannot be read as circuit signals, yet this is crucial for automating construction. This mod focuses on solving that. Ghost Reader aggregates all those requests into a clear item list and outputs it as circuit signals, letting you automate material-deficit calculations, drive display panels, or feed logistics requests.
It reads four kinds of requests and tracks them in two directions — supply and recycling:
| Type | Supply | Recycling (to be deconstructed/recovered) |
|---|---|---|
| Entities | Ghost of an entity to be built | Entity marked for deconstruction |
| Tiles | Ghost of a tile to be placed | Tile marked for deconstruction, recyclable tiles covered by tile ghosts |
| Upgrades | The upgraded target entity | The original entity replaced by the upgrade |
| Items | Requested items to deliver, cliff explosives needed to demolish cliffs | Items already inside a deconstructed entity, storage-slot recycling requests, recycling products of environment entities (trees/fish/rocks...), on-ground items |
About "Items": here, "items" refers to item requests produced when you perform a ghost operation on an entity's storage slots (set directly in remote view), which are served by construction robots. It does not refer to the item-logistics requests served by logistics robots.
- Supply = items construction robots are missing while working.
- Recycling = items construction robots will deconstruct or recover.
Unlocking
- Research the "Ghost Reader" technology (prerequisite: construction robotics).
How to use
- Place a "Ghost Reader".
- Connect it to a circuit network with red/green wires.
- Click the reader to open its GUI panel and set the scan range, filter, quantity, and quality modes.
- The circuit network will then carry each item's signal, computed according to the current quantity mode.
GUI panel
- Scan range mode
Surface: scan every request on the whole planet surface.Logistics network: scan only the requests inside the reader's logistics network (construction area).- Current range: shows the active range in real time.
- Surface mode: shows the location.
- Logistics network mode: shows
network#id. - Filter mode
All: entities + tiles + upgrades + items.Entities/Tiles/Upgrades/Items: only the selected category.- Quantity mode
Supply - Recycling: outputs supply minus recycling (may be negative, for net deficit).Supply only: outputs supply quantities only.Recycling only: outputs recycling quantities only.- Quality filter
All: no quality filtering.- A specific quality: only items of that quality.
Calculation details (important)
- In logistics network mode, entities, tiles, upgrades, and items are all computed as the union of each roboport's construction area (the green area). Because only requests (or ghosts) whose center point falls inside the construction area can be served by construction robots, the inclusion check matches that rule.
- In logistics network mode, the reader itself must be inside some roboport's supply area (the orange area) to be considered "in a logistics network".
- Targets belonging to neutral/enemy forces (trees, rocks, on-ground items, biter nests...) have no logistics network of their own; they are attributed by position to the player-force networks covering them. Entities of a player force only use their own force's construction areas.
- Item requests on moving entities (e.g. tanks, spidertrons) are counted as well.
- If a container entity (e.g. a chest) is marked for deconstruction, the items already inside it are classified under the "items" category as recycling.
- Tile ghost over a recyclable tile: if an artificial tile (concrete, stone bricks, ...) already exists and a ghost of a different tile is placed on top, construction robots first remove the old tile while placing the new one, returning its item. That step is part of the "build tile" action, so the engine does not mark the old tile for deconstruction. The mod therefore records this tile recycling on the tile ghost itself and drops it when the ghost is built or cancelled. Foundation tiles (landfill, foundation, ice platform, artificial soil, ...) are the exception: the new tile is placed on top and only hides the old one, which is not removed, so it is not counted. Also, if the old tile is also marked for deconstruction, the recycling is not double-counted.
- Demolishing cliffs: a deconstruction-marked cliff yields no recyclable item, but demolishing it consumes cliff explosives (fetched by construction robots), so it is counted as item supply:
cliff explosives × number of cliffs marked.
Performance notes
You normally do not need to worry about performance: the reader only works when something in the world actually changes, so an idle world costs almost nothing. Version 1.2.0 included a major performance improvement, greatly reducing the ongoing cost in large bases, with many ghosts, and similar situations.
Possible performance issues
- Merging and splitting logistics networks: when roboports are placed, removed, or destroyed, so that separate networks connect into one (merge) or one network breaks into several (split), all requests in the affected networks have to be reorganized, which may cause a one-time stutter spike; the larger the network, the more noticeable. This is currently the main source of cost. It only happens when the network topology changes and recovers once done, with no lasting impact on gameplay.
Operations you do not need to worry about
- Placing/pasting large blueprints or spawning many ghosts at once: no ongoing performance cost from the number of ghosts.
- Marking a huge batch for deconstruction (a whole forest, rocks, ground items) or upgrade: handled in one pass, with no continuing cost that grows item by item.
- Large surfaces with many trees/rocks/decorations: the reader does not scan such unrelated objects, so cost is independent of surface size.
- Robots emptying chests/belts item by item: no stutter from large item counts.
- Building many ghost readers: most ghost readers can share the same computed result, so a large number of them does not significantly increase cost.
- Adding or removing roboports in a large logistics network: as long as the network topology does not change (no merge or split), the cost is fixed and independent of network size.
- An idle world with nobody doing anything: almost no cost.
Acknowledgements
The development of this mod was inspired by the following two mods:
- Ghost Combinator by gpalumbo
- PKE Meter by The_LORD_thy_GOD