Jump to content

Devnote Tuesdays: The "Building Buildings" Edition


SQUAD

Recommended Posts

<p><img src="https://31.media.tumblr.com/0ff9377afa68dc3ad3fe6844aaf1bd38/tumblr_inline_nejhm3CHr81rr2wit.jpg"/></p>

<p><strong>Felipe (HarvesteR)</strong><span><strong>:</strong> Last week I got the upgradeable facilities implementation up to a workable level, but that still had pending assets, so I moved back to work on the editor overhaul during the weekend. I had to take care of the most obvious issues which I had noted down here. No point in having the QA team spend time and effort in reporting bugs we already know are there, right? So these last few days I’ve been working pretty much around the clock here to get those things set up. </span></p>

<p><span>Some of these improvements are very old, very annoying bugs. For instance, symmetry in the SPH had a bad habit of getting the node placement wrong when you tried to chain bi-couplers to get multiple attachment points. This bug took a good deal of hunting down, but I managed to figure out the proper rotation maths to make the nodes stack-attach properly under mirror symmetry. I’ve also added KeyBindings to all the new editor functions, and while at it, several of the old ones too, if for some reason you disagree on X to toggle symmetry, for instance, you can now remap it. </span></p>

<p><span>Other tweaks were prompted by the new possibilities the gizmos allow. Have you wondered what would happen if you were to drag or rotate a part which had gizmos attached to or from it? Answer is, they would rigidly move with the parent part, in a most displeasing way. Now, this one took a lot of work, because the Struts and Fuel lines are </span><span>the</span><span> most arcane part types in the game. They were the only stock parts still working as an extension of the Part class, instead of using the much more elegant PartModule system. That was because those two parts couldn’t be done simply as modules. The Part class handles parts as attachable objects which you can use to construct a ship. The Fuel Lines and Struts however, being 2-point attachment parts, required a different way of working that essentially modified their way of </span><span>being a par</span><span>t. </span></p>

<p><span>We did have a plan for this however, which required a lot of time to implement, so it was never enough of a priority to be worth attempting, especially considering the potential for bugs. This time around though, I decided that we had endured those old wiry messy part classes for too long, and hunkered down to put the new implementation into practice. </span></p>

<p><span>I would say that it </span><span>almost </span><span>wasn’t worth the effort. So much so that if you had asked me if it was worth doing yesterday at half past midnight, I would have given you a bleary eyed look that would certainly not imply I was happy with the whole idea… But today I’ve managed to get the whole thing in order, and cleaning up the bugs now, I have to say, this is a massive improvement.</span></p>

<p><span>Struts and Fuel Lines no longer use their own Part extensions. Now, there is a single part extension called CompoundPart, and along with it, a new PartModule extension called CompoundPartModule. As you might imagine, CompoundPartModules require a CompoundPart type part to function. On top of these, we now have three CompoundPartModules: CModuleLinkedMesh, which takes care of keeping the visual model of the strut (or fuel line) connecting both ends of the part; CModuleFuelLine, which creates a fuel re-route when both sides are anchored, and CModuleStrut, which creates a joint between both ends. </span></p>

<p><span>This new approach means there are no longer large amounts of repeated, messy, unmaintainable code when working with those parts, and it means creating new types of parts that use 2-point attachments should be much, much simpler. This is something we’ve been wanting to do for ages, and I’m very glad I took the time to get it done - even if it meant another working weekend and some late nights. It was well worth doing.</span></p>

<p><span>On other notes, I’ve also fixed the editor Undo/Redo system. I’m not quite sure when it was broken, but it was hopelessly unserviceable here. I’ve gone through it to get it back in working order, and it’s now working pretty well again. As a consequence of the fix I implemented to fix the undos, I found we now had a system which allowed us to implement a fix/improvement that’s been widely requested. During construction, crew assignment is now completely persistent. Kerbals assigned in the crew tab will stay in their assigned seats as you add and remove parts, and even if you disconnect the part they’re in itself. They only return to the available list if you delete the part they’re in.</span></p>

<p><span>Anyhow, that’s been my week.</span></p>

<p><strong>Alex (aLeXmOrA): </strong><span>As some of you may know, a security vulnerability was announced on the SSL 3.0 Protocol called the â€ÂPOODLE†(Padding Oracle On Downgraded Legacy Encryption) attack and it affects all implementations of SSLv3. This vulnerability allows an attacker to read information encrypted with this version of the protocol in plain text using a man-in-the-middle attack. To mitigate POODLE attack, one approach is to disable SSLv3 support completely from both servers and clients sides. Since encryption is usually negotiated between clients and servers, it is an issue that involves both parties. I had already disabled SSLv3 from the KSP server and all the information send through it is protected, but we recommend you to disable it on your side (browsers), so it won’t affect you on servers that had not disabled the protocol yet. <a href="https://disablessl3.com/"><strong>HERE</strong></a> is some information and instructions on how to do it.</span></p>

