Getting ready
It’s been a month of deep end tech work focused on upgrades, refactors and performance – laying the foundations for an improved Stationeers experience across the board towards 1.0.
After two years, we’ve upgraded the engine version to take advantage of awesome new Unity 2021 features. There’s big performance gains, too, plus rendering and network stability improvements, and a new debug console – critical groundwork for wow to come.
So we’re light on content this month, but giving some much-needed love to our codebase means our players will starting feeling the difference.
Unity 2021
At long last, we’ve upgraded to Unity 2021, bringing a raft of new tools and opportunities, from performance and profiling to fancy blinking lights. Of course, in the short term, shifting engine version required a lot of fixes and tweaks, but we're already seeing payoffs, and it sets the stage for much more in future.
Performance
This update sees the first of many heavy duty performance pushes going live, with adjustments to our update manager seeing up to 30% gains on large bases.
We’re also changing the way we render objects in game – consolidating materials into a single, more efficient material and reducing the number of renderers. It's a system we’ll be extending over the coming months to further boost performance.
Network upgrades
While we were poking around, we began moving away from Unity’s deprecated networking system. Our aim: provide a much improved networking experience, stability and performance in multiplayer. As a first step, we've refactored joining and have seen serious efficiency gains.
This is a big move, and one we’re spreading over several updates - watch this space, as we extend this refactor to the live game.
Debug tools
With a new IMGUI-based in-game console, we’ve introduced a new debug system to help you understand what’s happening under the hood. Just press '/' to jump in.
Expect lots of debug tools in coming months!
Version 0.2.2943.14662
Hot Fix
- Fixed roll cover not blocking atmosphere when opened
- Fixed player freezing in space when using Stationpedia
- Fixed dead Corn no longer takes the appearance of Cardboard and now looks like dead corn.
- Fixed Frame-time spikes when tooltip updating (performance regression from Engine upgrade). Construction should feel smooth again.
- Optimised Tooltip. 50% faster than previous stable build pre-engine upgrade.
- Fixed Rcon and dedicated server authentication issues.
- Fixed Rcon crashing stationers.
- Fixed items being able to be thrown in to slots of the wrong type
- Fixed Input text box sizes in settings. Text should now sit nicely inside the boxes.
- Fixed an error appearing when modifying settings using the input fields.
- Fixed Refrigerated Vending Machine stacking issues
- Fixed Rocket Gas Mining module build states , It should no longer be invisible.
- Community Stationpedia edits (BigFootMSR, Zappes, Neoun)
- Fixed Unable to put circuit boards into consoles.
- Removed laptop recipe from electronics printer
- Updated .NET compatibility from v2.0 to v4.*
- Fixed Deconstructing planter, Planter will now return its kit when deconstructed with a tool.
- Fixed error (NullReferenceException) when trying to place a Steel Frame
Code
- Optimised FPS for large bases. Saves with 20K+ things should see a 15-20% performance improvement.
- Added explosive force to "halt and catch fire" command (hcf) on the advanced hardsuit.
- Added Setting variable to AdvancedSuit. Credit to Asleep-Kiwi-1552 on reddit, who made a weather warning IC system but had to use air settings for storing values. This should make it much easier!
- Replaced shader on frames to improve batching and rendering performance of differently coloured frames. This is a first pass, to be extended to other things later.
- Added "count" to console. e.g. "count [AllThings / Structures / DynamicThings / AnimatorThings / Pipes / Cables / Atmospheres / CableNetworks]"
- Changed FPS optimisations for PlayerStatus UI.
- Changed it so that not all items in slots cast shadows
- Changed Increased volume of mining
- charge countdown beep sound.
- Changed Allowed Horizontal Autominer to travel over small gaps in terrain.
- Updated Horizontal AutoMiner its lights now turn on when powered.
- Added ability to open window shutters using a crowbar if not powered.
- Added new console for debugging purposes. The debugger can be opened using the key '\'.
- Improved Audio on OGRE Horizontal Autominer
- Updated Advanced tablet, Further stability added to Advanced tablet, Turning it on and off again will fix it.
- FPS Optimisation for PressurePlates. Thanks Masoneer.
- Added the ability to force hydrate other players
- Fixed (provisional) excess data being generated on client join to sync things. When a client was joining, the host was not generating the message to sync this to client efficiently. The approach from another game we are making (art of the rail) is very efficient, and we have begun porting this over. This takes the data we need to send and carefully packages a byte array, being very deliberate about how big each big of data needs to be. This is vastly more efficient. This data is then compressed, and sent to the client. Our testing indicates a massive difference, in many cases at 2 to 3 orders of magnitude (1000 -> 1). We have only improved a small fraction of this, as other areas can be ported to this system. It requires extensive testing, however.
- Fixed performance issue when looking at tablet screens
- Fixed lag spike when opening and closing
- Fixed FPS drop when opening and closing helmet.
- Fixed Performance bug with Composite Windows. Saves with large numbers of composite windows should notice a performance improvement. Thanks Kenny for providing a great test-case that highlighted this issue!
- Fixed Breathing state getting stuck in breathless mode when opening/closing helmet quickly in vacuum.
- Fixed performance issue with large numbers of SolarPanels causing fps drops when tracking the sun via logic or IC.
- Fixed inventory selection indicator not working correctly
- Fixed growth states on Tropical and Peace lily plants.
- Fixed Performance optimisation for signs.
- Fixed being able to scroll to hidden inventory windows
- Fixed visual helmet glitch after leaving a seat/bed/rover etc.
- Fixed OGRE not being controllable via logic after triggering it manually
- Fixed regression of shutter not blocking atmos
- Fixed window shutter not blocking building of objects correctly
- Fixed performance issue when tooltips are displaying
- Fixed custom world menu not loading and getting in to a locked game state
- Fixed dedicated server failing to run correctly
- Fixed GPU instancing not being enabled on minable materials
- Fixed dynamic objects still being created from kits when action was canceled before completion.
- Fixed circuit board being moved to the world when the glass on the console is removed.
- Fixed certain Foods not turning into Decayed Items when exiting the Silo.
- Fixed Window Shutter unable to deconstruct.
- Fixed Crowbar unable to open the Window Shutter when unpowered.
- Fixed OnOff and Powered sounds not playing on LiquidTurboVolumePump.
- Fixed Default setting on LiquidTurboVolumePump to 500.
- Fixed Soybeans. Soybeans can now be added to the microwave.
- Fixed Backup load menu. Worlds can now be selected and loaded from the backups list.
- Fixed Portable Composter deconstructing into a debug item.
- Fixed Composters creating Bugged fertilisers that would prevent plants from growing.
- Fixed a bug with rice, it can now be placed in a microwave.
- Fixed devices (light sensor etc) receiving light if the structure that's supposed to be blocking the light is in the same grid. Now correctly occludes the light.
- Fixed the Horizontal AutoMiner track's texture offsetting incorrectly given the direction it's moving in.
- Fixed the Horizontal AutoMiner floating too far away from terrain before it figures out it's floating.