Jump to content

[WIP - 1.12] Kerbal Construction Time: Reconstructed - A Rewrite of KCT


magico13

Recommended Posts

Kerbal Construction Time: Reconstructed (KCTR) is a complete rewrite of Kerbal Construction Time with some notable changes. The main goal of this project is to rewrite the mod with cleaner, more maintainable code, but also to rework features that I felt could use some TLC. That means some features of the original KCT may be removed, tweaked, or new features may be added. The original KCT will still be available if that's what you prefer to use, infinite thanks to @linuxgurugamer for maintaining that in my absence.

Here is a rough set of ideas for this project, which are definitely subject to change.

Keep:

  • Time for building ships, ksc upgrades, tech node unlocks
  • Time for rolling to/from pads, recovery, reconditioning (though revamped)
  • ScrapYard integration
  • Support for multiple launch sites
  • Alarm clock support (stock yes, KAC tbd)

Remove:

  • Button to quick build a ship
  • Upgrade system (instead focus on ksc upgrades and/or spending science/funds)
  • High levels of configurability/presets (some will be retained)
  • Science for building ships
  • Multiple launchpads at the KSC (note, not launch sites/ KerbalKonstructs)

New:

  • Higher integration with stock UIs
    • Try to reuse or emulate the ship picker. Allow queueing from the KSC scene. Do something with the awful crew select screen.
    • Drag and drop functionality to reorder ships in a queue
  • Increased focus on subassemblies instead of individual parts
  • Build done in discrete stages (eg design, part sourcing, integration, testing, final checks)
  • "Build Points" replaced with "Complexity", rates replaced with "Efficiency"

 

Development builds will be available on my Jenkins build server, source code is available on GitHub.

 

This thread is for discussion of these changes and for beta releases as features get implemented.

Edited by magico13
Link to comment
Share on other sites

4 minutes ago, theJesuit said:

I like the removal of essentially virtual launchpads

That was one of the features of KCT I was particularly proud of getting working from a technical perspective but with the stock game having multiple launch sites in it now there's not much of a reason to keep that feature around. Plus with Kerbal Konstructs adding even more sites as an option, I'd rather just tie into those systems more and keep this mod a little simpler :)

Edited by magico13
Link to comment
Share on other sites

27 minutes ago, magico13 said:

Increased focus on subassemblies instead of individual parts

Would this allow separate production lines for launch vehicles and payloads?

For example, could someone have a stockpile of Kerbal X rockets and then pay a storage fee while waiting for the payloads to finish?

Link to comment
Share on other sites

Just now, Spaceman.Spiff said:

Would this allow separate production lines for launch vehicles and payloads?

For example, could someone have a stockpile of Kerbal X rockets and then pay a storage fee while waiting for the payloads to finish?

That's basically the plan. The current breakdown I have for how to split up the build stages for a vessel has reusable, standardized launchers taking about half the time compared to a new ship. Also related, I want to have merging of two already built items (ie launcher and payload) be super short, if not instant, to further incentivize that. It'll definitely take some playtesting and tweaking to get it right.

Link to comment
Share on other sites

One other mod I always use with KCT is Project Manager by Beale. It would be awesome to either integrate his mod or add a similar feature for KCT to allow for correct naming sequences of ships, especially when using multiple production lines. 

 

Link to comment
Share on other sites

Quote

Remove:

  • Multiple launchpads at the KSC (note, not launch sites/ KerbalKonstructs)

@magico13 How certain are you to remove this feature? I have a couple of concerns. I do rather like the feature of having to create multiple pads at main KSC, and in some instances such as using the RP-1 preset file its mandatory as the ability to upgrade a pad after initial construction is locked out. Additionally, if going back to a single pad won't this create a logjam of craft waiting for pad availability when using lengthy reconditioning times and/or rollout times? Current way to mitigate that is to have multiple pads of varying sizes. 

If possible based on the code you are planning to rewrite, I would recommend leaving this ability as an option to the player. Not sure if this would break anything with the launch sites improvements you are planning on implementing or not.

Link to comment
Share on other sites

1 minute ago, thunder175 said:

How certain are you to remove this feature?

Right now nothing is particularly set in stone but it would definitely be lower on my priority list. Since RO has their own KCT fork I imagine they will likely keep running with it, especially because this version is probably not going to be quite as configurable as the old one.

Link to comment
Share on other sites

2 minutes ago, magico13 said:

Right now nothing is particularly set in stone but it would definitely be lower on my priority list. Since RO has their own KCT fork I imagine they will likely keep running with it, especially because this version is probably not going to be quite as configurable as the old one.

Sounds good. As you stated, KCTR won't be as configurable as the original, so do you have any ideas on how you are going to do the math behind the GUI then? How flexible will the non-configurable math be to the end user? Do you intend for a set of fixed formulas for this version? Sorry for the numerous questions, KCT is a mandatory mod that I can't play without so your rewrite and roadmap has very much piqued my interest.  

Link to comment
Share on other sites

