Jump to content

[0.90WIP] Procedural Parts - Parts the way you want 'em 0.9.21, Dec 19


swamp_ig

Would you prefer decouplers to:  

118 members have voted

  1. 1. Would you prefer decouplers to:

    • Closely as possible follow stock behaviour
      15
    • Have a sensible relation between size, decoupler force, and mass
      153


Recommended Posts

Is there any way to apply this to other models? Such as the stock decouplers and the like. I have added the modules and reconfigured them for the 1.25m stack decoupler for example. It correctly aters the decoupling mode, ejection force etc. but the pat itself does not resize(visually or by collision mesh), even though the tweakables say it's larger and the decoupling force can be increased as it should.

Link to comment
Share on other sites

Just moved to 0.23.5 with the latest Kerbal Attachement and the problems went away. You were right in that SAS really makes the problem worse. The default values are way to powerful. We really need to create realistic procedural SAS.

Edited by jsimmons
Link to comment
Share on other sites

EggMan360 do you have the config to define containers that can hole resources like water, food etc? I assume you are using the TANK_OPTIONS for this. It would be nice to have a generic storage container that we can fill with whatever we want. With TANK_OPTIONS we can even do combos. Some people like to store water, oxygen and food all in one unit. SwampIg can you control textures based on the TANK_OPTIONS? This way we can label tanks so we know what are contained in them. We will need proper texture labels in that.

Link to comment
Share on other sites

Okay I'm having a few attachment node issues. Specifically when using 'Revert to Vehicle Assembly' sometimes the tanks and fuselage parts are connected in the complete wrong place (vertically). Reloading the saved .craft file reverts the attachments to the correct places.

Link to comment
Share on other sites

The spoke thing would be interesting, basically the same as if you have a central cylinder and the spokes were just like protruding trusses?

