Sign in to follow this  
SQUAD

Devnote Tuesday: Compiling, Staging and Rocket Science!

Recommended Posts

<figure data-orig-width="480" data-orig-height="92" class="tmblr-full">tumblr_inline_nuqj6vmgB61rr2wit_540.jpg</figure>Hello everyone!

This has been a week with a lot of work and little to show for it. Most of that work was invested in improving the build times of the code. Most of you will be familiar with basic code that’s often in an ‘if (condition) then action’ format. While this code can be read perfectly by humans, it’s not very efficient for a computer, and so to turn this code into a program it is compiled into an executable file that consists of a lot of ones and zeros. The game is compiled a few dozens of times every day amongst the developers, which takes a little more than a minute every time. You can imagine that although this is a short wait, it quickly adds up. If we can reduce the compile time then the developers can work a lot more efficiently.

Felipe (Harvester) has been working on this, but the tool he’s writing to save him time is taking a lot of time to be completed, but it’s an investment in the future. For now, we’ve found that overclocking the CPU also has a significant impact on the compile times, because the compiling process is single-threaded. Felipe even bought a new processor to help things along: an i7 4790K, clocked at 4GHz.

Slowing development down even further was the sudden release of Unity 5.2 last week, which holds some interesting upgrades to the user interface system: the rendering of the user interface is now done in parallel with scene geometry on a separate thread, which should mean yet more increases in performance for KSP. Of course, no update will happen without a few small issues, and sure enough the update to Unity 5.2 broke some user interface elements, so we had to adjust some code on various levels to fix them again. It took some time, but now everything is working again, and we’re continuing development of 1.1 on Unity 5.2.

Somewhere in a dark and no doubt rainy corner of the United Kingdom Mike (Mu) has been working on improving the game experience for beginners and more advanced players alike. He’s been developing a framework system codenamed ‘KSPedia’ (®2015, Mike’s friend Josh) which will be able to developer a much improved and extended help system in Kerbal Space Program. The framework will also be open to modders so that mods can take full advantage of it. Modders will be able to add pages consisting of any native Unity user interface system via AssetBundles. This all means that the system is versatile enough to include a wide range of content such as animations and movies.

One area the KSPedia will focus on is the non-obvious keybindings in the game. Many people discover them quite late or not at all. Think of things such as Alt+Right Click to transfer fuel, or pressing F while using the offset tool to toggle absolute and relative position.

Jim (Romfarer) has been getting stuck in the staging interface even more this week, spending a lot of time making sure the code that splits and merges staging symmetry groups is working perfectly. Splitting and merging staging symmetry happens when you change the default staging list, for example by decoupling two radial decouplers in a symmetry group of six. This often happens when people set up asparagus staging. He’s also fixed a few visual bugs in the staging interface.

Last month we asked the community to apply for positions on the experimental team, and we got more than we bargained for! In total Ted had to sift through over 380 applications. Unfortunately we didn’t have enough positions even to accept all the excellent applications that remained after a first selection, and only 9% of the applicants were accepted. Everyone who’s been accepted will have received an email by now. If you weren’t accepted into the experimental test team we’d still like to thank you for applying, and know that it wasn’t necessarily due to your application being sub-par, if only we’d had more positions open.

Excitement around the office last week when we were contacted by the CutOut Fest, most likely the largest animation event in Mexico this year, that they’d like to showcase the 1.0 launch trailer. Animators from all around the world will be present and Dan (DanRosas) was rightfully extremely proud that his animations were selected to be shown.

On the production side of development Max (Maxmaps) was mostly stuck in meetings regarding the design of 1.1 and coordinating the Unity 5.2 update. In the little time that remained he’s been mostly busy taking care of streamlining the accounting and invoicing process.

On the community end Kasper (KasperVld) and Andrea (Badie) have been busy preparing the media group applications that will launch later this week, probably tomorrow. The applications will target YouTubers with between 500 to 10,000 subscribers with at least 250 views of their latest Kerbal Space Program videos, and Twitch streamers with between 500 and 2500 followers who have a concurrent viewership of at least 50 viewers. We’ll be looking for content of exceptional quality for this category of channels. Channels with more than 10,000 subscribers (YouTube) or 2500 followers (Twitch) can contact KasperVld directly.

We’ve also launched a new community art contest last week, in which we ask you to design a fantasy box-art for KSP. This can take the form of any physical medium on which KSP could be distributed, such as DVD’s USB drives or even floppy disks. Definitely check out the contest on our forum.

We’ve also seen the arrival of a new streamer on KSPTV: Oaktree42 will be streaming weekly on Thursdays at 11AM ET, or 15:00 UTC. It’s very likely that another streamer will be joining the channel, but we’ll keep his name under wraps until everything is final.

Finally, we’d like to point your attention to the ESA moon challenge. There is a famous xkcd comic titled “six words [you never say at NASA]â€Â, which are “it works in Kerbal Space Programâ€Â. Well, as it turns out those words can now be heard in the hallways of ESA! The ESA Moon Challenge asks students to design a mission scenario and operational concept for their HERACLES study. Kerbal Space Program is suggested as a visualization tool for these scenarios, and we’ll be supporting the participating teams if required. Check out the ESA moon challenge Facebook page for more information.

That wraps up the devnotes for this week, don’t forget to leave your questions on our forums, Facebook page or on the subreddit. And don’t forget to vote for KSP in the Unity Awards and the Golden Joystick Awards.

