Difference between revisions of "Parts/Engine/rapierEngine/rapierEngine.cfg"

From Kerbal Space Program Wiki
Jump to: navigation, search
m (*update to 1.0.4;)
m (Update config)
 
Line 5: Line 5:
 
author = C. Jenkins
 
author = C. Jenkins
 
mesh = rapier.mu
 
mesh = rapier.mu
 +
MODEL
 +
{
 +
model = Squad/Parts/Engine/rapierEngine/rapier
 +
}
 +
//MODEL
 +
//{
 +
// model = Squad/Parts/Engine/jetEngines/turbineInside
 +
// position = 0.0, 0.741545, 0.0
 +
// scale = 0.8, 0.8, 0.8
 +
//}
 
scale = 1.0
 
scale = 1.0
 
node_stack_top = 0.0,0.741545,0.0 , 0.0, 1.0, 0.0
 
node_stack_top = 0.0,0.741545,0.0 , 0.0, 1.0, 0.0
Line 10: Line 20:
 
CoMOffset = 0.0, 2.6, 0.0
 
CoMOffset = 0.0, 2.6, 0.0
 
mass = 2.0
 
mass = 2.0
// heatConductivity = 0.06 // half default
+
heatConductivity = 0.06 // half default
 
skinInternalConductionMult = 4.0
 
skinInternalConductionMult = 4.0
 
emissiveConstant = 0.8 // engine nozzles are good at radiating.
 
emissiveConstant = 0.8 // engine nozzles are good at radiating.
Line 24: Line 34:
 
category = Engine
 
category = Engine
 
subcategory = 0
 
subcategory = 0
title = CR-7 R.A.P.I.E.R. Engine
+
title = #autoLOC_500469 //#autoLOC_500469 = CR-7 R.A.P.I.E.R. Engine
manufacturer = C7 Aerospace Division and Rockomax Conglomerate
+
manufacturer = #autoLOC_501640 //#autoLOC_501640 = C7 Aerospace Division and Rockomax Conglomerate
description = The R.A.P.I.E.R. (Reactive Alternate-Propellant Intelligent Engine for Rockets) is a joint venture between C7 Aerospace and the Rockomax Conglomerate. Designed to fill a gap in the design requirements for sustainable single stage to orbit aircraft, this engine combines the best of rocket and air-breathing thrust technology.
+
description = #autoLOC_500470 //#autoLOC_500470 = The R.A.P.I.E.R. (Reactive Alternate-Propellant Intelligent Engine for Rockets) is a joint venture between C7 Aerospace and the Rockomax Conglomerate. Designed to fill a gap in the design requirements for sustainable single stage to orbit aircraft, this engine combines the best of rocket and air-breathing thrust technology.
 
attachRules = 1,0,1,1,0
 
attachRules = 1,0,1,1,0
 
bulkheadProfiles = size1
 
bulkheadProfiles = size1
 +
tags = #autoLOC_500471 //#autoLOC_500471 = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto
 
EFFECTS
 
EFFECTS
 
{
 
{
Line 151: Line 162:
 
name = MultiModeEngine
 
name = MultiModeEngine
 
primaryEngineID = AirBreathing
 
primaryEngineID = AirBreathing
 +
primaryEngineModeDisplayName = #autoLOC_6001897 //#autoLOC_6001897 = AirBreathing
 
secondaryEngineID = ClosedCycle
 
secondaryEngineID = ClosedCycle
 +
secondaryEngineModeDisplayName = #autoLOC_6001898 //#autoLOC_6001898 = ClosedCycle
 
}
 
}
 
MODULE
 
MODULE
Line 173: Line 186:
 
engineSpoolTime = 2.0
 
engineSpoolTime = 2.0
 
EngineType = Turbine
 
EngineType = Turbine
 +
exhaustDamageMultiplier = 50
 +
exhaustDamageDistanceOffset = 0.19
 +
clampPropReceived = True
 +
PROPELLANT
 +
{
 +
name = IntakeAir
 +
ignoreForIsp = True
 +
ratio = 6
 +
}
 
PROPELLANT
 
PROPELLANT
 
{
 
{
 
name = LiquidFuel
 
name = LiquidFuel
resourceFlowMode = STAGE_PRIORITY_FLOW
+
resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 
ratio = 1
 
ratio = 1
 
DrawGauge = True
 
DrawGauge = True
}
 
PROPELLANT
 
{
 
name = IntakeAir
 
ignoreForIsp = True
 
ratio = 6
 
 
}
 
}
 
atmosphereCurve
 
atmosphereCurve
Line 194: Line 210:
 
useVelCurve = True
 
useVelCurve = True
 
