Ghost Scanner 4 (Ignore Assigned)


Side-by-side comparison variant of Ghost Scanner 4. Adds a separate 'Ghost Scanner (Ignore Assigned)' combinator with an option to ignore ghosts that already have a construction robot dispatched. Can run alongside the original Ghost Scanner 4.

12 days ago
2.1
25

Changelog

Version: 4.4.0
Date: 2026-10-17
  Changes:
    - Targets Factorio 2.1. Same code as 4.3.0.
Version: 4.3.0
Date: 2026-10-15
  Optimizations:
    - Ghosts are no longer found by scanning every roboport area of every network over and over.
      Build, upgrade-mark, cliff-mark and death events now hand new ghosts, tile ghosts, item
      request proxies, upgrades and cliffs directly to the mod, and each update only re-checks
      those known entities. On a 54-scanner save this cut the mod's script time from about
      1.8 ms to well under 0.1 ms per tick.
    - Scanners in the same logistic network share one calculation.
    - Area scans use 2 queries per area instead of 5.
  Changes:
    - As a safety net, every network with a scanner is still fully rescanned, spread evenly over
      the new "Full rescan interval" setting (default 5 minutes). This catches ghosts that no event
      reported, e.g. ones created by other mods without raising events.
    - A newly placed scanner or roboport scans its area right away.
    - Removed the "Area scan update interval" setting. "Scanned areas per tick" is now an upper
      limit per tick for the area scans above.
    - The "Ignore assigned ghosts" setting now also applies on space platforms.
    - Added remote interface "ghost-scanner-ia" with "verify" (compares every scanner's output
      with a brute-force scan) and "stats".
Version: 4.2.0
Date: 2026-07-25
  Bugfixes:
    - Ported from upstream PR Cyberboss/factorio-ghost-scanner-4#227 (thanks @leoric / @Symgot):
      use the default count for item stacks when undefined; space-platform-foundation on space
      platforms is now correctly detected and counted; concrete and other terrain tiles on
      planets within logistics networks are correctly detected and counted; the quality of a
      tile ghost entity is preserved in the signal output.
  Changes:
    - Ported from the same PR: refactored ghostScanner ID usage for consistency, refactored
      space platform scan logic for clarity, and added dedicated space platform build/mine
      handlers.
  Info:
    - The "Ignore assigned ghosts" setting still applies on top of all of the above, including
      to the tile ghosts that PR #227 newly detects.
Version: 4.1.1
Date: 2026-07-25
  Bugfixes:
    - Guard against destroyed scanner entities. A scanner combinator removed without firing
      the mod's own removal events (e.g. when its surface is deleted) left a stale record in
      storage.ghostScanners, and the next on_tick took the whole server down with
      "LuaEntity API call when LuaEntity was invalid" in UpdateArea/UpdateSensor. Stale
      records are now dropped instead of dereferenced.
Version: 4.1.0
Date: 2026-06-13
  Info:
    - Side-by-side comparison build. This is a separate mod ("GhostScanner4IgnoreAssigned")
      with its own "Ghost Scanner (Ignore Assigned)" entity (teal tint), recipe and mod
      settings (all prefixed "ghost-scanner-ia-"), so it can run at the same time as the
      original Ghost Scanner 4 and be placed next to it in the same logistic network for
      direct output comparison.
  Features:
    - Added "Ignore assigned ghosts" runtime setting (default off). When enabled, ghosts that
      already have a construction robot dispatched (teal ghosts) are no longer counted, which
      prevents circuit-controlled supply systems from double-requesting items while bots are
      already carrying them. Applies to entity ghosts, tile ghosts, upgrades and module
      (item-request) ghosts via is_registered_for_construction()/is_registered_for_upgrade().
      With the setting off, behavior is identical to upstream Ghost Scanner 4.
Version: 4.0.6
Date: 2025-11-30
  Bugfixes:
    - Probably fixes ghost modules not counting properly
Version: 4.0.5
Date: 2025-01-15
  Bugfixes:
    - Fixed an off by one error with "Scanned areas per tick" setting
    - Fixed incomplete scan results being pushed to combinators, resulting in signals "flickering"
Version: 4.0.4
Date: 2024-12-21
  Bugfixes:
    - Fixed mixed qualities being collapsed into one request
    - Minor performance improvement with regards to combinator logistics section handling
Version: 4.0.3
Date: 2024-12-14
  Bugfixes:
    - Fixed cliff explosives not being requested
Version: 4.0.2
Date: 2024-12-14
  Bugfixes:
    - Fixed missing description for a mod setting.
    - Fixed missing entity description.
Version: 4.0.1
Date: 2024-12-13
  Bugfixes:
    - Fixes a count of 1 always being output for each ghost.
