1. Rocket Science
  2. News

Rocket Science News

Update v0.12.5 "The Fourth Planet"

Today’s update finally extends the explorable boundaries beyond Earth and Moon. It also brings a lot of loading time and performance improvements, new Navball and several new rocket parts you've been waiting for. Let’s get started.

[h2]Martian system[/h2]

Implementing this one was not that easy. I needed to add a new atmospheric physics for Mars, and also develop a new visual model for it. Procedural texturing was challenging too, because you have a lot less visual references compared to Earth. I am not completely satisfied with the result, but it is good for the first iteration. As for Phobos and Deimos it turns out that they have non-spherical shapes so adding support for non-spherical shapes for the Solar system map took a while too. In the end, the red planet and its two tiny moons are waiting for brave explorers!

Elon Musk's dream

Phobos

Deimos

Night on the surface of Phobos

[h2]Navball[/h2]

Navball not only includes visuals rework but also provides more information such as a fuel indicator and heading angle. Every part of navball now has a tooltip where you can also find numerical values of current throttle and fuel amount. You can also switch between stage and rocket fuel using a new button at the top of navball.



As a bonus I’ve added a new Navball mod type where you can customize its appearance. I will update the mod guide later this week, but you can already try a KSP-like navball from the workshop! (Just don’t forget to select it in the game settings after subscribing to the mod).



https://steamcommunity.com/sharedfiles/filedetails/?id=2534826336

[h2]Solar System Map [/h2]

New space context menu will make your life easier! You can left click on a spacecraft or celestial body and get context-dependent options, like “Switch to” or “Focus”.



The “Set as target” option from the context menu will show ascending/descending nodes on your orbit and will add “Target” and “Anti-target” autocorrection modes to Navball.



Last but not least, the maneuver raycast handle will automatically snap to orbit nodes, so the maneuver can finally be placed exactly on periapsis or ascending node! You can hold the ALT key to switch to the old behaviour.



[h2]New parts[/h2]