useAtmCurve = True
 
useAtmCurve = True
// no mach limit
+
flowMultCap = 3.0
 +
// no mach (heat) limit
 
velCurve
 
velCurve
 
{
 
{
Line 229: Line 246:
 
fxOffset = 0, 0, 0.25
 
fxOffset = 0, 0, 0.25
 
EngineType = LiquidFuel
 
EngineType = LiquidFuel
 +
exhaustDamageDistanceOffset = 0.19
 
PROPELLANT
 
PROPELLANT
 
{
 
{
 
name = LiquidFuel
 
name = LiquidFuel
resourceFlowMode = STAGE_PRIORITY_FLOW
+
resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 
ratio = 0.9
 
ratio = 0.9
 
DrawGauge = True
 
DrawGauge = True
Line 239: Line 257:
 
{
 
{
 
name = Oxidizer
 
name = Oxidizer
resourceFlowMode = STAGE_PRIORITY_FLOW
+
resourceFlowMode = STAGE_STACK_FLOW_BALANCE
 
ratio = 1.1
 
ratio = 1.1
 
}
 
}
Line 251: Line 269:
 
MODULE
 
MODULE
 
{
 
{
name = ModuleAnimateHeat
+
name = FXModuleAnimateThrottle
ThermalAnim = HeatAnimationEmissiveRapier
+
animationName = HeatAnimationEmissiveRapier
 +
responseSpeed = 0.001
 +
dependOnEngineState = True
 +
dependOnThrottle = True
 +
preferMultiMode = True // bind to the parent multimode module, not the actual engines.
 
}
 
}
 
MODULE
 
MODULE
Line 263: Line 285:
 
{
 
{
 
name = ModuleTestSubject
 
name = ModuleTestSubject
environments = 15
 
 
useStaging = True
 
useStaging = True
 
useEvent = True
 
useEvent = True
 +
situationMask = 127
 +
CONSTRAINT
 +
{
 +
type = REPEATABILITY
 +
value = ALWAYS
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = REPEATABILITY
 +
value = BODYANDSITUATION
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = REPEATABILITY
 +
value = ONCEPERPART
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = GT
 +
value = 4000
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = LT
 +
value = 8000
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = GT
 +
value = 2000
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = LT
 +
value = 4000
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = GT
 +
value = 1000
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDEENV
 +
test = LT
 +
value = 2000
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDE
 +
test = GT
 +
value = 0 // this just registers altitude as something to care about
 +
situationMask = 8
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDE
 +
test = LT
 +
value = 300000
 +
situationMask = 16
 +
body = _NotSun
 +
}
 +
CONSTRAINT
 +
{
 +
type = ALTITUDE
 +
test = LT
 +
value = 600000
 +
situationMask = 32
 +
body = _NotSun
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = GT
 +
value = 0
 +
situationMask = 8
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = LT
 +
value = 600
 +
situationMask = 8
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = GT
 +
value = 300
 +
situationMask = 8
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = LT
 +
value = 1200
 +
situationMask = 8
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = GT
 +
value = 600
 +
situationMask = 8
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEED
 +
test = LT
 +
value = 2500
 +
situationMask = 8
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = LT
 +
value = 200
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = GT
 +
value = 100
 +
prestige = Trivial
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = LT
 +
value = 100
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = GT
 +
value = 50
 +
prestige = Significant
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = LT
 +
value = 50
 +
prestige = Exceptional
 +
}
 +
CONSTRAINT
 +
{
 +
type = SPEEDENV
 +
test = GT
 +
value = 20
 +
prestige = Exceptional
 +
}
 
}
 
}
 
MODULE
 
MODULE
Line 286: Line 481:
 
}
 
}
 
}
 
}
 
 
}}
 
}}

Latest revision as of 16:09, 10 October 2024

