// Officially, the Mk2 is the smallest form factor for Warp Tech, but this patch provides some miniaturized Size 1/Size 0 warp tech.

WBIS1WARPTECH_DUMMY
{
	name = WBISize1WarpTech
}
@WBIS1WARPTECH_DUMMY:FOR[WBISize1WarpTech]
{
	%description = I exist
	%WBISize1WarpTechVersion = 1
}

PART
{
	name = wbiS1WarpCore
	module = Part
	author = Angel-125

	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s2WarpCore
	}

	rescaleFactor = 0.5

	node_stack_top = 0.0, 0.9375, 0.0, 0.0, 1.0, 0.0, 1
	node_stack_bottom = 0.0, -0.9375, 0.0, 0.0, -1.0, 0.0, 1
	node_attach = 0.625, 0.0, 0.0, 1.0, 0.0, 0.0, 1

	TechRequired = wbiWarpTech

	category = Engine
	subcategory = 0
	entryCost = 2812500
	cost = 562500

	title = S-1 "Space Quest" Warp Core
	manufacturer = <CLASSIFIED>
	description = This Warp Core provides flight control for faster than light travel thanks in part to its [REDACTED] components. It is powered by gravitic generators and it channels their energy into warp coils that warp space in the desired direction of travel.
	attachRules = 1,1,1,1,1
	mass = 1
	dragModelType = none
	maximum_drag = 0.02
	minimum_drag = 0.02
	angularDrag = 0.2
	stackSymmetry = 2
	crashTolerance = 50
	thermalMassModifier = 8.0
	emissiveConstant = 0.95
	maxTemp = 2000
	explosionPotential = 0.1
	fuelCrossFeed = True
	breakingForce = 500000
	breakingTorque = 500000
	bulkheadProfiles = size1
	tags = cck-Blueshift warp graviolium

	MODULE
	{
		name = WBIResourceTweaker
		resourceName = Graviolium
		tweakEnabledName = CHEAT: Enable Graviolium tweak
		tweakDisabledName = CHEAT: Disable Graviolium tweak
	}

	MODULE
	{
		name = WBIAnimatedTexture
		moduleID = WarpCore
		textureTransformName = warpCorePlasma
		animatedEmissiveTexture = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/WarpPlasma
		minFramesPerSecond = 15
		maxFramesPerSecond = 50
		fadesAtMinThrottle = false
		emissiveFadeTime = 2
	}

	MODULE
	{
		name = WBIModuleGeneratorFX
		ConverterName = Main Power
		moduleID = warpPower
		moduleDescription = Provides power for the warp core.
		StartActionName = Activate Main Power
		StopActionName = Deactivate Main Power
		ToggleActionName = Toggle Main Power

		INPUT_RESOURCE
		{
			ResourceName = Graviolium
			Ratio = 0.002
			FlowMode = STAGE_PRIORITY_FLOW
		}
		INPUT_RESOURCE
		{
			ResourceName = FusionPellets
			Ratio = 0.00005
			FlowMode = STAGE_PRIORITY_FLOW
		}
		OUTPUT_RESOURCE
		{
			ResourceName = GravityWaves
			Ratio = 50
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = wbiElectroPlasma
			Ratio = 1400
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = ElectricCharge
			Ratio = 6
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = StaticCharge
			Ratio = 0.002
			DumpExcess = false
			FlowMode = ALL_VESSEL
		}
		DRAINED_RESOURCE
		{
			ResourceName = GravityWaves
			Ratio = 5
			FlowMode = NO_FLOW
		}
		DRAINED_RESOURCE
		{
			ResourceName = wbiElectroPlasma
			Ratio = 140
		}
	}

	MODULE
	{
		name = WBIWarpEngine
		engineID = warpEngine
		moduleDescription = Enables fater than light travel.
		EngineType = Generic
		exhaustDamage = False
		heatProduction = 0
		fxOffset = 0, 0, 0
		ignitionThreshold = 0.01
		minThrust = 0
		bowShockTransformName = bowShock
		maxThrust = 1

		PROPELLANT
		{
			name = ElectricCharge
			resourceFlowMode = STAGE_PRIORITY_FLOW
			ratio = 1.08
			DrawGauge = True
			minResToLeave = 1.0
		}

		minPlanetaryRadius = 1.0

		warpIgnitionThreshold = 0.25

		planetarySOISpeedCurve
		{
			key = 1 0.1
			key = 0.5 0.05
			key = 0.25 0.01
			key = 0.1 0.005
		}

		warpCurve
		{
			key = 1 0
			key = 10 1
			key = 30 2
			key = 50 3
			key = 80 4
			key = 130 5
			key = 210 6
			key = 340 7
			key = 550 10
			key = 890 12
			key = 1440 16
			key = 2330 21
			key = 3770 27
			key = 6100 35
			key = 9870 45
			key = 15970 58
			key = 28540 76
		}

		atmosphereCurve
		{
			key = 0 100
			key = 1 100
		}

		warpPowerGeneratorID = warpPower
		flameoutEffectName = flameout
		powerEffectName = power
		engageEffectName = engage
		disengageEffectName = disengage
		runningEffectName = running
		photonicBoomEffectName = photonicBoom
		engineSpoolTime = 0.05
		textureModuleID = WarpCore
	}

	MODULE:NEEDS[Waterfall]
	{
		name = ModuleWaterfallFX
		engineID = warpEngine
		CONTROLLER
		{
			name = throttle
			linkedTo = throttle
			engineID = warpEngine
			responseRateUp = 0.03
			responseRateDown = 0.2
		}
		TEMPLATE
		{
			// This is the name of the template to use
			templateName = ftlWarpField
			// This field allows you to override the parentTransform name in the EFFECTS contained in the template
			overrideParentTransform = waterfallWarpEffects
			position = 0,0,0
			rotation = 0, 0, 0
			scale = 1, 1, 1
		}
		TEMPLATE
		{
			// This is the name of the template to use
			templateName = ftlWarpBowShock
			position = 0,0,0
			rotation = 0, 0, 0
			scale = 1, 1, 1
		}
	}

	MODULE
	{
		name = ModulePartVariants
		baseVariant = stackMounts

		VARIANT
		{
			name = stackMounts
			displayName = Variant: Stack Mounts
			primaryColor = #3a562a
			secondaryColor = #999999
			sizeGroup = GroupB
			GAMEOBJECTS
			{
				radialMounts = false
				stackMounts = true
			}
			NODES
			{
				node_stack_top = 0.0, 0.9375, 0.0, 0.0, 1.0, 0.0, 1
				node_stack_bottom = 0.0, -0.9375, 0.0, 0.0, -1.0, 0.0, 1
			}
		}
		VARIANT
		{
			name = radialMounts
			displayName = Variant: Radial Mounts
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			GAMEOBJECTS
			{
				radialMounts = true
				stackMounts = false
			}
			NODES
			{
				node_stack_top = 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1
				node_stack_bottom = 0.0, -0.0, 0.0, 0.0, -1.0, 0.0, 1
			}
		}
	}

	RESOURCE
	{
		name = GravityWaves
		amount = 0
		maxAmount = 500
	}

	RESOURCE
	{
		name = wbiElectroPlasma
		amount = 0
		maxAmount = 1400
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 300
	}

	EFFECTS
	{	
		running
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/WarpEngineRunning2
				volume = 0.0 0.0
				volume = 1.0 2.5
				loop = true
			}
		}
		power
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/WarpEnginePower2
				volume = 0.0 0.0
				volume = 0.05 0.1
				volume = 0.1 0.25
				volume = 1.0 1.0
				pitch = 0.0 0.5
				pitch = 1.0 1.15
				loop = true
			}
		}
		engage
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/WarpEngineStart
				volume = 2.0
				pitch = 1.0
				loop = false
			}

		}
		disengage
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/WarpEngineStop
				volume = 2.0
				pitch = 1.0
				loop = false
			}

		}
		flameout
		{
			AUDIO
			{
				channel = Ship
				clip = sound_explosion_low
				volume = 1.0
				pitch = 2.0
				loop = false
			}
		}

		photonicBoom
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/PhotonicBoom
				volume = 2.0
				pitch = 1.0
				loop = false
			}
		}	
	}
}

