Jump to content

Devnote Tuesdays: The KSPumpkin Edition


SQUAD

Recommended Posts

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

<p><strong>Felipe (HarvesteR)</strong><span><strong>:</strong> This week was a big one. To add the new gizmos to the editor, I had to delve into one of the most convoluted areas of KSP code, the editor logic. That part of the code is very sensitive to small changes, so poorly-planned tweaks to it usually end up creating a heap of bugs. </span></p>

<p><span>This time around though, I decided to put an end to it and take on a complete overhaul of the editor logic code. I undid the mess of switch statements and state logic we had, and replaced it completely by a proper finite state machine setup, using the same FSM system I wrote for the Kerbal EVAs for 0.16. The KerbalFSM system is generic and fully expandable, and allows us to have much more control over what is meant to happen and when. </span></p>

<p><span>Of course, this meant chucking out a lot of working editor code, but it was for the best. If we had left it as it was, we wouldn’t be able to add new features without increasing even more the complexity of that already critically complex blob of code. It took a lot of recoding, but I can now say it was definitely worth the effort.</span></p>

<p><span>There are now four construction modes when you are building a ship.</span></p>

<p><em>Place Mode:</em><span> This is the standard mode, where you click on parts to pick them up or attach or detach them from the ship. </span></p>

<p><em>Offset Mode: </em><span>In this mode, you can select parts from the ship, and on selecting, a translation gizmo will pop up, allowing you to slide the part freely, without detaching it. </span></p>

<p><em>Rotate Mode:</em><span> In this mode, you can rotate the selected parts using a rotation gizmo. This mode also works on unattached parts, and you can also switch to it while attaching too.</span></p>

<p><span><em>Root Mode:</em> </span><span>This mode is only available if you have an eligible set of parts selected. Activating root mode will allow you to select another part (from the children of the selected set) to attach by. It will reflow the hierarchy much like docking does, so the selected part becomes the new root of the hierarchy. This one is particularly useful for subassemblies and such.</span></p>

<p><span>The last few days were mostly devoted to ironing out issues with the new implementation, and improving the way the editor handles rotating parts and symmetry. It is now possible to switch between Radial and Mirror symmetry modes using the Y key (a UI button will follow shortly), both in the VAB and SPH. This is amazingly useful for building shuttles and hybrid type vessels. </span></p>

<p><span>I’ve also revised the attachment rotation maths, which could arguably be said to be the ugliest bit of code in the game at the moment. That impossible chunk of logic was tossed out, and a much more elegant system put in its place.</span></p>

<p><span>All in all, it’s been a fair amount of improvements to ship construction. Hopefully it should make building ships much more intuitive and fun<strong>.</strong></span></p>

<p><strong>Alex (aLeXmOrA): </strong><span>I’ve been checking server loads to make sure all of our sites are working right and doing database backups. Also, dealing with some Squad accounting things.</span></p>

<p><strong>Mike (Mu):</strong><span> Well, the experience system has come on in leaps and bounds. The back end is finished and has some nice little features which modders should enjoy. The Kerbal experience traits boost the ship/part they’re on and can have some very funky effects. Currently these include boosting thrust, reducing heat generation, increasing fuel efficiency and boosting science output. Obviously, the performance boosting effects have to be quite subtle to not make things too easy but will still provide a solid boost should you care for your Kerbals.</span></p>

<p><span><strong>Marco (Samssonart):</strong> </span><span>This time, I’m working on a little feature that’s meant more for newcomers to the game. Now that the vessel markers for landed and splashed vessels are in place, I’m creating a bit of a spin-off of these for the buildings on KSC. They will have the facility name a brief explanation of what can be done in there, so new players don’t feel so lost when starting a new game<em> *cough* and not looking at the tutorials first *cough*</em> and know exactly what to click to achieve what they expect.</span></p>

<p><strong>Daniel (danRosas)</strong><span><strong>:</strong> We are nearing the completion of the buildings. I can with certainty say that we are on 80%. We have a deadline that we must consider for implementation. That gives us room for changes, adjustments and polishing, in case those are needed.</span></p>

