hab136

[1.1.3] AutoAsparagus v2.2.2

198 posts in this topic

Asparagus staging is awesome, but tedious. So, I built a plugin to do it for me! :)

The plugin can create fuel lines if you have none, or it can use your existing fuel lines. Based on the fuel lines, it will put decouplers and sepratrons into proper stages.

For KSP 1.1, download from: Curse, NexusMods, Github, SpaceDock or via CKAN

For KSP 1.0.5, download old version

Source code: Github

It's highly recommended that you also download SmartStage, but it's not required.

OnXTJjLl.jpg

HOW TO USE:

 

Press the asparagus-looking button in the stock toolbar to show/hide the main window.

Load your ship in the VAB, and then:

Press "Asparagus" to create fuel lines and stage your ship in asparagus-style staging.

Press "Onion" to create fuel lines and stage your ship in onion-style staging.

Press "Delete fuel lines" to delete ALL your fuel lines.

If you have SmartStage installed, there will be a checkbox to use SmartStage for the staging. If you don't have it installed, or you uncheck it, you will get the following options:

"Stage parachutes" will stage parachutes to fire when the fuel tank it is attached to decouples.

"Stage sepratrons" will stage sepratrons to fire when the fuel tank it is attached to decouples.

"Stage launch clamps" will move the launch clamps into the bottom or next-to-bottom stage (selectable).

Note for "thrust plate"-style ships: the center tank must be higher in the part tree than the other tanks. The easiest way to do that is to build the ship with the center tank as the main part. If you've already built your ship, use the built-in root part gizmo to change your root part.

New in v2.0:

  • Save and re-load the ship instead of refreshing it, which cures many problems.
  • Support for Blizzy's toolbar. Option to select stock or Blizzy's toolbar.
  • Icons for part selection (thanks xEvilReeperx)
  • Rainbow option. Requires the selected part to have multiple textures, like when you have "Colorful Fuel Lines" installed
  • Visualization! Highlights tanks and decouplers, shows onion ring levels, and on error highlight which tanks it couldn't connect and what parts were blocking
  • Better support for modded decouplers
  • Save window position and options in config file

Changelog for older versions:

Spoiler

New in v2.2.1:

* Recompiled for KSP 1.1.2

New in v2.2:

* Don't create multiple app buttons when re-entering the VAB

New in v2.1:

* Recompiled for KSP 1.1 release

New in v2.0:

* Save and re-load the ship instead of refreshing it, which cures many problems.
* Support for Blizzy's toolbar. Option to select stock or Blizzy's toolbar.
* Icons for part selection (thanks xEvilReeperx)
* Rainbow option. Requires the selected part to have multiple textures, like when you have "Colorful Fuel Lines" installed
* Visualization! Highlights tanks and decouplers, shows onion ring levels, and on error highlight which tanks it couldn't connect and what parts were blocking
* Better support for modded decouplers
* Save window position and options in config file

New in v1.1:
* Recompiled against KSP 1.0.5
* Major overhaul of connection logic. Now disregards symmetry entirely, and instead looks at number of decouplers between the tank and the root part, plus the central fuel tank. I call it "OnionRings". 
* The Kerbal X still doesn't work, so please don't test with it. The lack of symmetry is no longer a problem, but the side tanks are too close to the central tank, and the fuel lines don't get created properly. Basically don't use the Hydraulic Detachment Manifold because it doesn't leave enough space.
* Add support for Colorful Fuel Lines
* Add support for other CompoundParts such as stock struts, plus modded struts and fuel lines like the Copper Struts and Copper Fuel Lines from "Professor Phineas Kerbenstein's wonderous vertical propulsion emporium" (although see that thread for a necessary patch). New mod parts will be detected automatically.

New in v1.0:
* Recompiled against KSP 1.0.4
* Cleaned up logging, added some debugging messages
* Handle parts without colliders (like Procedural Fairings).  Fairings shouldn't cause crashes now.
* Choose fuel tanks based on flowable resources, not name - now NovaPunch and a lot of other part packs will work
* Fixed launch clamp display bug
* Beefed up obstruction detection.  Now instead of a point-to-point check, there's a "barrel" that's checked for obstructions.  Also fixed the adjustment increment

New in v0.9:
* Re-package with release DLL (without dev buttons)

New in v0.9:
* Fixed ApplicationLauncher button for KSP 1.0.2
* Added (optional) SmartStage support

New in v0.8:

* Fixes for KSP 0.90

