Jump to content

[1.10] AutoAsparagus v2.3.1


hab136

Recommended Posts

how 'bout a config file to turn off stock toolbar icon and turn on the old blizzy toolbar support?

i removed all mods that used the stock toolbar and i've been adding them back as they added this functionality. i love asparagus. it's delicious. i just hate that stock toolbar.

Link to comment
Share on other sites

how 'bout a config file to turn off stock toolbar icon and turn on the old blizzy toolbar support?

I'll take it as a to-do item.

I previously had Blizzy's toolbar as a hard dependency. To support (but not require) Blizzy's toolbar requires different code than the code I removed, since it has to use reflection instead of just linking it. I'd also need a radio button to select between Blizzy and stock, and add new code to deal with things like people setting it to Blizzy's toolbar and then uninstalling Blizzy's toolbar. And then of course spend an hour or two testing it (since I have to re-load KSP for every change).

Meanwhile Val has to avenge Jeb's death...

Link to comment
Share on other sites

  • 2 weeks later...
Is this mod still working with the new updates?

It should work, since the 1.0.3 and 1.0.4 updates are mostly about aerodynamics, which have nothing to do with the VAB editor. Try it! :)

I'm at the beach right now; when I get back next week I'll update the .version file so it quits complaining about the KSP version.

Link to comment
Share on other sites

It should work, since the 1.0.3 and 1.0.4 updates are mostly about aerodynamics, which have nothing to do with the VAB editor. Try it! :)

I'm at the beach right now; when I get back next week I'll update the .version file so it quits complaining about the KSP version.

Ill post an update override into CKAN for you. They are changing the way they handle versions, using a range instead of a single fixed value - all Im doing is taking the netkan data and switching it over.

Link to comment
Share on other sites

I am on 1.0.4 with FAR and autoasparagus refuses to add fuel lines. Anyone have any ideas?

KSP.log: https://www.dropbox.com/s/awwxw00b66v0uhd/KSP.log?dl=0

Player.log: https://www.dropbox.com/s/vl1a0w0kycjrcvx/Player.log?dl=0


[LOG 01:32:26.462] === Connecting 0 fuel sets

It couldn't find any fuel tanks to connect. In the log it only find two fuel tanks (KW2mtankPancake, NP.lft.25m.BigLanderTank), neither of which are in symmetry:


[LOG 01:32:35.617] isFuelTank: Part IS a fuel tank: KW2mtankPancake: -2637366/0/9
[LOG 01:32:35.617] isFuelTank: Part IS a fuel tank: NP.lft.25m.BigLanderTank: -2639444/0/9

(The numbers at the end means 0 symmetry, 9 children)

I looked at NovaPunch and apparently "NP.lft.625m.1m" is actually a fuel tank:


[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2532208/1/2
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2532964/1/2
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2533684/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2533908/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2534242/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2534588/1/1

So, AutoAsparagus has decided that these tanks aren't fuel tanks, based on the name (it doesn't have "tank" or "fuselage" in the name). That can be fixed. However it looks like you made them in double symmetry - placing two at a time. That won't work; if you have 6 tanks, they need to be in 6x symmetry or AutoAsparagus won't do the right thing (same with 4x or 8x or whatever).

Link to comment
Share on other sites


[LOG 01:32:26.462] === Connecting 0 fuel sets

It couldn't find any fuel tanks to connect. In the log it only find two fuel tanks (KW2mtankPancake, NP.lft.25m.BigLanderTank), neither of which are in symmetry:


[LOG 01:32:35.617] isFuelTank: Part IS a fuel tank: KW2mtankPancake: -2637366/0/9
[LOG 01:32:35.617] isFuelTank: Part IS a fuel tank: NP.lft.25m.BigLanderTank: -2639444/0/9

(The numbers at the end means 0 symmetry, 9 children)

I looked at NovaPunch and apparently "NP.lft.625m.1m" is actually a fuel tank:


[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2532208/1/2
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2532964/1/2
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2533684/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2533908/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2534242/1/1
[LOG 01:32:24.768] isFuelTank: Part is NOT a fuel tank, based on name: NP.lft.625m.1m: -2534588/1/1

So, AutoAsparagus has decided that these tanks aren't fuel tanks, based on the name (it doesn't have "tank" or "fuselage" in the name). That can be fixed. However it looks like you made them in double symmetry - placing two at a time. That won't work; if you have 6 tanks, they need to be in 6x symmetry or AutoAsparagus won't do the right thing (same with 4x or 8x or whatever).