<p><strong>Jim (Romfarer)</strong><span><strong>:</strong> As i mentioned last week, I’m working on a new GUI which we are planning to replace the part tabs in the VAB and SPH. I’m not yet prepared to dish out all the details as I’m in the middle of implementing the logic for it atm. but you might be interested to hear what we want it to do. The plan is to have different ways to sort through parts to make it easier to find exactly what you want while at the same time preserve the old structure of the tabs as the first thing you see when you enter. The old part tabs will therefore be part of the first filtering category you see when entering these tabs are the subcategories of the “Sort by Function†filter. We have a list of other sorting methods which will be there in addition to this and the idea is to be able to select multiple groups of sorting methods to narrow down the part selection further, much in the same way the archives in R&D are organized.</span></p>

<p><span>In addition, the stretch goal of this new GUI is an option to make custom part categories where you can put all your favorite parts. If all goes to plan, you will be able to make as many custom categories and subcategories as you want. </span></p>

<p><span><strong>Max (Maxmaps):</strong> .</span><span>I’ve been organizing and looking over our liaisons with modders who are now collaborating with us (Shoutout to Porkjet and Arsonide). Other than that, following up with everyone else on the team regarding the progress of update 0.90, going over the necessary design points of the experience and trait systems, discussing the plethora of new biomes and starting to look into picking a name for the update. Mind you, Beta Than Ever is going to be hard to beat.</span></p>

<p><strong>Ted (Ted):</strong><span> Over the past week I’ve continued my work on refining and optimizing our use of the Bug Tracker. We’ve begun to use the Wiki feature of the redmine tracking system as a more organized and easier to use testing documentation repository. Hopefully it’ll make it easier for the teams involved in testing to communicate and work on KSP. Additionally, I’ve been doing some compatibility testing of the plugins and themes we use on the tracker with Redmine 2.5.2 to ensure that we can update to that version from our current one - without anything going awry. On another note, I’ve been researching Unity’s 4.5.5 update to explore how viable it is to update the project to it and get some early QA in. Finally I’ve been keeping up with the fantastic 0.26/0.90 feature set and ensuring that testing documentation on those features will be as ready as ever when the time comes.</span></p>

<p><span><strong id="docs-internal-guid-1cb4f53b-351c-f290-e711-3e14ba520116"><span>Anthony (Rowsdower):</span></strong> Listen up, everyone. It’s contest time! Halloween’s right around the corner and we’re in the mood to hand out a treat to one lucky person who’s in the spirit as much as we are. Embrace all things creepy crawly in our KSPumpkin Halloween contest.<br/></span></p>

<p><span>The rules are simple - show us how you celebrate Halloween with KSP. Show us your best pictures and videos of Halloween-inspired in-game crafts, your best Kerbal carved pumpkins, your KSP costumes, your spookiest stories and more. Use your imagination and show us your KSP Halloween spirit, no matter what form it takes. Post it up into this <a href="http://forum.kerbalspaceprogram.com/threads/97765-The-Official-KSPumpkin-Halloween-Contest-Thread"><strong>FORUM THREAD</strong></a> or on Twitter, using the hashtag #KSPumpkin.<br/></span></p>

<p><span>The best entries will be featured by us throughout the community and will be entered for a chance to win a mystery treat from our Cafe Press <a href="http://www.cafepress.com/kerbalspaceprogram"><strong>STORE</strong></a>.</span></p>

<p><span>Need inspiration? here’s a nice piece of pumpkin carving by the one and only Robbaz, by way of Sconfinato.</span></p>

<p><img src="https://31.media.tumblr.com/3f3d9b8eb6e44454ace8877b9df79c9c/tumblr_inline_ndtlidJzTS1rr2wit.png"/></p>

<p></p>

Link to comment
Share on other sites

