Hello all,
In this week’s development journey, we’ve been delving into the cosmic playground. We’ve concluded that our crafting of complex solar systems and procedural planets could be improved.
First tweak was on the randomized generation of planets. Each planet is now assigned a PlanetType (Terrestrial, GasGiant, IceGiant, DwarfPlanet), which influences their size, position, and characteristics. Additionally, we’ve integrated a random generation of planet sizes within predefined ranges for each planet type, giving a touch of uniqueness to every single celestial body.
Next, we jumped into the fascinating world of moons. With the incorporation of different moon types (Regular, Irregular, Trojan), our planets got even more intriguing. Each moon type is associated with a specific size range, ensuring the moons are proportionate to their parent planet. Further, we developed a method to randomly determine moon types, based on the planet type they orbit.
One of the crucial aspects we’ve been working on is the habitable zones around stars. A probability-based system was developed to determine whether a planet would fall into this ‘Goldilocks’ zone or not, based on the star’s spectral class.
In an attempt to bring the cosmos to life, we’ve worked on generating moon orbits around the planets. Keeping in mind the distances to ensure they don’t collide, we used Unity’s physics to set these celestial bodies in a mesmerizing dance around their parent bodies.
We also established a fascinating connection between a star’s spectral class and the types of planets that can exist in its solar system. Using a dictionary data structure, we set up probabilities for each planet type occurrence according to the star’s spectral class. Now, the game’s universe will automatically generate solar systems with planets that make sense given their star type.
This sprint has added a layer of authenticity and depth to Eternity’s cosmos, making the universe of our game a place full of exciting discoveries. The creation of solar systems, planets, and moons, all behaving according to the rules we’ve established, which in turn are based on the actual astrophysics, brings us closer to a space exploration experience that’s both engaging and grounded in scientific thought. This move also provides us with the “technical” bedrock where we will build future systems and mechanics for expanding the role of planets in the game 😉
Stay tuned for more updates as we continue to shape the cosmos.
Until next time, Dev Team