Auto Best Quality

by NOiZE

Automatic quality upgrades through your construction network — always substituting the best available, always stepping up as supply improves.

Content
4 hours ago
2.0 - 2.1
290
Logistic network Manufacturing
Owner:
NOiZE
Source:
N/A
Homepage:
N/A
License:
MIT
Created:
6 months ago
Latest Version:
1.0.5 (4 hours ago)
Factorio version:
2.0 - 2.1
Downloaded by:
290 users

Auto Best Quality

Your legendary assemblers are blueprinted and ready to be build, but you only have uncommon
ones in stock. Your rare turrets were destroyed and your stockpile is depleted, so
a normal replacement is better than nothing. Your production line needs rare
productivity modules across 50 machines, but only 20 rare modules are available.
Auto Best Quality (ABQ) fills what it can with available quality items and works
toward your requested quality as better items become available.

ABQ handles quality substitutions for blueprint ghosts and upgrade orders through
your construction networks and space platform hubs.

How it works

Set your intended quality in a blueprint or upgrade planner as usual. If
the requested quality is unavailable, ABQ can use an allowed quality substitute
from the relevant logistics network or space platform hub. It then retries pending
work as supplies change, stepping entities and modules toward the requested
quality: normal → uncommon → rare → epic → legendary.

ABQ works with both entities and modules, on regular surfaces and space
platforms.

How to use it

  • Place blueprints as ghosts or over existing machines.
  • Use an upgrade planner for entity quality upgrades and module slot rules.
  • Use remote view when a construction network covers the machine.

ABQ works with construction requests and the networks that service them. Module
requests made with blueprints or the upgrade planner are also detected by periodic
proxy scans. Detection and retry timing can be adjusted in the runtime settings.

Limitations and notes

  • Substitutions and step-ups are asynchronous. ABQ processes ghosts in batches
    and retries pending work periodically. Default fast and slow retry intervals are
    3 and 30 seconds, respectively; new module proxy requests are scanned every
    10 seconds by default. Large maps or configured batch sizes can affect how soon
    pending work is processed.
  • Blueprint editor display: Factorio's blueprint editor may not consistently
    show module requests in its preview. ABQ checks and repairs the blueprint entity
    data during blueprint setup, but the editor's visual display may still be
    incomplete.
  • Manual module changes can be overwritten while an ABQ request is pending.
    For example, if ABQ has an outstanding request for Prod 2 and you replace it
    manually with Quality 2, a later retry may restore Prod 2. Use a blueprint or
    upgrade planner to change the requested module layout.
  • Substitutions follow the configured lower- and higher-quality limits. By
    default, ABQ can substitute up to five quality levels below the target and does
    not use higher-quality items as substitutes.

Requirements

Requires Factorio 2.1 and the Quality mod (included with the Space Age
expansion).

Settings

Runtime settings are available under Settings → Mod settings → Runtime and can
be changed in-game. Enable Logging is a startup setting and requires a mod reload.

Setting Default Description
Max quality levels below target 5 Maximum quality levels below the requested quality that ABQ may use as a substitute.
Max quality levels above target 0 Maximum quality levels above the target that ABQ may use as a substitute. Zero disables higher-quality substitutes.
Ghosts per tick (initial) 20 Maximum ghosts processed per tick when a blueprint is first placed.
Ghosts per tick (retry) 15 Maximum pending ghosts processed per tick during retry rounds.
Fast retry interval 180 ticks (3 seconds) Delay between retries after a round makes progress.
Slow retry interval 1,800 ticks (30 seconds) Delay between retries when pending items are unavailable.
Proxy scan interval 600 ticks (10 seconds) Delay between module-request proxy scan rounds when no other work is pending.
Proxy scan chunks per tick 1 Map chunks scanned per tick for player-set module requests. Higher values scan faster and use more UPS.
Enable Logging Off Writes detailed debugging information to factorio-current.log. Startup setting; requires a mod reload.

Status

Version 1.0.5. Bug reports and feedback are welcome, especially for unusual
module layouts or modded entities.

Credits

NOiZE — mod design, Factorio modding, testing, and game knowledge.

Multiple AI assistants — development support across architecture, Lua
implementation, and iterative debugging.

Support

If you enjoy this mod, consider supporting me on Ko-fi!