Awesome news on the editors. I hope "I’ve also revised the attachment rotation maths, which could arguably be said to be the ugliest bit of code in the game at the moment. That impossible chunk of logic was tossed out, and a much more elegant system put in its place." means that we get less missing struts on copies and such :D

Link to comment
Share on other sites

Mike (Mu): Well, the experience system has come on in leaps and bounds. The back end is finished and has some nice little features which modders should enjoy. The Kerbal experience traits boost the ship/part they’re on and can have some very funky effects. Currently these include boosting thrust, reducing heat generation, increasing fuel efficiency and boosting science output. Obviously, the performance boosting effects have to be quite subtle to not make things too easy but will still provide a solid boost should you care for your Kerbals.

I completely disagree with changing part stats based on the pilot.

Link to comment
Share on other sites

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

<p><span>Of course, this meant chucking out a lot of working editor code, but it was for the best. If we had left it as it was, we wouldn’t be able to add new features without increasing even more the complexity of that already critically complex blob of code. It took a lot of recoding, but I can now say it was definitely worth the effort.</span></p>

Everybody, this is why you don't tweak and optimize your code while you're building it up (in Alpha). Any tweaking, fiddling, adding, removing, and agonizing that had been done up to this point is gone, now, and if they'd spent weeks of time fiddling that would have been weeks of waste.

Can't wait to see all the new editor functions, especially the filtering/sorting/grouping of parts and your take on stockifying SelectRoot.

<p><strong>Mike (Mu):</strong><span> Well, the experience system has come on in leaps and bounds. The back end is finished and has some nice little features which modders should enjoy. The Kerbal experience traits boost the ship/part they’re on and can have some very funky effects. Currently these include boosting thrust, reducing heat generation, increasing fuel efficiency and boosting science output. Obviously, the performance boosting effects have to be quite subtle to not make things too easy but will still provide a solid boost should you care for your Kerbals.</span></p>

I hope you're wearing your asbestos suit, because those were specifically stated by many as examples of things that should NOT be implemented.

Link to comment
Share on other sites

I hope you're wearing your asbestos suit, because those were specifically stated by many as examples of things that should NOT be implemented.

Walt's gonna need a HAZMAT suit for his HAZMAT suit to deal with these flames!

Seriously though, this is exactly what we all agreed shouldn't be implemented.

Link to comment
Share on other sites

All around, this sounds like an amazing update! :D

I'm just a little concerned about Kerbal experience boosting a spacecraft's physical performance. :huh:

I know, I know... it's just a game and I should really just try to relax.

But how would Jebediah's experience enable the same rocket to have better thrust or better fuel efficiency? It makes sense for RCS manuvers, but it's not like Neil Armstrong could make the Shuttle worthy of going to the Moon. In space, there's a serious limit to the impact a pilot can have on spacecraft performance. I'd really like to hear a plausible explanation for how a kerbal's experience could make the main thrusters more efficient.

Science boost is fine, maybe a tiny boost to RCS--but skills can't change your delta-v significantly. (More than about 1% for properly orienting the thrusters breaks my suspension of disbelief).

Edited by Vallius
Link to comment
Share on other sites

Why do the devs keep trying to implement things that change the way parts behave? Something similar was mentioned for contracts and the community reacted badly to that, what makes them think trying the same idea but packaging it with Kerbals would go down any better?

The rest sounds very neat though, and I hope the editor changes don't end up entirely mouse-driven. Widgets are nice but not everything needs to be fine tuned to that level when a quick 90 degree turn could be done easily with a hotkey tap. On that note, toggleable angle snap for the rotation widget would be neat too.

Link to comment
Share on other sites

I too am not overly keen on the kerbals exp reflected in the ships ability. More the type of science they can do/science payout they can gather etc. Maybe those less experienced kerbals wont be able to handle the deep space missions until they have a few munar and maybe duna missions under their belt. Well, thats how i sort of envisioned the exp system to work. Otherwise there will be a favourite few and the rest will languish!

really looking forward to the editor overhaul though.

Link to comment
Share on other sites

