1. Rocket Science
  2. News

Rocket Science News

Update v0.20.5 "In Between" is out of Beta!

This was a very hard beta cycle. Unity 2022.3 kept raining bugs, different problems and unexpected changes that constantly broke the game in different places. I couldn’t hope that those issues would be solved on the engine side in time, because even getting a reply from Unity staff is almost impossible nowadays, so I needed to find workarounds to them. Should I mention that most of the issues that I reported in August are still not fixed?

Anyway, I think this update is ready to come out. I’ve described most of its features in the previous post, so let’s talk about the new parts that were not part of the beta and will be available in this release.

[h2]New engines and fuel tanks[/h2]
I’ve added two new engines this time. The process of adding them is pretty hard, because every single engine in the game is based on the parameters of the real ones and I spend a lot of the time on research of existing technology. These ones have a much higher ISP and are best suited for second and third stages of rockets. They have their own drawbacks and should not become the only and obvious choice during rocket assembly (at least I hope so).

"Electron-0210" Liquid Fuel Engine

"Aragna-6410" Liquid Fuel Engine

The only catch, that they should use a hydrogen-oxygen fuel pair. While the game was designed around different fuel pairs, some game systems are still not fully reworked to support that. For example, stage dV calculation, fuel level indicators, maneuver dv calculations is expecting a single UDMH/N2O4 pair. Also there are no warnings during rocket construction that will indicate that current engines are missing fuel. So, to simplify things, I decided to not add a new fuel pair for now, but I will definitely do it in the next update with the necessary improvements and reworks.

FT "Piston"

FT "Bublik"

[h2]New decoupler, fairings and adapter[/h2]
5 m diameter is getting more love now. New Apollo-style decoupler for that radius will make your rockets look much cooler and more convenient for use. Note that it actually consists of two separate parts, like payload fairings.

"Rumble" Decoupler Adapter

"Rumble" Decoupler

I’ve also added another 5 m payload fairing set that should be easier to use for placing rovers inside.

Payload Enclosed Base GO-5

Payload Enclosed Section GO-5 1.4m

Payload Enclosed Cap GO-5

And the first 2.4 to 5 m adapter will provide you more choice while designing your rocket of dreams.

Adapter 1.2-5

[h2]New solar panels[/h2]
There are two new solar panels that are not only compatible with each other, but can be perfectly tiled on a hexagonal connection.

"Gektoplast-A" Solar Panel

"Gektoplast-M" Solar Panel

They are also very light and could be used on a spacecraft, where each kilogram counts

Combinatorial examples

[h2]Parts for skycrane[/h2]
I released rovers in the previous update, but the game lacked some important parts to build fully functional skycrane. Using the next two parts combined with the rover payload fairing, you should be able to finally do it now.

V-1 Sky Crane Base

Nano Reaction Wheel

Putting those parts into good use

There are a lot of changes made to the game during this five month cycle, so I expect that not all bugs were hunted down. So if you encounter something strange, please report it to our discord or on the steam forums and I will try to fix it as soon as possible.

You can find full release notes down below. Another year has come to an end and I wish you good fortune in the year to come. Thanks for playing and see you in the next one.

Flying over Ceres

Flying over Vesta

[h2]v0.20.5 release notes[/h2]
[h3]Features:[/h3]
🔸 added Ceres;
🔸 added Vesta;
🔸 Mars textures rework
🔸 added scaled space filters;
🔸 added celestial bodies list into Control center;
🔸 added search functionality to tracked objects list in the Control center;
🔸 added panel for manual adjustments of the selected maneuver dV during the flight;
🔸 resources panel can display all resources, that spacecraft has;
🔸 added orbit info panel during the flight;
🔸 predicted orbits are displayed relative to target frame of reference now, when you focus camera on it;
🔸 added correct ambient light when flying over surface of the planet;
🔸 added manual brakes for wheels and the corresponding indicator to navball (use ALT+B to toggle).