New in v0.7:
* Recompiled for 0.25
* Added .version file for KSP-AVC version checker (you must install KSP-AVC separately from http://forum.kerbalspaceprogram.com/threads/79745)
* Added Install Checker to make sure AutoAsparagus is installed correctly

New in v0.6:

* Clicks won't go through the window and touch your rocket now
* Changed initial starting position to be a little more left (instead of dead center)
* Switched to stock app launcher, which removes dependency on Blizzy's Toolbar

New in v0.5:

* Allow dropping more than two tanks at a time, such as 3 tanks at a time for a 9-tank ring (suggested by Ival70 and Tahib). Turns out it wasn't as hard as I thought it would be.
* Better icons (thanks cj81499!)
* Updated Toolbar plugin to latest release

New in v0.4:

* Bug fixes!
* Supports double-height (stacked) tanks

New in v0.3:
* Less-terrible GUI
* Optionally stage parachutes
* Optionally move launch clamps to bottom (or next-to-bottom) stage
* In career mode, disable the plugin until fuel lines are unlocked
* Automatically adds blank stages (previously a manual step)
* Fix a bug where two stacks of decouplers were in the same stage

New in v0.2:
* Automatically add fuel lines

New in v0.1:
* Initial release

 

KNOWN BUGS:

* There must be some space between your boosters and the next tank; for this reason the stock "Kerbal X" ship won't work correctly.

btn_donate_LG.gif

Edited by hab136
v2.2.2 for KSP 1.1.3
7 people like this

Share this post


Link to post
Share on other sites

Interesting, it seems to work though I haven't tested it beyond a few layers. The GUI is confusing though but it does connect fuel lines and stage correctly for the most part.

Share this post


Link to post
Share on other sites

I don't have much to say about this. Works as advertised. ~60 second learning curve. And it is SO excellent.

It could use a strut addition button though.

Edited by horndgmium

Share this post


Link to post
Share on other sites
It could use a strut addition button though.

Hmm, an "AutoStrut" would be interesting. In the meantime, you might look at Kerbal Joint Reinforcement

Share this post


Link to post
Share on other sites
Hmm, an "AutoStrut" would be interesting. In the meantime, you might look at Kerbal Joint Reinforcement

Would that even be possible? Then again, i didn't think auto asparagus would be possible, but, well, here it is! I've yet to test it, but it looks amazing!

Share this post


Link to post
Share on other sites

Just was testing, works perfectly with one layer of 2.5m tanks (6x symmetry), but it glitches a lot of the time with two layers, but it still is ok.

Share this post


Link to post
Share on other sites

I really like that idea though, AutoStrut. I have KJR but it requires a lot more than just a decoupler to keep from breaking :/.

Share this post


Link to post
Share on other sites
Would that even be possible? Then again, i didn't think auto asparagus would be possible, but, well, here it is! I've yet to test it, but it looks amazing!

Figuring out how to automatically place fuel lines was a nightmare, but now all the hard work is done. Automatically placing struts shouldn't be difficult. But which parts should be strutted together? I guess any fuel tanks in symmetry, plus any two fuel tanks separated by a decoupler? Strutting has always seemed more art than formula to me.

Just was testing, works perfectly with one layer of 2.5m tanks (6x symmetry), but it glitches a lot of the time with two layers, but it still is ok.

Depends what you mean by two layers... multiple rings should work (6x tanks attached by decouplers to 6x tanks). Double-height tanks (6x tanks on top of 6x tanks, attached to decouplers) probably don't work. I'll tackle that in a new version.

Share this post


Link to post
Share on other sites

Heres how I strut my stuff :D

2 struts on either side of decoupler

4 struts connecting the tank to the rest of the layer

Share this post


Link to post
Share on other sites

I don't mind strutting things so much, but this autostaging is a godsend.

I'll look into it.

Thanks!

Share this post


Link to post
Share on other sites

BUG REPORT: If used in career mode before getting fuel lines, it will still put fuel lines on your ship

Share this post


Link to post
Share on other sites

This is a very good and useful plugin.

You should make one that automatically creates the entire rocket too.

1 person likes this

Share this post


Link to post
Share on other sites

so this is just more autopilot, wonderful

also, sach's feet when?

Share this post


Link to post
Share on other sites

Wow harsh words aimed at a build tool. I'd hate to see what you two say on the MechJeb threads.

While I don't want this to lay my fuel lines for me, I don't see why a button that sets up the staging in the one, only, and single logical way they should be set up (once I lay the fuel lines) is so horrible. I mean, the game already guesses what the staging should be. Is that wrong, too? Why have staging at all, even? Is right-clicking and decoupling too hard for you?

Putting decouplers in the correct stages is a pain in the ass and takes no skill once you've done it once. This tool removes a boring part of the game. Sounds good to me. Makes me wish someone would make a "launch clamps always in the first stage" mod.

Share this post


Link to post
Share on other sites

Agreed. Rearranging symmetrically placed decouplers and separatrons is just a completely fiddly pain.

This is a great little mod.

Share this post


Link to post
Share on other sites
Makes me wish someone would make a "launch clamps always in the first stage" mod.

Although I really do not like or need an asparagus making mod (sorry, not my style), I could get behind this idea. I understand why it happens like it happens, but it does not make a lot of sense.

Share this post


Link to post
Share on other sites

I tried it and it is quite buggy. This is because your allow the user too much freedom GUI wise. (freedom the user probably doesn't want.) get that interface down to just the asparagus, onion and remove fuel lines buttons and the interface would be fine.

But i could only get it to stage 2 rings, any beyond that didn't work. it needs to loop through the fuel tanks for child decouplers and keep going till it can't find any. (Also remember that more than one decoupler may be children on a single tank.)

Asparagus staging is time consuming to set up, there needs to be a faster way and this seems like it's it. And trust me I know all about setting up asparagus staging like the back of my hand...

http://forum.kerbalspaceprogram.com/threads/45685-Bundles-of-Asparagus-Bundle%21?highlight=asparagus+bundle

lol

Sad to think I actually built more of these since then. They could all be replaced by this when it works properly.

Share this post


Link to post
Share on other sites
BUG REPORT: If used in career mode before getting fuel lines, it will still put fuel lines on your ship

Whoops, I never thought of that! Hmm, I guess I could disable the plugin in career mode until fuel lines are researched.

Also maybe if the UI was minimizable?

Yes, I'm going to have to go through and do a proper GUI. I didn't even know if this mod was possible, so I concentrated on seeing if it would work first and just did the bare minimum to make it work. A better GUI is at the top of my list for next version.

You should make one that automatically creates the entire rocket too.

I think you're being sarcastic, but a friend suggested exactly that once I told him what I was doing. Plug in a few parameters like crew count, destination, and a safety margin % of extra fuel, and have a mod pop out a basic ship that you can then customize.

While such a thing would be possible, downloading pre-built ships makes more sense.

so this is just more autopilot, wonderful

Running fuel lines isn't exactly creative or skillful.

Makes me wish someone would make a "launch clamps always in the first stage" mod.

I never thought of that. That's easily doable, and something that annoys me too. I'll add it to my list :)

I tried it and it is quite buggy. This is because your allow the user too much freedom GUI wise. (freedom the user probably doesn't want.) get that interface down to just the asparagus, onion and remove fuel lines buttons and the interface would be fine.

But i could only get it to stage 2 rings, any beyond that didn't work. it needs to loop through the fuel tanks for child decouplers and keep going till it can't find any. (Also remember that more than one decoupler may be children on a single tank.)

Can you share the .craft file so I can debug it? There's no artifical limit on the number of rings, and I tested up to 4.

I'd love to simplify the GUI, but I haven't figured out how combine steps 1 and 2 (adding fuel lines and connecting them). The game needs to refresh or something in between, because if I just run those functions one after another it doesn't work. I haven't automated step 3 yet (adding empty stages) but I know that's doable, but again I can't combine it with step 4 (staging decouplers/sepratrons) because it doesn't work. I'd love to make it one button again (v0.1 just had one button, but only did staging and didn't create fuel lines), but that depends on discoverng if there is an API call I can make, and what that call is.

Hmm.. even with multiple buttons I could maybe show the user one button at a time, or do it more like a "wizard" style like when you install programs in Windows. First I have to learn how to do GUIs properly :)

Share this post


Link to post
Share on other sites

Looks great!

feature request:

support for parachutes, I like to put parachutes on all my stages and i think it's pretty easy to implement along with the sepatron.

Share this post


Link to post
Share on other sites

Just in case you haven't seen it, the Toolbar Plugin is a nice simple way to handle some of the gui basics. And its really nice to have all the mod buttons collected in one place.

Share this post


Link to post
Share on other sites
Just in case you haven't seen it, the Toolbar Plugin is a nice simple way to handle some of the gui basics. And its really nice to have all the mod buttons collected in one place.

+1 one for this one. It's easy to have a button that only show while in the Editor and you won't have to worry about code for moving the button ans such.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now