I'm super psyched at the new features Felipe is adding to the editor--it really is turning into exactly what I'd love, and what 3d programs have made me used to. However, I'm worried about the transition from the existing editor logic to the new code, since Kerbal EVAs are one of the least, or certainly least easily, moddable things in the game, in large part *because* the KerbalFSM is so hidden from modding. I very much worry the editor will go the same way.

And I certainly agree with what most people have been saying about how kerbals' skills should not affect the laws of physics, nor the portability of craft files from one person to another.

Link to comment
Share on other sites

I was hoping more for a "reaction time" sort of thing instead of engine thrust, isp, or science output. For example, if you were to press 'w', then it would take a second or two before the Kerbal turns the ship. The more experienced a Kerbal is, the faster the reaction time is.

Edited by Rthsom
Link to comment
Share on other sites

I completely disagree with changing part stats based on the pilot.

A very experienced Kerbal would know how to operate parts or ships more effectively, thereby improving its operation in the area of experience possessed.

Example: Driving more Efficiently increases Fuel Economy. Modifications to the air filter, tire pressure, rolling windows up, not using AC, driving at 50 - 55mph, using breaks as little as possible, etc can have a dramatic effect.

In addition to everything you do when you fly, Your little Kerbal is doing all those "things" because you kept him around.

Link to comment
Share on other sites

Yeah, I'm a bit concerned with the Kerbals changing the stats of the craft... I hope it's toggleable.

Maybe these things should be related ONLY to the Kerbals. Better RCS Skills for higher efficiency and fine control of the jetpack, perhaps? I really wouldn't touch anything that deals with TWR or Delta-V. It doesn't actually make sense from a realism standpoint, an authenticity standpoint, or even a logical sense standpoint. (Note that those are in order of least to greatest importance, btw.)

Maybe things like responsiveness of the craft, RCS Balancing, etc. MAYBE it would make sense for Kerbals with engineer-type traits to create a sort of toggleable boost effect, Like being able to have an EVA Kerbal go out and manually change the upgrade for a certain tradeoff in Thrust v. Efficiency; Then you could change it back by EVA as well.

"The Saturn V Rocket wasn't more efficient because Neil Armstrong was on board." -ShimmytheJJ, A few minutes ago on KSPTV. "... But perhaps it could if the engineer went out and modified the S-IVB's J-2 engine." -Me, Just now.

Link to comment
Share on other sites

I was hoping more for a "reaction time" sort of thing instead of engine thrust, isp, or science output. For example, if you were to press 'w', then it would take a second or two before the Kerbal turns the ship. The more experienced a Kerbal is, the faster the reaction time is.

Wouldn't that be simply boosting the performance of your Reaction Control System parts? :-p

Actually, I think that would be a great addition for the XP system.

Link to comment
Share on other sites

I was hoping more for a "reaction time" sort of thing instead of engine thrust, isp, or science output. For example, if you were to press 'w', then it would take a second or two before the Kerbal turns the ship. The more experienced a Kerbal is, the faster the reaction time is.

Please no. That would be SUPER annoying to us who time things closely. I'd explicitly have to waste time having some twit fly around for ages, before I could send him on *real* missions, and there is enough of a science grind as is, IMO. I don't need to pilot grind, too.

Link to comment
Share on other sites

Yeah, I'm a bit concerned with the Kerbals changing the stats of the craft... I hope it's toggleable.

Maybe these things should be related ONLY to the Kerbals. Better RCS Skills for higher efficiency and fine control of the jetpack, perhaps? I really wouldn't touch anything that deals with TWR or Delta-V. It doesn't actually make sense from a realism standpoint, an authenticity standpoint, or even a logical sense standpoint. (Note that those are in order of least to greatest importance, btw.)

Maybe things like responsiveness of the craft, RCS Balancing, etc. MAYBE it would make sense for Kerbals with engineer-type traits to create a sort of toggleable boost effect, Like being able to have an EVA Kerbal go out and manually change the upgrade for a certain tradeoff in Thrust v. Efficiency; Then you could change it back by EVA as well.

