//Omni Converters can be used by any part that has a WBIOmniConverter part module. These are used in place of the traditional WBI template system configurations. The advantage is that a part can specialize its converters instead of being stuck with using one converter from a template and wasting the rest.

//Omni converter templates work almost like a ModuleResourceConverter in terms of setting them up except for the description field and TechRequired field. These provide a short description of the converter's purpose and the tech node that must be unlocked in order to use it.

//You can tag an omni converter template like you would a traditional template. If the converter's tags match the template's tags, then it can use the converter template.

//Just like storage templates, a converter's efficiency is standardized by volume: Assume that one converter takes up one cubic meter (1000 liters, about the size of a Bucboard 1000) unless otherwise noted. Parts should take this into account when determining how many omni converters the part has. 
//The volume of the converter affects its BaseEfficiency; a 1000-liter standard converter has a BaseEfficiency of 1.0, while a 500-liter converter has a BaseEfficiency of 0.5, and a 2000-liter converter has a BaseEfficiency of 2.0. 

//----- Power Generation -----
//Nuclear Reactor
OMNICONVERTER
{
	TechRequired = fieldScience
	ConverterName = Nuclear Reactor
	description = Generate ElectricCharge with the power of EnrichedUranium!
	StartActionName = Start Reactor
	StopActionName = Stop Reactor	 
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1.2
		 
	INPUT_RESOURCE
	{
		ResourceName = EnrichedUranium
		Ratio = 0.000001
		FlowMode = NO_FLOW
	}

	OUTPUT_RESOURCE
	{
		ResourceName = DepletedUranium
		Ratio = 0.0000009
		FlowMode = NO_FLOW
	}

	OUTPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 125
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Fusion Reactor
OMNICONVERTER
{
	TechRequired = specializedElectrics
	ConverterName = Fusion Reactor
	description = Harness the power of the sun to produce ElectricCharge
	StartActionName = Start Fusion Reactor
	StopActionName = Stop Fusion Reactor
	AutoShutdown = false 
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill

	INPUT_RESOURCE
	{
		ResourceName = FusionPellets
		Ratio = 0.0001
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 70
		FlowMode = ALL_VESSEL
	}
}

//----- Extractors -----

//Water splitter
OMNICONVERTER
{
	templateTags = lab
	TechRequired = advExploration
	ConverterName = Water Splitter
	description = Split Water into Propellium and Oxium
	StartActionName = Start Electrolysis
	StopActionName = Stop Electrolysis
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ScienceSkill
	EfficiencyBonus = 1
		 
	INPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 1
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 22
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = LqdOxygen
		Ratio = 0.779
		DumpExcess = true
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = LqdHydrogen
		Ratio = 1.56
		DumpExcess = true
		FlowMode = ALL_VESSEL
	}
}

