{"schemaVersion":1,"record":{"key":"mechanic/automation-programming--t109","type":"mechanic","id":"automation-programming--t109","lang":"en","title":"Storage, buffers and throughput","summary":"Buffers store differences between arrivals and consumption, absorbing brief disruptions without raising sustained line capacity.","updatedAt":"2026-10-22","status":"active","url":"https://gamemechanics.pro/en/knowledge/mechanic/automation-programming--t109/","jsonUrl":"https://gamemechanics.pro/api/v1/knowledge/en/mechanic/automation-programming--t109.json","markdownUrl":"https://gamemechanics.pro/content/knowledge/en/mechanic/automation-programming--t109.md","aliases":[],"tags":["Automation and programming","Mechanics and variants"],"sourceIds":["source-96be186d8ada50a0","source-fee3301bed8a96da"],"sources":[{"id":"source-96be186d8ada50a0","title":"Factorio: Content","url":"https://www.factorio.com/game/content","verifiedAt":null},{"id":"source-fee3301bed8a96da","title":"Factorio","url":"https://store.steampowered.com/app/427520/Factorio/","verifiedAt":null}],"sections":[{"id":"principle","title":"How it works","body":"Buffers store differences between arrivals and consumption, absorbing brief disruptions without raising sustained line capacity."},{"id":"variants","title":"Variants","body":"### Mechanic variants\n\n<a id=\"t109-variants\"></a>\n\n- Storage limits stop an upstream stage. <a id=\"t109-v1\"></a>\n- Inventory smooths irregular deliveries. <a id=\"t109-v2\"></a>\n- Batch thresholds combine small arrivals. <a id=\"t109-v3\"></a>\n- Overflow redirects surplus to an alternate output. <a id=\"t109-v4\"></a>"},{"id":"example","title":"Design example","body":"Storage absorbs a brief delivery gap but drains under a persistently undersized extractor.\n\nPrototype check: Test that indicators distinguish temporary inventory from the actual throughput of the limiting stage."},{"id":"context","title":"Context and limits","body":"Automation moves repeated work into a system; the player builds connections and identifies the limiting stage. Each overview separates player actions, state changes and alternative rules. Examples are hypothetical design scenarios, not claims about a named game. A prototype check states an observable question for the next iteration. Existing detailed references remain separately linked from the direction map."}],"relations":[],"placements":[{"catalogId":"automation-programming","id":"t109","title":"Automation and programming","url":"https://gamemechanics.pro/en/mechanics/automation-programming/#t109","categoryIds":["mechanics"]}],"supersededBy":[],"attributes":{"preview":{"updatedAt":"2026-10-22","title":"Storage, buffers and throughput","description":"Buffers store differences between arrivals and consumption, absorbing brief disruptions without raising sustained line capacity.","image":{"src":"images/mechanics/factorio-copper-wire.webp","width":1224,"height":689,"game":"Factorio","sourceUrl":"https://store.steampowered.com/app/427520/Factorio/","originalUrl":"https://shared.akamai.steamstatic.com/store_item_assets/steam/apps/427520/ss_37aa19e26e20e18a220fd8870dac6efb0e98b5f0.1920x1080.jpg?t=1787348817","credit":"Wube Software","rights":"© Wube Software. All rights reserved.","caption":"Belts connect production inputs and outputs","alt":"Belts connect production inputs and outputs","markers":[{"x":74,"y":51,"label":"Intermediate output moves to the next consumer"}]},"tips":["Compare buffer contents with their arrival and consumption rates."],"examples":[{"title":"Factorio","url":"https://store.steampowered.com/app/427520/Factorio/"}]}},"endsAt":null,"provenance":"Original bilingual editorial overviews authored for gamemechanics.pro on 2026-10-20 and reviewed on 2026-10-21. Scenarios are hypothetical design examples; prototype checks describe work to perform, not completed playtests. Primary sources support the stated techniques and implementation context, not every proposed variant.","license":"CC-BY-4.0","codeLicense":"MIT","attribution":"gamemechanics.pro contributors","catalogKey":"catalog/automation-programming"}}