PART
{
	name = wbiS1GravimetricGenerator
	module = Part
	author = Angel-125

	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s2GravimetricGenerator
	}

	rescaleFactor = 0.5

	node_stack_top = 0.0, 1.40625, 0.0, 0.0, 1.0, 0.0, 1
	node_stack_bottom = 0.0, -1.40625, 0.0, 0.0, -1.0, 0.0, 1
	node_attach = 1.25, 0.0, 0.0, 1.0, 0.0, 0.0, 1

	TechRequired = wbiWarpTech

	category = Engine
	subcategory = 0
	entryCost = 1250000
	cost = 225000

	title = S-1 Gravimetric Displacement Generator
	manufacturer = <CLASSIFIED>
	description = Using a cyclotron instead of a particle accelerator ring gives the gravitic displacement generator a much more compact form than the S-3 Warp Engine's generator, but it comes at the expense of reduced gravity wave output. It uses a combination of components salvaged from [REDACTED] and kerbal-tech to achieve its capabilities.
	attachRules = 1,1,1,1,0
	mass = 1.75
	dragModelType = none
	maximum_drag = 0.02
	minimum_drag = 0.02
	angularDrag = 0.2
	stackSymmetry = 1
	crashTolerance = 20
	thermalMassModifier = 8.0
	emissiveConstant = 0.95
	maxTemp = 2000
	explosionPotential = 0.1
	fuelCrossFeed = True
	breakingForce = 500000
	breakingTorque = 500000
	bulkheadProfiles = size1
	tags = cck-Blueshift warp graviolium

	// Graviolium is normally not a tweakable resource, meaning you have to fill up your tanks while in flight.
	// Without Kerbal Flying Saucers, the only way to get the resource is to mine asteroids.
	// But this cheat lets you tweak the resource in the editor.
	MODULE
	{
		name = WBIResourceTweaker
		resourceName = Graviolium
		tweakEnabledName = CHEAT: Enable Graviolium tweak
		tweakDisabledName = CHEAT: Disable Graviolium tweak
	}

	MODULE
	{
		name = WBIAnimatedTexture

		// ID of the module so we can distinguish between several animated textures in one part.
		// This one is controlled by the warp coil.
		moduleID = FusionTorus

		textureTransformName = fusionTorus
		animatedEmissiveTexture = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/WarpPlasma
		minFramesPerSecond = 50
		maxFramesPerSecond = 50
		emissiveFadeTime = 0.5
	}

	// Generators are just like the stock resource converter, except that this one can control animated textures and/or Effects.
	// This generator produces the GravityWaves that power warp coils by consuming Graviolium and FusionPellets.
	MODULE
	{
		name = WBIModuleGeneratorFX
//		debugMode = true

		// Setting this to the same value as WBIWarpEngine's warpPowerGeneratorID field lets the warp engine control the generator.
		// If the generator controls effects and/or animated textures, then they'll be affected by the throttle updates.
		moduleID = warpPower

		// This also replaces the name shown in the editor.
		ConverterName = Auxilary Power

		// Short description of the module as displayed in the editor.
		moduleDescription = Provides auxilary gravitic power.

		StartActionName = Activate Auxiliary Power
		StopActionName = Deactivate Auxiliary Power
		ToggleActionName = Toggle Auxiliary Power

		// Generators can control animated textures
		// Hint: You can control multiple animated textures in the same part if they share the same moduleID.
		textureModuleID = FusionTorus

		// Generators can control effects too
//		startEffect = effectStart
//		stopEffect = effectStop
		runningEffect = running

		INPUT_RESOURCE
		{
			ResourceName = Graviolium
			Ratio = 0.002
			FlowMode = STAGE_PRIORITY_FLOW
		}
		INPUT_RESOURCE
		{
			ResourceName = FusionPellets
			Ratio = 0.00005
			FlowMode = STAGE_PRIORITY_FLOW
		}
		OUTPUT_RESOURCE
		{
			ResourceName = GravityWaves
			Ratio = 50
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = wbiElectroPlasma
			Ratio = 1400
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = ElectricCharge
			Ratio = 6
			DumpExcess = true
			FlowMode = ALL_VESSEL
		}
		OUTPUT_RESOURCE
		{
			ResourceName = StaticCharge
			Ratio = 0.002
			DumpExcess = false
			FlowMode = ALL_VESSEL
		}
		DRAINED_RESOURCE
		{
			ResourceName = GravityWaves
			Ratio = 5
			FlowMode = NO_FLOW
		}
	}

	RESOURCE
	{
		name = Graviolium
		amount = 0
		maxAmount = 32
	}

	RESOURCE
	{
		name = GravityWaves
		amount = 0
		maxAmount = 500
	}

	RESOURCE
	{
		name = wbiElectroPlasma
		amount = 0
		maxAmount = 1400
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 300
	}

	EFFECTS
	{	
		running
		{
			AUDIO
			{
				channel = Ship
				clip = WildBlueIndustries/Blueshift/FX/FusionReactorRunning
				volume = 0.0 0.0
				volume = 0.05 0.5
				volume = 1.0 0.5
				pitch = 0.0 0.0
				pitch = 0.05 0.5
				pitch = 1.0 0.6
				loop = true
			}
		}
	}
}

