Files
dockipelago/worlds/oni/Items.py
Jonathan Tinney 7971961166
Some checks failed
Analyze modified files / flake8 (push) Failing after 2m28s
Build / build-win (push) Has been cancelled
Build / build-ubuntu2204 (push) Has been cancelled
ctest / Test C++ ubuntu-latest (push) Has been cancelled
ctest / Test C++ windows-latest (push) Has been cancelled
Analyze modified files / mypy (push) Has been cancelled
Build and Publish Docker Images / Push Docker image to Docker Hub (push) Successful in 5m4s
Native Code Static Analysis / scan-build (push) Failing after 5m2s
type check / pyright (push) Successful in 1m7s
unittests / Test Python 3.11.2 ubuntu-latest (push) Failing after 16m23s
unittests / Test Python 3.12 ubuntu-latest (push) Failing after 28m19s
unittests / Test Python 3.13 ubuntu-latest (push) Failing after 14m49s
unittests / Test hosting with 3.13 on ubuntu-latest (push) Successful in 5m0s
unittests / Test Python 3.13 macos-latest (push) Has been cancelled
unittests / Test Python 3.11 windows-latest (push) Has been cancelled
unittests / Test Python 3.13 windows-latest (push) Has been cancelled
add schedule I, sonic 1/frontiers/heroes, spirit island
2026-04-02 23:46:36 -07:00

971 lines
47 KiB
Python

