Directors,
Update 1.1.3 is now live for both Realindustry and the demo.
I know I promised a content update. A few more urgent things needed attention first, and they grew into a substantial update of their own: a major buff to electronic automation, the most extensive optimization pass I have done so far, a rebuilt desktop save system, and fixes and improvements based on your feedback.
I also need to step away for a short while, so I decided to release everything that is ready instead of leaving it waiting for another few weeks. There is a lot here that should make a real difference to the industry you can build right now.

Electronic automation can finally take over your industry
Electronic automation used to run into two serious problems as you expanded: upgrade prices grew exponentially, and adding production blocks increased the electricity cost of the other blocks in the same scheme. Larger batches also compounded their control energy costs. Getting a whole industry onto electronics could become absurdly expensive.
That scaling has been reworked. Electronic automation is now a much stronger long-term replacement for colonist automation.
Each working production block pays its own control energy cost, and those costs add together. Adding another block no longer makes its neighbors more expensive to run. Batch control energy now grows in a straight line: each iteration after the first adds 10% of the block’s base control energy.
For a concrete example, a single Tier 5 Chemical Plant block processing 51 iterations with no Speed upgrades previously needed 586.95 electricity in control energy per cycle. It now needs 30. That comparison is for the automation overhead; the recipe’s own electricity, materials, and tools are accounted for separately.
Electronic control costs at the same workload before and after the rebalance. Larger batches now add control energy linearly, and adding production blocks no longer multiplies their neighbors’ costs. Chemical Plant, Tier 5, active Speed 0; recipe electricity and other production requirements are separate.
Upgrade prices now grow in predictable linear steps and eventually stop increasing per level. You can keep expanding capacity after reaching that price ceiling. Parallel Controller adds production slots, Batch Handler adds batch capacity, and Speed Governor still lets you exchange more electricity for faster production.
Total Steel Gears needed to reach the same Batch Handler capacity in a Tier 5 Chemical Plant. The comparison accounts for the change from +2 to +1 iteration per purchased level. Early capacity can cost more, while large expansions become dramatically cheaper. The vertical axis is logarithmic.
This makes a much more natural progression possible:
Use colonists to establish your industry and reach electronic automation.
Unlock Batch Handler and Parallel Controller, then build the supply chains needed to buy their upgrades in quantity.
Move most of your main production onto electronics, including the infrastructure that makes the components for further electronic automation upgrades. Yes, the automation can help build more automation.
Expand and tune your power supply, batch sizes, and active Speed levels as the industry grows.
This is the progression I want electronic automation to support. Colonists remain useful for getting started and bridging the transition, while electronics become the practical way to scale most of your industry without assigning more and more workers.
You can also buy 1, 2, 5, or 10 upgrade levels at once. The selector applies to all three upgrade families, remembers your choice, and shows the complete package price before you buy. The price is the sum of the individual levels; a package is installed only if you can pay for all of it.
Existing saves keep their purchased batch capacity. Batch Handler now grants +1 maximum iteration per purchased level instead of +2. When an older save is loaded, its purchased Batch Handler levels are doubled once, preserving the same capacity. For example, five old levels become ten new levels and still allow 11 iterations per block.
Larger batches make control energy more efficient per item, while Speed still has a meaningful power cost. Recipe electricity, fuel, raw materials, and tool wear still matter, so keep an eye on the forecasts when you expand.
Power generation that benefits from the new automation
The automation changes also make electronic operation much more attractive for power plants. Without the old scheme-wide surcharge and exponential batch overhead, you can expand generation much more sensibly, including clean power.
I also rebalanced several clean generation recipes. All electricity figures below are per recipe iteration:
Solar Power Generation: 2 → 15 electricity.
Enhanced Solar Module Power Generation: 5 → 50 electricity, using 100 modules per iteration.
Utility-Scale Solar Module Generation: 50 → 1,000 electricity, using 1,000 modules per iteration.
Reservoir Hydroelectric Generation: 100 → 130 electricity.
Tidal-Stream Power Generation: 50 → 40 electricity, as part of the clean power progression rebalance.
Changed generator recipe outputs, in electricity per iteration. Cooldowns are unchanged, and Solar Modules are returned each cycle. Net electricity also depends on automation control energy and supply costs.
Ordinary solar now provides a worthwhile step up from wind in the electronic automation progression. In the reference comparison with one continuously running block, 11 iterations, no active Speed, and no achievement bonuses, wind produces 90 net electricity per minute, while ordinary solar produces 153 after control energy costs.
The modular solar recipes offer much larger generation in exchange for the modules you need to build and hold. Those modules are returned by each production cycle. An 11-iteration batch needs 1,100 or 11,000 modules available, depending on the recipe.
Hydroelectric, geothermal, and tidal generation also have useful roles in an electronically automated power network. Geothermal retains its electricity and Steam output, and fuel-based power plants benefit from the automation improvements too. The changed generator recipes retain their existing cooldowns, inputs, and manual batch limits.
These changes were checked across 35 generator configurations using the game’s production forecast. The aim is to make the existing power plants useful throughout progression and give clean power room to scale.
The biggest optimization pass so far
A huge part of this update is about keeping the game responsive as your industry gets larger.
Automation forecasts and production history calculations now run in a shared background worker. The editor, Automation Board, and inventory can request the same result without all calculating it separately. Results are cached, so reopening a scheme or returning to an earlier configuration can reuse work that has already been done.
Moving blocks, zooming, and ordinary progress updates no longer trigger full forecast simulations. Changing tool durability no longer causes a new full calculation after every tool-based production cycle either. This applies to electronic and colonist automation, including older saves.
The editor now updates the small parts that actually change, such as progress bars, without repeatedly redrawing the entire graph. Previous production estimates stay visible while replacements are calculated, with a separate status indicator. Production figures should be much easier to follow.
There is also extensive work underneath the building list, recipe progress indicators, production processing, achievement bonus calculations, visual effects, water rendering, background animations, timers, and graphics memory management. Offscreen cards and collapsed panels do less interface work while production continues normally.
The improvements come from reducing repeated and unnecessary work while preserving effect resolution, particle counts, visible animation frequency, and the appearance of the interface.
For one measured example, the controlled test with 45 production blocks and the building list behind the editor improved from 45.87 to 67.51 FPS. In a separate large-graph test, an uncached forecast and history calculation that previously held up a frame for roughly 0.9–1.0 seconds ran in the background with a maximum interval between frames of 16.8 ms. These are specific test scenarios; the gain in your game will depend on your hardware and colony.
Recorded results from the editor optimization pass: +30.2%, +43.5%, and +47.2% average FPS in these three controlled cases. These measure one development pass within update 1.1.3, using a synthetic editor workload; they do not measure the whole update against 1.1.2 or predict a player’s full-save FPS.
This is the most extensive optimization work I have done on Realindustry so far. Further large improvements may require deeper architectural changes. I will see what your larger colonies still need after this update.
A new save system for larger colonies
The old desktop save system could hit a storage quota around 50 MiB of serialized save data, shared across saves and other stored records. A large colony, several save slots, or a growing autosave could run into that boundary.
Desktop saves now go directly to files, removing that old storage quota and its size ceiling. Large colonies no longer have to fit inside the browser storage allowance. Available disk space still determines how much can be stored.
Existing saves migrate automatically. The game verifies transferred data before removing the old source, preserves conflicting and recovery copies, and keeps a previous valid version when a save is replaced. A failed primary write leaves the previous save intact.
Closing the game now waits for the final autosave and any queued writes. If that final save fails, the window stays open. Save and Exit also waits for a successful save before leaving.
The new system was tested with 100–120 MiB structured saves, including overwriting, reloading, migration, backups, and simulated write failures. You can now delete individual save slots and their associated backup copies directly from the slot menus as well.
Together, the automation rebalance, performance work, and save changes address the main barriers that were getting in the way of the fully automated colonies you have been asking to build. Automating the entire production network is now practical, including the power and components needed to keep expanding it.
Fixes and improvements from your feedback
Resource navigation now gives you a choice between the Almanac and Resource connections when you click a resource in inventory analysis or the Automation Board. From the inventory’s connections window, you can reach the related automation schemes directly. Pinned recipes also appear first in quick resource lookups and keep their pin indicators.
Automation errors and warnings are clearer. Missing resources and electricity are shown in the editor, serious execution errors stop the affected scheme, and the reason stays visible. Schemes stopped by an error remain visible when you hide ordinarily stopped schemes.
Inventory analysis now includes automation control electricity in consumption, net flow, and stock-depletion estimates. Throughput sorting orders net flow from the highest signed value to the lowest, so surpluses and deficits appear in a more useful order.
Other fixes include Almanac navigation near the final pages, building preview sounds that could continue after a card disappeared from a list, and several compact-interface layout details. Manual cement and concrete recipes now have a 15-second cooldown instead of 10, giving their powered alternatives a clearer advantage.
The update is available in both builds, with changes applying to the systems and content available in each. Later research and power plants retain their existing full-game availability.
What comes next
I hope the next update will be the content update I originally planned, with several new power plants and probably new resources, recipes, and research to support them.
After that, I will likely move on to the highly realistic mode and mod support. That is the direction I am aiming for, and I will share more as those plans become concrete.
Thank you to everyone who has been playing, reporting bugs, suggesting improvements, and showing me what your colonies can do. Your feedback helped shape this update, especially the work needed to make large-scale automation practical.
The full changelog follows.
Full changelog
Electronic automation: power and scaling
Removed the ×1.5 control-energy multiplier applied for every additional enabled production block. Adding a block no longer increases the control cost of the other blocks in the scheme.
Each completed electronic production block now pays its own control energy cost. Total consumption is the sum of the work performed.
Replaced compounded batch control energy with linear growth: each iteration above the first adds 10% of the block’s base control energy at the current active Speed.
Control energy uses the block’s actual configured and allowed iteration count. Unused purchased batch capacity does not increase the cost of a smaller batch.
Recipe electricity and other fuel costs remain separate from control energy and scale with the actual number of iterations.
Raw-material requirements and tool durability requirements continue to apply to automated production.
Retained Speed Governor’s ×1.5 cycle-speed multiplier per active level and the existing minimum cycle time of one second.
Before that minimum is reached, each active Speed level approximately doubles automation control power per unit of time. Recipe fuel per unit of product is unchanged.
Active Speed can still be reduced to improve efficiency. Levels beyond the minimum cycle time still increase control energy without further increasing throughput.
Preserved zero electronic control overhead for Tier 0 buildings.
Removed the effect of legacy saved production-block counts on electricity calculations. Retried blocked work uses the new requirements.
Electronic automation: upgrade prices and purchases
Replaced exponential material-price growth with linear growth for Batch Handler, Parallel Controller, and Speed Governor.
The level-dependent price multiplier now stops increasing at ×16. Capacity upgrades can continue beyond that point at the capped per-level material price.
Parallel Controller prices reach their ceiling at the 61st purchased level; each level adds one production slot.
Batch Handler prices reach their ceiling at the 31st purchased level; each new level adds one maximum iteration per production block.
Speed Governor prices reach their ceiling at the 16th purchased level; each active level retains its existing speed and control-energy effects.
Building tier still affects material prices. The ceiling applies to price growth with purchased levels, rather than making different tiers cost the same.
Batch Handler uses its original material base. Parallel Controller and Speed Governor use twice their original base material amounts. Some early capacity targets cost more than before; large capacity targets become dramatically cheaper.
Reducing active Speed does not reduce the price of its next purchased level; pricing uses the total levels already purchased.
Added a shared Levels per purchase selector above the upgrade cards, with 1, 2, 5, and 10 levels available per purchase.
The selected purchase quantity is remembered as an interface preference and applies to all three upgrade families.
Upgrade cards display the full material cost of the selected package, including any levels that cross the price ceiling.
Package prices equal the sum of consecutive single-level prices, with each material rounded at each individual level.
Bulk purchases check and pay the complete package in one transaction. Insufficient materials prevent the entire purchase; no partial payment or partial upgrade is applied.
A successful bulk purchase installs every selected level together and produces one upgrade notification.
Active Speed plus/minus controls continue to adjust one level at a time.
Existing automation saves
Added a one-time conversion for older Batch Handler upgrades: purchased levels are doubled to preserve the previous +2-iterations-per-level capacity under the new +1 system.
For example, five old Batch Handler levels become ten new levels, keeping the same 11-iteration capacity.
The conversion supports both numeric saved levels and the older ownership-record format, and runs before rebuilding legacy recipe-based programs.
Converted saves record the new upgrade format, preventing another doubling after saving and loading again.
Preserved configured iteration counts, work already in progress, active Speed selections, slot levels, disabled blocks, and paused programs through the balance migration.
Power generation and recipe balance
Solar Power Generation: electricity output increased from 2 to 15 per iteration.
Enhanced Solar Module Power Generation: electricity output increased from 5 to 50 per iteration; the recipe uses and returns 100 Solar Modules per iteration.
Utility-Scale Solar Module Generation: electricity output increased from 50 to 1,000 per iteration; the recipe uses and returns 1,000 Solar Modules per iteration.
Reservoir Hydroelectric Generation: electricity output increased from 100 to 130 per iteration.
Tidal-Stream Power Generation: electricity output reduced from 50 to 40 per iteration as part of the clean generation progression rebalance.
Changed only the electricity outputs of those five generator recipes. Their cooldowns, ingredients, and manual batch limits are unchanged.
Wind, geothermal, steam, coal, nuclear, fusion, and antimatter generation retain their existing recipe outputs and benefit from the new electronic control model where applicable.
Manual Lime–Clay Cement Mixing: cooldown increased from 10 to 15 seconds in both the full game and demo.
Manual Concrete Mixing: cooldown increased from 10 to 15 seconds in both the full game and demo.
Automation forecasts and production history
Moved forecasts used by the automation editor, Automation Board, resource connections, and inventory analysis into a shared background worker.
Moved production history forecast calculations into the same background service.
Added bounded forecast caching based on the scheme’s execution contents and relevant production context.
Reopening a scheme, undoing edits, and returning to a previous configuration can reuse cached results.
Identical requests from multiple views share one calculation.
Rapid successive edits are batched before requesting replacement forecasts.
Moving blocks, zooming, and updating live progress no longer cause full forecast recalculations.
Tool durability changes no longer invalidate the entire forecast after each tool-based production completion, in both colonist and electronic automation.
Continuous production forecasts use average tool consumption. Finite schemes adjust replacement-tool requirements from current durability without resimulating the whole graph.
Inventory-based conditions trigger a new forecast when the condition’s result changes, avoiding recalculation for quantity changes that leave the result unchanged.
Previous estimates remain visible while replacement forecasts are calculated, including inventory rates and depletion text.
Added separate calculation and failure indicators, keeping the production figures in place during recalculation.
Retained estimates are associated with their individual program, preventing figures from being attached to a different program after reordering or removal.
Cancelled obsolete requests and ignored outdated responses, including results arriving after another save is loaded.
History calculations capture their original sample context so later edits do not rewrite the point being calculated.
Pending history entries are included when saving. A synchronous calculation path remains available when background workers are unavailable or a save needs an unfinished result.
Automation simulation and editor performance
Optimized automation simulation, production completion processing, summaries, and achievement output-bonus calculations.
Reused prepared graph routes and resource, recipe, building, and research indices to reduce repeated searches and graph traversal.
Reduced repeated forecast event sorting, metadata serialization, and duration calculations.
Reused colonist staffing-group calculations for unchanged schemes.
Reduced unnecessary copying of inventory, production statistics, and unchanged building data during automation ticks.
Separated graph structure and editing state from live execution updates.
Production, Wait, and Rest progress indicators update locally without repeatedly rerendering the entire modal and all production blocks.
Separated node status updates from progress-only changes and kept timeline updates local to the components that use them.
Optimized managed editor sessions so unrelated buildings’ progress does not continually update every open editor.
Kept live execution state current when saving a draft, editing a scheme, or changing its running state.
Preserved the editor’s blocks, controls, progress indicators, appearance, and mounted production nodes.
Buildings, production interfaces, and visual effects
Building progress displays now subscribe to their own building’s automation state.
Recipe and building progress indicators use lightweight task-and-duration calculations instead of building full production reports.
Building navigation and filters update when relevant automation mode, activity, staffing, or problem status changes.
Reduced interface work for offscreen building cards, collapsed Automation Board panels, and hidden windows while preserving production in every building.
The collapsed Automation Board retains its problem count without running the full open-panel calculations.
Optimized cooldown timers so they stop when no cooldown remains and avoid unchanged display updates.
Optimized production result popups with a bounded event buffer and one expiry timer per visible card; still-current popups can resume when the card returns onscreen.
Paused offscreen decorative card animations and reduced unnecessary glow-effect updates.
Added a shared animation scheduler for building effects and production backgrounds, preserving the configured visible frame frequency.
Batched shader rendering and reused GPU buffers and intermediate canvases across effects.
Optimized water-effect rendering and skipped rendering of layers fully covered by a confirmed opaque effect.
Preserved covered particle motion and random-state progression so effects remain consistent when revealed.
Reused particle gradients and removed repeated per-instance glow animation stylesheet creation.
Optimized canvas size observation and pooled visibility observers and their fallback scroll handling.
Fixed repeated canvas backing-buffer resets at fractional display scaling, including scales such as 125% and 133%.
Released unused image and depth textures, including research-tree textures, when they no longer have active users.
Bounded the extra water-rendering buffer and retained separate rendering when a batch exceeds supported limits.
Retained rendering fallbacks for unavailable WebGL, context failures, unsupported shader precision, and allocation limits.
Preserved effect resolution, particle counts, visible animation frequency, and production and forecast rules during the performance work.
Desktop save storage and recovery
Replaced browser-storage-backed desktop save payloads with direct file storage in the game’s existing save directory.
Manual slots, autosave, legacy main saves, and recovery payloads no longer need to fit inside the old browser storage quota.
Small interface preferences remain in their existing storage. Browser builds retain their existing quota-aware saving behavior.
Added automatic migration of valid older saves, with readback verification before removing the old source.
Preserved conflicting sources and older recovery copies as file backups during migration.
New-format primary files take precedence on later starts, preventing an interrupted migration from replacing newer progress with an older browser copy.
Failed migrations leave their source available for loading and archive export. Recovery-only files can be promoted into primary saves.
Serialized save writes and updated the in-memory save listing only after a confirmed successful write.
Save writes use a flushed and verified temporary file before replacing the primary file. A failed primary write preserves the existing primary.
Kept the previous distinct valid save as a previous-version backup when overwriting.
Distinguished a failed primary save from a successful save whose backup could not be updated.
Backup cleanup checks that a valid primary exists on disk before removing recovery copies.
File access errors are reported rather than silently displaying an empty save-slot list.
Added a save-storage preparation screen and retry action when storage initialization fails.
Closing the window waits for the final autosave and queued writes. A failed final save keeps the window open.
Save and Exit and saving before returning to the main menu wait for the save to succeed.
Explicit Exit without Saving skips the extra close-time autosave.
Startup and menu screens no longer autosave an unstarted default colony.
Archive export waits for queued writes; imports wait for storage operations and prevent duplicate concurrent imports.
Manual save actions prevent duplicate clicks and refresh the slot listing after confirmed completion.
Updated storage tools to report the file backend and verified writes, and to count space freed by file-backup cleanup.
Save-slot deletion
Added a trash button to occupied slots in load, save, and new-game slot selectors, including autosave where listed.
The button appears on card hover or keyboard focus and remains available on touch devices.
Added a named confirmation explaining that the slot and its associated backup copies will be deleted.
Autosave deletion explains that the next automatic save can create a new autosave.
Deletion removes the selected slot’s primary, legacy copies, shadow and backup generations, and interrupted temporary files, including corrupt envelopes.
Other slots remain untouched, and the card disappears only after storage confirms deletion.
Recovery copies are removed before the primary, so a deletion failure can leave the slot available and report the error.
Deleting the currently selected manual slot clears its remembered slot metadata and the current Save and Exit selection.
Deletion controls prevent a trash-button click from also loading or selecting the slot.
Automation warnings and stopped schemes
Added visible runtime warnings for missing resources and electricity in the automation editor, alongside validation results.
Displayed validation warnings even when a scheme passes validation.
Suppressed the Ready message when an active runtime problem needs attention.
Missing Start blocks, invalid recipes, and execution safety-limit errors now stop the affected scheme and preserve its diagnostic.
Serious execution errors take priority over shortages when different branches have different problems.
Preserved stopped-error diagnostics when moving blocks, saving an unchanged layout, or checking an unchanged scheme; an execution change or explicit restart can clear them.
Prevented draft saves from unintentionally restoring a stale running state after a runtime stop.
Error-stopped schemes remain visible with Hide stopped schemes enabled and remain discoverable through attention indicators.
Aligned error selection and status reporting between execution, the editor, and Automation Board summaries.
Resource navigation, inventory, and interface fixes
Clicking a resource in inventory analysis or on the Automation Board now opens a choice between View in Almanac and Resource connections.
Added the resource-connections window to inventory analysis, with links to the related automation schemes.
Resource actions also work from the compact Automation Board; opening connections expands it to the appropriate full view.
Added keyboard navigation and focus handling for the resource action menu, including arrow keys, Home, End, and Escape.
Kept the action menu within the viewport and dismissed it on outside interaction, scrolling, or resizing.
Prevented passive hover tooltips from overlapping an open resource action menu.
Resource-connections windows receive focus when opened, and omit the graphs action when that view is unavailable from the current entry point.
Pinned recipes now appear before unpinned recipes in quick resource lookups, retaining the existing tier order within each group.
Pin status uses the current planner state, and pinned recipes retain a visible indicator even where pin toggling is unavailable.
Throughput sorting now orders signed net-flow values from highest to lowest, with alphabetical ordering for equal rates.
Inventory electricity consumption now includes automation control energy as well as recipe electricity, without counting recipe fuel twice.
Electricity net flow, surplus/deficit status, and time-until-empty calculations now use that complete consumption figure.
Active electricity flow can appear in inventory analysis even when stored electricity is zero.
The colonist automation console now starts collapsed when no saved preference exists; remembered panel preferences still apply.
Kept the automation scheme window manager anchored in the bottom-right corner when the compact board changes height.
Improved expanded compact-board button layout and resource separators, including separator consistency at fractional interface scales.
Fixed Almanac navigation opening the wrong spread near the final resource pages, including the penultimate entry and recipe ingredient links.
Fixed building preview ambience continuing after the hovered card is removed from Favorites, restored from Hidden, or otherwise disappears from the current filtered list.
Updated automation upgrade descriptions, research text, guide explanations, statistic tooltips, and new interface labels in all nine supported languages, including relevant demo guide copies.
Corrected upgrade ingredient lists in the guide and clarified the difference between control energy and recipe fuel.