PART
{
	name = wbS0MultiCoil
	module = Part
	author = Angel-125

	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s1MultiCoil
	}

	rescaleFactor = 0.5

	node_stack_top = 0.0, 1.875, 0.0, 0.0, 1.0, 0.0, 0
	node_stack_bottom = 0.0, -1.875, 0.0, 0.0, -1.0, 0.0, 0
	node_attach = 0.0, 0.0, 0.625, 0.0, 0.0, -1.0, 1

	TechRequired = wbiGravityWaveApplications

	category = Engine
	subcategory = 0
	entryCost = 292500
	cost = 30000

	title = S-0 Warp Coil (Multi)
	manufacturer = <CLASSIFIED>
	description = This multi-segmented warp coil uses a series of smaller rings to generate the warp capacity needed for faster than light travel.
	attachRules = 1,1,1,1,0
	mass = 0.4
	dragModelType = none
	maximum_drag = 0.02
	minimum_drag = 0.02
	angularDrag = 0.2
	stackSymmetry = 1
	crashTolerance = 20
	thermalMassModifier = 8.0
	emissiveConstant = 0.95
	maxTemp = 2000
	explosionPotential = 0.1
	fuelCrossFeed = True
	breakingForce = 500000
	breakingTorque = 500000
	bulkheadProfiles = size0
	tags = cck-Blueshift warp graviolium

	MODULE
	{
		name = WBIAnimatedTexture

		// ID of the module so we can distinguish between several animated textures in one part.
		// This one is controlled by the warp coil.
		moduleID = WarpCoil

		TEXTURE_TRANSFORMS
		{
			textureTransformName = plasmaCoilSeg2
			textureTransformName = plasmaCoilSeg4
			textureTransformName = plasmaCoilSeg6
			textureTransformName = plasmaCoilSeg8
			textureTransformName = plasmaCoilSeg10
		}

		animatedEmissiveTexture = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/WarpPlasma
		minFramesPerSecond = 15
		maxFramesPerSecond = 50
		fadesAtMinThrottle = true
		emissiveFadeTime = 0.5
	}

	// Warp Coils are simple part modules that don't need the full functionality of a resource converter just to generate warp capacity.
	// Instead, they specify the warp capacity pseudo-resource and the vessel resources needed to produce it.
	// Warp engines themselves will tally up a vessel's total warp capacity and resources needed to generate warp capacity, and
	// handle the resource requests itself. The result is faster game performance.
	MODULE
	{
		name = WBIWarpCoil
//		debugMode = true

		// Warp Coils can control animated textures
		// Hint: You can control multiple animated textures in the same part if they share the same moduleID.
		textureModuleID = WarpCoil

		// Warp coils can control a running effect too.
//		runningEffect =

		// How much warp capacity can the coil produce?
		warpCapacity = 2

		// Warp coils determine how much mass can be displaced during warp travel.
		// Each coil is rated for the number of metric tonnes that it can move. The more coils you have, the more mass that you can move.
		// Alternately, you can add more generators to power the warp coils and "supercharge" them to displace more mass, 
		// but then they'll also wear out faster.
		// A vessel that is more massive than the total displacement will move slower than a vessel that is less massive than the total displacement.
		// Similarly, a coil that is underpowered will displace less mass than one that is overpowered.
		displacementImpulse = 2.5

		// What resources are consumed to produce the warp capacity.
		RESOURCE
		{
			name = GravityWaves
			rate = 2.5
			FlowMode = STAGE_PRIORITY_FLOW
		}	
	}

	MODULE
	{
		name = ModulePartVariants
		baseVariant = Short

		VARIANT
		{
			name = Short
			displayName =  #autoLOC_8005067 //#autoLOC_8005067 = Short
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			mass = 0
			cost = 0
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = true
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = true
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = true
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 0.9375, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -0.9375, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 1
			}
		}


		VARIANT
		{
			name = MediumShort
			displayName =  #autoLOC_8005063 //#autoLOC_8005063 = Medium-Short
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			mass = 0.8
			cost = 90000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = true
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = true
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = true
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 1.875, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -1.875, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 2
			}
		}

		VARIANT
		{
			name = Medium
			displayName =  #autoLOC_8005064 //#autoLOC_8005064 = Medium
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			mass = 1.6
			cost = 150000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = true
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = true
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = true
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 2.8125, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -2.8125, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 3
			}
		}

		VARIANT
		{
			name = MediumLong
			displayName =  #autoLOC_8005065 //#autoLOC_8005065 = Medium-Long
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			mass = 2.4
			cost = 210000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = true
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = true
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = true
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 3.75, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -3.75, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 4
			}
		}

		VARIANT
		{
			name = Long
			displayName =  #autoLOC_8005066 //#autoLOC_8005066 = Long
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			mass = 3.2
			cost = 270000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = true

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = true

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = true

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 4.6875, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -4.6875, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 5
			}
		}

		VARIANT
		{
			name = ShortMid
			displayName =  Short (Midsection)
			primaryColor = #9e7100
			secondaryColor = #3a562a
			sizeGroup = GroupA
			mass = 0
			cost = 0
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = true
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = true
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = true
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 0.9375, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -0.9375, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 1
			}
		}


		VARIANT
		{
			name = MediumShortMid
			displayName =  Medium-Short (Midsection)
			primaryColor = #9e7100
			secondaryColor = #3a562a
			sizeGroup = GroupA
			mass = 0.8
			cost = 90000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = true
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = true
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = true
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 1.875, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -1.875, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 2
			}
		}

		VARIANT
		{
			name = MediumMid
			displayName =  Medium (Midsection)
			primaryColor = #9e7100
			secondaryColor = #3a562a
			sizeGroup = GroupA
			mass = 1.6
			cost = 150000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = true
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = true
				colliderSeg8 = false
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = true
				bodySegMid8 = false
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 2.1825, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -2.1825, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 3
			}
		}

		VARIANT
		{
			name = MediumLongMid
			displayName =  Medium-Long (Midsection)
			primaryColor = #9e7100
			secondaryColor = #3a562a
			sizeGroup = GroupA
			mass = 2.4
			cost = 210000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = true
				plasmaCoilSeg10 = false

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = true
				colliderSeg10 = false

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = true
				bodySegMid10 = false
			}
			NODES
			{
				node_stack_top = 0.0, 3.75, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -3.75, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 4
			}
		}

		VARIANT
		{
			name = LongMid
			displayName =  Long (Midsection)
			primaryColor = #9e7100
			secondaryColor = #3a562a
			sizeGroup = GroupA
			mass = 3.2
			cost = 270000
			GAMEOBJECTS
			{
				plasmaCoilSeg2 = false
				plasmaCoilSeg4 = false
				plasmaCoilSeg6 = false
				plasmaCoilSeg8 = false
				plasmaCoilSeg10 = true

				colliderSeg2 = false
				colliderSeg4 = false
				colliderSeg6 = false
				colliderSeg8 = false
				colliderSeg10 = true

				bodySeg2 = false
				bodySeg4 = false
				bodySeg6 = false
				bodySeg8 = false
				bodySeg10 = false

				bodySegMid2 = false
				bodySegMid4 = false
				bodySegMid6 = false
				bodySegMid8 = false
				bodySegMid10 = true
			}
			NODES
			{
				node_stack_top = 0.0, 4.6875, 0.0, 0.0, 1.0, 0.0, 0
				node_stack_bottom = 0.0, -4.6875, 0.0, 0.0, -1.0, 0.0, 0
			}

			EXTRA_INFO
			{
				// Capacity Multiplier specifies how much to multiply the base capacity
				capacityMultiplier = 5
			}
		}
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 25
	}
}

