Jump to content

Devnote Tuesday: Holidays != Vacation


Recommended Posts


Hello everyone!

Christmas came and went, and boy they were memorable in so many ways: from Ted being chained to his desk by Joe (Dr Turkey), to Bob (RoverDude) spending time working on robotics with his sons, to Andrea (Badie) heading out to Cancun, and to Nathanael (NathanKell) unfortunately spending Christmas Day in the hospital, taking care of a close relative who had fallen down the stairs and broke a leg.  

In general, the office has felt rather quiet this week: only the KSP developers remain in an office that is usually shared with people doing legal, accounting and other supporting services.

Felipe (HarvesteR) and Nathanael have tracked down and fixed one of the trickiest bugs to hit development in the history of KSP: in the development, whenever a ship crashed or even touched down gently the game would quite often crash completely, and this error even took down Unity with it. This meant that debugging the error became exceptionally frustrating, as every test would result in the development environment crashing.

Tracking down and fixing the bug took three days of constant experimenting , digging, ruling out causes, and restarting Unity. All this resulted in the suspicion that this was a Unity bug, and that we’d have work around a part of the game’s engine, but first the cause had to be isolated. Felipe created an isolated project to identify where the NaN errors were coming from and succeeded, though only if he included a small component of KSP’s own code.

As it turned out the cause of the problem was in the joints between parts, and how those interacted with a component called CollisionEnhancer which ensures parts can’t punch through terrain if they collide really fast with it. Neither side was directly responsible for the bug: the joints worked as usual, and CollisionEnhancer was also producing correct and stable results. The bug happened when, after a collision CollisionEnhancer would correct the position of parts that had punched through the terrain, causing the joints to exert the maximum amount of force they could, which as we were to find, was set to infinity. That then caused the vessel to get moved to infinity (because it was moved at infinity m/s by this infinite force), causing the entire simulation to break down in a cascade of invalid values.

The fix was fortunately simple: Felipe set the maximum force allowed for joints to a very high, but still finite value. This just goes to show that code which didn’t cause any problems in Unity 4 (the joints setup hadn’t changed) can cause unexpected bugs in Unity 5.

Dan (Danrosas) has created some very unique content for Kerbal Space Program:  the vines we released earlier this week feature a more “traditional”. Dan created old-school animations with paper, camera, pencils and the sort. The community feedback has been great: the gifts Vine has more than 25k loops already!

QA testing has started for the Unity 5 update, and Ted has been hard at work to prioritize the stream of issues that’s pouring in. Given the scope of the update we expected this, but it’s not very efficient when the developers have to go in and spend hours categorizing and prioritizing issues before they get to work, so we’ve handed that task off to Ted instead. His wishes to spend Christmas with his family had to take a back seat to KSP development (not really). Dave (TriggerAu) has completed the “Functional” test list which has been a great help in making sure we’re taking a proper look at every part of the game.

Speaking of workload, Joe (Dr Turkey) has been diving into the administrative side of a console release. The certification process is a long and labour intensive one. Did you know how many certification forms are too many forms? One. Now multiply that by a million. Times three, because every console manufacturer likes their own brand of forms to be filled out. We’re also trying to explain to PEGI that exploding Kerbals are not violent. As Kasper (KasperVld) put it earlier: violence comprises of an act and an intent to commit harm. Since exploding rockets (generally) aren’t the result of an intent to commit harm to the poor Kerbals we disagree with the violent label.

