Dragging Items no longer destroys suits
Throughout most of the development dragging items has been dangerous, often resulting in a buggy experience that resulted in destruction of suits, development of leaks, even damaging the player severely. With the refactor this had become even worse, to the point where dragging crates or containers was almost impossible without risking catastrophic damage.
This has now been resolved. The issue was that while we were removing dangerous collisions with what you were (or were recently) carrying, often it wasn't what you were carrying that was damaging you - it was you being nudged by that thing into another structure. Extensive testing has been conducted, and it is now safe again to drag canisters, containers, and tanks.
Placement on both sides of walls
This is probably one of the most requested features on the project, and it's now here. You can place wall devices on both the front and back of walls. The devices will default to facing towards you, so to place something on the other side of the wall you will need to be facing that side.
New Fire Mechanics
Fire is one of the oldest features of Stationeers. This week we've changed how fast fire burns, and the conditions that allow it to burn, as well as added a new oxidizer for even more firey explosions.
Fire between volatiles and oxygen has been slowed down significantly. Now atmospheric fire is more likely to spread around, instead of instantly exploding. This also effects fires burning inside of furnaces, so being able to inject, or pump out fuel, of an active furnace is a lot more achievable. The increase of regular fuel autoignition temperatures, combined with the removal of several other pressure limitations makes using regular fuels significantly safer, readable, and, in the event of an accident, recoverable.
But for the pyromaniacs out there, we've added N2O as a new oxidizer to use, which allows volatiles to burn significantly hotter, faster, and at a lower autoignition temperature. This new high temperature fire allows you to reach hotter temperatures than ever before. Furnaces with large quantities of gas can easily be reheated, and gas generators can produce even more power, all while using a lower ratio of volatiles to combust.
We've also improved our volumetric fire effects. Density, temperature, and pressure will all drive the new particle effects, and allow you to tell the difference between a small welder accident, and a suit melting furnace explosion.
New Logic Gate Unit
A community request on the forums was made for a Logic Gate unit. This has been added. This allows you to take two inputs and perform a boolean operation on them. You could do this within our MIPS IC system, but there were no dedicated logic devices to perform them. Normal boolean operations are supported such as OR, XOR, NAND etc… Additionally, NOT has been added as a comparison operation to the Unary Math processors as well. You can build this device from the Logic I/O Kit.
In-game Help system updates
Community content continues to be one of the best ways to explore Stationeers, and given the depth of the game this is probably never going to change. However, it is vital we do a better job of providing important specific information to the player inside the game wherever we can. As such, Stationpedia has been redeveloped.
The search functions were optimized and their operation parallelized. This means that it no longer causing performance issues while searching. Additionally the search itself is much more robust. You can type a sentence and the search will look for all the words contained, in any order. You can also search for multiple fuzzy phrases by separating them using a comma. So, for example, you could search for "canister water, travel" and any items containing the words "canister" and "water", OR "travel" would be shown. The search system will also return information as soon as it finds it, and keeps searching.
We will be continuing to expand this constantly through the future, to provide as much information as we can to help you play the game.
Multiplayer Connectivity Changes & Fixes
We removed the use of external SDKs that were bound to steam from our multiplayer to ensure the game would always be playable, even if our studio and steam ceased to exist. We believe this is an important way games should be made and so have committed to, as much as possible, not relying on external systems that don't fully support cross-play. We strongly believe that it is important that people can play our games together regardless of where the game was sourced from.
However, this has meant we have had to roll many systems into the game and matching players together through the rather complex world of the internet has not been easy. We put a lot of time into trying to clean this up, working through issues the community identified here and on the forums.
There were significant problems with how we were initializing connections with your network device for some users. Many had no trouble, but we had been relying on the OS to assign us the valid network device - but this wasn't always true. Now we loop through all available network devices and look for one that can support the external connection stationeers need. Additionally, Upnp is then registered for that specific device. In some cases, these ended up being different devices.
We do still have more work to do here, so please do let us know issues you are having. We may implement steam peer-to-peer again as an option later, but we need to finish all our refactor work first as this would be a major package of work and we wouldn't want to have to redo it again.
Optimization & Stability fixes for world grids
Some pretty nasty bugs remained around our atmosphere and room registration systems. Within discord I explained a metaphor - imagine a bank where only odd numbers are allowed for bank accounts. All companies then setup there systems to assume only odd numbers are used for accounts. But it turns out, the bank doesn't actually check if account numbers are odd. Imagine a few of the bank staff have a bad day, and occasionally even number accounts get through.
This is what was happening with World Grids - important for atmospheres and rooms. Our systems weren't actually checking if the values provided fitted on the small or large grids - and problems ensued. We've take a key step with atmosphere and rooms to do this, but we suspect there will be continued work to really solidify this. However, we've already seen a much more stable situation.
We've also made sure that the system is much less tolerant of bad data. This might mean the game refuses to load a save or fails to run properly without splitting out errors. Please do let us know when this happens and send us the saves, as we can use these saves to find and fix those issues. In many cases, we can fix the issues within days and post the updates to Beta, rolling them into main on the next weeks update.
Your support makes this possible
The major refactor has been a huge milestone for us and we think you can already see the tremendous success. Your support through bug reporting, suggestions, and direct involvement with our team on discord makes a tremendous difference.
Additionally, you can support us by purchasing the DLC we made to allow those whole like the game to support us, and in return get something a little fun to continue to use in the game.If you like the progress we have made, please consider taking a moment to leave a positive review. This makes a great deal of difference to the project. We have worked hard on this project now for five years, and we feel confident the game is substantially improved from when we started. Many projects steer clear of the hard tasks, and we are proud to have taken them on.
https://store.steampowered.com/app/2089290/Stationeers_Human_Cosmetics_Pack/
https://store.steampowered.com/app/1038400/Stationeers_Zrilian_Species_Pack/
https://store.steampowered.com/app/1038500/Stationeers_HEM_Droid_Species_Pack/
Changelog v0.2.3499.17067
- Changed Atmospheres that are being destroyed have their Direction set to zero.
- Fixed DynamicThings (such as players) could have a registered world grid that was no longer the registered world atmosphere for the location. This possibly caused the hotspot and atmosphere locations what would throw players weirdly whenever they entered the square. Also optimized the atmosphere IsInvalidThing method to use cached values, reducing the overhead check for this method which could be significant.
- Fixed possible null ref if a game was unnaturally paused during chunk deserialization as a client. Split methods into two parts.
- Re-enabled toolbelt Foley sound
- Reverted jitter fix as this had large amount of side effects that need to be fixed (This will be in the next patch, there's to many issues for it to be included in this patch)
- Added network connection fallback to OS default when device check fails
- Adjusted game loading screens to handle all possible display resolutions gracefully.
- Fixed entity's not generating a new animation cancelation token when being revived causing an error which meant that each character could only ragdoll once
- An active welder will now spark the external atmosphere while ejecting its waste gases.
- Temporarily removed ToolBelt Foley until Character juddering issue resolved.
- Fixed input popup/labeler stops working after clicking search button on consoles. Was previously throwing exception but will now do nothing. Search functionality to be reimplemented at a later date.
- Fixed Error spam when clients are looking at dynamic hydroponics.
- Fixed Toolbelt Foley sound could get stuck at Maximum volume causing very jingly movement sounds.
- Fixed refresh rate not being applied when loading settings
- Fixed loading screens were not showing a black background behind them.
- Fixed airlocks were too vast at declaring a vacuum. Reduced their vacuum tolerance to require closer to an absolute vacuum, and they will continue to pull for 1 second longer than they have detected a vacuum. Recommend that you have one active vent per grid square for airlocks using airlock control.
- Fixed issue where cable junctions would not destroy after taking their max possible damage
- Fixed several cases where the welding torch could remain on, despite no combustible fuel being present.
- The welding torch now performs an internal combustion on its fuel, before mixing with the external atmosphere.
- Fixed Ignition sounds playing for very small atmospheric fires.
- Changed Scaled the volume of ignition sounds based on the size of the atmospheric fire.
- Fixed Error thrown by AtmosphericAudioHandler when multiple threads were adding stressed structures to the stressed structures collections.
- Optimizations to VolumetricLights on light sources.
- Fixed failed ping attempt to master server would mean server would not be advertised until manually reset using refresh command. Now will silently get a new session from master server.
- Fixed able to combine road flares when they are already activated and burning. Now cannot combine road flares that are burning.
- Fixed flashing motherboards for airlocks with a screwdriver was not correctly resetting their state. Now correctly flashes and clears all device elements.
- Added Robot will now try and use power out of it's hands, if the robot battery slot battery is null or empty.
- Fixed saving icon would sometimes be stuck on even though game was not saving
- Fixed logic gate model incorrectly showed its inputs in mesh
- Fixed character hair showing helmet variant on first loading character creation even if helmet is not on
- Tweaked animation timings for on off switches on fabricators
- Fixed chunk exception when exiting a game while chunks rendering is being changed.
- Fixed loading screen scaling is breaking for some resolutions
- Fixed main menu game scene background was mismatched for ultra-wide monitors.
- Added back all the loading screens to the game. Moved them into packaged folders, so they aren't taking up extra space.
- Fixed autolathe switch not fully rotation into position
- Fixed reinstated wave emote on keypress using new system
- Fixed sending atmospheres to clients during write was causing NaN exceptions. Now an atmosphere is skipped from synchronization if contains NaN data, usually during atmospheric worker changes.
- Fixed both gas generators possibly creating water during their forced combustion calls.
- Fixed placing wireless power transmitter causes error spam on clients.
- Added network device information to the "network" command to help debug network issues.
- Fixed network issues related to multiple ethernet devices. The game would attempt to bind to the first the OS gave it, Upnp would try bind to the first ipv4 it found. This meant that Upnp and the game would bind to different adapters sometimes. Now the game will assess all network devices to look for all addresses it can use. Then it goes through and attempts to bind to all those addresses. When successfully finding a network device that will commence, it will use that to register upnp. This should solve a fair number of hosting/connecting issues people are having.
- Added emote command for console and an easier way of triggering emotes for future use
- Added 1st pass on sounds for atmospheric fires.
- Changed Reduced particle spawn rate on thing fires to prevent puffing effect when particle system reached max number of particles.
- Fixed character jitter while moving (more noticeable at higher frame rates as the framerate and physics updates timings diverged)
- Added our own managed LateUpdate loop in the same way as our managed Update loop and implemented it on some managers
- Fixed N2O combustion not correctly adding nitrogen gas to the combustion gasses.
- Fixed loading images leaving borders when scaling on ultrawidescreens
- Fixed Atmospherics thread race condition error that could happen when multiple fires we're being registered or deregistered at the same time.
- Refactored Stationpedia search system. Words separated with spaces are searched for in text, in any order. Phrases groups can be made using commas, for example "water canister, travel" will search for records that contain "water" and "canister" (in any order), OR any page containing "travel".
- Added spawn menu filtering now will search for items using any typed word, but in any order. So you can type "canister water" or "water canister" and it will show results that contain those words.
- Fixed incomplete walls/windows would seal solars and extendable radiators from storm damage. Now damage checks not just for room, but for a global atmosphere. This means that solars will have to be in a fully enclosed atmosphere or vacuum to prevent storm damage.
- Added StormBegin and StormEnd commands for debug purposes to spawn or end storms. Note these will soon be locked behind an "enable cheats" system.
- Added LocalIpAddress setting. Not shown in game settings currently, but can be added to setting.xml file before load. This will use this IP address with network adapters while trying to register a client/server internet connection. This is useful when having MP issues, if you have multiple devices, as stationeers may be using the wrong one.
- Added animated leak/fire images for slot items.
- Added console font is a monospace font, same as for AotR.
- Fixed non-critical exceptions on exiting game to main menu due to old character trying to still blink after it was deleted.
- Fixed loading screen images stretch for variable aspect ratios.
- Added Solar Panels can be repaired using Glass Sheets, as well as duct tape. Uses between 1 and 2 sheets depending on damage amount.
- Balanced breaking force for joint when "dragging" something such as a container or large gas tank. Now twice as much breaking force is required to force it to drop, which should make it easier to drag things.
- Fixed dropping draggables (such as containers, and gas canisters) near structures tends to cause an extreme collision with the player, destroying their suit and yeeting them across space and time. Previous attempts to fix were removed as they did not work, as they focused on fixing collisions between the item and the player, however, the issue was collision not between the object and the player so much as the player being pushed by the dropped item into structures very quickly. Now this is handled and the collision allowed to occur, but damage not applied for it.
- Minor fix of missing scripts on prefabs.
- Added Stationpedia mouse locking now darkens the background and prevents you from clicking, dragging or targeting anything. This puts the stationpedia in "modal" mode so you can utilize it without worrying about affecting any backgrounds.
- Fixed localized strings could insert carraige returns if poorly configured. Now titles will strip whitespace if text accidentally includes it.
- Fixed color tags broken for statiopedia, affecting some stationpedia files like hash numbers for other worlds for rockets preventing copying them.
- Added toggle on Stationpedia window that will keep the mouse cursor free to move while Stationpedia window is open, instead of requiring you to hold the MouseCursor (left alt) button.
- Fixed input continued while console window, stationpedia, labeller, and editing windows were open. Now it is disabled at base level of key mappings.
- Fixed possible null ref exception when disposing of a player character at end of session.
- Added "regeneraterooms" command. This command will automatically attempt to generate rooms, it will lockup the game while doing so.
- Minor fixes for some english strings with inconsistent kit names
- Fixed Error that could occur when Atmospherics manager tied to clean up fires.
- Removed ProcessFires function. This functionality is now handled by AtmosphericFire Register Deregister functions.
- Replaced Area Power Control (APC) mesh with one that has a power symbol on it to make it more obvious that it is a power device rather than an active vent.
- Added auto snapping of pipe and cable attached devices.
- Fixed able to place pipe and cable attachments without a valid cable or pipe below.
- Fixed able to place cable attachments on non-straight cables. Now only straight cables will allow cable attachments.
- Optimized light managers handling of DaylightSensor to remove creation of coroutines.
- Fixed issue with oxygen fires using double volatiles.
- Added better prompt explaining what deleting a save is doing
- Fixed issue with having same clientID with clones in editor
- Added mesh for LogicGate device. Says "Gate Unit". This device makes boolean operations available for logic processors.
- Added NOT comparison to LogicMathUnary.
- Fixed human eyes staying open when unconscious.
- Fixed Passive Vent (free grid placement) had inconsistent placement to Active vent (face mounted placement). Later update to include different variations for passive vent, but the current structure should be identical to active vent for placement.
- Fixed updated coroutine use on particle effect spawners to use unitask
- Fixed wall mounting for face mounting wouldn't allow orientation on rear side of walls. This was because facemount structures would lock their face orientation to the structure they were mounting on. Now facemount objects will use the closest face to the player regardless of wall direction.
- Changed Build tooltips on unfinished structures only show when tool is in hand.
- Fixed Health bar tooltip now shows when looking at damaged structures regardless of what is players active in hand.
- Fixed Can't place a number of devices. (beta only, introduced rev. 16953)
- Fixed highlight response when hovering over the "exit session" button
- Fixed Atmospherics error where explosions could stall the game tick.
- Re-enabled GameTick Exception Logging.
- Added respawn condition keys to english.xml
- Fixed Many items and devices being destroyed on Venus by greatly increased the energy threshold required for auto ignition.
- Fixed instances where things could be on fire but not show flame particle effects.
- Increased the threshold of combustion before flame FX are shown. Very small amounts of combustion will still happen but flames won't be visible.
- Fixed Welding torch setting atmosphere to sparked even when turned off.
- Inceased the amount of time a helmet takes to burn from 15 to 60 seconds.
- Added ability to place FaceMount objects onto the rear of walls. Previously, you could only place on the front of the wall. This makes placing things on walls far more intuitive than it was before. WorldGrid changes made this much easier to implement than previously.
- Added LogicGate device. This allows applying logical operations such as AND, OR, XOR, etc… to a single boolean output. Input values greater than near zero are considered true for operation purposes. Constructed from the Processor Kits. Note: model on beta still says Logic Select, to be replaced later.
- Fixed Rooms able to be registered with a key that is not a large grid. Non-large grid room registrations were found in some saved games. They have now been moved from using Grid3 to WorldGrid. This likely fixes a bunch of small issues related to room registrations, and various flow on effects.
- Fixed build error by removing unwanted imgui directive
- Fixed removing tutorial folder issues for build server
- Fixed alt dragging items would move them immediately to active hand
- Fixed alt hover indicator sometimes is the wrong color
- Added the ability to alt drag direct from world to slot
- Fixed issue where clients were closing master server game sessions stopping them from being advertised
- Refactored Atmospheric system to use a new enforced WorldGrid value, instead of generic Grid3. This fixes a number of Atmospheric issues that were caused by incorrect position values being sent to the Atmospheric system. Grid3 can be either small or large grid, but the atmospheric system expected only large grid. This should fix a number of atmospheric glitches, such as "hotspots" and burning cables when using the Autolathe on some worlds. Likely will fix a lot of other small atmospheric issues.
- Added atmospheric system will throw errors (and lots of them) if invalid values are passed to it, to highlight the issues so we can fix them.
- Changed Tutorial dir stripping for dedicated server to post-build process
- Fixed Devices and items catching fire in hot atmospheres when atmosphere is sparked.
- Fire will now use Nos as an oxidizer, in addition to oxygen.
- Increased AutoIgnition of Oxygen based fuel mixes to 300DegreesC. Nos based fuel-mixes remain at 50DegreesC.
- Nos Fires will introduce twice the amount of heat compared to oxygen fires, and will produce nitrogen and carbon dioxide by-products.
- Fire now uses less of the available fuel in a single combustion tick.
- Very hot fires will now allow more un-combusted fuel to transfer to neighbouring atmospheres, better representing fuel explosions.
- Changed style of Fire Particles.
- Fixed Fire particles on items and devices that are burning.
- Changed Devices and items only catch fire in hot atmospheres when the atmosphere is inflamed or the Temperature is above its auto-ignition threshold.
- Changed Walls will no longer catch fire.
- Removed partial pressure limitations of both volatiles and oxygen for combustion.
- Removed Combustion minimum pressure requirements.
- Changed pressure differential damage to curve near both minimum and maximum pressures.
- Walls at the pressure limit will roughly take 5x as long to fully burst, and walls at extreme pressures will burst roughly 10x faster.
- Fixed fire particles now move more accurately with atmosphere flow direction.
- Optimised The system that tracks burning items and atmospheres.
- Removed old fire marker prefabs.
- Fixed error spam when looking at some destroyed structures with a tool in hand.
- Changed Inflamed value on Atmosphere is only set inside the Atmosphere.React function. Devices that cause fires should set their atmosphere to sparked.
- Fixed Fire Extinguisher not working in single-player.
- Fixed incorrect tooltip on names of input/output ports on Heat exchanger.
- Changed Swapped location of input2 and output2 port on heat exchanger.
- Changed Heat exchangers now fully passive and will move gas through the unit in the direction of pressure, Maintaining a 10Kpa differential across the input and output will prevent back-flow.
- Fixed issue connecting client to server or host
- Added extra info for network status command
- Reverted change where I accidentally pushed removing await delay in master server ping
- Fixed NRE for player cookie clone editor
- Added game string for starting condition difficulties
- Fixed star skybox was rotating in space map. Now an XML world element is available (RotatingSky, default TRUE) that when set to false will stop the skybox rotation.
- Refactored game initialization system. Previously the game was initializing in a haphazard fashion, causing us issues with dedicated servers and errors with some clients. Now the game initialization is done in a very sequential fashion, in an atomic way so that the entire game can rely in the initialization state when they are ordered for execution.