Jump to content

Is there any way to disable staging for Parachutes?


Recommended Posts

1 hour ago, Alshain said:

EDIT: After some testing, it seems it will work on everything but the LV-N, which needs staging to discard it's shroud through staging.  The others rely on decouplers.  So I could further refine that patch to include more engines using your jettison staging disable and just ignore the LV-N specifically.

The LV-N has an unusual 2-part fitted shroud. It must use some different mechanism

Link to comment
Share on other sites

24 minutes ago, fourfa said:

The LV-N has an unusual 2-part fitted shroud. It must use some different mechanism

Well it's because it uses staging to jettison it, where as the other engine shrouds just attach themselves to the decoupler and jettison when the decoupler does.  I'm not sure I can solve that problem, but I can exclude it from my patch and include the other shrouded engines.  I'm testing it now.

 

Ok, so this patch works for every engine except the NERV, Rapier, and Panther.

// Add staging control to engines
// Author: Alshain
@PART[*]:HAS[@MODULE[ModuleEngines*],!MODULE[ModuleJettison],!MODULE[MultiModeEngine]]:FINAL
{
	@MODULE[ModuleEngines*]
	{
		stagingEnableText = Engine: Enable Staging
		stagingDisableText = Engine: Disable Staging
		stagingToggleEnabledEditor = true
	}
}