[h3]New rocket parts:[/h3]
🔸 V-1 Sky Crane Base;
🔸 "Rumble" Decoupler and "Rumble" Decoupler Adapter;
🔸 "Aragna-6410" Liquid Fuel Engine;
🔸 "Electron-0210" Liquid Fuel Engine;
🔸 FT "Bublik";
🔸 FT "Piston";
🔸 "Gektoplast-A" Solar Panel;
🔸 "Gektoplast-M" Solar Panel;
🔸 Payload Enclosed Base GO-5;
🔸 Payload Enclosed Cap GO-5;
🔸 Payload Enclosed Section GO-5 1.4m;
🔸 Nano Reaction Wheel;
🔸 Adapter 1.2-5.

[h3]Part changes:[/h3]
🔸 Zarya engine geometry rework;
🔸 "Mgnovenie\" Probe Core decreased in size;
🔸 batteries slightly reduced height and mass;
🔸 simplified all engine colliders;
🔸 adjusted size of combustion chamber on some engines.

[h3]Changes:[/h3]
🔸 added safeguard, that should check if any spacecraft received a NaN position during orbit calculations and destroy that;
🔸 parachute auto cut now triggers when spacecraft touches the ground, instead of near zero speed check;
🔸 rocket command module selection will prioritize ordinal command modules if there are cockpit or rover present alongside;
🔸 riteg will calculate decay time from launch not from the time it is created in the assembly shop;
🔸 you can toggle on/off delete hotkey for tracked objects list now;
🔸 improved control center tracked objects list UI;
🔸 improved loading times, when entering spaceport or assembly shop;
🔸 game consumes on average 400 Mb less memory;
🔸 "time" debug command now supports input date in string format;
🔸 added support for DirectX12 and Vulkan API (that can be faster on some PCs), that can be enabled via command line parameters:
-force-d3d12
-force-vulkan

[h3]Fixes:[/h3]
🔸 planet surface disappears if you quit to main menu from the assembly shop in blueprint mode;
🔸 exception when trying to attach something on top of engine 4;
🔸 spacecraft with wheels no longer transitions into sleep state when it is no longer moving and after steering was used once;
🔸 rocket can still receive wheel commands even when command module is destroyed;
🔸 maneuver sometimes not placed via context menu;
🔸 orbit planner sometimes predict wrong intersect nodes;
🔸 crash when setting the Sun as a target;
🔸 you can't unset target when surface object was set as a target;
🔸 riteg uses part attachment date as a decay start instead of launch day;
🔸 Circular Extended Unit has wrong orientation for radial dual attachments;
🔸 time warp not working, if spacecraft's lights are on and there is little electricity left
🔸 different typos and missing translations in assembly;

[h3]Known issues:[/h3]
🔸 navball text changes brightness depending on exposure (unity bug);
🔸 SSAO is mostly turned off during the flight because of artifacts (unity bug);

Update v0.20.0 "In Between" Public Beta

Today I am releasing part of the v0.20.0 "In Between" update into the beta branch. This will not include new rocket parts and several smaller features. They need a bit more work, so they will come in two and a half weeks with a full update release. So, let’s talk about what’s new is awaiting you in this update.

Note: this update is in public beta. This means, that you need to swith your game to beta-builds branch, to access it.

[h2]Ceres[/h2]
The first dwarf planet located between the orbits of Mars and Jupiter has arrived to the game! The surface elevation is based on Dawn space probe data and the surface color was built using the newest procedural texturing technology. It is a small body only 946 km in diameter and a mass of 0.0128 of the Moon’s one with a high inclined orbit. It would be almost impossible to reach with the current set of parts, but I will not underestimate players of Rocket Science, who have already arrived on every single present body in the inner planet group with the technology made mostly for lunar flights. So we’ll see how it goes.



[h2]Vesta[/h2]
The first fully made asteroid is now in the game too! It is the second biggest body in the asteroid belt with the mean diameter of 525 km. While it is a pretty big object and its shape is close to a gravitationally relaxed oblate spheroid, the large concavity and protrusion at the southern pole combined with the small mass placed it into the asteroid category instead of dwarf planet one.