As far as spoke count would go I'm pretty sure KSP is limited in symmetry to 6 (or 8 or something, I cant remember) by default, sure you could add one full symmetry set and then another but I'm pretty sure the core game will limit the spoke count to 6 (or 8, I feel silly that I don't know this :/ lol)

I like this idea, maybe too in a form of an girder structure, like the Octagonal struts from squad stock parts, but with configurable side count and in conjunction with procedural girders.

With the EditorExtensions mod you can go to any symmetry count you ever need.

Link to comment
Share on other sites

Had a thought about another structural part that might be easy to add.

A "hub" - basically a structural cylinder that has stack attachment points radially around it's girth.

Extra parameters would be:

- an "end offset" = distance from base/top (0 to length)

- a "spoke count" = how many radial points (0 to inf)

- a "ring count" = how many ring layers or spokes along the remainder of length (spaced at ((length- 2(offset))/ring count) intervals)

This does sound like a cool idea. You'd have to limit the spoke / ring count for the size / length of the cylinder.

The other issue would be what to do with stuff that's already attached when you change the attachment count. Easiest way to get around that would be to lock the options once anything is attached.

Will add this to the tracker.

Link to comment
Share on other sites

Yes, you'd definitely have to limit the spoke count, but I thought that would be best left in the hands of the user. Perhaps work out the diameter of the attached children parts and work it backwards form there. Sort of a anti-clipping sanity check, rather than a limit.

I do like the idea of making it a truss object, but I thought it would be better to just start with a simple, already existing shape.

As for what to do if the count is increased /decreased - Again I think looking at the child parts might hold the key. Do they have some symmetry flag? (I have no idea) If they don't then probably just leave the extra nodes unpopulated. When nodes are removed, something has to be removed, so probably delete the last node's children.

Squad's approach is to essentially overwrite the existing nodes, (ok, you pick a part, which detaches all children and then you change the count and reattach), so we're already used to having to reattach the symmetric parts. I say just clone the first one for all subsequent ones. We'll so learn how to work within the limits. :)

I'm glad you like the idea XD.

Now for the complementing part:

The wedge

The wedge is a cylinder that is bent through an arc.

It has stack points top and bottom. The top one being at an user-defined angle.

The diameter of the wedge would also be configurable.

Two parameters would define the shape of the wedge: The "bend radius" and the "bend angle"

If you were to measure the distance between the intersection of the top and bottom stack planes, to the actual stack point, this would be the bend radius.

The bend angle would define the angle between top and bottom circles.

Again, keeping the object to a simple cylinder to start with, perhaps moving to a truss-like object later.

BTW, this is one the most important mods IMHO, as we have to live within the 32bit memory limit. It actually enables creativity, as some creations would not have been possible without it (I have a air-launch system that uses HL-airships and your tanks to get a 100T payload to 20K at terminal velocity) I just wanted to give my appreciation and thanks.

Edited by orcman
Link to comment
Share on other sites

I have also been thinking about "bent cylinders" where the top and bottom attachment nodes/surfaces are at a user defined angle - let's say in increments of 5 degrees. Imagine the possibilities! Ofcourse the top and bottom diameter would be fully adjustable. It would also be cool if you could adjust where the part bends along its length.

Link to comment
Share on other sites

EggMan360 do you have the config to define containers that can hole resources like water, food etc? I assume you are using the TANK_OPTIONS for this. It would be nice to have a generic storage container that we can fill with whatever we want. With TANK_OPTIONS we can even do combos. Some people like to store water, oxygen and food all in one unit. SwampIg can you control textures based on the TANK_OPTIONS? This way we can label tanks so we know what are contained in them. We will need proper texture labels in that.

You may be mistaken about how I've done this, what I've done is have a single part for the sake of keeping what I've done modular, so the parts I've made are separate and individual, so when I use one of "my" argon tanks for example I can't cycle through in the GUI and change it to say xenon, the xenon tank I've made is a separate item in the parts catalogue, but it would be simple to edit the liquid+oxidiser config to make it so you can have either or both, but one issue I've found...

If I get a 1mx1m liquid+oxidiser tank which allows 61.9 liquid fuel and 75.7 oxidiser but say "no no, just liquid fuel please" the part can only be filled with 63.2 units of liquid fuel, so it seems that the part doesn't think "oh, well I don't just need to have half fuel and half oxidiser, so I'll give you a fuel capacity of ~120 ish liquid fuel, see what I mean? The tank appears to be more or less half "empty"

So if you want a single tank that can hold life support materials, it would be best if I kept them all to one part, and just. Used the sliders in the VAB/SPH to fill with the resource you want (technically need lol)

University has gotten in the way but I have two days off and am actually settling down to crack on with this right now, so I'm kind of after a vote...

Do you think that I should make one procedural tank for all the life support resources?

or

Several separate ones?

Link to comment
Share on other sites

Just as a heads up to people once I actually get around to posting these on the space port (as long as I get all the proper permissions and things)...

Some mod makers DONT really balance the size of the tanks with the amount of resources inside when comparing tank storage size and volume (basically volumetric density) so I work on the averages of the tank sizes, so unfortunately doing some of these procedurally will make it so that sometimes smaller tanks or larger ones will have more or less resources than the original mod ones at different sizes.

I really don't mean to point fingers but its the mod I'm configuring for now, the resourse storage tanks in TAC life support (fantastic mod btw) don't have the same density values when comparing the capacity of the large tanks to the small ones, the settings I have for my current build mean is that when comparing the large, medium and small containers then the amount of resourse in each per its volume is WAY off, for example, the small tank says the density value is 10000, whereas the value for the large tank is ~4740 (note these values shouldn't mean anything to you guys) it basically means the resource per volume value of the small tanks is BETTER than using one large tank, so physical volume wise, loads of smaller tanks of a given volume will give twice as much resource than using one large one

(I hope this rambling all makes sense lol)

EDIT:

This is what I mean

Large Tank, Default mod tank storage:1920.....Tank I've made holds (when made the same size):1920

Medium Tank, Default mod tank storage:240 Tank I've made holds (when made the same size):317 (see the problem?)

Small Tank, Default mod tank storage:30 Tank I've made holds (when made the same size):37.9

The numbers for the small tank is fine I guess, but medium is a bit off for my liking :/ which tells me that TAC Life Support's medium sized supply canisters are actually holding less resources in that mod than they should for their size :P lol

Edited by Eggman360
Link to comment
Share on other sites

I like this idea, maybe too in a form of an girder structure, like the Octagonal struts from squad stock parts, but with configurable side count and in conjunction with procedural girders.

With the EditorExtensions mod you can go to any symmetry count you ever need.

The truss thing is what I thought too :D

well I figure that for simplicity's sake it should be limited to default, but if its an easy tweak to do then sure, I'm just thinking of ways to make this mod a totally standalone module that has several little add-ons that make it totally compatible with other mods.

Link to comment
Share on other sites

Done with the values for the TAC Life Support Tank resources, so now its just a question of keeping them separate or adding them all together, or I could have one single tank that has many of the options just like the procedural liquid fuel tank, I'll test with tweaked the numbers so that you get more for individual resources and less for combinations, but first things first, I'm going to test how my procedural life support tanks scale with the different TAC values, something tells me they really wont work, lol, but only one way to find out :P)

just note the slight* resource difference from the original mod containers.

Edited by Eggman360
Link to comment
Share on other sites

Here's just a sneak peak at what I've made for compatibility with TAC Life Support as an example, note that the textures can be edited just like normal :D and this is a picture of 2 procedural tanks with a TAC container between to compare size, as the TAC tanks are slightly thinner, this is as close as I could get, as the length below was way too short.