PART
{
	name = wbiS0WarpCoil
	module = Part
	author = Angel-125

	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s1WarpCoil
	}

	rescaleFactor = 0.5

	node_stack_top = 0.0, 0.9375, 0.0, 0.0, 1.0, 0.0, 0
	node_stack_bottom = 0.0, -0.9375, 0.0, 0.0, -1.0, 0.0, 0
	node_attach = 0.0, 0.0, 0.625, 0.0, 0.0, -1.0, 1

	TechRequired = wbiGravityWaveApplications

	category = Engine
	subcategory = 0
	entryCost = 146250
	cost = 7312.5

	title = S-0 Warp Coil
	manufacturer = <CLASSIFIED>
	description = Instead of one large ring shape, this warp coil uses a series of smaller rings to generate the warp capacity needed for faster than light travel. Its output is considerably less than the S-3 Warp Engine’s warp coil, however.
	attachRules = 1,1,1,1,0
	mass = 0.1
	dragModelType = none
	maximum_drag = 0.02
	minimum_drag = 0.02
	angularDrag = 0.2
	stackSymmetry = 1
	crashTolerance = 20
	thermalMassModifier = 8.0
	emissiveConstant = 0.95
	maxTemp = 2000
	explosionPotential = 0.1
	fuelCrossFeed = True
	breakingForce = 500000
	breakingTorque = 500000
	bulkheadProfiles = size0
	tags = cck-Blueshift warp graviolium

	MODULE
	{
		name = WBIAnimatedTexture
//		debugMode = true

		// ID of the module so we can distinguish between several animated textures in one part.
		// This one is controlled by the warp coil.
		moduleID = WarpCoil

		textureTransformName = plasmaCoil
		animatedEmissiveTexture = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/WarpPlasma
		minFramesPerSecond = 15
		maxFramesPerSecond = 50
		fadesAtMinThrottle = true
		emissiveFadeTime = 0.5
	}

	// Warp Coils are simple part modules that don't need the full functionality of a resource converter just to generate warp capacity.
	// Instead, they specify the warp capacity pseudo-resource and the vessel resources needed to produce it.
	// Warp engines themselves will tally up a vessel's total warp capacity and resources needed to generate warp capacity, and
	// handle the resource requests itself. The result is faster game performance.
	MODULE
	{
		name = WBIWarpCoil
//		debugMode = true

		// Warp Coils can control animated textures
		// Hint: You can control multiple animated textures in the same part if they share the same moduleID.
		textureModuleID = WarpCoil

		// Warp coils can control a running effect too.
//		runningEffect =

		// How much warp capacity can the coil produce?
		warpCapacity = 1

		// Warp coils determine how much mass can be displaced during warp travel.
		// Each coil is rated for the number of metric tonnes that it can move. The more coils you have, the more mass that you can move.
		// Alternately, you can add more generators to power the warp coils and "supercharge" them to displace more mass, 
		// but then they'll also wear out faster.
		// A vessel that is more massive than the total displacement will move slower than a vessel that is less massive than the total displacement.
		// Similarly, a coil that is underpowered will displace less mass than one that is overpowered.
		displacementImpulse = 1.25

		// What resources are consumed to produce the warp capacity.
		RESOURCE
		{
			name = GravityWaves
			rate = 1.25
			FlowMode = STAGE_PRIORITY_FLOW
		}	
	}

	MODULE
	{
		name = ModulePartVariants
		baseVariant = Single

		VARIANT
		{
			name = Single
			displayName = Variant: Single
			primaryColor = #3a562a
			secondaryColor = #9e7100
			sizeGroup = GroupA
			GAMEOBJECTS
			{
				casingSingle = true
				casingMid = false
				casingEndTop = false
				casingEndBtm = false
			}
		}
		VARIANT
		{
			name = Mid
			displayName = Variant: Mid
			primaryColor = #3a562a
			secondaryColor = #999999
			sizeGroup = GroupB
			GAMEOBJECTS
			{
				casingSingle = false
				casingMid = true
				casingEndTop = false
				casingEndBtm = false
			}
		}
		VARIANT
		{
			name = EndTop
			displayName = Variant: End (Top)
			primaryColor = #3a562a
			secondaryColor = #999999
			sizeGroup = GroupC
			GAMEOBJECTS
			{
				casingSingle = false
				casingMid = false
				casingEndTop = true
				casingEndBtm = false
			}
		}
		VARIANT
		{
			name = EndBtm
			displayName = Variant: End (Bottom)
			primaryColor = #3a562a
			secondaryColor = #999999
			sizeGroup = GroupC
			GAMEOBJECTS
			{
				casingSingle = false
				casingMid = false
				casingEndTop = false
				casingEndBtm = true
			}
		}
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 7
	}
}

