1. ΔV: Rings of Saturn
  2. News

ΔV: Rings of Saturn News

0.193.6 - Dangling Variants

I was quiet for few last days. We were not idle - we were hunting.

[h3]Hunting for runtime errors.[/h3]
Race condition is a elusive bug to trace. It happens when two parts of the code run simultaneously and interact in unexpected manner. It could lead to crashes, strange behaviour and more weird effects - but the worst part is that the bug is dependent on computer speed, and that can change by having a browser open, second monitor connected, updates in background and myriad different things.

The one we traced caused crashes and things disappearing from the screen. It was really rare on Windows, but quire common on Linux systems - which led me initially to believe that it was a platform issue. It was not, it just happened that Linux run part of the code fast enough that the bug resurfaced more often.

[h3]Debugger was not helpful.[/h3]
Usually I would trace this kind of a bug with debugger or debug build - but it didn't work this time, since they both slow down the execution, and crashes were not happening. I needed a full, optimized release build running Linux to crash reliably in few minutes, nothing else seemed to trigger that reliably. And in order to fix a bug, you need to see it happening.

Fortunately I found out that I could use Windows Subsystem for Linux to trigger exactly same problem. That was a godsend - now I could debug the game without switching the system, which allowed me to iterate much faster.

[h3]Finally crushed the crash.[/h3]
And now we have the bug pinned. Crashes were triggered by a transponder on your Lidar screen, appearing and disappearing as a ship flew past asteroids and out of your line of sight. With just right timing it could crash the game. It happened on all systems, but it was just easier to spot on Linux. If I didn't support that system, finding this bug would be nearly impossible.

0.193.6 release fixes that - along with couple of other unrelated bugs that just happened along the way.

Don't forget to check your cart!

A week-long sale is about to end, don't forget to check if you have stuff left in your cart that you wanted to get!

0.192.26 - Fission Heat

This is a bugfix release, patching up the recently found bugs. Changelog:
  • Fixed a race condition in geologist code that could cause a game to crash if lot of minerals were identified in quick succession and some of them left the detailed simulation area promptly.
  • Fine-tuned AI pathfinding behaviour to make mining ships more careful when navigating the obstacles in rings.
  • Fixed a race condition in ship dealer that could cause game to crash if you entered and exited dealer multiple times in quick succession.
  • Fixed a bug in adaptive autopilot code that caused it to be very wasteful when flying with variable-thrust NTR RCS.

0.192.24 - Insecticide

This is a patch release, fixing some bugs and polishing up some aspects of the game. Changelog:
  • Installed system that you can no-longer afford now is correctly highlighted.
  • Newly bought had illegal cargo bay, leasing to confusing display in upgrade menu.
  • Processing trace amounts of ore with MPU won't display 0 on the HUD now.
  • Adjusted alignment shifts for most of the dialog options.
  • Toggling systems in OMS menu will now have an audible click as your pilot toggles switches.
  • Adjusted the range of simulation for important items. They will now persist longer than dust and gravel.
  • Your geologist will now keep track of estimated cargo value. He can get confused if you lose cargo or pick up items that he didn't apprise yet.

0.192.21 - Day of the Patch

This is a bugfix release, patching up all the bugs reported in recent days. Changelog:
  • Processing H2O-only ore in MPU could cause division by zero and crash.
  • Performance improvements for drone-mounted microseismic scanners.
  • Railgun rebalanced so it can be fitted only on high-stress mount.
  • Additional translations.
  • You can no-longer abuse upgrade menu to get an upgrade for different price than listed.
  • Reaction wheel could fire uncontrollably when ship was microwaved leading to wild spin.
  • I fine-tuned AI collision avoidance parameters, so NPC ships fly more carefully.