import typing
from BaseClasses import Item, ItemClassification
from .Names import ItemNames
class ONIItem(Item):
game = "Oxygen Not Included"
#def __init__(self, itemName, progression, version):
# super().__init__(itemName, progression)
# self.version = version
class ItemData(typing.NamedTuple):
itemName: str
progression: ItemClassification
care_packages_base: typing.List[str] = [
"Sandstone",
"Dirt",
"Algae",
"Oxylite", # OxyRock
"Water",
"Sand",
"Coal", # Carbon
"Fertilizer",
"Ice",
"Brine",
"Salt Water",
"Rust",
"Copper Ore",
"Gold Amalgam",
"Refined Copper",
"Refined Iron",
"Lime",
"Plastic",
"Glass",
"Steel",
"Ethanol",
"Aluminum Ore",
"Oxyfern Seed",
"Arbor Tree Seed",
"Thimble Reed Seed", # BasicFabricMaterialPlantConfig.SEED_ID
"Wort Seed", # ColdBreatherSeed
"Nutrient Bar", # FieldRation
"Omelettes", # CookedEgg
"Barbecue", # CookedMeat
"Spicy Tofu",
"Fried Mushroom",
"Hatch", # HatchBaby
"Hatch Egg", # HatchEgg
"Pip", # SquirrelBaby
"Pip Egg", # SquirrelEgg
"Drecko", # DreckoBaby
"Drecko Egg", # DreckoEgg
"Pacu"
]
care_packages_frosty: typing.List[str] = [
"Cinnabar",
"Wood", # WoodLog
"Flox", # WoodDeerBaby
"Spigot Seal", # SealBaby
"Bammoth", # IceBellyEgg
"Squash Fries", # FriesCarrot
"Idylla Seed", # IceFlowerSeed
"Alveo Vera Seed", # BlueGrassSeed
"Plume Squash Seed", # CarrotPlantSeed
"Bonbon Tree Seed", # SpaceTreeSeed
"Pikeapple Bush Seed" #HardSkinBerryPlantSeed
]
care_packages_bionic: typing.List[str] = [
"Metal Power Bank", # DisposableElectrobank_RawMetal
"Construction Booster", # Booster_Construct1
"Digging Booster", # Booster_Dig1
"Electrical Engineering Booster", # Booster_Op1
"Suit Training Booster", # Booster_Suits1
"Grilling Booster", # Booster_Cook1
"Advanced Medical Booster", # Booster_Medicine1
"Strength Booster", # Booster_Carry1
"Masterworks Art Booster", # Booster_Art1
"Crop Tending Booster", # Booster_Farm1
"Ranching Booster", # Booster_Ranch1
"Researching Booster", # Booster_Research1
"Piloting Booster" # Booster_Pilot1 Booster_PilotVanilla1
]
all_items: typing.List[ItemData] = [
ItemData(ItemNames.AlgaeHabitat, ItemClassification.useful),
ItemData(ItemNames.PlanterBox, ItemClassification.useful),
ItemData(ItemNames.RationBox, ItemClassification.useful),
ItemData(ItemNames.Compost, ItemClassification.useful),
ItemData(ItemNames.CookingStation, ItemClassification.useful),
ItemData(ItemNames.EggCracker, ItemClassification.useful),
ItemData(ItemNames.DiningTable, ItemClassification.useful),
ItemData(ItemNames.FarmTile, ItemClassification.useful),
ItemData(ItemNames.FarmStation, ItemClassification.useful),
ItemData(ItemNames.FertilizerMaker, ItemClassification.useful),
ItemData(ItemNames.Refrigerator, ItemClassification.useful),
ItemData(ItemNames.HydroponicFarm, ItemClassification.useful),
ItemData(ItemNames.ParkSign, ItemClassification.filler),
ItemData(ItemNames.RadiationLight, ItemClassification.useful),
ItemData(ItemNames.Juicer, ItemClassification.filler),
ItemData(ItemNames.SpiceGrinder, ItemClassification.useful),
ItemData(ItemNames.MilkPress, ItemClassification.useful),
ItemData(ItemNames.GeneticAnalysisStation, ItemClassification.useful),
ItemData(ItemNames.RanchStation, ItemClassification.progression),
ItemData(ItemNames.ShearingStation, ItemClassification.useful),
ItemData(ItemNames.CreatureFeeder, ItemClassification.progression),
ItemData(ItemNames.FishDeliveryPoint, ItemClassification.useful),
ItemData(ItemNames.FishFeeder, ItemClassification.useful),
ItemData(ItemNames.CreaturePickup, ItemClassification.useful),
ItemData(ItemNames.CreatureDeliveryPoint, ItemClassification.useful),
ItemData(ItemNames.CreatureAirTrap, ItemClassification.useful),
ItemData(ItemNames.CreatureGroundTrap, ItemClassification.useful),
ItemData(ItemNames.WaterTrap, ItemClassification.useful),
ItemData(ItemNames.EggIncubator, ItemClassification.useful),
ItemData(ItemNames.LogicCritterCountSensor, ItemClassification.filler),
ItemData(ItemNames.CritterCondo, ItemClassification.filler),
ItemData(ItemNames.UnderwaterCritterCondo, ItemClassification.filler),
ItemData(ItemNames.AirCritterCondo, ItemClassification.filler),
ItemData(ItemNames.GourmetCookingStation, ItemClassification.useful),
ItemData(ItemNames.FoodDehydrator, ItemClassification.useful),
ItemData(ItemNames.FoodRehydrator, ItemClassification.useful),
ItemData(ItemNames.DeepFryer, ItemClassification.useful),
ItemData(ItemNames.SugarEngine, ItemClassification.useful),
ItemData(ItemNames.SmallOxidizerTank, ItemClassification.useful),
ItemData(ItemNames.MilkFeeder, ItemClassification.useful),
ItemData(ItemNames.MilkFatSeparator, ItemClassification.useful),
ItemData(ItemNames.MilkingStation, ItemClassification.useful),
ItemData(ItemNames.MethaneGenerator, ItemClassification.useful),
ItemData(ItemNames.OilRefinery, ItemClassification.progression),
ItemData(ItemNames.PetroleumGenerator, ItemClassification.useful),
ItemData(ItemNames.Polymerizer, ItemClassification.progression),
ItemData(ItemNames.OilWellCap, ItemClassification.progression),
ItemData(ItemNames.LiquidMiniPump, ItemClassification.progression),
ItemData(ItemNames.GasMiniPump, ItemClassification.progression),
ItemData(ItemNames.KeroseneEngineClusterSmall, ItemClassification.useful),
ItemData(ItemNames.MissionControlCluster, ItemClassification.useful),
ItemData(ItemNames.KeroseneEngineCluster, ItemClassification.useful),
ItemData(ItemNames.BatteryMedium, ItemClassification.useful),
ItemData(ItemNames.Switch, ItemClassification.useful),
ItemData(ItemNames.WireBridge, ItemClassification.useful),
ItemData(ItemNames.Generator, ItemClassification.useful),
ItemData(ItemNames.WoodGasGenerator, ItemClassification.useful),
ItemData(ItemNames.BatterySmart, ItemClassification.useful),
ItemData(ItemNames.Phonobox, ItemClassification.filler),
ItemData(ItemNames.PowerControlStation, ItemClassification.useful),
ItemData(ItemNames.BatteryModule, ItemClassification.useful),
ItemData(ItemNames.SolarPanelModule, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorPowerPlug, ItemClassification.useful),
ItemData(ItemNames.HighWattageWire, ItemClassification.useful),
ItemData(ItemNames.WireBridgeHighWattage, ItemClassification.useful),
ItemData(ItemNames.HydrogenGenerator, ItemClassification.useful),
ItemData(ItemNames.LogicPowerRelay, ItemClassification.useful),
ItemData(ItemNames.PowerTransformerSmall, ItemClassification.useful),
ItemData(ItemNames.LogicWattageSensor, ItemClassification.useful),
ItemData(ItemNames.WireRefined, ItemClassification.useful),
ItemData(ItemNames.WireRefinedBridge, ItemClassification.useful),
ItemData(ItemNames.WireRefinedHighWattage, ItemClassification.useful),
ItemData(ItemNames.WireRefinedBridgeHighWattage, ItemClassification.useful),
ItemData(ItemNames.PowerTransformer, ItemClassification.useful),
ItemData(ItemNames.SteamTurbine2, ItemClassification.useful),
ItemData(ItemNames.SolarPanel, ItemClassification.useful),
ItemData(ItemNames.Sauna, ItemClassification.filler),
ItemData(ItemNames.SteamEngineCluster, ItemClassification.useful),
ItemData(ItemNames.SolidFilter, ItemClassification.useful),
ItemData(ItemNames.SolidConduitTemperatureSensor, ItemClassification.useful),
ItemData(ItemNames.SolidConduitElementSensor, ItemClassification.useful),
ItemData(ItemNames.SolidConduitDiseaseSensor, ItemClassification.useful),
ItemData(ItemNames.StorageTile, ItemClassification.useful),
ItemData(ItemNames.CargoBayCluster, ItemClassification.useful),
# ItemData(ItemNames.ConveyorOverlay, ItemClassification.useful),
ItemData(ItemNames.SolidTransferArm, ItemClassification.useful),
ItemData(ItemNames.StorageLockerSmart, ItemClassification.useful),
ItemData(ItemNames.ObjectDispenser, ItemClassification.useful),
ItemData(ItemNames.SolidConduitInbox, ItemClassification.useful),
ItemData(ItemNames.SolidConduit, ItemClassification.useful),
ItemData(ItemNames.SolidConduitBridge, ItemClassification.useful),
ItemData(ItemNames.SolidVent, ItemClassification.useful),
ItemData(ItemNames.SolidLogicValve, ItemClassification.useful),
ItemData(ItemNames.SolidConduitOutbox, ItemClassification.useful),
ItemData(ItemNames.SolidLimitValve, ItemClassification.useful),
ItemData(ItemNames.SolidCargoBaySmall, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorSolidInput, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorSolidOutput, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortSolid, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortSolidUnloader, ItemClassification.useful),
ItemData(ItemNames.RailGun, ItemClassification.useful),
ItemData(ItemNames.LandingBeacon, ItemClassification.useful),
ItemData(ItemNames.NoseconeHarvest, ItemClassification.filler),
ItemData(ItemNames.RockCrusher, ItemClassification.progression),
ItemData(ItemNames.Kiln, ItemClassification.useful),
ItemData(ItemNames.FirePole, ItemClassification.useful),
ItemData(ItemNames.ThermalBlock, ItemClassification.useful),
ItemData(ItemNames.LadderBed, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortBridge, ItemClassification.useful),
ItemData(ItemNames.MetalRefinery, ItemClassification.progression),
ItemData(ItemNames.MetalTile, ItemClassification.useful),
ItemData(ItemNames.GlassForge, ItemClassification.useful),
ItemData(ItemNames.BunkerTile, ItemClassification.useful),
ItemData(ItemNames.BunkerDoor, ItemClassification.useful),
ItemData(ItemNames.GeoTuner, ItemClassification.useful),
ItemData(ItemNames.Gantry, ItemClassification.useful),
ItemData(ItemNames.DiamondPress, ItemClassification.useful),
ItemData(ItemNames.SweepBotStation, ItemClassification.useful),
ItemData(ItemNames.ScoutModule, ItemClassification.useful),
ItemData(ItemNames.AutoMiner, ItemClassification.useful),
ItemData(ItemNames.RailGunPayloadOpener, ItemClassification.useful),
ItemData(ItemNames.HydrogenEngineCluster, ItemClassification.useful),
ItemData(ItemNames.OxidizerTankLiquidCluster, ItemClassification.useful),
ItemData(ItemNames.WaterCooler, ItemClassification.useful),
ItemData(ItemNames.CraftingTable, ItemClassification.useful),
ItemData(ItemNames.WoodHeater, ItemClassification.useful),
# ItemData(ItemNames.BetaResearchPoint, ItemClassification.progression),
ItemData(ItemNames.AdvancedResearchCenter, ItemClassification.progression),
ItemData(ItemNames.ResetSkillsStation, ItemClassification.useful),
ItemData(ItemNames.ClusterTelescope, ItemClassification.useful),
ItemData(ItemNames.ExobaseHeadquarters, ItemClassification.useful),
ItemData(ItemNames.LaunchPad, ItemClassification.progression),
ItemData(ItemNames.HabitatModuleSmall, ItemClassification.progression),
ItemData(ItemNames.OrbitalCargoModule, ItemClassification.useful),
ItemData(ItemNames.RocketControlStation, ItemClassification.useful),
# ItemData(ItemNames.OrbitalResearchPoint, ItemClassification.progression),
ItemData(ItemNames.PioneerModule, ItemClassification.useful),
ItemData(ItemNames.OrbitalResearchCenter, ItemClassification.progression),
ItemData(ItemNames.DLC1CosmicResearchCenter, ItemClassification.progression),
ItemData(ItemNames.NoseconeBasic, ItemClassification.progression),
ItemData(ItemNames.HabitatModuleMedium, ItemClassification.progression),
ItemData(ItemNames.ArtifactAnalysisStation, ItemClassification.useful),
ItemData(ItemNames.ArtifactCargoBay, ItemClassification.useful),
ItemData(ItemNames.SpecialCargoBayCluster, ItemClassification.useful),
ItemData(ItemNames.LogicHammer, ItemClassification.filler),
ItemData(ItemNames.LogicAlarm, ItemClassification.useful),
ItemData(ItemNames.Telephone, ItemClassification.filler),
ItemData(ItemNames.CometDetector, ItemClassification.useful),
ItemData(ItemNames.ClusterTelescopeEnclosed, ItemClassification.useful),
# ItemData(ItemNames.DeltaResearchPoint, ItemClassification.progression),
ItemData(ItemNames.NuclearResearchCenter, ItemClassification.progression),
ItemData(ItemNames.ManualHighEnergyParticleSpawner, ItemClassification.progression),
ItemData(ItemNames.HighEnergyParticleSpawner, ItemClassification.progression),
ItemData(ItemNames.HighEnergyParticleRedirector, ItemClassification.useful),
ItemData(ItemNames.HEPBattery, ItemClassification.useful),
ItemData(ItemNames.NuclearReactor, ItemClassification.useful),
ItemData(ItemNames.UraniumCentrifuge, ItemClassification.useful),
ItemData(ItemNames.HEPBridgeTile, ItemClassification.useful),
ItemData(ItemNames.HEPEngine, ItemClassification.useful),
ItemData(ItemNames.Apothecary, ItemClassification.useful),
ItemData(ItemNames.DoctorStation, ItemClassification.useful),
ItemData(ItemNames.HandSanitizer, ItemClassification.useful),
ItemData(ItemNames.GasConduitDiseaseSensor, ItemClassification.useful),
ItemData(ItemNames.LiquidConduitDiseaseSensor, ItemClassification.useful),
ItemData(ItemNames.LogicDiseaseSensor, ItemClassification.useful),
ItemData(ItemNames.AdvancedDoctorStation, ItemClassification.useful),
ItemData(ItemNames.HotTub, ItemClassification.filler),
ItemData(ItemNames.LogicRadiationSensor, ItemClassification.useful),
ItemData(ItemNames.LeadSuit, ItemClassification.useful),
ItemData(ItemNames.LeadSuitMarker, ItemClassification.useful),
ItemData(ItemNames.LeadSuitLocker, ItemClassification.useful),
ItemData(ItemNames.LogicHEPSensor, ItemClassification.useful),
ItemData(ItemNames.Electrolyzer, ItemClassification.useful),
ItemData(ItemNames.RustDeoxidizer, ItemClassification.useful),
ItemData(ItemNames.OreScrubber, ItemClassification.useful),
ItemData(ItemNames.Desalinator, ItemClassification.useful),
ItemData(ItemNames.LiquidConduit, ItemClassification.progression),
ItemData(ItemNames.LiquidConduitBridge, ItemClassification.useful),
ItemData(ItemNames.LiquidPump, ItemClassification.progression),
ItemData(ItemNames.LiquidVent, ItemClassification.progression),
ItemData(ItemNames.FlushToilet, ItemClassification.useful),
ItemData(ItemNames.WashSink, ItemClassification.useful),
ItemData(ItemNames.Shower, ItemClassification.useful),
ItemData(ItemNames.MeshTile, ItemClassification.useful),
ItemData(ItemNames.MechanicalSurfboard, ItemClassification.filler),
ItemData(ItemNames.BottleFiller, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortLiquid, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortLiquidUnloader, ItemClassification.useful),
ItemData(ItemNames.LiquidCargoBaySmall, ItemClassification.useful),
ItemData(ItemNames.BottleDrainer, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorLiquidInput, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorLiquidOutput, ItemClassification.useful),
ItemData(ItemNames.WallToilet, ItemClassification.useful),
ItemData(ItemNames.DecontaminationShower, ItemClassification.useful),
ItemData(ItemNames.GasFilter, ItemClassification.useful),
ItemData(ItemNames.LiquidFilter, ItemClassification.useful),
ItemData(ItemNames.SludgePress, ItemClassification.useful),
ItemData(ItemNames.AlgaeDistillery, ItemClassification.useful),
ItemData(ItemNames.EthanolDistillery, ItemClassification.useful),
ItemData(ItemNames.WaterPurifier, ItemClassification.useful),
ItemData(ItemNames.InsulatedLiquidConduit, ItemClassification.progression),
ItemData(ItemNames.LogicPressureSensorLiquid, ItemClassification.useful),
ItemData(ItemNames.LiquidLogicValve, ItemClassification.useful),
ItemData(ItemNames.LiquidReservoir, ItemClassification.useful),
ItemData(ItemNames.LiquidConduitRadiant, ItemClassification.progression),
ItemData(ItemNames.LiquidConditioner, ItemClassification.useful),
ItemData(ItemNames.LiquidConduitTemperatureSensor, ItemClassification.useful),
ItemData(ItemNames.LiquidConduitElementSensor, ItemClassification.useful),
ItemData(ItemNames.LiquidHeater, ItemClassification.useful),
ItemData(ItemNames.LiquidLimitValve, ItemClassification.useful),
ItemData(ItemNames.ContactConductivePipeBridge, ItemClassification.useful),
ItemData(ItemNames.EspressoMachine, ItemClassification.filler),
ItemData(ItemNames.LiquidFuelTankCluster, ItemClassification.useful),
ItemData(ItemNames.MercuryLight, ItemClassification.useful),
ItemData(ItemNames.JetpackPattern, ItemClassification.useful),
ItemData(ItemNames.JetpackCheckpoint, ItemClassification.useful),
ItemData(ItemNames.JetpackDock, ItemClassification.useful),
ItemData(ItemNames.LargeLiquidCargo, ItemClassification.useful),
ItemData(ItemNames.BlastshotMaker, ItemClassification.useful),
ItemData(ItemNames.MeteorBlaster, ItemClassification.useful),
ItemData(ItemNames.IceCooledFan, ItemClassification.useful),
ItemData(ItemNames.IceMachine, ItemClassification.useful),
ItemData(ItemNames.IceLiquifier, ItemClassification.useful),
ItemData(ItemNames.InsulationTile, ItemClassification.useful),
ItemData(ItemNames.SpaceHeater, ItemClassification.useful),
ItemData(ItemNames.AirConditioner, ItemClassification.useful),
ItemData(ItemNames.LogicTemperatureSensor, ItemClassification.useful),
ItemData(ItemNames.GasConduitTemperatureSensor, ItemClassification.useful),
ItemData(ItemNames.GasConduitElementSensor, ItemClassification.useful),
ItemData(ItemNames.GasConduitRadiant, ItemClassification.progression),
ItemData(ItemNames.GasReservoir, ItemClassification.useful),
ItemData(ItemNames.GasLimitValve, ItemClassification.useful),
ItemData(ItemNames.OxyliteRefinery, ItemClassification.useful),
ItemData(ItemNames.Chlorinator, ItemClassification.useful),
ItemData(ItemNames.SupermaterialRefinery, ItemClassification.useful),
ItemData(ItemNames.SodaFountain, ItemClassification.useful),
ItemData(ItemNames.GasCargoBayCluster, ItemClassification.useful),
ItemData(ItemNames.GasConduit, ItemClassification.progression),
ItemData(ItemNames.GasConduitBridge, ItemClassification.useful),
ItemData(ItemNames.GasPump, ItemClassification.progression),
ItemData(ItemNames.GasVent, ItemClassification.progression),
ItemData(ItemNames.LiquidValve, ItemClassification.useful),
ItemData(ItemNames.GasValve, ItemClassification.useful),
ItemData(ItemNames.GasPermeableMembrane, ItemClassification.useful),
ItemData(ItemNames.ManualPressureDoor, ItemClassification.useful),
ItemData(ItemNames.AirFilter, ItemClassification.useful),
ItemData(ItemNames.CO2Scrubber, ItemClassification.useful),
ItemData(ItemNames.PressureDoor, ItemClassification.useful),
ItemData(ItemNames.GasBottler, ItemClassification.useful),
ItemData(ItemNames.BottleEmptierGas, ItemClassification.useful),
ItemData(ItemNames.OxygenMask, ItemClassification.useful),
ItemData(ItemNames.OxygenMaskLocker, ItemClassification.useful),
ItemData(ItemNames.OxygenMaskMarker, ItemClassification.useful),
ItemData(ItemNames.OxyliteSconce, ItemClassification.useful),
ItemData(ItemNames.CO2Engine, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortGas, ItemClassification.useful),
ItemData(ItemNames.ModularLaunchpadPortGasUnloader, ItemClassification.useful),
ItemData(ItemNames.GasCargoBaySmall, ItemClassification.useful),
ItemData(ItemNames.InsulatedGasConduit, ItemClassification.progression),
ItemData(ItemNames.LogicPressureSensorGas, ItemClassification.useful),
ItemData(ItemNames.GasLogicValve, ItemClassification.useful),
ItemData(ItemNames.GasVentHighPressure, ItemClassification.progression),
ItemData(ItemNames.CanisterDrainer, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorGasInput, ItemClassification.useful),
ItemData(ItemNames.RocketInteriorGasOutput, ItemClassification.useful),
ItemData(ItemNames.OxidizerTankCluster, ItemClassification.useful),
# ItemData(ItemNames.SuitsOverlay, ItemClassification.useful),
ItemData(ItemNames.AtmoSuit, ItemClassification.useful),
ItemData(ItemNames.SuitFabricator, ItemClassification.useful),
ItemData(ItemNames.SuitMarker, ItemClassification.useful),
ItemData(ItemNames.SuitLocker, ItemClassification.useful),
ItemData(ItemNames.TravelTubeEntrance, ItemClassification.useful),
ItemData(ItemNames.TravelTube, ItemClassification.useful),
ItemData(ItemNames.TravelTubeWallBridge, ItemClassification.useful),
ItemData(ItemNames.VerticalWindTunnel, ItemClassification.filler),
ItemData(ItemNames.FlowerVase, ItemClassification.filler),
ItemData(ItemNames.FloorLamp, ItemClassification.filler),
ItemData(ItemNames.CeilingLight, ItemClassification.filler),
ItemData(ItemNames.FlowerVaseWall, ItemClassification.filler),
ItemData(ItemNames.FlowerVaseHanging, ItemClassification.filler),
ItemData(ItemNames.CornerMoulding, ItemClassification.filler),
ItemData(ItemNames.CrownMoulding, ItemClassification.filler),
ItemData(ItemNames.ItemPedestal, ItemClassification.filler),
ItemData(ItemNames.SmallSculpture, ItemClassification.filler),
ItemData(ItemNames.IceSculpture, ItemClassification.filler),
ItemData(ItemNames.ClothingFabricator, ItemClassification.useful),
ItemData(ItemNames.CarpetTile, ItemClassification.filler),
ItemData(ItemNames.ExteriorWall, ItemClassification.useful),
ItemData(ItemNames.Canvas, ItemClassification.filler),
ItemData(ItemNames.Sculpture, ItemClassification.filler),
ItemData(ItemNames.LuxuryBed, ItemClassification.filler),
ItemData(ItemNames.LadderFast, ItemClassification.useful),
ItemData(ItemNames.PlasticTile, ItemClassification.useful),
ItemData(ItemNames.ClothingAlterationStation, ItemClassification.filler),
ItemData(ItemNames.WoodTile, ItemClassification.useful),
ItemData(ItemNames.CanvasWide, ItemClassification.filler),
ItemData(ItemNames.MetalSculpture, ItemClassification.filler),
ItemData(ItemNames.WoodBlock, ItemClassification.useful),
ItemData(ItemNames.GlassTile, ItemClassification.useful),
ItemData(ItemNames.FlowerVaseHangingFancy, ItemClassification.filler),
ItemData(ItemNames.SunLamp, ItemClassification.filler),
ItemData(ItemNames.CanvasTall, ItemClassification.filler),
ItemData(ItemNames.MarbleSculpture, ItemClassification.filler),
ItemData(ItemNames.BeachChair, ItemClassification.filler),
ItemData(ItemNames.PixelPack, ItemClassification.filler),
ItemData(ItemNames.MonumentBottom, ItemClassification.useful),
ItemData(ItemNames.MonumentMiddle, ItemClassification.useful),
ItemData(ItemNames.MonumentTop, ItemClassification.useful),
# ItemData(ItemNames.AutomationOverlay, ItemClassification.useful),
ItemData(ItemNames.LogicSwitch, ItemClassification.useful),
ItemData(ItemNames.LogicWire, ItemClassification.useful),
ItemData(ItemNames.LogicWireBridge, ItemClassification.useful),
ItemData(ItemNames.LogicDuplicantSensor, ItemClassification.useful),
ItemData(ItemNames.FloorSwitch, ItemClassification.useful),
ItemData(ItemNames.LogicElementSensorGas, ItemClassification.useful),
ItemData(ItemNames.LogicElementSensorLiquid, ItemClassification.useful),
ItemData(ItemNames.LogicGateNOT, ItemClassification.useful),
ItemData(ItemNames.LogicTimeOfDaySensor, ItemClassification.useful),
ItemData(ItemNames.LogicTimerSensor, ItemClassification.useful),
ItemData(ItemNames.LogicLightSensor, ItemClassification.useful),
ItemData(ItemNames.LogicClusterLocationSensor, ItemClassification.useful),
ItemData(ItemNames.LogicRibbon, ItemClassification.useful),
ItemData(ItemNames.LogicRibbonBridge, ItemClassification.useful),
ItemData(ItemNames.LogicRibbonWriter, ItemClassification.useful),
ItemData(ItemNames.LogicRibbonReader, ItemClassification.useful),
ItemData(ItemNames.LogicGateAND, ItemClassification.useful),
ItemData(ItemNames.LogicGateOR, ItemClassification.useful),
ItemData(ItemNames.LogicGateBUFFER, ItemClassification.useful),
ItemData(ItemNames.LogicGateFILTER, ItemClassification.useful),
ItemData(ItemNames.LogicCounter, ItemClassification.useful),
ItemData(ItemNames.LogicMemory, ItemClassification.useful),
ItemData(ItemNames.LogicGateXOR, ItemClassification.useful),
ItemData(ItemNames.ArcadeMachine, ItemClassification.useful),
ItemData(ItemNames.Checkpoint, ItemClassification.useful),
ItemData(ItemNames.ScannerModule, ItemClassification.useful),
ItemData(ItemNames.LogicInterasteroidSender, ItemClassification.useful),
ItemData(ItemNames.LogicInterasteroidReceiver, ItemClassification.useful),
ItemData(ItemNames.LogicGateMultiplexer, ItemClassification.useful),
ItemData(ItemNames.LogicGateDemultiplexer, ItemClassification.useful),
]
display_name_to_internal_name: typing.Dict[str, str] = {
"Algae Terrarium": "AlgaeHabitat",
"Planter Box": "PlanterBox",
"Ration Box": "RationBox",
"Compost": "Compost",
"Electric Grill": "CookingStation",
"Egg Cracker": "EggCracker",
"Mess Table": "DiningTable",
"Farm Tile": "FarmTile",
"Juicer": "Juicer",
"Spice Grinder": "SpiceGrinder",
"Plant Pulverizer": "MilkPress",
"Gas Range": "GourmetCookingStation",
"Dehydrator": "FoodDehydrator",
"Rehydrator": "FoodRehydrator",
"Farm Station": "FarmStation",
"Fertilizer Synthesis": "FertilizerMaker",
"Refrigerator": "Refrigerator",
"Hydroponic Farm": "HydroponicFarm",
"Park Sign": "ParkSign",
"Radiation Lamp": "RadiationLight",
"Grooming Station": "RanchStation",
"Critter Pick-Up" : "CritterPickup",
"Critter Drop-Off": "CritterDropOff",
"Shearing Station": "ShearingStation",
"Critter Feeder": "CreatureFeeder",
"Fish Release": "FishDeliveryPoint",
"Fish Feeder": "FishFeeder",
"Airborne Critter Trap": "FlyingCreatureBait",
"Critter Trap": "CreatureTrap",
"Fish Trap": "WaterTrap",
"Incubator": "EggIncubator",
"Critter Sensor": "LogicCritterCountSensor",
"Critter Condo": "CritterCondo",
"Water Fort": "UnderwaterCritterCondo",
"Airborne Critter Condo": "AirborneCritterCondo",
"Critter Fountain": "MilkFeeder",
"Brackwax Gleaner": "MilkFatSeparator",
"Milking Station": "MilkingStation",
"Electrolyzer": "Electrolyzer",
"Rust Deoxidier": "RustDeoxidizer",
"Gas Pipe": "GasConduit",
"Gas Bridge": "GasConduitBridge",
"Gas Pump": "GasPump",
"Gas Vent": "GasVent",
"Insulated Gas Pipe": "InsulatedGasConduit",
"Atmo Sensor": "LogicPressureSensorGas",
"Gas Shutoff": "GasLogicValve",
"High Pressure Gas Vent": "GasVentHighPressure",
"Carbon Dioxide Engine": "CO2Engine",
"Gas Rocket Port Loader": "ModularLaunchpadPortGas",
"Gas Rocket Port Unloader": "ModularLaunchpadPortGasUnloader",
"Gas Cargo Canister": "GasCargoBaySmall",
"Liquid Valve": "LiquidValve",
"Gas Valve": "GasValve",
"Airflow Tile": "GasPermeableMembrane",
"Manual Airlock": "ManualPressureDoor",
"Deoderizer": "AirFilter",
"Carbon Skimmer": "CO2Scrubber",
"Mechanized Airlock": "PressureDoor",
"Ore Scrubber": "OreScrubber",
"Desalinator": "Desalinator",
"Apothecary": "Apothecary",
"Sick Bay": "DoctorStation",
"Hand Sanitizer": "HandSanitizer",
"Gas Pipe Germ Sensor": "GasConduitDiseaseSensor",
"Liquid Pipe Germ Sensor": "LiquidConduitDiseaseSensor",
"Germ Sensor": "LogicDiseaseSensor",
"Disease Clinic": "AdvancedDoctorStation",
"Hot Tub": "HotTub",
"Radiation Sensor": "LogicRadiationSensor",
"Liquid Pipe": "LiquidConduit",
"Liquid Bridge": "LiquidConduitBridge",
"Liquid Pump": "LiquidPump",
"Liquid Vent": "LiquidVent",
"Insulated Liquid Pipe": "InsulatedLiquidConduit",
"Hydro Sensor": "LogicPressureSensorLiquid",
"Liquid Shutoff": "LiquidLogicValve",
"Liquid Reservoir": "LiquidReservoir",
"Espresso Machine": "EspressoMachine",
"Large Liquid Fuel Tank": "LiquidFuelTankCluster",
"Lavatory": "FlushToilet",
"Sink": "WashSink",
"Shower": "Shower",
"Mesh Tile": "MeshTile",
"Mechanical Surfboard": "MechanicalSurfboard",
"Liquid Rocket Port Loader": "ModularLaunchpadPortLiquid",
"Liquid Rocket Port Unloader": "ModularLaunchpadPortLiquidUnloader",
"Liquid Cargo Tank": "LiquidCargoBaySmall",
"Liquid Spacefarer Input Port": "RocketInteriorLiquidInput",
"Liquid Spacefarer Output Port": "RocketInteriorLiquidOutput",
"Wall Toilet": "WallToilet",
"Decontamination Shower": "DecontaminationShower",
"Gas Filter": "GasFilter",
"Liquid Filter": "LiquidFilter",
"Sludge Press": "SludgePress",
"Algae Distiller": "AlgaeDistillery",
"Ethanol Distiller": "EthanolDistillery",
"Water Seive": "WaterPurifier",
"Oxylite Refinery": "OxyliteRefinery",
"Bleach Stone Hopper": "Chlorinator",
"Molecular Forge": "SupermaterialRefinery",
"Soda Fountain": "SodaFountain",
"Large Gas Cargo Canister": "GasCargoBayCluster",
"Jumbo Battery": "BatteryMedium",
"Switch": "Switch",
"Wire Bridge": "WireBridge",
"Heavi-Watt Wire": "HighWattageWire",
"Heavi-Watt Joint Plate": "WireBridgeHighWattage",
"Hydrogen Generator": "HydrogenGenerator",
"Power Shutoff": "LogicPowerRelay",
"Power Transformer": "PowerTransformerSmall",
"Wattage Sensor": "LogicWattageSensor",
"Conductive Wire": "WireRefined",
"Conductive Wire Bridge": "WireRefinedBridge",
"Heavi-Watt Conductive Wire": "WireRefinedHighWattage",
"Heavi-Watt Conductive Joint Plate": "WireRefinedBridgeHighWattage",
"Large Power Transformer": "PowerTransformer",
"Steam Turbine": "SteamTurbine2",
"Solar Panel": "SolarPanel",
"Sauna": "Sauna",
"Steam Engine": "SteamEngineCluster",
"Coal Generator": "Generator",
"Wood Burner": "WoodGasGenerator",
"Natural Gas Generator": "MethaneGenerator",
"Oil Refinery": "OilRefinery",
"Petroleum Generator": "PetroleumGenerator",
"Flower Pot": "FlowerVase",
"Lamp": "FloorLamp",
"Ceiling Light": "CeilingLight",
"Wall Pot": "FlowerVaseWall",
"Hanging Pot": "FlowerVaseHanging",
"Corner Trim": "CornerMoulding",
"Ceiling Trim": "CrownMoulding",
"Pedestal": "ItemPedestal",
"Sculpting Block": "SmallSculpture",
"Ice Block": "IceSculpture",
"Textile Loom": "ClothingFabricator",
"Carpeted Tile": "CarpetTile",
"Drywall": "ExteriorWall",
"Smart Battery": "BatterySmart",
"Jukebot": "Phonobox",
"Power Control Station": "PowerControlStation",
"Battery Module": "BatteryModule",
"Solar Panel Module": "SolarPanelModule",
"Power Outlet Fitting": "RocketInteriorPowerPlug",
"Research Reactor": "NuclearReactor",
"Uranium Centrifuge": "UraniumCentrifuge",
"Radbolt Joint Plate": "HEPBridgeTile",
"Blank Canvas": "Canvas",
"Large Sculpting Block": "Sculpture",
"Beach Chair": "BeachChair",
"Comfy Bed": "LuxuryBed",
"Plastic Ladder": "LadderFast",
"Plastic Tile": "PlasticTile",
"Clothing Refashionator": "ClothingAlterationStation",
"Landscape Canvas": "CanvasWide",
"Metal Block": "MetalSculpture",
"Window Tile": "GlassTile",
"Aero Pot": "FlowerVaseHangingFancy",
"Sun Lamp": "SunLamp",
"Pixel Pack": "PixelPack",
"Portrait Canvas": "CanvasTall",
"Marble Block": "MarbleSculpture",
"Polymer Press": "Polymerizer",
"Oil Well": "OilWellCap",
"Mini Liquid Pump": "LiquidMiniPump",
"Mini gas Pump": "GasMiniPump",
"Small Petroleum Engine": "KeroseneEngineClusterSmall",
"Mission Control Station": "MissionControlCluster",
"Petroleum Engine": "KeroseneEngineCluster",
"Hydrogen Engine": "HydrogenEngineCluster",
"Liquid Oxidizer Tank": "OxidizerTankLiquidCluster",
# "Exosuit Overlay": "SuitsOverlay",
"Atmo Suit": "AtmoSuit",
"Exosuit Forge": "SuitFabricator",
"Atmo Suit Checkpoint": "SuitMarker",
"Atmo Suit Dock": "SuitLocker",
"Water Cooler": "WaterCooler",
"Crafting Station": "CraftingTable",
# "Advanced Research": "BetaResearchPoint",
"Super Computer": "AdvancedResearchCenter",
"Skill Scrubber": "ResetSkillsStation",
"Telescope": "ClusterTelescope",
"Mini-Pod": "ExobaseHeadquarters",
"Rocket Platform": "LaunchPad",
"Solo Spacefarer Nosecone": "HabitatModuleSmall",
"Orbital Cargo Module": "OrbitalCargoModule",
"Rocket Control Station": "RocketControlStation",
# "Data Analysis Research": "OrbitalResearchPoint",
"Trailblazer Module": "PioneerModule",
"Orbital Data Collection Lab": "OrbitalResearchCenter",
"Virtual Planetarium": "DLC1CosmicResearchCenter",
"Basic Nosecone": "NoseconeBasic",
"Spacefarer Module": "HabitatModuleMedium",
"Artifact Analysis Station": "ArtifactAnalysisStation",
"Artifact Transport Module": "ArtifactCargoBay",
"Critter Cargo Bay": "SpecialCargoBayCluster",
# "Applied Sciences Research": "DeltaResearchPoint",
"Materials Study Terminal": "NuclearResearchCenter",
"Manual Radbolt Generator": "ManualHighEnergyParticleSpawner",
"Radbolt Generator": "HighEnergyParticleSpawner",
"Radbolt Reflector": "HighEnergyParticleRedirector",
"Radbolt Chamber": "HEPBattery",
"Radbolt Engine": "HEPEngine",
"Hammer": "LogicHammer",
"Automated Notifier": "LogicAlarm",
"Party Line Phone": "Telephone",
"Sweepy's Dock": "SweepBotStation",
"Rover's Module": "ScoutModule",
"Rock Crusher": "RockCrusher",
"Kiln": "Kiln",
"Fire Pole": "FirePole",
"Tempshift Plate": "ThermalBlock",
"Ladder Bed": "LadderBed",
"Rocket Port Extension": "ModularLaunchpadPortBridge",
"Metal Refinery": "MetalRefinery",
"Metal Tile": "MetalTile",
"Glass Forge": "GlassForge",
"Bunker Tile": "BunkerTile",
"Bunker Door": "BunkerDoor",
"Geotuner": "GeoTuner",
"Gantry": "Gantry",
"Diamond Press": "DiamondPress",
"Lead Suit": "LeadSuit",
"Lead Suit Checkpoint": "LeadSuitMarker",
"Lead Suit Dock": "LeadSuitLocker",
"Radbolt Sensor": "LogicHEPSensor",
"Ice-E Fan": "IceCooledFan",
"Ice Maker": "IceMachine",
"Insulated Tile": "InsulationTile",
"Space Heater": "SpaceHeater",
"Thermo Regulator": "AirConditioner",
"Thermo Sensor": "LogicTemperatureSensor",
"Gas Pipe Thermo Sensor": "GasConduitTemperatureSensor",
"Gas Pipe Element Sensor": "GasConduitElementSensor",
"Radiant Gas Pipe": "GasConduitRadiant",
"Gas Resevoir": "GasReservoir",
"Gas Meter Valve": "GasLimitValve",
"Radiant Liquid Pipe": "LiquidConduitRadiant",
"Thermo Aquatuner": "LiquidConditioner",
"Liquid Pipe Thermo Sensor": "LiquidConduitTemperatureSensor",
"Liquid Pipe Element Sensor": "LiquidConduitElementSensor",
"Liquid Tepidizer": "LiquidHeater",
"Liquid Meter Valve": "LiquidLimitValve",
"Conduction Panel": "ContactConductivePipeBridge",
# "Automation Overlay": "AutomationOverlay",
"Signal Switch": "LogicSwitch",
"Automation Wire": "LogicWire",
"Automation Wire Bridge": "LogicWireBridge",
"Duplicant Motion Sensor": "LogicDuplicantSensor",
"Weight Plate": "FloorSwitch",
"Gas Element Sensor": "LogicElementSensorGas",
"Liquid Element Sensor": "LogicElementSensorLiquid",
"NOT Gate": "LogicGateNOT",
"Cycle Sensor": "LogicTimeOfDaySensor",
"Timer Sensor": "LogicTimerSensor",
"Light Sensor": "LogicLightSensor",
"Starmap Location Sensor": "LogicClusterLocationSensor",
"AND Gate": "LogicGateAND",
"OR Gate": "LogicGateOR",
"BUFFER Gate": "LogicGateBUFFER",
"FILTER Gate": "LogicGateFILTER",
"Automation Ribbon": "LogicRibbon",
"Automation Ribbon Bridge": "LogicRibbonBridge",
"Ribbon Writer": "LogicRibbonWriter",
"Ribbon Reader": "LogicRibbonReader",
"Signal Counter": "LogicCounter",
"Memory Toggle": "LogicMemory",
"XOR Gate": "LogicGateXOR",
"Arcade Cabinet": "ArcadeMachine",
"Duplicant Checkpoint": "Checkpoint",
"Signal Selector": "LogicGateMultiplexer",
"Signal Distributor": "LogicGateDemultiplexer",
"Transit Tube Access": "TravelTubeEntrance",
"Transit Tube": "TravelTube",
"Transit Tube Crossing": "TravelTubeWallBridge",
"Vertical Wind Tunnel": "VerticalWindTunnel",
# "Conveyor Overlay": "ConveyorOverlay",
"Auto-Sweeper": "SolidTransferArm",
"Smart Storage Bin": "StorageLockerSmart",
"Automatic Dispenser": "ObjectDispenser",
"Solid Filter": "SolidFilter",
"Conveyor Rail Thermo Sensor": "SolidConduitTemperatureSensor",
"Conveyor Rail Element Sensor": "SolidConduitElementSensor",
"Conveyor Rail Germ Sensor": "SolidConduitDiseaseSensor",
"Storage Tile": "StorageTile",
"Large Cargo Bay": "CargoBayCluster",
"Interplanetary Launcher": "RailGun",
"Targeting Beacon": "LandingBeacon",
"Conveyor Loader": "SolidConduitInbox",
"Conveyor Rail": "SolidConduit",
"Conveyor Bridge": "SolidConduitBridge",
"Conveyor Chute": "SolidVent",
"Monument Base": "MonumentBottom",
"Monument Midsection": "MonumentMiddle",
"Monument top": "MonumentTop",
"Conveyor Shutoff": "SolidLogicValve",
"Conveyor Receptacle": "SolidConduitOutbox",
"Conveyor Meter": "SolidLimitValve",
"Cargo Bay": "SolidCargoBaySmall",
"Conveyor Receptacle Fitting": "RocketInteriorSolidInput",
"Conveyor Loader Fitting": "RocketInteriorSolidOutput",
"Rocket Port": "ModularLaunchpadPortSolid",
"Solid Rocket Port Unloader": "ModularLaunchpadPortSolidUnloader",
"Robo-Miner": "AutoMiner",
"Payload Opener": "RailGunPayloadOpener",
"Canister Filler": "GasBottler",
"Canister Emptier": "BottleEmptierGas",
"Oxygen Mask Station": "OxygenMask",
"Oxygen Mask Dock": "OxygenMaskLocker",
"Oxygen Mask Checkpoint": "OxygenMaskMarker",
"Botanical Analyzer": "GeneticAnalysisStation",
"Sugar Engine": "SugarEngine",
"Small Solid Oxidizer Tank": "SmallOxidizerTank",
"Drillcone": "NoseconeHarvest",
"Gas Intake Fitting": "RocketInteriorGasInput",
"Gas Output Fitting": "RocketInteriorGasOutput",
"Large Solid Oxidizer Tank": "OxidizerTankCluster",
"Cartographic Module": "ScannerModule",
"Automation Broadcaster": "LogicInterasteroidSender",
"Automation Receiver": "LogicInterasteroidReceiver",
"Space Scanner": "CometDetector",
"Enclosed Telescope": "ClusterTelescopeEnclosed",
"Jet Suit Pattern" : "JetSuit",
"Jet Suit Checkpoint" : "JetSuitMarker",
"Jet Suit Dock" : "JetSuitLocker",
"Large Liquid Cargo Tank" : "LiquidCargoBayCluster",
"Blastshot Maker" : "MissileFabricator",
"Meteor Blaster" : "MissileLauncher",
"Wood Heater" : "Campfire",
"Oxylite Sconce" : "OxySconce",
"Ice Liquefier" : "IceKettle",
"Wood Tile" : "WoodTile",
"Wood Block" : "WoodSculpture",
"Deep Fryer" : "DeepFryer",
"Mercury Ceiling Light" : "MercuryCeilingLight",
"Bottle Filler" : "LiquidBottler",
"Bottle Drainer" : "BottleEmptierConduitLiquid",
"Canister Drainer" : "BottleEmptierConduitGas",
# Tech Names
"Basic Farming": "FarmingTech",
"Meal Preparation": "FineDining",
"Food Repurposing": "FoodRepurposing",
"Gourmet Meal Preparation": "FinerDining",
"Agriculture": "Agriculture",
"Ranching": "Ranching",
"Animal Control": "AnimalControl",
"Creature Comforts": "AnimalComfort",
"Brackene Flow": "DairyOperation",
"Air Systems": "ImprovedOxygen",
"Ventilation": "GasPiping",
"Improved Ventilation": "ImprovedGasPiping",
"Advanced Gas Flow": "SpaceGas",
"Pressure Management": "PressureManagement",
"Decontamination": "DirectedAirstreams",
"Liquid-Based Refinement Processes": "LiquidFiltering",
"Pharmacology": "MedicineI",
"Medical Equipment": "MedicineII",
"Pathogen Diagnostics": "MedicineIII",
"Micro-Targeted Medicine": "MedicineIV",
"Plumbing": "LiquidPiping",
"Improved Plumbing": "ImprovedLiquidPiping",
"Advanced Caffeination": "PrecisionPlumbing",
"Sanitation": "SanitationSciences",
"Flow Redirection": "FlowRedirection",
"Liquid Distribution": "LiquidDistribution",
"Advanced Sanitation": "AdvancedSanitation",
"Filtration": "AdvancedFiltration",
"Distillation": "Distillation",
"Catalytics": "Catalytics",
"Power Regulation": "PowerRegulation",
"Advanced Power Regulation": "AdvancedPowerRegulation",
"Low-Resistence Conductors": "PrettyGoodConductors",
"Renewable Energy": "RenewableEnergy",
"Internal Combustion": "Combustion",
"Fossil Fuels": "ImprovedCombustion",
"Interior Decor": "InteriorDecor",
"Artistic Expression": "Artistry",
"Textile Production": "Clothing",
"Sound Amplifiers": "Acoustics",
"Space Power": "SpacePower",
"Radiation Refinement": "NuclearRefinement",
"Fine Art": "FineArt",
"Environmental Appreciation": "EnvironmentalAppreciation",
"Home Luxuries": "Luxury",
"High Culture": "RefractiveDecor",
"Glass Blowing": "GlassFurnishings",
"New Media": "Screens",
"Renaissance Art": "RenaissanceArt",
"Plastic Manufacturing": "Plastics",
"Valve Miniaturization": "ValveMiniaturization",
"Hydrocarbon Propulsion": "HydrocarbonPropulsion",
"Improved Hydrocarbon Propulsion": "BetterHydroCarbonPropulsion",
"CryoFuel Propulsion": "CryoFuelPropulsion",
"Hazard Protection": "Suits",
"Employment": "Jobs",
"Advanced Research": "AdvancedResearch",
"Space Program": "SpaceProgram",
"Crash Plan": "CrashPlan",
"Durable Life Support": "DurableLifeSupport",
"Materials Science Research": "NuclearResearch",
"More Materials Science Research": "AdvancedNuclearResearch",
"Radbolt Containment": "NuclearStorage",
"Radbolt Propulsion": "NuclearPropulsion",
"Notification Systems": "NotificationSystems",
"Artificial Friends": "ArtificialFriends",
"Brute-Force Refinement": "BasicRefinement",
"Refined Renovations": "RefinedObjects",
"Smelting": "Smelting",
"Superheated Forging": "HighTempForging",
"Pressurized Forging": "HighPressureForging",
"Radiation Protection": "RadiationProtection",
"Temperature Modulation": "TemperatureModulation",
"HVAC": "HVAC",
"Liquid Tuning": "LiquidTemperature",
"Smart Home": "LogicControl",
"Generic Sensors": "GenericSensors",
"Advanced Automation": "LogicCircuits",
"Parallel Automation": "ParallelAutomation",
"Computing": "DupeTrafficControl",
"Multiplexing": "Multiplexing",
"Transit Tubes": "TravelTubes",
"Smart Storage": "SmartStorage",
"Solid Management": "SolidManagement",
"High Velocity Transport": "HighVelocityTransport",
"Solid Transport": "SolidTransport",
"Monuments": "Monuments",
"Solid Control": "SolidSpace",
"Robotic Tools": "RoboticTools",
"Portable Gases": "PortableGasses",
"Advanced Combustion": "SpaceCombustion",
"High Velocity Destruction": "HighVelocityDestruction",
"Gas Distribution": "GasDistribution",
"Sensitive Microimaging": "AdvancedScanners",
"Celestial Detection": "SkyDetectors",
"Jetpacks": "Jetpacks",
"Bioengineering" : "Bioengineering"
}
items_by_name: typing.Dict[str, ItemData] = {item.itemName: item for item in all_items}