Kerbal Space Program 2 News & Announcements
This weekend marks one whole year since the Early Access launch of KSP2. How is it that a year can fly past in a heartbeat while also containing so much stuff?

In that time, our team has released a total of 11 updates and knocked out more than 2441 bugs. We’ve brought new physics systems online (re-entry heating, more rigid rockets) and we’ve added new features (Exploration Mode, Science collection, and Missions). As good as it’s felt to work through our feature list, the most satisfying part of the release process has always been the "day-after basking," where we take in all the unexpected ways the community is taking advantage of new gameplay possibilities. This has only gotten more exciting since the arrival of the Science and Mission features - not only are your vehicles getting more ambitious, but the missions themselves are starting to get pretty elaborate. The ways you’re getting the U-Dunkit module into alien seas are emblematic - it’s quite an awkward part, and the vehicles that it’s attached to tend to be delightfully weird!


Shadowzone does a Laythe dunk (full disclosure, he discovered a bug on this journey, but I think he still had fun)


Shadowzone is dunk-drunk, and now seeks out puddles across the Kerbolar System!


Audaylon with a rare double-dunker with fore and aft Dunk-its!


GalaxDragon aka Yuri has managed to get their U-Dunkit nowhere near any liquid at all.


SciVirus has used the part in an unexpected but delightful way.

We're looking forward to the new possibilities that will be opening up to players in the coming year, especially with the arrival of colonies! We’re making good progress in that area right now - why, here’s a stately little orbital test colony over Duna (it looks extremely cool with all the modules rotating):


Thanks for continuing to share your creations with us, and thanks for helping us to make KSP2 even better in 2024!
Kerbonauts!

So you want to go to space...have you tried rockets?

Introducing animated tutorial Space is the Place! Found in-game, this and other tutorials aim to improve the onboarding experience for new and returning players, while learning about various space concepts. They are the introduction to game concepts, after which players experience interactive tutorials to further learn the concepts shown.

This tutorial explores the concept of rockets - from launching to landing. Be sure to check your staging!

Check out the animated tutorial below!


Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Bug Fixes

Flight & Map

  • Fixed: Shielded docking ports cannot be undocked after a reload
  • Fixed: Shielded docking ports can dock when closed
  • Fixed: Orbital drift compensation did not take axial tilt into account consistently, leading to additional drift near Celestial Bodies with axial tilt
  • Fixed: Orbital drift compensation decreases in quality over time
  • Fixed: Vessel collision with water often only destroys the first part
  • Fixed: Heat shield automated fairings cause aerodynamic occlusion to parts near them
  • Fixed: Decouplers require two clicks to stage
  • Fixed: Vessel becomes active and the scene is switched automatically to flight view of the vessel
  • Fixed: Jet engines cannot be deactivated until throttled down to zero
  • Fixed: LT-5 "Bandioot" landing legs collapse to minimum length when any weight is applied
  • Fixed: Surface teleport tool doesn't work in non-English languages
  • Fixed: Surface teleport tool shows incorrect maximum altitude values for some celestial bodies
  • Fixed: Vessel and KSC icons on the map are too large, particularly when closer to the camera
  • Added new color theme to both A and B Intersect nodes on the Map
  • Adjusted colors and iconography associated with Intersect Nodes on the Map
  • Fixed: Switching to Mission Control when paused in flight hangs the game
  • Fixed: Flight Report does not appear when crashing a vessel if the previously launched vessel had been recovered
  • Added a delay before showing the Flight Report after a vessel crashes
  • Fixed: Velocity readout in the Flight HUD only shows 4 significant figures

Optimizations

  • Fixed: Several memory leaks when launching or loading vessels

Saving & Loading

  • Fixed: Burn Timer window does not show staging events after loading a save with an active maneuver
  • Fixed: Vessels lose functionality if loading a save that was made outside of flight mode in certain situations
  • Fixed: Reverting to VAB with multiple vessels on the runway causes one of them to become unusable

Parts & Stock Vessels

  • Reduced atmospheric shock heating in the upper 45% of most atmospheres significantly
  • Increased heat transport away from parts in the top 20% of most atmospheres
  • Increased stack decoupler and separator thermal masses by up to 3x
  • Increased unshielded docking port thermal masses by 1.5x, increased temperature tolerance to 800K
  • Increased thermal mass of light procedural wings, stabilizers and control surfaces by 1.5x
  • Increased thermal mass of medium procedural wings, stabilizers and control surfaces by 1.75x, increased temperature tolerance to 1350K
  • Increased thermal mass of spaceplane procedural wings, stabilizers and control surfaces by 1.2x
  • Fixed: Solar panels occlusion is not calculated correctly near and past Jool
  • Improved: RSCM-01 "Sample Grabber" arm incorrectly deploys in many situations
  • Fixed: Surface attached lights don't function when first launching a vessel
  • Fixed: Crater Crusher stock vessel has its solar panels incorrectly oriented

Construction

  • Fixed: Game crashes when moving an assembly in the VAB with a nose cone as the anchor part and any non-single symmetry mode
  • Fixed: Stack Separators placed below a vessel root part do not separate correctly causing destruction of the vessel
  • Fixed: Clicking on the Orthographic Cube while holding a part or vessel deletes it while in the VAB
  • Fixed: An exception is thrown when changing the Launch Assembly in the VAB, affecting the functionality of the Delta-V tools
  • Fixed: Loading a vessel in VAB shows magenta cubes for a few seconds

Environments

  • Fixed: Black dots show on Jool when observing the planet from the surface
  • Fixed: Galaxy skybox does not rotate in some situations
  • Fixed: Stars are too dim when orbiting some celestial bodies
  • Fixed: Lighting on vessels orbiting Kerbol at a semi-major axis of >=23,000,000,000 flickers

EVA

  • Fixed: Running a surface survey when planting a flag results in the Kerbal becoming uncontrollable
  • Fixed: Running a Crew Observation from the PAM on an EVA Kerbal does not show any animation
  • Added new Kerbal Variety assets from the Exploration release to KSC Kerbals
  • Fixed: Kerbal Rocket Pin haircut does not receive correct hair colors

FX & Audio

  • Adjusted reentry VFX trigger points to more closely correlate with start of reentry heating
  • Fixed: Heat shields do not show heat glow during reentry
  • Fixed: Procedural wings do not show heat glow during reentry

Missions & Tutorials

  • Fixed: Numerous errors in mission text
  • Added a waypoint to guide the player as part of the "Tertiary Dibs: Platinum" mission.
  • Fixed: An orange arrow/marker persists on the map during the tutorial "Establishing an Orbit"
  • Fixed: Mission debrief text is repeated in "Minmus Monument" mission

Localization

  • Fixed: Missing localization of some terms in the Mission control screen
  • Fixed: Missing spaces in some languages in several sections of the Part Info window in the VAB
  • Fixed: Incorrect localization for Research Reports collected around Dres
  • Fixed: Incorrect localization for Research Reports collected around Jool

Menus & Settings

  • Fixed: Using the Teleport tool with the maximum AP selected teleports the vessel slightly outside the target Celestial Body
  • Fixed: Cheats menu can become locked into a box on the screen and cannot be moved outside its boundaries
  • Fixed: Time Warp controls are still available when exiting to the Main Menu from within a gameplay session
  • Fixed: Part poses for some main menu animations are incorrect

Science

  • Changed the behavior of experiments that take time: they will no longer pause when leaving a valid research location and will instead enter a suspended state until you return to the original region, where they will restart without player input
  • Fixed: Experiment crew requirements depend on the vessel's crew intead of the part's crew
  • Fixed: Orbital Surveys do not work in Low or High Kerbol orbit
  • Fixed: Science action button flashes for already-completed experiments
  • Fixed: Using the Transmit All button in the Research Inventory re-transmits already completed experiments
  • Fixed: Mission notifications appear in Sandbox mode

Submitting Bug Reports and Feedback
If you'd like to provide feedback about this build, there are many different ways to do so:
Submit Feedback through the Game Launcher
Suggest a Change on the KSP Forums
Join us on Discord to discuss potential changes

Bug reports should be shared to either:
Private Division Customer Support
Dedicated Bug Reports on the KSP Subforum


Greetings! I'm Ness, the Art Director here at Intercept Games - let's talk about KSP2's User Interface, the most meta of all game art disciplines!

UI must surface moment-to-moment information and actions to players in either text or clever visual shorthand. When making a simulation game like KSP, an even greater burden of information is placed on the UI, since we need to supply players with a mountain of information and choices without overwhelming either the player or their screen’s real estate. It’s a fascinating and sometimes frustrating balance to strike; and I am consistently impressed by our UI/UX team’s ability to analyze abstract, un-implemented features and translate them into visuals. Jordan and Colton from our UI/UX team at Intercept work tirelessly to make rocket science digestible and slick-looking!

Before we dive into future plans for KSP2’s UI, I’d like to first take a quick look at KSP1’s. Its UI went through several distinct stages over the course of KSP1’s history, the most radical changes happening early in development. One thing that I love about videogame UI is that on top of all the information it must convey, its visual styling can suggest subtle narrative and worldbuilding—something that KSP1 has absolutely utilized and that we will continue to evolve in KSP2.