Even when I do the symmetry properly AutoAsparagus doesn't work. In fact, using stock tanks and clicking asparagus connected fuel lines in the onion style and SmartStage did't work either.

Here are the logs and screenshots: https://www.dropbox.com/sh/jh4gzhwac8kgn00/AAAwTy0QZcpK6iA8MQonPzvNa?dl=0

Link to comment
Share on other sites

Even when I do the symmetry properly AutoAsparagus doesn't work. In fact, using stock tanks and clicking asparagus connected fuel lines in the onion style and SmartStage did't work either.

Here are the logs and screenshots: https://www.dropbox.com/sh/jh4gzhwac8kgn00/AAAwTy0QZcpK6iA8MQonPzvNa?dl=0

I just realized https://github.com/henrybauer/AutoAsparagus/issues/2 is your ticket; rather than debug this in two places I'll update that ticket.

Link to comment
Share on other sites

AutoAsparagus v1.0 is out!

* 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

Thanks to blnk2007 for help with debugging!

Link to comment
Share on other sites

AutoAsparagus v1.0 is out!

* 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

Thanks to blnk2007 for help with debugging!

That worked! Congrats on 1.0!

For those having issues with FAR, RealChute, and Smartstage installed do this: After using AutoAsparagus save your ship, exit the VAB, return to the VAB.

Link to comment
Share on other sites

If you haven't already seen Colorful Fuel Lines, they're real pretty. And yes, I'm already thinking about how to add support for it. :)

Dun8bvEl.jpg

After using AutoAsparagus save your ship, exit the VAB, return to the VAB.

Yeah, unfortunately the ship refreshing that I do is a hack at best, and saving and reloading the ship is always a good idea.

Link to comment
Share on other sites

  • 1 month later...

Small preview of some upcoming additions - support for Colorful Fuel Lines and also non-stock fuel lines :) Aside from visual fun, I think I've come up with a way to support multiple symmetry stacks, but it would be a huge change to the code, so I may break that into a separate update. I also have a couple of ideas for struts; we'll see which ones pan out.

O4HyRZZl.png

gRuXH2Sl.png

Link to comment
Share on other sites

  • 2 months later...

How about a force cancel operation, so that if there's heavy lag i.e. something goes wrong, we don't have to restart ksp just to get back to building. That would be a nice feature. Also, I'm having problems with heavy lag, and was wondering if anyone else was experiencing this while using auto asparagus. I'm not sure what the issue is, but I have a rocket with 4 boosters in an asparagus config, and they're attached with decouplers like in the correct diagram shown in this thread. Not sure why, then, there is a heap of lag that pretty much causes me to have to restart ksp after every use of autoasparagus... It seems to work well with small, uncomplicated rockets, but the rocket I'm working on is mid sized, with several complex parts.

Link to comment
Share on other sites

How about a force cancel operation

While the mod is processing, the GUI won't run, so the mod can't even draw a Cancel button, let alone receive a click from it. It's the same reason there's no real status output to the screen; if you check KSP.log (or just press Alt+F2) you can see the tons of status the mod generates, but I just can't draw it to the screen.

There's already infinite-loop detection in all of the loops, but there seem to be a few edge cases I haven't caught.

Not sure why, then, there is a heap of lag that pretty much causes me to have to restart ksp after every use of autoasparagus... It seems to work well with small, uncomplicated rockets, but the rocket I'm working on is mid sized, with several complex parts.

There's two different "lag"s. First, if AutoAsparagus breaks, it gets stuck in an infinite loop, and you basically have to restart KSP. Even leaving the VAB or going to the main menu won't fix it - you have to quit the game, because otherwise it's still spinning in its infinite loop.

Second, even when everything works correctly, there's still sometimes issues with the ship refreshing at the end. It's a gigantic hack and doesn't work great, but I haven't found a better way to do it. There may not be a better way; it's not like anything else does what AutoAsparagus does (modify the ship construct in the editor). KIS would be the closest thing, and that only adds parts during flight. Anyways, saving and re-loading the ship after running AutoAsparagus should cure that lag, and is strongly recommended.

As always, if you have a craft that reliably breaks AutoAsparagus, please share the .craft file via Dropbox or something so I can be sure to test against it.

Link to comment
Share on other sites

So, artemiseritu got me thinking about development again, and I finally got around to testing Kramax's reload plugin. Normally any time I make a change in code, even just changing "(numberOfTanks / tanksToDropAtOnce)" to "(numberOfTanks / tanksToDropAtOnce-1)" I have to reload KSP, which takes a few minutes. Kramax's plugin lets you reload your plugin basically instantly.. which means speed of development is much much faster. I was so happy with it that I basically sucked myself into a few hours of development (crap, is it 2:30 am already???). I cleaned up some code, wrote a "friendly name" generator because keeping track of tanks "74384" and "74393" was difficult, and... finally got my new pathfinding logic working. You'll notice in the picture below that it's using multiple symmetry rings, so that restriction is totally gone in the dev version.

