// ABOUT ME // Components merged into the Thermal Battery. The battery is the ship's heat // gauge, so it is what decides whether the heat network has surplus worth // venting, and broadcasts that decision to every radiator on the network. // // Polarity is deliberate: the battery broadcasts "HOLD" (do not vent), not // "vent". A ship with no thermal battery therefore has no broadcaster, every // radiator's receiver reads off, and radiators behave exactly as in vanilla. // // Heat storage fullness causes no damage on its own -- damage only occurs when // the network refuses heat and it overflows onto the producing part // (base_part_overclock.rules: HeatDistributionStorage adds InOrder, network // first, OverflowHeatStorage second). So the band sits high on purpose, keeping // the network full as a deep ammunition reserve for Thermal Canister Missiles. // Vent when the battery is essentially full. VentCeiling { Type = ThresholdToggle ValueFrom = HeatStorage MinAmount = 98% } // Stop venting once there is real headroom again. VentFloor { Type = ThresholdToggle ValueFrom = HeatStorage MaxAmount = 94% } VentCeilingTrigger { Type = ToggleTrigger Toggle = VentCeiling TriggerWhenOn = true TriggerWhenOff = false } VentFloorTrigger { Type = ToggleTrigger Toggle = VentFloor TriggerWhenOn = true TriggerWhenOff = false } // The deadband: latches on at the ceiling, stays on until the floor is reached. // Without this the radiators would chatter on and off at the threshold. VentLatch { Type = TriggeredToggle OnTrigger = VentCeilingTrigger OffTrigger = VentFloorTrigger } // OR the raw ceiling back in, so a ship that loads already above the ceiling // vents immediately instead of waiting for a threshold crossing that never comes. VentActive { Type = MultiToggle Toggles = [ VentLatch, VentCeiling ] Mode = Any } HoldVent { Type = MultiToggle Toggles = [ VentActive ] Mode = None } NetworkedHoldVent { Type = NetworkToggle ToggleSource = HoldVent Categories = [ auto_radiator_hold ] IncludeInPhysical = true IncludeInBlueprints = false }