Bob (Roverdudeis currently finishing up a new mod (not stock!) on KSPTV - The ‘Malemute’ Rover - and finally got to do some test spins before working on it’s UV map and textures - so if you’re at all interested in KSP modding and modeling, be sure to take a peek at 8PM ET on Sundays! This week’s Squadcast has been moved to Wednesday 5PM ET because of New Year’s eve on Thursday.

We started these devnotes with Christmas, and we’ll end them with New Years: we wish you a happy 2016!

Link to comment
Share on other sites

Ha. I've never, not once, ever intentionally blown anything up in KSP. I've also never,  not once, ever experimented with just how far a kerbal bounces after landing on it's head.  This whole violence thing is an obvious tin-foil hat conspiracy.

Link to comment
Share on other sites

i THink the point with thos PEGI-organizations is, that they are responsible for what they rate the game.. so if they rate it TEEN, and some people would complain, THEY are responsible.

So they might want to rate every game for ADULT, cause it would cause less trouble for them... and they dont care about the market at all.

Link to comment
Share on other sites

35 minutes ago, SQUAD said:

to Nathanael (NathanKell) unfortunately spending Christmas Day in the hospital, taking care of a close relative who had fallen down the stairs and broke a leg.

Ugh not a good way of spending any time, less so a holiday. Sending virtual Kerbal engineers (and some struts!) to mend that wobbly leg.


37 minutes ago, SQUAD said:

only the KSP developers remain in an office that is usually shared with people doing legal, accounting and other supporting services.

I am not sure how to take this. Are you implying KSP development isn't legal? :sticktongue:


40 minutes ago, SQUAD said:

The fix was fortunately simple: Felipe set the maximum force allowed for joints to a very high, but still finite value.

Yay for bug squashing! But uhm, does Felipe want to be haunted to all infinity (ha!) by "no one should ever need more than 640YN of breaking force"?  :wink:





Link to comment
Share on other sites

The definition of "violence" is: Behavior involving physical force intended to hurt, damage, or kill someone or something.
The key word there is intended. The behavior of your rocket as it crashes is not intended to hurt, damage, or kill someone or something. (If it is, that's you, not SQUAD.)
Hang on... Where did the double paragraph spacing go?
1 hour ago, Errol said:

Why cant i find anything about this new mod rover is working except this mention of this "malemute"? Are there pics ANYWHERE!?

Try tuning in at 8PM ET on Sundays.

What the hell... My paragraph spacing is back now? What?

Edited by Hobbes Novakoff
Link to comment
Share on other sites

Hehe, that bug workaround sounds like a really funny story, and I'm just imagining this snippet of code somewhere:

Part.Joint.AddForce(10000000000000000) //_magic,_ don't change this unless YOU want to spend 3 days debugging it. -Felipe


Link to comment
Share on other sites

Ah, PEGI. The European equivalent of the American committee of videogame censorship known as the ESRB. Keeping the world's children safe by labeling KSP as "violent". It's fine if little Timmy and little Suzy see a Challenger disaster documentary on TV, but heaven help their little souls if they accidentally blow up some space frogs!

I wish you the best of luck.

Link to comment
Share on other sites



And in other news, PEGI is now classifying all games with Newtonian physics as violent, as things fall which could possibly cause a collision which has a remote chance that, if the thing has some sort of living thing in it, it could maybe hurt one of those things, which could just possibly kill one of those things.

This just in, all movies with living things are now rated R, because all living things are bound to die, and we just can't risk it.

We're getting another update from NASA which states that they will no longer be doing space exploration because it has an element of danger.  We cannot let little kids want to be an astronaut, because it's dangerous and could result in death.  Danger = death.  Death = violence.  Violence = space.

Breaking news:  All things involving...


...OK.  We get the point...

Link to comment
Share on other sites

Uh oh, at the risk of derailing the thread, the violent crime rate in the USA is half of what it was 20 years ago; a decidedly negative correlation between IRL violence and the amount of realistic gore and violence in video games out there. Of course, while correlation != causation, it's fun to pretend it is (as in, "we prescribe 65 days of Mortal Kombat and Soldier of Fortune gaming for Billy, who has been acting out at school lately.")


Seriously, KSP is incredibly benign. I've let my 4 year old niece play it with me and she squeals "OUTER BASE!"  (she means "space") with glee. Never once did I think an exploding rocket would scar her "fragile mind".

Link to comment
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.

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.


  • Create New...