Some very early unreleased examples of KSP1 0.2’s UI can be found on HarvesteR’s dev blog. We can see a mix of fonts, both handwritten and geometric sans serif, as well as a barebones parts catalogue. The mix of fonts here is the most interesting detail to me; the handwritten altitude and speed readouts suggests a theme of "DIY" that applied to both the Kerbals in the game and the developers making the game.



A later iteration of the UI around KSP1 0.3 introduces the familiar grey that stuck around for the rest of development, as well as a precariously-stacked flight heads up display. This cobbled-together “junkyard” readout was an evolution of the Kerbal narrative of a DIY space program using salvaged parts.



By the time KSP1 0.7.3’s public release rolled around, the staging stack had moved to the left side of the screen, we had a flight cluster, and Kerbal live-feed portraits all carefully spaced around the edges and wrapped in that grey pseudo-metal that we saw back in 0.3. Gone was the junkyard aesthetic, and the skeuomorphic gauges were carefully lined up.

Credit: Whirligig Girl

And finally, a shot of KSP1's UI as of 1.0.

We’re all familiar with the symbiotic effect that mods had on KSP1, and I believe that by keeping the UI simple and grey, it allowed modders with limited artistic ability to easily match the look of the canonical UI and maintain a level of visual consistency which ultimately cuts down on cognitive load and increases immersion. This is absolutely something we on the art team are aware of in KSP2, and when it comes time to roll out additional modding tools the UI team will also share our internal style guide for modders interested in mimicking KSP2’s UI.

Now onto what I think most of you all are here for; what’s in store for the future of KSP2’s UI now that For Science! is out the door? In the weeks since release, we’ve enjoyed following along as new and returning KSP2 players have checked out the missions, discovered points of interest, and put all of our flight systems through their paces. As thrilling and satisfying as it’s been to see all of the impressive feats you’ve achieved since the For Science! update, we’re also been watching and documenting your reactions to the user experience and the user interface in particular.

We’re excited to see that many elements of our UI have facilitated a smoother first-time user experience, but with your help we’ve also identified several areas of confusion that we are actively tracking. These areas include:

  • Fonts can be hard to read for a variety of reasons (size, scaling, color, contrast, etc.).
  • The maneuver gizmo can be difficult to interact with, and precision maneuvers are especially difficult.
  • Trajectory tag markers can be difficult to differentiate or identify.
  • Trajectory tag stems can get tangled with one another in ways that cause significant visual confusion.
  • SOI transit "bullseye" indicators are too bright, too big, and too prominent relative to other map elements (this is a personal bugbear of mine).
  • Rearranging the staging stack order when selecting the bottom-most stage is difficult.
  • The Part Manager presents several usability issues including but not limited to: observing many parts at once, using the Resource Manager as a separate app to specifically track fuel on a per-part basis feels awkward, associating a viewed part in the manager with the actual part on the ship.
  • We are not adequately communicating that "Revert to VAB" causes a loss of recent progress, and there are situations when reversion should not be accessible at all.
  • It is not obviously clear, especially to new players, when a vehicle is recoverable.
  • The audio-only countdown on launch presents both accessibility and legibility problems.
  • When in any time warp state other than 1x, the UI does not adequately communicate the state change. The tendency to interpret an under-warp failed control input as a bug has caught out quite a few members of our own team, and is likely responsible for quite a few bug reports.
  • Visual styling for some UI elements is not completely unified.
  • It would be very handy to be able to see mission requirements in the VAB while constructing a vehicle.
KSP2 in early access is delivering the kind of active feedback loop we were hoping to see, and we’ve now got a nice collection of feedback items to help guide our work priorities. We’re excited to continue improving on the UI. In the meantime, we’ve been working away on a few UI improvements of our own! In the upcoming v0.2.1.0 update you’ll not only see us begin to work through the 2024 bug list, but you’ll also see the following changes:


We’ve adjusted the iconography and visuals of intersect nodes to make them easier to interpret (and hopefully easier to learn). We’ve also adjusted the colors of the planned trajectory line to further differentiate from your current trajectory, and shifted the colors on intercept nodes to make it more clear what relation your craft has to celestial bodies.

Time and space are weird, but through these and future trajectory improvements we’re working on, we hope to make parsing orbital mechanics more approachable!


Aaaaaalso as a sneak peek for something that’s coming beyond the v0.2.1.0 update, Jordan has been diligently combing through and adjusting KSP2’s UI in a giant unification pass in order to align some of our disparate visuals. The shot below represents the first wave of style unification on the highest traffic areas of the game:


I'm looking forward to sharing more UI improvements with you all in the future!

Share Your Creations!

We've got an exciting announcement! We're working on a new video for KSP2 and we want YOU to share your favorite creations with us for inclusion in the video. It doesn’t matter if it’s a rocket, a plane, a rover, a boat, a giant mechanical turkey, or whatever your heart desires—if you love it and you’re proud of it we want to see it! If we end up using your submission, you’ll be credited and have eternal bragging rights.

If you’d like to submit, send an image of your creation along with a craft file (.json) to [email protected]. Please also include your preferred name so we can credit you (can be real name or username). A bit of fine print here: by submitting your creation, you’re agreeing to let us use the craft file in any and all future marketing materials. Thanks!

We’ll release more details as the project moves forward. We’re excited to take your vehicles out for a spin!


Hello Kerbonauts, happy new year!

We had a lot riding on the For Science! update that we released two weeks ago - it's been a long first year of Early Access, filled with the arduous and mostly unglamorous pursuit of bugs, stability improvements, and performance gains. This update, the first of our major roadmap updates, had to achieve some big new goals for KSP2:

  • Round out the core game loop with re-entry heating and buoyancy
  • Introduce a whole new progression system via the R&D Center and Mission Control
  • Introduce Science collection, Science parts, and dozens of new points of interest
  • Continue to deliver quality of life improvements (like banishing wobbly rockets) and performance improvements
Also: there are boat docks now! In a nutshell, the additional of Exploration Mode transformed KSP2 from a sandbox experience into a proper long-form game.

With working on something with many moving parts, there's always a little trepidation when we release a new build to the public - especially when there are so many new systems in play. We do our best to test every possible scenario, but there's always a chance that something terrifying will rear its head once we’ve got thousands of people playing the game. It was with this fear lurking in the backs of our heads that we sat together in our own mission control room and waited for confirmation that For Science! had been released into the world.

We nervously watched the first review videos appear of YouTube, and were relieved to discover that veteran players like Carnasa and Matt Lowne were excited about what they found in the new update. We cycled between Everyday Astronaut, EJ_SA, and Giantwaffle, discovering to our delight that all three were not only having fun, but were having trouble putting the game down! By the time we did our own livestream that evening, it was clear that we'd succeeded in creating a more stable and realistic universe and gave players compelling goals to pursue within that universe. Our stream ran over an hour longer than planned because we too had trouble putting it down. That's a story we're hearing a lot - you sit down to play this game for an hour, and before you know it the sun's coming up.

Over the last couple of weeks, a clear picture has emerged - there are still bugs, as well as some big opportunities to improve the player experience - but for the most part, those rough edges have not gotten in the way of some very ambitious exploratory missions. I’ll talk more about those bugs in a bit, but first I’d like to highlight some of this update’s biggest wins:

  • The music. Yes, you all love Howard Mostrom. We’re going to need a bigger inbox for all his fan mail.
  • The tutorials and first-time user experience have paved the way for a new group of first-time Kerbal players. We’re not only seeing lots of you get to space, we’re also seeing a lot more players doing interplanetary missions. In many ways, the original justification for KSP2’s existence was to find a way to welcome more new players to Kerbal, and we’re very excited to see that this work has begun to bear fruit. We knew that bringing rocket science to the masses wasn’t going to be easy, and there’s still a lot more work to do in this area...but we’re making progress!
  • Folks are enjoying the missions! We’re excited to continue adding new missions to the game via upcoming updates, and we’d love to hear your suggestions for compelling new exploration goals.
  • In general, we’re beginning to see the flourishing of player creativity that we knew would take place once the most critical performance and usability issues had been ironed out. It’s been a pleasure to visit the KSP Subreddit and our #bestof channel on Discord and bask in the awesomeness. People are making magnificent things, and it feels nice to see all that imagination unleashed.
Look at this stuff!

Courtesy of Aravir

Courtesy of Flypig07UA

Courtesy of Dr. Seno

Courtesy of BioticKeen

Of course, a key benefit to our game being in Early Access is that we get detailed bug reports and feedback from a wide variety of players. And boy, did we get a big helping after releasing this update. Check out the spike we saw on our K.E.R.B. bug submissions at the end of December:


There are some annoying bugs and usability issues in the mix - some are new, some have been around for a while but have risen in prominence now that other more consequential problems have been addressed. Some areas of frustration include:

  • Font scale and legibility
  • The maneuver node interface
  • Thermal system tuning, including the propensity of some parts to explode even when they’re shielded and the insufficiency of fairings to protect their contents)
  • One-off stability issues (most of which can be corrected by reloading or restarting)