[h2]Mars textures rework[/h2]
I’ve mentioned this one in the previous dev update. Not only did it get a new procedural selection of colors, but twice as many materials using some new ones. Here is an orbit view of the planet.



[h2]Control center UI changes[/h2]
I’ve added a new Celestial Bodies list there. It only contains major bodies in the Solar system for now, but I'll add more as time goes on. Spacecrafts list was reworked and can hold more elements and it is harder to accidentally remove your spacecraft now (you should specifically toggle on hotkey removing or use a delete button for that). I’ve also added search functionality to both lists.



[h2]Map filters[/h2]
You can filter your map in the Control Center and during the flight now. You can finally turn off all debris and don’t see it anymore (but the game will still simulate it, there is no way around this).

The filter also applies to the spacecraft and bodies lists in the Control Center

[h2]Flight panels improvements[/h2]
One of the frequent requests was to display rocket orbit data. I’ve added an orbit instrument, where you can see the orbit's periapsis, apoapsis, inclination and eccentricity. Note, that orbit data is available for all spacecrafts, but when the instrument parts system will be implemented, it will be tied to a specific instrument you will need to attach to the rocket.

Please let me know if you need more orbit data and I will add a toggle for that

You can also display all the resources that the rocket has by simple toggle now.


[h2]Other features[/h2]
Two most requested features are in the game: Fast Load button and orbit planner improvements. You no longer need to ALT+F4 the game, if you made a mistake. You can load the last game autosave at any moment during the flight or in the space center.

Due to legacy code limitations, the game will load spaceport by default, but I am planning to make it load directly the flight if you pressed the button during the flight

If you will get an encounter and then will switch to a body in which SOI spacecraft will get to, you will be able to see an orbit relative to this body frame of reference

[h2]Engine update[/h2]
I’ve described this in the previous dev update too. It was a very long and painful process and there are so many changes in the code, most of those are invisible. I’m expecting plenty of bugs and crashes in this update. On the other hand, some systems should start working smoother and faster. There are a bunch of bugs fixed as well, and more to come. Anyway, please let me know if you find anything not working as expected and I will be glad to fix it.

That’s all for today and I am waiting for your feedback.

Dev Update: Overcoming Unity

After v0.19.6 release I took two weeks off to prepare for another big task – the transition to the new 2022.3 version of Unity. This particular one has to be one of the most challenging in the entirety of the game's existence. As I mentioned in previous dev updates, I’ve started building Rocket Science using a lot of newest experimental Unity packages such as HDRP, DOTS, Addressables, Burst, etc. They were under active development, which led to constant API and breaking changes, bugs and other early access stuff that you are familiar with. On the other hand they provided a set of tools that basically allowed me to make this game on Unity as performant as it is.

As time went by some of these packages reached version 1.0 and finally became “stable”. But DOTS ones, using which I built planet generation, orbits and maneuver planner, remained “experimental” until Unity 2022.3. So I definitely wanted to transition to that version of editor and finally get rid of this warning panel and start working on fully stable and supported version of the engine:



The only catch was that DOTS API changed a lot between last version and 1.0 so I wasn’t even able to open Unity Editor until I will apply hundreds of changes into the game's code to implement the new API. It took me more than a month to do all this stuff, but at that moment I thought that it was worth it. Because the code became much cleaner, a lot of dirty hacks and workarounds were removed and some functions and structures became unnecessary because they were already implemented in the newest Unity. Moreover I revisited the architecture of planet generation and made it consume almost 400Mb less memory, which will become very useful when I start to add props and details on the planet’s surface. Also thanks to some changes I made, loading times between spaceport or assembly to flight transition reduced a lot.

But when I fixed the last compiler errors and finally launched the game I was shocked by the amount of bugs this version introduced. Here are only some of the most notable ones.

Navball for some reason lost almost all the color


Ambient lightning disappears during transition between scenes, and sometimes completely


All UI icons render with artifacts


All directional light shadows are broken

And the cherry on top: the game build immediately crashed on start.