As far as I know the "Is Shielded" tag is from Ferram Aerospace and has not been added by me, it must add that automatically.

This is to show tanks when set to use only one resource (Note the resource volumes):

sR03f8e.png

This is just setting it to generic (Note the resource volumes):

OpvkPPM.png?1

And Here is a set of pictures to show the other possible settings that it can have, remember, all these pictures are from the same part, (Note the resource volumes, and some resources are even paired in a way that makes sense, but paired containers contain half of each resource, except O2 and CO2, as TAC allows the oxygen canister to hold 1920 units for each):

AHYLURB.png

You may realise the weight values, I haven't tweaked these yet, as they are objective tests, as opposed to hard data calculations, as will need to test the tanks during flight to see how the weights measure up.

Edited by Eggman360
Link to comment
Share on other sites

And here's a look at how Kethane measures up, note that the cone in the last picture has had its dimensions set as close as I could make them to the original and procedural Kethane tanks, and its capacity is teasingly close! lol

vCT33Kc.png

What do you think so far?

and I'm really sorry about the picture spam :/ I just couldn't describe it clearly enough I don't think.

Link to comment
Share on other sites

Do you think that I should make one procedural tank for all the life support resources?

or

Several separate ones?

I think one.

The main reason why I have separate tanks is to allow for tech dependent limits - for example fuel tanks are generally a lot larger than RCS tanks. Since this doesn't apply, then leave it all as one tank. You might want to default to a different texture set for life support tanks, but the texture shouldn't be tied to the tank type.

As you said, you can have combo tanks, but you can't alter the ratios between the sub-tanks. I could have alterable ratios as a feature in the future I guess. You're really getting into real fuels territory with that

Some mod makers DONT really balance the size of the tanks with the amount of resources inside when comparing tank storage size and volume

They don't do this with stock either! Sometimes the fuel / dry mass ratio works better than the fuel / volume ratio. You can use either (or even both) in the config file. I deliberately haven't implemented non-linear scaling - this would mean that it would be more mass effective to have a bunch of small tanks that add up to a large one if you get what I mean.

Link to comment
Share on other sites

Is there any way to remove the cap on the thrust SRB's put out? I like making rocket replicas but these limits don't let me.

If you make a wider bottomed SRB, then you can have more thrust. (The limit is there to stop the bell being bigger than the base)

If you're really keen you can fiddle with the config file - find the thrustScaleFactor and change it to a bigger number. That way the bell will be smaller for the same thrust.

The other thing you could fiddle with is bellChokeDiameter. This is set to 50% of the real value so the bell is max half the diameter of the base. If you double it you can get four times more thrust as the thrust / scaling has a sqrt scale factor. Be aware you may get overheats and explosions with too much thrust per mass of tank.

Edited by swamp_ig
Link to comment
Share on other sites

I have also been thinking about "bent cylinders" where the top and bottom attachment nodes/surfaces are at a user defined angle - let's say in increments of 5 degrees. Imagine the possibilities! Ofcourse the top and bottom diameter would be fully adjustable. It would also be cool if you could adjust where the part bends along its length.

You're basically talking about a torus section.

Not planning on making a torus part at this stage - the use case is too narrow. I might consider this at some stage, but there's bigger fish to fry :)

Link to comment
Share on other sites

I think one.

The main reason why I have separate tanks is to allow for tech dependent limits - for example fuel tanks are generally a lot larger than RCS tanks. Since this doesn't apply, then leave it all as one tank. You might want to default to a different texture set for life support tanks, but the texture shouldn't be tied to the tank type.

As you said, you can have combo tanks, but you can't alter the ratios between the sub-tanks. I could have alterable ratios as a feature in the future I guess. You're really getting into real fuels territory with that

They don't do this with stock either! Sometimes the fuel / dry mass ratio works better than the fuel / volume ratio. You can use either (or even both) in the config file. I deliberately haven't implemented non-linear scaling - this would mean that it would be more mass effective to have a bunch of small tanks that add up to a large one if you get what I mean.

Thank you for granting permission, I'll open a thread and have the first post linking to here if you'd add a link to mine once it's looking good so I don't clutter and spam this thread with photo's and feedback :)

Yeah I though that too so I made it into one procedural tank per mod, one for TAC (as seen in the pictures on the previous page), one for Kethane (only needs one right now though lol) and today I'll roll the ones I've made for interstellar and extra-planetary launch pads into a part for each

I don't get what you mean by being unable to alter the ratios between sub tanks, I think that works fine :S

One issue I'm having is that I can set the required value for any tank and even sub tank fine, and have a perfect ratio between them, but I can't seem to find a way to say "yes this kethane tank can hold 16000 kethane...but I need it to start empty for balance issues.

