[p][/p][p]Hi everyone,[/p][p][/p][p align="start"]Our
March 2026 Bug Fix Update goes live today![/p][p align="start"][/p][p align="start"]For this free update, we focused on squashing a bunch of bugs. We also made some changes to the sim and upgraded the version of the Unity engine we use. Everything mentioned in this post applies to all versions of ONI. [/p][p][/p]
Highlights
- [p]Upgraded Unity[/p]
- [p]Modified the temperature exchange formula to be less error-prone.[/p]
- [p]Small masses (micrograms) now exchange temperature in the sim. [/p]
- [p]Fixed a number of bugs with off-gassing liquids.[/p]
- [p]Domesticated plants no longer consume fertilizer while wilted. [/p]
- [p]Hidden fog of war tiles associated with POIs will now be correctly revealed. This will not fix existing saves. [/p]
- [p]Fixed open doors transferring temperature in a vacuum. [/p]
- [p]Batteries no longer function when entombed.[/p][p][/p]
A little more detail…
[p align="start"]We tweaked the formula we use for temperature exchange for tiles and debris, making it more stable for small fluctuations and oscillations. It should feel the same, just less buggy! We've also added temperature exchange for small masses, which should clear up the issues folks were experiencing when using the Conveyor Rail Element Sensor to separate out cooled elements from hot ones. [/p][p align="start"]Off-gassing liquids that were emitting gases in the wrong amount or at the wrong temperature, removing more liquid than intended, and/or deleting mass from the tile below them… will no longer do that! Whew.[/p][p align="start"]Ugly Criers now produce the expected volume of tears. Previously, some tears were evaporating instantly because they didn't have enough mass. Now, Dupes will hold back their tears until they've got enough mass built up to properly open the floodgates of emotion. Meanwhile, Duplicants who share the same name will no longer mistakenly share the logging of their stress modifiers in UI screens. [/p][p align="start"]Open doors will no longer cause temperature to be exchanged in a vacuum. This resolves issues where open mechanized airlocks could erroneously transfer heat, and should also resolve instances of gases not flowing through open doors.[/p][p align="start"]In new games, POIs that are hidden behind fog of war will now be revealed correctly. [/p][p][/p]
Summary
[p align="start"]We took a break from paid DLCs to fix bugs! Hopefully, this helps everyone's colonies chug along more smoothly - surviving in space is challenging enough already. [/p][p align="start"]Found new bugs?
Report 'em here. Got feedback?
Let us know here! Your insights are super valuable to us. Thank you so much for playing![/p][p align="start"][/p]
Full patch notes
[p][/p][p]
Changes and Improvements[/p]
- [p]All versions[/p]
- [p]Upgraded to Unity 6.3.[/p]
- [p]Made adjustments to the Printing Pod sidescreen UI Layout and added a Research button.[/p]
[p align="start"]
Fixes[/p]
- [p]All versions[/p]
- [p]Simulation[/p]
- [p]Removed lower mass limit for temperature exchange in the sim for tiles and debris.[/p]
- [p]Tweaked the formula we use for temperature exchange for tiles and debris, making it more stable for small fluctuations and oscillations[/p]
- [p]Fixed a bug where material that didn't exchange temperature would not consider changing state.[/p]
- [p]Fixed bugs where off-gassing liquids in the sim could emit the wrong amount of gas, emit it at the wrong temperature, remove more liquid than was intended, and/or delete mass from the tile below them.[/p]
- [p]Batteries no longer function when entombed.[/p]
- [p]Percentages displayed in the UI no longer round up to 100%, to avoid confusion in cases where the real number is actually slightly lower (e.g. 99.6%).[/p]
- [p]Domesticated plants no longer consume fertilizer while wilted.[/p]
- [p]Nosh Beans, Sleet Wheat Grain, and Mimillet will now rot while marked for compost, and retain their rot value if the compost request is cancelled.[/p]
- [p]Adjusted mouse drag threshold before a click is interpreted as a drag, to reduce mislicks on buttons.[/p]
- [p]Hidden fog of war tiles associated with POIs will now be correctly revealed. This will not fix errant tiles in existing saves.[/p]
- [p]Duplicants with the same name will no longer share logging of stress modifiers in UI screens.[/p]
- [p]Ugly Criers will now weep the correct volume of tears.[/p]
- [p]Doors[/p]
- [p]Fixed doors exchanging temperature while open in a vacuum due to automation signals causing them to be in an incorrect state.[/p]
- [p]Door access control change requests will now persist in save files.[/p]
- [p]Fixed an issue where applying copy settings to both tiles of a door resulted in the settings being applied twice, undoing the settings change. This may fix other copy settings bugs as well.[/p]
- [p]Power System[/p]
- [p]Computing the maximum safe wattage of a building on an electrical network (Properties tab > Circuit Overview), now considers joint plates that are part of that circuit, as well as wires. Prior to this change, joint plates were not considered.[/p]
- [p]Disabled power transformer buildings will no longer incorrectly display the No Wire status.[/p]
- [p]An electrical circuit with a broken Wire Bridge will no longer initialize as connected when loaded from a save game.[/p]
- [p]Fixed an issue where a Power Shutoff constructed on an inactive logic network would default to active. The default behaviors are now:[/p]
- [p]No logic network: active.[/p]
- [p]Inactive (red signal) logic network: deactivated.[/p]
- [p]Active (green signal) logic network: active.[/p]
- [p]Critters[/p]
- [p]Fixed Pacus playing idle animation when a wrangle errand is created or cancelled.[/p]
- [p]Fixed Bammoth and Hatch missing ropes when wrangled.[/p]
- [p]The "No Critters Available" status for Shearing Station, Grooming Station and Milking Station is now "No Critters Ready." This avoids confusion in situations where there are shearable critters nearby who are not yet ready to have their shearables harvested.[/p]
- [p]The Critter Fountain's contents no longer exchange temperature with the environment.[/p]
- [p]The Milking Station description has been updated to include Husky Moos and biodiesel.[/p]
- [p]Pitcher Pump[/p]
- [p]Fixed a bug where Pitcher Pumps would report incorrect volumes of available liquids.[/p]
- [p]Fixed Duplicants occasionally becoming infinitely stuck using a Pitcher Pump at single tile depth.[/p]
- [p]The Pitcher Pump will no longer extract liquids from outside the visually indicated area of interaction.[/p]
- [p]Story Traits[/p]
- [p]Fixed a bug where Fossil Fragments marked for excavation were not creating an errand on load.[/p]
- [p]Fixed Somnium Synthesizer not consuming small amounts of Dream Journals correctly, which was preventing it from accepting delivery requests for more Dream Journals.[/p]
- [p]The Wall Chart prop in the Printerceptor POI now unlocks only the next journal entry. It previously had a specific entry to unlock first.[/p]
- [p]Fixed a bug where irrigated plants using the Hydroponic Farm were growing and unbothered by the lack of irrigation when loading a save where those plants had been wilted due to insufficient amounts of liquid in the farm tile.[/p]
- [p]Fixed a bug that was causing Command Capsules and Spacefarer Modules to fail to show player-customized names in the Details screen title bar.[/p]
- [p]Previews for striped and curved drywall blueprints under construction will better match the completed building.[/p]
- [p]Splash effect now plays correctly when things fall into liquid.[/p]
- [p]Fixed bug preventing certain plant seeds from being displayed on Pedestals, Shelves, and Sweepies.[/p]
- [p]Fixed an issue where timers on Filter/Buffer Gates were inaccurate.[/p]
- [p]Fixed items no longer exchanging temperature with their environment after being removed from a Refrigerator.[/p]
- [p]The Liquid Shutoff will now retain the current flow it was saved with, rather than resetting to 0 on load.[/p]
- [p]Duplicants with the Banshee stress reaction will now wail if the reaction triggers while they are standing in liquid.[/p]
- [p]Fixed building lights appearing invisible when loading saves.[/p]
- [p]Minor adjustments to Research sidescreen layout on research stations.[/p]
- [p]The Apothecary's Effects panel now mentions that it produces medical supplies.[/p]
- [p]Fixed "Plant" sidescreen button and Emulsifier building translations in Korean localization.[/p]
- [p]Right-clicking will no longer also register as a left-click on UI widgets.[/p]
- [p]Fixed an issue where names of items in storage were truncated too early. Adjusted the font.[/p]
- [p]Corrected an error in the values displayed by the Condition Panel's Body Temperature tooltip.[/p]
- [p]Base game only[/p]
- [p]Fixed a crash that would occur when selecting a space destination with a modded element no longer present in the game.[/p]
- [p]The Telescope building's description no longer mistakenly states that it produces Data Banks.[/p]
- [p]Added Data Bank production information to the Enclosed Telescope's database entry.[/p]
- [p]Spaced Out! only[/p]
- [p]Fixed an issue where deconstructing a Solo Spacefarer Nosecone and building a Spacefarer Module resulted in some tiles not being buildable.[/p]
- [p]Fixed an issue where the Orbital Cargo Module was not requesting materials upon landing.[/p]
- [p]The Telescope and Enclosed Telescope buildings' descriptions now both specify that they produce Data Banks when revealing starmap hexes. They also list Data Bank production in their Effects panels.[/p]
- [p]Fixed the "Thrilling Flight" status item persisting on Duplicants even when they were no longer in space.[/p]
- [p]Fixed Hatches not having shadows in the Critter Cargo Bay.[/p]
- [p]Selecting a roundtrip rocket while it's mining a Space POI will now show the name of the pending roundtrip destination in their UI.[/p]
- [p]Corrected a typo in the database entry for Plug Slugs.[/p]
- [p]The Bionic Booster Pack[/p]
- [p]Fixed an issue where Bionic Duplicants would not consider power banks, oxygen canisters, or Gear Balm inside rockets if they were on the main asteroid.[/p]
- [p]Fixed Flydo attempting to pick up things through doors and then failing because they can't reach the specific cell.[/p]
- [p]Fixed a crash that could happen when Flydo evaluated errands.[/p]
[p align="start"]
Modding[/p]
- [p]Upgraded Unity version to 6000.3.5f2.[/p]
- [p]Upgraded Harmony to 2.4.2.[/p]
- [p]Fixed the infinite loop of "restart to re-install mod" in the presence of disk I/O errors.[/p]
- [p]Handle file I/O errors that may occur when installing a mod from its source.[/p]
- [p]When a mod is pending a re-install, it will display its version as "Re-install Pending" to avoid confusion over what version is installed or loaded.[/p]
- [p]Given the changes to Unity in version 6, we feel the best starting point for mod development is .NET Standard 2.1. We believe this because some uses of .NET Framework are not cross-platform compatible, and we expect future changes will make increased use of types that require .NET Standard 2.1, such as Span. We will, however, continue to build ONI using Unity’s .NET Framework API Compatibility Target.[/p]
- [p]Added a Mod Safe Mode. If the game crashes before the main menu it will load into Mod Safe Mode next time the game starts. In safe mode, mods are not loaded. This offers an opportunity to disable mods before restarting.[/p]
- [p]Mod Safe Mode is disabled if a dev mod is enabled.[/p]
- [p]Mod Safe Mode can be disabled by editing your kplayerprefs.yaml using the int key DisableAutoModSafeMode. For advanced users only.[/p]
- [p]As part of the Unity upgrade, TextMeshPro was updated. If your mod interacts with TextMeshPro, or you use a modding library that does, there might be some breaking changes to review.[/p]
- [p]Modified TextMeshPro to include the unused variable TMP_Text.ignoreRectMaskCulling. This prevents an issue with mods using PLib after the Unity upgrade.[/p]
- [p]Added TMP_InputField.DeactivateInputField() with no parameters as this was a common failure of a number of mods.[/p]
- [p]Added a helper function Texture2D ModUtil.LoadTexture(string) to allow .NET Framework targeting mods an alternative to Texture2D.LoadImage(byte\[]) which has a Span overload causing compilation issues.[/p]
[p]
[/p]