We are triaging and trying to reproduce issues related to things like parachutes failing to deploy, trajectories vanishing from the map view, and Delta-V accuracy (which given the dependency of maneuver plans on accurate Delta-V projection, can result in being blocked from planning a maneuver). We’ve also noted some user experience gaps, most notably the game’s failure to properly communicate to new players that "Revert to VAB" is different from "Return to VAB" - an oversight that has led some newcomers to lose their progress after completing a mission.

I’ll also take this moment to offer a new protip that I learned today after complaining to Chris Adderley about my spaceplane wings being destroyed on re-entry: while the heavier wings are more heat-resistant, the volume of every wing (and especially the wing’s thickness) affects its thermal mass. A thicker wing will be more resistant to destruction via heat! I’ll be trying out the "fat wings" approach tonight after work. Procedural wings sure are cool.

Anyway, back to bugs. If you’re one of the people who have come up against a truly blocking or fun-destroying issue, please do take the time to share that information with us via the KSP Forums. We’re seeing less of this after the For Science! update, but it’s still something we want to investigate aggressively when it’s encountered.

We’re already hard at work on the v0.2.1.0 incremental update to address as many of these issues as we can, and we’ll update you here as soon as we know the exact timing and contents of that update. In the meantime, thank you for continuing to share your bug reports and feedback - your detailed reporting continues to play a huge role in helping us to improve the game.

Another exciting new development: modders have started to produce some extremely cool augmentations for KSP2, including Orbital Survey, an alarm clock mod (already heading towards 2,000 downloads!), and there's even some planet modding underway! Our team is especially happy to see that the extensible tech tree file format created with future moddability in mind has paved the way for things like the new Tech Tree Manager mod.

The Orbital Survey mod

The 2.5x Kerbolar System mod

The next major roadmap update, which will bring colonies to the game, is now also in progress. In the meantime, the current plan is to sneak a few additional missions into the next incremental update, just to keep things fresh. Now that there are interesting things to do in the game, we’re very excited about all the ways that we can continue adding new layers to that experience in the coming year while knocking out the bugs that remain. 2024 is going to be a very exciting year for KSP2, both for the players and for us developers!

Nate

Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Hello Kerbonauts!

With the imminent launch of the Vulcan Rocket, Creative Director Nate Simpson paid a visit to the experts over at United Launch Alliance (ULA) HQ to get their help in his own Vulcan attempt in KSP2.

You can join in on a limited time challenge to create your own Vulcan Rocket in KSP2 and complete an ambitious mission (the more ambitious, the better!) with the potential to win some exciting goodies.

Post your videos/images on X or Instagram, tag @ULAlaunch and @KerbalSpaceP, and use #KSPVulcanRocket. Tory Bruno, CEO at ULA, will pick out his favorite! You have until January 5!

Thank you to ULA and the Vulcan team!


Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
KERBONAUTS, WE HAVE LIFTOFF! 🚀

The time is now - For Science! is now available! We're so excited to release this major content update to everyone.

Full release notes for v0.2.0.0 can be found here. We'd love to hear from you about feedback and bug reports on the update - please submit them to the KSP Forums.

Dive into and explore For Science! – and don’t forget to share with us your creations, accomplishments, and discoveries.


To celebrate the release of For Science!, Kerbal Space Program 2 is 20% off until January 4th, 2024 at 1PM ET.



The For Science! update comes with a brand-new campaign type - Exploration Mode, which adds progression and Science collection through missions, experiments, and journeying through the Kerbolar System. Collect and transmit Science from unique locations and redeem it back at the Kerbal Space Center's (KSC) newly opened Research and Development Center to unlock new part technologies, learn novel concepts, and journey further away from the Kerbal's home planet. While working through the tech tree, unlock the means to extend your reach across the Kerbolar System - from right at home on Kerbin, to the furthest regions of Eeloo, and to the murky depths of Eve. Exponential progression ensures that the rewards for your efforts match your ambitions.




How will you collect Science? With all new Science collection parts! Integrate these parts to vehicles (be sure to take note of their shape and mass, it matters!) to carry out different experiments, depending on your mission. Keep an eye out for new Kerbal animations when Science gathering during Extra-Vehicular Activity (EVA)!


We've overhauled the Science collection and transmission interface for KSP2. During flight, it's now easy to know when there's an opportunity to take measurements or collect samples via a new Experiment Actions button, which provides detailed information about what opportunities are available in your current location. The brand-new Research Inventory gives clear information about how much Science you've already collected and the ability to transmit Science data. The Mission Tracker app helps you keep track of in-progress and completed objectives. New flight planning tools have also been added to the Vehicle Assembly Building (VAB), including altitude and environment-specific readouts that show thrust-to-weight ratio, burn time, and Delta-V for each stage. Data persists and continuously updates in-flight.


On your journeys, uncover a wealth of new research locations and mysterious geological formations spread across the Kerbolar System. Locate them and unlock special Science-gathering opportunities - we wonder what you're going to find...


The days of stress-free atmospheric re-entry have come to an end with the introduction of atmospheric re-entry heating effects and thermal part behavior.


We've also made significant quality of life improvements:

  • An enhanced joint system has been developed, dramatically reducing wobbliness of large vehicles
  • Updated ambient sound systems
  • An all-new Boat Dock - complete with cranes and gantries for use both in-and-out of missions. With this comes additional buoyancy improvements!

From us at Intercept Games and Private Division, thank you. We hope you enjoy For Science! and your time amongst the stars!

https://store.steampowered.com/app/954850/Kerbal_Space_Program_2/
New Features & Content

  • Added a new game mode called "Exploration Mode"
  • Adding Mission Control and Research & Development (R&D) Center buildings
  • Added a Tech Tree with 4 tiers
  • Added the Mission Tracker app
  • Added 11 Primary missions and 30 Secondary missions
  • Added the Research inventory app
  • Added 9 new Science collection parts
  • Added several unique points of interest throughout the Kerbolar System
  • Implemented thermal system for part heating
  • Implemented re-entry VFX
  • Implemented Delta-V tools in both VAB and flight
  • Added fully-functional buoyancy system for floating vessels
  • Implemented a new audio ambience system
  • Added the first implementation of the Cheats Menu (ALT+F8)
  • Added a boat dock environment
  • Added two new tutorials
  • Added new messages to the Cadet Orientation System
  • Added dozens of new items to the Kerbal Variety System
  • Added the K0 starter rocket stock vessel

Bug Fixes and Improvements

Flight & Map

  • Implemented reinforced joints system and accompanying player-adjustable joint mode settings
  • Overhauled buoyancy behavior
  • Fixed: Acceleration under timewarp stops working after reaching specific in-game time (UT) while in orbit around some CBs
  • Fixed: Buoyancy displacement incorrect for parts with variety drag cubes
  • Fixed: Landing legs deployed at high speeds are ripped off of the vessel
  • Fixed: Vessels sink or are destroyed due to mismatched terrain colliders
  • Fixed: Vessel falls through the ground when camera moves more than ~2500m away from it
  • Improved issue where rovers flip after driving a short distance from their load origin location
  • Fixed: Visual drift on several engines when using high timewarp
  • Fixed: Vessel parts move out of place when switching to a rocket in orbit while at the KSC or Tracking Station
  • Fixed: Vessels end up in a bad state wen switching away from the vessel in orbit
  • Fixed: Vessel parts are out of place after disengaging timewarp at very low orbit around Mun
  • Reduced floating point precision loss on rotating reference frames
  • Fixed: Ship is destroyed when switching away from the vessel while engines are running
  • Fixed: Two docked vessels become stuck and unable to undock after a third vessel is docked
  • Improved trajectory AP/PE values changing when saving and loading while in orbit around any CB
  • Added AP/PE display to maneuver trajectories appearing within SOIs
  • Projected trajectory and actual trajectory now both show periapses for the targets in relative SOIs after a maneuver has been performed
  • Fixed: Kerbals appear as vessels in Map
  • Fixed: Orbit tag displays incorrect celestial body name
  • Fixed: "Timewarp to Point" appears as an option for planned trajectories
  • Celestial body name is shown on both the default and expanded view of every AP/PE marker
  • Changed "Enter/Exit SOI" marker to "Encountering/Leaving CB Name"
  • Orbital markers inherit the color of the current trajectory or planned maneuver trajectory
  • Fixed: Vessel and other icons clip into celestial bodies in Map view
  • Fixed: Maneuver gizmo can still be manipulated if the player pauses while manipulation is occuring
  • Added "control" and "focus" to Kerbal action buttons in Tracking Station to align with vessel actions
  • Fixed: Returning to KSC while paused in another SOI breaks KSC
  • Reduced the frequency of "Solar Panels Ineffective" notification
  • Fixed: VesselOutOfElectricity message event does not trigger when EC is exhausted
  • Fixed: Notification does not display when trying to increase timewarp past the limit using hotkeys
  • Fixed: Player receives "Loss of Control" notifications when discarding boosters
  • Fixed: "Vessel out of EC" notification fires when the vessel or Kerbal doesn't have EC to start with
  • Fixed: Staging a vessel collapses the Delta-V information in the staging stack
  • Fixed: Vessel continues to accelerate after resuming control from Tracking Station, and turning off engines
  • Fixed: Vessels on launch clamps are not considered landed when at the launchpad
  • Fixed: Throttle sometimes jumps to 100% when passing 20km altitude above Kerbin
  • Fixed: Some engine gimbals don't work when offscreen (e.g. in Map mode)
  • Added vessel loss prompt when using the Escape Menu option to leave flight while vessel is on a collision course
  • Adjusted flight report to remove revert options from vessels that are currently in-flight or have been recovered
  • Fixed: Map UI info panel fails to display buttons and flight information for EVA Kerbals
  • Fixed: Portraits for both Kerbals are not present when docking vessels that have one Kerbal each
  • Fixed: Jetpacks sometimes show up in Kerbal portraits
  • Fixed: Tooltips on map items duplicated due to camera distance
  • Fixed: EC values from destroyed electrical parts remain in the Vessel Resources UI
  • Fixed: Flight HUD velocity displays decimals but only updates on integers at velocities above 999 m/s
  • SAS vector hold indicator now displays appropriate highlight when selected
  • Fixed: Temperature gauges stay on screen when switching scenes
  • Fixed: Disconnected parts sometimes remain linked when joints are broken between parts
  • Fixed: Kerbol not visible between altitudes of 1000 MM and 750 MM in flight
  • Fixed: Deployed parachutes that have moved from the parts bin to the first stage do not stage properly
  • Fixed: Vessels landed on CBs other than Kerbin can be recovered using Info Panel in Tracking Station
  • Fixed: Part destruction causes assertion error
  • Fixed: Recovering vessel causes Null Reference Exception
  • Fixed: Looking directly at Kerbol from a semi major axis of ~25,210,000,000 m or more causes error flood
  • Fixed: Tracking station shows shows incorrect values for atmospheric pressure, sphere of influence and rotational velocity for CBs