<p><strong>Marco (Samssonart): </strong><span>This week was a busy one, I’ve been helping Chuchito wrap his head around the whole project in order to start implementing his multiplayer client into the game (chill out people, this still doesn’t mean multiplayer is coming out soon-ish). Apart from that QA for the building markers has officially started, after having some problems with the scene losing references to some game objects and scripts after having gone through git QA could start and that’s where I’m currently doing. I had to struggle a bit with Unity’s meta files in order to get git + Unity to behave.</span></p>

<p><strong>Jim (Romfarer)</strong><span><strong>:</strong> This week, i completed the main aspects of the GUI controllers for the new editor part tab system. This was a massive task, as it replaces the old part tabs. Instead of the old tabs, you now get filters which will list parts up in ways you never were able to do before. For example, you can now list parts up by which module or resource they contain, or both if you have a lot of parts and want to narrow it down. For every filtering you have chosen, there is now an option to sort parts (and subassemblies) by name, mass and cost in ascending or descending order.</span></p>

<p><span>If this was not enough you can also create your own custom categories and place parts into them just like you did with subassemblies before.</span></p>

<p><span><strong>Max (Maxmaps):</strong> .</span><span>I’ve been overseeing the development of this update’s contributor content. Tanuki Chau of KSPTV fame has been busy with the unique task of hand painting and naming the biomes all over the system, from Moho to Eeloo, so give her props if you see her! Other than that, just helping along in the push towards QA and the eventual release of 0.90. </span></p>

<p><strong>Ted (Ted):</strong><span> It’s full steam ahead and the QA Team and I have had a very busy week! We picked apart Kerbal Experience (KXP) in QA via some pretty keen-eyed playtesting. As I mentioned last week, it’s such a core component of career gameplay it needs to be as developed, intuitive and balanced as possible. Interestingly enough, the original trait effects were actually still in for QA so that we could compartmentalise the different systems that make up KXP. After providing in-depth feedback on the Roles/Traits system (whether a Kerbal is a Pilot, Engineer, etc.) we moved on to brainstorming what effects the different roles should have on gameplay and the scope these effects should have. This feedback was more comprehensive and is still pending a good ol’ chin wag on the development side.</span></p>

<p><span>For now, we’ve moved on to QAing Marco’s Building Tags branch. Meant for new players, it shows the RMB UI for the facilities via a vessel marker-like indicator. It’s going well so far on that, with the majority of the issues related to usability and UI consistency.</span></p>

<p><span>Next up in QA will be the Editor Overhaul containing features from Felipe and Jim. I’ll hopefully be telling you all about that next week!</span></p>

<p><span>Finally, TriggerAu who has been a QA Tester for a considerable amount of time has the brand new position of Assistant QA Manager within the QA Team. He’ll be further assisting myself, the QA Team and the Experimentals Team with documentation, planning and management.</span></p>

<p><span><strong>Anthony (Rowsdower):</strong> Why do I insist on going after Ted each week? Look at how much cool insight he has.. All I’ve got this week is a hearty congratulations to arc5555 for winning the KSPumpkin contest with his imaginative <a href=" x1e5a9xg3sxb9dpfg.jpg?size_id=7 "><strong>ENTRY</strong></a>. I’m wrapping up some final details on our next contest (happening this month!) and you’ll hear about it shortly. Oh, there are also <a href="http://imgur.com/a/RhDqJ#0"><strong>THESE</strong></a>.<br/></span></p>

<p><strong>Rogelio (Roger):</strong><span> I’ve been modeling some of the interiors of the upgradable buildings. It is funny to imagine the places where Kerbals work and live. First of all, I had to understand how the Kerbals are, what do they like to do, how they build and arrange things and how they live. Then I got to the modeling and texturing process. The art style is based on the Kerbal lifestyle. We’re almost done with the building production, but we’re making some slight modifications to make them look better. I’m looking forward to see how they work in-game. </span></p>

Link to comment
Share on other sites

<p><strong>Felipe (HarvesteR)</strong><span><strong>:</strong>I’ve also added KeyBindings to all the new editor functions, and while at it, several of the old ones too, if for some reason you disagree on X to toggle symmetry, for instance, you can now remap it. </span></p>

YAY! :) I was afraid I'd have to do all this new translating and stuff with clicking the mouse.

Link to comment
Share on other sites

Great dev notes, as usual guys! Great to see a lot of stuff is currently in QA right now! Personally, I'm really excited for the crew persistence. Always needing to go back and change my crew after every small change to your craft can get on your nerves after a while, am I right?

Link to comment
Share on other sites

Thank god the crew manifest is persistent now. It would have been horrible if different Kerbals had different traits and they would never stay where they were supposed to.

On another note, if one reads the KSP reviews on Steam, about a third* are complaints by people who perceive that Squad does nothing and just steals from modders. They should look at this editor overhaul, I can imagine how awful it must have been to fix (I'm not implying that the editor is awful, I'm just... yeah, there are some outstanding issues that show the code is messy, if functional).

*half are by people who couldn't get their ship to fly on the first few [dozen] tries and gave up, the rest are by people turned off by bugginess or broken games