"The Saturn V Rocket wasn't more efficient because Neil Armstrong was on board." -ShimmytheJJ, A few minutes ago on KSPTV. "... But perhaps it could if the engineer went out and modified the S-IVB's J-2 engine." -Me, Just now.

This would be the way to do it, I like Gregrox's idea.

EDIT: And sorry for the double post. Had some issues.

Link to comment
Share on other sites

Please no. That would be SUPER annoying to us who time things closely. I'd explicitly have to waste time having some twit fly around for ages, before I could send him on *real* missions, and there is enough of a science grind as is, IMO. I don't need to pilot grind, too.

The reaction times can be random. For inexperienced Kerbals, it can be an average of 0.5 seconds, and on rare occasions it could be something crazy like 2 seconds.

Link to comment
Share on other sites

The changing the rocket stats ting is a bit iffy to me...

Maybe these things should be related ONLY to the Kerbals. Better RCS Skills for higher efficiency and fine control of the jetpack, perhaps? I really wouldn't touch anything that deals with TWR or Delta-V. It doesn't actually make sense from a realism standpoint, an authenticity standpoint, or even a logical sense standpoint. (Note that those are in order of least to greatest importance, btw.)

Maybe things like responsiveness of the craft, RCS Balancing, etc. MAYBE it would make sense for Kerbals with engineer-type traits to create a sort of toggleable boost effect, Like being able to have an EVA Kerbal go out and manually change the upgrade for a certain tradeoff in Thrust v. Efficiency; Then you could change it back by EVA as well.

"The Saturn V Rocket wasn't more efficient because Neil Armstrong was on board." -ShimmytheJJ, A few minutes ago on KSPTV. "... But perhaps it could if the engineer went out and modified the S-IVB's J-2 engine." -Me, Just now.

This.

While KSP doesn't need full realism, Kerbals changing these stats by simply being in the cockpit is starting to get a bit strange.

Edited by RocketPilot573
Link to comment
Share on other sites

So basically I propose they make it so that any modifications that effect Delta-V or TWR need to be active effects that the player has do activate, preferably using EVA Kerbals, rather than a passive effect for the whole vessel all the time. If EVA Kerbals are used, it would be a neat use for them.

Link to comment
Share on other sites

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

<span>This time around though, I decided to put an end to it and take on a complete overhaul of the editor logic code. I undid the mess of switch statements and state logic we had, and replaced it completely by a proper finite state machine setup, using the same FSM system I wrote for the Kerbal EVAs for 0.16. The KerbalFSM system is generic and fully expandable, and allows us to have much more control over what is meant to happen and when. </span>

As an electrical engineer (EE) I'm used to FSM in hardware (or firmware), but I didn't realize they were considered good practice (in certain situations) to use in software programming. There was one time when I was writing a program where I implemented a FSM because I couldn't think of a better way to do it, but I always thought is was the hack of a dumb EE attempting to the the job a proper software programmer.

<p><span><strong>Max (Maxmaps):</strong> </span><span>I’ve been organizing and looking over our liaisons with modders who are now collaborating with us (Shoutout to Porkjet and Arsonide). Other than that, following up with everyone else on the team regarding the progress of update 0.90, going over the necessary design points of the experience and trait systems, discussing the plethora of new biomes and starting to look into picking a name for the update. Mind you, Beta Than Ever is going to be hard to beat.</span></p>

I don't know, to paraphrase Cheech from Ghostbusters II, I like "Beta late than never!"

Of course, this would imply it's late, but to paraphrase yet another movie "A wizard is never late, nor is s/he early, s/he release builds precisely when s/he means to!"

Edited by VirtualCLD
Link to comment
Share on other sites

I like the idea floating around out there of requiring Kerbals with advanced experience onboard a vessel before more advanced technology can be used on the vessel (nukes, mainsails, advanced SAS, etc)...like a certificate system.

I can assure you that, if this XP-boosts-performance option is not toggle-able, .25 will be my last update and I'll be staying well away from the Beta...

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...