Build 1.0.2
We've been busy this week working on bug fixes and requested features. A few of the biggest requests were for improved performance and better high-resolution support.
In response, we implemented major optimizations across the game, specifically targeting Steam Deck performance. We're happy to report that the game now runs at a solid 60 FPS on the Deck, with only occasional dips into the 50s. We are still setting this to 30 FPS by default to be on the safe side, and ensure you have no frame rate drops. However if you want Cloudbreaker as smooth as possible, and accept the occasional dip towards the end of a run, you can set this to 60 in the options menu.
We also reworked the Crisp display mode and made it the default setting, ensuring the game looks sharp on larger screens.
Finally, we changed analytics from opt-out to opt-in. While opt-out helped us gather key balancing data during the demo phase, we agree that this choice should be presented upfront rather than buried in the options menu. You will now be prompted to opt in when launching the game.
Balance:
Endless mode now scales enemy health with the run clock as well as the spawn rate. Health doubles every 20 minutes up to the 20 minute mark, then triples every 20 minutes, reaching its cap at 80 minutes.
Bug Fixes:
Fixed the game freezing permanently on the transition screen when returning to the main menu from the hangar while pressing buttons. The same freeze could also happen when abandoning a run from the pause menu.
Fixed a ship's skill tree sometimes being overwritten by the tree of the ship you had before.
Fixed the window un-maximizing, jumping back to its saved monitor, and re-centring itself after every dive.
Fixed the Crisp scaling mode not actually being crisp.
Fixed the whole image sitting half a pixel off the pixel grid while scaling.
Fixed a few analytics events still being sent after opting out.
Fixed bug and feedback reports failing to send for players who had opted out of analytics.
Fixed crash and freeze reports attaching the wrong session's log, dropping the notes that say where the game stopped, and losing the last minutes of the log. Reports now also record whether the game recovered from a freeze.
Improvements:
Analytics is now opt in rather then opt out.
A maximized window is now remembered between sessions.
Added 2240 x 1260 and 3200 x 1800 window sizes, so 1440p and 4K screens have a large window that fits their desktop.
The scaling mode is now chosen to suit your monitor on a first run, instead of every screen but 1080p defaulting to the soft Aspect mode.
While fullscreen, the resolution dropdown now shows the size the game is actually running at, rather than your last windowed choice.
Smaller download: removed unused store art from the build.
Performance:
A large optimization pass, aimed at the Steam Deck and at heavy late run fights.
Off screen enemies are now run by a single manager, instead of every enemy updating itself each frame.
Enemies far off screen have their sprites hidden outright, move on alternate physics ticks, and no longer turn their damage colliders.
Damage numbers are driven by one updater rather than each number running itself.
Animated noise effects only redraw while something visible is showing them, and pulsing interface elements stop working while hidden in a closed menu.
Docks now sit idle until your ship is in range. A late run can hold dozens of them, and every one was reading input several times a frame.
Swarm Mothers spread their brood over several frames when a lot of them hatch at once.
Enemy bullets only test against your ship now, instead of three collision layers.
Loose Bloil left off screen combines sooner and closer in, so a long dive carries far fewer stray droplets.
The startup performance measurement is now stricter about what counts as fast enough to hold a 60Hz physics rate, because the scene it measures is lighter than a real late game fight. This only affects machines that have not been measured before, and both the physics rate and smoothing can still be set by hand on the graphics options page.
Removed an unused grid system and an unused noise texture from the part cards.