We could debate that seeing as you still have to get it into orbit and the planet Kerbin MIGHT have industries that can supply Kethane (I mean...no-one asks where does all this SRB/jet/rocket fuel come from?? Lol) but the original mods like kethane and interstellar have resources that need to be gathered, manufactured, synthesised or just left for really really long times to decay (like Tritium takes years in game to decay into Helium-3) but with these tanks I can't find a way to tell them to start empty with certain resources :/

Edited by Eggman360
Link to comment
Share on other sites

I don't get what you mean by being unable to alter the ratios between sub tanks, I think that works fine :S

The liquid tanks for example have a 9:3 ratio (or something like that) between liquid:ox when full.

For your TAC tanks you might want to have different ratios of one resource to another - like waste to o2 or something... don't know.

One issue I'm having is that I can set the required value for any tank and even sub tank fine, and have a perfect ratio between them, but I can't seem to find a way to say "yes this kethane tank can hold 16000 kethane...but I need it to start empty for balance issues.

Why don't you add a flag forceEmpty=true in the RESOURCE config part. I'll make sure the next version honours this in the VAB.

Link to comment
Share on other sites

The liquid tanks for example have a 9:3 ratio (or something like that) between liquid:ox when full.

For your TAC tanks you might want to have different ratios of one resource to another - like waste to o2 or something... don't know.

Why don't you add a flag forceEmpty=true in the RESOURCE config part. I'll make sure the next version honours this in the VAB.

The procedural TAC values are what they should be :) the large O2 life support container in that mod holds 1920 of both O2 and CO2, but I made the tanks holding two items have the same overall volume as a large container, but 50% is food and 50% is water, and 50% of 1920 is 960 :) so that's why some of the ones I've made hold; One resource=1920, twin packs (except O2+CO2 combo)=960 and the generic pack=640, as the large generic tank in TAC Life Support holds 640 of each resource :)

Ah ok I'll try that flag and get back to you :) and that would be incredible :D

I recall earlier you said that vanilla fuel tanks aren't really balanced with each other but using the data I collected the really seem to be, if you want me to send you the perT values in the TankLiquid.config to get the results pictured below just ask :)

The Fuel:Oxidiser ratio is 9:11 in the tanks

Yet the ratio they BURN Fuel:Oxidiser at is 11:9.

So its balanced (that's why all the rocket engines always burn through 100% of the resources in vanilla KSP)

They match up VERY closely with the smaller tank:

oH8XGR9.png

But You'll see the numbers match up exactly with the large Rockomax tank:

YYD07dh.png

EDIT:

oh, and this is a picture showing the individual resource counts (note the volumes are EXACTLY twice that of the originals :)

(Twice as much Liquid fuel=2x1440=2880)

(Twice as much Oxidiser=2x1760=3520)

gbToWWo.png

Edited by Eggman360
Link to comment
Share on other sites

Ah ok I'll try that flag and get back to you :) and that would be incredible :D

Just put it there for the future. At the moment it won't work of course :)

I recall earlier you said that vanilla fuel tanks aren't really balanced with each other but using the data I collected the really seem to be

This is true for most, but not for the oscar-B or the toroidal - they have a poorer payload fraction.

The fuel per volume is more variable, but that's less of a big deal.

The RCS tanks are all over the place, and the liquid fuel tanks (as in fuselage) only give you a slight advantage over a mixed tank which is drained of ox.

Have a look at this spreadsheet for details: https://github.com/Swamp-Ig/ProceduralParts/blob/master/Source/StockParts.xlsx

Link to comment
Share on other sites

Just put it there for the future. At the moment it won't work of course :)

This is true for most, but not for the oscar-B or the toroidal - they have a poorer payload fraction.

The fuel per volume is more variable, but that's less of a big deal.

The RCS tanks are all over the place, and the liquid fuel tanks (as in fuselage) only give you a slight advantage over a mixed tank which is drained of ox.

Have a look at this spreadsheet for details: https://github.com/Swamp-Ig/ProceduralParts/blob/master/Source/StockParts.xlsx

Well then we should have this stand out, and make sure that the parts in this mod follow or even set a standard, if the jet fuel tanks volume to contents is wrong then we should make the procedural ones right :)

Its still pretty close with the toroidal, yet the only issue is that the toroidal is a hollow ring, so as far as physical usable VAB/SPH build space on the vessel is concerned its close, the toroidal part is calculated as a donut tank, so it should have less than the procedural one of the same overall build profile "size" :)

The mathematical model I've build is pretty strong :)

xcCRY9c.png

Oscar-B seems close enough too :)

UdKJceK.png

Edited by Eggman360
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...