This was very unexpected. I haven't seen so many bugs since Unity 2019.3 using which Rocket Science was initially released (and because of that I lost almost 20% of sales in refunds). But I simply couldn’t go back, because I’ve spent so much time on this transition already, so I started searching for workarounds and posting all these bugs to Unity at the same time.

I found acceptable solutions to almost all of these bugs except the broken directional light shadows one. And Unity is always very slow on processing posted issues: it can easily take them a half of a year to fix and backport them to the stable version from the current tech stream. So I began a deeper investigation and debugging and found out that shadows break when any object in the scene is located further than 1e8 meters from the origin, even if it is not in a current camera view. For comparison, the Moon is around 3e8 meters away. And the only workaround was to disable any object that exceeds this distance. Which means no distant rendering (or even planet rendering from high altitudes) which was not acceptable for the game at all.

So I started poking Unity Technologies at forums trying to drive their attention to this bug. And the silence was an answer. Two more months have passed and I finally got the response: they just closed this bug with a resolution “By Design”. They said that Unity has never supported far away objects and don’t have any plans to support it in the future. Which was simply not true. How Rocket Science is working then?

I was very demotivated by this and combined with the news about the new engine pricing model (basically 2.5% revenue share from sales in addition to current monthly payments for the editor). So further development on Unity didn't look very attractive. But I pulled myself together and spent the weekend debugging and deconstructing that shadow bug piece by piece. Surprisingly I found a source of this problem in the engine's code and an acceptable solution for it. At the same time this bug was reopened by some responsible employee from UT and then fixed later (but it will still take at least three months to propagate this fix into the current version of Unity).

This is all great, but I lost so much time that I could have used for gameplay development while doing work that Unity Technologies should do. I'm tired of the fact that most new engine’s features don’t support and don’t even consider space simulators as a type of product that could be built with it. For example they released great cloud and ocean systems, but both of them can only be used on a flat surface. It is also very inconvenient to wait a half of a year until some critical bugs will be fixed and get to the users, because your game release could be completely blocked by this. Moreover this sudden change in pricing model undermines the company's credibility.

But migrating Rocket Science to another existing engine is not an option either. For example, Unreal Engine don’t support C#, Godot doesn’t support Data-Oriented design, Unigine is not that popular and it can be hard to find guides, tutorials and answers to questions about it. So I decided to continue development of Rocket Science on Unity for now, but spend some small portion of time making my own game engine specifically for space simulators. Since I know what I need and 80% of existing game code is engine independent already, it will be possible to migrate it when the time comes. But I don't think it's going to happen anytime soon, because it's a huge task, with a lot of unknowns and research I would need to do. But in the long run it will allow me to do a lot of stuff that is not possible on Unity right now.

Back from Unity mess to the game itself. Here is a quick overview of some features that are currently in development for v0.20.0

[h2]Martian system materials rework[/h2]

I wanted to do it, since the new procedural material system was introduced in March 2022 but don’t have time to. This is basically the last celestial bodies that work on the old one.

Old Mars


New Mars. You can see that surface color become much more realistic


Old Mars


New Mars. A lot more surface detail has appeared that is more consistent with the planet’s topography

[h2]Orbit planning improvements[/h2]
If you will get an encounter and then will switch to a body in which SOI spacecraft will get to, you will be able to see an orbit relative to this body frame of reference.

You can even change a maneuver while staying in the target body reference frame and see, how orbit will change

[h2]Solar system map filters[/h2]
Sometimes it can be hard to plan a flight trajectory because a lot of objects could clutter your view. So I am working on a set of filters that would help you to deal with this problem and clean up your map,

Work in progress, could change before the update

[h2]Processing feedback[/h2]
Last three months I received a lot of feedback from the players, who spend around 1000 hours in Rocket Science. There are different requests there: from simple UI improvements to bugs that crash the game when encountered. I need to process most of it before the release of the update.

As always, more stuff is coming including traditional bugfixing, QoL improvements and more rocket parts. But I will cover all of that next time. That’s all for today, thanks for your support and feedback! See you soon.


Patch v0.19.8

A small post launch patch that improves the game stability a bit and brings some QoL features.

