• 0.24 Update Update #2

    Work continues with Contracts, the weeks are starting to blur together as a continuous stream of work. As you all know by now, Chad is moving on to other projects.

    At this stage in the project, bringing in someone new as a straight up replacement isn't a possibility. The level of familiarity a developer gains after working for years on a project can only be gained by working, well, for years on a project. We have new people on the team as well, Hugo is doing some very good work, Rogelio is helping Dan with the animations, which frees him to take on some of the roles Chad used to do, and Nick, who modelled several of the parts in the ARM patch, is also working on other design jobs for things still some ways away. The plan then is not to replace, but to adapt to this new team structure.


    Not all is gloom and woe though. On the development side, we now have ahead of us what is unmistakably the last stretch for Contracts and Budgets on this update, so we shouldn’t be far now from a system which will obviously still need a lot of content added to it, sure, but should be able to handle just about any idea we can throw at it.


    http://i.imgur.com/KeV23LA.png


    To put this into perspective, I may have said this before, but I’m quite convinced now that the only existing system that is similar to the Contracts system in magnitude and robustness is PartModules. Now, consider that PartModules, while it made its first appearance in the 0.17 update with the LaunchClamps and got going in 0.18 with docking ports and all the other bits, the basic system itself actually entered development around the time of 0.15. About 6 months or more of development before it was even announced. it did turn out to be a system so important to the game, it was worthy of an entire talk to itself at the GDC.

    With Contracts, we are faced with a task that is similar in many ways. However, this time we are under very different circumstances. Most obviously, the game is now much, much larger than it was when the first Module-based parts were added, but perhaps not as immediately apparent, the level of quality expected of such a system today is orders of magnitude greater than what it was about a year and a half ago.

    This is by no means a bad thing. If the expectation of quality is ever rising, it means at the very least that we aren’t making the game worse.

    But therein also lies the main issue of recent times, and also the reason why we decided to push the 0.24 release back. If we had released Contracts as they were last week, back in the days of 0.17, it would have been pretty ok, and about on par with the rest of the game. However, because everything else is so much further developed, every new feature must be implemented, from scratch, up to the same levels of quality as the rest of the game, which is a lot of work to cram into a single update.

    The plan then was to split up the update into two smaller chunks: Contracts first, generate missions based on this progress-aware, semi-procedural framework, then create some placeholder contracts to make sure the thing worked. On the next update then, tie it together with budget management and add in some proper contracts.

    Of course, that plan didn’t quite work out. Not because of any technical problems, though, but because of a game design one. As I explained earlier on another article, there was no point to having contracts in before budgets, nor would have there been much use for budgets without contracts. The two systems, while technically separate, were one big gameplay mechanic.

    That was the focus of the first week or so of our ‘extended time’ with 0.24. We added enough of the budget functionality to make sure Contracts had a proper purpose and reason for being in the game, and that much I can say, has worked. Being required to purchase your vessels before you launch, and being rewarded for the things you achieve adds a whole new dimension to the game. Arguably, the missing link between a Space Exploration Sandbox and an actual Space Agency Game. There are other Career mechanics still left to add, of course, but nothing of this scale. With Contracts and Budgets in, Career Mode is now finally reaching a point in development where we can start to appreciate the entirety of what KSP will be.

    This not-so-distant point now, is what we set out to achieve after we declared KSP to be Sandbox-Complete, just as we finished up updates 0.19 and 0.20, and started in earnest to add Career oriented features. We are now looking, albeit still from a couple of updates away, at Scope Completion.

    If you weren’t around when we announced Scope Completion as our goal back then, let me recap: Scope-Complete means that every major gameplay system in the game is implemented, even if its content is limited. It means all the necessary support for the game’s content exists and can be expanded upon.

    I do need to make one thing very very clear: Reaching Scope Completion does not mean, by any means, that we’re done with the game, or even that the features we have are now finished and beyond improvement. Quite the opposite in fact. It means there are (or will be, as we’re not quite there yet) no more base systems left to do, and from there on, the focus shifts to improvements, optimization, and content.

    Of course, we have to to make sure we add enough content to show our new systems in function (imagine building yourself a top-notch gaming PC and having no games to play), but for a lot of areas, the amount of content we have added so far is symbolic at best. In some cases, like Biomes, it's actually the minimum needed to make sure the system is able to function, and scale as more content is added onto it later.


    This is how we’ve developed KSP from the start. Always focused on what I call the ‘area of least development’. Whichever part of the game is the least close to completion, or furthest behind in comparison to others, is the area to focus next.

    Working with minimal content during development isn't a bad thing for developers. I can't count how many times I've dreaded the prospect of having to go through all the 170+ parts and their configs, to make some tweak or another. Having less parts in the game would have certainly made life easier for us on many a situation... It would also have made for a much less interesting game. This, as with so many other things, is something we have to maintain in balance.

    Walking this line is not an easy thing to do. It's very easy to get tempted to follow some feature or another all the way through, rushing through it on that surge of ideas that pop up as you work on it. Other times, an opportunity may present itself which cannot be delayed (like a very recent one featuring asteroids, you may remember it). On yet other times, you feel the urge to just start chucking in everything that is missing, in the crudest way possible.. I don't have to explain why that last one is a bad idea...

    Naturally then, we have taken a few side steps along the way, adding features of opportunity here and there as they presented themselves, or killing off some annoying bug that had just pestered everyone for too long. For extremely large projects, like Multiplayer, we’re working on it in the background from several months in advance, so by the time we are ready to start focusing every effort on it, we won’t be starting from scratch. Sometimes it's worth it to leave the path to pursue something unique and interesting, other times however, we have to force ourselves to not work on that thing we've been itching to do for so long now, but won't get the game any closer to completion.

    In any case, the bottom line is that ever since 0.19-0.20 were released, our main goal has been to reach Scope Completion: Not finishing up what we started, but starting what still doesn’t exist.

    I do have to say this very clearly: Releasing 0.24 does not mark Scope-Completion. There will be at least one, possibly more updates still before that. However, after 3.5 years of work, a couple more updates is really not such a long way to go.

    We're getting there. Perhaps not as quickly as we would like, but we are getting where we want to be.

    Cheers
    Comments 103 Comments
    1. Daniel345's Avatar
      Daniel345 -
      My God that is awsome.
      The amount of effort put into this...amusing...
    1. Neywiny's Avatar
      Neywiny -
      I was wondering maybe HarvesteR if you know about the possibility that 3d modellers like me could get a program from you guys on a basic .blend+texture to ksp part program, either as a small bit of the launcher or its own program since what I've seen it's quite complicated to get a cube imported to ksp with unity which I know an extremely limited amount in. Just wondering.
    1. Fobok's Avatar
      Fobok -
      Awesome update, thank you!
    1. kiwiak's Avatar
      kiwiak -
      How about some explanation about contracts and mission controll, huh?

      What these gauges and numbers on top of screen do?
    1. 5thHorseman's Avatar
      5thHorseman -
      Well written, HarvesteR, and a very interesting read. Can't wait to play the next iteration of your game!
    1. ArmchairGravy's Avatar
      ArmchairGravy -
      Thanks for sharing, Harvester. The love the dev team has for this game is self-evident. Keep that passion!
    1. TranquilTempest's Avatar
      TranquilTempest -
      Quote Originally Posted by kiwiak View Post
      How about some explanation about contracts and mission controll, huh?

      What these gauges and numbers on top of screen do?
      Looks like money, reputation, and science top middle. Contracts and maybe messages on the top right.
    1. OtherDalfite's Avatar
      OtherDalfite -
      So no new atmosphere, resources, or anything? How sad to see a game as rare and special as KSP cut short and butchered out of what it could have been. Rest in peace, the Kerbal Space Program that could have been.
    1. HarvesteR's Avatar
      HarvesteR -
      Quote Originally Posted by TranquilTempest View Post
      Looks like money, reputation, and science top middle. Contracts and maybe messages on the top right.
      Yep, exactly right.

      Cheers
    1. Androsynth's Avatar
      Androsynth -
      Quote Originally Posted by OtherDalfite View Post
      So no new atmosphere, resources, or anything? How sad to see a game as rare and special as KSP cut short and butchered out of what it could have been. Rest in peace, the Kerbal Space Program that could have been.
      Do you have any idea how entitled you sound right now? This is already turning out to be one of the most feature-rich games released in recent history, it's completely unique, and it's been done on an absolute shoestring budget with one man starting from nothing. Show some respect.
    1. jjwb22101's Avatar
      jjwb22101 -
      This is looking great! Thanks for the update HarvesteR! Also, does this mean we finally have a use for the mission control building?
    1. Endersmens's Avatar
      Endersmens -
      Quote Originally Posted by OtherDalfite View Post
      So no new atmosphere, resources, or anything? How sad to see a game as rare and special as KSP cut short and butchered out of what it could have been. Rest in peace, the Kerbal Space Program that could have been.
      Wow....did you read the blog at all? He literally just said they are no where near completion of the game, they are still adding new features to the game before expanding on existing features. We have an atmosphere. We dont have contracts. Get my point? They will get to the Atmosphere later. For now, they are adding base gameplay features. Kerbal Space Program is very very far from RIP my friend, and It is by no means the game that could have. It is definitly the game that can, and is.
    1. freedomispopular's Avatar
      freedomispopular -
      Everybody's reputation is going to immediately drop to yellow.
    1. Androsynth's Avatar
      Androsynth -
      Also if I remember correctly, the idea was tossed around that large feature sets like resource procurement could be done as an expansion, freely available to people who purchased KSP back when it was for sale "including all future content." So what I'm hearing is that the base game is nearing a stage where it's about to receive a ton more polish. This is the longest running and most productive Alpha I've ever heard of. And even after release, we may still have more content to look forward to with expansions. This game is morphing into everything I ever could have hoped! Thanks, team.
    1. freedomispopular's Avatar
      freedomispopular -
      Quote Originally Posted by Endersmens View Post
      Wow....did you read the blog at all? He literally just said they are no where near completion of the game, they are still adding new features to the game before expanding on existing features. We have an atmosphere. We dont have contracts. Get my point? They will get to the Atmosphere later. For now, they are adding base gameplay features. Kerbal Space Program is very very far from RIP my friend, and It is by no means the game that could have. It is definitly the game that can, and is.
      And even if they don't add that stuff, we've got one of the best modding communities around.
    1. Yodanadave's Avatar
      Yodanadave -
      Quote Originally Posted by OtherDalfite View Post
      So no new atmosphere, resources, or anything? How sad to see a game as rare and special as KSP cut short and butchered out of what it could have been. Rest in peace, the Kerbal Space Program that could have been.
      I do need to make one thing very very clear: Reaching Scope Completion does not mean, by any means, that we’re done with the game, or even that the features we have are now finished and beyond improvement. Quite the opposite in fact. It means from there on, the focus shifts to improvements, optimization, and content.
      You have obviously not read the article. Here, I have made it simpler for you, this much you should be able to read.
    1. Paul Kingtiger's Avatar
      Paul Kingtiger -
      I love more detailed dev blogs like this. Thanks HarvesteR
    1. phatm0n's Avatar
      phatm0n -
      Well, it looks like about ten other people ninja'd me on this post. Oh well.
    1. Xacktar's Avatar
      Xacktar -
      Thanks for keeping us informed! Looking forward to what you have in store for us!
    1. Grim187's Avatar
      Grim187 -
      I Greatly Appreciate all the hard work you and your team continue to put in to this awesome game.
      Thank you.