EuBbJJY.pngRwXltRf.png

There's still a few bugs to work out (my "16multi" test ship manages to crash it), but I think by the time 1.0.5 hits I should be able to release the new logic. After that, basically all the "KNOWN BUGS" and "TODO" items will have been checked off, and AutoAsparagus will be feature-complete unless someone dreams up new features. :)

(There's still improvements to be made - particularly trying to improve the GUI and feedback during the processing, and trying to find a new way to refresh the ship. I need to explore writing the ship out to a file and reading it back in)

Link to comment
Share on other sites

Currently having an issue where whether I try using the onion or asparagus option it removes all parts from the craft and if you click the craft it then becomes invalid. Even if you try to just launch after using onion or asparagus without clicking the craft. Stages will not be correct for onion, asparagus seems to stage but system doesn't realize it.

AB Launchers (ABLaunchers 1.0)

Adjustable Landing Gear (AdjustableLandingGear v1.2.0)

AIES Aerospace (AIESAerospace-Unofficial 1.6.0)

Air-Augmented Rockets (AirAugmentedRockets 1.0)

ALCOR (ALCOR 0.9.4)

ALCOR IVA Patch (ALCORIVAPatch 0.9.4)

Alcubierre Warp Drive (Stand-alone) (AlcubierreStandalone 0.3.0.0)

Animate Emissive Module (ModuleAnimateEmissive v1.11)

Antennas (Antennas Version_1.1)

Asclepius - A Kopernicus planet - SSTO playground (Asclepius v1.1)

ASET Avionics (ASETAvionics 1.0)

ASET Props (ASETProps 1.3)

Asteroid Day (AsteroidDay 1.0)

AstroGamer's EnginesPlus Mod (EnginesPlus 2.0)

Atomic Age (AtomicAge 3.1.2)

AutoAsparagus (AutoAsparagus v1.0)

Aviation Lights (AviationLights 3.7)

B9 Aerospace Procedural Parts (B9AerospaceProceduralParts 0.40)

Bahamuto Dynamics (Parts pack) (BahamutoDynamicsPartsPack v1.2.0)

BahamutoD Animation Modules (BDAnimationModules v0.6.2)

BahamutoD's Armory (BDArmory v0.9.9.1)

BDArmory FPS (BDArmoryFPS 0.1.1)

BDArmorySorting (BDArmorySorting 1.0.2)

Behemoth Aerospace Engineering Large Parts (BehemothAerospaceEngineeringLargeParts 1.3.3)

Better Buoyancy (BetterBuoyancy v1.4)

BetterTimeWarp (BetterTimeWarp 2.1)

Community Resource Pack (CommunityResourcePack 0.4.5.0)

Community Tech Tree (CommunityTechTree 2.1)

Contract Window + (ContractsWindowPlus 5.3)

CraftHistory (CraftHistory 1.4.4)

Crossfeed Enabler (CrossFeedEnabler v3.3)

DMagic Orbital Science (DMagicOrbitalScience 1.0.8)

Docking Port Alignment Indicator (DockingPortAlignmentIndicator 6.2.0)

EVAManager (EVAManager 6)

Firespitter Core (FirespitterCore v7.1.4)

HyperEdit (HyperEdit 1.4.1.0)

Infernal Robotics Model Rework - Core Pack (IR-Model-Rework-Core v01b)

Infernal Robotics Model Rework - Expansion Pack (IR-Model-Rework-Expansion v01b)

Interstellar Fuel Switch (InterstellarFuelSwitch 1.17)

Interstellar Fuel Switch Core (InterstellarFuelSwitch-Core 1.17)

Kerbal Inventory System (KIS 1.2.2)

Kerbal Joint Reinforcement (KerbalJointReinforcement v3.1.4)

KerboKatzUtilities (KerboKatzUtilities 1.2.11)

Kopernicus Planetary System Modifier (Kopernicus 1:beta-04)

KSP AVC (KSP-AVC 1.1.5.0)

Magic Smoke Industries Infernal Robotics (InfernalRobotics v0.21.3)

MechJeb 2 (MechJeb2 2.5.3)

Module Manager (ModuleManager 2.6.8)

Near Future Construction (NearFutureConstruction 0.5.4)

Near Future Electrical (NearFutureElectrical 0.5.3)

Near Future Electrical Core (NearFutureElectrical-Core 0.5.3)

Near Future IVA Props (NearFutureProps 0.4.3)

Near Future Propulsion (NearFuturePropulsion 0.5.3)

Near Future Solar (NearFutureSolar 0.5.3)

Near Future Spacecraft Parts (NearFutureSpacecraft 0.4.3)

Old School Turrets - Additional WWII Turrets for BDArmory (OldSchoolTurrets 1.0)

RasterPropMonitor Core (RasterPropMonitor-Core v0.23.2)

Red versus Blue! A BDArmory expansion pack (RedversusBlue 0.0.0)

SCANsat (SCANsat v14.2)

Smart Parts (SmartParts 1.6.6)

SmartStage (SmartStage v2.7.0)

Stockalike Station Parts Expansion (StationPartsExpansion 0.3.3)

ToadicusTools (ToadicusTools 16)

Toolbar (Toolbar 1.7.9)

Tweakable Everything - Engine Staging Toggle (TweakableEverything-EngineStagingToggle 1.13.1)

Tweakable Everything - Fairing Staging Toggle (TweakableEverything-FairingStagingToggle 1.13.1)

TweakableEverything (TweakableEverything 1.13.1)

TweakScale - Rescale Everything! (TweakScale v2.2.1)

Vessel Viewer (VesselView v0.71)

here are screen caps of the incidents, i apologize they are unedited, adding them as they are uploaded will edit post with the others.

Cap1

Cap2

Cap3

Cap4

Link to comment
Share on other sites

Currently having an issue where whether I try using the onion or asparagus option it removes all parts from the craft and if you click the craft it then becomes invalid. Even if you try to just launch after using onion or asparagus without clicking the craft. Stages will not be correct for onion, asparagus seems to stage but system doesn't realize it.

Bizarre.. I guess it doesn't like the refresh, which is admittedly constructed of voodoo, witchcraft, and duct tape. If you save and reload the craft after each button press in AutoAsparagus, does it show correctly? (For example "Delete all fuel lines", then Save, the Load the craft, then "Asparagus", then Save, then Load the craft, then Launch)

If save/load doesn't work, you can try without CraftHistory, TweakableEverything/TweakScale, and KerboKatzUtilities in turn.. those are the most likely suspects for not being happy with the refresh.

Link to comment
Share on other sites

Bizarre.. I guess it doesn't like the refresh, which is admittedly constructed of voodoo, witchcraft, and duct tape. If you save and reload the craft after each button press in AutoAsparagus, does it show correctly? (For example "Delete all fuel lines", then Save, the Load the craft, then "Asparagus", then Save, then Load the craft, then Launch)

If save/load doesn't work, you can try without CraftHistory, TweakableEverything/TweakScale, and KerboKatzUtilities in turn.. those are the most likely suspects for not being happy with the refresh.

Thanks for the suggestion I will try it, I had thought I recorded the screen caps on my backup fresh install but I guess I recorded them on my modded install lol my bad, my hope was to help narrow down the culprit so you wouldn't have to weed through the mods. I will try the save/load suggestion and trying it without those mods as well. Thank you again, will keep you posted.

--Update

Save/Load did work.

Also tried removing the mods you suggested, removing tweakableeverything also seemed to fix the issue as well as craft history.

Edited by l3tsputasmileonthatfacexd
Link to comment
Share on other sites

  • 2 weeks later...

With 1.0.5 right around the corner it would be silly to release now.. but at the same time the next release is basically ready. So.. who wants to beta test? :) Rename your existing AutoAsparagus.dll to AutoAsparagus.dll.bak, then drop this new DLL in: https://github.com/henrybauer/AutoAsparagus/releases/tag/v1.1beta

This should be the final changes to the connection logic, so if you find a ship where it doesn't work (that isn't using Hydraulic Detachment Manifolds), please share the .craft file with me. I have a whole directory of test ships, including this monster below, but you guys always seem to find new and crazy ways to build ships. :D

aNrI9H6l.png

Changelog:

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

Link to comment
Share on other sites

  • 2 weeks later...

The game basically freezes up when I start the asperagus auto-stage function. It makes the fuel lines, but does nothing more. Frame rate is around 0.5/sec after that.

edit: Got it to finish once, but upon launching everything was staged together again and fuel lines disconnected.

edit: When it does work, the center tank is depleted before the boosters run out, so something is up with the fuel lines.

Great idea, but less work to do it manually as-is ;)

Edited by Jimbodiah
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...