[h2]v0.19.8 release notes[/h2]

[h3]Features:[/h3]
🔸 updated Unity to the latest 2021.3 patch version, which will improve stability and performance a bit;
🔸 added separate icons for planes and rovers to the map;
🔸 improved wheels controls and responsiveness;
🔸 added front indicators for "Mgnovenie" Probe Core and "SOHO" Probe Core;
🔸 added a tooltip to the rocket name on time panel telling you how to edit it.

[h3]Fixes:[/h3]
🔸when new rocket was saved and immediately after that was renamed, the name doesn't change in the assembly UI;
🔸 when rocket was renamed and changes were reset right after that, the changed name not reverted back.

Update v0.19.6 "Awakened Assembly" is out of Beta!

Three weeks of beta testing have passed and I believe that the v0.19.6Awakened Assembly” update is ready for the wider audience. You can read about all major changes in the previous post. But I have prepared for you a few changes that I would like to point out.

[h3]Rovers[/h3]
As you’ve probably seen on the update cover, the game now supports rovers. I would say that this is an “experimental” feature, because I had very little time to properly test them. Also there is no sounds/effects assigned to wheels, because it would take far more time, than I had during the beta testing. But they work (with some edge cases) and open up the whole new exploration axis for the game. There are probably not enough rocket parts to deliver them onto other planets right now, but you can try to do that.

Beautiful view of the space center from a place I've never been before

There aren't many parts to install on rover at this time. I am aware of that and this will solve it in one of the future updates, which will bring instruments into the game

[h3]Relaunch last selected rocket[/h3]
Yes, this is happening! You can relaunch the last launched (or selected in the control center) rocket at any moment during the flight. You no longer need to return to the assembly shop to press that launch button. I think this is the second most anticipated feature after vertical rocket assembly. So, enjoy!

Just press the button on the time panel and you are ready to go

[h3]New rocket parts[/h3]
Most of them were made to support rovers, but there are some that were made to add variety to the resulting spacecrafts.

"Lunohod-2" Chassis

"Lubopytstvo" Chassis

L1 Twin Interplanetary Wheel

L1 Interplanetary Wheel

K2 Interplanetary Wheel

Solar Panel SIGO-249

Central Mini Rack

Angled Extension Rack

"SOHO" Probe Core

"Mgnovenie" Probe Core

Multi-mission RITEG

"Om" Illuminating Device

"Krater-B08-RM" Monopropellant Thruster

"Delta" Adapter

There are a lot of changes made to the game during this four month cycle, so I expect that not all bugs were hunted down. So if you encounter something strange, please report it to our discord or on the steam forums and I will try to fix it as soon as possible.

Thank you for playing and see you in the next one!


[h2]v0.19.6 release notes[/h2]

PREVIOUS SAVES ARE NOT COMPATIBLE WITH THIS VERSION OF THE GAME.
If you want to continue plaing your save or you have problems with this update, please switch to v0.18.x branch.

[h3]Features:[/h3]
🔸 added parts for rovers;
🔸 slots and connectors on part attachments unified into one type, called sockets;
🔸 added blueprint mode for assembly shop, where you have no limits in rocket size;
🔸 added vertical assembly option when in blueprint mode;
🔸 added grid for rocket assembly and ability to toggle it on and off;
🔸 line socket used in planes was reworked and supports attachment at any point on the line;
🔸 line socket is used for side connections for most parts now;
🔸 added socket type filter for rocket parts in the assembly shop;
🔸 added star and butterfly sockets;
🔸 wheels can now have electric motors;
🔸 time panel was reworked and includes more info, pause buttons and map / blueprint toggle depending on the context;
🔸 added "Relaunch last selected flight" button to the time panel;
🔸 context menu now works for orbits on Solar system map;
🔸 you can set as target orbits from contracts now;
🔸 you can share your rockets via Steam workshop using rocket mods;
🔸 added rover "launch facility".

