Pollution Absorber: Improved


Industrial air-filter unit that burns chemical fuel to absorb nearby pollution. Fork of Pollution Absorber by yanhanv with fewer repeated pollution checks. Existing absorbers are retained.

Content
4 minutes ago
2.0
0
Environment Power

Changelog

Version: 1.0.3
Date: 2026-10-14
  Bugfixes:
    - Fix multiplayer joins being rejected because client and server event handlers differ after loading.
    - Persist absorber and shared chunk references in save data; restore local references without registering a temporary tick handler.
    - Rebuild existing absorber data when upgrading from earlier versions.
  Info:
    - Verify an actual multiplayer join after upgrading from 1.0.2, then save, reload and rejoin with 1.0.3 on Factorio 2.0.77.
    - Verify unchanged absorption for overlapping units after reloading.
Version: 1.0.2
Date: 2026-10-14
  Graphics:
    - Use a higher, axis-aligned view with a compact vented cabinet and no access door.
    - Fit the artwork within the existing three-tile selection footprint without changing collision geometry.
    - Give the static sprite and native fan animation identical frame dimensions, scale and anchor so the rotor stays on the visible top grille.
    - Show a red indicator without fuel and a green indicator while the native fan animation runs.
    - Verify adjacent inserter access on all four sides in an isolated in-game scene.
  Info:
    - Keep absorption behavior and the 1.0.1 performance changes unchanged.
Version: 1.0.1
Date: 2026-10-14
  Optimizations:
    - Share pollution-chunk readings between overlapping absorbers within each update, updating cached values after every write.
    - Reuse chunk references without allocating a new lookup cache every update; release unused references when absorbers are removed.
  Graphics:
    - Replace the flat entity drawing and icons with an industrial air-filter unit featuring a top fan, intake grilles and weathered metal housing.
    - Animate the fan with native sprite frames while the unit is working; keep the housing and grille fixed.
  Info:
    - Isolated comparison against 1.0.0: absorption-handler time averaged 0.0049-0.0052 ms per tick instead of 0.0070-0.0078 ms, roughly 30% less script work.
    - Preserve the once-per-second update schedule and original absorption behavior. Save-comparison pollution totals matched; 280 overlapping-absorber comparisons passed within floating-point rounding.
Version: 1.0.0
Date: 2026-10-14
  Features:
    - Fork of Pollution Absorber by yanhanv, titled Pollution Absorber: Improved.
    - Retain original absorption behavior and existing entity, item and recipe names.
  Optimizations:
    - Cache sample positions and combine repeated visits to the same pollution chunk.
    - Rebuild entity references once after loading instead of keeping a permanent per-tick callback.
  Info:
    - Factorio 2.0.77 comparison with 35 absorbers, 33 with energy: median absorption update 1.56-1.58 ms originally and 0.38-0.41 ms in this fork.
    - Pollution totals matched at every save-comparison checkpoint; 280 additional comparisons passed within floating-point rounding.