KSP Weekly: Refactoring Kerbal

Welcome to KSP Weekly, everyone! This week was all about localization and its upcoming pre-release. The amount of effort and work hours that have been put into this project was nothing short of a gargantuan endeavour and our excitement is a testament of watching our efforts come into fruition. But we’re here to talk about everything Kerbal, so without further ado, let’s begin.



Everyone in QA has been incredibly busy checking and rechecking all of the strings that have been converted, as well as making sure the game still behaves as it should. There are so many different ways of playing KSP, and and an equal number of results. There’s even more ways to break KSP to add on top. The localization effort has highlighted this very well. Variations between platforms can mean that some characters don’t render in the same way as others. Screen space has been a big concern. Another special mention is due to the volunteers that have worked tirelessly through this.

For example, one of the most challenging things we had to deal with the localization process was that, originally, the code wasn’t optimized for localization and the logic of the game was intertwined with some explicit words in english. We had to deal with this and many lines of code required some tweaking to allow us to introduce new phrasings and characters, i.e., lots of work.

But the QA team went also through more general bug discovery, confirmation and testing of fixes this week,so you can expect quite a few bug fixes for the upcoming update (you may have learned about some of them if you have been following KSP Weekly in pasty editions).

On other regards, Blitworks is doing some good progress on the builds we’ve been receiving and testing for the past few weeks, they even added a circular menu for the controls that will make the console’s UI more user friendly. Renowned poet and tester, sal_vager, decided to write a verse to express his experience with the last build he tried:

PS4 My planes soar Kerbals on the Mun Saves compressed Stability test ✓ Having lots of fun

The development team has also been jam-packed with localization bug busting, too. For example, JPLrepo finished refactoring Biomes (did you know there are over 140 planet biomes in KSP and over 40 KSC biomes?), Celestial Bodies, Science System. The devs have had to do a lot of refactoring, this week included messages, PartModules and Contracts, too. Refactoring is the process of changing the code to separate UI display strings from strings used internally in functional code. This is what happens when a piece of software is developed without Localization and then Localization is retro-fitted at a later date.

Developers also did amendments to lots of UI screens and elements to make all the Russian and Spanish fit! As well as fixing some linux bugs, some KSPedia adjustments and the creation of an automated script in python to populate the language prefixes.

Finally we just want to remind you that the Localization Pre-release will take place on March 16th and that to celebrate that launch we are doing a cool contest with some of the best prizes we have given, yet. Learn more here.

That’s it for this week. Be sure to join us on our official forums, and don’t forget to follow us on Twitter and Facebook.

Happy launchings!