• Developer Articles


    KasperVld
    Hello everyone,
     
    It’s a very (very) old expression: “there is an end to everything, to good things as well”. It’s held true since it was first said, and it holds true for my time at Kerbal Space Program as well. Although I’ve always known that new things would come along, saying goodbye to a project I’m invested in as much as this one is never easy and never comes at an opportune moment.
     
    Just under four years ago I started posting on these forums, helping out in Support where I could, and creating some rudimentary support documentation. Not long after the request came to join the experimental testers, soon followed by one to become a forum moderator. Two years ago I was then given the chance to come on board officially at Squad professionally, working my way up from Lead Moderator - taking care of the forums only - to Community Lead and taking charge of many more aspects of the community as well as PR and marketing. There’s been a lot to learn along the way, and I’m especially proud of having been able to help guide the game through it’s official 1.0 launch.
     
    During this whole time the community never ceased to amaze me. Between forum posts, videos, livestreams, private messages, and any other avenue you can think of there was always something to brighten a day when working with you. I especially love reading about ways in which the game has touched people’s lives, and made them realize a previously undiscovered passion, or even inspired them to pursue a career or education in rocket science.
     
    Now it’s time for me to move on to new and exciting projects, but I could never forget the time spent here. I thoroughly enjoyed working with the developers, taking care of the community, and of course playing the game. I can only hope you manage to inspire Andrea and Daniele similar to how you inspired me. To go back to where this post started: there is an end to everything, to good things as well. Thank you all for being an amazing community, I hope you never stop being that. Feel free to poke me on the forums or on Twitter at any time, and you’ll definitely still see me visit a KSP livestream every now and then.
     
    Fly safe,
     
    Kasper

     
     
     
     
     
    KasperVld
    Hello everyone!
     
    Tomorrow Kerbal Space Program will launch on XBox One. We’re very excited to share our passion for the game, rockets and space with a lot of new players, and we hope that many of you will not only enjoy Kerbal Space Program, but that you will also be inspired to create, to share, and to explore the galaxy like so many PC players over the years.
     
    Kerbal Space Program will be available for $39.99 or your regional equivalent in the XBox One store as a digital download at the Midnight of your locale (Pacific Time in the United States). The game will be available in Argentina, Austria, Belgium, Brazil, Canada, Chile, Colombia, the Czech Republic, Denmark, Finland, France, Germany, Greece, Hong Kong SAR, Hungary, India, Israel, Italy, Mexico, The Netherlands, Norway, Poland, Portugal, the Republic of Ireland, Russia, Saudi Arabia, Singapore, Slovakia, South Africa, Spain, Sweden, Switzerland, Turkey, the United Arab Emirates, the United Kingdom, and the United States. We’re still looking into the possibility of releasing in more countries, though we still require age ratings and other administrative certifications to do so.
     
    We’ve received a lot (a lot!) of questions about the European release for PlayStation 4 as well. Rest assured we’re working on this. The PlayStation is not one single instance, but is divided into three regions: America, Europe and Japan. For a game to release in a certain region it needs to be certified there, regardless of previous certifications. There are further regional differences, but it’s not within the scope of this message to dive into that. We’re working to get the certification to release in Europe, and we thank everyone who has patiently followed the news on this topic. We’ll get KSP to your console as soon as possible, and we'll keep you updated during this process.
     
    Reaching this point would’ve been impossible without the help of Flying Tiger Entertainment, who were with us every step of the way leading up to this release.
     
    Fly safe (preferably).
     
     
     
     
    TriggerAu
    After the recent pre-release, 1.1 release and follow on patches we’ve finally had some time to look back at the overall bug tracker state and look for some areas for improvement.
    There are currently about a dozen tracker projects which cover the various test teams, platforms and backlogs, and while investigating the tickets that are currently open we found ourselves wondering if we should make some bigger changes at this point in time:
    Across all the trackers there are approx. 2700 open “bugs”; On top of these are 800 feedback and feature items; These tickets go back to the start of the tracker (back in 2012) and as a result a lot of them were most likely fixed, but not closed out in the trackers; Doin’ the Maths
    Now obviously we could start at #1 (“Docking nodes get misplaced on loading certain docked vessels”- it’s already closed, I checked) and work our way through one at a time until we have checked for duplicates, retested or confirmed and followed each one through, but simple mathematics tells us this might be a problem. If we assume it takes 20ish mins to work each of these that’s 112 eight hour days of test time, and that’s if every bug report is perfect and the steps followed don’t need any communication with the reporter to ask questions, clarify, etc.
    That would be split across multiple people in reality, but it doesn’t include triage of any new bugs, or involvement in development and testing that’s underway currently or needed in the future.
    The Painful Truth
    Hopefully many of you reading this come to the same conclusion we did: With the amount of resources we have available within the team, it’s simply not the best use of time to go through all these bugs in this way -- but we do know that there are some very good reports in there that still need to be fleshed out and worked on.
    So How Do We Tackle This?
    The idea we are working towards is to tackle this in a couple of stages:
    We are going to mark all open the bug reports prior to a yet to be determined date as requiring clarification; When this is done we need you guys and girls to eyeball these tickets for clarification and let us know if they are still a bug and still important; After a few weeks any bugs that have not been touched will be archived away – still there but removing a lot of noise for the producers and developers to see what is key; By making these changes we hope to get down to the more important issues that are outstanding and get them front and center in planning and resource allocation. We’ll also be similarly tweaking a number of test and internal projects to help sharpen our focus internally as well.
    What’s Next and What Can You Do?
    We do know that this may not be a universally appreciated idea, but we do feel it’s a lot better than some of the alternatives and does give us the chance to improve as well (it’s probably better than TriggerAu’s original “Slash and Burn Festival” idea too). 
    Before we kick this off we will provide more details about what sort of info and updates will best help us to get to grips on each bug, so please keep your [electronic] ears open.
    The involvement you all have with the tracker is massive, there are very few communities as involved or interested in the state and improvement of the games they play as this one and we do truly appreciate it. I think that together we can really clean out the ancient dust bunnies from the tracker and help clarify the key issues.
    Ted
    For the past four years, I’ve worked alongside the most talented, passionate and dauntingly intelligent people I’ve ever met, on a game like no other. It's come time though, to step back and focus on other things.

    Four years ago, I successfully applied for a forum moderator position on the forums and spent the next six months helping run every facet of it. Due to the development model that Kerbal Space Program followed, early access to updates was available to moderators for the purposes of testing and I became very interested in that. As the game grew, so did the demand for more rigorous and organised testing, and soon I worked with the developers to expand and invigorate our Experimental Testing Team. Not long after this, around the time we moved to Unity 4, we set up the QA Team and I volunteered for one of the QA positions.

    About five months later, I was employed as QA Lead and Director on KSP. I held this position through the rest of KSP’s early access and into release. It was an extremely rewarding time and one that presented a myriad of challenges that we overcame as a team.

    After version 1.0 released, I moved to the role of Technical Producer. In this role I assisted the developers with organising, documenting and communicating development, oversaw the QA and Experimental phases and ran many, many meetings and standups.
     
    Kerbal is a project like no other; it’s a game like no other, it has taught me innumerable lessons about software development, game design, QA... the list goes on. I’ve met tens, if not hundreds of absolutely amazing people who have done things that I could only hope to achieve. I’ve watched KSP affect people’s lives in ways I would never have imagined; inspiring them to pursue careers in aerospace and astronomy, enjoying time with their friends on a rainy day or just having fun.
     
    In the time since I started working on KSP, the community has grown exponentially through a massive amount of initiative and enthusiasm from you all. The feats you’ve accomplished in-game and within the community are awe-inspiring.
     
    Working on KSP has been a dream come true, it’s a game I have always loved to play and loved even more so to work on. Four years is a long time and after all this time, it’s time that I move on and let someone else take the reins. I couldn’t have asked for a better team to have worked with, or a better project to work on. I’ll truly miss the game, the development team and - perhaps most of all - the brilliant community. You’ve all changed my life for the better in countless ways and given me hope, not just for gaming communities, but for the brilliance of people.
     
    Thanks and all the best.
     

    KasperVld
    Hello everyone!
    We have big news to share with you today: as things stand Kerbal Space Program will be releasing on XBox One and Playstation 4 next month! After months of hard work we're finally ready to share the exciting adventures of our little green Kerbals with tens of millions more gamers around the world, hopefully inspiring them in the same way we've seen PC players affected by our game over the last four years.
     
    "Following the huge success Kerbal Space Program has had on PC with players and critics alike, we want to give console players the opportunity to play Kerbal Space Program in this redefined user experience. It has been a long road but finally we are confident of the quality of the game on consoles. An awesome control experience awaits you, as well as easier access to the wonderful world of space exploration, where even exploding is a lot of fun. We invite everyone to enjoy the excitement of flying rockets built by yourself, landing on planets and much more!"
    - Ezequiel Ayarza, CEO
     
    Of course, we'd like to thank the amazing people at Flying Tiger for going down this road with us, and getting the game ready for release. We're expecting to give you a definitive release date in the coming week(s). Until then, fly safe!
    KasperVld
    Hello everyone!
     
    In celebration of tomorrow's Asteroid Day events we have updated the Asteroid Day mod to be compatible with Kerbal Space Program version 1.1.3!
     
    Last year we partnered with the B612 Foundation to bring you the Asteroid Day mod which will add a space telelscope, a new experiment, and a unique contract.
    The Sentinel Infrared Telescope mimics the real world Sentinel mission being planned by the B612 Foundation, which plans to map 90% of the larger asteroids threatening Earth's orbit sometime between 2018 and 2024. Due to sun glare it is difficult for telescopes on Earth to observe objects passing on the planet's day side. Deploying a telescope into a solar orbit near Venus and facing it away from the Sun, back towards Earth's orbit, would cover that blind spot.
    Your mission will be to recreate this mission profile in Kerbal Space Program, deploying a telescope around Eve’s orbit. When deployed with an antenna and a power source between Eve and Kerbin, aligned to face away from the Sun, and activated, the telescope will begin to map the orbit of the outer planet in a 200° vision cone for passing asteroids.
    This pack also includes a long-term contract to map asteroids around Kerbin as well as other planets that match various specifications. It differs from other contracts in that it encourages the use of existing infrastructure. It does not require a new vessel for each contract, and each scan is faster with more telescopes deployed.
    In addition to the Asteroid Day mod we've also updated the Kerbin Cup official mod to be compatible with KSP 1.1.3!
     
     
     
     
     
    KasperVld
    Hello everyone!
     
    The 1.1.3 patch is now available! We’ve taken our time over the past couple of weeks to tackle as many issues as we could in this patch and the results speak for themselves: close to 100 fixes have been logged compared to the previous version of KSP, and we even found time to hide something small in the game that we’re sure a lot of long time fans will appreciate!
     
    Here's the complete changelog:
    =================================== v1.1.3 ============================================================ Editor: * Fixed game crashing during deletion of parts under certain conditions. * Fixed Gizmos buttons not properly highlighting after loading a craft. * Fixed Fuel tank Part Action Window sliders to dynamically update symmetry partners when adjusted in editor. * Fixed frozen parts showing up in front of the main vessel. * Fixed fairings being see-through when a part inside or behind is highlighted. * Fixed certain fairing configurations causing inputlocks. * Fixed interstage fairing panels not being properly deleted when an interstage is removed from the ship. * Fixed Abnormal lighting and contrast. * Fixed Re-rooting and attaching frozen parts causing improper part selection. * Fixed an exception in FXModuleAnimateThrottle when in the editor. * Fixed inputlock preventing pressing [Delete] key from deleting a part. * Subassemblies can now be used as the start of a craft (fixes editor being non-responsive). * CoM indicator now accounts for mass of physicsless parts added to parent. * "Ground Crew" option now toggles off all animated components of VAB/SPH. Fixes increased CPU Load and Temp. * "Place" gizmo now provides onscreen message in editor to be consistent with other gizmos. Orbit: * Fixed Circular Orbit Ap/Pe jump on exiting timewarp. * Fixed on-rails SoI transition message to properly report both SoIs. * Greatly reduce Apoapsis/Periapsis changing with no input, with thanks to ferram4 and eggrobin. option is toggleable in Settings->Gameplay and tunable in Physics.cfg. * Lower the thresholds for floating origin shift and krakensbane when above the inverse rotation threshold, and use doubles when recomputing velocity during change (and do so immediately rather than via PhysxX). * GetEccentricAnomaly now correctly returns negative eccentric (hyperbolic) anomaly values when the true anomaly is before the hyperbola's periapsis, and should be more numerically stable. * GetEccentricAnomaly no longer spams E is NaN. * Conic patch creation is a little more efficient. * Ignore G spike on the frame where SoIs switch. * Orbit reported position will no longer be a frame ahead of velocity. Misc. Fixes: * [KSPedia] Fixed Bug with KSPedia asset bundle Dependancies. * Fixed symmetric part stage icons not expanding in stage manager. * Fixed Quicksave filename accessibility. * Fixed Multiple core heat producers not being properly cooled by radiator panels. * Fixed NRE when trying to overwrite or cancel out of save folder overwrite dialog. * Fixed E is NaN! tA: (pi) spam with some generated contracts. * Fixed Flags no longer displaying properly in the Tracking Station Info Box.. * Fixed Flag transparency issues in editor. * Fixed Science lab spamming the log with "Updating" warnings whenever right-click menu is open. * Fixed funds penalties not being applied when Hiring Kerbals. * Fixed being unable to rename vessels via Knowledge Base. * Fixed NRE in ModuleGrappleNode.Release when parent is null. * Fixed UI_ChooseOption - onFieldChanged being called even when the field value hasn't changed. * Fixed Body lift missing when loading the Physics.cfg file. * Fixed Parts Tooltip window location being misplaced when changing UI scale. * Fixed issue with the sea level pressure display in the Knowledge Base. * Fixed an exception in PartModule OnLoad and OnStart causing vessel load failure. * Fixed a NaN in FlightIntegrator atmospheric thermo. * Fixed issue in Moment of Inertia calculations. * Fixed Rocket Exhaust FX not being moved by FloatingOrigin/Krakensbane when emitters are disabled. * Fixed missing parachute deployment sound. * Fixed VesselModules not being properly destroyed when a vessel object is destroyed. * Fixed unit tests from main menu causing every test to be run 4 times. * Fixed having an abstract UnitTest type causing TestManager to throw an exception. * Fixed regression that was causing global gravity to be non-zero, which should help with phantom drifting, especially with wheels. * Fixed a logical issue causing crew rotation objectives to be much rarer than intended on station and outpost contracts. * Fixed staging requiring two activation's when resuming in flight mode. * Fixed navigation waypoint getting stuck if a survey is killed in the middle of the flight scene. * Fixed Waypoint Markers not showing on Navball in IVA view. * Fixed potential error from generating if attempting to IVA an EVA kerbal that has just been loaded outside of a vessel. * Fixed RCS TorqueProvider implementation to take thrust limiting and alternate precision mode into account. * Fixed an issue where the NBS dialog was not resetting its coordinates properly. * Fixed reported typos and grammatical issues in various areas of the game. * Fixed ITargetable FlightCoMTracker.GetVessel always returning null. * Fixed Asteroids all spawning with a mass of 150t, regardless of class. * Fixed race condition with map filters causing asteroids to be invisible in new games until they were modified. * Fixed asteroids sometimes appearing to be pitch black while being seemingly immune to light when rotated at certain angles. * Adjusted science data collection range of Mk1 cabin to match other science options. * Kerbals can no longer "Take surface sample" while in command seat. * Fairing base purchase and entry costs adjusted to vary by size. * Part Action Window for symmetric parts no longer needs modkey to open when a sibling window is open. Misc. Tweaks: * [Modding] Additional access to fields in Mission Control. * [EVA, Gameplay] R&D upgrade text adjusted. * Added onVesselCrewWasModified, which consolidates many events in which crew changes on a specific vessel. Use this to fix a few issues with crew rotation objectives. * Added ITargetable.GetActiveTargetable, which allows us to specify if a target should be allowed on something that is part of the active vessel. * Added AeroFXIgnore layer so some parts (Gigantor e.g.) can have parts of their model ignored by AeroFX. Fixes an issue with odd Aero FX streamers. * Added "EVA" layer, added it to various cameras, physics casts, lights, and collision matrices to behave exactly like normal parts, except suspension raycasts ignore it entirely. Prevents violent interactions when kerbals touch wheels. * Added alwaysRecomputeLift to ModuleControlSurface so it can be set to not ignore slight actuation. * Added wheel weight stress and slip stress multipliers to game settings, allowing players that do not want these stresses to disable them globally. * Added onCommandSeatInteraction GameEvent, and deployableSeated to science experiments. Use these to disable scooping up surface samples when seated. * Added Felipe to crew name generation. * Satellite contract orbit generation made much more modular and maintainable, allowing us to validate generated orbits now. If an orbit parameter becomes corrupt through save manipulation or other means, that parameter can be regenerated without affecting the rest of the orbit. * Clarify R&D facility upgrade text to make it clear that Kerbin is still fair game for surface samples without the astronaut complex upgrades. * Crew Transfer more moddable. * Game is now paused going to MissionControl, AstronautComplex, Admin, R&D and unpaused when closing them. * Renamed Telus ladder to Kelus Ladder to avoid naming conflicts. * Improvements to flag rendering in KB. * Improvements in Tutorial input locks and Error checking * Adjustments to the Repair/Downgrade costs of the Facilities * Changed "Cancel warp" to use forward slash instead of Esc. * When repaired, wheels become temporarily immune to weight and slip stresses, slowly rising back to normal over a period of between 30 to 90 seconds. * Reduction in the creation of Garbage Objects in Flight scene. * Reduction in the creation of Garbage Objects in Space Center. * Optimize Part.GetConnectedResources and Vessel.GetActiveResources for speed and to not create garbage. * Dramatically improve resolution of asteroid textures, while simultaneously improving their shader performance by 400%. New shader can have very subtle desaturated brown/red hues sometimes.  
    danRosas
    It’s been more than 4 years since I embarked on the adventure of animating Kerbals. I got to work with amazingly talented people, and can’t measure the tons of experience I was able to gain from them. I’m really grateful to have been part of Squad, and most important of the trust they weighted on me while having creative control over the animated characters. I feel the love of the community for the Kerbals and it really makes me happy to see all the fan work in the forums: drawings, illustrations, animations, all of it.
    It’s time for me to take a step forward and take care of one personal project, which involves being a student once more in pursuit of a postgraduate degree, and I need to be 100% focused on that path to make it happen.
    I always tell the guys here at the office I don’t like watching the old animations I’ve done, but you don’t realize how much you’ve learned until you look back. The very first animation I did with the Kerbals looked something like this:
     
     
    And the latest one looked something like...
     
     
    I hope you were all entertained by the Kerbals I was handled to animate and their misfortunes adventures, as much I was making them suffer happy. I’m pretty sure Kerbals will be around for a long period of time, they are really amazing characters to work with from an artistic point of view. For me, it was an amazing experience being able to shape the foundations of the Kerbals as animated characters.
     
    All the best, and thank you for being such an amazing community
     

    Dan
    @danrpaulsen
    HarvesteR
    Hi,
    There's no good way to ease into news like this, so here it is: I'm stepping down as Lead Developer of KSP.
    For the last five and a half years, I put all my work, my thoughts and my time into KSP. I've watched it grow from this little unassuming idea for a 2D game in which you'd put together rocket parts to see how high you could get, into a complete spaceflight simulator, a space agency tycoon, a planetarium of truly astronomical scale, a home for little green men and their space program, a Kerbal space program.
    KSP has become far more than the game I imagined half a decade ago. When we first set out to take on this project, I could not have expected anything even remotely close to what it ended up becoming. To say KSP surpassed my every expectation would be, at best, a colossal understatement.
    There was a time, years ago, when any single design decision of mine had the power to drastically change the direction of the project. There was the danger that by even moving ahead on development of one area instead of another, the entire feel of the game, the intent it carried, could be morphed into something else. There was a fine line we needed to stay on, lest we let the project slip and become something other than what we intended. That is no longer the case, and that's a very good thing. It means that conceptually, the game is complete.
    This isn't to say KSP's development is complete, however. Far from it. Plans for KSP reach far into the future, and there are enough ideas to keep us all going for years. The console versions are coming up, there are new updates in development, the list goes on. For myself, however, I desperately need to have something new, to create more than one game in my life.
    I need to make one thing perfectly clear: development on KSP will continue as always. No features, upgrades, bugfixes or anything of the sort are being discontinued because of my leaving.
    This I say with absolute confidence, because I have complete trust in every member of the KSP team, and I know they are fully capable of handling anything that comes their way.
    The KSP team deserves more praise than I can give them. This is a band of outstanding people, all brilliant and excellent at what they do, never tiring, never doing anything less than their best. I'm very proud of what we have accomplished together. It's something I'll carry with me for ever. I also know beyond any question that KSP would not have become what it is without every single one of them. I am forever grateful and in awe of all the work they put in.
    And of course, I must give all my thanks to the founders at Squad, Ezequiel and Adrian, who took this wild leap of faith with me, putting their unconditional trust in me without ever requiring any failsafes or guarantees of success. We all know games are a notoriously risky proposition in the best of times, and they nonetheless extended their full support to me, at a time when none could tell what lay ahead.
    Lastly, but most certainly not least, I have to thank every single one of you, the community, our players, kerbalnauts, space enthusiasts, reckless rocket engineers, our friends. All of you, who like us, believed in our weird little game and supported us throughout the years with your ever-inspired ideas, your unparalleled willingness to help, your relentless honesty and your unfailing loyalty. I cannot thank you enough for all of it, and I can only hope I am so lucky to see you again in whatever comes next.
    This isn’t goodbye. It’s just farewell for now. In the meantime, however, I hope you all enjoy playing KSP as much as I enjoyed being part of its making.
     
    Signing off,
    Felipe Falanghe, aka HarvesteR
     
     
    Please post comments in this forum topic.
    KasperVld
    Hello everyone!
      We noticed a number of issues persisted through the 1.1.1 patch earlier this week. We’re releasing patch 1.1.2 to address these issues before we head off to a long overdue vacation for the next couple of weeks. Patch 1.1.2 addresses issues with the user interface and landing legs, amongst others.
      Here's the complete changelog:
    =================================== v1.1.2 ============================================================ * Fixed an issue with triggers and convexity in loading models. * Fixed exception in the Stage Only mode of Vessel Resources panel. * Fixed for LT-1 and LT-2 landing legs causing a physics jerk when retracting. * Fixed an issue where some vessels might explode on go to pad (introduced in 1.1.1). * Fixed an issue with PQS shader accessibility. * Optimized moment of inertia calculations and some matrix operations. * Fixed an issue with an offset in the small landing gear part. * Optimized drag calculations. * Made wheel autostrutting more configurable. * Fixed some display issues in KSPedia. * Fixed an issue in FlightLogger regarding reverting / loading saves. * Increased brake torque tweakable's upper limit to 200%. * Added editor tweakables for spring and damper strength for suspension. * Removed non-working "disable suspension" tweakable. * Fixed issue with popup dialogs sharing the same title which broke game loading when loading multiple vessels all lacking parts. * Removed unneeded image effects on UI camera for increased performance. * Fixed issue where IVA field of view changes applied to flight camera on exiting IVA. * Remove some garbage creation in Part.Update. * Fixed an issue where Kerbals on EVA rescue contracts weren't fully destroyed if the contract was not done. Added a check to clear any 'empty' EVA'd Kerbal vessels in existing saves. * Fixed an issue where Kerbals were able to be renamed through KB.