PART
{
	name = wbiS0Endcap
	module = Part
	author = Angel-125

	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s2Endcap
	}

	rescaleFactor = 0.25

	node_stack_top = 0.0, 0.625, 0.0, 0.0, 1.0, 0.0, 0
	node_stack_bottom = 0.0, -0.625, 0.0, 0.0, -1.0, 0.0, 0
	node_attach = 0.625, 0.0, 0.0, 1.0, 0.0, 0.0, 1

	TechRequired = wbiGravityWaveApplications

	category = FuelTank
	subcategory = 0
	entryCost = 18500
	cost = 3838

	title = S-0 FTL Endcap Tank
	manufacturer = <CLASSIFIED>
	description = Built to boldly go on extended voyages, this tank holds both Fusion Pellets to power fusion reactors, and Graviolium to power FTL engines.
	attachRules = 1,1,1,1,0
	mass = 0.025
	dragModelType = none
	maximum_drag = 0.02
	minimum_drag = 0.02
	angularDrag = 0.2
	crashTolerance = 20
	thermalMassModifier = 8.0
	emissiveConstant = 0.95
	maxTemp = 2000
	explosionPotential = 0.1
	fuelCrossFeed = True
	breakingForce = 500000
	breakingTorque = 500000
	bulkheadProfiles = size2
	tags = cck-Blueshift fueltank propellant rocket graviolium

	// Graviolium is normally not a tweakable resource, meaning you have to fill up your tanks while in flight.
	// Without Kerbal Flying Saucers, the only way to get the resource is to mine asteroids.
	// But this cheat lets you tweak the resource in the editor.
	MODULE
	{
		name = WBIResourceTweaker
		resourceName = Graviolium
		tweakEnabledName = CHEAT: Enable Graviolium tweak
		tweakDisabledName = CHEAT: Disable Graviolium tweak
	}

	MODULE:NEEDS[WBIResources]
	{
		name = WBIOmniStorage

		//In liters, how much can the part store.
		storageVolume = 45

		//Skill required to reconfigure the container.
		reconfigureSkill = ConverterSkill

		//Minimum rank to reconfigure the container.
		reconfigureRank = 1

		//Resource required to reconfigure the container.
		requiredResource = Equipment

		//Amount of the required resource to reconfigure the container.
		requiredAmount = 0

		//Default resources
		DEFAULT_RESOURCE
		{
			name = FusionPellets
			maxAmount = 3
		}

		DEFAULT_RESOURCE
		{
			name = Graviolium
			maxAmount = 6
		}
	}

	RESOURCE
	{
		name = FusionPellets
		amount = 3
		maxAmount = 3
	}

	RESOURCE
	{
		name = Graviolium
		amount = 0
		maxAmount = 6
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 1.25
	}

	MODULE
	{
		name = ModuleCargoPart
		packedVolume = 25
	}
}

