Seems like horrible dev practice to place save data of any kind in the Windows registry lmao. I get that it’s designed for storing user data in some respects but the registry is an old and fickle solution to setting global variables important for communication between processes and applications.
If you’re storing data that’s only ever needed by your own application, especially if it isn’t OS-related, you shouldn’t mess with the registry. Not only does it not have the performance you’d expect for most circumstances, but the registry has a real performance and stability impact even when outside of your app.
What’s worse, imo, is that this data is difficult to access for making backups, utilising cloud synchronization, and cross compatibility of your app.
Unity is a lot more borked than I thought, but KSP devs should probably be careful with what data serialisation APIs they mess with.