Just now, thunder175 said:

How flexible will the non-configurable math be to the end user? Do you intend for a set of fixed formulas for this version?

Again, not really set in stone yet. First versions will probably be pretty much hardcoded, but I may enable the formula system again but maybe only within config files. Personally I like making things configurable but it's a lot of extra work when 95% of people will probably just use the defaults or make minor changes. I know I definitely don't tweak the settings in every mod I use, I just sorta want things to work in a reasonable way.

Link to comment
Share on other sites

Just now, magico13 said:

Again, not really set in stone yet. First versions will probably be pretty much hardcoded, but I may enable the formula system again but maybe only within config files. Personally I like making things configurable but it's a lot of extra work when 95% of people will probably just use the defaults or make minor changes. I know I definitely don't tweak the settings in every mod I use, I just sorta want things to work in a reasonable way.

Totally understand. I've been trying to find a good balance in presets with KCT over the years when using a rescaled system (typically 6.4x) between the 'slower' preset and RP-1 without getting too draconian on myself. One of the key changes I make to RP-1's build formula is to allow for multiple production lines as a function of VAB and R&D upgrade levels to get to somewhat where you are going with the production stages. I think the multiple production stages  is an interesting way to do things instead of clicking build and starting a single timer, so very much looking forward to hearing about that as you flesh out your ideas. With ScrapYard integration, be great if I could design and 'order' a production run block of x number of satellites after just designing the satellite itself in the VAB, then integrate them onto a launch vehicle at a later time. Sounds kinda like where you are headed or am I way off?

Link to comment
Share on other sites

1 minute ago, thunder175 said:

With ScrapYard integration, be great if I could design and 'order' a production run block of x number of satellites after just designing the satellite itself in the VAB, then integrate them onto a launch vehicle at a later time. Sounds kinda like where you are headed or am I way off?

That's roughly what I'm intending. I want to have it so if you build a "standard" design, ie one you've built before, then the design time is zero. Then with ScrapYard I can also detect that those parts were used often so I can cut time down even more due to that.

So if you look at what I've got roughed out as the different build stages you can see that the design time would be zero, part acquisition might be reduced, testing would be greatly reduced, etc.  So if you reuse a booster design and reuse a payload design then you can cut back a lot of build time, then the merge process (which I'm definitely still doing planning on) would be super short with basically just the "Final Checks" phase.

Ship Construction Phases:

  1. Design - 15% Based on total complexity, 0 if using existing design. Reduced if using parts that have been used frequently.
  2. Part Acquisition - 25% Based on the most complex part, 0 from inventory. Reduced if using frequently used parts. Cancel after this: add parts to inventory
  3. Construction - 45% Based on total complexity, reduced with frequently used parts.
  4. Testing - 10% Based on total complexity, especially new parts. Less for existing design.
  5. Final Checks -  5% Based on total complexity
Link to comment
Share on other sites

18 minutes ago, gunt3rgam3r said:

the ability of kct to 'hanger' craft is one of it's most useful and unique features

I don't really want to keep the system as it is now, where KCT takes the active vessel and tries to turn it into a craft file with often mixed results. I instead want to recover+refurbish a craft back to the original state, so for a plane it would basically reload it to as if you launched a new one, and for a booster it would revert it back to the subassembly state.

It's a similar system but would eliminate any manual steps to refuel/replace parachutes/etc. It also eliminates the issues that crop up all the time with converting a vessel to a craft file.

Link to comment
Share on other sites

  • 3 weeks later...
12 minutes ago, SiCaRiO31 said:

Would this new version include functionability of Stage recovery or a Spacecraft Simulation?

Stage Recovery (the mod) and simulations would remain separate, though I do have a simulation mod I had been working on at one point that's half-finished.

Sorry for the lack of updates on this, I've actually been playing a bunch of KSP lately in part to get familiar with everything that's changed and also because it's just fun...

Link to comment
Share on other sites

  • 3 weeks later...
On 8/25/2021 at 3:38 PM, KerballingSmasher said:

This seems like a brilliant idea. Good luck with this!

On an unrelated note... I know LGG normally "adopts" unkept mods, but has anyone brought one of their mods back under their own wing? 

I can't remember which mods, but there have been several that have been adopted and then returned to the original creator.

Link to comment
Share on other sites

18 hours ago, magico13 said:

If/when I've got something remotely usable I'll get it onto CKAN. I use CKAN for pretty much all mod installs personally so I'd definitely want to support it.

Brilliant, thanks!

12 hours ago, Spike88 said:

I can't remember which mods, but there have been several that have been adopted and then returned to the original creator.

Hmm... interesting. Sounds like I need to do some research!

Link to comment
Share on other sites

  • 3 weeks later...
On 8/3/2021 at 4:10 PM, magico13 said:

Sorry for the lack of updates on this, I've actually been playing a bunch of KSP lately in part to get familiar with everything that's changed and also because it's just fun...

This is the literal best reason for lack of updates! I'm glad you're having fun with it. :)

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