Rocket parts from this update include two new engines! Since every engine in the game is based on real analogue from the USSR or Russia, it requires a lot of research to create and add it to the game. That’s why all previous updates didn’t include them. But this time everything came together and you can try the most powerful single-chamber liquid fuel engine ever created in the USSR for the lunar program (sadly, it wasn't used in real flights because its development was stopped in 1970).



The second engine added to the game has the highest specific impulse in vacuum in the game (but lowest thrust). You can try to guess on which real engine it is based.



[h2]***[/h2]

There are a lot of changes and fixes in this update too. Most important are loading times and performance improvements and a bunch of flight fixes. You can find a full changelog below. I am planning to release one more big sandbox update in the future (which will include a rocket instruments feature I talked about in the previous dev update) and then switch to spaceport building.

I hope you will enjoy this update. If you encounter any bugs or problems with it, don’t hesitate and leave it on the forums or in the official Discord channel. Thank you and see you in the next update.

Release notes v0.12.5


Features:
  • added Mars, Phobos and Deimos to the game;
  • added atmospheric pressure models for Mars and Venus;
  • added space context menu with contextual Switch To, Focus and Set Target options;
  • you can set target for spacecraft, two new autocorrection modes will appear (Target and Anti-target);
  • ascending/descending nodes for spacecraft orbits with target set;
  • redisigned navball UI + added tons of tooltips to it;
  • new mod type: navball, new celestial bodies were also added to the surface mod;
  • orbit raycast is now snapping to the closest orbit node (you can hold Alt key to disable this behaviour);
  • significanly reduced game launch time, especially on old GPUs;
  • imroved perfomance of spacecraft gravity, engines and drag calculations (again);
  • flight loading time reduced by 3-5 seconds; when spacecraft is in a deep space it is almost instant now;
  • max possible planet quadtree level now equals 30 (previously was 17), this means that the same LOD could be achieved on the planets with pretty much any radius;
  • new engine parameter "Throttle limits" (for now it was only added to engine 4)


New rocket parts:
  • "Vega-072" Liquid Fuel Engine
  • "Yuzhniy-348" Liquid Fuel Engine"
  • "Dvutavr" Stroage Bay
  • Storage Fairing 1.4m
  • Adapter 4c-7s

Changes:
  • focused body no longer reset when closing and opening solar system map;
  • real planet surface now loaded instead of the fake surface in the spaceport and assembly shop;
  • perfomance settings now affect planet surface in the spaceport and assembly shop;
  • unified sun look on map and during the flight;
  • Sun disk has proper size now and depends on distance to the Sun;
  • earth atmosphere on solar system map and startup system uses proper exposure and color correction;
  • fixed exposure is used on the solar system map until different exposure modes will be implemented (back planet side will be a bit dark becuase of that);
  • water quads under the planet surface will no longer render (perfomance improvement);
  • changed planet's surface triangulation, it is less stretched along one axes right now;
  • greatly decreased amount of geometry rendered during the flight (moderate perfomance improvement);
  • changed how rocket part impact is calculated: now it is using force, applied to part to resolve collision and not just a relative velocity;
  • added mod type icon to mods in the mods list;
  • for some very small sattelites with no its mass data available set a minimum mass;
  • for some very small sattelites with SOI less than radius set minimum SOI size equals 1.75 x radius.

Settings:

  • added navball selector to the game settings;
  • added hotkey: ` - reset focus on map;
  • added hotkey: Alt + Shift - step increase throttle;
  • added hotkey: Alt + Ctrl - step decrease throttle;
  • changed hotkey: from ` to Alt + ` - pause/resume time;
  • hold ALT key to disable maneuver snapping.

Fixes:
  • encounter prediction doesn't work outside of Earth's SOI;
  • distant celestial bodies dissappear when turning on any light during the flight;
  • rectangle connector not attaching to heptahedron socket if it already have hexdual connector attached;
  • planet's atmosphere disappeared when switching from spacecraft orbiting the Moon to spacecraft orbiting Earth;
  • rocket parts exploded when decoupling them in the atmosphere at the speed over 5000 m/s;
  • reattaching rocket part with symmetry turned on not creating symmetry parts;
  • spacecraft fly into abyss if engine is working and spacecraft changes SOI;
  • grounded spacecraft explode when starting engines;
  • collisions between grounded spacecraft and active not work or work incorrectly;
  • impact node sometimes displayed when shouldn't
  • impact node not showing after closing and opening map;
  • orbit nodes sometimes placed incorrectly during encounter prediction;
  • stars are too bright at night in the spaceport;
  • predicted orbits are incorrectly scaled, if map scale was changed, when orbit was not active;
  • camera keep high rotational damping, when changing camera mode and then switching to map and back;
  • save panel is not showing in the surface mod constructor;
  • Eris have no gravitational parameter;

Developer Update: May 2021

As time went on, I realised that three-months cycle for HDYLIEM development is the best. Three months is a good chunk of time to make meaningful changes to the game. And it is not long enough so players start thinking that the game was abandoned.

The first month I always spend refactoring and improving the game's code base and implementing features that may not be that important right now, but will be very useful in the future. Why am I doing this? Because in the long run high-quality and resilient to changes code will undoubtedly win. It produces less bugs on each change and implementing new game mechanics or adding a content becomes a simple and pleasant process. Also some things are much easier to add on the earlier stages of the development because game architecture is still flexible.

Let me show you some examples.

In the current live version of the game, the planet surface in the spaceport or assembly shop is fake. I mean, there are a bunch of surface quads that I got from the flight on spaceport coordinates and saved as static meshes and then I am loading them with other buildings. I did that because 1.5 years ago planet generation and rendering was not that performant comparing to how it is working right now. There is one problem with that. Every time you launch the rocket game needs to create the whole planet. And every time you return back to the spaceport it needs to destroy the planet. It is a long process and that’s why these transitions were so long.

So I’ve changed that. Right now Earth is created when you load a spaceport for the first time. And if you go to the flight on the spacecraft that is located on the surface of the Earth or orbiting around it, nothing will be destroyed or created, because the planet is already there and ready for action. So what? There are a bunch of advantages to that:
  • spaceport is located in a real place on the planet;
  • transitions between spaceport/assembly shop and flight are much faster now;
  • quality and performance settings affect planet surface in the spaceport/assembly too;
  • spaceport could be located in any point on Earth;
  • spaceport could be located on any planet in the Solar System.

The last two items from the list are not usable right now. But when I need to make a selector of the starting spaceport position or position and render a player's colony on Mars, it will be as simple as setting two coordinates for that.

While I worked on that, I decided to experiment a bit with the surface mesh triangulation. Here are some before and after screenshots:





Interestingly, that the triangles count is the same in both cases. Every even triangle just rotated 90 degrees relative to the previous one in the new triangulation algorithm

And in game result (you may click on them to compare in full resolution):



The change is subtle, but the surface no longer looks like it was stretched along one of the axes

It seems to me like such small details is an important part of what actually makes the game good.

Second month of the development cycle I usually spend on some big changes in the game that actually affect gameplay in some form. And the third month is the time for adding new rocket parts, small changes and improvements, local verification, testing and bugfixing.

The changes I made at the start of the second month were not so big but very important for the game. I decided to rework the navball UI. The current one is performing its function but is painful to look at. Here is some results of work:

How it is right now

How it will be

Navball UI moved to 3D and also has a heading angle value and a fuel amount indicator now. Also I’ve added two more rocket status indicators that are reserved for the future. Also if you hover the mouse over part of the navball it will show a tooltip describing its functionality.

The next thing I need to rework is the window that contains flight and environment stats. Like pressure, altitude etc. But I don’t want to just change this window. I want to make it so that if you want to get pressure, altitude, temperature or other values, you need to install an appropriate instrument on your rocket. Some command modules could contain some instruments already installed. For example “Vys” command module will most likely have an altimeter installed (you definitely don’t want to send a crewed spacecraft without this info). But for others command modules or probe cores it should be your decision what instruments to take on a flight. This will make rocket building a bit deeper and also will bring a bunch of new rocket parts into play. Cargo modules will become useful as well.

I have more features implemented at this moment, but I will hold on to them until the release which is planned at the end of June.

The last thing I want to talk about is the game modes. Right now I am working exclusively on Sandbox, because you can incrementally improve the game and release an update every three months or so. This is all good but the game was about spaceport building at the start of this project, so I am planning to release two more Sandbox updates (this and the next one) and switch to the Survival mode development. The problem with this one, is that it could only be released when it will be mostly ready with the finished and solid game loop and good progression system. It means that most of my work will be hidden until this mode will be finished. But I will still try to make a release once in three months including content and changes related to the Sandbox.

Hope you enjoyed this dev blog, see you in the next update!

P.S. Here is one more work-in-progress screenshot, just for you.

Update v0.11.8 "Functionality 101"

Hello everyone! it’s time for another update! This one is the biggest one in terms of fixes and changes since the game release. Let’s not waste any more time and jump right in. Note the hotkeys changes in the changelog below!

[h3]Subassemblies[/h3]

Save the group of parts into subassembly and use it later during construction of another spacecraft.

Save subassembly

Use subassembly

[h3]Part rotation[/h3]

Use a rotation handle to rotate part groups and already attached parts following the attachment rules.

Rotation of whole rocket

Rotation of attached part

Symmetry works during rotation too

[h3]Ocean[/h3]

I’ve implemented a new ocean system. It includes real waves, foam and it changes color depending on depth to the sea floor. Also simple collisions were enabled for the ocean surface, so you can land spacecraft on it. It is a temporary solution until proper water physics will be implemented

Ocean before

Ocean after

Ocean in motion

[h3]Camera modes[/h3]

Added new camera modes during the flight and on the solar system map.

No rotation involved, just switching between different camera modes

[h3]Planet visual improvements[/h3]

I rewrote the planet shader to improve its performance. During this process, I discovered and fixed several critical bugs. That led to significant changes in the planet's visuals on a small scale.

Before. You can see noticable tiling here

After. No noticable tiling, improved texture blending

In case of Moon too much detail appeared I would say. I will review Moon texturing another time and will decide if some changes required.



[h3]Flights[/h3]

You can instantly switch between spacecrafts during the flight.

Switching between visible spacecrafts

Switching between spacecrafts using map

You can also switch between command modules if you have more than one installed.

[h3]Electricity redesign[/h3]

Electricity was redesigned from ground up. Real physical units are used (Watt for power and Joules for energy) instead of some unnamed ones. All parts that use electricity now have physically correct parameters (to some extent).

[h3]New part type[/h3]

Added a new type of rocket part — light. It consumes energy and produces light photons. It should improve the experience of flights and landing in the dark. Two light parts were added, with more to come in the next releases.



[h3]New parts[/h3]

Nine new rocket parts await you in the assembly shop!



[h3]Hotkeys changes[/h3]

Changed Repeat hotkey from R to Q and cycle symmetry hotkey from X to C. Added many new hotkeys and some button tooltips are showing hotkey labels now. Saved user controls were reset to the default ones because of that.

You can find more changes in the changelog below. Since the game become bigger and bigger it is hard to check every possible test case. So some minor bugs are expected and if you encounter them, please report them on the forum or on Discord. Thanks for playing and see you in the next update which should include one famous red planet.

Release notes v0.11.8


[h3]Features:[/h3]
  • new ocean system, that includes real waves and foam, also it changes color depending on depth to the sea floor;
  • added subassembly support;
  • added Grab and Rotate modes to assembly shop;
  • added rotation handle that appears in the Rotate mode, when any rocket part was selected;
  • you can rotate already attached part relative to its parent respecting socket restrictions, symmetry works for rotation too;
  • instant switch between any spacecrafts by double clicking on it during the flight;
  • added ability to switch between command modules on the spacecraft if there are more the one (left click on it -> toggle "control from here");
  • added 5 camera orientation modes and ability to switch between them;
  • added new part type — light;
  • added real physical units for energy (Jouel) and power (Watt);
  • implemented deep space camera rendering, any solar system object in theory can be seen from anywhere (but they are usually too small);
  • improved planet shader visuals and speed;
  • added shortcuts labels to most button tooltips;
  • default planet body (with no height/texture data) will be loaded, when reaching celestial body, that was not added to the game yet (previously game just crashed);
  • enabled simple collisions for water surface (this is a temporary solution until proper water physics will be implemented);

[h3]New rocket parts:[/h3]
  • Solar Panel GOST 12|12-00-1996
  • "Tesla" Illuminating Device
  • 2239-79 Signal Light Source
  • Conic Fuel Block
  • Hexagonal Prism T100
  • Hexagonal Prism T200
  • Structural Adapter Cube-1.2
  • Structural Adapter 1.2-Module
  • Modular-to-Cubic Adapter

[h3]Part changes:[/h3]
  • сompletely redesigned rocket part stats related to electricity;
  • increased energy producing area of solar panel 1;
  • improved shape of Small Battery;
  • lowered center of mass of command 0;
  • deprecated part Cubic Rack Adapter;

[h3]Changes:[/h3]
  • launchpad zone directly under the spacecraft could destroy parts now (previously this feature was intentionally disabled);
  • increased minimum scale on solar system map when spacecraft is current camera target;
  • added additional time scale step equals to 7 days (may be increased in the future);
  • implemented smooth transitions between different time scales;
  • navball size on UI now independent from screen resolution;
  • when placing first rocket part that has variants, selecting its variants will change already placed part instead of creating the new one;
  • improved default orientation of rocket parts on connection to side sockets;
  • improved socket selection during part attachment, so it tends to have a smallest angle possible between parts;
  • added missing collision parts for different structure parts;
  • camera will focus on the first placed part or group of parts in the Assembly shop;
  • Rocket list changes:

    • edit button in rocket list was removed from list items;
    • double click on rocket item or click on edit button from actions panel to go into edit mode;
    • press ALT+click on rocket item to rename it;
  • you can now rename spacecrafts in the Control Center, by pressing ALT+click on its name;
  • solar system map markers are much smoother now and have slight dark outline;
  • improved part tooltip alignment — it is now consistent between parts;
  • updated tutorial, to reflect recent changes in hotkeys;

[h3]Settings:[/h3]

  • added ocean quality setting into Performance category;
  • added default camera orientation mode settings for space flight and Solar system map;
  • added maneuver and assembly handles size settings;
  • changed Repeat hotkey from R to Q;
  • changed Cycle Symmetry hotkey from X to C;
  • added Reset Symmetry hokey: Alt+C;
  • added Cycle Camera Orientation hotkey: V;
  • added Extend/Retract Solar Panels hotkey: P;
  • added Turn On/Off Lights hotkey: U;
  • added assembly modes hotkeys: G (Grab Mode), R (Rotate Mode);

[h3]Fixes:[/h3]
  • rocket part keeps glowing after destruction sometimes;
  • on any resolution other than 1080p, spacecraft list looks wrong in the control center;
  • failed to launch spacecraft if its name is too long;
  • rocket can stuck in one place, if fuel was depleted and there were a lot of engines and fuel tanks in it;
  • only first part are correctly aligned to the attachment, if you try to connect group of parts to the rocket;
  • exception, when several connected in a row decouplers were decoupled at the same time;
  • decoupled part sometimes gets incorrect position;
  • rocket with bad orbit breaks the save file;
  • when flying straight up from Earth until transitioning from elliptic to hyperbolic orbit, spacecraft appears in the center of sun and game sometimes crashes;
  • spacecraft shadows are flickering on high orbit altitudes;
  • when passing the Moon SOI Earth atmosphere sometimes appears in the wrong place;
  • if you have two payload fairings attached to decoupler 0 and then move the decoupler, part group will always reset its position;
  • exception when trying remove part using Delete when it has red outline;
  • exception when group of parts was cloned but not placed and Undo was pressed;git;
  • stars sometimes disappear when rocket is flying on low orbit;
  • sun disk is missing on solar system map and in the start scene;
  • shadows are flickering sometimes in assembly shop;
  • orbit markers change their brightness depending of sun angle relative to camera;

[h3]Known issues:[/h3]
  • maneuver planner not correctly finding encounters, when building trajectory from Earth to the outer Planets;
  • rotation symmetry not working for the parts, attached to the same attachment;


[h2]28.03.2021 - v0.11.9[/h2]
[h3]Fixes[/h3]
  • solar Panels not working when spacecraft is orbiting around the Sun;
  • two suns appear when spacecraft is orbiting around the Sun;
  • spacecraft name is not saved when renaming it and then exiting from game;
  • sometimes game stuck on starting flihgt;
  • sky breaks if you are in spaceport and selecting spacecraft, orbiting another planet and then exiting from map;
  • rocket rotating like crazy after changing SOI;
  • maneuver panel sometimes doesn't show up after loading flight if orbit already had a maneuver;


[h2]02.04.2021 - v0.11.10[/h2]
[h3]Changes[/h3]
  • Updated "About" window;

[h3]Fixes[/h3]
  • rare memory leak, when nothing changes on the solar system map;
  • potentiial crash when rocket has a lot of solar panels and lights and they were destroyed.

HDYLIEM: Year 1

Hi there, fellow rocket builders! First and foremost, today marks the 1-year anniversary of Elon’s release on Steam!

It was an incredibly difficult but productive year, and I wanted to thank everyone who supported me during this time. Thanks to you, I was able to improve the game far beyond its release state and get an incredible feedback I never hoped to achieve.

Now, obviously, I couldn't possibly leave you without a present. The next update will be released on March 26. While it's still in development, I'll tell you about what's been done and reveal some of the features that will be there.

First of all, I’ve updated the game to the latest engine version. You will never know what will break during such updates, but it seems that almost everything broke this time. And I spent a good amount of time fixing all these problems. But why was this update needed? Because the game initially was built on a new high definition renderer in Unity, which produces wonderful graphics, but had a huge limitation — you can not have more than one camera in the game (actually can, but it is so expensive, that FPS immediately dropped from 60 to 30 for the one additional camera).

This was almost a game breaking limitation. For example, at least 4 cameras are used in KSP during the flight:
  • for close geometry (everything closer than 500 meters);
  • for far geometry (from 500 meters to the horizon);
  • for rendering scaled space (mostly other celestial bodies);
  • for rendering kerbals inside of command modules.

Moreover, one additional camera was used for rendering of reentry effects. But I could use only one camera and it also had a limited rendering range. Luckly, the Moon was able to fit into this range, that's why it was visible from Earth. But the rest of the Solar System beyond that range (except Sun and stars — they use other rendering techniques) was invisible during the flight. Also making reentry and atmosphere friction effects were completely impossible and there were some bugs with constantly disappearing stars.

The latest engine version introduces a concept of Custom Passes. Basically, you can render a scene from any point of view with any camera properties, but without paying a cost for the entire second camera. This helped me to make a camera rendering range almost infinite, fix a bunch of bugs and prepare for adding reentry effects in the future.

The next thing I’ve switched to was an assembly shop improvement. I’ve added a highly requested feature - subassemblies. You can grab any group of parts and save it as subassembly, which can be used later during other rocket construction.



One cool feature is that you can edit subassembly like a regular rocket, duplicate the existing or create the new one at any time.



I’ve improved default parts orientation during attachment, so its behaviour is more predictable now.

Orientation before

Orientation after

Side symmetry orientation before

Side symmetry orientation after

And I reworked an algorithm that places a first part, so it is compatible with the part variants.

If first rocket part has variants and you select another variant, part will be automatically replaced

Currently I am working on assembly shop modes. Three modes are planned: Select, Grab and Rotate with several more to come later.



The default one is a Grab mode. It is similar to how assembly shop works now. You can grab parts, move them and attach to each other in this mode. In the Rotate mode you can select any part and rotate it using hotkeys or specific rotational handle. I will also allow you to rotate already connected parts following a set of restrictions.

There are basically two restrictions to this: you can only rotate the part around the connection axis and connectors should still fit into slots after rotation.

For example, a part attached using a single connector could be rotated on any angle. In the case of hexagon connection it can be rotated with 60 degrees step.

In the last Select mode you will be able to select a single part without risk of moving or rotating it. It will be used in the future for opening part properties and for such operations, like rerooting a rocket to the selected part.

A bunch of new parts will also be added in the next update. Five of them are already done, but I will not spoil them for now. In addition to the improvements to the assembly shop, there will be new flight-related features united by one common theme. Can you guess what kind of theme it is?

Patch v0.10.2 + Patch v0.10.3

Patch v0.10.2 was released. It addresses some crashes related to rocket removal and introduces some improvements and adjustments.

Release notes v0.10.2


[h3]Features:[/h3]
  • hold Alt when changing deltaV of maneuver to do it in "Precision" mode with highly reduced sensitivity.

[h3]Changes:[/h3]
  • enabled ACES tone mapping for startup scene and solar system map to improve colors in these mods;
  • unified color and brightness of stars and milky way in map and in the flight mode.

[h3]Settings:[/h3]

  • added maneuver Precision Mode Sensitivity to game settings.

[h3]Fixes:[/h3]
  • crash, when spacecraft is leaving SOI of Earth and it was removed from the space center;
  • sometimes black dots appears in Earth atmosphere.
Release notes v0.10.3


[h3]Features:[/h3]
  • added show root part toggle to Assembly shop UI.

[h3]Changes:[/h3]
  • when rocket collides with the ground it explodes more precisely;
  • better big rocket positioning in the assembly shop;
  • imporved shadows in the assembly shop.

[h3]Changes:[/h3]
  • game completely breaks, when decoupling part that has decouplers attached, that also decouples;
  • rocket slightly gitters when standing on the launchpad and engines are turned on and there is at least one "Zarya" engine.