PART
{
	name = wbiS0BussardCollector
	module = Part
	author = Angel-125
	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s1BussardCollector
	}
	rescaleFactor = 0.5

	node_stack_bottom = 0, -0.64036, 0, 0, -1, 0, 0
	node_attach = 0, 0.0, 0.625, 0, 0.0, 1.0, 1

	TechRequired = wbiGravityWaveApplications
	entryCost = 12000
	cost = 4000
	category = Utility
	subcategory = 0
	title = S-0 Bussard Collector
	manufacturer = Wild Blue Industries
	description = #LOC_BLUESHIFT_s1BussardDesc // Bussard Kerman originally created this electromagnetic funnel to scoop up stray graviolium particles from the exosphere of celestial bodies, but engineers in the field have modified it to gather all kinds of space dust- sometimes without exploding.
	attachRules = 1,1,1,1,0
	mass = 0.2
	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 = 50
	breakingForce = 500000
	breakingTorque = 500000
	maxTemp = 2000 // = 3600
	bulkheadProfiles = size1
	tags = cck-Blueshift fueltank propellant rocket graviolium

	MODULE
	{
		name = WBIModuleAnimation
//		debugMode = true

		guiIsVisible = false

		animationName = TypeBSpin

		// Flag to loop the animation
		playAnimationLooped = true

		// How many seconds it takes to spool up the animation to full speed.
		spoolTime = 3

		// As the animation slows and stops, this is the minimum playback speed.
		minAnimationSlowdownSpeed = 0.1

		startEventGUIName = #LOC_BLUESHIFT_animationStartSpin // Start Spinning
		endEventGUIName = #LOC_BLUESHIFT_animationStopSpin // Stop Spinning
		actionGUIName = #LOC_BLUESHIFT_animationToggleSpin // Toggle Spinning

		// List of transforms to change the emissive on. When the animation plays,
		// the emissive goes from off to on in spoolTime seconds. When the animation stops,
		// it does the reverse.
		emissiveTransform = innerRotor
		emissiveTransform = outerRotor
		emissiveTransform = innerRotorHub

		// Since the animation can be played in reverse, this is the label text to show on the toggle button.
		playDirectionForwardGUIName = #LOC_BLUESHIFT_bussardToggleDirectionForward // Spin Direction: Forward
		playDirectionReverseGUIName = #LOC_BLUESHIFT_bussardToggleDirectionReverse // Spin Direction: Reverse

		// Optional: If set to true then the animation state syncs with the state of a warp engine.
		// This takes precedence over converter synchronization.
		canSyncWithWarpEngine = true

		// Minimum animation spool rate when an engine controls the animation.
		minEngineSpool = 0.65

		// Optional: If set to true then the animation state syncs with 
		// the state of a resource converter on the part.
		canSyncWithConverter = true
	}

	MODULE
	{
		// Gathers resources while at warp in interplanetary and interstellar space.
		name = WBIWarpSpeedHarvester
//		debugMode = true

		useSpecialistBonus = true
		specialistEfficiencyFactor = 0.2
		specialistBonusBase = 0.05
		experienceEffect = DrillSkill

		// How quickly the harvester can harvest.
		efficiency = 0.125
	}

	MODULE
	{
		name = ModuleResourceHarvester
		HarvesterType = 3 //Exo
		AutoShutdown = false
		Efficiency = 0.025
		ResourceName = Graviolium
		ConverterName = Graviolium Collector
		StartActionName = Start Graviolium Collector
		StopActionName = Stop Graviolium Collector
		ToggleActionName = Toggle Graviolium Collector

		INPUT_RESOURCE
		{
			ResourceName = ElectricCharge
			Ratio = 12.5
		}
	}
}

