UbuntuLinuxKing

How to make multi-mode engine? [1.3]

Recommended Posts

So,

I'm attempting to combine two engines in my mod into one with a mode for each engine, like the Afterburning Turbofan. However, I'm confused at what I have to do, even after looking into stock CFGs with multiple modes. Can anyone help me with this?

Thanks!

  • Like 1

Share this post


Link to post
Share on other sites

I found this in the R.A.P.I.E.R. engine code:

MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = #autoLOC_6001897 //#autoLOC_6001897 = AirBreathing
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = #autoLOC_6001898 //#autoLOC_6001898 = ClosedCycle
	}

 

  • Like 1

Share this post


Link to post
Share on other sites

Start with a full copy of the config for one of the working engines in game, then slowly add in your changes and customizations Until you have what you want.

  • Like 1

Share this post


Link to post
Share on other sites
On 10/20/2017 at 4:55 PM, linuxgurugamer said:

Start with a full copy of the config for one of the working engines in game, then slowly add in your changes and customizations Until you have what you want.

I can't do that, though - I've already set up all the animations for my engine in my original CFG. I tried copy-pasting some of the stuff in the Turbofan CFG, but the only thing that changed was that a "switch mode" button appeared on the rightclick menu. It doesn't do anything, unfortunately.

  • Like 1

Share this post


Link to post
Share on other sites
9 hours ago, UbuntuLinuxKing said:

I can't do that, though - I've already set up all the animations for my engine in my original CFG. I tried copy-pasting some of the stuff in the Turbofan CFG, but the only thing that changed was that a "switch mode" button appeared on the rightclick menu. It doesn't do anything, unfortunately.

Post config file for your engine here.

  • Like 2

Share this post


Link to post
Share on other sites

 

7 hours ago, Judicator81 said:

Post config file for your engine here.

Here you go:

PART
{
	name = lkermanDrive2

module = Part
author = TD (Modified by Wheatley13)

// --- asset parameters ---
mesh = NewModel
rescaleFactor = 0.5
scale = 1.0
	node_stack_top = 0.0, 1.5, 0.0, 0.0, 1.0, 0.0, 2
	node_stack_bottom = 0.0, -1.5, 0.0, 0.0, -1.0, 0.0, 2

	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
		flameout
		{
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustSparks_flameout_2
				transformName = Thrust
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}

	TechRequired = nuclearPropulsion
	entryCost = 500
	cost = 50000
	category = Engine
	subcategory = 0
	title = Kerman Drive (2.5m)
	manufacturer = Kerman Drive Technologies
	description = The Kerman Drive is a fusion drive with incredible power AND efficiency. Scientists say it works by fusing Keuterium and Kritium to create plasma, which is then accelerated out of the craft. We personally think it's just witchcraft, but either way it's great for jetting around the solar system. It has two modes: Low-G and High-G. Low-G is limited to 5000kn, while High-G unlocks the drive and allows for up to 20000kn of thrust. KDT is not liable for any damages sustained from crushing g-forces.
	attachRules = 1,0,1,1,0

// --- standard part parameters ---
mass = 6.8
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 1000
breakingForce = 120
breakingTorque = 120
maxTemp = 1000000000
stagingIcon = LIQUID_ENGINE
stageOffset = 1
childStageOffset = 1
bulkheadProfiles = size2
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = LowG
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = HighG
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = AirBreathing
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 5000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = ClosedCycle	
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 20000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

 

Edited by UbuntuLinuxKing
  • Like 1

Share this post


Link to post
Share on other sites
25 minutes ago, UbuntuLinuxKing said:

Here you go:

You have double closing bracket in your config after first "ModuleGimbal", here:

	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

Actually, you don't need two gimbal modules and two SurfaceFX.

 

Here is config with corrections, it should work:

PART
{
	name = lkermanDrive2

module = Part
author = TD (Modified by Wheatley13)

// --- asset parameters ---
mesh = NewModel
rescaleFactor = 0.5
scale = 1.0
	node_stack_top = 0.0, 1.5, 0.0, 0.0, 1.0, 0.0, 2
	node_stack_bottom = 0.0, -1.5, 0.0, 0.0, -1.0, 0.0, 2

	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
		flameout
		{
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustSparks_flameout_2
				transformName = Thrust
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}

	TechRequired = nuclearPropulsion
	entryCost = 500
	cost = 50000
	category = Engine
	subcategory = 0
	title = Kerman Drive (2.5m)
	manufacturer = Kerman Drive Technologies
	description = The Kerman Drive is a fusion drive with incredible power AND efficiency. Scientists say it works by fusing Keuterium and Kritium to create plasma, which is then accelerated out of the craft. We personally think it's just witchcraft, but either way it's great for jetting around the solar system. It has two modes: Low-G and High-G. Low-G is limited to 5000kn, while High-G unlocks the drive and allows for up to 20000kn of thrust. KDT is not liable for any damages sustained from crushing g-forces.
	attachRules = 1,0,1,1,0

// --- standard part parameters ---
mass = 6.8
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 1000
breakingForce = 120
breakingTorque = 120
maxTemp = 1000000000
stagingIcon = LIQUID_ENGINE
stageOffset = 1
childStageOffset = 1
bulkheadProfiles = size2
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = LowG
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = HighG
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = AirBreathing
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 5000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}

	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = ClosedCycle	
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 20000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

 

Also, I have noticed that second engine mode has 4x more thrust, and no other changes comparing to first engine mode. Is this intented?

Edited by Judicator81
P.S. Nervemind, I read a description.

Share this post


Link to post
Share on other sites
30 minutes ago, Judicator81 said:

You have double closing bracket in your config after first "ModuleGimbal", here:


	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

Actually, you don't need two gimbal modules and two SurfaceFX.

 

Here is config with corrections, it should work:


PART
{
	name = lkermanDrive2

module = Part
author = TD (Modified by Wheatley13)

// --- asset parameters ---
mesh = NewModel
rescaleFactor = 0.5
scale = 1.0
	node_stack_top = 0.0, 1.5, 0.0, 0.0, 1.0, 0.0, 2
	node_stack_bottom = 0.0, -1.5, 0.0, 0.0, -1.0, 0.0, 2

	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
		flameout
		{
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustSparks_flameout_2
				transformName = Thrust
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}

	TechRequired = nuclearPropulsion
	entryCost = 500
	cost = 50000
	category = Engine
	subcategory = 0
	title = Kerman Drive (2.5m)
	manufacturer = Kerman Drive Technologies
	description = The Kerman Drive is a fusion drive with incredible power AND efficiency. Scientists say it works by fusing Keuterium and Kritium to create plasma, which is then accelerated out of the craft. We personally think it's just witchcraft, but either way it's great for jetting around the solar system. It has two modes: Low-G and High-G. Low-G is limited to 5000kn, while High-G unlocks the drive and allows for up to 20000kn of thrust. KDT is not liable for any damages sustained from crushing g-forces.
	attachRules = 1,0,1,1,0

// --- standard part parameters ---
mass = 6.8
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 1000
breakingForce = 120
breakingTorque = 120
maxTemp = 1000000000
stagingIcon = LIQUID_ENGINE
stageOffset = 1
childStageOffset = 1
bulkheadProfiles = size2
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = LowG
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = HighG
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = AirBreathing
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 5000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}

	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = ClosedCycle	
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 20000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

 

Also, I have noticed that second engine mode has 4x more thrust, and no other changes comparing to first engine mode. Is this intented?

Yes. It's a Kerman Drive, which is essentially a torch drive for KSP. Or an Epstein drive if you've seen The Expanse. The first mode is a Low-G mode for ensuring your Kerbals aren't reduced to a fine paste by the acceleration. The High-g mode is for when you just feel like getting somewhere fast with a probe and/or crushing some kerbals.

Edited by UbuntuLinuxKing
Capitilization
  • Like 1

Share this post


Link to post
Share on other sites
1 hour ago, UbuntuLinuxKing said:

Yes. It's a Kerman Drive, which is essentially a torch drive for KSP. Or an Epstein drive if you've seen The Expanse. The first mode is a Low-G mode for ensuring your Kerbals aren't reduced to a fine paste by the acceleration. The High-g mode is for when you just feel like getting somewhere fast with a probe and/or crushing some kerbals.

 

2 hours ago, Judicator81 said:

You have double closing bracket in your config after first "ModuleGimbal", here:


	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

Actually, you don't need two gimbal modules and two SurfaceFX.

 

Here is config with corrections, it should work:


PART
{
	name = lkermanDrive2

module = Part
author = TD (Modified by Wheatley13)

// --- asset parameters ---
mesh = NewModel
rescaleFactor = 0.5
scale = 1.0
	node_stack_top = 0.0, 1.5, 0.0, 0.0, 1.0, 0.0, 2
	node_stack_bottom = 0.0, -1.5, 0.0, 0.0, -1.0, 0.0, 2

	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
		flameout
		{
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustSparks_flameout_2
				transformName = Thrust
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}

	TechRequired = nuclearPropulsion
	entryCost = 500
	cost = 50000
	category = Engine
	subcategory = 0
	title = Kerman Drive (2.5m)
	manufacturer = Kerman Drive Technologies
	description = The Kerman Drive is a fusion drive with incredible power AND efficiency. Scientists say it works by fusing Keuterium and Kritium to create plasma, which is then accelerated out of the craft. We personally think it's just witchcraft, but either way it's great for jetting around the solar system. It has two modes: Low-G and High-G. Low-G is limited to 5000kn, while High-G unlocks the drive and allows for up to 20000kn of thrust. KDT is not liable for any damages sustained from crushing g-forces.
	attachRules = 1,0,1,1,0

// --- standard part parameters ---
mass = 6.8
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 1000
breakingForce = 120
breakingTorque = 120
maxTemp = 1000000000
stagingIcon = LIQUID_ENGINE
stageOffset = 1
childStageOffset = 1
bulkheadProfiles = size2
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = LowG
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = HighG
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = AirBreathing
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 5000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}

	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = ClosedCycle	
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 20000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

 

Also, I have noticed that second engine mode has 4x more thrust, and no other changes comparing to first engine mode. Is this intented?

Alright, that worked. Thanks! However, in the primary mode, the engine effects don't show up. It still works, but can you explain to me why the plume and smoke aren't showing up? Thanks!

Share this post


Link to post
Share on other sites
3 hours ago, UbuntuLinuxKing said:

It still works, but can you explain to me why the plume and smoke aren't showing up?

My only guess is second engine mode should have it's own "runningEffectName".

Try this:

PART
{
	name = lkermanDrive2

module = Part
author = TD (Modified by Wheatley13)

// --- asset parameters ---
mesh = NewModel
rescaleFactor = 0.5
scale = 1.0
	node_stack_top = 0.0, 1.5, 0.0, 0.0, 1.0, 0.0, 2
	node_stack_bottom = 0.0, -1.5, 0.0, 0.0, -1.0, 0.0, 2

	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		running_closed_alt
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_hard
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}

			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/ks1_Exhaust
				transformName = Thrust
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.125
				emission = 1.0 0.625
				speed = 0.0 0.3
				speed = 1.0 0.8
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = sound_vent_soft
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
		flameout
		{
			PREFAB_PARTICLE
			{
				prefabName = fx_exhaustSparks_flameout_2
				transformName = Thrust
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}

	TechRequired = nuclearPropulsion
	entryCost = 500
	cost = 50000
	category = Engine
	subcategory = 0
	title = Kerman Drive (2.5m)
	manufacturer = Kerman Drive Technologies
	description = The Kerman Drive is a fusion drive with incredible power AND efficiency. Scientists say it works by fusing Keuterium and Kritium to create plasma, which is then accelerated out of the craft. We personally think it's just witchcraft, but either way it's great for jetting around the solar system. It has two modes: Low-G and High-G. Low-G is limited to 5000kn, while High-G unlocks the drive and allows for up to 20000kn of thrust. KDT is not liable for any damages sustained from crushing g-forces.
	attachRules = 1,0,1,1,0

// --- standard part parameters ---
mass = 6.8
dragModelType = default
maximum_drag = 0.2
minimum_drag = 0.2
angularDrag = 2
crashTolerance = 1000
breakingForce = 120
breakingTorque = 120
maxTemp = 1000000000
stagingIcon = LIQUID_ENGINE
stageOffset = 1
childStageOffset = 1
bulkheadProfiles = size2
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = LowG
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = HighG
	}
	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = AirBreathing
		runningEffectName = running_closed
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 5000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}

	MODULE
	{
		name = ModuleEnginesFX
		thrustVectorTransformName = Thrust
		engineID = ClosedCycle	
		runningEffectName = running_closed_alt
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 20000
		heatProduction = 250
		fxOffset = 0, 0, 1.5
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.98
		
		PROPELLANT
		{
			name = FusionFuel
			ratio = 0.5
			DrawGauge = True
		}
		
		atmosphereCurve
		{
			key = 0 500000
			key = 1 500000
			key = 5 500000
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 0
		fxMax = 0.7
		maxDistance = 37
		falloff = 0.5
		thrustTransformName = Thrust
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = Thrust
		gimbalRange = 2
	}

}

 