Optimizations

  • Improved performance of SimulationObjectView by returning pre-cached components
  • Improved performance of loading stock vessel metadata by only reading from meta .json files
  • Moved buoyant force algorithm to job system to address spinning of floating parts and to improve performance and stability
  • Improved water detection performance
  • Terrain rendering time reduced by ~30-50% based on location
  • Removed separate re-rendering of cloud edges to improve performance
  • Fixed: Cloud resources not released after changing cloud quality settings
  • Optimized shadow rendering for clouds
  • Fixed: Light bulb parts cause performance issues
  • Fixed: Frame rate drops when generating new Kerbals using the Kerbal Manager in the VAB
  • Fixed: Memory leak in PartBehaviorSystem

Menus & Settings

  • Changing from Full Screen to Windows maintains resolution settings
  • Graphics Settings for resolution now default to the current resolution, if present on the dropdown
  • Fixed: Some accessibility settings do not visually update UI to represent saved setting state
  • Fixed: Graphics quality settings do not apply correctly when selecting medium quality
  • Fixed: General settings don't have descriptions for all options
  • Fixed: Part animations in Main Menu display incorrectly
  • Updated KSP2 Credits

Saving & Loading

  • Fixed: Title freezes at loading screen after reverting to the VAB several times from flight
  • Fixed: Save files take a long time to load, and in some cases the vessel is absent after loading
  • Fixed: Struts don't appear on a vessel if the vessel was previously loaded onto a launch pad
  • Fixed: Close button doesn't work in the Workspace File Name input field inside the Save Workspace dialog
  • Changed "vehicles" to "workspaces" in VAB Save/Load menu titles to reduce confusion
  • Fixed: Save Workspace menu shows vehicle names instead of workspace names for player workspaces

Parts & Stock Vessels

  • Fixed: "RF-AD-XL 2500" fueled adapter model is invisible
  • Fixed: "Tuba" engine experiences attachment offset at high warp speeds
  • Fixed: Landing legs and wheel parts under compression fully extend during timewarp
  • Fixed: Landing legs have issues when switching to map while they are extending or retracting
  • Fixed: "Labradoodle" engine moves out of place when timewarping at 1,000,000x speed in flight
  • Fixed: Already-deployed shrouds sometimes reappear when game is reloaded
  • Added heatshield functionality to existing heatshield parts
  • Fixed: DTS-M1 antenna collider stuck in deployed state
  • Fixed: Surface attach node definition for MK3 engine mount is missing
  • Added bottom node to inflatable heat shield
  • Fixed: Stack-attached parts incorrectly detected as contents of a cargo bay
  • Fixed: Missing drag properties for some structural parts
  • Improved clipping of landing legs through terrain and other surfaces during time warp
  • Minor tuning pass on many parts, including Command and Structural drag cube and buoyancy scalars
  • Tuning pass on drag cubes for all parts
  • Fixed: "Goliath" engine fan doesn't animate when throttled up/down

UI / UX

  • Updated UI for the KSC launchpad menu
  • Updated UI for the Training Center
  • Updated Launchpad Menu UI
  • Updated UI on the KSC Menu
  • Updated visuals for alert notifications panel
  • Updated visuals for UI Notifications
  • Passive notifications moved to the top of the screen
  • Updated UI for all app windows for stylistic consistency
  • Fixed: Alert & Passive Notifications don't scale properly when switching between resolutions
  • Fixed: Passive notifications remain on screen indefinitely when the game is paused
  • Updated boat launch icon
  • Consistency pass on KSC facility icons
  • Updated color for scrollbars
  • Increased font size for Game mode descriptions
  • Updated UI on tutorial arrows and indicator areas
  • Resized tutorial arrows
  • Tutorial gifs display at consistent size
  • Fixed: Fuzzy edges on the VAB Tool Bar UI
  • Fixed: UI does not properly highlight when hovering on the save vehicle save/load menu
  • Fixed: Ellipses have incorrect vertical position due to font issue
  • Fixed: Action Bar Bento Menu button text runs into edge of box
  • Fixed: Text misaligned when viewing EVA controls in flight
  • Fixed: Text is cut off and illegible in the Time Warp and Breadcrumb UI while on the lowest fullscreen resolution
  • Fixed: Text cut off in Training Center due to scroll masking

Construction

  • Fixed: Attaching a subassembly to another part using the stack attach node of a symmetrical child part causes crash
  • Fixed: LES "Bottle Rocket" Solid Fuel Booster appears as a white box icon in the staging stack
  • Fixed: Assembly Anchors cannot be changed on non-launch subassemblies
  • Fixed: Copied decouplers are not copied to a new stage
  • Fixed: Symmetrically-placed parts remain held and cause a Null Reference Exception after removing and reattaching an edited subassembly
  • Fixed: Area around staging stack in the VAB is camera movement dead zone

Environments

  • Upgraded water refraction for Kerbin and Laythe
  • Adjusted Eve's ocean waves
  • Adjusted ocean waves on Kerbin and Laythe
  • Adjusted Eve's ocean underwater surface visibility
  • Fixed: Visual artifacts appear in Jool's atmosphere while within Jool's SOI in flight mode
  • Fixed: Visible steps in cloud rotation due to low float precision
  • Fixed: Cloud shadows cause light flickering on vessels in low Kerbin orbit while on high quality settings
  • Fixed: Clouds disappear at some locations when set to low quality
  • Fixed: Height mismatch between local and scaled clouds under medium quality settings
  • Fixed: Eve's upper atmosphere has a semi-sharp upper border
  • Increased resolution for close-range terrain textures on all celestial bodies
  • Fixed: Laythe low quality clouds have a pixelated glow effect on them
  • Fixed: Terrain appears pixelated when seen up-close
  • Fixed: Dres ridge and some other decal-based landforms don't have proper collision
  • Fixed lighting flashes when loading new scenes or changing vessels
  • Updated collision mesh for Air Traffic Control Tower
  • Fixed: Negative scale errors reported in log files

EVA

  • Fixed: Loading a game that was saved while an EVA Kerbal was holding onto a vehicle causes the Kerbal to fall off the vehicle
  • Fixed: If a Kerbal jumps during time warp while in flight mode, the Kerbal becomes unresponsive
  • Fixed: If ladder is shaking, Kerbal resting on ladder becomes offset over time
  • Adjusted jetpack material to better match kerbal spacesuit

FX & Audio

  • Fixed: Ambient sound stops working when leaving flight view and coming back
  • Fixed: Audio events do not persist when entering the main menu upon exiting or saving a game
  • Fixed: Audio mutes on text entry on Campaign screen if you use numpad 1 or 2
  • Fixed: Audio does not detect collisions with non-terrain objects correctly
  • Fixed: Water impact splash does not change with part velocity
  • Fixed: Water splashes spawn at incorrect orientations
  • Fixed: KSC ambient music plays while in Cadet Orientation mode
  • Fixed: Math issues in water level detection vs part bounding boxes caused apparent hovering of floating vessels