[h3]New rocket parts:[/h3]
🔸 "Lunohod-2" Chassis;
🔸 "Lubopytstvo" Chassis;
🔸 L1 Twin Interplanetary Wheel;
🔸 L1 Interplanetary Wheel;
🔸 K2 Interplanetary Wheel;
🔸 Solar Panel SIGO-249;
🔸 Central Mini Rack;
🔸 Angled Extension Rack;
🔸 "SOHO" Probe Core;
🔸 "Mgnovenie" Probe Core;
🔸 Multi-mission RITEG;
🔸 "Om" Illuminating Device;
🔸 "Krater-B08-RM" Monopropellant Thruster;
🔸 "Delta" Adapter.

[h3]New content:[/h3]
🔸 added "Land on Venus" contract;
🔸 added "Reach SSO orbit" contract.

[h3]Part changes:[/h3]
🔸 most part variants that had a difference only in slot / connector in the attachment was removed due to sockets rework;
🔸 all deprecated rocket parts in previous updates had been removed;
🔸 some parts with dual and triple side sockets got line sockets instead;
🔸 increased range for pressure for the default parachute, so it could be used in the Martian atmosphere;
🔸 improved visuals for RS-05 Steerable Landing Gear suspension;
🔸 reduced power consumption for all probe cores;
🔸 reduced power production for all solar panels by 30%, to make them more realistic;
🔸 made "Sputnik-2" Probe Core smaller and better looking.

[h3]Changes:[/h3]
🔸 rocket schema holds only state data now, as a result we get smaller rocket files and no need to write a migration, when changing part configs;
🔸 you can rename spacecrafts not only from control center, but also during the flight, by ALT+clicking on the name of the spacecraft on the time panel;
🔸 you can no longer remove spacecraft in the control center by right-clicking on it, you need to use Delete button;
🔸 renaming rocket during editing is changed to alt+left click to be consistent to the rest of the game;
🔸 part attachment movement smoothed when reattaching them from rocket part to rocket part;
🔸 symmetry now checks on reattach/detach, that the symmetric part have not only the same connection shape, but also the same type;
🔸 symmetry now properly handles all cases, when rocket part is reattached within one connection;
🔸 you can flip rocket part during rocket assembly using a hotkey now;
🔸 docking ports are represented with their own socket type now and have respective image;
🔸 reworked connection icons in the rocket part tooltip;
🔸 all engines, that previously have no throttle limits, received lower 5% throttle bound;
🔸 renamed game data folder from HDYLIEM to Rocket Science;
🔸 increased the distance you can zoom out the camera in the assembly shop;
🔸 camera no longer focus on attached part in the assembly, it moves along rocket's central axis instead.

[h3]Settings:[/h3]
🔸added B shortcut, that will switch blueprint assembly mode;
🔸added forward W and backward S buttons to control wheel motors;
🔸added F shortcut, to quickly flip the rocket part during the assembly.

[h3]Fixes:[/h3]
🔸 you can't focus camera on not attached parts to the rocket using alt + click, while in assembly shop;
🔸 rocket part appears in the middle of assembly shop for a few frames when using symmetry;
🔸 rectangle socket sometimes is not connecting to hexagon socket;
🔸 you can't reattach already attached part to the same parent connection but different self connection;
🔸 target periapsis goal is set to 0 in the velocity vectors tutorial UI;
🔸 some rocket parts still flip when connecting top of the part to the bottom of the another one;
🔸 payload adapters are broken and don't handle attachments;
🔸 scene where you are making a custom navball is broken;
🔸 you can reattach part to a "hidden one" when symmetry is enabled.
🔸 when reattaching part from symmetric attachment to the non-symmetric one, detach symmetry doesn't work;
🔸 when reattaching part from non-symmetric to the symmetric one, attach symmetry doesn't work;
🔸 assembly shop become broken if you are stop editing the rocket and rocket part is still moving by the cursor.
🔸 rocket part could constantly switch between two attachments on alignment when user doesn't move their mouse;
🔸 crash when removing attaching part using Delete key, or when part was very close to the parts panel in some specific cases.

[h3]Known issues:[/h3]
🔸 Rocket sometimes is not generating lift, when using relaunch button and there was a previous rocket on it.