Skip to content
Enter Submit to view all results. Ctrl+Enter View and filter in instant search.
Close ×
Search powered by Algolia

Performance Improvements



The last two weeks have had me buried head-first into optimization work to improve frame rates and the general experience. Due to the heavily simulation-based nature of this game, our bottleneck for performance is almost always due to the CPU and not graphics rendering. The sensors system is the most complicated of all the game's systems, particularly when there are lots of objects to track. For example, large groups of missiles.

For those who aren't aware, all sensors in Nebulous gain and lose tracks in an "acquisition cycle" once per second, and update those tracks every 1/4 second. These cycles occur simultaneously, for all ships, in the same frame. This leads to large spikes in frame processing time whenever the sensors are doing work. Fortunately, we can spread this load out across multiple frames in order to smooth out those spikes and keep performance consistent, which was the first optimization I made.

There are also a number of other optimizations that were made, including huge optimizations in point defense target prioritization (the main culprit of slowdown with lots of missiles), caching of radar cross-section calculations, and more. If you're interested in the specifics, they'll be discussed in detail in a future devlog.

Overall, you can expect significantly improved performance even when large numbers of missiles are flying.

Dynamic Time Dilation

However, even these significant optimizations can't keep us at 60fps when 300 missiles are on their way. In order to help maintain a framerate that allows you to move your camera and continue issuing orders in these dire circumstance, I've implemented dynamic time dilation synchronized across all multiplayer clients.

When fixed frame processing time becomes too long on average (so it will take a second or two to kick in), the game will automatically begin slowing down time to allow more processing capacity. The time dilation will increase and decrease dynamically to try to maintain a reasonable framerate, and will return to 100% when the large load is gone.

New Maps

This update is adding two exciting new maps, including the largest we've ever added and the first to introduce a 10 player limit.

Caltrop, a spike-covered ice comet for 6 players:


Canyon, a dusty ravine between two massive rocks with lots of holes to hide in for 10 players.


Light Cruiser Buffs

Every hull has a primary job it's designed for, and the boundaries of that job can be stretched a lot by how the player configures it. In general, the hulls excel in their primary purpose, but the Light Cruiser tends to fall short. The CL is primarily designed for anti-support roles: beating up on groups of smaller ships before they can get to the main force. Unfortunately, its current stats don't tend to work out in its favor in most of the engagements it should be purpose-built for.

In this patch we're buffing the Vauxhall in a few ways. It's armor has been increased to 30cm, making it much more resistant to 120mm HE and forcing smaller ships to shift to AP to do damage. We've also bumped its top speed by 2m/s, giving it more chance to run down faster ships when paired with the appropriately-buffing engines. Finally, 250mm HE-RPF is getting a slight damage increase to 13 damage per fragment to increase its offensive capabilities. These changes should give the CL some more favorable match-ups against its primary targets, specifically Corvette and Frigate swarms.

If you're interested in contributing to balance changes, don't forget to join our Discord and get the appropriate role in the #welcome channel: Join Our Discord

Full patch notes follow:

Changes/Features:
- Made optimizations for the following systems:
- Sensors and sensor networks, distributing their load of acquiring/updating tracks across multiple frames.
- Reduced repetition of work in point defense prioritization.
- Caching of radar cross-section calculations when the viewing angle has not changed significantly.
- Reduced frequency of network position updates for missiles.
- Added dynamic time dilation, synchronized for all players, when fixed frame processing time becomes too long.
- Added an encouraging message when multiplayer game hosts attempt to quit before the battle is resolved.
- Missile track number and range text is no longer displayed unless the mouse is hovered over the track, to remove clutter and increase performance.
- Clicking a player's name in the Battle Report will open their Steam profile, allowing you to friend/message them.
- Added a player list accessible in battle by pressing the ~ key.
- Players can now be muted by clicking the mute button in the player list. Players you have blocked via Steam will be muted by default and cannot be unmuted until they are unblocked.
- VLS launchers will now iterate through the full set of launchers before returning to the start, rather than the first available one.
- MLS launchers will now iterate launchers in sequence instead of dumping each load in turn.
- Added priority-based sorting to HUD markers, so you can always select your ships in the middle of a mass of your own launching missiles.
- Formations will no longer automatically clear when the guide ship is eliminated, allowing more opportunity to use the ALD command.
- Updated general UI button sound to be less harsh.
- Add new maps "Caltrop" for 6 players and "Canyon" for 10 players.

Balance:
- Increased Vauxhall Light Cruiser speed to 26m/s (was 24m/s) and armor thickness to 30cm (was 24cm).
- Increased damage of 250mm HE-RPF to 13 per fragment (was 10).

Bug Fixes:
- Fixed color picker not matching correct Hue when opening it after returning to the main menu.
- Fixed camera getting stuck at an incorrect orientation when flipping view at the deployment screen when the cinematic starts.
- Fixed ship summary bar being below the selected ship when the camera was flipped.
- Fixed repair teams who do not have restore capability being assigned restoration jobs and not consuming restores.
- Fixed coroutine failing to start error when a mount's status changed while the UI was hidden.
- Fixed degraded thrust from destroyed thrusters not always being applied in the correct direction.
- Fixed chat background staying on screen when all messages have faded out.
- Fixed light on Riposte destruction effect not fading correctly.
- Fixed exceptions occuring when saving a singleplayer game while missiles were in the process of launching.
Windows Nebulous Content Depot 887571
  • Loading history…
Ad-free Steam data for everyone since 2012
Support SteamDB • Donate or contribute
Open link