Relevant links

Edited by KasperVld
typo

Share this post


Link to post
Share on other sites

Nice to hear that you are working on Unity 5.2 now , any chanche to get some pics? I missed the squadcast thanks ;)

Share this post


Link to post
Share on other sites

So, transfer to Unity 5.2 is already done? Excellent news. That mysterious Youtuber...is it Kurtjmac? Please say it's Kurt! :D

Share this post


Link to post
Share on other sites

W00t! So, does this mean 1.1 update and Unity 5.x are still separate entities or are they one and the same? Really looking forward to performance improvements. Runs great when stock, but once you start adding lots of mods, things get kludgy and slow!

Share this post


Link to post
Share on other sites
Nice to hear that you are working on Unity 5.2 now , any chanche to get some pics? I missed the squadcast thanks ;)

There was only one picture on Squadcast, you can find it in this thread :)

W00t! So, does this mean 1.1 update and Unity 5.x are still separate entities or are they one and the same?

That's something we're weighing the pros and cons on. More news as it develops :)

Edited by KasperVld

Share this post


Link to post
Share on other sites

Yay, Unity 5.2! Will be worth the wait I guess, so good to know it will be included.

And HarvesteR, if you are reading this, I feel you with the build times! Our dev team is currently fiddling with their build and deployment process and tools. That takes time, but it is time well spent. Gratz on the new CPU though :D

Share this post


Link to post
Share on other sites

I feel like the last 3 or 4 devnotes have been saying the exact same thing with the overriding theme being "This is going to take longer than originally planned".

Not that I care, I am firmly addicted to World of Warships while I wait for 1.1 :P Take all the time you need.

As for the new streamers... I would highly recommend implementing this suggestion:

http://forum.kerbalspaceprogram.com/threads/133492-Twitch-featured-streamer-filter

Only because its a little weird logging in and seeing all the featured streamers playing anything but KSP...

Cheers and godspeed with the update.

Share this post


Link to post
Share on other sites

Wow, not a lot to show? There was a lot of good info in that! :D

Unity 5.2 makes me happy. Thanks for jumping on it guys. :)

KSPedia sounds really good. I'm assuming it's going to be a Wikipedia for KSP? Maybe in game?

I also like all the work that the devs have been doing with the code, it sounds more and more like the next update will bring some much wanted and needed optimizations. Can't wait! :D

Share this post


Link to post
Share on other sites
The game is compiled a few dozens of times every day amongst the developers, which takes a little more than a minute every time. You can imagine that although this is a short wait, it quickly adds up. If we can reduce the compile time then the developers can work a lot more efficiently.

Felipe (Harvester) has been working on this, but the tool he’s writing to save him time is taking a lot of time to be completed...

is_it_worth_the_time.png

Did he do the math?

Symmetry fixes sound good. Much needed - especially the ones that bork your entire ship and make it stick to the cursor.

Share this post


Link to post
Share on other sites

Did he do the math?

A few dozen times a day, 1 minute each, that's basically 8 weeks right there, but that's 8 weeks of non-stop time, 24 hours a day. I think we're well within the "worth it" range!

Share this post


Link to post
Share on other sites

Yay, Devnotes! Any idea when 1.1 will be ready? I need time to explore all planets, before I restart my career!

Share this post


Link to post
Share on other sites
Overclocking a production system? D: Pony up and buy HarvesteR a proper Xeon workstation.

No Xeon clocks a single core higher than 4Ghz, and you can't OC them.

Share this post


Link to post
Share on other sites
Yay, Devnotes! Any idea when 1.1 will be ready? I need time to explore all planets, before I restart my career!

No milestone post about 1.1 hitting QA yet (hinted at being close a few times), so you've got all the QA and Experimentals time at least

Share this post


Link to post
Share on other sites

Why should he need a Xeon if its single threaded? The i7 4790K offers the best single thread performance of all processors except for the i7 6700k...

Share this post


Link to post
Share on other sites

Somewhere in a dark and no doubt rainy corner of the United Kingdom...

Final preparations for the Rugby World Cup are being completed, a result of which may or may not distract Mu from his important KSP work. But everyone needs a break now and then.

This is also a quote for the location of an evil lair of any mad scientist, especially ones who wish to send rockets to the Mün for their evil purposes!

Great dev notes today. Thanks Badie.

Peace.

Share this post


Link to post
Share on other sites

Everybody knows that a non-interactive task that takes 1 minute to complete ends up wasting about 5 minutes of productive time, because the coder gets up to get a cup of coffee and a snack, browses a forum or two, or chats with his or her cube mate (which actually doubles the time wasted as it's two people).

Or, to XKCD it:

compiling.png

Share this post


Link to post
Share on other sites

Grats, Dan, on being selected for CutOut Fest! Well-deserved recognition. Your animations have always been one of my favorite parts of KSP. :)

Share this post


Link to post
Share on other sites
Everybody knows that a non-interactive task that takes 1 minute to complete ends up wasting about 5 minutes of productive time, because the coder gets up to get a cup of coffee and a snack, browses a forum or two, or chats with his or her cube mate (which actually doubles the time wasted as it's two people).

Or, to XKCD it:

https://imgs.xkcd.com/comics/compiling.png

Around here we call that Brainstorming!!!!

Share this post


Link to post
Share on other sites
This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this