@PART[*]:HAS[@MODULE[ModuleEngines*],@MODULE[ModuleJettison]:HAS[#isFairing[True]]],@PART[turboFanSize2]:FINAL
{
	@MODULE[ModuleEngines*]
	{
		stagingEnableText = Engine: Enable Staging
		stagingDisableText = Engine: Disable Staging
		stagingToggleEnabledEditor = true
	}
	
	@MODULE[ModuleJettison]
	{
		stagingEnabled = False
	}
}

 

Edited by Alshain
Link to comment
Share on other sites

Comparing the Mainsail to the LV-N, LV-N has two ModuleJettison entries, and both have isFairing=false

the Mainsail has only one ModuleJettison entry, and has isFairing=true

I wonder if any of these behaviors is the cause of the problem

 

Link to comment
Share on other sites

25 minutes ago, Xyphos said:

Comparing the Mainsail to the LV-N, LV-N has two ModuleJettison entries, and both have isFairing=false

the Mainsail has only one ModuleJettison entry, and has isFairing=true

I wonder if any of these behaviors is the cause of the problem

 

I don't think it is directly linked, no.  It has to do with the manner of jettisoning the LV-N.  The LV-N does have two sides to it's shroud and it ejects them not unlike a clamshell fairing when the engine is staged.  The other shrouds simply slip off then end (there is probably a name for that I do not know) and they release with the decoupler regardless of staging (because the decoupler might not be staged!)

I think what is actually happening is that the icon remains in the stage list provided any one module is using staging (or it thinks it's using staging).  In this case the Engine, and each Jettison module are using staging. Because there are two of them you would have to isolate both Jettison modules and then disable both of them from staging, and doing that prevents the shroud from ejecting properly anyway.

I did use that isFairing entry to build my patch because it was convenient, but the shroud on the Goliath has isFairing = false as well and it doesn't really jettison at all.  That is why in the patch why I had add it back by name. 

I would have preferred to filter out the LV-N by name instead but I couldn't figure out how to do that with Module Manager.  If any one knows, it would be much appreciated and although it would behave the same the script would be tidier and more forward compatible if another engine is added with isFairing=true.

EDIT: Correction, I just discovered if you use a properly oriented decoupler, the Goliath shroud does jettison.  It appears more like the other engine shrouds but doesn't stick to the decoupler like they do.  The good news is my patch doesn't seem to affect its function.

Edited by Alshain
Link to comment
Share on other sites

Personally i feel it is about time for @SQUAD to make every single part optionally stageable.  There are too many situations where i never want something to even show up in the staging such as fairings used as structural elements, any emergency use components like parachutes, escape pods, emergency thrusters (all of that is bound to abort and i dont want any of it in staging menu), all engines on a VTOL craft (staging isnt useful for those craft that need to use control groups anyway and often enable/disable engines during flight), tanks (staging the turret is super annoying when id rather bind turret decouple to action groups).

While we technically "can" get around this by putting everything you dont want stageable in the last stage and rebinding teh stage button to something that isnt easy to press by accident (i have it on insert), id still prefer the option to disable staging on every single stageable component when we deem it necessary or simply more convenient to do so (keep defaults as is, but sometimes people just want to be able to disable staging without resorting to mods)...

Link to comment
Share on other sites

4 minutes ago, Alshain said:

If any one knows, it would be much appreciated

ModuleManager uses "regular expressions" - a written expression to define a search pattern, often used in computer programming. I remember them from my previous career.
the code you're looking for is

@PART[(?!nuclearEngine$)]:HAS[@MODULE[ModuleEngines*]]:FINAL

this simply states "anything that doesn't match this word" - and the $ means "end here" which is required or it'll include the closing parenthesis as part of the word.

Link to comment
Share on other sites

3 minutes ago, Xyphos said:

ModuleManager uses "regular expressions" - a written expression to define a search pattern, often used in computer programming. I remember them from my previous career.
the code you're looking for is


@PART[(?!nuclearEngine$)]:HAS[@MODULE[ModuleEngines*]]:FINAL

this simply states "anything that doesn't match this word" - and the $ means "end here" which is required or it'll include the closing parenthesis as part of the word.

Sweet, I will give that a shot!  Thanks a bunch.

3 minutes ago, panzer1b said:

Personally i feel it is about time for @SQUAD to make every single part optionally stageable.  There are too many situations where i never want something to even show up in the staging such as fairings used as structural elements, any emergency use components like parachutes, escape pods, emergency thrusters (all of that is bound to abort and i dont want any of it in staging menu), all engines on a VTOL craft (staging isnt useful for those craft that need to use control groups anyway and often enable/disable engines during flight), tanks (staging the turret is super annoying when id rather bind turret decouple to action groups).

While we technically "can" get around this by putting everything you dont want stageable in the last stage and rebinding teh stage button to something that isnt easy to press by accident (i have it on insert), id still prefer the option to disable staging on every single stageable component when we deem it necessary or simply more convenient to do so (keep defaults as is, but sometimes people just want to be able to disable staging without resorting to mods)...

I could not agree more. There is no reason not to.  In my little database I even have a section for patches Squad should have already added (in my opinion of course)

Edited by Alshain
Link to comment
Share on other sites

1 minute ago, Xyphos said:

I retract my previous statement, after some testing, it seems that I am wrong. (OOPS!)

Ah, well thanks for trying.  I attempted it as well and it just got thrown out as an error.  I tried several things, really just making educated guesses but nothing panned out.  I wonder if @sarbian isn't too busy with his new job if he could point me in the right direction (trying to exclude a single part by name from a wildcard selection).

Link to comment
Share on other sites

14 minutes ago, Alshain said:

Ah, well thanks for trying.

if at first you don't succeed, try, try again.
I got it to work with the LV-N engines; since LV-N has multiple ModuleJettison and ALL of them have to have staging disabled, the MM entry has to supply an indexer, and it seems indexers also support wildcard

	@MODULE[ModuleJettison],*
	{
		stagingEnabled = false
	}

note the comma and wildcard at the end, that's the indexer.

Link to comment
Share on other sites

8 minutes ago, Xyphos said:

if at first you don't succeed, try, try again.
I got it to work with the LV-N engines; since LV-N has multiple ModuleJettison and ALL of them have to have staging disabled, the MM entry has to supply an indexer, and it seems indexers also support wildcard


	@MODULE[ModuleJettison],*
	{
		stagingEnabled = false
	}

note the comma and wildcard at the end, that's the indexer.

Yeah, I had already tried that, but that wasn't the issue.  The issue is with that patch the shrouds will not jettison when you stage them.

EDIT: Well on second try, it seems to work now.   Hmm, I must have done something wrong in my previous test.

Edited by Alshain
Link to comment
Share on other sites

Ok, so this is what I have now.  It works on all engines, even Multi-mode engines however you have to disable stage on BOTH engine modes for Rapier and Panther.  So Disable staging -> Toggle Mode -> Disable Staging and it works, don't forget to toggle the mode back.  I doubt we will find a way around that.  I'm calling it good, and if it's all right with you guys I put your names on it.

// Add staging control to engines
// Author: Alshain, Xyphos, sebi.zzr
@PART[*]:HAS[@MODULE[ModuleEngines*]]:FINAL
{
	@MODULE[ModuleEngines*],*
	{
		stagingEnableText = Engine: Enable Staging
		stagingDisableText = Engine: Disable Staging
		stagingToggleEnabledEditor = true
	}
	
	@MODULE[ModuleJettison],*
	{
		stagingEnabled = False
	}
}

 

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 year later...
  • 6 years later...

@XyphosThis patch seems to no longer be working in 1.12.5....the button does show up in the advanced tweakable portion of the PAW, but clicking it does not remove any of the engines from the staging sequence. I'm not the best with module manager, do you have any suggestions? (Tested in a clean install with only module manager and this patch)

// Add staging control to engines
// Author: Alshain, Xyphos, sebi.zzr
@PART[*]:HAS[@MODULE[ModuleEngines*]]:FINAL
{
	@MODULE[ModuleEngines*],*
	{
		stagingEnableText = Engine: Enable Staging
		stagingDisableText = Engine: Disable Staging
		stagingToggleEnabledEditor = true
	}
	
	@MODULE[ModuleJettison],*
	{
		stagingEnabled = False
	}
}

 

Link to comment
Share on other sites

  • 1 month later...

I have a couple of work arounds in game for this.  Without having to muck about with coding. 

1. Have backup parachutes. on a different staging. 

2.  Setup your staging so something happens the stage before (fireworks are good for this) ie if you press the space bar and the fireworks goes off you know next is the parachutes :) 

3.  Use a KAL-1000 Controller or 2 and setup a delay to arm the parachutes, set the other KAL to disarm the parachutes. 

I think there is a way to turn off staging with real parachutes too. 

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