Tutorials

  • Fixed: Title crashes after deleting parts during Tutorial 1 and then quitting to Main Menu
  • Added a setting to disable Cadet Orientation after creating a campaign
  • Fixed getting stuck on the final step after using time warp to reach a stable orbit trajectory during tutorial "Establishing an Orbit"
  • Fixed voiceover getting stuck when player fails tutorial "Manipulating Orbits"
  • Fixed: Tutorial highlight overlaps Altimiter in the Flight Cluster
  • Fixed: Engineer's Report and Flight Planner crowd one another in the VAB tutorial
  • Updated arrows position for several tutorials

Modding

  • Changing unit culture to be invariant for some text parsing scenarios

Known Issues

If paused in-flight, switching to Mission Control causes the loading screen to hang.
  • Workaround: Press '>' to resume time.
Orbit Surveys are difficult to run on small celestial bodies.
  • Workaround: Geostationary or big elliptical orbits should allow the player to run those experiments. The intention of this part is for it to scan the regions underneath the vessel as it moves over them - however right now, it pauses when a new region is encountered, something that occurs a lot when moving fast over some CBs. We are internally testing improvements to this so the part can get its data with less babysitting.
Miscellaneous text issues in missions, i.e. debrief text repeating.
  • Significant amounts of text went into this update, so a few things slipped through the cracks. Even if they're minor, please do report them!
Separators below a root part will cause improper separation causing loss of control.
  • Workaround: Consider using decouplers instead of separators if you're running into this issue.
Solar panels are sometimes blocked when in Jool's sphere of influence even when Kerbol is in clear view.
After staring at the Sun from Jool's 'surface', black dots may appear and persist even when transitioning back to the KSC.
Surface-attached lights don't turn on properly when launching for the first time.
Common Workarounds
If you run into an issue, the first thing you should try is saving and reloading. We have found many common issues to be quickly fixed using this method. You can additionally try reverting to launch.

A Note on Heat
It's important to keep in mind that the Part Heat System in KSP2 is different than KSP1, so do not expect parity in this area. Tuning the numbers for the heat system will be a long-term project, so feedback is appreciated!

Submitting Bug Reports and Feedback
If you'd like to provide feedback about this build, there are many different ways to do so:
Submit Feedback through the Game Launcher
Suggest a Change on the KSP Forums
Join us on Discord to discuss potential changes

Bug reports should be shared to either:
Private Division Customer Support
Dedicated Bug Reports on the KSP Subforum
For us early fans of the original Kerbal Space Program, there were so many things to enjoy during those first sandbox days. Whether it was the slapstick fun of stringing together small fuel tanks (there was only one size) into impossibly huge rockets, or the eternal search for unlikely uses for the game's only “robotic” part (the landing leg), KSP was a good time from the very beginning.

Ah, the good old days. (Courtesy of TD Channel)

If HarvesteR and Squad had stopped there, Kerbal would likely still be remembered as a beloved curiosity. But then they added Science Mode. Suddenly, the game had goals: anywhere you went in the Kerbolar System, you could gather a Science currency that could be spent at the R&D Center to research new technologies. Over time, an expanding roster of new parts were added to the game, and lo and behold, KSP became undeniable.

With the siren song of new celestial bodies calling out to me, my own campaign saves turned into epic sagas. I became attached to the individual Kerbals who crewed my first, stumbling Mun missions. Stranded survivors of landings gone awry could not be left behind. That first Mun landing was a moment to remember, but the first Mun rescue was even better!

As that narrative emerged — and as I invested my crews with personalities and dreams — the game began to invade other parts of my life. I have a strong recollection of designing a Laythe rescue rocket in the margins of my meeting notes at work. It not only had to land upright in Laythe’s ocean, but had to deploy a boat to collect the survivors of a previous mission who had contrived to get stranded several kilometers apart from one another. And then the whole thing had to take off from the water again to rendezvous in orbit with a Kerbin return vehicle.

The missions became puzzles that I couldn't put down. To feed my growing hunger for design ideas, I first turned to the KSP Subreddit, where others (some of whom clearly knew a thing or two about space travel) were achieving impossible things with their own space programs. Some of these creators drew inspiration from planned space missions, some of which were more speculative than others.

Thus was I introduced to the strange and beautiful universe of “what happens when the Kerbal spirit is applied to the material world.” Could you propel a ship with nuclear bombs? Yes, and we almost did! Could you build a plane that takes off from a runway, then switches from air-breathing mode to oxidizer mode to fly to orbit? You sure can try!

My Kerbal experience became a way to investigate many of these real-world mission architectures, and as a greater number of mods became available, virtually all things became possible. The real-world mission proposals all had awesome names that hinted at their audacity: Orion, Nautilus-X, Constellation. Sometimes it felt like I could wish them into being by building them in KSP. Not all of these dreams were as far off as they seemed — as SpaceX achieved the impossible goal of landing first stages propulsively, we all played along at home.

This video game had introduced me to a new and beautiful reality. When I knocked together my first goofy rocket, I didn't even really know what an orbit was. HarvesteR didn't just give me a game, he gave me an endless undertaking, the pursuit of which would lead me to Atomic Rockets, the NASA Spaceflight forum, and the videos of Scott Manley.

Tomorrow, Kerbal Space Program 2 is crossing that same threshold from “fun toy” to “trying to figure out in the shower how to make a rover when you haven't unlocked wheels yet at the R&D Center.” With the release of the For Science! update, the game receives several new features and numerous high-consequence bug fixes. I've been playing a single Exploration Mode campaign for a couple of months now, and I'm suddenly realizing that thousands of deeply-invested sagas are about to get underway.

Just unlocked some probe cores, it's time to fly to Duna!

My son was born a year after the original KSP’s debut. Now we're playing KSP2 together, and our own Exploration Mode campaign has just entered Tier 3 on the tech tree. We've Gotten Weird With It, somehow managing to unlock the nuclear NERV engines before having rover wheels, extendible ladders, or any but the smallest batteries. We've returned samples to Kerbin from Duna's North pole and the deep craters of Gilly. We've disintegrated more than one probe in the thick atmosphere of Eve, and we're assembling a very big nuclear rocket in low Kerbin orbit, with the goal of exploring all the moons of Jool in one go.

We've got a lot of empty docking ports on that main truss. Probes? Landers? Packing for Jool is always hectic.

It's so fun. It's really, really fun.

How is it different from KSP? Lots of ways, big and small. Science collection is a much smoother process that involves a lot less guesswork, and the new Science parts are pleasingly diverse, asking you to think hard about how to take advantage of their unique properties. To give one example, the long collection time of the ASCM-A "Air Sniffer" atmospheric science module requires you to develop a loiter capability. You’re either going to have to make a plane, or you’re going to need to get creative with your lander design!

We haven't unlocked the big engines yet, but that won't stop us from testing some spaceplane ideas!