Link to comment
Share on other sites

<p><img src="https://31.media.tumblr.com/0ff9377afa68dc3ad3fe6844aaf1bd38/tumblr_inline_nejhm3CHr81rr2wit.jpg"/></p>

<p><strong>Felipe (HarvesteR)</strong><span><strong>:</strong>

<p><span>This new approach means there are no longer large amounts of repeated, messy, unmaintainable code when working with those parts, and it means creating new types of parts that use 2-point attachments should be much, much simpler. This is something we’ve been wanting to do for ages, and I’m very glad I took the time to get it done - even if it meant another working weekend and some late nights. It was well worth doing.</span></p>

Forgive me if i'm wrong, but does that mean we will be able to potentially have parts 'complete a loop'? ie: connecting multiple decouplers to the same fuel tank stack so that we have added stability from multiple attachment points? If so, this makes huge rocket designs a fantastic possibility, as you can have something like this:

. / \

. / \

|<| |>|

| | | |

|<| |>|

| | | |

|<| |>|

| | | |

|<| |>|

| | | |

and that, to me, will be great!

Link to comment
Share on other sites

Felipe (HarvesteR):I’ve also added KeyBindings to all the new editor functions, and while at it, several of the old ones too, if for some reason you disagree on X to toggle symmetry, for instance, you can now remap it.

Awesome! Thank you. I too was worried the new gizmos were going to be mouse dependent, but being able to remap keys is just icing on the cake. Tasty, tasty, cake. /drools

Thanks for the detailed update too. Love reading about the technical development side of things.

Rogelio (Roger): ... The art style is based on the Kerbal lifestyle.

That phrase just tickles me. I'm imagining a big glossy lifestyle magazine for Kerbals now.

"17 ways of dealing with your copilot's obnoxious habits."

"How I kicked the Mystery Goo habit."

"RP-1. It's a go-juice and a dessert topping."

"Keplerian elements of the rich and famous."

Link to comment
Share on other sites

Forgive me if i'm wrong, but does that mean we will be able to potentially have parts 'complete a loop'? ie: connecting multiple decouplers to the same fuel tank stack so that we have added stability from multiple attachment points? If so, this makes huge rocket designs a fantastic possibility, as you can have something like this:

. / \

. / \

|<| |>|

| | | |

|<| |>|

| | | |

|<| |>|

| | | |

|<| |>|

| | | |

and that, to me, will be great!

I wNt that badly too, but I believe he is just referring to parts like struts (and fuel lines) that have, as he said, two attachment points-- they connect two parts together, and stretch because that is really the only way for them to be useful. Think of a tank that has no radially attachment points and is only stackable. The parts he is referring to are like that, but understandably more flexible.

Link to comment
Share on other sites

Wow, you all had one hell of a week! I'm glad to hear that you're making steady progress on all the new 0.90 features, and I'm especially glad that you're fixing all those old bugs!

Better ladder mobility (said by Maxmaps on reddit), improved struts and fuel lines, permanent crew setups, better SPH symmetry, key bindings... can't wait for them!

Since you're quite early in development and .90 is going to be such a huge update, I'm going to suggest integrating some features from Tweakable Everything, a mod that should have become stock a long time ago. I haven't installed it yet, but it would be a very nice addition for stock.

Oh, and thanks for implementing science reports on Sandbox! I (and a huge part of the community) had been waiting for that for ages! It got me by surprise, and it's a very welcome addition. I swear, you're a perfect example of what an indie Dev team should be. You keep your mindset and goals but allow the community to reach out and give you suggestions on the development of the game. :)

Link to comment
Share on other sites

I´ve spent my evening at a brilliant party with free food, free drinks, even a few celebrities ´ve been there... but what makes me grin stupidly like a child are these devnotes.

Really, if you are satisfied with your work, then I´m sure I will be more than happy with the results. :)

I didn´t even notice, that the undo-function was broken, but it´s definitely great, that you could fix various bugs. I´m spending a LOT of time in the editors, so those new features are very welcome.

The only thing I am missing is one tiny early screenshot of the new Mk 3 parts. Sry, but I am just very curious about the general layout.

Link to comment
Share on other sites

Kudos to HarvesteR for enduring all that in order to Do It Right. Here's hoping that investment does indeed pay off going forward.

And props also to Tanuki Chau, for giving the rest of the system biomes, which some of us have been waiting for for some time. (Yes, there's a mod for that, but this is stock and official.)

Link to comment
Share on other sites

This starts to sound better and better. Last year i had a feeling developement was slowing down, but now things start coming together it seems, not just behind the scenes but in tangible everyday features for the player. Editor overhaul is a huge part of this.

Link to comment
Share on other sites

Kudos to HarvesteR for enduring all that in order to Do It Right. Here's hoping that investment does indeed pay off going forward.

And props also to Tanuki Chau, for giving the rest of the system biomes, which some of us have been waiting for for some time. (Yes, there's a mod for that, but this is stock and official.)

GXxzD85.jpg

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.

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.

×
×
  • Create New...