//Rainmaker
OMNICONVERTER
{
	templateTags = lab
	TechRequired = advExploration
	ConverterName = Watney Rainmaker
	description = Burn MonoPropellant and Propellium (and maybe some skin if you're not careful) to produce Water and ElectricCharge
	StartActionName = Start Rainmaker
	StopActionName = Stop Rainmaker
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ScienceSkill
	EfficiencyBonus = 1
		 
	INPUT_RESOURCE
	{
		ResourceName = MonoPropellant
		Ratio = 0.0405
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = LqdHydrogen
		Ratio = 0.0494
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 10
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 0.1
		DumpExcess = true
		FlowMode = ALL_VESSEL
	}
}

//----- Makers -----
//Equipment printer
OMNICONVERTER
{
	TechRequired = specializedConstruction
	ConverterName = Equipment Printer
	description = 3D print Equipment from local resources.
	StartActionName = Start Equipment
	StopActionName = Stop Equipment
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = 0.5
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = RareMetals
		Ratio = 0.1
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Minerals
		Ratio = 0.1
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 18
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Equipment
		Ratio = 1.0
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Konkrete
OMNICONVERTER
{
	TechRequired = advScienceTech
	ConverterName = Make Konkrete
	description = Mix Water, Minerals, and Slag to make Konkrete
	StartActionName = Start Konkrete Mixer
	StopActionName = Stop Konkrete Mixer
	AutoShutdown = true
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1
		 
	 INPUT_RESOURCE
	 {
		ResourceName = Water
		Ratio = 0.5
		FlowMode = ALL_VESSEL
	 }
	 INPUT_RESOURCE
	 {
		ResourceName = Minerals
		Ratio = 0.1
		FlowMode = ALL_VESSEL
	 }
	 INPUT_RESOURCE
	 {
		ResourceName = Slag
		Ratio = 0.1
		FlowMode = ALL_VESSEL
	 }
	 INPUT_RESOURCE
	 {
		ResourceName = ElectricCharge
		Ratio = 30
		FlowMode = ALL_VESSEL
	 }
	 OUTPUT_RESOURCE
	 {
		ResourceName = Konkrete
		Ratio = 0.25
		DumpExcess = false
		FlowMode = ALL_VESSEL
	 }
}

OMNICONVERTER
{
	TechRequired = advScienceTech
	ConverterName = Rock Melter
	description = Melt Rock to make Konkrete similar to the LavaHive(TM) system.
	StartActionName = Start Rock Melter
	StopActionName = Stop Rock Melter
	AutoShutdown = true
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1
		 
	 INPUT_RESOURCE
	 {
		ResourceName = Rock
		Ratio = 0.5
		FlowMode = ALL_VESSEL
	 }
	 INPUT_RESOURCE
	 {
		ResourceName = ElectricCharge
		Ratio = 100
		FlowMode = ALL_VESSEL
	 }
	 OUTPUT_RESOURCE
	 {
		ResourceName = Konkrete
		Ratio = 0.25
		DumpExcess = false
		FlowMode = ALL_VESSEL
	 }
}

//Uranium Refiner
OMNICONVERTER
{
	TechRequired = fieldScience
	ConverterName = Uranium Refiner
	description = Refine enriched uranium from uraninite
	StartActionName = Start Enricher
	StopActionName = Stop Enricher
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = Uraninite
		Ratio = 0.0015
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 18
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = EnrichedUranium
		Ratio = 0.001
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Uranium Salter
OMNICONVERTER:NEEDS[FarFutureTechnologies]
{
	TechRequired = fieldScience
	ConverterName = Uranium Salter
	description = Mix Uranium and Water to make Nuclear Salt Water
	StartActionName = Start Salter
	StopActionName = Stop Salter
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = EnrichedUranium
		Ratio = 0.0002
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 1
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 18
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = NuclearSaltWater
		Ratio = 1
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Nuclear Reprocessor
OMNICONVERTER
{
	TechRequired = fieldScience
	ConverterName = Recycle DepletedUranium
	description = Recycle DepletedUranium back into EnrichedUranium
	StartActionName = Start Reprocessor
	StopActionName = Stop Reprocessor
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = DepletedUranium
		Ratio = 0.001
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 18
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = EnrichedUranium
		Ratio = 0.0005
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = XenonGas
		Ratio = 0.001
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//OPAL
OMNICONVERTER
{
	templateTags = hab;lab
	TechRequired = advExploration
	ConverterName = OPAL Processor
	description = Squeeze Water from Ore
	StartActionName = Start OPAL
	StopActionName = Stop OPAL
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ScienceSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 15
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = 0.0014
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 0.000357
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Slag
		Ratio = 0.00001
		DumpExcess = true
		FlowMode = ALL_VESSEL
	}
}

//Coolant
OMNICONVERTER
{
	templateTags = lab
	TechRequired = advExploration
	ConverterName = Coolant Processor
	description = Produce Coolant from Ore, Water, and Minerals to cool your radiators with.
	StartActionName = Start Coolant
	StopActionName = Stop Coolant
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1
		 
	INPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 1
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = 5
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Minerals
		Ratio = 3
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 30
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Coolant
		Ratio = 0.21
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Fusion Pellets
OMNICONVERTER
{
	templateTags = lab
	TechRequired = specializedElectrics
	ConverterName = FusionPellets Processor
	description = Produce FusionPellets from Ore, Water, Minerals, and RareMetals
	StartActionName = Start Fusion Pellets
	StopActionName = Stop Fusion Pellets
	AutoShutdown = true
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ConverterSkill
	EfficiencyBonus = 1

	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = 15
		FlowMode = ALL_VESSEL
	}
	INPUT_RESOURCE
	{
		ResourceName = Water
		Ratio = 1.5
		FlowMode = ALL_VESSEL
	}
	INPUT_RESOURCE
	{
		ResourceName = Minerals
		Ratio = 0.01
		FlowMode = ALL_VESSEL
	}
	INPUT_RESOURCE
	{
		ResourceName = RareMetals
		Ratio = 0.1
		FlowMode = ALL_VESSEL
	}
	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 30
		FlowMode = ALL_VESSEL
	}
	OUTPUT_RESOURCE
	{
		ResourceName = FusionPellets
		Ratio = 0.00045
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//ResearchKits
OMNICONVERTER
{
	templateTags = lab
	TechRequired = advExploration
	ConverterName = Research Kit Assembler
	description = Create ResearchKits to conduct research with
	StartActionName = Start Research Kits
	StopActionName = Stop Research Kits
	AutoShutdown = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ScienceSkill
	EfficiencyBonus = 1
		 
	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = 0.5
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 15
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = ResearchKits
		Ratio = 0.02
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}

//Haber process
OMNICONVERTER
{
	templateTags = hab;lab
	TechRequired = spaceExploration
	description = The Haber Process can create Fertilizerfrom Ore and Minerals.
	ConverterName = Haber Process
	StartActionName = Start Haber Process
	StopActionName = Stop Haber Process
	AutoShutdown = false
	GeneratesHeat = false
	UseSpecialistBonus = true
	SpecialistEfficiencyFactor = 0.2
	SpecialistBonusBase = 0.05
	ExperienceEffect = ScienceSkill
	EfficiencyBonus = 1
		 
	//Background processing lets you run the converter even while the vessel is unloaded. This is especially helpful for converters that handle life support.
	//USE SPARINGLY! Background processing will slow down the game. For performance reasons, converters will be run in the background once every six hours.
	enableBackgroundProcessing = true

	INPUT_RESOURCE
	{
		ResourceName = Ore
		Ratio = .002
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = Minerals
		Ratio = .002
		FlowMode = ALL_VESSEL
	}

	INPUT_RESOURCE
	{
		ResourceName = ElectricCharge
		Ratio = 3.5
		FlowMode = ALL_VESSEL
	}

	OUTPUT_RESOURCE
	{
		ResourceName = Fertilizer
		Ratio = .001
		DumpExcess = false
		FlowMode = ALL_VESSEL
	}
}