The new terrain system really comes into its own here, as well. There’s no way to predict what you'll encounter when landing at a new location, and I often find myself sightseeing when I'm supposed to be doing serious science stuff. Adding to that feeling of mystery are the new Discoverables — one-of-a-kind points of interest, a couple dozen of which have been scattered throughout the Kerbolar System. My son and I have run across one of them so far (won't tell you where), and it was every bit as exciting a discovery as I'd hoped!

Tim C. Kerman clearly thinks he's discovered a delicious baked potato.

This update’s inclusion of re-entry heating and more rigid joints are of course hugely important to the overall experience, as are the recent corrections of a number of stability and performance issues. Buoyancy has also seen a major upgrade, and it’s now possible to build working seaplanes (and launch them from our brand-new boat docks)! The game is still in Early Access, which means there are still plenty of improvements to come (as well as plenty of opportunities to help us out by submitting your feedback and bug reports), but the simple fact is that the game is now very hard to put down.

My first glorious seaplane flight in KSP2 (inspired by this amazing real plane).

Go check out our deep dive video for a breakdown of everything that arrives tomorrow at 10am Pacific time in the For Science! update. We've got an all-new Mission system that offers you interesting new goals to pursue in your quest for Science, and there's a completely revamped R&D Center with four tiers of unlockable technologies. Personally, I'm looking forward to seeing how deep into the Kerbolar System people can get with only the first research node unlocked. I suspect it's shockingly far. Could Eeloo be in play? Could somebody possibly manage an Eve landing and return? Only time will tell!

Eve, beguiling yet deadly!

The For Science! update is the first of a series of major Roadmap Updates. The next one brings colonies to the game, and future installments will add new star systems and new technologies to enable you to fly between them. We’ll also continue to listen to player feedback to get a sense of which changes are working well and which ones need further development.

The fun is just beginning!

2023 has been a year of challenges for KSP2, and we appreciate the huge role our community has played in helping us to identify and pursue areas of improvement. I also want to give a big shoutout to our Pioneers, whose dedication and eagerness to dig deep into early builds uncovered a lot of previously-invisible issues. I hope that as we pass this new milestone, you can feel how much passion and hard work the team at Intercept has poured into this game. We are proud of how far KSP2 has come, and we are equally grateful for the dedication and patience our players have shown over the past year. We certainly have come a long way in the last ten months.

From all of us at Intercept to all of you in the KSP community: thank you for your support. We’re excited to finally get the Exploration Era underway with all of you.

Don’t forget to check your staging, and I’ll see you on Laythe!

Nate
Hi Kerbonauts!

For Science! launches in a few days on December 19th - here's a deep dive video with key members of the KSP team that covers what'll be available in the update (with some sweet new gameplay!).


ICYMI - for more information about For Science!, check out our:
We're in the final countdown!

Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
The team has been hard at work improving the performance of Kerbal Space Program 2 since launch, so we'd like to take a moment to really showcase the difference between the Early Access launch (v0.1.0.0) and the For Science (v0.2.0.0) release coming next week on December 19. Full global release timing graphic can be found here.

Here's a look at some graphs we use to understand the game's performance and the improvements that have been made to our minimum specification and recommended specification machines:

FPS between EA launch and For Science! on minimum specs.

FPS between EA launch and For Science! on recommended specs.

This represents a huge amount of work by the development team across a number of features and releases. With performance optimization being one of the most frequent requests since launch, we're looking forward to hearing from players how this work improves the overall gameplay experience.

If you're curious about performance tuning and how we make decisions in that area, the rest of this check-in provides a high-level overview from our Engineering Team and should provide a bit of extra context for the above graphs.

Performance 101
As you can see in the charts, performance varies quite a bit between various scenes players might find themselves in. When we’re investigating performance-related issues, we need to investigate many variables both in the game and on the physical machine. Let’s examine the basics of performance tuning and what we look at when trying to make decisions about performance optimization.

In keeping with the theme of For Science!, we should start with defining our experiments and the measurements we will use to determine if we are moving in the right direction. So, let’s start with Frames per Second (FPS), which many of you will already be familiar with. A frame is the period required to fully recalculate what has changed in the game state and redraw the scene to the player. The more FPS, the smoother the game looks and feels, as this allows us to capture inputs quicker and update the game state showing those updates to the user in a more responsive way.

When we are digging into performance, we want to look at that value in a different way: milliseconds per frame (ms). Why would we do that? Basically, we want to understand what, in a given frame, is taking up time so we can make it faster. For a 30 FPS goal, we get 33.3 milliseconds per frame, so it becomes a lot easier to set a budget for how much time a given section of the game should take. But what are we taking time from exactly? There are two pieces of hardware we generally are looking at for performance: the GPU and the CPU.

At a high level, a Graphics Processing Unit (GPU) is a piece of hardware that specializes in the types of calculations that are needed to render a given scene. It is much faster at smaller tasks in parallel than a Central Processing Unit (CPU) but much slower at running tasks in a series. In order to get the maximum performance out of a computer, we want to use both to their full potential and optimize the game accordingly.

Now some of you are thinking “What about memory, storage devices or things like that?” And you’re right that we do consider those things, but for the purposes of this overview we are going to concentrate on the biggest items that affect performance. But bonus points all around.


An example internal debug output.

One of the important parts of performance tuning is to understand what the bottleneck is in each scene, either the CPU or the GPU. In the image above the CPU is taking 44ms per frame on a scene and the GPU is only taking 19ms. The CPU is the bottleneck in this case, so it doesn’t matter how much more optimization we do on the GPU. To improve this specific case on this specific hardware, we need to determine and target the most expensive operations on the CPU.

One of the challenges of making a PC game compared to consoles is the variety of hardware choices, specifically when it comes to CPUs and GPUs. There are thousands of combinations that someone could have, and each of them is going to perform slightly differently. That doesn’t even get into memory differences or software differences like operating system patches, hardware drivers, etc. This is why we publish minimum and recommended machine specifications - to help players understand what we have tested and if their machine should be able to play the game with adequate performance.

Now that we have some background on what developers look at for performance tuning, let’s go back up to those graphs at the top. For one, these are per-configuration graphs, which are used to tell us how the game is performing on that specific hardware. We do lots of these which help us to remove the hardware variables from the tests and just look at how the given build is performing overall. It also lets us look at this data over time and see if things are improving or not. As we add features, these will always affect performance, so we need to be checking the deltas consistently to determine where we need to spend time on improvements. The other thing these graphs help determine is if a given hardware setup has abnormal issues compared to other similar setups. A given manufacturer may have optimized their hardware in such a way that we get different performance out of certain improvements and knowing that helps us optimize the game for the entirety of our player-base across a wide range of hardware options.

We hope that this has been informative! As we work towards larger performance optimization goals in the future, we’ll be sure to share updates in posts just like this – and perhaps take a more technical deep-dive in a performance-focused dev blog, so let us know if you’d like to see that!

Thanks for reading and hope you enjoy For Science!

-The KSP Team
We are days away from the launch of For Science! on December 19!

Here's a world map of when the update comes out in your time zone:


For more information of what's in the update, check out this announce news post and our Science and Tech Tree video with Tom Vinita, Feature Lead.
https://www.youtube.com/watch?v=74qcdSk9V2M

We've got some fun things staging for release!

Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Hello Kerbonauts. I'm Ghassen, also known as 'Blackrack,' the newest graphics programmer on the team. You have no doubt noticed that we have improved the atmosphere rendering in v0.1.5.0. Today I’m going to share with you some insights into those improvements, as well as some of the improvements that are going to be in v0.2.0.0.

Inspecting the Atmosphere
This is how our atmosphere appeared in v0.1.4.0 on Kerbin:


We can see a very nice-looking sky. However, the effect is very subdued on the terrain, we have trouble reading the terrain topography: It is difficult to tell what we are looking at in the distance and the sense of scale escapes us. Are those mountains? Are those hills?

Cut to v0.1.5.0, we can immediately see a big improvement in the scene's readability.


We can now immediately get a sense of how far away things are and we get a better sense of scale. This is what’s known as aerial perspective.

How the Atmosphere is Rendered
We are using a precomputed atmospheric scattering method which is standard nowadays in computer graphics, and popularized by Eric Bruneton.

It is precomputed, meaning all the heavy calculations involved in simulating how light scatters through the atmosphere are done once for all possible altitudes and sun angles, and then stored in compact and easy to access tables. The latitude and longitude of the observer on the planet does not matter because we can use symmetries and effectively just change the altitude and sun angles to get the scattering at any viewpoint.

These tables can then be used to display the effect in a very performance-friendly manner when the game is running. These are known as look-up tables. This what some of the slices in our look up tables look like:



How Aerial Perspective is Rendered
The look-up tables I’ve described earlier can be used to find the colour of the sky for any given viewpoint inside or outside the atmosphere, as well as how much the atmosphere occludes celestial objects behind it (this is known as transmittance or also extinction, it describes how much of the original object’s light is transmitted and makes it to the observer).



The look-up tables only allow us to get the light scattered towards us from the edge of the atmosphere, and assume we are always looking towards the edge of the atmosphere, so we cannot use it to directly to get the colour of the atmosphere up to an object. This is because the look-up tables would otherwise become impractically big and would eat up our memory budget.



However, since the look-up tables allow us to get the colour of the sky from any viewpoint, we can re-express the scattered light up to a point/object as the difference between two samples to the edge of the atmosphere, starting from different positions.



We also must apply transmittance to the observer to second sample (in red on the diagram) for everything to be correct.

Putting It In-Game
So now that we know the method to render aerial perspective, we can plug it in-game, and see what we get. Behold:


Hmm that looks really strange around the horizon, so what's happening here?

Recall that we are using look-up tables, these are loaded on the graphics card as textures, and they have limited resolution and precision (bit depth). The aerial perspective method described earlier only makes precision issues worse by taking the difference between 2 samples, especially on high variance areas (typically around the horizon) where any imprecisions are amplified.

The way to deal with this is to first inspect the look-up tables, see if anything is stored in low precision textures or with any lossy compression, and use high precision instead where needed typically (16-bit and 32-bit per channel floating point textures).

After that, we can then change the parametrization for how samples are distributed across the look-up table to maximize resolution where it is needed. The original paper offers a nice way to distribute samples, but we found that it works best for physical settings matching those of Earth, but not for some of the settings used at Kerbal scale.

Finally, we review all the lossy transformations in the math and try to minimize any loss of precision and guard against various edge cases.

This is where most of the engineering effort in implementing precomputed atmospheric scattering is spent. Right now, we have gotten our implementation to a good place, however the inherent limitations of the method means that in the future we will move to a different, non-precomputed method which doesn’t suffer from these issues and would allow us greater flexibility.

The Importance of Mie Scattering
We simulate Rayleigh scattering (air particles), mie scattering (water droplets and aerosols) and ozone absorption, each of these is important to represent a different effect and render all the kinds of atmospheres we want.

Mie scattering has a particularly noticeable effect and can be used to make atmospheres look foggy and cinematic, all the while keeping a realistic look. I took these screenshots early in testing the atmosphere changes to illustrate the difference increasing mie scattering makes to a scene:





In the end we went with a relatively subdued setting on Kerbin and a nice heavy setting on Laythe to set them apart, also as a reward for flying to Laythe.

Atmosphere as Lighting
Recall that we have the transmittance that we discussed earlier as the part of light that reaches the observer and objects in the atmosphere. We can now use that to light objects, by applying it to sunlight, this gives us the very nice and soft lighting you can see around sunsets and sunrises:


We can also use the transmittance on the clouds, notice how areas in direct light can get a nice reddish color, while areas not in direct light get ambient light, and we get a very nice contrast between the reddish transmittance and the faint bluish ambient:


Using the atmosphere to do lighting also simplifies artists workflow, as the alternative was to try and approximate the different lighting parameters at different times of the day via various settings and it was very difficult to make the clouds look “right” at every time of day. Now we have less work to do and it looks better and more coherent.

Speaking of clouds, next we will discuss of some of the performance improvements coming in v0.2.0.0, but first let’s see how clouds are rendered in more detail.

How Clouds are Rendered
Modern clouds are rendered via raymarching, a technique that involves “walking” through a 3D volume, incrementally sampling properties like density and colour as we move along, and performing lighting calculations. This method provides a more accurate and visually appealing result compared to traditional rendering techniques and is very well adapted to rendering transparencies and volumetric effects. This figure shows in red all the samples we have to do for a single ray/pixel on-screen:



Because of the number of samples we must take during the raymarching process, it is very demanding performance-wise. A solution to this it to render at low resolutions and upscale.

Temporal Upscaling
Temporal upscaling was introduced in v0.1.5.0, the idea is to render a different subset of the pixels every frame. This is similar to checkerboard rendering if you’re familiar with the concept but generalized and not locked to half resolution rendering. This diagram shows how 4x temporal upscaling works, a full resolution image is reconstructed over 4 frames:


In movement, the old pixels are moved to where they should be on the current frame, based on their position in space and how much the camera moved from the last frame, this is called reprojection.

After moving the old pixels, their colour is validated against neighbouring new pixels, to minimize temporal artifacts, this is called neighbourhood clipping and is the foundation of modern temporal techniques like TAA.

Despite the neighbourhood clipping, we were still getting artifacts and issues after this stage in motion, due to the high number of “old” pixels compared to “new” pixels, typically this manifests itself as smearing or flickering. Our solution was to re-render the problematic areas separately at normal resolution, since these areas are only a small part of the final image.

This sounds great in theory, but while flying around clouds in a fairly heavy scenario we can see the following timings on a 2080 super at 1440p:

  • Low-resolution rendering of new pixels: 5.45 ms
  • Reproject old pixels and assemble full resolution image: 0.12 ms
  • Re-rendering of problem areas: 4.11 ms
  • Process and add clouds to the rest of the image: 0.09 ms
For perspective, if we want to reach 60 fps we need to render in ~16.6 ms, so this step seems to take a sizable chunk of rendering time in v0.1.5.0, even though we are rendering faster than we did in v0.1.4.0 using this approach.

This is because those re-rendered areas are at the edges of clouds where rays must travel furthest and evaluate the most samples before becoming opaque or reaching the boundary of the layer.

For v0.2.0.0 we took a bit more inspiration from temporal techniques to find an alternative solution to re-rendering problem areas: If colour-based neighbourhood clipping isn’t sufficient, we can use depth and motion information like speed and direction of movement (on-screen) to try and identify when reprojected pixels don’t belong to the same cloud surface/area and invalidate them as needed. The idea is to store all this information from the previous frame, and every frame we do a comparison with the previous one to get a probability that a reprojected pixel/colour does not belong to the same surface we are currently rendering.

After some implementation and tweaking this ended up working well and we can see the following improvement in rendering performance (screenshots taken on a 2080 super at 1440p, framerate counter in top left):

On the launchpad we went from 77 to 91 fps

In-flight around the cloud layer, we went from 54 to 71 fps

That’s about a 17-31% performance improvement on the whole frame and we save 2 ms to 4 ms on the rendering of the clouds.

You can look forward to these performance improvements and more in v0.2.0.0, out on December 19th!

Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Hi Kerbonauts!

As we get closer to the For Science! update, another Dev Chat has dropped - sit down with Creative Director Nate Simpson and Feature Lead Tom "FRIIIDAAAAAAAAY" Vinita as they deep dive into Exploration Mode and the tech tree, upcoming features of the update. Watch Nate and Tom play through
the mode's first mission called Launch a Rocket, collect Science on Kerbin, and progress through the tech tree!

(It's not Friday, please don't tell Tom. He was very excited to shout the day.)

Be sure to also check out the sneak peeks we've been putting out, highlighting some goodies coming to For Science!.

There aren't any sneak peeks at the end of the Dev Chat...except in case you missed the announcement...

THE FOR SCIENCE! UPDATE WILL BE OUT DECEMBER 19, 2023!!
More details on global release timing to come. We can't wait to share!

For all you pixel investigators, shots of the tech tree below!






Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Attention Kerbonauts!

We're ecstatic to share that...

THE FOR SCIENCE! UPDATE WILL BE OUT DECEMBER 19, 2023!!
(Yes, in three weeks!)

Check out our last news post for information on some features to expect! And stay tuned for an all-new Dev Chat later this week that deep dives into everything this milestone update has to offer.

We'll share more details about global release timing when we get closer to launch. We can't wait for you all to get your hands on For Science!!


Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
🚀 <-- This rocket denotes a fix that community members directly helped our dev team fix. Thanks to all of you who send in bug reports!

Bug Fixes

Flight & Map

  • 🚀 Fixed: Orbital decay fix causes vessels to travel sideways above Eeloo at certain altitudes
  • 🚀 Fixed: EVA Kerbals are unable to move along vessels via magboots or ladders while in Orbit
  • 🚀 Fixed: Loading screen soft locks after a revert to launch while game is paused
  • 🚀 Fixed: A.I.R.B.R.A.K.E.S. mirror symmetry clones deploy backwards
  • 🚀 Fixed: Fairings fly towards celestial bodies after being jettisoned
  • 🚀 Fixed: Vessel focus behavior is wrong when using stack separators
  • 🚀 Fixed: Kerbals in non-launch assemblies are lost when launching the vessel
  • Implemented conic section highlighting when cursor hovers over trajectories in Map view
  • Fixed: Discarded stage's orbit changes when timewarping with acceleration
  • Fixed: Joints break when decoupling parts on vessels with physicsless parts
  • Fixed: EC drains at the rate used by active reaction wheel even after torque is disabled and no actual torque is being applied
  • Fixed: Vessel stage deploys after the Go button is pressed while time warp is above 1x and then dropped down to 1x
  • Fixed: LV-99 XL gear sometimes hover above runway upon landing
  • Fixed: Celestial body trajectories are a solid color when viewed in the Map or Tracking Station
  • Fixed: Light tree shows all green lights earlier than intended on maneuver burn timer
  • Fixed: Decoupled stage without probe core/pod is controllable

Optimizations

  • Optimized CPU use for cloud rendering
  • Optimized MessageCenter to improve performance in flight scene
  • Improved GPU performance at KSC by rendering KSC ground during terrain prepass
  • Improved CommandBuffer performance by delaying execution until end of frame, avoiding unnecessary UpdateRenderBounds work
  • Fixed: Drastic loss of performance during a specific time of day in Kerbin's atmosphere
  • Fixed: Vessel splashed-down behavior causes performance to drop
  • Fixed: Water and cloud render textures cause memory leak
  • Fixed: Stranded references in the Simulation Update code
  • Fixed: ParametricLineGenerator leaks memory
  • Fixed: Memory leaks from VegatationSystem
  • Removed unnecessary code when returning to main menu
  • Removed unnecessary calls in SetOceanMaterial code
  • Removed unnecessary planet textures to reduce GPU memory
  • Removed unnecessary calls in GetLiftVector code
  • Reduced memory usage on water rendering
  • Reduced unnecessary calls in the IVAPortraits code

Saving & Loading

  • Fixed: Unable to launch a vessel under the Workspaces folder from the Launchpad menu at KSC

Parts & Stock Vessels

  • Added gridfin parts GRFN-125 and GRFN-250
  • 🚀 Fixed: Extended engine bells load from save in wrong state for Cornet, Trumpet and Tuba engines
  • Updated mesh generation code for fairings
  • Fixed: LY-60 and LY-90 landing legs wheels are misaligned or flipped when extended
  • Fixed: Separating any part from ST-Micro-1 truss causes all remaining child joints connected to any other ST-Micro-1 truss on the active vessel to break
  • Fixed: Docking ports cannot always be targeted
  • Fixed: LT-1 landing leg does not align to the ground when extended
  • Fixed: Ground parts under compression fully extend during timewarp in game
  • Fixed: Antenna ranges for fixed antennas not calculated correctly
  • Fixed: Rover wheels lose steering at low velocity
  • Fixed: Drag system errors when loading a vessel in atmospheric flight

UI / UX

  • 🚀 Fixed: Part Tooltip Info in the VAB shrinks or enlarges until it disappears on cursor hover
  • Updated UI for Kerbal Manager
  • Updated Part Manager UI style

Construction

  • 🚀 Fixed: Max Impact statistic shows twice in part info tooltip
  • Reenabled ALT to disable stack attach
  • Increased timeout for Fairing and Wing edit icons
  • Fixed: A.I.R.B.R.A.K.E.S do not open when selecting Deploy in the parts manager in the VAB
  • Fixed: Vessels with changed assembly roots cause failure of surface attached parts, as well as broken save behavior
  • Fixed: Triangle panels placed with mirror symmetry are not oriented correctly
  • Fixed: The RA-15 antenna appears inverted when placed in mirror symmetry mode on a vessel in the VAB
  • Fixed: The DTS-M1 antenna is not oriented correctly when placed in mirror symmetry mode on a vessel in the VAB
  • Fixed: The Pegasus 1 ladder appears inverted when placed in mirror symmetry mode on a vessel in the VAB
  • Fixed: The Communotron 16-S antenna appears inverted when placed in mirror symmetry mode on a vessel in the VAB

Environments

  • Cloud lighting and shading improvements
    • Application of atmosphere transmittance to cloud lighting
    • Unification of ambient light calculation for ray-marched, baked, and scaled clouds
    • Recalculation of average position for clouds to accommodate density
    • Updating scattering to use average/weighted position estimated from density samples
    • Moving some code into functions, and separating cloud shadows out of scaled cloud shader and into a new shader that renders below the atmosphere
  • 🚀 Fixed: Lighting is not consistent from all camera angles when viewing the surface near the poles of several celestial bodies
  • 🚀 Fixed: Lighting is inconsistent at Laythe’s north pole
  • 🚀 Fixed: Lighting is inconsistent at Vall’s north pole
  • Changed lighting at sunsets by using atmospheric scattering to soften lighting - sunsets are now realistically red on Kerbin, blue on Duna, etc.
  • Improved atmospheric scattering integration on terrain and clouds to make atmospheres softer and horizons smoother
  • Improved cloud blending with the atmosphere
  • Implementation of biome and triplanar mesh bucketing for terrain rendering
  • Optimized cloud shadows
  • Adjusted dynamic resolution calculation for clouds
  • Increased Eve's atmosphere scatter height
  • Fixed: Wrong scale on KSC light colliders creating log spam
  • Fixed: Decals not visible at higher altitudes above Eeloo
  • Fixed: Water is invisible when landing at a specific location on the surface of Eve
  • Fixed: Bop's polar crater appears distorted in map and tracking station
  • Fixed: Terrain spikes at Bop's south pole
  • Fixed: seen from orbit, Jool's surface disappears while medium quality clouds are enabled

EVA

  • Fixed: Attaching a decoupler that creates a fairing too close to the MK1 Command Pod which prevents Kerbals from exiting vessel
  • Improved self shadowing on Kerbal skin materials
  • Improved smoothness of the blink animation

FX & Audio

  • Adjusted Logitech Lighting FX when vehicle crashes
  • Adjusted Logitech Lighting colors when reaching some celestial bodies
  • Fixed: Wingtip vortices jump when entering celestial frame of reference
  • Fixed: Incorrect key colors during docking control for Logitech Lighting FX
  • Fixed: Booster engine VFX spawn to the side when flying past ~21.5k altitude on Kerbin

Tutorials

  • Fixed: Reverting after using the Tutorial Menu to return to flight causes soft lock

Localization

  • Text updated for antialiasing options in Settings

Modding

  • Upgraded Unity to version 2022.3.5f1

Known Issues
Gridfins GRFN-125 and GRFN-250 Are Not Affected by SAS: This is due to a recently identified problem with control surfaces and how they interact with SAS. SAS is intended to work with Gridfins in the future, but for now they are manual control only.

PF-AD-XL 2500 Fueled Adapter Is Invisible When Viewed in VAB and Flight: We are aware of issue and are investigating.

First Time User Experience Prompt Does Not Appear When Vessel Loses Power for the First Time in Flight: This is new to v0.1.5.0, and we are investigating.

Submitting Bug Reports and Feedback
If you'd like to provide feedback about this build, there are many different ways to do so:
Submit Feedback through the Game Launcher
Suggest a Change on the KSP Forums
Join us on Discord to Discuss Potential Changes

Bug reports should be shared to either:
Private Division Customer Support
Dedicated Bug Reports on the KSP Subforum
Edit: We've announced that For Science! launches December 19, 2023. Read below for information about what's in the update!

Hello Kerbonauts!

Some exciting announcements as we enter the chilly months.

In December, we'll release a major content update for Kerbal Space Program 2! In past dev diary posts and video dev chats we've referred to the update as Dot Two or Science. We're thrilled to officially dub this update...

For Science!(Yes, the exclamation point is part of the update name. It's the most important!)


We've been sprinkling in sneak peeks of For Science! at the end of dev chats for everyone to digest. While we have more to share in the coming weeks, here are some features to expect from the update:

(Please note all images are work in progress!)

Exploration Mode
The For Science! update introduces a new game mode called Exploration Mode. In this mode, you collect and transmit Science from unique biomes across the Kerbolar System; and then redeem Science to unlock new part technologies.

Why is it called Exploration Mode and not Science Mode? In future updates, this mode will allow for resource collection and utilization, as well as the establishment of automated resource delivery routes. We want you to be able to continue the campaigns you start in December through all future colony, interstellar, and resource-gathering updates.


Science Collection Parts and Interface
As the name states, all new Science collection parts help collect Science. These parts are physically consequential, meaning shape and mass should be taken into consideration when building vehicles.




The Science collection and transmission interface gives you the heads-up when there's an opportunity to take measurements or collect a sample. The research inventory gives a detailed view of all Science collected during a flight with clear information about what's been learned and what conditions need to be met to claim Science rewards.


Tech Tree
The Research and Development Center is open! Science can be used to unlock new categories on the tech tree, allowing the creation of more advanced vehicles. You can scout and preview future nodes to plan through dozens of part families.


Mission Control
Mission Control is also open for business - meet Dr. Keri Kerman who will send you on increasingly-challenging quests from learning about basic rocketry to attempting to build and maneuver an entirely new kind of vehicle.


Heating and Thermal
The days of stress-free atmospheric re-entry will come to an end with atmospheric re-entry heating and thermal behavior for parts. When For Science! releases, take those heat shields seriously!


Wobbly Rockets Improvements
We've been hard at work improving the wobbly rockets issue. An enhanced joint system will dramatically reduce wobbliness of large vehicles.

Aaaaand More!
We can’t tell you everything, that’ll ruin the surprise!

With this update there will also be significant improvements to quality of life and performance! As we continue development we strive to make KSP2 playable on a wider variety of PCs.

In other exciting news, today we're at Space Creator Day - Creative Director Nate Simpson gave a first look at For Science! to space enthusiasts and creators. He also chatted with creators about the update and answered their questions.

Check out their channels in the coming days for exclusive interviews and gameplay (and because they make great content 🤩):
Thank you for your patience as we gear up for the update, look forward to more information soon! 💚

Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube
Bug Fixes
Flight & Map

  • Vastly reduced orbital decay in low gravity spheres of influence
Other

  • Certain actions will no longer cause PQS data values to be written to the Windows Registry
  • PQS data values added to the Windows Registry in previous releases will now be removed upon launching the game

Known Issues
Remaining Orbital Decay
Disabling engine thrust in a low gravity sphere of influence can sometimes cause a miniscule amount of orbital decay. We're working to resolve this issue and will keep the community updated on our progress.

Submitting Bug Reports and Feedback
If you'd like to provide feedback about this build, there are many different ways to do so:
Submit Feedback through the Game Launcher
Suggest a Change on the KSP Forums
Join us on Discord to discuss potential changes

Bug reports should be shared to either:
Private Division Customer Support (for game-breaking bugs)
Dedicated Bug Reports on the KSP Subforum
Hello Kerbonauts!

The next edition of Dev Chat is here - sit down with Creative Director Nate Simpson and Senior Engineer David "Trigger" Tregoning as they discuss the wobbly rockets issue and the steps we're taking to improve it.

From Creative Director Nate Simpson:

I hope you enjoyed this chat! Since this conversation took place, David has been developing a tool that allows our team to compare multiple wobbly rocket remedies, including selective wobbliness for certain part categories, KSP1-style autostrut for the entire vehicle, and various flavors of packed vehicle physics. We are testing these now, with the goal of achieving a near-term improvement in vehicle rigidity while developing a more ambitious long-term fix that's performant at all scales. We'll share more information when we've arrived at a balanced solution.

We know you've waited a long time for a solution to this issue, and we're excited to be closing in on a resolution.



Curious as to what's to come? 👀


Note: Because of Steam's file constraints the GIF is in lower quality.





Keep up with all things Kerbal Space Program 🚀
KSP Forums
KSP Website
Facebook
Twitter
Instagram
Intercept Games Discord
KSP YouTube