Share this post


Link to post
Share on other sites
On 10/24/2017 at 7:42 AM, UbuntuLinuxKing said:

Yes. It's a Kerman Drive, which is essentially a torch drive for KSP. Or an Epstein drive if you've seen The Expanse. The first mode is a Low-G mode for ensuring your Kerbals aren't reduced to a fine paste by the acceleration. The High-g mode is for when you just feel like getting somewhere fast with a probe and/or crushing some kerbals.

Insert these into the LowG mode's ModuleEnginesFX node. This enables th spool effect and gradual, tolerable acceleration. Lower values mean a longer spool time. Examples of the difference in spool time are most stock jet engines with 0.5, and the Panther in Wet mode (which spools the quickest) with 0.8, and the Goliath airplane engine with 0.06 and 0.25 which should take really, really long. My example will have your engine taking roughly a minute to reach full thrust and somewhere less than that to stop thrusting.

useEngineResponseTime = True
engineAccelerationSpeed = 0.15
engineDecelerationSpeed = 0.3

Also, this... :wink:

MODULE
{
	name = MultiModeEngine
	primaryEngineID = AirBreathing //You can safely change this
	primaryEngineModeDisplayName = LowG
	secondaryEngineID = ClosedCycle //You can safely change this too, and in its ModuleEnginesFX node
	secondaryEngineModeDisplayName = HighG
}

MODULE
{
	name = ModuleEnginesFX
	thrustVectorTransformName = Thrust
	engineID = AirBreathing //You can safely change this

 

Edited by JadeOfMaar

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