Version: 4.0.0
Date: 2024-12-13
  Changes:
    - Ported to Typescript (Original mod by Tiavor: https://mods.factorio.com/mod/GhostScanner2)
    - Ported to Factorio 2.0
    - Removed custom technology, now unlocked by advanced combinators
    - Removed defunct cell count signal
Version: 2.2.0
Date: 2023-10-11
  Features:
    - Added Support for GhostOnWater (Ghost Scanners will output items for WaterGhosts even when they are still water ghosts)
Version: 2.1.0
Date: 2023-01-16
  Changes:
    - added delay between area scands to improve performance
Version: 2.0.1
Date: 2022-01-20
  Bugfixes:
    - fixed a null-pointer in add_signal
Version: 2.0.0
Date: 2022-01-20
  Changes:
    - fixed missing ghost signals
    - added migration from GhostScanner 1.6.x
    - complete rework of control.lua to improve performance
    - added settings: scan-areas-per-tick, which can drastically increase performance, but reduces time inbetween updates of each scanner
Version: 1.6.5
Date: 2022-07-22
  Bugfixes:
    - removed duplicate info icons
Version: 1.6.4
Date: 2021-12-10
  Features:
    - option to show hidden items (default off)
  Changes:
    - replaced '_' in setting names with '-'
    - added info images to settings with mouse over information
Version: 1.6.3
Date: 2021-01-31
  Changes:
    - removed requirement for Advanced Electronics
    - moved group after base circuits once again
Version: 1.6.2
Date: 2021-01-24
  Bugfixes:
    - fixed tech icon size
Version: 1.6.1
Date: 2020-11-26
  Features:
    - requests are scanned in order over all cells instead of per cell
Version: 1.6.0
Date: 2020-11-26
  Features:
    - updated to Factorio 1.1
Version: 1.5.8
Date: 2020-06-26
  Changes:
    - use on_entity_destroyed to generate uid for proxies
  Bugfixes:
    - support proxy_target = nil
Version: 1.5.7
Date: 2020-05-22
  Features:
    - holding ghost scanner displays logistic coverage
Version: 1.5.6
Date: 2020-04-28
  Features:
    - option to disable cells count signal
Version: 1.5.5
Date: 2020-04-22
  Features:
    - report number of cells (roboports) in Logistic Network
Version: 1.5.4
Date: 2020-03-30
  Features:
    - report amount of cliff explosives, does not account for bots optimizing use of explosives
  Changes:
    - area check for request proxy and tiles uses old, faster method, works only with collision boxes <= 1x1
Version: 1.5.3
Date: 2020-03-08
  Bugfixes:
    - scanner counts ghosts outside constructible area if they protrude into it
Version: 1.5.2
Date: 2020-03-08
  Bugfixes:
    - reduce search area slightly so find_entities_filtered doesn't include ghosts sharing construction area bounds
Version: 1.5.1
Date: 2020-01-21
  Bugfixes:
    - fixed mipmap warning
Version: 1.5.0
Date: 2020-01-21
  Features:
    - updated to Factorio 0.18
Version: 1.4.9
Date: 2020-01-13
  Bugfixes:
    - 1.4.8 introduced nil index errors with tile ghosts
Version: 1.4.8
Date: 2020-01-13
  Features:
    - even more performance tweaks by OwnlyMe
Version: 1.4.7
Date: 2020-01-13
  Features:
    - increased performance with lookup table for items_to_place_this, thanks to OwnlyMe for letting me know about this
Version: 1.4.6
Date: 2019-09-20
  Features:
    - report items required for upgrades
    - handle script_raised_built and script_raised_revive
Version: 1.4.5
Date: 2019-08-10
  Features:
    - ghost scanners can be turned off like regular constant combinators
Version: 1.4.4
Date: 2019-06-09
  Features:
    - added option to round item counts up to full stacks
Version: 1.4.3
Date: 2019-05-22
  Changes:
    - Module requests for existing entities are aggregated after entity ghosts and their module requests.
Version: 1.4.2
Date: 2019-04-15
  Changes:
    - moved scanner into subgroup with other combinators unlocked by circuit network 2
Version: 1.4.1
Date: 2019-03-09
  Changes:
    - changed recipe to coper wire and electronic circuits
    - moved recipe into circuit combinators 2
Version: 1.4.0
Date: 2019-02-27
  Features:
    - updated to Factorio 0.17
    - replaced mined.result hack with 0.17 functionality
Version: 1.3.1
Date: 2019-02-03
  Bugfixes:
    - Limit Scan Results is applied against unique entity count instead of sum of entities found across logistic cells
Version: 1.3.0
Date: 2019-02-03
  Features:
    - Limit Scan Results can be turned off by setting it to 0
  Changes:
    - Limit Scan Results counts per scanner instead of per logistics cells
Version: 1.2.1
Date: 2019-01-07
  Features:
    - correctly count rails for curved rail ghosts using mined.result as workaround until 0.17
Version: 1.2.0
Date: 2019-01-06
  Features:
    - improved load distribution for few scanners using on_nth_tick
Version: 1.1.0
Date: 2018-10-19
  Features:
    - added setting limiting scan results for better performance
  Bugfixes:
    - skip logistic cells with 0 sized construction radius
Version: 1.0.1
Date: 2018-09-29
  Bugfixes:
    - recipe missing when circuit network had been researched
Version: 1.0.0
Date: 2018-09-16
  Features:
    - read item and tile ghosts from logistic network
    - read item requests (modules) from logistic network
    - runtime setting update frequency
    - runtime setting invert output