Not sure how feasible this is, but would it be possible to modify the capName field of PARACHUTE nodes to support multiple mesh names in a comma-delimited list, instead of a single string value?
When a parachute is deployed, the method would look through and eject each mesh in the list, and if the mesh cannot be found, it will be assumed that it was ejected earlier by another parachute.
Rationale / Use case
As part of a revamp of my SDHI SMS mod, I designed a parachute-equipped docking port that uses two PARACHUTE nodes:
the drogue chute drogue_chute_baseTransform, whose corresponding cap of cap_cover is the outermost casing of the docking port
the main chute main_chute_baseTransform, whose corresponding cap of cap_mains is a mesh representing bundled-up bags of mains parachutes
cap_mains is nested inside cap_cover, as it visually makes sense for the outer casing to come off when the drogues are deployed, followed by the inner parachute bags when the mains are deployed. This setup currently works fine for most reentry-to-landing scenarios.
However, if the parachutes are deployed when the altitude is too low to deploy drogues (such as pad aborts with an Escape Tower), which results in the visually jarring situation of main parachutes poking out of the still-intact outer casing.
As an attempted workaround, I tried tuning the deployment altitudes for the drogues to work at lower altitude, but this negates their usefulness at the usual higher altitudes during normal reentry through to landing.
Therefore, if my feature request was implemented, then I can do this:
Essentially, the main chute would optionally eject both the outer casing and the main parachute bag, even if the drogues were never deployed. And if the drogues were deployed earlier, then the mains would eject just the main parachute bag.
Not sure how feasible this is, but would it be possible to modify the
capName
field ofPARACHUTE
nodes to support multiple mesh names in a comma-delimited list, instead of a single string value?When a parachute is deployed, the method would look through and eject each mesh in the list, and if the mesh cannot be found, it will be assumed that it was ejected earlier by another parachute.
Rationale / Use case
As part of a revamp of my SDHI SMS mod, I designed a parachute-equipped docking port that uses two
PARACHUTE
nodes:drogue_chute_baseTransform
, whose corresponding cap ofcap_cover
is the outermost casing of the docking portmain_chute_baseTransform
, whose corresponding cap ofcap_mains
is a mesh representing bundled-up bags of mains parachutescap_mains
is nested insidecap_cover
, as it visually makes sense for the outer casing to come off when the drogues are deployed, followed by the inner parachute bags when the mains are deployed. This setup currently works fine for most reentry-to-landing scenarios.However, if the parachutes are deployed when the altitude is too low to deploy drogues (such as pad aborts with an Escape Tower), which results in the visually jarring situation of main parachutes poking out of the still-intact outer casing.
As an attempted workaround, I tried tuning the deployment altitudes for the drogues to work at lower altitude, but this negates their usefulness at the usual higher altitudes during normal reentry through to landing.
Therefore, if my feature request was implemented, then I can do this:
Essentially, the main chute would optionally eject both the outer casing and the main parachute bag, even if the drogues were never deployed. And if the drogues were deployed earlier, then the mains would eject just the main parachute bag.
@StupidChris, @Starwaster - thoughts?