Even Distribution Fork — for Factorio 2.1
A maintained fork of Even Distribution by 321freddy, with fixes and deliberate changes to item distribution, spoilage handling and ammunition loading.
Requires Factorio 2.1.20 or newer in the 2.1 series. Fork and maintenance by Jhorr.
Keeping Even Distribution up to date and fixing issues as they arise until 321freddy returns.
General
Distribute items across multiple buildings without repeatedly opening their inventories.
- Ctrl + Left Click Drag: distribute the available items over the buildings you mark.
- Ctrl + Right Click Drag: distribute half the selected source stock, subject to protected reserves.
- Shift + C — Inventory Cleanup: distribute eligible surplus and trash into nearby compatible machines and containers.
- Even Distribute: split the offered quantity evenly, regardless of existing contents.
- Balance Inventory: include existing contents and try to equalize the final amounts across the targets.
- Configure distribution range, ignored buildings, source inventories, fuel limits and ammunition limits. Optional replacement of inferior fuel and ammunition is available during Ctrl + Click Drag.
- Personal logistic requests let you define keep amounts or exclude items from Shift+C. Ordinary chests receive cleanup items when the chest option is enabled and they already contain that item; requester chests follow their requests.
- Rejected items remain at their source. The distribution paths do not drop overflow on the ground.
Fuel limits, ammo limits, available inventory space and native compatibility still apply. Shift+C uses the selected distribution mode too.
Shift+C destination safeguards
Recyclers: Shift+C only fills a recycler when its input inventory already contains items. Items in its output inventory do not activate cleanup filling.
Heating towers: Shift+C only fills a tower when its fuel inventory already contains items. A currently burning fuel item or items in the spent-fuel inventory do not replace that requirement.
Nuclear reactors: excluded from Shift+C completely, whether empty or already supplied. Use Ctrl + Click Drag to supply them explicitly.
Fusion reactors: excluded from Shift+C completely, whether empty or already supplied. Use Ctrl + Click Drag to supply them explicitly.
These restrictions apply to both Even Distribute and Balance Inventory. Explicit drag can still fill empty recyclers and heating towers. Normal fuel limits and compatibility restrictions continue to apply.
Bio Items
The most spoiled eligible items are offered first.
Perishable items are divided into three fixed brackets by remaining freshness: low (up to one third), medium (up to two thirds) and high (above two thirds). Each bracket covers one third of the freshness range; the number of items in each bracket depends on your stock. One distribution action processes only the lowest bracket currently available for that item and quality, across the entire selected building group.
The bracket selects which stock is offered from the player; Balance Inventory can still redistribute existing machine contents.
Once that bracket is exhausted, the next action can process the next available bracket. Empty brackets are skipped. If older items remain because the targets could not accept them, those items retain priority.
- Freshness can merge within the active bracket; other freshness brackets in your inventory are kept separate.
- Destination stacks still follow Factorio's native merging behavior, so an existing stack in a machine can mix with incoming items.
- Partly used tools and repair packs receive similar priority using their remaining durability. Item health is also considered when choosing a consumption bracket.
- Nutrients are offered by default for Biochamber fuel, subject to personal keep rules, including when no recipe is selected.
- When a recipe also consumes nutrients, the fuel inventory and recipe input are separate distribution targets. Both can be supplied in the same action; the fuel limit applies only to the fuel inventory.
This batching behavior is a deliberate design choice. I chose it to prioritize older stock without mixing every age group together. If you would prefer one combined spoilage merge for all eligible stock, please tell me. I am open to changing the behavior or adding a setting so both approaches are available.
Ammo
Combat refilling uses one action across all consumption brackets. You do not need separate passes for partly used and full magazines. Partly used ammunition is prioritized within the offered ammunition type, and remaining shots are preserved.
Shift+C processes ammunition in ascending progression within each compatible category:
- Magazines:
yellow →
red →
green. - Rockets:
normal/yellow →
explosive/red.
This controls which offered type gets processed first. It respects native compatibility and does not automatically replace an already loaded ammunition type during Shift+C.
Equipped-ammo lock: an ammunition type and quality actually present in a character ammo slot gets a 100-item personal reserve. This counts loaded ammunition, the main inventory and the cursor together. The reserve is counted in magazines or projectiles.
Other ammunition types receive no lock merely because they are in your inventory. Removing a type from the character ammo slots removes its implicit lock. If you already have fewer than 100, the mod does not distribute that personal stock. Vehicle cargo and trash are not counted toward the personal reserve.
- The lock applies to Shift+C and Ctrl + Click Drag, in both distribution modes.
Atomic bombs are excluded from automatic turret filling with Shift+C. Cleanup into eligible chests remains possible, and explicit drag to compatible targets remains available.- Ammunition can also be accepted as a recipe ingredient by compatible machines. Use personal keep rules if you want to retain additional stock.
Quality
- Ctrl + Click Drag supports all quality tiers, subject to the target's native restrictions.
- Item types and qualities are counted and transferred separately. Distribution does not convert higher-quality items into normal-quality items.
- The equipped-ammo reserve follows the exact ammunition type and quality found in the character ammo slots.
- Shift+C currently processes normal-quality items only. Use explicit drag for higher-quality items.
Feedback, Bugs & Design Suggestions
Some behaviors in this fork are deliberate choices I made for practical gameplay, including freshness batching, ammunition order, the equipped-ammo reserve and the Shift+C destination safeguards. I welcome suggestions to change or simplify them.
Please let me know about any problems, especially unexpected distribution, item loss or duplication, quality changes, incorrect spoilage or remaining shots, and compatibility issues.
For bug reports, please include your Factorio and mod versions, the distribution mode, relevant settings, affected item and quality, and what happened compared with what you expected. A small reproduction, save or blueprint is helpful when available.
Original mod: 321freddy. Fork and maintenance: Jhorr.
Thanks to FallenPaladin for the initial spoilage-preservation contribution.
Item and entity icons: Official Factorio Wiki, original game artwork by Wube Software.