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}