PART
{
	name = wbiS0PlasmaVent
	module = Part
	author = Angel-125
	MODEL
	{
		model = WildBlueIndustries/Blueshift/Parts/Engine/WarpTech/s1PlasmaVent
	}
	rescaleFactor = 0.5

	node_stack_bottom = 0, 0.96065, 0, 0, 1, 0, 0
	node_attach = 0.0, 0.0, 0.625, 0.0, 0.0, -1.0, 1

	TechRequired = wbiGravityWaveApplications
	entryCost = 4500
	cost = 11000
	category = Utility
	subcategory = 0
	title = S-0 Plasma Vent
	manufacturer = Wild Blue Industries
	description = #LOC_BLUESHIFT_s1PlasmaVentDesc // Warp technologies generate lots of static charge, but this plasma vent helps starships shed the static electricity in deep space by expelling xenon gas.
	attachRules = 1,1,1,1,0
	mass = 0.2
	heatConductivity = 0.06 // half default
	skinInternalConductionMult = 4.0
	emissiveConstant = 0.8 // engine nozzles are good at radiating.
	dragModelType = default
	breakingForce = 20000
	breakingTorque = 20000
	maximum_drag = 0.2
	minimum_drag = 0.2
	angularDrag = 2
	crashTolerance = 50
	maxTemp = 2000 // = 3600
	bulkheadProfiles = size1
	tags = cck-Blueshift xenon plasma

	MODULE
	{
		// Souped up version of WBIResourceDischarger from Kerbal Flying Saucers.
		// It is affected by the warp engines.
		name = WBIResourceVent

		// Optional flag that tells the vent to syncronize with the warp engine's resource consumption multiplier.
		canSyncWithWarpEngine = true

		//List of resources that are discharged. Separate resources by semicolon.
		dischargedResources = StaticCharge

		//Units per second
		landedDischargeRate = 0.1
		//List of resources required to discharge the above resources.
		//Format: ResourceName,Amount;ResourceName,Amount
//		landedResourcesRequired = TBD

		splashedDischargeRate = 0.1
//		spashedResourcesRequired = TBD

		atmosphericDischargeRate = 0.08
//		atmosphereResourcesRequired = TBD

		vacuumDischargeRate = 0.01
		vacuumResourcesRequired = XenonGas,0.001
	}

	MODULE
	{
		name = WBIModuleAnimation
//		debugMode = true

		guiIsVisible = false

		// How many seconds it takes to spool up the animation to full speed.
		spoolTime = 3

		// List of transforms to change the emissive on. When the animation plays,
		// the emissive goes from off to on in spoolTime seconds. When the animation stops,
		// it does the reverse.
		emissiveTransform = mainHousing

		// Optional: If set to true then the animation state syncs with the state of a warp engine.
		// This takes precedence over converter synchronization.
		canSyncWithWarpEngine = true

		// Minimum animation spool rate when an engine controls the animation.
		minEngineSpool = 0.65

		// For debug purposes
		startEventGUIName = (Debug) star plasma venting
		endEventGUIName = (Debug) stop plasma venting

		runningEffect = plasmaVent
//		waterfallEffectController = plasmaVentWaterfall
	}
	
	RESOURCE
	{
		name = XenonGas
		amount = 80
		maxAmount = 80
	}

	RESOURCE
	{
		name = StaticCharge
		amount = 0
		maxAmount = 15
	}

	EFFECTS
	{
		plasmaVent
		{
			MODEL_MULTI_PARTICLE
			{
				name = nozzles
				modelName = WildBlueIndustries/Blueshift/FX/s0PlasmaVent
				transformName = effectTransform
				emission = 0.0 0.0
				emission = 1 1
				speed = 0.4 0.5
				speed = 1.0 1
				energy = 0 0
				energy = 1 1
			}
		}
	}
}