This is the configuration file for CR-7 R.A.P.I.E.R. Engine.
PART
{
	name = RAPIER
	module = Part
	author = C. Jenkins
	mesh = rapier.mu
	MODEL
	{
		model = Squad/Parts/Engine/rapierEngine/rapier
	}
	//MODEL
	//{
	//	model = Squad/Parts/Engine/jetEngines/turbineInside
	//	position = 0.0, 0.741545, 0.0
	//	scale = 0.8, 0.8, 0.8
	//}
	scale = 1.0
	node_stack_top = 0.0,0.741545,0.0 , 0.0, 1.0, 0.0
	node_stack_bottom = 0.0,-0.2048244, 0.0, 0.0, -1.0, 0.0
	CoMOffset = 0.0, 2.6, 0.0
	mass = 2.0
	heatConductivity = 0.06 // half default
	skinInternalConductionMult = 4.0
	emissiveConstant = 0.8 // engine nozzles are good at radiating.
	dragModelType = default
	maximum_drag = 0.2
	minimum_drag = 0.2
	angularDrag = 2
	crashTolerance = 20
	maxTemp = 2000 // = 3600
	TechRequired = aerospaceTech
	entryCost = 35000
	cost = 6000
	category = Engine
	subcategory = 0
	title = #autoLOC_500469 //#autoLOC_500469 = CR-7 R.A.P.I.E.R. Engine
	manufacturer = #autoLOC_501640 //#autoLOC_501640 = C7 Aerospace Division and Rockomax Conglomerate
	description = #autoLOC_500470 //#autoLOC_500470 = The R.A.P.I.E.R. (Reactive Alternate-Propellant Intelligent Engine for Rockets) is a joint venture between C7 Aerospace and the Rockomax Conglomerate. Designed to fill a gap in the design requirements for sustainable single stage to orbit aircraft, this engine combines the best of rocket and air-breathing thrust technology.
	attachRules = 1,0,1,1,0
	bulkheadProfiles = size1
	tags = #autoLOC_500471 //#autoLOC_500471 = aircraft ascent closed cycle dual fuel hybrid jet liquid main mode plane propuls rapier rocket ssto
	EFFECTS
	{
		running_closed
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_spurts
				volume = 0.0 0.0
				volume = 1.0 1.0
				pitch = 0.0 0.2
				pitch = 1.0 1.0
				loop = true
			}
			PREFAB_PARTICLE
			{
				prefabName = fx_smokeTrail_aeroSpike
				transformName = smokePoint
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.25
				emission = 1.0 1.25
				speed = 0.0 0.25
				speed = 1.0 1.0
				localOffset = 0, 0, 1
			}
			MODEL_MULTI_PARTICLE
			{
				modelName = Squad/FX/shockExhaust_blue_small
				transformName = thrustTransform
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.25
				emission = 1.0 1.25
				speed = 0.0 0.5
				speed = 1.0 1.2
			}
		}
		power_open
		{
			AUDIO
			{
				channel = Ship
				clip = sound_rocket_spurts
				volume = 0.0 0.0
				volume = 0.05 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/shockExhaust_red_small
				transformName = thrustTransform
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.25
				emission = 1.0 1.25
				speed = 0.0 0.5
				speed = 1.0 1.2
			}
		}
		running_open
		{
			AUDIO
			{
				channel = Ship
				clip = sound_jet_deep
				volume = 0.0 0.0
				volume = 0.05 0.6
				volume = 1.0 1.0
				pitch = 0.0 0.7
				pitch = 1.0 1.4
				loop = true
			}
			PREFAB_PARTICLE
			{
				prefabName = fx_smokeTrail_aeroSpike
				transformName = smokePoint
				emission = 0.0 0.0
				emission = 0.05 0.0
				emission = 0.075 0.25
				emission = 1.0 1.25
				speed = 0.0 0.25
				speed = 1.0 1.0
				localOffset = 0, 0, 1
			}
		}
		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 = smokePoint
				oneShot = true
			}
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}
	}
	MODULE
	{
		name = MultiModeEngine
		primaryEngineID = AirBreathing
		primaryEngineModeDisplayName = #autoLOC_6001897 //#autoLOC_6001897 = AirBreathing
		secondaryEngineID = ClosedCycle
		secondaryEngineModeDisplayName = #autoLOC_6001898 //#autoLOC_6001898 = ClosedCycle
	}
	MODULE
	{
		name = ModuleEnginesFX
		engineID = AirBreathing
		powerEffectName = power_open
		//runningEffectName = running_open
		thrustVectorTransformName = thrustTransform
		exhaustDamage = True
		ignitionThreshold = 0.33
		minThrust = 0
		maxThrust = 105
		heatProduction = 60
		useEngineResponseTime = True
		engineAccelerationSpeed = 0.2
		engineDecelerationSpeed = 0.35
		useVelocityCurve = False		
		spoolEffectName = running_open
		engineSpoolIdle = 0.05
		engineSpoolTime = 2.0
		EngineType = Turbine
		exhaustDamageMultiplier = 50
		exhaustDamageDistanceOffset = 0.19
		clampPropReceived = True
		PROPELLANT
		{
			name = IntakeAir
			ignoreForIsp = True
			ratio = 6
		}
		PROPELLANT
		{
			name = LiquidFuel
			resourceFlowMode = STAGE_STACK_FLOW_BALANCE
			ratio = 1
			DrawGauge = True
		}
		atmosphereCurve
		{
			key = 0 3200 0 0
		}
		// Jet params
		atmChangeFlow = True
		useVelCurve = True
		useAtmCurve = True
		flowMultCap = 3.0
		// no mach (heat) limit
		velCurve
		{
			key = 0 1 0 0.08333334
			key = 0.2 0.98 0.42074 0.42074
			key = 0.7 1.8 2.290406 2.290406
			key = 1.4 4.00 3.887193 3.887193
			key = 3.75 8.5 0 0
			key = 4.5 7.3 -2.831749 -2.831749
			key = 5.5 3 -5.260566 -5.260566
			key = 6 0 -0.02420209 0
		}
		atmCurve
		{
			// higher thrust at altitude than even TRJ
			key = 0 0 0 0
			key = 0.018 0.09 7.914787 7.914787
			key = 0.08 0.3 1.051923 1.051923
			key = 0.35 0.5 0.3927226 0.3927226
			key = 1 1 1.055097 0
		}
	}
	MODULE
	{
		name = ModuleEnginesFX
		engineID = ClosedCycle
		runningEffectName = running_closed
		thrustVectorTransformName = thrustTransform
		exhaustDamage = True
		ignitionThreshold = 0.1
		minThrust = 0
		maxThrust = 180
		heatProduction = 133
		fxOffset = 0, 0, 0.25
		EngineType = LiquidFuel
		exhaustDamageDistanceOffset = 0.19
		PROPELLANT
		{
			name = LiquidFuel
			resourceFlowMode = STAGE_STACK_FLOW_BALANCE
			ratio = 0.9
			DrawGauge = True
		}
		PROPELLANT
		{
			name = Oxidizer
			resourceFlowMode = STAGE_STACK_FLOW_BALANCE
			ratio = 1.1
		}
		atmosphereCurve
		{
			key = 0 305
			key = 1 275
			key = 9 0.001
		}
	}
	MODULE
	{
		name = FXModuleAnimateThrottle
		animationName = HeatAnimationEmissiveRapier
		responseSpeed = 0.001
		dependOnEngineState = True
		dependOnThrottle = True
		preferMultiMode = True // bind to the parent multimode module, not the actual engines.
	}
	MODULE
	{
		name = ModuleGimbal
		gimbalTransformName = obj_gimbal
		gimbalRange = 3
	}
	MODULE
	{
		name = ModuleTestSubject
		useStaging = True
		useEvent = True
		situationMask = 127
		CONSTRAINT
		{
			type = REPEATABILITY
			value = ALWAYS
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = REPEATABILITY
			value = BODYANDSITUATION
			prestige = Significant
		}
		CONSTRAINT
		{
			type = REPEATABILITY
			value = ONCEPERPART
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = GT
			value = 4000
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = LT
			value = 8000
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = GT
			value = 2000
			prestige = Significant
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = LT
			value = 4000
			prestige = Significant
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = GT
			value = 1000
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = ALTITUDEENV
			test = LT
			value = 2000
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = ALTITUDE
			test = GT
			value = 0 // this just registers altitude as something to care about
			situationMask = 8
		}
		CONSTRAINT
		{
			type = ALTITUDE
			test = LT
			value = 300000
			situationMask = 16
			body = _NotSun
		}
		CONSTRAINT
		{
			type = ALTITUDE
			test = LT
			value = 600000
			situationMask = 32
			body = _NotSun
		}
		CONSTRAINT
		{
			type = SPEED
			test = GT
			value = 0
			situationMask = 8
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = SPEED
			test = LT
			value = 600
			situationMask = 8
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = SPEED
			test = GT
			value = 300
			situationMask = 8
			prestige = Significant
		}
		CONSTRAINT
		{
			type = SPEED
			test = LT
			value = 1200
			situationMask = 8
			prestige = Significant
		}
		CONSTRAINT
		{
			type = SPEED
			test = GT
			value = 600
			situationMask = 8
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = SPEED
			test = LT
			value = 2500
			situationMask = 8
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = LT
			value = 200
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = GT
			value = 100
			prestige = Trivial
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = LT
			value = 100
			prestige = Significant
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = GT
			value = 50
			prestige = Significant
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = LT
			value = 50
			prestige = Exceptional
		}
		CONSTRAINT
		{
			type = SPEEDENV
			test = GT
			value = 20
			prestige = Exceptional
		}
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 1
		fxMax = 0.5
		maxDistance = 20
		falloff = 2
		thrustTransformName = thrustTransform
	}
	MODULE
	{
		name = ModuleSurfaceFX
		thrustProviderModuleIndex = 2
		fxMax = 0.6
		maxDistance = 30
		falloff = 1.6
		thrustTransformName = thrustTransform
	}
}