diff --git a/Content.Server/Atmos/Piping/Binary/Components/GasVolumePumpComponent.cs b/Content.Server/Atmos/Piping/Binary/Components/GasVolumePumpComponent.cs index 36ced3887d..48cdaebb97 100644 --- a/Content.Server/Atmos/Piping/Binary/Components/GasVolumePumpComponent.cs +++ b/Content.Server/Atmos/Piping/Binary/Components/GasVolumePumpComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Atmos; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Piping.Binary.Components { @@ -38,6 +39,7 @@ namespace Content.Server.Atmos.Piping.Binary.Components public float LowerThreshold { get; set; } = 0.01f; [DataField("higherThreshold")] + [GuidebookData] public float HigherThreshold { get; set; } = DefaultHigherThreshold; public static readonly float DefaultHigherThreshold = 2 * Atmospherics.MaxOutputPressure; diff --git a/Content.Server/Atmos/Piping/Trinary/Components/PressureControlledValveComponent.cs b/Content.Server/Atmos/Piping/Trinary/Components/PressureControlledValveComponent.cs index c0b496fae8..3f388617de 100644 --- a/Content.Server/Atmos/Piping/Trinary/Components/PressureControlledValveComponent.cs +++ b/Content.Server/Atmos/Piping/Trinary/Components/PressureControlledValveComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Atmos; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Piping.Trinary.Components { @@ -27,6 +28,7 @@ namespace Content.Server.Atmos.Piping.Trinary.Components [ViewVariables(VVAccess.ReadWrite)] [DataField("threshold")] + [GuidebookData] public float Threshold { get; set; } = Atmospherics.OneAtmosphere; [DataField("maxTransferRate")] diff --git a/Content.Server/Atmos/Piping/Unary/Components/GasCanisterComponent.cs b/Content.Server/Atmos/Piping/Unary/Components/GasCanisterComponent.cs index 1daa42d7c4..afbfb91249 100644 --- a/Content.Server/Atmos/Piping/Unary/Components/GasCanisterComponent.cs +++ b/Content.Server/Atmos/Piping/Unary/Components/GasCanisterComponent.cs @@ -1,5 +1,6 @@ using Content.Shared.Atmos; using Content.Shared.Containers.ItemSlots; +using Content.Shared.Guidebook; using Robust.Shared.Audio; namespace Content.Server.Atmos.Piping.Unary.Components @@ -61,5 +62,12 @@ namespace Content.Server.Atmos.Piping.Unary.Components [DataField("accessDeniedSound")] public SoundSpecifier AccessDeniedSound = new SoundPathSpecifier("/Audio/Machines/custom_deny.ogg"); + + #region GuidebookData + + [GuidebookData] + public float Volume => Air.Volume; + + #endregion } } diff --git a/Content.Server/Atmos/Piping/Unary/Components/GasOutletInjectorComponent.cs b/Content.Server/Atmos/Piping/Unary/Components/GasOutletInjectorComponent.cs index 7e082024a8..65755d62c5 100644 --- a/Content.Server/Atmos/Piping/Unary/Components/GasOutletInjectorComponent.cs +++ b/Content.Server/Atmos/Piping/Unary/Components/GasOutletInjectorComponent.cs @@ -1,6 +1,7 @@ using Content.Server.Atmos.Piping.Binary.Components; using Content.Server.Atmos.Piping.Unary.EntitySystems; using Content.Shared.Atmos; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Piping.Unary.Components { @@ -29,6 +30,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components public float MaxTransferRate = Atmospherics.MaxTransferRate; [DataField("maxPressure")] + [GuidebookData] public float MaxPressure { get; set; } = GasVolumePumpComponent.DefaultHigherThreshold; [DataField("inlet")] diff --git a/Content.Server/Atmos/Piping/Unary/Components/GasThermoMachineComponent.cs b/Content.Server/Atmos/Piping/Unary/Components/GasThermoMachineComponent.cs index 5da4ec9fdf..f481443c94 100644 --- a/Content.Server/Atmos/Piping/Unary/Components/GasThermoMachineComponent.cs +++ b/Content.Server/Atmos/Piping/Unary/Components/GasThermoMachineComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Atmos; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Piping.Unary.Components { @@ -13,6 +14,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// thermomachine to heat or cool air. /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float HeatCapacity = 5000; [DataField, ViewVariables(VVAccess.ReadWrite)] @@ -21,6 +23,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// /// Tolerance for temperature setpoint hysteresis. /// + [GuidebookData] [DataField, ViewVariables(VVAccess.ReadOnly)] public float TemperatureTolerance = 2f; @@ -44,6 +47,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// Ignored if heater. /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float MinTemperature = 73.15f; /// @@ -51,6 +55,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// Ignored if freezer. /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float MaxTemperature = 593.15f; /// @@ -63,6 +68,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// An percentage of the energy change that is leaked into the surrounding environment rather than the inlet pipe. /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float EnergyLeakPercentage; /// diff --git a/Content.Server/Atmos/Piping/Unary/Components/GasVentPumpComponent.cs b/Content.Server/Atmos/Piping/Unary/Components/GasVentPumpComponent.cs index fcf3ddf969..25b15f0ed5 100644 --- a/Content.Server/Atmos/Piping/Unary/Components/GasVentPumpComponent.cs +++ b/Content.Server/Atmos/Piping/Unary/Components/GasVentPumpComponent.cs @@ -1,6 +1,7 @@ using Content.Shared.Atmos; using Content.Shared.Atmos.Piping.Unary.Components; using Content.Shared.DeviceLinking; +using Content.Shared.Guidebook; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; namespace Content.Server.Atmos.Piping.Unary.Components @@ -35,6 +36,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// In releasing mode, do not pump when environment pressure is below this limit. /// [DataField] + [GuidebookData] public float UnderPressureLockoutThreshold = 80; // this must be tuned in conjunction with atmos.mmos_spacing_speed /// @@ -58,7 +60,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components [DataField] public bool IsPressureLockoutManuallyDisabled = false; /// - /// The time when the manual pressure lockout will be reenabled. + /// The time when the manual pressure lockout will be reenabled. /// [DataField] [AutoPausedField] @@ -101,6 +103,7 @@ namespace Content.Server.Atmos.Piping.Unary.Components /// Max pressure of the target gas (NOT relative to source). /// [DataField] + [GuidebookData] public float MaxPressure = Atmospherics.MaxOutputPressure; /// @@ -172,5 +175,12 @@ namespace Content.Server.Atmos.Piping.Unary.Components InternalPressureBound = data.InternalPressureBound; PressureLockoutOverride = data.PressureLockoutOverride; } + + #region GuidebookData + + [GuidebookData] + public float DefaultExternalBound => Atmospherics.OneAtmosphere; + + #endregion } } diff --git a/Content.Server/Atmos/Portable/PortableScrubberComponent.cs b/Content.Server/Atmos/Portable/PortableScrubberComponent.cs index ae9a5da963..b228091806 100644 --- a/Content.Server/Atmos/Portable/PortableScrubberComponent.cs +++ b/Content.Server/Atmos/Portable/PortableScrubberComponent.cs @@ -1,4 +1,5 @@ using Content.Shared.Atmos; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Portable { @@ -45,5 +46,12 @@ namespace Content.Server.Atmos.Portable /// [DataField, ViewVariables(VVAccess.ReadWrite)] public float TransferRate = 800; + + #region GuidebookData + + [GuidebookData] + public float Volume => Air.Volume; + + #endregion } } diff --git a/Content.Server/Atmos/Portable/SpaceHeaterComponent.cs b/Content.Server/Atmos/Portable/SpaceHeaterComponent.cs index e490ab3ea0..d13826e4e9 100644 --- a/Content.Server/Atmos/Portable/SpaceHeaterComponent.cs +++ b/Content.Server/Atmos/Portable/SpaceHeaterComponent.cs @@ -1,6 +1,7 @@ using Content.Shared.Atmos; using Content.Shared.Atmos.Piping.Portable.Components; using Content.Shared.Atmos.Visuals; +using Content.Shared.Guidebook; namespace Content.Server.Atmos.Portable; @@ -23,12 +24,14 @@ public sealed partial class SpaceHeaterComponent : Component /// Maximum target temperature the device can be set to /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float MaxTemperature = Atmospherics.T20C + 20; /// /// Minimal target temperature the device can be set to /// [DataField, ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float MinTemperature = Atmospherics.T0C - 10; /// diff --git a/Content.Server/Power/Components/BatteryComponent.cs b/Content.Server/Power/Components/BatteryComponent.cs index 4ef8891333..860b7b219a 100644 --- a/Content.Server/Power/Components/BatteryComponent.cs +++ b/Content.Server/Power/Components/BatteryComponent.cs @@ -1,4 +1,5 @@ using Content.Server.Power.EntitySystems; +using Content.Shared.Guidebook; namespace Content.Server.Power.Components { @@ -16,6 +17,7 @@ namespace Content.Server.Power.Components /// Maximum charge of the battery in joules (ie. watt seconds) /// [DataField] + [GuidebookData] public float MaxCharge; /// diff --git a/Content.Server/Power/Components/PowerNetworkBatteryComponent.cs b/Content.Server/Power/Components/PowerNetworkBatteryComponent.cs index a0f74df6a1..fcef03903b 100644 --- a/Content.Server/Power/Components/PowerNetworkBatteryComponent.cs +++ b/Content.Server/Power/Components/PowerNetworkBatteryComponent.cs @@ -1,4 +1,5 @@ using Content.Server.Power.Pow3r; +using Content.Shared.Guidebook; namespace Content.Server.Power.Components { @@ -24,6 +25,7 @@ namespace Content.Server.Power.Components [DataField("maxSupply")] [ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float MaxSupply { get => NetworkBattery.MaxSupply; diff --git a/Content.Server/Power/Components/PowerSupplierComponent.cs b/Content.Server/Power/Components/PowerSupplierComponent.cs index cf23288fcd..30f8335c49 100644 --- a/Content.Server/Power/Components/PowerSupplierComponent.cs +++ b/Content.Server/Power/Components/PowerSupplierComponent.cs @@ -1,5 +1,6 @@ using Content.Server.Power.NodeGroups; using Content.Server.Power.Pow3r; +using Content.Shared.Guidebook; namespace Content.Server.Power.Components { @@ -8,6 +9,7 @@ namespace Content.Server.Power.Components { [ViewVariables(VVAccess.ReadWrite)] [DataField("supplyRate")] + [GuidebookData] public float MaxSupply { get => NetworkSupply.MaxSupply; set => NetworkSupply.MaxSupply = value; } [ViewVariables(VVAccess.ReadWrite)] diff --git a/Content.Shared/Atmos/Components/GasPressurePumpComponent.cs b/Content.Shared/Atmos/Components/GasPressurePumpComponent.cs index ca6b4d4e22..850a2a7a29 100644 --- a/Content.Shared/Atmos/Components/GasPressurePumpComponent.cs +++ b/Content.Shared/Atmos/Components/GasPressurePumpComponent.cs @@ -1,3 +1,4 @@ +using Content.Shared.Guidebook; using Robust.Shared.GameStates; namespace Content.Shared.Atmos.Components; @@ -21,5 +22,6 @@ public sealed partial class GasPressurePumpComponent : Component /// Max pressure of the target gas (NOT relative to source). /// [DataField] + [GuidebookData] public float MaxTargetPressure = Atmospherics.MaxOutputPressure; } diff --git a/Content.Shared/Doors/Components/FirelockComponent.cs b/Content.Shared/Doors/Components/FirelockComponent.cs index 3f7d6c3f70..cc9278dfe7 100644 --- a/Content.Shared/Doors/Components/FirelockComponent.cs +++ b/Content.Shared/Doors/Components/FirelockComponent.cs @@ -1,3 +1,4 @@ +using Content.Shared.Guidebook; using Robust.Shared.GameStates; namespace Content.Shared.Doors.Components @@ -23,12 +24,14 @@ namespace Content.Shared.Doors.Components /// Maximum pressure difference before the firelock will refuse to open, in kPa. /// [DataField("pressureThreshold"), ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float PressureThreshold = 20; /// /// Maximum temperature difference before the firelock will refuse to open, in k. /// [DataField("temperatureThreshold"), ViewVariables(VVAccess.ReadWrite)] + [GuidebookData] public float TemperatureThreshold = 330; // this used to check for hot-spots, but because accessing that data is a a mess this now just checks // temperature. This does mean a cold room will trigger hot-air pop-ups diff --git a/Resources/Locale/en-US/guidebook/guides.ftl b/Resources/Locale/en-US/guidebook/guides.ftl index 52ac5a09fb..530881abd1 100644 --- a/Resources/Locale/en-US/guidebook/guides.ftl +++ b/Resources/Locale/en-US/guidebook/guides.ftl @@ -1,18 +1,59 @@ guide-entry-ss14 = Station and Shifts guide-entry-engineering = Engineering guide-entry-construction = Construction +guide-entry-expandingrepairingstation = Expanding and Repairing Stations guide-entry-airlock-security = Airlock Upgrades +guide-entry-wirepanels = Wire Panels +guide-entry-airlocks = Airlocks guide-entry-atmospherics = Atmospherics +guide-entry-pipes = Pipes +guide-entry-pumps = Pumps +guide-entry-gasmanipulation = Gas Manipulation +guide-entry-atmosphereinout = Atmosphere In/Out +guide-entry-airvent = Air Vent +guide-entry-passivevent = Passive Vent +guide-entry-airinjector = Air Injector +guide-entry-airscrubber = Air Scrubber +guide-entry-portablescrubber = Portable Scrubber +guide-entry-valves = Valves +guide-entry-manualvalve = Manual Valve +guide-entry-signalvalve = Signal Valve +guide-entry-pneumaticvalve = Pneumatic Valve +guide-entry-passivegate = Passive Gate +guide-entry-mixingandfiltering = Mixing and Filtering +guide-entry-gascanisters = Gas Canisters +guide-entry-thermomachines = Thermomachines +guide-entry-gascondensing = Gas Condensing +guide-entry-radiators = Radiators +guide-entry-atmosphericssystems = Atmospherics Systems +guide-entry-pipenetworks = Pipe Networks +guide-entry-devicemonitoringandcontrol = Device Monitoring and Control +guide-entry-airalarms = Air Alarms +guide-entry-atmosphericalertscomputer = Atmospheric Alerts Computer +guide-entry-atmosphericnetworkmonitor = Atmospheric Network Monitor +guide-entry-fireandgascontrol = Fire and Gas Control +guide-entry-gasminingandstorage = Gas Mining and Storage +guide-entry-atmosphericupsets = Atmospheric Upsets +guide-entry-fires = Fires +guide-entry-spacing = Spacing +guide-entry-atmostools = Atmos Tools +guide-entry-gasses = Gasses guide-entry-botany = Botany -guide-entry-fires = Fires & Space guide-entry-shuttle-craft = Shuttle-craft guide-entry-networking = Networking -guide-entry-network-configurator = Network Configurator guide-entry-access-configurator = Access Configurator guide-entry-power = Power +guide-entry-inspectingpower = Inspecting Power +guide-entry-powerstorage = Power Storage +guide-entry-ramping = Ramping +guide-entry-voltagenetworks = Voltage Networks +guide-entry-generators = Generators guide-entry-portable-generator = Portable Generators guide-entry-ame = Antimatter Engine (AME) -guide-entry-singularity = Singularity / Tesla +guide-entry-singularityteslaengine = Singularity / Tesla +guide-entry-singularityengine = Singularity Engine +guide-entry-teslaengine = Tesla Engine +guide-entry-solarpanels = Solar Panels guide-entry-teg = Thermo-electric Generator (TEG) guide-entry-rtg = RTG guide-entry-jobs = Jobs diff --git a/Resources/Prototypes/Entities/Markers/construction_ghost.yml b/Resources/Prototypes/Entities/Markers/construction_ghost.yml index 04a8a09502..2f0b6c87c8 100644 --- a/Resources/Prototypes/Entities/Markers/construction_ghost.yml +++ b/Resources/Prototypes/Entities/Markers/construction_ghost.yml @@ -7,4 +7,7 @@ color: '#3F38' - type: ConstructionGhost - type: Clickable - - type: InteractionOutline \ No newline at end of file + - type: InteractionOutline + - type: GuideHelp + guides: + - Construction diff --git a/Resources/Prototypes/Entities/Objects/Devices/flatpack.yml b/Resources/Prototypes/Entities/Objects/Devices/flatpack.yml index 82d43cf7d8..4facfd91b3 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/flatpack.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/flatpack.yml @@ -64,7 +64,9 @@ - type: StaticPrice price: 500 - type: GuideHelp - guides: [ AME, Power ] + guides: + - AME + - Power - type: StealTarget stealGroup: AmePartFlatpack @@ -80,7 +82,9 @@ layers: - state: singularity-generator - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power - type: entity parent: BaseFlatpack @@ -94,7 +98,9 @@ layers: - state: radiation-collector - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power - type: entity parent: BaseFlatpack @@ -108,7 +114,9 @@ layers: - state: containment-field-generator - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power - type: entity parent: BaseFlatpack @@ -122,7 +130,9 @@ layers: - state: emitter - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power - type: entity parent: BaseFlatpack @@ -136,7 +146,9 @@ layers: - state: tesla-generator - type: GuideHelp - guides: [ Power ] # TODO add tesla guide + guides: + - TeslaEngine + - Power - type: entity parent: BaseFlatpack @@ -150,7 +162,9 @@ layers: - state: tesla-coil - type: GuideHelp - guides: [ Power ] # TODO add tesla guide + guides: + - TeslaEngine + - Power - type: entity parent: BaseFlatpack @@ -164,7 +178,9 @@ layers: - state: grounding-rod - type: GuideHelp - guides: [ Power ] # TODO add tesla guide + guides: + - TeslaEngine + - Power - type: entity parent: BaseFlatpack diff --git a/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml b/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml index 0df74d80d6..64efe77c7c 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/holoprojectors.yml @@ -67,6 +67,11 @@ - HolofanProjector - type: StaticPrice price: 80 + - type: GuideHelp + guides: + - AtmosTools + - Fires + - Spacing - type: entity parent: HolofanProjector diff --git a/Resources/Prototypes/Entities/Objects/Materials/Sheets/metal.yml b/Resources/Prototypes/Entities/Objects/Materials/Sheets/metal.yml index 82b9f62837..bc9202324d 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/Sheets/metal.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/Sheets/metal.yml @@ -30,6 +30,9 @@ solutions: steel: canReact: false + - type: GuideHelp + guides: + - ExpandingRepairingStation - type: entity parent: SheetMetalBase diff --git a/Resources/Prototypes/Entities/Objects/Materials/parts.yml b/Resources/Prototypes/Entities/Objects/Materials/parts.yml index 700c08e096..1106ce057c 100644 --- a/Resources/Prototypes/Entities/Objects/Materials/parts.yml +++ b/Resources/Prototypes/Entities/Objects/Materials/parts.yml @@ -68,6 +68,9 @@ Quantity: 4.5 - ReagentId: Carbon Quantity: 0.5 + - type: GuideHelp + guides: + - ExpandingRepairingStation - type: entity parent: PartRodMetal diff --git a/Resources/Prototypes/Entities/Objects/Misc/tiles.yml b/Resources/Prototypes/Entities/Objects/Misc/tiles.yml index 9032268958..c730c96546 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/tiles.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/tiles.yml @@ -40,6 +40,9 @@ damage: types: Blunt: 5 + - type: GuideHelp + guides: + - ExpandingRepairingStation - type: entity name: steel dark checker tile diff --git a/Resources/Prototypes/Entities/Objects/Specific/atmos.yml b/Resources/Prototypes/Entities/Objects/Specific/atmos.yml index c67e7ff8c3..7a575b984e 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/atmos.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/atmos.yml @@ -32,3 +32,9 @@ materialComposition: Steel: 400 Glass: 100 + - type: GuideHelp + guides: + - AtmosTools + - PipeNetworks + - Pipes + - GasCanisters diff --git a/Resources/Prototypes/Entities/Objects/Tools/cable_coils.yml b/Resources/Prototypes/Entities/Objects/Tools/cable_coils.yml index 7cc57faaa4..4c24117caa 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/cable_coils.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/cable_coils.yml @@ -29,6 +29,10 @@ - type: PhysicalComposition materialComposition: Steel: 15 + - type: GuideHelp + guides: + - VoltageNetworks + - Power - type: entity id: CableHVStack diff --git a/Resources/Prototypes/Entities/Objects/Tools/tools.yml b/Resources/Prototypes/Entities/Objects/Tools/tools.yml index 4016457263..11f40764b7 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/tools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/tools.yml @@ -126,6 +126,9 @@ Steel: 100 - type: StaticPrice price: 22 + - type: GuideHelp + guides: + - Construction - type: entity name: multitool @@ -174,6 +177,12 @@ Plastic: 100 - type: StaticPrice price: 56 + - type: GuideHelp + guides: + - Networking + - WirePanels + - Airlocks + - InspectingPower - type: entity name: network configurator @@ -224,7 +233,7 @@ price: 56 - type: GuideHelp guides: - - NetworkConfigurator + - Networking #Power tools #Later on these should switch probably switch damage when changing the tool behavior. diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml index f8099f28d7..b1001797ae 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/base_structureairlocks.yml @@ -174,6 +174,11 @@ # This tag is used to nagivate the Airlock construction graph. It's needed because the construction graph is shared between Airlock, AirlockGlass, and HighSecDoor - type: PryUnpowered - type: BlockWeather + - type: GuideHelp + guides: + - Airlocks + - WirePanels + - Networking placement: mode: SnapgridCenter diff --git a/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml b/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml index 5b12fea6e8..a8820b4fc6 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Firelocks/firelock.yml @@ -119,6 +119,11 @@ enabled: false castShadows: false - type: NavMapDoor + - type: GuideHelp + guides: + - FireAndGasControl + - Fires + - Spacing - type: entity id: Firelock diff --git a/Resources/Prototypes/Entities/Structures/Machines/Computers/computers.yml b/Resources/Prototypes/Entities/Structures/Machines/Computers/computers.yml index 8167229ae5..1180b37096 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/Computers/computers.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/Computers/computers.yml @@ -48,6 +48,10 @@ type: AtmosAlertsComputerBoundUserInterface enum.WiresUiKey.Key: type: WiresBoundUserInterface + - type: GuideHelp + guides: + - AtmosphericAlertsComputer + - DeviceMonitoringAndControl - type: entity parent: BaseComputerAiAccess @@ -81,6 +85,10 @@ type: AtmosMonitoringConsoleBoundUserInterface enum.WiresUiKey.Key: type: WiresBoundUserInterface + - type: GuideHelp + guides: + - AtmosphericNetworkMonitor + - DeviceMonitoringAndControl - type: entity parent: BaseComputer @@ -148,6 +156,9 @@ board: !type:Container ents: [] disk_slot: !type:ContainerSlot {} + - type: GuideHelp + guides: + - ShuttleCraft - type: entity parent: BaseComputerShuttle @@ -741,6 +752,10 @@ radius: 1.5 energy: 1.6 color: "#e6e227" + - type: GuideHelp + guides: + - SolarPanels + - Power - type: entity parent: BaseComputerAiAccess diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml index c8727fab93..99fb34bd9a 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/binary.yml @@ -75,7 +75,10 @@ path: /Audio/Ambience/Objects/gas_pump.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasFlowRegulator - + - type: GuideHelp + guides: + - Pumps + - type: entity parent: GasBinaryBase id: GasVolumePump @@ -134,7 +137,10 @@ - type: WiredNetworkConnection - type: AtmosMonitoringConsoleDevice navMapBlip: GasFlowRegulator - + - type: GuideHelp + guides: + - Pumps + - type: entity parent: GasBinaryBase id: GasPassiveGate @@ -165,7 +171,10 @@ path: /Audio/Ambience/Objects/gas_hiss.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasValve - + - type: GuideHelp + guides: + - PassiveGate + - type: entity parent: GasBinaryBase id: GasValve @@ -215,7 +224,10 @@ path: /Audio/Ambience/Objects/gas_hiss.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasValve - + - type: GuideHelp + guides: + - ManualValve + - type: entity parent: GasBinaryBase id: SignalControlledValve @@ -276,7 +288,10 @@ path: /Audio/Ambience/Objects/gas_hiss.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasValve - + - type: GuideHelp + guides: + - SignalValve + - type: entity parent: GasBinaryBase id: GasPort @@ -307,7 +322,10 @@ node: port - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentOpening - + - type: GuideHelp + guides: + - GasCanisters + - type: entity parent: GasVentPump id: GasDualPortVentPump @@ -365,7 +383,10 @@ enabled: true - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentOpening - + - type: GuideHelp + guides: + - AirVent + - type: entity parent: [ BaseMachine, ConstructibleMachine ] id: GasRecycler @@ -429,7 +450,7 @@ board: GasRecyclerMachineCircuitboard - type: AtmosMonitoringConsoleDevice navMapBlip: GasValve - + - type: entity parent: GasBinaryBase id: HeatExchanger @@ -471,6 +492,9 @@ node: radiator - type: AtmosMonitoringConsoleDevice navMapBlip: Thermoregulator + - type: GuideHelp + guides: + - Radiators - type: entity parent: HeatExchanger diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/gas_pipe_sensor.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/gas_pipe_sensor.yml index 22b56908ea..57574f7f7d 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/gas_pipe_sensor.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/gas_pipe_sensor.yml @@ -2,7 +2,7 @@ parent: [AirSensorBase, GasPipeBase] id: GasPipeSensor name: gas pipe sensor - description: Reports on the status of the gas in the attached pipe network. + description: Reports on the status of the gas in the attached pipe network. placement: mode: SnapgridCenter components: @@ -16,8 +16,8 @@ - map: ["base"] state: base - map: [ "enum.PowerDeviceVisualLayers.Powered" ] - state: lights - shader: unshaded + state: lights + shader: unshaded - type: Appearance - type: GenericVisualizer visuals: @@ -34,7 +34,7 @@ - type: ExtensionCableReceiver - type: Construction graph: GasPipeSensor - node: sensor + node: sensor - type: NodeContainer nodes: monitored: @@ -44,34 +44,38 @@ - type: Tag tags: - AirSensor - - Unstackable + - Unstackable + - type: GuideHelp + guides: + - AtmosphericNetworkMonitor + - DeviceMonitoringAndControl - type: entity - parent: GasPipeSensor - id: GasPipeSensorDistribution + parent: GasPipeSensor + id: GasPipeSensorDistribution suffix: Distribution components: - type: Label currentLabel: gas-pipe-sensor-distribution-loop - type: entity - parent: GasPipeSensor - id: GasPipeSensorWaste + parent: GasPipeSensor + id: GasPipeSensorWaste suffix: Waste components: - type: Label currentLabel: gas-pipe-sensor-waste-loop - type: entity - parent: GasPipeSensor - id: GasPipeSensorMixedAir + parent: GasPipeSensor + id: GasPipeSensorMixedAir suffix: Mixed air components: - type: Label currentLabel: gas-pipe-sensor-mixed-air - type: entity - parent: GasPipeSensor + parent: GasPipeSensor id: GasPipeSensorTEGHot suffix: TEG hot components: @@ -79,9 +83,9 @@ currentLabel: gas-pipe-sensor-teg-hot-loop - type: entity - parent: GasPipeSensor + parent: GasPipeSensor id: GasPipeSensorTEGCold suffix: TEG cold components: - type: Label - currentLabel: gas-pipe-sensor-teg-cold-loop \ No newline at end of file + currentLabel: gas-pipe-sensor-teg-cold-loop diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml index 5562715fdb..9637c55bc7 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/miners.yml @@ -32,6 +32,9 @@ - type: GasMiner maxExternalPressure: 300 spawnAmount: 400 + - type: GuideHelp + guides: + - GasMiningAndStorage - type: entity name: O2 gas miner diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/pipes.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/pipes.yml index ef436b4299..a6c322189b 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/pipes.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/pipes.yml @@ -84,6 +84,10 @@ - type: Construction graph: GasPipe node: half + - type: GuideHelp + guides: + - Pipes + - PipeNetworks - type: entity parent: GasPipeBase @@ -117,6 +121,10 @@ Blunt: 8 soundHit: collection: MetalThud # this NEEDS to changed to the metal pipe falling sound effect on april first every year + - type: GuideHelp + guides: + - Pipes + - PipeNetworks - type: entity parent: GasPipeBase @@ -157,6 +165,10 @@ damage: types: Blunt: 8 # Woe, pipe be upon ye! + - type: GuideHelp + guides: + - Pipes + - PipeNetworks - type: entity parent: GasPipeBase @@ -193,6 +205,10 @@ Blunt: 10 soundHit: collection: MetalThud + - type: GuideHelp + guides: + - Pipes + - PipeNetworks - type: entity parent: GasPipeBase @@ -228,6 +244,10 @@ Blunt: 10 soundHit: collection: MetalThud + - type: GuideHelp + guides: + - Pipes + - PipeNetworks - type: entity id: GasPipeBroken @@ -253,3 +273,7 @@ behaviors: - !type:DoActsBehavior acts: ["Destruction"] + - type: GuideHelp + guides: + - Pipes + - PipeNetworks diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/portable.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/portable.yml index eae848c7aa..832a23e8ac 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/portable.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/portable.yml @@ -95,6 +95,9 @@ max: 2 - !type:DoActsBehavior acts: [ "Destruction" ] + - type: GuideHelp + guides: + - PortableScrubber - type: entity id: SpaceHeater @@ -180,6 +183,9 @@ max: 3 - !type:DoActsBehavior acts: [ "Destruction" ] + - type: GuideHelp + guides: + - Thermomachines - type: entity parent: SpaceHeater diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/trinary.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/trinary.yml index 298afcc4b0..06656d0177 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/trinary.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/trinary.yml @@ -72,7 +72,10 @@ path: /Audio/Ambience/Objects/gas_hiss.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasFlowRegulator - + - type: GuideHelp + guides: + - MixingAndFiltering + - type: entity parent: GasFilter id: GasFilterFlipped @@ -162,7 +165,10 @@ path: /Audio/Ambience/Objects/gas_hiss.ogg - type: AtmosMonitoringConsoleDevice navMapBlip: GasFlowRegulator - + - type: GuideHelp + guides: + - MixingAndFiltering + - type: entity parent: GasMixer id: GasMixerFlipped @@ -262,4 +268,9 @@ graph: GasTrinary node: pneumaticvalve - type: AtmosMonitoringConsoleDevice - navMapBlip: GasFlowRegulator \ No newline at end of file + navMapBlip: GasFlowRegulator + - type: GuideHelp + guides: + - PneumaticValve + - Pumps + - Valves diff --git a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/unary.yml b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/unary.yml index 5da85544fc..1b738dedfd 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/unary.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Atmospherics/unary.yml @@ -70,7 +70,11 @@ - type: Weldable - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentOpening - + - type: GuideHelp + guides: + - AirVent + - DeviceMonitoringAndControl + - type: entity parent: GasUnaryBase id: GasPassiveVent @@ -96,7 +100,10 @@ node: passivevent - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentOpening - + - type: GuideHelp + guides: + - PassiveVent + - type: entity parent: [GasUnaryBase, AirSensorBase] id: GasVentScrubber @@ -147,7 +154,11 @@ - type: Weldable - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentScrubber - + - type: GuideHelp + guides: + - AirScrubber + - DeviceMonitoringAndControl + - type: entity parent: GasUnaryBase id: GasOutletInjector @@ -188,7 +199,10 @@ - enum.LightLayers.Unshaded - type: AtmosMonitoringConsoleDevice navMapBlip: GasVentOpening - + - type: GuideHelp + guides: + - AirInjector + - type: entity parent: [ BaseMachinePowered, ConstructibleMachine ] id: BaseGasThermoMachine @@ -234,7 +248,10 @@ - type: PowerSwitch - type: AtmosMonitoringConsoleDevice navMapBlip: Thermoregulator - + - type: GuideHelp + guides: + - Thermomachines + - type: entity parent: BaseGasThermoMachine id: GasThermoMachineFreezer @@ -441,3 +458,6 @@ - type: PowerSwitch - type: AtmosMonitoringConsoleDevice navMapBlip: Thermoregulator + - type: GuideHelp + guides: + - GasCondensing diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/PA/base_particleaccelerator.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/PA/base_particleaccelerator.yml index 01c85a184e..d5b7e3667d 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/PA/base_particleaccelerator.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/PA/base_particleaccelerator.yml @@ -26,7 +26,8 @@ - type: Pullable - type: Clickable - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityTeslaEngine - type: Appearance - type: entity diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/PA/particles.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/PA/particles.yml index 9d3ce9c931..0a36d91e38 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/PA/particles.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/PA/particles.yml @@ -46,8 +46,10 @@ Level1: {state: particle1} Level2: {state: particle2} Level3: {state: particle3} - - type: GuideHelp - guides: [ Singularity, Power ] + - type: GuideHelp # why does this even have a guidebook link in the first place + guides: + - SingularityTeslaEngine + - Power - type: entity name: anti particles diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/collector.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/collector.yml index 3742c037ff..6b8de781b8 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/collector.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/collector.yml @@ -68,7 +68,9 @@ - type: Rotatable - type: Pullable - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power - type: ContainerContainer containers: gas_tank: !type:ContainerSlot {} diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/containment.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/containment.yml index 096aeb2a8b..610ab42621 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/containment.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/containment.yml @@ -65,7 +65,10 @@ True: { visible: true } False: { visible: false } - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityTeslaEngine + - SingularityEngine + - Power - type: entity @@ -100,6 +103,7 @@ throwForce: 50 - type: SyncSprite - type: GuideHelp - guides: [ Singularity, Power ] - - + guides: + - SingularityTeslaEngine + - SingularityEngine + - Power diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/emitter.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/emitter.yml index 298e238f01..110cbbf5dc 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/emitter.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/emitter.yml @@ -91,7 +91,8 @@ - type: Machine board: EmitterCircuitboard - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityTeslaEngine - type: DeviceNetwork deviceNetId: Wireless receiveFrequencyId: BasicDevice diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/generator.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/generator.yml index 45a40bf0fa..8f902f8585 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/generator.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/generator.yml @@ -32,5 +32,7 @@ - type: Anchorable - type: Pullable - type: GuideHelp - guides: [ Singularity, Power ] + guides: + - SingularityEngine + - Power diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/singularity.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/singularity.yml index bf2c6cfcc0..461b17efbb 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/singularity.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Singularity/singularity.yml @@ -61,8 +61,11 @@ enabled: true radius: 10 - type: Appearance - - type: GuideHelp - guides: [ Singularity, Power ] # uhhh.. I would hoped they'd have read the manual before ever getting in viewing distance... + - type: GuideHelp # Always strive to be helpful in trying times. + guides: + - SingularityEngine + - SingularityTeslaEngine + - Power - type: WarpPoint follow: true location: singularity diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/coil.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/coil.yml index dc2ad1687a..fbb1d8c1b0 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/coil.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/coil.yml @@ -101,7 +101,10 @@ SheetSteel1: min: 2 max: 4 - #- type: GuideHelp # TODO - add Tesla Guide + - type: GuideHelp + guides: + - TeslaEngine + - SingularityTeslaEngine - type: entity id: TeslaGroundingRod @@ -184,5 +187,7 @@ SheetSteel1: min: 2 max: 4 - #- type: GuideHelp # TODO - add Tesla Guide - + - type: GuideHelp + guides: + - TeslaEngine + - SingularityTeslaEngine diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/energyball.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/energyball.yml index 558504d579..909601e066 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/energyball.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/energyball.yml @@ -108,6 +108,11 @@ interactSuccessString: petting-success-tesla interactFailureString: petting-failure-tesla interactSuccessSpawn: EffectHearts + - type: GuideHelp # For the curious among the brave. + guides: + - TeslaEngine + - SingularityTeslaEngine + - Power - type: entity id: TeslaMiniEnergyBall diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/generator.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/generator.yml index bdd90f2f16..27b2c5c5a8 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/generator.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/Tesla/generator.yml @@ -25,5 +25,8 @@ layer: - Opaque - type: Anchorable - #- type: GuideHelp # TODO - add Tesla Guide + - type: GuideHelp + guides: + - TeslaEngine + - Power diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/ame.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/ame.yml index ecc5f20420..550dddc847 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/ame.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/ame.yml @@ -98,7 +98,9 @@ containers: fuelSlot: !type:ContainerSlot - type: GuideHelp - guides: [ AME, Power ] + guides: + - AME + - Power - type: Electrified onHandInteract: false onInteractUsing: false @@ -201,7 +203,9 @@ graph: AmeShielding node: ameShielding - type: GuideHelp - guides: [ AME, Power ] + guides: + - AME + - Power - type: Electrified onHandInteract: false onInteractUsing: false diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/generators.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/generators.yml index 6d483bd9ce..2be509e8e6 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/generators.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/generators.yml @@ -87,6 +87,9 @@ onBump: false requirePower: true highVoltageNode: output + - type: GuideHelp + guides: + - ShuttleCraft # Base Wallmount Generator @@ -140,6 +143,9 @@ supplyRampRate: 500 supplyRampTolerance: 500 - type: WallMount + - type: GuideHelp + guides: + - ShuttleCraft # Construction Frames @@ -225,6 +231,9 @@ - type: ContainerContainer containers: board: !type:Container + - type: GuideHelp + guides: + - ShuttleCraft # RTG - no fuel requirement diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/portable_generator.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/portable_generator.yml index c822e0c0b3..a7b55841e5 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/portable_generator.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/portable_generator.yml @@ -75,7 +75,9 @@ - !type:DoActsBehavior acts: ["Destruction"] - type: GuideHelp - guides: [ PortableGenerator, Power ] + guides: + - PortableGenerator + - Power # Core functionality - type: PortableGenerator diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/solar.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/solar.yml index 5663cbdf2f..f64f6612b0 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/solar.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/solar.yml @@ -50,6 +50,9 @@ requirePower: true highVoltageNode: output - type: RequireProjectileTarget + - type: GuideHelp + guides: + - SolarPanels - type: entity id: SolarPanelPlasma @@ -291,6 +294,9 @@ node: solarassembly defaultTarget: solarpanel - type: RequireProjectileTarget + - type: GuideHelp + guides: + - SolarPanels - type: entity id: SolarTracker @@ -336,3 +342,6 @@ graph: SolarPanel node: solartracker - type: RequireProjectileTarget + - type: GuideHelp + guides: + - SolarPanels diff --git a/Resources/Prototypes/Entities/Structures/Power/Generation/teg.yml b/Resources/Prototypes/Entities/Structures/Power/Generation/teg.yml index b7f43614db..860462788b 100644 --- a/Resources/Prototypes/Entities/Structures/Power/Generation/teg.yml +++ b/Resources/Prototypes/Entities/Structures/Power/Generation/teg.yml @@ -97,7 +97,9 @@ sound: path: /Audio/Ambience/Objects/vending_machine_hum.ogg - type: GuideHelp - guides: [ TEG, Power ] + guides: + - TEG + - Power - type: StealTarget stealGroup: Teg @@ -156,7 +158,9 @@ - type: Anchorable - type: Pullable - type: GuideHelp - guides: [ TEG, Power ] + guides: + - TEG + - Power # functionality - type: NodeContainer diff --git a/Resources/Prototypes/Entities/Structures/Power/apc.yml b/Resources/Prototypes/Entities/Structures/Power/apc.yml index abf6931c5e..6fe749b7dd 100644 --- a/Resources/Prototypes/Entities/Structures/Power/apc.yml +++ b/Resources/Prototypes/Entities/Structures/Power/apc.yml @@ -143,6 +143,10 @@ priority: 1 - type: StaticPrice price: 500 + - type: GuideHelp + guides: + - VoltageNetworks + - Power # APC under construction - type: entity diff --git a/Resources/Prototypes/Entities/Structures/Power/smes.yml b/Resources/Prototypes/Entities/Structures/Power/smes.yml index db98b0d0f7..a8b5ac9c53 100644 --- a/Resources/Prototypes/Entities/Structures/Power/smes.yml +++ b/Resources/Prototypes/Entities/Structures/Power/smes.yml @@ -92,6 +92,11 @@ sendBroadcastAttemptEvent: true examinableAddress: true - type: WiredNetworkConnection + - type: GuideHelp + guides: + - PowerStorage + - VoltageNetworks + - Power # SMES' in use diff --git a/Resources/Prototypes/Entities/Structures/Power/substation.yml b/Resources/Prototypes/Entities/Structures/Power/substation.yml index a8bdebd10a..ee4d8c3021 100644 --- a/Resources/Prototypes/Entities/Structures/Power/substation.yml +++ b/Resources/Prototypes/Entities/Structures/Power/substation.yml @@ -108,6 +108,10 @@ requirePower: true highVoltageNode: input mediumVoltageNode: output + - type: GuideHelp + guides: + - VoltageNetworks + - Power # Compact Wall Substation Base - type: entity @@ -214,6 +218,10 @@ totalIntensity: 100 - type: StationInfiniteBatteryTarget - type: WallMount + - type: GuideHelp + guides: + - VoltageNetworks + - Power # Substations in use diff --git a/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml b/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml index fa8b382ade..cbc556cb12 100644 --- a/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml +++ b/Resources/Prototypes/Entities/Structures/Shuttles/thrusters.yml @@ -55,6 +55,9 @@ collection: MetalBreak - type: StaticPrice price: 300 + - type: GuideHelp + guides: + - ShuttleCraft placement: mode: SnapgridCenter diff --git a/Resources/Prototypes/Entities/Structures/Specific/Atmospherics/sensor.yml b/Resources/Prototypes/Entities/Structures/Specific/Atmospherics/sensor.yml index 6d6526201f..d46fb156b1 100644 --- a/Resources/Prototypes/Entities/Structures/Specific/Atmospherics/sensor.yml +++ b/Resources/Prototypes/Entities/Structures/Specific/Atmospherics/sensor.yml @@ -17,7 +17,7 @@ pressureThresholdId: stationPressure gasThresholdPrototypes: Oxygen: stationOxygen - Nitrogen: stationNitrogen + Nitrogen: ignore CarbonDioxide: stationCO2 Plasma: stationPlasma Tritium: stationTritium @@ -27,8 +27,12 @@ Frezon: danger - type: Tag tags: - - AirSensor - - ForceFixRotations + - AirSensor + - ForceFixRotations + - type: GuideHelp + guides: + - DeviceMonitoringAndControl + - AtmosphericsSystems - type: entity id: AirSensor diff --git a/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml b/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml index 1db376ceeb..c8c03a95e8 100644 --- a/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml +++ b/Resources/Prototypes/Entities/Structures/Storage/Canisters/gas_canisters.yml @@ -104,6 +104,9 @@ access: [["Atmospherics"], ["Engineering"], ["Research"]] - type: Lock locked: false + - type: GuideHelp + guides: + - GasCanisters - type: entity parent: GasCanister diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/air_alarm.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/air_alarm.yml index 82959ebdd8..657c803d92 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/air_alarm.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/air_alarm.yml @@ -112,6 +112,10 @@ collection: MetalGlassBreak params: volume: -4 + - type: GuideHelp + guides: + - AirAlarms + - DeviceMonitoringAndControl - type: entity id: AirAlarmAssembly diff --git a/Resources/Prototypes/Entities/Structures/Wallmounts/fire_alarm.yml b/Resources/Prototypes/Entities/Structures/Wallmounts/fire_alarm.yml index 03bc3e4a8d..38371ee29b 100644 --- a/Resources/Prototypes/Entities/Structures/Wallmounts/fire_alarm.yml +++ b/Resources/Prototypes/Entities/Structures/Wallmounts/fire_alarm.yml @@ -85,6 +85,9 @@ - type: Damageable damageContainer: StructuralInorganic damageModifierSet: Metallic + - type: GuideHelp + guides: + - Networking - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/Guidebook/engineering.yml b/Resources/Prototypes/Guidebook/engineering.yml index 21d17f0227..07a377e005 100644 --- a/Resources/Prototypes/Guidebook/engineering.yml +++ b/Resources/Prototypes/Guidebook/engineering.yml @@ -13,9 +13,28 @@ id: Construction name: guide-entry-construction text: "/ServerInfo/Guidebook/Engineering/Construction.xml" - children: + children: + - Airlocks + - ExpandingRepairingStation + - WirePanels + +- type: guideEntry + id: ExpandingRepairingStation + name: guide-entry-expandingrepairingstation + text: "/ServerInfo/Guidebook/Engineering/ExpandingRepairingStation.xml" + +- type: guideEntry + id: Airlocks + name: guide-entry-airlocks + text: "/ServerInfo/Guidebook/Engineering/Airlocks.xml" + children: - AirlockSecurity - + +- type: guideEntry + id: WirePanels + name: guide-entry-wirepanels + text: "/ServerInfo/Guidebook/Engineering/WirePanels.xml" + - type: guideEntry id: AirlockSecurity name: guide-entry-airlock-security @@ -26,13 +45,206 @@ name: guide-entry-atmospherics text: "/ServerInfo/Guidebook/Engineering/Atmospherics.xml" children: + - GasManipulation + - AtmosphericsSystems + - AtmosphericUpsets + - AtmosTools + - Gasses + +- type: guideEntry + id: GasManipulation + name: guide-entry-gasmanipulation + text: "/ServerInfo/Guidebook/Engineering/GasManipulation.xml" + children: + - AtmosphereInOut + - Pipes + - Pumps + - Valves + - MixingAndFiltering + - GasCanisters + - Thermomachines + - GasCondensing + +- type: guideEntry + id: Pipes + name: guide-entry-pipes + text: "/ServerInfo/Guidebook/Engineering/Pipes.xml" + +- type: guideEntry + id: Pumps + name: guide-entry-pumps + text: "/ServerInfo/Guidebook/Engineering/Pumps.xml" + +- type: guideEntry + id: AtmosphereInOut + name: guide-entry-atmosphereinout + text: "/ServerInfo/Guidebook/Engineering/AtmosphereInOut.xml" + children: + - AirVent + - PassiveVent + - AirInjector + - AirScrubber + - PortableScrubber + +- type: guideEntry + id: AirVent + name: guide-entry-airvent + text: "/ServerInfo/Guidebook/Engineering/AirVent.xml" + +- type: guideEntry + id: PassiveVent + name: guide-entry-passivevent + text: "/ServerInfo/Guidebook/Engineering/PassiveVent.xml" + +- type: guideEntry + id: AirInjector + name: guide-entry-airinjector + text: "/ServerInfo/Guidebook/Engineering/AirInjector.xml" + +- type: guideEntry + id: AirScrubber + name: guide-entry-airscrubber + text: "/ServerInfo/Guidebook/Engineering/AirScrubber.xml" + +- type: guideEntry + id: PortableScrubber + name: guide-entry-portablescrubber + text: "/ServerInfo/Guidebook/Engineering/PortableScrubber.xml" + +- type: guideEntry + id: Valves + name: guide-entry-valves + text: "/ServerInfo/Guidebook/Engineering/Valves.xml" + children: + - ManualValve + - SignalValve + - PneumaticValve + - PassiveGate + +- type: guideEntry + id: ManualValve + name: guide-entry-manualvalve + text: "/ServerInfo/Guidebook/Engineering/ManualValve.xml" + +- type: guideEntry + id: SignalValve + name: guide-entry-signalvalve + text: "/ServerInfo/Guidebook/Engineering/SignalValve.xml" + +- type: guideEntry + id: PneumaticValve + name: guide-entry-pneumaticvalve + text: "/ServerInfo/Guidebook/Engineering/PneumaticValve.xml" + +- type: guideEntry + id: PassiveGate + name: guide-entry-passivegate + text: "/ServerInfo/Guidebook/Engineering/PassiveGate.xml" + +- type: guideEntry + id: MixingAndFiltering + name: guide-entry-mixingandfiltering + text: "/ServerInfo/Guidebook/Engineering/MixingAndFiltering.xml" + +- type: guideEntry + id: GasCanisters + name: guide-entry-gascanisters + text: "/ServerInfo/Guidebook/Engineering/GasCanisters.xml" + +- type: guideEntry + id: Thermomachines + name: guide-entry-thermomachines + text: "/ServerInfo/Guidebook/Engineering/Thermomachines.xml" + children: + - Radiators + +- type: guideEntry + id: GasCondensing + name: guide-entry-gascondensing + text: "/ServerInfo/Guidebook/Engineering/GasCondensing.xml" + +- type: guideEntry + id: Radiators + name: guide-entry-radiators + text: "/ServerInfo/Guidebook/Engineering/Radiators.xml" + +- type: guideEntry + id: AtmosphericsSystems + name: guide-entry-atmosphericssystems + text: "/ServerInfo/Guidebook/Engineering/AtmosphericsSystems.xml" + children: + - PipeNetworks + - DeviceMonitoringAndControl + - FireAndGasControl + - GasMiningAndStorage + +- type: guideEntry + id: PipeNetworks + name: guide-entry-pipenetworks + text: "/ServerInfo/Guidebook/Engineering/PipeNetworks.xml" + +- type: guideEntry + id: DeviceMonitoringAndControl + name: guide-entry-devicemonitoringandcontrol + text: "/ServerInfo/Guidebook/Engineering/DeviceMonitoringAndControl.xml" + children: + - AirAlarms + - AtmosphericAlertsComputer + - AtmosphericNetworkMonitor + +- type: guideEntry + id: AirAlarms + name: guide-entry-airalarms + text: "/ServerInfo/Guidebook/Engineering/AirAlarms.xml" + +- type: guideEntry + id: AtmosphericAlertsComputer + name: guide-entry-atmosphericalertscomputer + text: "/ServerInfo/Guidebook/Engineering/AtmosphericAlertsComputer.xml" + +- type: guideEntry + id: AtmosphericNetworkMonitor + name: guide-entry-atmosphericnetworkmonitor + text: "/ServerInfo/Guidebook/Engineering/AtmosphericNetworkMonitor.xml" + +- type: guideEntry + id: FireAndGasControl + name: guide-entry-fireandgascontrol + text: "/ServerInfo/Guidebook/Engineering/FireAndGasControl.xml" + +- type: guideEntry + id: GasMiningAndStorage + name: guide-entry-gasminingandstorage + text: "/ServerInfo/Guidebook/Engineering/GasMiningAndStorage.xml" + +- type: guideEntry + id: AtmosphericUpsets + name: guide-entry-atmosphericupsets + text: "/ServerInfo/Guidebook/Engineering/AtmosphericUpsets.xml" + children: - Fires + - Spacing - type: guideEntry id: Fires name: guide-entry-fires text: "/ServerInfo/Guidebook/Engineering/Fires.xml" +- type: guideEntry + id: Spacing + name: guide-entry-spacing + text: "/ServerInfo/Guidebook/Engineering/Spacing.xml" + +- type: guideEntry + id: AtmosTools + name: guide-entry-atmostools + text: "/ServerInfo/Guidebook/Engineering/AtmosTools.xml" + +- type: guideEntry + id: Gasses + name: guide-entry-gasses + text: "/ServerInfo/Guidebook/Engineering/Gasses.xml" + - type: guideEntry id: ShuttleCraft name: guide-entry-shuttle-craft @@ -43,14 +255,8 @@ name: guide-entry-networking text: "/ServerInfo/Guidebook/Engineering/Networking.xml" children: - - NetworkConfigurator - AccessConfigurator -- type: guideEntry - id: NetworkConfigurator - name: guide-entry-network-configurator - text: "/ServerInfo/Guidebook/Engineering/NetworkConfigurator.xml" - - type: guideEntry id: AccessConfigurator name: guide-entry-access-configurator @@ -60,12 +266,44 @@ id: Power name: guide-entry-power text: "/ServerInfo/Guidebook/Engineering/Power.xml" + children: + - Generators + - InspectingPower + - PowerStorage + - Ramping + - VoltageNetworks + +- type: guideEntry + id: InspectingPower + name: guide-entry-inspectingpower + text: "/ServerInfo/Guidebook/Engineering/InspectingPower.xml" + +- type: guideEntry + id: PowerStorage + name: guide-entry-powerstorage + text: "/ServerInfo/Guidebook/Engineering/PowerStorage.xml" + +- type: guideEntry + id: Ramping + name: guide-entry-ramping + text: "/ServerInfo/Guidebook/Engineering/Ramping.xml" + +- type: guideEntry + id: VoltageNetworks + name: guide-entry-voltagenetworks + text: "/ServerInfo/Guidebook/Engineering/VoltageNetworks.xml" + +- type: guideEntry + id: Generators + name: guide-entry-generators + text: "/ServerInfo/Guidebook/Engineering/Generators.xml" children: - PortableGenerator - AME - - Singularity + - SingularityTeslaEngine - TEG - RTG + - SolarPanels - type: guideEntry id: AME @@ -73,9 +311,22 @@ text: "/ServerInfo/Guidebook/Engineering/AME.xml" - type: guideEntry - id: Singularity - name: guide-entry-singularity - text: "/ServerInfo/Guidebook/Engineering/Singularity.xml" + id: SingularityTeslaEngine + name: guide-entry-singularityteslaengine + text: "/ServerInfo/Guidebook/Engineering/SingularityTeslaEngine.xml" + children: + - SingularityEngine + - TeslaEngine + +- type: guideEntry + id: SingularityEngine + name: guide-entry-singularityengine + text: "/ServerInfo/Guidebook/Engineering/SingularityEngine.xml" + +- type: guideEntry + id: TeslaEngine + name: guide-entry-teslaengine + text: "/ServerInfo/Guidebook/Engineering/TeslaEngine.xml" - type: guideEntry id: TEG @@ -91,3 +342,8 @@ id: PortableGenerator name: guide-entry-portable-generator text: "/ServerInfo/Guidebook/Engineering/PortableGenerator.xml" + +- type: guideEntry + id: SolarPanels + name: guide-entry-solarpanels + text: "/ServerInfo/Guidebook/Engineering/SolarPanels.xml" diff --git a/Resources/ServerInfo/Guidebook/Engineering/AME.xml b/Resources/ServerInfo/Guidebook/Engineering/AME.xml index 4b55ce85c5..2881e1c0c5 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/AME.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/AME.xml @@ -1,7 +1,8 @@ # Antimatter Engine (AME) + The Antimatter Engine is a short-term support generator for the station, providing a sizable chunk of power for a limited time. - The AME is one of the simplest engines available. You put together the multi-tile structure, stick some fuel into it, and you're all set. This doesn't mean it is perfectly safe though; you may need to deal with the AME overheating. + It's mainly used to assist engineers in starting up bigger engines like the [textlink="Singularity Engine" link="SingularityEngine"] or [textlink="Tesla Engine" link="TeslaEngine"], by supplementing the station's [textlink="batteries" link="PowerStorage"] with partial power to extend their runtime. ## Construction Required parts: @@ -11,15 +12,65 @@ - To assemble an AME, start by wrenching down the controller on the near end of a HV wire. On most stations, there's catwalks to assist with this. From there, start putting down a 3x3 or larger square of AME parts in preparation for construction, making sure to maximize the number of "center" pieces that are surrounded on all 8 sides. + The AME Controller is the part of the AME that outputs power to the station's grid through an [textlink="HV connection" link="VoltageNetworks"]. + Because of this, you'll want to start your AME construction with the controller on top of an [color=orange]HV wire[/color]. - Once this is done, you can use a multitool to convert each AME part into shielding, which should form a finished AME configuration. From there, insert a fuel jar, set the fuel rate to [color=#a4885c]twice the core count or less[/color], and turn on injection. Any more than this ratio will eventually result in the engine [color=#ff0000]overheating and[/color], shortly afterwards, [color=#ff0000]exploding[/color]. + Most stations have exposed [color=orange]HV wiring[/color] or designated spots to wrench an AME controller, so that it connects to the grid. - ## Fuel Economy - The closer you are to the perfect ratio of [color=#a4885c]1:2[/color] AME cores to fuel injection rate, the more efficient you'll be. You're cutting fuel efficiency to [color=#a4885c]50% and less[/color] if you're using more cores, but a lower fuel injection rate. - For an example, [color=#76db91]3 cores and 6 fuel injected[/color] will generate [color=#76db91]240kW[/color], while [color=#f0684d]8 cores and 8 fuel injected[/color] will generate [color=#f0684d]160kW[/color]; you'd be generating 80kW less while spending 2 more fuel per injection. + AME shielding is the physical structure that makes the antimatter engine. It's made by converting AME flatpacks into shielding using a multitool. - ## Upgrading the AME + To construct an AME, start putting down a 3x3 or larger square of AME flatpacks in preparation for construction, making sure to maximize the number of "center" pieces that are surrounded on all eight sides. + The greater amount of center pieces, the more cores your AME will have, and the more power it will be able to output safely. + + + + + + + + + + + + + + + + + + Once this is done, you can use a multitool to convert each AME flatpack into shielding, which should form a finished AME configuration. + + + + + + + + + + + + + + + + + + + [color=#999999][italic]An example of a one core setup[italic][/color] + + + ## Operation + To start the AME, insert a fuel jar into the AME controller, and set the safe injection rate. + + The safe injection rate is the point where the AME can safely run without overheating, while maximizing power output. + + This rate is always twice the core count. + + For example, an AME with one core will have a safe injection rate of 2. With two cores, the safe injection rate would be 4, and so on. + + Any more than this ratio will eventually result in the engine [color=#ff0000]overheating[/color] and, shortly afterwards, [color=#ff0000]exploding[/color]. + + The AME controller will [textlink="report" link="InspectingPower"] on both the amount of power it is providing to the grid, and the theoretical maximum power it could provide if demanded. - You can generally only upgrade the AME by installing more cores, which can be done by ordering more AME flatpacks from [color=#a4885c]Cargo[/color]. diff --git a/Resources/ServerInfo/Guidebook/Engineering/AirAlarms.xml b/Resources/ServerInfo/Guidebook/Engineering/AirAlarms.xml new file mode 100644 index 0000000000..cee11539d4 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AirAlarms.xml @@ -0,0 +1,65 @@ + + # Air Alarms + The Air Alarm is a device that enables central monitoring and control over all relevant Atmos devices linked to it. + + + + + + Using the Air Alarm, Atmos can quickly and efficiently manage the atmosphere in a given area. + + A room will often have an Air Alarm mounted on the wall, for quick control over multiple devices in that room. + + You can see how to link devices in the [textlink="Link" link="Networking"] guide. + + ## User Interface + Interacting with an Air Alarm will bring up a menu with 3 sections: + - Top: The current status of the air alarm. This includes the current pressure and temperature of the area the air alarm is monitoring. + - Middle: Lists of linked [textlink="Air Vents" link="AirVent"] and [textlink="Air Scrubbers" link="AirScrubber"], as well as all sensors reporting back to the air alarm. + - Bottom: Buttons to control air alarm operating modes, as well as the ability to toggle the automatic changing of modes. + + ## Alarm Status + Air alarms quickly communicate the status of the area they are monitoring through the color of the light on the device: + - [color=green]Normal[/color]: The area is safe to breathe in. + - [color=yellow]Warning[/color]: The area is starting to deviate from the desired atmosphere, and is becoming unsafe. + - [color=red]Danger[/color]: The area is no longer safe, internals and/or hardsuits are required. + + Air alarms will automatically drop (close) linked [textlink="firelocks" link="FireAndGasControl"] when the [color=Red]Danger[/color] status is reached. + These [textlink="firelocks" link="FireAndGasControl"] will automatically raise (open) when the status returns to [color=green]Normal[/color]. + + Air alarms have [textlink="signal" link="Networking"] outputs for each of the three statuses, which can be used to trigger other [textlink="signal" link="Networking"] devices when the status changes. + + ## Sensors + All [textlink="Air Vents" link="AirVent"] and [textlink="Air Scrubbers" link="AirScrubber"] have a built-in sensor, which reports back to the air alarm. + These sensors can be adjusted in the [bold]Sensors[/bold] tab of the air alarm menu. + + An air alarm's status is directly determined by the thresholds on each sensor. + If a sensor reports a pressure, temperature, or gas composition outside the set thresholds, the air alarm will change its status accordingly. + + These thresholds can be adjusted and disabled as needed. + For example, if you are monitoring a room that naturally has a low temperature (such as a freezer) or a high temperature (such as a burn chamber), you can adjust the temperature thresholds to match the expected values. + + An air sensor can also be constructed and [textlink="linked" link="Networking"] to an air alarm. + + + + + + This is useful for monitoring areas that you don't have an air vent or scrubber in already. + + ## Operating Modes + To control connected devices quickly, air alarms feature operating modes, which quickly changes the behavior of all linked devices to achieve a desired effect. + - None: Disables all devices linked to the air alarm. + - Filtering: [textlink="Air Vents" link="AirVent"] will be enabled with their external bound set to standard atmospheric pressure. [textlink="Air Scrubbers" link="AirScrubber"] will be enabled and scrub all waste gasses normally. + - Filtering (Wide): Same as Filtering, but all linked [textlink="Air Scrubbers" link="AirScrubber"] will enable their WideNet mode. + - Fill: [textlink="Air Vents" link="AirVent"] will be enabled with their external bound set to max pressure, [color=orange][protodata="GasVentPump" comp="GasVentPump" member="MaxPressure"/] kPa[/color]. [textlink="Air Scrubbers" link="AirScrubber"] will be disabled. + - Panic: [textlink="Air Vents" link="AirVent"] will be disabled, and [textlink="Air Scrubbers" link="AirScrubber"] will be set to siphon mode. + + Air alarms will automatically switch between the Filtering and Filtering (Wide) modes based on the current status of the area they are monitoring. + - If the area reaches [color=red]Danger[/color] status or above, the air alarm will switch to Filtering (Wide) mode. + - If the area reaches [color=green]Normal[/color] or [color=yellow]Warning[/color] status, the air alarm will switch to Filtering mode. + + This behavior can be disabled by toggling the "Auto" box in the bottom section of the air alarm menu. + + Relevant tips on how to fix [textlink="spacing" link="Spacing"] and [textlink="fires" link="Fires"] can be found in the relevant guides. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AirInjector.xml b/Resources/ServerInfo/Guidebook/Engineering/AirInjector.xml new file mode 100644 index 0000000000..3c4027dcb3 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AirInjector.xml @@ -0,0 +1,15 @@ + + #Air Injector + The air injector is a special vent that forces gasses into the atmosphere it's exposed to. + + + + It is primarily used to force gasses into high-pressure rooms like the station's [textlink="gas storage rooms" link="GasMiningAndStorage"], or a burn chamber. + + The air injector does not require [textlink="power" link="Power"] to function. + + The air injector will inject gasses into the atmosphere it's exposed to until the atmosphere reaches [color=orange][protodata="GasOutletInjector" comp="GasOutletInjector" member="MaxPressure"/] kPa[/color]. + + The air injector's speed is proportional to the amount of gas in the injector. + The more gas in the injector, the faster it will inject gas into the exposed atmosphere. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AirScrubber.xml b/Resources/ServerInfo/Guidebook/Engineering/AirScrubber.xml new file mode 100644 index 0000000000..ebf1ffb6af --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AirScrubber.xml @@ -0,0 +1,46 @@ + + # Air Scrubber + The air scrubber is essential in maintaining an atmosphere free of waste gasses emitted by breathing creatures and atmospheric upsets. + Its primary job is to scrub unwanted gasses from the atmosphere it's exposed to. + + + + The air scrubber requires [textlink="power" link="Power"] through a nearby [textlink="LV cable" link="VoltageNetworks"] to function. + + The default behavior of an air scrubber is to scrub all gasses except Nitrogen and Oxygen from the atmosphere it's exposed to. It will continue this behavior unless directed by a [textlink="linked" link="Networking"] [textlink="air alarm" link="AirAlarms"]. + + The scrubber can be welded with any welding tool to stop it from functioning. + + ## Configuration Options + When [textlink="linked" link="Networking"] to an [textlink="air alarm" link="AirAlarms"], air scrubbers gain more functionality. + + The target gasses for scrubbing can be defined in the "Gas filters" dropdown. Keep in mind this resets if you change [textlink="air alarm" link="AirAlarms"] modes. + + Air scrubbers have two "direction" options: Scrubbing and Siphoning. + - Scrubbing scrubs gasses as defined in the gas filters. + - Siphoning ignores all gas filters, and sucks all gasses out of the atmosphere. + + Both of these modes are limited by the Rate setting, which defines the rate (in litres) at which the scrubber sucks gasses from its exposed atmosphere. + + Air scrubbers also have a "WideNet" setting, which expands the radius of the scrubber's operating range. Normally, the scrubber scrubs the atmosphere on the single tile it's exposed to. + In WideNet mode, the scrubber scrubs gas from the 4 tiles surrounding the scrubber, as shown: + + + + + + + + + + + + + + This effectively multiplies its total speed, as air scrubbers will now preform their scrubbing work on 5 tiles at once. + + Scrubbers [textlink="linked" link="Networking"] to an [textlink="air alarm" link="AirAlarms"] in auto mode will automatically enable WideNet mode under the [textlink="air alarm's" link="AirAlarms"] "Filtering (Wide)" mode when a high concentration of unwanted gasses is detected in the atmosphere. + + WideNet is extremely useful in quickly scrubbing large amounts of tritium from plasma burn chambers. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AirVent.xml b/Resources/ServerInfo/Guidebook/Engineering/AirVent.xml new file mode 100644 index 0000000000..d6b81fa19b --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AirVent.xml @@ -0,0 +1,64 @@ + + # Air Vent + The air vent is a standard vent, found in all rooms that you want to pressurize with a breathable atmosphere. + Its primary job is to transfer gasses into the atmosphere it's exposed to until it reaches a set pressure. + + + + + + The air vent requires [textlink="power" link="Power"] through a nearby [textlink="LV cable" link="VoltageNetworks"] to function. + + The air vent can be welded with any welding tool to stop it from functioning. + + ## Default Operation + The default behavior of an air vent is to simply output gas to the exposed atmosphere at a pressure of [color=orange][protodata="GasVentPump" comp="GasVentPump" member="DefaultExternalBound"/] kPa[/color]. + + The speed of the air vent scales with the difference between twice the connected [textlink="pipenet's" link="PipeNetworks"] pressure and the pressure of the exposed atmosphere. + To put it in a word equation: + + [italic]Speed = 2 × Pipenet Pressure - Exposed Atmosphere Pressure[/italic] + + + For example, this means that an air vent will be unable to pump to 101.3 kPa if the gas inside the vent goes below half that. + + ## Pressure Lockout + Air vents will enter [color=red]pressure lockout[/color] when the pressure of the atmosphere it's exposed to is below [color=orange][protodata="GasVentPump" comp="GasVentPump" member="UnderPressureLockoutThreshold"/] kPa[/color]. + This is to prevent wasting useful gasses to space if a room is not sealed. + The lights on the air vent will turn [color=yellow]yellow[/color] to highlight this change. + + This can be [color=green]overridden[/color] by using a screwdriver on the vent, or setting the mode to Fill on a connected [textlink="air alarm" link="AirAlarms"]. + + It is important to note that air vents in [color=red]pressure lockout[/color] still very slowly leak out gas. + The amount of gas they leak out is relative to the current pressure of the pipenet they're connected to. + + ## Configuration Options + When [textlink="linked" link="Networking"] to an [textlink="air alarm" link="AirAlarms"], air vents gain more functionality. + + Air vents have two "vent direction" options: Releasing and Siphoning. + - Releasing simply releases gasses into the atmosphere from the connected pipenet. + - Siphoning sucks the air out of the atmosphere and into the connected pipenet. The lights on the air vent will turn [color=red]red[/color] to highlight this change. + + ## Pressure Bounds + Air vents have a pressure bound system, which controls the pressure at which an air vent will pressurize an atmosphere, or draw from a connected pipenet. These limits are taken into account in both releasing and siphoning modes. + + The "PressureBound" setting has four options: + - ExternalBound makes the air vent respect the pressure limits defined in the External bound entry. + - InternalBound makes the air vent respect the pressure limits defined in the Internal bound entry. + - Both makes the air vent respect the pressure limits defined in both the External and Internal bound entries. + - NoBound makes the air vent respect no limit. + + When the vent is in releasing mode: + - If the External bound pressure is set to 101.3 kPa, the air vent will not pressurize the atmosphere above 101.3 kPa. + - If the Internal bound pressure is set to 50 kPa, the air vent will not draw gas from the connected pipe if its pressure is below 50 kPa. + + When the vent is in siphoning mode: + - If the External bound pressure is set to 101.3 kPa, the air vent will siphon gases until the atmosphere reaches 101.3 kPa. + - If the Internal bound pressure is set to 50 kPa, the air vent will not push gases into the pipenet if its pressure is above 50 kPa. + + If you're still confused about PressureBounds, here's a simple way to think about it: + - You can think of the External bound as the upper limit for the exposed atmosphere. "I will not pressurize the exposed atmosphere past this pressure, or draw from the atmosphere below this pressure." + - You can think of the Internal bound as the lower limit for the connected pipenet. "I will not draw from my source below this pressure, or push air into the pipenet above this pressure." + - The "Pressure bound" settings simply define which limits to respect or ignore. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AirlockSecurity.xml b/Resources/ServerInfo/Guidebook/Engineering/AirlockSecurity.xml index 82faa60810..fd8df9bb02 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/AirlockSecurity.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/AirlockSecurity.xml @@ -27,16 +27,13 @@ - Close the maintenance panel using the screwdriver. ## High security airlocks - For airlocks leading to the more sensitive areas of the space station, the use of stronger deterrents are advised. High security airlocks have improved armor plating to protect its internal wiring, along with an electrified security grille. + For airlocks leading to the more sensitive areas of the space station, the use of stronger deterrents are advised. High security airlocks have improved armor plating to protect its internal wiring. To upgrade a medium security airlock to a high security airlock, you will require the following materials: - - - @@ -49,17 +46,19 @@ - Use the screwdriver to open the airlock maintenance panel. - Add the plasteel sheets to the airlock. - Weld the plasteel sheets into place. - - Add the metal rods to the airlock. - Close the maintenance panel using the screwdriver. ## Maximum security airlocks - You can optionally upgrade a high security airlock to a maximum security airlock. Maximum security airlocks possess an additional layer of plasteel plating on top of its other protections. + You can optionally upgrade a high security airlock to a maximum security airlock. Maximum security airlocks possess an additional layer of electrified wire mesh on top of its other protections, which can shock any unauthorized personnel attempting to tamper with the airlock. To upgrade a high security airlock to a maximum security airlock, you will require the following materials: + + + @@ -72,5 +71,6 @@ - Use the screwdriver to open the airlock maintenance panel. - Add the plasteel sheets to the airlock. - Weld the plasteel sheets into place. + - Add the metal rods to the airlock. - Close the maintenance panel using the screwdriver. diff --git a/Resources/ServerInfo/Guidebook/Engineering/Airlocks.xml b/Resources/ServerInfo/Guidebook/Engineering/Airlocks.xml new file mode 100644 index 0000000000..9b657c5399 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Airlocks.xml @@ -0,0 +1,137 @@ + + # Airlocks + Airlocks are used to control access to different areas of the station. + + + + + + + Airlocks can be opened using either [color=yellow][bold][keybind="Use"][/bold][/color] with an empty hand, [color=yellow][bold][keybind="ActivateItemInWorld"][/bold][/color] if hands are full, or by colliding with the airlock. + + Airlocks will only open if you have an ID card with the correct access level. + The ID card must be in your hand or in your ID slot. + In the case of having multiple IDs, the airlock will check them all when you try to open it. + This behavior is also the same for IDs in a PDA. + + The access level required to open the door can be modified using an Access Configurator, or by using a Multitool on the door electronics for the airlock (which requires deconstruction). + + + + + + + + Airlocks block gas flow, so they can be used to seal off areas in case of a [textlink="hull breach" link="Spacing"] or a [textlink="fire." link="Fires"] + They also store gas on their tile, even when closed, so be careful when opening them during or after a gas leak. + + ## Bolting and Emergency Access + Airlocks can be bolted to prevent them from being opened or pried open by hand. When this occurs, the airlock will display red lights on the top of the door. + + Airlocks can also be set to emergency access. In this mode, anyone can open the airlock, regardless of access level. When this occurs, the airlock will display flashing yellow lights on the top of the door. + + ## Remote Control + Airlocks can be controlled remotely, either by the station AI or by using a Door Remote. + + + + + [color=#999999][italic]The Station AI, which has remote control over all airlocks[italic][/color] + + + + + + + + + + + + [color=#999999][italic]Precious door remotes. With unlimited power...[italic][/color] + + + + Department heads usually get door remotes for their respective department. + + They can open, close, bolt, and set to emergency access using these remotes. + + ## Linking + Airlocks can be linked using the [textlink="Link" link="Networking"] system to other devices. + This allows for proper station airlocks to space, or to link multiple airlocks together. + + ## Styling + Airlocks can come in different styles to match station departments. The department style commonly reflects the required access level. + + + + + + + + + + + + + + + + + + + + + Airlocks can be repainted using a spray painter. + + + + + ## Wiring + Airlocks have internal wiring under their maintenance panel, which can be opened using a screwdriver. + Each wire controls some aspect of the airlock's functionality. + When you either pulse, cut, or mend the wire, it will affect the airlock in different ways. + + The lights next to the wires will indicate the status of the wire: + - A steady light indicates that the system is functioning as normal. + - A flashing light indicates that the system is malfunctioning. It is either not working or is behaving not as intended. + - No light indicates that the system is not powered. + + Below is a list of the wires and their functions: + + [color=#a4885c]Bolt Wire (BOLT)[/color] + - [color=yellow]Pulse the wire[/color]: Bolts or unbolts the door. + - [color=red]Cut the wire[/color]: Bolts the door. + - [color=green]Mend the wire[/color]: Does nothing. + + [color=#a4885c]Power Wire (POWR)[/color] + - [color=yellow]Pulse the wire[/color]: Cuts power to the door for a short time. + - [color=red]Cut the wire[/color]: Either cuts power to the door if both power wires are cut, or causes a short circuit if only one is cut, shocking people without insulated gloves. + - [color=green]Mend the wire[/color]: Either restores power to the door if both power wires are cut, or stops the short circuit if only one is cut. + + [color=#a4885c]Log Wire (LOG)[/color] + - [color=yellow]Pulse the wire[/color]: Temporary disables door logging. + - [color=red]Cut the wire[/color]: Disables door logging. + - [color=green]Mend the wire[/color]: Re-enables door logging. + + [color=#a4885c]Bolt Light (BLIT)[/color] + - [color=yellow]Pulse the wire[/color]: Turns the system off temporarily, or turns it back on. + - [color=red]Cut the wire[/color]: Prevents the bolt light from turning on, which communicates if the door is bolted or not. + - [color=green]Mend the wire[/color]: Turns the system back on. + + [color=#a4885c]Timer Light (TIMR)[/color] + - [color=yellow]Pulse the wire[/color]: Reduces the door timer temporarily. + - [color=red]Cut the wire[/color]: Disables the timer. The door will close as soon as it is safe to do so. + - [color=green]Mend the wire[/color]: Re-enables the timer. + + [color=#a4885c]Safety Light (SAFE)[/color] + - [color=yellow]Pulse the wire[/color]: Disables the safety system temporarily. + - [color=red]Cut the wire[/color]: Disables the safety system. The door will close even if there is an obstruction. + - [color=green]Mend the wire[/color]: Re-enables the safety system. + + [color=#a4885c]AI Access Light (AIA)[/color] + - [color=yellow]Pulse the wire[/color]: Does nothing. + - [color=red]Cut the wire[/color]: Disables AI access. The AI can no longer control the door. + - [color=green]Mend the wire[/color]: Re-enables AI access. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosTools.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosTools.xml new file mode 100644 index 0000000000..3c3114ed4b --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosTools.xml @@ -0,0 +1,52 @@ + + # Atmos Tools + Atmospheric Technicians have the same core toolset as Engineers, but they also have access to two new tools, the Holofan Projector and the Gas Analyzer. + + + + + + + ## Holofan Projector + The Holofan Projector is a tool that can project a barrier of hard-light which blocks air and gas flow, while still allowing people to pass through. + + + + + + + This is super useful for moving in between [textlink="firelock buffers" link="FireAndGasControl"] without leaking gas between rooms, as well a signifying to regular crew that a room may be unsafe for entry. + It can also be used for forming a temporary barrier to allow crew to quickly move between a spaced and unspaced area without risk of leaking air from other rooms. + + It has an internal charge that will deplete with each use, but it can be recharged by taking out the power cell and inserting it into a cell charger or recharger. + + Holofans that are placed adjacent to a [textlink="firelock" link="FireAndGasControl"] will deactivate the firelock lockout, allowing the firelock to be opened by hand. + + ## Gas Analyzer + The Gas Analyzer is a tool that can be used to analyze the gas composition of an exposed atmosphere, or any [textlink="atmospheric device" link="GasManipulation"] containing gas. + + + + + + + + + + + + + + You can use the Gas Analyzer by clicking on a gas-containing [textlink="device" link="GasManipulation"], or by clicking on the air in the room. + + When used, the gas analyzer will report on: + - The volume of the device measured (not the volume of the gas!) + - The total pressure of the gas, in kPa + - The temperature of the gas, in Kelvin (K) and Celsius (C) + - The precise composition of the gas in molar amounts, and as a percentage of the total gas volume + + At the bottom of the UI, the gas analyzer will display a visual indication of the different [textlink="gasses" link="Gasses"] present in the composition, as well as their relative concentrations. + + When the gas analyzer is analyzing binary and trinary [textlink="devices" link="GasManipulation"] (devices with two and three inputs/outputs), it will display the composition of each input/output separately. This is useful for troubleshooting gas [textlink="mixing and filtering" link="MixingAndFiltering"] setups. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosphereInOut.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosphereInOut.xml new file mode 100644 index 0000000000..126b2335fc --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosphereInOut.xml @@ -0,0 +1,25 @@ + + #Atmosphere Input and Output + Inserting and extracting gasses from a present (or non-present) atmosphere is an essential part of Atmos' job. + + + + + + + + + With these devices, Atmos can insert, extract, or scrub unwanted gasses from any atmosphere they would like. + This allows the maintaining of a safe, breathable atmosphere. + + Some of these devices require [textlink="power" link="Power"] to function, and can be linked to an [textlink="air alarm." link="AirAlarms"] + + [textlink="Linking" link="Networking"] compatible devices to an air alarm unlocks more configuration options and functionality. Otherwise, these devices follow their default behavior as defined in the subguides. + + + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosphericAlertsComputer.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericAlertsComputer.xml new file mode 100644 index 0000000000..77a2a2df5f --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericAlertsComputer.xml @@ -0,0 +1,30 @@ + + # Atmospheric Alerts Computer + The Atmospheric Alerts Computer is a computer that shows information on all air alarms and fire alarms across the station. + + + + + + It is a useful tool for quickly identifying areas that require attention. + + The Atmospheric Alerts Computer is often found in Atmospherics, and is used by Atmospherics Technicians to monitor atmospheres across the entire station. + However, it is also a good indicator for general engineers to gauge station damage. + + The computer displays lists of Air Alarms in [color=orange]Warning[/color] and [color=red]Danger[/color] levels. Additionally, the computer displays the location of all air alarms, color-coded based on their current status. + + Air alarms with the normal status are hidden by default. + You can toggle the visibility of normal air alarms by adjusting the filters at the bottom of the interface. + + The map draws a box around the area that the air alarm is monitoring, which can help identify the area that is in danger. + This box will change color based on the status of the air alarm. + + If an Air Alarm is unpowered, it is shown as greyed out on the list and on the map. + + Clicking on an air alarm on the list or on the map will show detailed information about the atmosphere in that area, which can help gauge the type of emergency that is occurring. + + A list of triggered [textlink="fire alarms" link="FireAndGasControl"] is also displayed on the Atmospheric Alerts Computer in a separate tab, which can be used to quickly identify areas that might be on fire. + + You can silence specific alarms (such as alarms that monitor burn chambers and freezers) by clicking on the alarm in the list and pressing the "Silence alerts" button. + This will hide the alarm from the list, but it will still be visible on the map. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosphericNetworkMonitor.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericNetworkMonitor.xml new file mode 100644 index 0000000000..53007d5fdd --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericNetworkMonitor.xml @@ -0,0 +1,47 @@ + + # Atmospheric Network Monitor + The Atmospheric Network Monitor is a computer that shows information on monitored [textlink="pipe networks" link="PipeNetworks"] across the station. + + + + + + It is a useful tool for quickly gauging the tempreature, pressure, and gas composition of station [textlink="pipe networks" link="PipeNetworks"], as well as how they spread throughout the station. + + ## Listed Networks + The Atmospheric Network Monitor displays a list of all monitored [textlink="pipe networks" link="PipeNetworks"] on the station. + + Each network is color-coded and named based on the name and color of the Gas Pipe Sensor that is monitoring it. + To change the name or color of a network, you can rename it with a labeler, or change the color using a spray painter. + + Clicking on a network will show detailed information about the network, as well as highlighting the network on the station map. + + This information includes the molar amount of the gas in the entire network, as well as the composition of the gas in the network. + This can prove extremely useful for monitoring important networks like the Distro pipenet, which can not function correctly if below certain pressures. + + ## Station Map + The Atmospheric Network Monitor displays the location of all [textlink="pipe networks" link="PipeNetworks"] on the station map, as well as any pipe-based devices. + Note that the pipe network doesn't need to have an attached Gas Pipe Sensor to be visible on the map. + + These devices are colored on the map based on their color on the station, which can help identify seperate [textlink="pipe networks" link="PipeNetworks"], and the devices that are connected to them. + + Pipe based devices are grouped together on the map's legend based on their function: + - A [bold]Network Opening[/bold] is a device that connects a pipe network to the station's atmosphere. Think [textlink="Air Vents" link="AirVents"], [textlink="Passive Vents" link="PassiveVent"], and [textlink="Air Injectors" link="AirInjector"]. + - An [bold]Air Scrubber[/bold] is just an [textlink="Air Scrubber" link="AirScrubber"]. + - A [bold]Flow Regulator[/bold] is a device that controls the flow of gas through a pipe network. Think [textlink="Gas Pumps" link="Pumps"], [textlink="Gas Valves" link="Valves"], and [textlink="Gas Mixers/Filters" link="MixingAndFiltering"]. The arrow on the device indicates the direction of gas flow. This also often determines where a pipe network is seperated or split. + - A [bold]Thermoregulator[/bold] is any device that does something to the temperature of the gas in a pipe network. Think [textlink="Thermomachines" link="Thermomachines"], [textlink="Radiators" link="Radiators"], and even Medical Cryopods. + + ## Gas Pipe Sensors + Atmospheric Network Monitors collect data on [textlink="pipe networks" link="PipeNetworks"] through Gas Pipe Sensors. + + + + + + By default, the station should have gas pipe sensors on all major [textlink="pipe networks" link="PipeNetworks"]. Examples include the Distro and Waste networks. + + If you wish to monitor a new network, you can construct a gas pipe sensor and it will automatically be visible on the Atmospheric Network Monitor. + Make sure you construct the sensor on the pipe network you want to monitor. + [textlink="Pipe networks" link="PipeNetworks"] can easily be seperated by a simple Gas Pump or Valve, which can cause the sensor to report data on a completely different network. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosphericUpsets.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericUpsets.xml new file mode 100644 index 0000000000..9267ff3511 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericUpsets.xml @@ -0,0 +1,22 @@ + + # Atmospheric Upsets + Atmospheric upsets are deviations from the normal atmospheric conditions that should be maintained on the station. + + These upsets can be caused by a variety of factors, such as [textlink="fires" link="Fires"], [textlink="spacing" link="Spacing"], or other events that can quickly spread throughout the station and make the atmosphere uninhabitable for the crew. + + For reference, the normal atmospheric conditions on the station are 101.3 kPa of pressure and 293.15 K (20°C) of temperature. + The standard station mix is also 78% nitrogen, 22% oxygen. + + ## Damage Control + For all atmospheric emergencies, it's important to act quickly to prevent the spread of dangerous conditions, and to contain the spread as much as possible. + + Opening [textlink="firelocks" link="FireAndGasControl"] to the exposed area will often lead to you having to fix [italic]two[/italic] problems instead of one. + + Be sure to use your [textlink="holofan projector" link="AtmosTools"] to prevent the spread of dangerous conditions between [textlink="firelock buffers" link="FireAndGasControl"]. + + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Atmospherics.xml b/Resources/ServerInfo/Guidebook/Engineering/Atmospherics.xml index 1e06d5193e..ff88040325 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Atmospherics.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Atmospherics.xml @@ -1,67 +1,25 @@ # Atmospherics + Atmospherics is the engineering subdepartment responsible for maintaining the station's atmosphere, and ensuring that it is safe and breathable for the crew. - Atmospherics setups are a necessity for your long-term comfort, but are generally underdocumented, resulting in them being a bit tricky to set up. The following attempts to cover the basics. - - ## Standard Mix - Breathing pure O2 or pure N2 is generally bad for the health of your crew, and it is recommended to instead aim for a mix of [color=#a4885c]78% N2 and 22% O2 at 101.24kPa.[/color] It's recommended that your gas mixer setup be set to output at least 300kPA for faster re-pressurization of rooms, without posing too much of an overpressurization risk, should traitors sabotage the distro. - - - - - - Variations on this mix may be necessary for the long-term comfort of atypical crew, (for example, Voxes, who are poisoned by Oxygen and breathe Nitrogen). For atypical crew (to be implemented), it is recommended to try and give them their own personal space, isolated by either an airlock or disposals section. Keep in mind that both methods are leaky and you will need scrubbers on both sides of the lock to clean up any leaked gasses. - - - - - ## Vents and Scrubbers - Vents and scrubbers are core atmospherics devices that fill and cleanse rooms, respectively. By default, they are configured for filling rooms to standard pressure (101.24kPa) and to remove all non-O2/N2 gasses from a room. They can be reconfigured from their default settings by linking them to an Air Alarm, allowing you to configure how they respond to various types of gasses or pressure levels. + Atmospherics is run by Atmospheric Technicians, who are overseen by the Chief Engineer. - - - - During standard operation, if a normal vent detects that the outside environment is space, it will automatically cease operation until a minimum pressure is reached to avoid destruction of useful gasses. This can be fixed by pressurizing the room up to that minimum pressure by refilling it with a gas canister (potentially multiple, if the room is of significant size). - - Should you encounter a situation where scrubbers aren't cleaning a room fast enough (and the "Siphon" functionality still cannot keep up), employ portable scrubbers by dragging them to the affected location and wrenching them down. They work much faster than typical scrubbers and can clean up a room quite quickly. Large spills may require you to employ multiple. - - - - # Gas mixes and Burn chambers - In the event you finish all the tasks at hand, you can make some extra money by creating new chemical gasses. - - ##Tritium - Tritium is a clear, green gas that is highly flammable, radioactive, and combusts when in contact with oxygen, making it very helpful when running the [color=#a4885c]TEG[/color]. - It can be made by burning 1% Plasma and 96% or more Oxygen in the Burn Chamber (Ideal ratio is 3% Plasma to 97% Oxygen). You can extract this gas through scrubbers. - - - - - - - - - ##Frezon - Frezon is a bluish-green gas that is very complex and very dangerous. To obtain frezon, you must mix Tritium, Oxygen, and Nitrogen in a 70K room to start the reaction, and prevent the Tritium from combusting with the oxygen. - - - - - - - - - It is critical to understand that a frezon leak can devastate the station, causing a wintery hell filled with itchy sweaters and cold burns. Frezon is very cold, and can freeze the station to death if even a few moles get out, so make sure that you lock your canisters or just move your Frezon straight into a storage room. - - ## Reference Sheet - - Standard atmospheric mix is [color=#a4885c]78% N2 and 22% O2 at 101.24kPa.[/color] - - Gas obeys real math. You can use the equation: - - [color=cyan]PV = nRT[/color] + + - ([color=#a4885c]Pressure kPa * Volume L = Moles * R * Temperature K[/color]) - to derive information you might need to know about a gas. R is approximately 8.31446. + [color=#999999][italic][italic][/color] + + + ## Responsibilities + Generally, you'll be responding to [textlink="atmospheric upsets" link="AtmosphericUpsets"] throughout the station. + These can range from minor leaks to full-on [textlink="fires" link="Fires"] or [textlink="spacing" link="Spacing"] incidents. + + People from other departments may also request [textlink="canned gasses" link="GasCanisters"] for their department duties, such as [textlink="plasma" link="Gasses"] for the [textlink="Research Department" link="Science"] or [textlink="carbon dioxide" link="Gasses"] for [textlink="Chemistry" link="Chemist"]. + + In your downtime, you may seek to improve the station by setting up rooms with different atmospheres for [textlink="Voxes" link="Vox"] and other species, or by setting up production of [textlink="exotic gasses" link="Gasses"] for the station's needs. + + When there's no work to do, you may be expected to help regular Station Engineers with their tasks, and mentor new Station Engineers and Atmospheric Technicians. diff --git a/Resources/ServerInfo/Guidebook/Engineering/AtmosphericsSystems.xml b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericsSystems.xml new file mode 100644 index 0000000000..a242a40888 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/AtmosphericsSystems.xml @@ -0,0 +1,58 @@ + + # Atmospherics Systems + Atmos has a wide variety of devices catered to moving, managing, and otherwise manipulating gas. + These devices often work together to maintain a safe, breathable atmosphere for the crew, or to achieve a common task. + + This section delves into the various systems that Atmos has at their disposal, how they interconnect, and how they are ideally used. + + + + + + + + + + + + + ## Pipe Networks + + + [color=#999999][italic]Interconnected pipes with a common task — commonly called Pipenets[italic][/color] + + + + + + + + ## Device Monitoring and Control + + + [color=#999999][italic]Monitoring and control over devices that manage a local atmosphere[italic][/color] + + + + + + + + ## Fire and Gas Control + + + [color=#999999][italic]Devices to control and prevent gas leaks and fires[italic][/color] + + + + + + + + ## Gas Mining and Storage + + + [color=#999999][italic] Devices to mine new gas for the station to use, and store it for later[italic][/color] + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Construction.xml b/Resources/ServerInfo/Guidebook/Engineering/Construction.xml index 15f2f15539..0457b8c4b8 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Construction.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Construction.xml @@ -1,11 +1,27 @@ # Construction - By pressing [color=#a4885c][keybind="OpenCraftingMenu"][/color], one can open the construction menu, which allows you to craft and build a variety of objects. + + + + + + - When placing objects that "snap" to the grid, you can hold [color=#a4885c]Shift[/color] to place an entire line at a time, and [color=#a4885c]Ctrl[/color] to place an entire grid at a time. + + The Construction Menu is how you build and craft objects in the game. + It can be accessed by pressing [color=yellow][bold][keybind="OpenCraftingMenu"][/bold][/color]. + + When placing objects that "snap" to the grid, you can hold [color=yellow][bold][keybind="EditorLinePlace"][/bold][/color] to place an entire line at a time, and [color=yellow][bold][keybind="EditorGridPlace"][/bold][/color] to place an entire grid at a time. When crafting objects with a lot of ingredients, keep in mind you don't have to hold everything at once; you can simply place the ingredients on the floor, in your backpack or on a table near you, and they'll be used up during crafting like normal. - When placing a "building ghost" somewhere in the world, press [color=#a4885c][keybind="EditorRotateObject"][/color] to rotate the ghost clockwise. If you are building a mirrorable component (think: Gas Mixers/Filters), you can press [color=#a4885c][keybind="EditorFlipObject"][/color] to flip the ghost. + When placing a "building ghost" somewhere in the world, press [color=yellow][bold][keybind="EditorRotateObject"][/bold][/color] to rotate the ghost clockwise. + If you are building a mirrorable component (think: Gas Mixers/Filters), you can press [color=yellow][bold][keybind="EditorFlipObject"][/bold][/color] to flip the ghost. + + You can also use [color=yellow][bold][keybind="RotateObjectClockwise"][/bold][/color] and [color=yellow][bold][keybind="RotateObjectCounterclockwise"][/bold][/color] to rotate an object clockwise or counterclockwise if it's already built, as long as it is unanchored (unwrenched). + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/DeviceMonitoringAndControl.xml b/Resources/ServerInfo/Guidebook/Engineering/DeviceMonitoringAndControl.xml new file mode 100644 index 0000000000..b536bcbde8 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/DeviceMonitoringAndControl.xml @@ -0,0 +1,39 @@ + + # Device Monitoring and Control + Given the station-wide nature of the atmospherics network, it is important to have a way to monitor and control devices from a central location. + + Using these systems, Atmospherics can monitor and control the atmosphere across the entire station. + + + + + + + ## Air Alarms + + + [color=#999999][italic]Wide area monitoring and control over atmos devices[italic][/color] + + + + + + + ## Atmospheric Alerts Computer + + + [color=#999999][italic]Station-wide monitoring of air alarms[italic][/color] + + + + + + + + ## Atmospheric Network Monitor + + + [color=#999999][italic]Monitoring of whole pipe networks[italic][/color] + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Engineering.xml b/Resources/ServerInfo/Guidebook/Engineering/Engineering.xml index b2bf4e698a..d3b6da0304 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Engineering.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Engineering.xml @@ -1,29 +1,31 @@ -# Engineering -[color=#f39f27]Engineering[/color] is a combination of construction work, repair work, maintaining a death machine that happens to produce power, and making sure the station contains breathable air. + # Engineering + [color=#f39f27]Engineering[/color] is a combination of [textlink="construction" link="Construction"] work, [textlink="repair" link="ExpandingRepairingStation"] work, maintaining a death machine that happens to produce [textlink="power" link="Power"], and making sure the station contains [textlink="breathable air" link="Atmospherics"]. -## Personnel -[color=#f39f27]Engineering[/color]'s staff is made up of Technical Assistants, Station Engineers and Atmospheric Technicians. Engineering is run by the Chief Engineer. + ## Personnel + [color=#f39f27]Engineering[/color]'s staff is made up of Technical Assistants, Station Engineers and Atmospheric Technicians. + Engineering is run by the Chief Engineer. - -## Tools + + ## Tools - + -Your core toolset is a small variety of tools. If you're an engineer, then you should have a belt on your waist containing one of each; if not, you can likely find them in maintenance shafts and in tool storage within assorted toolboxes and vending machines. + Your core toolset is a small variety of tools. + If you're an engineer, then you should have a belt on your waist containing one of each; if not, you can likely find them in maintenance shafts and in tool storage within assorted toolboxes and vending machines. -Most tasks will have explainers for how to perform them on examination; for example, if you're constructing a wall, it'll tell you the next step if you look at it a bit closer. + Most tasks will have explainers for how to perform them on examination; for example, if you're [textlink="constructing" link="Construction"] a wall, it'll tell you the next step if you look at it a bit closer. diff --git a/Resources/ServerInfo/Guidebook/Engineering/ExpandingRepairingStation.xml b/Resources/ServerInfo/Guidebook/Engineering/ExpandingRepairingStation.xml new file mode 100644 index 0000000000..1d3b8842b9 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/ExpandingRepairingStation.xml @@ -0,0 +1,39 @@ + + # Expanding and Repairing Stations + In Space Station 14, it is common for players to want to expand the station, or repair holes left by meteors or other damage. + + ## Lattice + Lattice is bare rodwork placed in empty space. It's used as a foundation for building and anchoring objects onto the station. + + + + + + + You can create lattice by placing rods on empty space using [color=yellow][bold][keybind="Use"][/bold][/color]. Remember you can craft steel sheets into rods using the construction menu. + + Lattice cannot hold pressure, and all gasses will leak out into space through it. + + You can use wirecutters to remove lattice by using [color=yellow][bold][keybind="Use"][/bold][/color] on them. + + If the game is preventing you from placing lattice, it's because there is another separated grid too close to the grid you're trying to expand. You can use a wirecutter to remove the offending grid. + + ## Hull Tiles + Hull tiles are solid foundation for the station, where all the other parts of the station rest upon. + + + + + + + + + Lattice can be made into hull tiles by using either steel or almost any type of floor tile on them by pressing [color=yellow][bold][keybind="Use"][/bold][/color]. + This will convert the lattice into a hull tile, which can hold pressure and gasses. + + It is advised to use floor tiles to replace lattice instead of steel sheets, as you can craft 4 floor tiles from a single steel sheet. + + You can use an RCD to deconstruct hull tiles into lattice. + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/FireAndGasControl.xml b/Resources/ServerInfo/Guidebook/Engineering/FireAndGasControl.xml new file mode 100644 index 0000000000..7bf5071d28 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/FireAndGasControl.xml @@ -0,0 +1,77 @@ + + # Fire and Gas Control + Unfortunately, [textlink="fires" link="Fires"], [textlink="spacing" link="Spacing"], and other [textlink="atmospheric upsets" link="AtmosphericUpsets"] are a common occurrence on the station. + These upsets can quickly spread throughout the station and make the atmosphere uninhabitable for the crew. + + + + + + + + + To combat this, stations have a variety of devices to help prevent these upsets from spreading. + + ## Firelocks + Firelocks are a simple and effective way to prevent fires from spreading throughout the station. + + Based on conditions sensed by the firelock, or through instruction from a connected [textlink="air" link="AirAlarms"] or fire alarm, they can close off sections of the station to prevent the spread of dangerous conditions. + + ## Station Sectioning + Firelocks are intentionally placed in key areas to divide the station into sections. Open spaces like hallways or promenades are divided into smaller sections. This prevents the spread of dangerous conditions to the entire station through connected rooms, hallways, and other open spaces. + + ## Basic Operation + When not connected to an [textlink="air alarm" link="AirAlarms"] or fire alarm, firelocks will function based on the conditions they sense. Firelocks will drop (close) if: + - The temperature between the two sides of the firelock is different by [color=orange][protodata="Firelock" comp="Firelock" member="TemperatureThreshold"/] K[/color] or more. + - The pressure between the two sides of the firelock is different by [color=orange][protodata="Firelock" comp="Firelock" member="PressureThreshold"/] kPa[/color] or more. + + If these conditions continue, the firelock will enter lockout mode. Firelocks in lockout mode will have [color=red]red[/color] lights and cannot be pried open by hand. They can only be opened by people with Engineering access or by using a crowbar. + + Firelocks in lockout mode cannot be opened by using Engineering access if they are unpowered. Only a crowbar can open an unpowered firelock in lockout mode. + + If the conditions between the two sides of the firelock return to within acceptable differences, the firelock will disable lockout mode, and can be opened by anyone. + Note that this only means that the conditions are the same on both sides of the firelock, not that they are safe. + + A common example of this is a firelock that has released due to both sides being exposed to space. + + ## Connecting to Air and Fire Alarms + Firelocks can be connected to [textlink="air alarms" link="AirAlarms"] and fire alarms to receive instructions on when to drop. + Firelocks use the [textlink="List system" link="Networking"], and you can connect these devices using a multitool or network configurator. + + + + + + + + + + Each firelock has its own unique address. The process for connecting air vents, scrubbers, and sensors to air alarms is very similar. + + ## Operation Under Air Alarms + When connected to an air alarm, firelocks will also drop under the command of the connected [textlink="air alarm" link="AirAlarms"]. + + Firelocks will drop if the air alarm reaches a [color=red]Danger[/color] alert state. Firelocks will remain dropped until the air alarm returns to a [color=green]Green[/color] alert state. + + Firelocks that are in lockout mode will not raise even if the air alarm returns to a [color=green]Green[/color] alert state. Even if the pressure difference is resolved, the firelock will remain dropped until the air alarm re-sends a green alert state. + + ## Operation Under Fire Alarms + When connected to a fire alarm, firelocks will drop if the fire alarm is triggered. Firelocks will remain dropped until the fire alarm is reset. + + ## Fire Alarms + Fire alarms are devices that can be used to centrally control all connected firelocks. + + + + + + Devices with sensors can be [textlink="linked" link="Networking"] to fire alarms, which will trigger the fire alarm if the sensor enters the [color=red]Danger[/color] temperature threshold as defined by its sensors. + + When the fire alarm is triggered, all connected firelocks will be overridden with a [color=red]Danger[/color] alert state and will drop. + + The alarm will automatically clear itself when the sensor returns to a [color=green]Normal[/color] temperature threshold. + + You can trigger and reset a fire alarm manually by interacting with it. + + This can be used to quickly drop firelocks in a room manually, or to raise them after an upset has been resolved. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Fires.xml b/Resources/ServerInfo/Guidebook/Engineering/Fires.xml index c03c8af9a6..ca728f1e8d 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Fires.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Fires.xml @@ -1,29 +1,25 @@ - - # Fires & Space + + # Fires + Fires are arguably the most dangerous atmospheric upset that can occur on the station. - Fires and spacings are an inevitability due to the highly flammable plasma gas and the endless vacuum of space present in and around the station, so it's important to know how to manage them. + + + + - ## Spacing - Space is arguably the easier of the two to handle. Be aware; active spacings will slowly siphon the air out of the station's air reserves. If you find it impossible to fix structural damage due to some other hazard, make sure to limit the airflow to that room. (Currently only half-valid due to the Gas Miners infinitely replenishing most of the useful gases) + They often make high-pressure and high-temperature gases, which can quickly spread throughout the station if firelocks or doors are opened carelessly, even if only for a moment. - While it does render an area uninhabitable, it can be trivially solved by simply following a two step process. Step one is to seal the hole that caused the vacuum. + If people are caught in a fire, they can quickly become incapacitated, die, and even ash, rendering them unrevivable. - Step two is to repressurize the affected area. Note that the affected area will NOT fill from the station's distro network by default. Some atmospheric devices, specifically air vents, have built-in safeguards that cause the device to be disabled if pressure in a room drops too low. This features prevents spacings from venting the distro network unintentionally. + ## Combating Fires + The key elements of a fire are fuel and oxygen. + Removing any of these two elements will extinguish the fire. + For example, fires that have no oxygen flowing to them will slowly snuff themselves out, and fires that have no fuel will also extinguish themselves. - As a result, there are three main options to repressurize the affected area: + Exposing the fire to space will extinguish it, as all the gas will simply be spaced. + You can then [textlink="fix" link="ExpandingRepairingStation"] the [textlink="spacing" link="Spacing"] and repressurize the area. - 1. Assuming distro vents and pipes have not been destroyed in some unfortunate accident, you may set surrounding air alarms to the "Fill" setting. This will cause connected air vents to override their safeguards and begin repressurizing the area. - - Be aware this setting also allows vents to OVERpressurize a room, so this process must be monitored at all times. - - 2. Another option is to open any firelocks that were engaged in response to the original spacing. This will cause the pressure to equalize between both areas. - - This option generally causes more firelocks to engage in the surrounding area, potentially causing disruptions or making the second area unsafe for station crew. - - 3. The final option is to bring a canister into the spaced area and open its release valve. An air canister at 4500kpa can fully repressurize around 20-30 tiles before running out of gas. - - This option requires the canister be brought in from outside (generally atmos), which can be slow and time consuming depending on the situation. - - - ## Fires - Fires can be dealt with through a multitude of ways, but some of the most effective methods include: - - Spacing the enflamed area if possible. This will destroy all of the gasses in the room, which may be a problem if you're already straining life support. - - Dumping a Frezon canister into the enflamed area. This will ice over the flames and halt any ongoing reaction, provided you use enough Frezon. Additionally, this does not result in destruction of material, so you can simply scrub the room afterwards. + ## Tips + - [bold]Know the signs of a future fire.[/bold] If an area is filled with highly flammable gasses, it's only a matter of time before a careless passenger sets it off. Try to isolate the area and scrub the gasses out as quickly as possible. + - [bold]Prevent the spread of gasses using a holofan projector.[/bold] Letting gasses through a firelock can make other rooms dangerous, even for a moment. This increases the number of rooms you have to fix. diff --git a/Resources/ServerInfo/Guidebook/Engineering/GasCanisters.xml b/Resources/ServerInfo/Guidebook/Engineering/GasCanisters.xml new file mode 100644 index 0000000000..5512f7fbdc --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/GasCanisters.xml @@ -0,0 +1,30 @@ + + # Gas Canisters + + + + + + + + + + + + Gas canisters are a way to store gas in a portable container for easy transport. + They can store [color=orange][protodata="StorageCanister" comp="GasCanister" member="Volume"/] liters[/color] of gas. + + You can connect handheld tanks to a gas canister to refill them using the release valve on the canister. + The release valve also has a adjustable pressure regulator to control the pressure of the handheld tank connected. + + Opening the release valve on a canister with no handheld tank connected will release gas into the atmosphere, at the specified regulator pressure. + + [bold]Be sure to close the release valve before you eject your handheld tank![/bold] + + ## Connector Ports + Gas canisters and [textlink="portable scrubbers" link="PortableScrubber"] can be connected to a [textlink="pipenet" link="PipeNetworks"] by anchoring (wrenching) the device on top of a connector. + When connected, gas will be free to move in and out of the canister to balance pressure, temperature, and composition. + + A pump can be used to insert or extract gas from a canister, useful for filling or emptying a canister entirely. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/GasCondensing.xml b/Resources/ServerInfo/Guidebook/Engineering/GasCondensing.xml new file mode 100644 index 0000000000..3dd05c0f30 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/GasCondensing.xml @@ -0,0 +1,23 @@ + + # Gas Condensing + Gas condensers take gasses and condense them into their liquid (reagent) forms. + + + + + + For example, water vapor can be condensed into liquid water, oxygen into liquid oxygen, and so on. + + It has a [textlink="pipenet" link="PipeNetworks"] connection to input gas, and an internal tank to store the condensed liquid. + + A condensor will stop condensing gas if the tank is full. + You can take liquid out of the condenser by interacting with it using any empty container. + + Gas condensors can take multiple gasses as input, and will condense them into their liquid forms. + For example, if you input a mixture of oxygen and nitrogen, you will get liquid oxygen and liquid nitrogen in the output tank. + + Because [textlink="Chemistry" link="Chemist"] works with limited reagents in liquid form, they will highly appreciate the work of a skilled atmospherics technician who can provide them with the reagents they need. + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/GasManipulation.xml b/Resources/ServerInfo/Guidebook/Engineering/GasManipulation.xml new file mode 100644 index 0000000000..3a3857ae4c --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/GasManipulation.xml @@ -0,0 +1,108 @@ + + # Gas Manipulation + Atmos has a wide variety of tools and equipment at their disposal for the manipulation of gasses throughout the station. + + [bold]Warning: unanchoring (unwrenching) most devices containing gas will [color=red]leak gas[/color] into the atmosphere.[/bold] + You can safely unanchor [textlink="canisters" link="GasCanisters"], [textlink="portable scrubbers" link="PortableScrubber"], [textlink="condensers" link="GasCondensing"], and [textlink="thermomachines" link="Thermomachines"]. + + + + + + + + + + ## Pipes + + + [color=#999999][italic]Distributing gasses from one place to another[italic][/color] + + + + + + + + ## Pumps + + + [color=#999999][italic]Forcing the movement of gasses from one place to another[italic][/color] + + + + + + + + + + + ## Atmosphere Input and Output + + + [color=#999999][italic]Inserting and extracting gasses from a present (or non-present) atmosphere[italic][/color] + + + + + + + + + + ## Valves + + + [color=#999999][italic]Controlling the flow of gas through pipes[italic][/color] + + + + + + + + ## Mixing and Filtering + + + [color=#999999][italic]Manipulating the composition of gas[italic][/color] + + + + + + + + + + + + ## Gas Canisters + + + [color=#999999][italic]Storing and transporting gas for easy use by the crew[italic][/color] + + + + + + + + + + ## Thermomachines and Radiators + + + [color=#999999][italic]Manipulating the temperature of gasses in a pipenet or atmosphere[italic][/color] + + + + + + + ## Gas Condensing + + + [color=#999999][italic]Condensing gasses for further use[italic][/color] + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/GasMiningAndStorage.xml b/Resources/ServerInfo/Guidebook/Engineering/GasMiningAndStorage.xml new file mode 100644 index 0000000000..dd633a2804 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/GasMiningAndStorage.xml @@ -0,0 +1,66 @@ + + # Gas Mining and Storage + Gasses are often permanently used. Whether they are lost to [textlink="space" link="Spacing"] or used in a burn chamber, the station needs to be able to produce more gas to replace what is lost. + It also needs to store this gas in a safe and efficient manner. + + ## Gas Miners + Gas miners are used to replenish the station's gas supply. They are found in the gas storage tanks in Atmospherics. + + + + + + + Gas miners constantly produce room temperature gas and push it into the exposed atmosphere. They require no power to function, and never stop working unless they have reached the defined [bold]cutoff pressure[/bold]. + + You can see more information about the gas miners by inspecting them using [color=yellow][bold][keybind="ExamineEntity"][/bold][/color]. + Try inspecting the gas miners presented above. + + Gas miners come in tiers, with the larger versions having a higher pressure cutoff than the smaller versions. + + + + + + + + If gas miners are ever unanchored from the station, they can be reanchored using a regular wrench. + + ## Gas Storage + Gas storage tanks are used to store gas produced by the gas miners, and to make it available to other processes. They are found in Atmospherics. + + + + + + + + + + + + + + + + + + + + + + + + + [color=#999999][italic]An example of a small gas holding tank[italic][/color] + + + Various atmos processes insert and remove gasses from the gas storage tanks. + For example: + - The gas miner provides fresh gasses to the gas storage tanks, if there is room. + - The recyclernet injects reclaimed gasses into the gas storage tanks for reuse. + - Setups like the distronet and burn chamber remove gasses from the gas storage tanks. + + Gas storage tanks are designed to be able to be measured using a [textlink="Gas Analyzer" link="AtmosTools"]. + Because the outflow vent is a [textlink="passive vent" link="PassiveVent"], you can use a [textlink="gas analyzer" link="AtmosTools"] to measure the gas content of the [textlink="pump's" link="Pumps"] input, which is drawing from the gas storage tank. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Gasses.xml b/Resources/ServerInfo/Guidebook/Engineering/Gasses.xml new file mode 100644 index 0000000000..a5fadbaa84 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Gasses.xml @@ -0,0 +1,122 @@ + + # Gasses + Gasses are a critical part of the station's operation. + You may know them as the stuff you breathe, but they are also used in many other ways. + + Gasses have certain properties that make them useful for different tasks. + Atmospherics can also synthesize exotic gasses from other gasses, which can be used for special purposes. + + ## Oxygen + + + + + + + + + A common gas, used by most species on the station to breathe. + + Oxygen is an oxidizer, which means it supports combustion. + This makes it both useful when fusing gasses in a burn chamber, and dangerous when mixed with flammable gasses. + + ## Nitrogen + + + + + + + + + An inert gas, used in part with oxygen to create a breathable atmosphere. + + Nitrogen is very stable and comprises most of a standard breathable atmosphere. + + Some species like Slimes breathe nitrogen, with the Vox species requiring strictly nitrogen to breathe. + + ## Air Mix + + + + + + A mixture of gasses that is breathable to most species on the station. + It consists of 21% oxygen and 79% nitrogen. + + + ## Carbon Dioxide + + + + + A waste gas produced by most species on the station. A common byproduct of combustion. + + Despite seeming useless, some departments use it in their line of work. + + ## Water Vapor + + + + A common gas, produced by the burning of plasma and other processes. + + Water vapor has a good specific heat capacity compared to other gasses, making it useful for moving heat around. + + ## Plasma + + + + A highly flammable gas that is used in many processes on the station. + + Engineering uses this gas to generate power and create exotic gasses. + + Burning it generates a lot of heat, as well as gas byproducts such as carbon dioxide, water vapor, and tritium, depending on the efficiency of the burn. + + Plasma gas also has a good specific heat capacity, making it useful for moving heat around. + + ## Tritium + + + + An extremely flammable radioactive gas that is used in the creation of frezon. + + Tritium is produced when burning plasma in a burn chamber, and can be used to create frezon gas in a complicated mixing process. + + The efficiency of tritium fusion depends on various factors such as burn richness and temperature. + + ## Frezon + + + + + A highly sought after gas, due to the difficulty in creating it and its many properties. + + It has an extremely high specific heat capacity, making it excellent for moving large amounts of heat around. + + Frezon can combine in the air with nitrogen to create nitrous oxide, alongside cooling down the air significantly to below freezing temperatures. + + Frezon is very complicated to create, requiring a mix of tritium, oxygen, and nitrogen, all tuned precisely to create the gas. + If you're looking to create this gas yourself, here's what you need to know: + - Frezon is produced by the combination of oxygen, tritium, and nitrogen. + - Tritium and oxygen are mixed at a ratio of around 1:8. + - Nitrogen is required as a catalyst for the reaction. The amount of nitrogen consumed is dependent on the efficiency of the reaction. + - The frezon reaction only occurs at cryogenic temperatures, below 73.15 K. The efficency of the reaction (how much frezon is produced) is dependent on the temperature. The closer to 73.15 K, the more frezon is produced, and the less nitrogen is consumed. + + Remember, atmospherics is all about experimentation and process optimization. Try it until you get it right! + + ## Nitrous Oxide + + + + + A recreational and waste gas, produced by slimes and the combination of frezon and nitrogen. + + ## Ammonia + + + + A gas produced by the decomposition of bodies. + + Can be condensed to create ammonia, which can be used to make space cleaner. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Generators.xml b/Resources/ServerInfo/Guidebook/Engineering/Generators.xml new file mode 100644 index 0000000000..0bd5326435 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Generators.xml @@ -0,0 +1,75 @@ + + # Generators + Generators are devices that produce power for the station. They vary in size and power output, and each has its own unique quirks and requirements. + + Engineers are intended to setup low-tier generators like Solar Arrays and the AME at the start of the shift, to give enough time to setup higher-tier generators like the Singularity Engine for sustained power for the rest of the shift. + + + + + + + ## Singularity and Tesla Engine + + + [color=#999999][italic]Devices capable of infinite energy — and destructive potential[italic][/color] + + + + + + + + ## Antimatter Engine + + + [color=#999999][italic]Short-term support generator for the station[italic][/color] + + + + + + + + + ## Thermo-electric Generator + + + [color=#999999][italic]Advanced atmospherics generator that harnesses the energy of gasses[italic][/color] + + + + + + + + + ## Solar Panels + + + [color=#999999][italic]Low-maintenance passive power source[italic][/color] + + + + + + + + + + ## Portable Generators + + + [color=#999999][italic]Portable generators for crew use and emergency power[italic][/color] + + + + + + + ## Radioisotope Thermoelectric Generator + + + [color=#999999][italic]Zero-maintenance passive power source[italic][/color] + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/InspectingPower.xml b/Resources/ServerInfo/Guidebook/Engineering/InspectingPower.xml new file mode 100644 index 0000000000..a4a63cec1f --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/InspectingPower.xml @@ -0,0 +1,60 @@ + + # Inspecting Power + Engineers can inspect a power network to see useful statistics about it. + This can help engineers diagnose power issues and find root causes to problems. + + ## Power Monitoring Computer + The Power Monitoring Computer is a device that can be used to inspect all the power networks on the station. + + + + + + The Power Monitoring Computer has two major sections, a station map and the power statistics. + + The station map shows: + - The station layout, with [color=green]low[/color], [color=yellow]medium[/color], and [color=orange]high[/color] [textlink="voltage networks" link="VoltageNetworks"] highlighted. + - [textlink="All APCs, SMES, and substations." link="VoltageNetworks"] + - All power [textlink="producers" link="Generators"] connected to the station (note that they don't have to be connected to a power network to be shown). + + The power statistics show: + - The total [textlink="generator" link="Generators"] output, which is what the generators are currently producing to match grid demand. + - The total [textlink="battery" link="PowerStorage"] usage, which is the amount of power being drawn from batteries. Grids completely powered by generators will show low battery usage. + - The total network loads, which is the amount of power being requested by the station. + + In an ideal situation, the total generator output should match the total network load, and the total battery usage should be low. + Using these three statistics, engineers can get an accurate picture of the station's power situation. + For example: + - If the total generator output is lower than the total network load, the station is in a power deficit. + - If the total battery usage is high, the station is drawing power from batteries to make up the difference. + - If it is zero with the generator load below the total network load, then the station is actively in a brownout, as the batteries are fully discharged. + - If the total generator output is higher than the total network load, the SMESes are charging. + + ## Device Tabs + The Power Monitoring Computer has tabs for each device category on the station. + Navigating these power tabs will show the power statistics for each device category. + For example: + - Clicking on a source will show what that source is supplying the power to, and how much power it is supplying. It will also highlight the devices that are connected to that source. + - Clicking on an SMES, Substation, or APC will show the two power grids it is connected to, how much power it is receiving, and how much power it is distributing, as well as the exact devices that are making an exchange with the target device. + + ## Inspecting via Multitool + The Multitool can be used to inspect power cables to see their power statistics. + + + + + + When you click on a cable with the Multitool, it will show the cable's power statistics. This includes: + - The current supply, which is the amount of power the source is providing. + - The current supply from batteries, which is the amount of power being drawn from batteries. + - The theoretical supply, which is the maximum amount of power the source could provide if demanded. + - The ideal consumption, which is the current demand on the cable. + - The input storage, which is the capacity of batteries that are currently charging. + - The output storage, which is the capacity of batteries that are currently discharging. + + Note that this information is relevant only to the voltage network you inspected. + A [color=green]low voltage[/color] cable (which likely only services a few rooms) will not show the same statistics as a [color=orange]high voltage[/color] cable (which services the entire station). + + This is useful information to keep in mind, as it can help you troubleshoot why "this room is powered, but this one isn't!" + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/ManualValve.xml b/Resources/ServerInfo/Guidebook/Engineering/ManualValve.xml new file mode 100644 index 0000000000..d13a5ebdc0 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/ManualValve.xml @@ -0,0 +1,15 @@ + + # Manual Valve + The manual valve is as simple as it gets. + Allows or blocks the flow of gasses depending on if it's open or closed. + + + + + Gas can freely flow between both sides with no restrictions. + + Manual valves are used in a variety of applications, for example: + - Allowing or blocking the bypass of a recyclernet, to space waste gas directly + - Connecting or isolating heaters/coolers from the station's distro + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/MixingAndFiltering.xml b/Resources/ServerInfo/Guidebook/Engineering/MixingAndFiltering.xml new file mode 100644 index 0000000000..5814dd4b08 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/MixingAndFiltering.xml @@ -0,0 +1,55 @@ + + # Mixing and Filtering + Gas mixers and filters are essential tools for manipulating the composition of gases within a [textlink="pipe network" link="PipeNetworks"]. + + + + + + ## Gas Mixer + Gas mixers are used to combine gases in specific ratios within a [textlink="pipe network." link="PipeNetworks"] + They are essential for creating controlled gas mixtures for various applications. + + Gas mixers have 3 connections: 2 inputs and 1 output, as shown below: + + + + + + + + + + Gas mixers will still respect the requested gas mixture even if one of the input gases is not available. For example: + - If the requested mixture is 22% oxygen and 78% nitrogen, but there is no available oxygen, the mixer will not work until oxygen is available. + - If oxygen is available, but at a pressure lower than required to create the proper mixture at the requested pressure, the mixer will still create the mixture, but the output will be at a lower pressure than requested. + + Gas mixers also mix gasses based on pressure, not on mols. This can cause problems if the gasses are at different temperatures. For example: + - Presume a gas mixer was asked to mix Oxygen and Nitrogen at a ratio of 1:2 at a certain pressure. + - The Nitrogen in this case is double the temperature of the Oxygen. + - Hotter gas has more pressure, and thus fewer mols per volume than Oxygen. + - Because of this, Nitrogen will have half the mols compared to Oxygen when the gas mixer attempts to create the mix. + - The output will be 1:1 instead of 1:2. You'll have 1 mol of Nitrogen per 1 mol of Oxygen, instead of 2 mols of Nitrogen per 1 mol of Oxygen. + + Gas mixers can be used in a variety of applications, for example: + - Mixing oxygen and nitrogen to create a breathable atmosphere + - Mixing oxygen and plasma for plasma burning to create Tritium + + ## Gas Filter + Gas filters are used to separate gases from a mixture within a [textlink="pipe network." link="PipeNetworks"] + + + + + + + + + + + Gas filters will become blocked and will not filter gas if either output is blocked. + + Gas filters can be used in a variety of applications, for example: + - Filtering out unwanted gases from a [textlink="pipe network" link="PipeNetworks"] + - Separating specific gases for storage in a station's recyclernet + diff --git a/Resources/ServerInfo/Guidebook/Engineering/NetworkConfigurator.xml b/Resources/ServerInfo/Guidebook/Engineering/NetworkConfigurator.xml deleted file mode 100644 index 6c47d4a916..0000000000 --- a/Resources/ServerInfo/Guidebook/Engineering/NetworkConfigurator.xml +++ /dev/null @@ -1,40 +0,0 @@ - - # Network Configurator - The network configurator allows you to manipulate device lists, link devices together and configure accesses for airlocks through door electronics. - - - - The configurator has two modes: List and Link. You can press [color=gray]Alt+Z[/color] or [color=gray]Alt+Y[/color] to switch between them. - - ## List Mode - In list mode you can click on network devices to save them on the configurator and then on a network device that has a device list like the [color=#a4885c]Air Alarm[/color]. - - When clicking on a device like the Air Alarm, a UI will open, displaying the list currently saved on the device and buttons to manipulate that list. - - You can: - - Replace the current list with the one saved on the configurator - - Add the list on the configurator to the current one - - Clear the current list - - Copy the current list to the configurator - - Visualize the connections to the devices on the current list - - Pressing [color=gray][keybind="ActivateItemInHand"][/color] opens the list saved on the configurator where you can remove saved devices. - - ## Link Mode - With link mode, you can click on a device that is capable of device linking and then click on any other device that is either a sink or source. - - For example, first clicking on a source, like a [color=#a4885c]signal button[/color], and then on sink, like a [color=#a4885c]small light[/color], opens a UI that displays the source ports on the left side and the sink ports on the right. - - Now, you can either click [color=gray]Link Defaults[/color] to link the default ports for a source + sink combination, or press on a source port and then a sink port to connect them. - - An example of a default link for the aforementioned combinaton of devices would be: - - [color=cyan]Pressed 🠒 Toggle[/color] - - When you're done connecting the ports you want, you can click on [color=gray]OK[/color] to close the UI. - - You can quickly link multiple devices to their default port by first clicking on a device that can be linked and then using [color=gray]Alt+Left Mouse button[/color] on the devices you want to link together. - - ## Airlock Access - To configure an airlock's access, simply take the airlock's door electronics and interact with it using a network configurator (or multitool). Select the accesses you want, insert the door electronics into an airlock frame, and construct to finish! - diff --git a/Resources/ServerInfo/Guidebook/Engineering/Networking.xml b/Resources/ServerInfo/Guidebook/Engineering/Networking.xml index 74e2b04625..3ffdccfeb7 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Networking.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Networking.xml @@ -1,24 +1,64 @@ # Networking - Some devices on the station need to communicate with each other, and they do this by utilizing device networking. - With networking, machines and devices can send arbitrary data between each other. - There are multiple networks that get used, such as the wireless and wired network. - Each network device has a frequency it receives on. PDAs, for example, use the frequency: [color=green]220.2[/color] + On the station, devices need to communicate to each other to preform their functions. + [textlink="Air alarms" link="AirAlarms"] need to talk to their respective devices, [textlink="doors" link="Airlocks"] need to be linked to form proper airlocks, and much more. - Note: The following operations will require use of the Network Configurator to be performed: + This is done through two systems, the Link system and the List system. - ## Device Lists - Some devices need to know which other devices to communicate with specifically. - - - - Air alarms, for example, require you to tell it which vents, scrubbers, sensors, and firelocks to interact with. + You can use either the Multitool or Network Configurator to interact with these systems. + You can switch between the different systems using [color=yellow][bold][keybind="AltActivateItemInHand"][/bold][/color] or by hovering your cursor over the device and using [color=yellow][bold][keybind="AltActivateItemInWorld"][/bold][/color]. - ## Linking - If a device, basic or advanced, needs finer controls of how and which devices it connects to, it will generally use device linking. + - - + - With linking, you can connect the outputs of a device, like [color=gray]On[/color] or [color=gray]Off[/color], with the inputs of a device, like the airlocks [color=gray]Open[/color] or [color=gray]Close[/color] inputs. + + + + + + Some devices will require access to link devices to them. + For example, you need Atmospherics access to link devices to an [textlink="air alarm" link="AirAlarms"]. + For doors, you'll need the access level of the door you're linking to. + + ## Link System + The link system is used for explicitly linking two devices, such as linking a door to another door. + + + + + + + + + Under the link system, devices have [bold]ports[/bold] that are capable of either sending or receiving signals. + + Hovering over a port using your cursor will show a tooltip that tells you what the port does. + For example, output ports will state the conditions under which they will invoke a signal, and input ports will state what the device will do if it receives a signal. + + ## List System + The list system is used for linking multiple devices to a single primary device, such as linking multiple atmospherics devices to an air alarm. + + + + + + + + + + Each device has its own unique address, which is used to identify it in the list system. When you link a device to a primary device, you are adding the device's address to a list of devices that the primary device will communicate with. + + You can save a device's address to your tool by interacting with the device using [color=yellow][bold][keybind="Use"][/bold][/color]. + + Once you have a list of devices saved to your tool, you can link them to a primary device by interacting with the primary device using [color=yellow][bold][keybind="Use"][/bold][/color], which will bring up a UI. + + The UI has multiple options: + - Set: Overwrites the current list of linked devices with the devices saved on the tool. + - Add: Adds the devices saved on the tool to the current list of linked devices. + - Clear: Removes all linked devices from the air alarm. + - Copy: Copies the list of currently linked devices to the tool. + - Show: Draws a line between the primary device and all linked devices. This is useful for visualizing the area the air alarm covers. + + If you need to clear your tool, you can press [color=yellow][bold][keybind="Use"][/bold][/color] on the tool or use [color=yellow][bold][keybind="ActivateItemInHand"][/bold][/color] to bring up a list of saved devices, and then press the "Clear" button. diff --git a/Resources/ServerInfo/Guidebook/Engineering/PassiveGate.xml b/Resources/ServerInfo/Guidebook/Engineering/PassiveGate.xml new file mode 100644 index 0000000000..7a7a8f7703 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PassiveGate.xml @@ -0,0 +1,15 @@ + + # Passive Gate + The passive gate is a simple one-way valve that prevents gasses from flowing backwards. + + + + + The valve's input is on the side of the [color=red]red[/color] circle. + The valve also shows the current flow rate of the pipe when examined. + + It's useful in many applications, for example: + - Preventing a pure gas from getting contaminated via a mixed gas flowing back through the pipe. + - Preventing pressure or temperature changes across two [textlink="pipenets" link="PipeNetworks"] in the opposite direction. + - Quickly checking the flow rate on a pipenet without needing a [textlink="gas analyzer" link="AtmosTools"]. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/PassiveVent.xml b/Resources/ServerInfo/Guidebook/Engineering/PassiveVent.xml new file mode 100644 index 0000000000..eac70540aa --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PassiveVent.xml @@ -0,0 +1,15 @@ + + # Passive Vent + The passive vent is an extremely basic vent. + It serves as a direct connection between the pipenet it's connected to and the atmosphere it's exposed to. + + + + Gasses are free to move between the passive vent and the atmosphere it's connected to. + The passive vent requires no [textlink="power" link="Power"] to function. + + This vent is commonly found in the station's [textlink="gas storage tanks" link="GasMiningAndStorage"] and connected to the station's wastenet. + It is a simple and reliable way to pull gasses from a gas miner, or to space unwanted gasses safely. + + The passive vent can be welded with any welding tool to stop it from functioning. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/PipeNetworks.xml b/Resources/ServerInfo/Guidebook/Engineering/PipeNetworks.xml new file mode 100644 index 0000000000..6bdaaa0f46 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PipeNetworks.xml @@ -0,0 +1,41 @@ + + # Pipe Networks + Pipe networks — commonly called Pipenets — are a series of interconnected [textlink="pipes" link="Pipes"], usually with a common task. + + + + + + + + + + + + Pipenets are used all throughout the station to deliver, remove, or otherwise move gas throughout it. + Great examples are the station's Distro or Wastenet, which deliver breathable air and remove waste gas, respectively. + + ## How Pipenets Work + In Space Station 14, pipenets behave as a whole, defined volume, with input/output points at the ends of the network. + Forcing or vacuuming gas in or out using a [textlink="pump" link="Pumps"] will affect the entire network, not just the pipe it's connected to. + + Pipenets are only separated by devices capable of interrupting flow, or by certain devices. + For example, a [textlink="Pressure Pump" link="Pumps"] will not allow gas to flow through it unless it's powered and has gas to pump. + + Some examples of devices that separate pipe networks are: + - [textlink="Pressure and Volumetric Pumps" link="Pumps"] + - [textlink="Gas Mixers and Filters" link="MixingAndFiltering"] + - [textlink="All Valves" link="Valves"] + - [textlink="Radiators" link="Radiators"] + + An example of a pipenet being seperated into two, distinct pipenets by a [textlink="pump" link="Pumps"] is shown below: + + + + + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Pipes.xml b/Resources/ServerInfo/Guidebook/Engineering/Pipes.xml new file mode 100644 index 0000000000..92df26bcd3 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Pipes.xml @@ -0,0 +1,25 @@ + + # Pipes + Pipes are used to distribute gasses from one place to another. + There are a wide variety of pipes available to construct: + + + + + + + + + + Pipes will [color=#a4885c]automatically connect[/color] to other pipes when anchored (or wrenched) to the hull to form a [textlink="network of pipes." link="PipeNetworks"] + A network of pipes is commonly called a [textlink="pipenet" link="PipeNetworks"]. + + Pipes will [color=red]not connect[/color] to pipes that are already connected to a different pipe. + For example, building a bent pipe on top of a straight pipe to form a makeshift T-junction will not work. + + However, two pipes can share a tile as long as one isn't obstructing the other's connection to another pipe. + For example, two bend pipes can be placed on the same tile, with one moving gas from north to east, and the other moving gas from west to south. + + You can color pipes (and most equipment that handles gasses) using a spray painter. + This is commonly done to distinguish the air and waste components of the station's Distro pipenet. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/PneumaticValve.xml b/Resources/ServerInfo/Guidebook/Engineering/PneumaticValve.xml new file mode 100644 index 0000000000..d69facf697 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PneumaticValve.xml @@ -0,0 +1,43 @@ + + # Pneumatic Valve + The pneumatic valve is a bidirectional valve controlled via a pressure input. + + + + + The pneumatic valve has 3 connections: input, output, and control. + The "input" side will be the input/output connection with the highest pressure, and can switch sides, making the valve bidirectional. + + + + + + + + + + + + + + The valve will [color=green]open[/color] when the pressure on the output side is lower than the pressure on the control side by [color=orange][protodata="PressureControlledValve" comp="PressureControlledValve" member="Threshold"/] kPa[/color]. + + The valve will [color=red]close[/color] when the pressure of the output side reaches the pressure of the control side within [color=orange][protodata="PressureControlledValve" comp="PressureControlledValve" member="Threshold"/] kPa[/color]. + + For example, a pneumatic valve with a control pressure of 500 kPa will open when the output pressure is 500 kPa - [color=orange][protodata="PressureControlledValve" comp="PressureControlledValve" member="Threshold"/] kPa[/color] or lower, and it will close when the output pressure is 500 kPa - [color=orange][protodata="PressureControlledValve" comp="PressureControlledValve" member="Threshold"/] kPa[/color] or higher. + + The valve's control pressure is determined by a pipenet connection, and as such can be adjusted on the fly by a [textlink="pump" link="Pumps"] or another source of pressure control. + + ## Differences to Pumps + + The pneumatic valve is different from a [textlink="pump" link="Pumps"] which moves gas via work. + The pneumatic valve is a passive device that moves gas based on the higher pressure of the input gas, and as such it can sometimes fill volumes faster than a [textlink="pump" link="Pumps"] can. + + For example, a pneumatic valve with a control pressure of 500 kPa will fill a volume faster than a pressure [textlink="pump" link="Pumps"] set to 500 kPa. + However, the [textlink="pump" link="Pumps"] will be able to maintain the pressure in the volume more accurately. + + The pneumatic valve can be used in a variety of applications, for example: + - To automatically vent gasses in a burn chamber based on control input + - The filling of a volume quickly, based on a customizable control pressure + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/PortableGenerator.xml b/Resources/ServerInfo/Guidebook/Engineering/PortableGenerator.xml index ee637de514..55a1e7fde5 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/PortableGenerator.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/PortableGenerator.xml @@ -1,7 +1,8 @@ # Portable Generators - Need power? No engines running? The "P.A.C.M.A.N." line of portable generators has you covered. + The "P.A.C.M.A.N." line of portable generators are used to provide emergency or supplemental power to key rooms, areas, or even departments. + They are easy to set up and maintain, and can be used to power critical systems and areas in the event of a power outage. @@ -16,10 +17,12 @@ - The J.R.P.A.C.M.A.N. can be found across the station in maintenance shafts, and is ideal for crew to set up themselves whenever there are power issues. Its output of up to [color=orange][protodata="PortableGeneratorJrPacman" comp="FuelGenerator" member="MaxTargetPower" format="N0"/] W[/color] is enough to power a few important devices. + The J.R.P.A.C.M.A.N. can be found across the station in maintenance shafts, and is ideal for crew to set up themselves whenever there are power issues. + Its output of up to [color=orange][protodata="PortableGeneratorJrPacman" comp="FuelGenerator" member="MaxTargetPower" format="N0"/] W[/color] is enough to power a room or two, which can prove invaluable in a place like Medbay or Chemistry in the Medical Department. + Setup is incredibly easy: wrench it down above an [color=green]LV[/color] power cable, give it some welding fuel, and start it up. - Welding fuel should be plentiful to find around the station. In a pinch, you can even transfer some from the big tanks with a soda can or water bottle. Just remember to empty the soda can first, I don't think it likes soda as fuel. + Welding fuel is the only fuel source the J.R.P.A.C.M.A.N. can use, and it can be found in welding fuel tanks across the station, commonly in maintenance areas. # The Big Ones @@ -33,11 +36,12 @@ - The (S.U.P.E.R.)P.A.C.M.A.N. is intended for usage by engineering for advanced power scenarios. Bootstrapping larger engines, powering departments, and so on. + The P.A.C.M.A.N. and S.U.P.E.R.P.A.C.M.A.N. is intended for usage by engineering for larger power outages and supplementing power in the event of a deficit. + Bootstrapping larger [textlink="engines" link="SingularityTeslaEngine"], powering departments, and so on. The S.U.P.E.R.P.A.C.M.A.N. boasts a larger power output (up to [color=orange][protodata="PortableGeneratorSuperPacman" comp="FuelGenerator" member="MaxTargetPower" format="N0"/] W[/color]) and longer runtime at maximum output, but scales down to lower outputs less efficiently. - They connect directly to [color=yellow]MV[/color] or [color=orange]HV[/color] power cables, and are able to switch between them for flexibility. + They connect directly to [color=yellow]MV[/color] or [color=orange]HV[/color] [textlink="power cables" link="VoltageNetworks"], and are able to switch between them for flexibility. The S.U.P.E.R.P.A.C.M.A.N and P.A.C.M.A.N require uranium sheets and plasma sheets as fuel, respectively. diff --git a/Resources/ServerInfo/Guidebook/Engineering/PortableScrubber.xml b/Resources/ServerInfo/Guidebook/Engineering/PortableScrubber.xml new file mode 100644 index 0000000000..287e591ff3 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PortableScrubber.xml @@ -0,0 +1,21 @@ + + # Portable Scrubber + The portable scrubber is a portable machine that can be used to scrub the atmosphere in a room. + + + + + It is invaluable for quickly scrubbing unwanted gasses from a room when regular [textlink="scrubbers" link="AirScrubber"] are working too slow, or when a [textlink="scrubber" link="AirScrubber"] is not present. + + The portable scrubber requires [textlink="power" link="Power"] through a nearby [textlink="LV cable" link="VoltageNetworks"] to function. + + The portable scrubber automatically starts scrubbing all non-breathable gasses from the room when it is bolted (wrenched) to the floor. + + It will stop scrubbing when unbolted (unwrenched) from the floor, or when its internal volume is full. The scrubber has an internal capacity of [color=orange][protodata="PortableScrubber" comp="PortableScrubber" member="Volume"/] liters[/color]. + + ## Dumping Waste and Storage + The scrubber's internal volume can be emptied by bolting (wrenching it) onto a [textlink="connector" link="GasCanisters"]. + + Stations commonly have a dedicated emptying point to quickly transfer the waste from the scrubber to the station's wastenet. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Power.xml b/Resources/ServerInfo/Guidebook/Engineering/Power.xml index 7dd227ee9b..1d99223cab 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Power.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Power.xml @@ -1,53 +1,35 @@ # Power + Power is the lifeblood of the station. + Without it, the station will quickly fall into chaos. + Engineers are responsible for maintaining the station's power grid, ensuring that power is supplied, distributed, and all departments are satisfied. - SS14 has a fairly in-depth power system through which all devices on the station receive electricity. It's divided into three main powernets; High Voltage, Medium Voltage, and Low Voltage. - - - + + + + + + - ## Cabling - The three major cable types (HV, MV, and LV) can be used to form independent powernets. Examine them for a description of their uses. - - - - - + There are many different aspects to Space Station 14's power system simulation, as well as Engineering's intended gameplay. - ## Power storage - Each power storage device presented functions as the transformer for its respective power level (HV, MV, and LV), and also provides a fairly sizable backup battery to help flatten out spikes and dips in power usage. - - - - - + Some important information to keep in mind includes: + - Station [textlink="generators" link="Generators"] are tiered and follow a hierarchy. The lower the tier, the less they are sustainable, but the easier they are to setup. The higher the tier, the more sustainable they are, but the more complex they are to setup. + - Space Station 14 features [textlink="voltage networks" link="VoltageNetworks"], which distribute power across the station and are stepped down in voltage by machines, so they can be used by other machines. + - Power [textlink="generators" link="Generators"] have [textlink="ramping" link="Ramping"], which means they take time to match the grid's demand to their supply. - ## Ramping - Contrary to what one might expect from a video game electrical simulation, power is not instantly provided upon request. Generators and batteries take time to ramp up to match the draw imposed on them, which leads to brownouts when there are large changes in current draw all at once; for example, when batteries run out. + ## Starting Out + At the start of the shift, the station is running off of purely [textlink="battery" link="PowerStorage"] power. + This will at most last 5-10 minutes, depending on the station's power draw. - ## Installing power storage - Substations are the most self-explanatory. Simply install the machine on top of an MV and HV cable; it will draw power from the HV cable to provide to MV. + To extend this, you can start up the station's [textlink="Antimatter Engine" link="AME"], or [textlink="AME." link="AME"] + This will extend the runtime of the station's batteries by a significant amount, giving you more time to setup the station's higher-tier [textlink="generators." link="Generators"] + You can extend this even further by setting up [textlink="solar panels" link="SolarPanels"], which generate power for free. - Installing APCs is similarly simple, except APCs are exclusively wallmounted machinery and cannot be installed on the floor. Make sure it has both MV and LV connections. + After setting up the [textlink="AME" link="AME"] and [textlink="Solars" link="SolarPanels"], you should be generating a decent amount of power. - Installing a SMES requires you construct a cable terminal to use as the input. The SMES will draw power from the terminal and send power out from underneath. The terminal will ensure that the HV input and HV output do not connect. Avoid connecting a SMES to itself; this will result in a short circuit, which can result in power flickering or outages depending on severity. - - ## APC breaking - Currently the only power storage device that has a limit to its power to the network is the APC. As soon as all connected devices and machinery demand more than [color=#a4885c]24kW[/color] of power, its breaker will pop and everything will turn off. In the case that you are not an engineer, call an engineer (or cyborg) to re-enable it, after reducing the load back down to [color=#a4885c]below[/color] 24kW. - - - - - ## Checking the power grid - 1. Use the [color=#a4885c]t-ray scanner[/color] in order to locate cables that are hidden under tiles. (skip this step if cables aren't hidden) - 2. Pry open the tile that is blocking your access to the cable with a [color=#a4885c]crowbar[/color]. (skip this step if cables aren't hidden) - 3. Equip your trusty [color=#a4885c]Multitool[/color] and click on any cable to see the power-grid stats. - - - - - + Now that you've bought yourself time, you can focus on setting up higher-tier [textlink="generators" link="Generators"] like the [textlink="Singularity Engine" link="SingularityEngine"], which can provide power for the rest of the shift. diff --git a/Resources/ServerInfo/Guidebook/Engineering/PowerStorage.xml b/Resources/ServerInfo/Guidebook/Engineering/PowerStorage.xml new file mode 100644 index 0000000000..efd0167eb1 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/PowerStorage.xml @@ -0,0 +1,50 @@ + + # Power Storage + Because of [textlink="Power Ramping" link="Ramping"], it is important to have power storage devices to help flatten out spikes and dips in power usage, as well as to provide power in the event of a power deficit. + + Each transformer for its respective power level ([color=orange]HV[/color], [color=yellow]MV[/color], and [color=green]LV[/color]) has an attached small battery to handle minor spikes and dips; however, this is not viable in the case of a large grid deficit. + + ## SMES + + The Superconducting Magnetic Energy Storage (SMES) unit is a device that can store a large amount of power and release it quickly. + + + + + + In order to charge the SMES unit, [color=orange]HV[/color] power must be provided to a cable terminal pointing at the SMES unit. The SMES will draw power from the terminal and send power out from underneath. + + The terminal will ensure that the [color=orange]HV input[/color] and [color=orange]HV output[/color] do not connect. + + + + + + + + + + + + + + + SMESes can store [color=orange][protodata="SMESBasic" comp="Battery" member="MaxCharge" format="N0"/] J[/color] of energy, and can output a maximum [color=orange][protodata="SMESBasic" comp="PowerNetworkBattery" member="MaxSupply" format="N0"/] W[/color] of power. + + If the battery is full, the SMES will pass through the power it receives from the input cable to the output cable. In the event of a power deficit, the SMES will ramp up to supplement the power draw. + + ## Advanced SMES + The Advanced SMES unit is a more advanced version of the SMES unit that can store even more power. + + + + + + They're primarily used in station SMES arrays to store large amounts of power for the station's power grid. + They help to buy engineers time to setup power at roundstart, or to provide power in the event of a power deficit for extended periods of time. + + Advanced SMESes can store [color=orange][protodata="SMESAdvanced" comp="Battery" member="MaxCharge" format="N0"/] J[/color] of energy, and can output a maximum [color=orange][protodata="SMESAdvanced" comp="PowerNetworkBattery" member="MaxSupply" format="N0"/] W[/color] of power. + + Keep in mind that these aren't a magic solution to power deficits, and they can't store infinite energy. + A station load will drain these battries quickly if there is no power source partially supporting them. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Pumps.xml b/Resources/ServerInfo/Guidebook/Engineering/Pumps.xml new file mode 100644 index 0000000000..7b399b0e5a --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Pumps.xml @@ -0,0 +1,48 @@ + +# Pumps + Pumps are the primary way of actively moving gasses through a [textlink="pipenet." link="PipeNetworks"] + They take gas from one side, and push it to the other. + There are two different types of pumps: + + + + + + + Some important things to note about pumps: + - Pumps [color=#a4885c]require power[/color] through a nearby LV cable to function. + - Pumps output on the side with the red stripe. + - Gas cannot move backwards through pumps (although if you are using a pump to do solely this, you should use the [textlink="passive gate" link="PassiveGate"] instead). + - Pumps cannot move gasses into pipes with pressures or volumes exceeding their [color=#a4885c]limit[/color]. This causes them to be [color=red]blocked[/color]. + + Pumps will show a colorful animation when they are doing work. + If they have no gas to pump, or they are blocked, they will show a blinking [color=red]red[/color] animation. + Pumps that are off, have no power, or are unanchored will show no animation. + + ## Pressure Pumps + Pressure pumps are the most common type of pump. + They move gas based on [color=#a4885c]pressure[/color], making them useful for controlling the exact pressure of a pipe, or for drawing a vacuum. + + + + + + A pressure pump [color=red]cannot[/color] move gas to a pipe that has a pressure higher or equal to the pressure set on the pump. + + For example, a pressure pump cannot pump gas to a pipe that is currently at 500 kPa, if the pressure pump is set at 500 kPa. + + Pressure pumps can pump up to a maximum pressure of [color=orange][protodata="GasPressurePump" comp="GasPressurePump" member="MaxTargetPressure"/] kPa[/color]. + They will become [color=red]blocked[/color] if they try to push gas into a pipe higher than this pressure. + + ## Volumetric Pumps + Volumetric pumps are an alternative pump, moving gas based on [color=#a4885c]volume[/color]. + + + + + + They are extremely useful for moving large amounts of gas quickly. + They can typically achieve higher pressures than a pressure pump. + + While volumetric pumps work off of the principle of volume, they will become [color=red]blocked[/color] if they try to push gas into a pipe higher than [color=orange][protodata="GasVolumePump" comp="GasVolumePump" member="HigherThreshold"/] kPa[/color]. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/RTG.xml b/Resources/ServerInfo/Guidebook/Engineering/RTG.xml index 6149b58049..06280d5eef 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/RTG.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/RTG.xml @@ -5,16 +5,21 @@ - Making power using a Radioisotope Thermoelectric Generator (RTG) is similar to making power using solars. - RTGs only provide [color=#a4885c]10kW[/color] of power, but they provide it for free and for the entire round. - Basically, if you connect an RTG to your power grid, it'll give you [color=#a4885c]free power[/color]. + A Radioisotope Thermoelectric Generator (RTG) is a passive power source that generates power from the decay of radioactive isotopes. + + They require no maintenance and are a reliable source of power, making them ideal for powering essential systems that need to be online at all times, like Telecoms, the AI, or the Crew Monitoring Server. + + RTGs always generate [color=orange][protodata="GeneratorRTG" comp="PowerSupplier" member="MaxSupply" format="N0"/] W[/color] of power, and must be connected to an [color=orange]HV power[/color] [textlink="network" link="VoltageNetworks"] to function. + However, they're only accessible through salvage finding one on an expedition. Should they bring some in, make sure to thank them! + ## RTG Damage - Sometimes, RTGs appear damaged. + If RTGs take enough damage, they can become damaged RTGs. Damaged RTGs behave just like regular ones, but they're [color=yellow]radioactive[/color]. + That means they're more dangerous, but on the bright side, you can put radiation collectors next to them to turn that radiation into more power. This is usually more worthwhile, considering the power is still free, so long as you can find a safe spot to put the RTG(s) in. diff --git a/Resources/ServerInfo/Guidebook/Engineering/Radiators.xml b/Resources/ServerInfo/Guidebook/Engineering/Radiators.xml new file mode 100644 index 0000000000..0d3ec5f8f6 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Radiators.xml @@ -0,0 +1,26 @@ + + # Radiators + Radiators are a device that enables the exchange of heat energy between a [textlink="pipenet" link="PipeNetworks"] and the environment. + + + + + + Radiators are completely passive: they do not require power to function. + They will always equalize the temperature of the gas in the [textlink="pipenet" link="PipeNetworks"] with the environment. + + Radiators have two methods of transferring heat: convection and radiation. + - Convection is the transfer of heat through the movement of gas. + - Radiation is the transfer of heat through electromagnetic waves. + + If a radiator is in a vacuum, it will only be able to transfer heat through radiation. + If it is in an atmosphere, it will be able to transfer heat through both convection and radiation. + + Under convection, you can only get as cold or as hot as the atmosphere or [textlink="pipenet" link="PipeNetworks"] you're exchanging heat with (given the temperature of the gas in the [textlink="pipenet" link="PipeNetworks"] or atmosphere stays the same). + + If you're exchanging heat with space, you can only get as cold as space. + To increase the efficiency of radiation, you can build radiators on lattice, which will allow the radiator to radiate more heat, compared to being directly attached to hull tile. + + Increasing the flow rate of gas through the radiator will increase the rate of heat exchange. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Ramping.xml b/Resources/ServerInfo/Guidebook/Engineering/Ramping.xml new file mode 100644 index 0000000000..6799353143 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Ramping.xml @@ -0,0 +1,20 @@ + + # Ramping + Contrary to what one might expect from a video game electrical simulation, power is not instantly provided upon request. + + Generators and batteries take time to ramp up to match the draw imposed on them, which leads to brownouts when there are large changes in current draw all at once; for example, when batteries run out. + + Observe the following example: + - Say you have a generator that outputs 100 kW of power. + - If you have a device that draws 50 kW of power, the generator will output 50 kW of power to match the grid's demand to its supply. + - If you then turn on a device that draws another 50 kW of power, the generator will take time to ramp up to 100 kW of power. It will not provide this power instantly. + - During this time, devices will not recieve the power they need, and the grid will experience a temporary brownout. + - After some seconds have passed, the generator will have ramped up to 100 kW of power, and the brownout will end. All devices are now satisfied with the power they are receiving. + + During a shift, this is most commonly observed when a generator runs out of fuel and suddenly stops producing power. + Suddenly, the grid is hit with a large deficit of power (as supply has fallen below demand), and all devices will experience a brownout until SMESes or other generators can ramp up to match the new demand. + + This can also happen when a large power consuming device, or department, is reconnected to the grid. + The sudden increase in power draw will cause a brownout until the generators can ramp up to match the new demand. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Shuttlecraft.xml b/Resources/ServerInfo/Guidebook/Engineering/Shuttlecraft.xml index 21956d600c..8dc7cdf57d 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/Shuttlecraft.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/Shuttlecraft.xml @@ -1,7 +1,9 @@ # Shuttle-craft - Shuttle construction is simple and easy, albeit rather expensive and hard to pull off within an hour. It's a good activity if you have a significant amount of spare time on your hands and want a bit of a challenge. + Shuttle construction is straightforward, albeit rather expensive and hard to pull off within an hour. + + It's a good activity if you have a significant amount of spare time on your hands and want a bit of a challenge. ## Getting started Required parts: @@ -22,7 +24,7 @@ Optional parts: - + @@ -31,9 +33,104 @@ - Head out into space with steel sheets and metal rods in hand, and once you're three or more tiles away from the station, click near or under you with the rods in hand. This will place some lattice, which can then be turned into plating with steel sheets or floor tiles. Expand your lattice platform by clicking just off the edge with some rods in hand. + ## Foundation + For this step you'll need steel sheets, metal rods, and floor tiles (optional). - From there, once you have the shape you want, bring out and install thrusters at the edges. They must be pointing outward into space to function and will not fire if there's a tile in the way of the nozzle. Install a gyroscope where convenient, and use your substation and generator to set up power. Construct a wall on top of an MV cable and then install an APC on that to power the devices onboard. + + + + + + + + + - Finally, install the shuttle computer wherever is convenient and ensure all your thrusters and gyroscopes are receiving power (remember to wire the MV and LV networks!). If they are; congratulations, you should have a functional shuttle! Making it livable and good looking is left as an exercise to the reader. + Head out into space with steel sheets and metal rods in hand, and click on the edge of the station to place lattice. + + Place a line of lattice about 3-4 tiles away from the station, then start building a platform with lattice. + + Keep doing this until you have a platform that is at least 3x3 in size, which is connected to the station via a single lattice line. + + Once you're finished constructing the base of your shuttle, you can use wirecutters to snip the connecting lattice that joins your new ship and the station. + + This platform is considered a different grid from the station, and thus will not have any gravity or be held in place by a station anchor — it can move around freely. + + You can expand your lattice platform further by clicking just off the edge with some rods in hand. + + ## Docking Ports + Shuttle airlocks serve as docking ports, where ships can dock to stations safely. + + The orientation of docking ports is important, as it determines on which face the shuttle will dock. + + The little numb on the bottom of the docking port determines the direction of the docking port. + + + + + + + ## Directional Control + From there, once you have the shape you want, bring out and install thrusters at the edges. + + + + + + + + + It's a good idea to install four thrusters, one on each side of the platform, to ensure you can move in any direction. + + They must be pointing outward into space to function and will not fire if there's a tile in the way of the nozzle. + You can rotate thrusters—even anchored ones—using either [color=yellow][bold][keybind="RotateObjectClockwise"][/bold][/color] or [color=yellow][bold][keybind="RotateObjectCounterclockwise"][/bold][/color] to rotate clockwise or counterclockwise. + + Thrusters can be disabled or enabled using [color=yellow][bold][keybind="Use"][/bold][/color] with an empty hand or [color=yellow][bold][keybind="ActivateItemInWorld"][/bold][/color]. + + ## Rotational Control + Now that you have directional control, you'll need to install a gyroscope to control your rotation. + + + + + The placement of the gyroscope is not as important as the thrusters, but it should be somewhere convenient for you to access and power. + + Note for large mass objects, you may need more than one gyroscope to rotate effectively. + + ## Power + Now that you have all the systems in place, you'll need to power them. + + For small shuttles, a J.R.P.A.C.M.A.N.-type portable generator is a good choice. It provides straight LV power, so you don't have to worry about transformers. + Fuel for the generator is also commonly found in maintenance tunnels. + + + + + + + + + + + Some stations, however, provide much better generators and compact solutions like the Shuttle APU or the static generator. + These output HV and will have to be stepped down to MV and LV. + Luckily, these stations also usually provide wallmount substation boards for this purpose. + + + + + + + + + + + + + + ## Piloting + Finally, install the shuttle computer wherever it is convenient and ensure all your thrusters and gyroscopes are receiving power (remember to wire the MV and LV networks!). + If they are, congratulations! You should have a functional shuttle! + + Making it livable and good-looking is left as an exercise to the reader. diff --git a/Resources/ServerInfo/Guidebook/Engineering/SignalValve.xml b/Resources/ServerInfo/Guidebook/Engineering/SignalValve.xml new file mode 100644 index 0000000000..dd2991e56d --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/SignalValve.xml @@ -0,0 +1,17 @@ + + # Signal Valve + The signal valve is a valve that can be controlled via [textlink="signals." link="Networking"] + + + + + The signal valve is similar to the manual valve. Gas can flow unrestricted in both directions, and it can be operated manually. + + The signal valve has 3 [textlink="signal" link="Networking"] inputs, which can open, close, or toggle the valve. + + Signal valves can be used in a variety of applications, for example: + - Remote control of valves in hazardous areas or areas inaccessible to crew + - Convenient control over a valve in a hard-to-reach area + - Automation with other [textlink="signal-enabled" link="Networking"] machines and equipment such as [textlink="air alarms" link="AirAlarms"] and remote signallers + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Singularity.xml b/Resources/ServerInfo/Guidebook/Engineering/Singularity.xml deleted file mode 100644 index bdfe947373..0000000000 --- a/Resources/ServerInfo/Guidebook/Engineering/Singularity.xml +++ /dev/null @@ -1,140 +0,0 @@ - - # Singularity / Tesla Engine - - The Singularity Engine / Tesla Engine can yield [color=#a4885c]infinite power[/color], with no fueling required. It can also [color=red]destroy the whole station[/color] with equal ease. It uses a Particle Accelerator to fire high energy particles at a Singularity Generator to form a singularity or ball lightning. - The singularity then pulses radiation which is absorbed by Radiation Collectors, or the ball lightning then zaps nearby tesla coils and grounding rods to provide power. - - # Setting it up - - Both engines requires 4 subsystems to work properly; two are shared between both engines: - - ## Containment field generators and Emitters - - - - - - The emitters connect to MV cables and fire lasers as long as they have power and are turned on. - Fire the emitters at enabled containment field generators to activate them. - If two containment field generators are active, in range and are in the same cardinal axis, a containment field will appear. - The containment field will repel the singularity or tesla, keeping it from escaping, and yield a little bit of power every time anything bounces off of them. - - The emitter lasers and the containment fields can also cause damage and/or cause you to be sent flying into deep space; [color=#a4885c]avoid touching them[/color] when active. - It is recommended to [color=#a4885c]lock the emitters[/color] with [keybind="AltActivateItemInWorld"/], to prevent any break-in no-gooders from loosing the singularity or tesla by simply switching off the field. - - Teslas can have significantly smaller containment fields than singularity containment fields; adjusting field size is recommended, as the tesla becomes easier to keep watch on in a simply 3x3 field setup. - - ## Particle accelerator - - - - - - - - - - - - - - - - - - - - - - The Particle Accelerator (PA) is a multi-tile structure that launches accelerated particles from its emitters. Its emitters should always face the generator. - Some stations already have an unfinished PA. To complete it, first ensure there is a MV cable beneath the PA power box, anchor all the parts, and then add an LV cable to each part. - - - - Then use a screwdriver to screw back the panels. - [color=#a4885c]Scan parts[/color] using the PA control computer to check if it's operational (the PA will not function if you do not scan it!). If it shows up as incomplete, examine what's missing. - - - - - The other two subsystems are unique to each other: - - ## Gravitational singularity generator or Ball lightning generator - - - - - The generator should be anchored at the center of the containment area, since this is where the singularity/tesla should appear at. - - ## Radiation collectors or Tesla coils - - - - - The radiation collectors connect to HV cables and generate power from nearby radiation sources when turned on. - Radiation collectors require a tank full of gaseous plasma in order to operate. - Continous radiation exposure will gradually convert the stored plasma into tritium, so replace depleted plasma tanks with fresh ones regularly to maintain a high power output. - - - - - - The tesla coils connect to HV cables and provide a stream of power after being zapped by the ball lightning. - However, tesla coils usually do not fully absorb the lightning strike, and the grounding rods are required to prevent lighting from arcing to and obliterating nearby machines. - Do note that one grounding rod is not a foolproof solution; get [color=#a4885c]at least 4 rods[/color] around the containment field to make it mathematically unlikely for the tesla to escape. - As the ball lightning zaps tesla coils, they will degrade from wear; make sure to [color=#a4885c]weld them[/color] every now and then to keep generating power. - - ## Turning on the Engines - - [color=red]Do not[/color] turn the PA on unless all the other subsystems are working properly and there is enough power to start the engine. - - Turn power on using the PA control computer. Set the strength to an appropriate level. The higher the output stength is set on PA control computer, the bigger the singularity will be. - - Currently, the output power does not affect the ball lightning, beyond giving the ball lightning extra orbs around it. - - The PA will now draw power from the power net and start firing particles at the generators. - - - - - - - - A singularity or ball lightning will soon appear at the position of the Gravitational singularity generator. - - - or - - - - If no particles are hitting the singularity, the singularity will start to slowly decay until it disappears. - This is not the case for the tesla; feel free to disconnect the PA after the tesla has been set up. - - ## Safety - The singularity emits a large amount of radiation around it, so always keep a distance from it. Consider getting [color=yellow]radiation shielding gear[/color] beforehand. Seek medical attention if you are experiencing health issues. - - - - - - - - - - - - The singularity might move around, but the containment field will repel it. - - The tesla creates large bolts of lightning around it, so make sure to wear insuls before approaching it. If you aren't, and it zaps you, pray that the ball lightning doesn't stunlock you and eventually send you into crit. - - - - If a singularity or tesla escapes its containment field, often referred to as a "singuloose" or "tesloose" respectively, it will attract and then consume everything in its way, growing larger as it does so, or it will begin to obliterate every machine in its path, and shock all crew personnel. - - In such circumstances, there is little to be done other than running in the opposite direction. - - - - However, if science has happened to research [color=#D381C9]Portable Particle Decelerators[/color], or if cargo can order them in time, you may be able to stop the singularity from eating the whole station. - Good luck on the tesla, though; it is merely too powerful to recontain after breaching. - diff --git a/Resources/ServerInfo/Guidebook/Engineering/SingularityEngine.xml b/Resources/ServerInfo/Guidebook/Engineering/SingularityEngine.xml new file mode 100644 index 0000000000..6b4bb1780a --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/SingularityEngine.xml @@ -0,0 +1,108 @@ + + # Singularity Engine + The Singularity Engine is a powerful generator that uses a contained singularity to produce energy for the station. + + + + + + + It generates power by collecting the radiation emitted by the singularity using Radiation Collectors and gaseous plasma. + + ## Starting the Singularity Engine + To start the Singularity Engine, engineers must follow these steps: + - Place the Singularity Generator in the middle of the containment field. Some stations start with the generator already in place, while others require engineers to bring it from cold storage. + - Turn on the four Containment Field Generators. + - Turn on and lock the Emitters. + - Confirm that the Containment Field Generators have created a Containment Field around the Singularity. + - Turn on the Radiation Collectors. These require plasma to produce power. They might not come fueled, so be sure to refill them. + - Construct the Particle Accelerator. + - Turn on the Particle Accelerator Control Computer and set the power level to the desired power level. + + Once these steps are complete, the Singularity Engine will start producing power for the station. + Be sure to monitor the singularity's power level and containment field to prevent it from escaping and destroying the station. + Check in to refill the collectors often, as they will run out of plasma over time. + + ## Containment Field + To prevent the singularity from escaping and destroying the station, engineers must contain it within a Containment Field. + + It is suggested to use a max size containment field for the singularity. Any smaller and the singularity may outgrow its field and escape. + + Containment pylons should be arranged in a square, with 7 tiles of spacing between each pylon. + + + + + + + + ## Power Levels and Decay + Because singularities emit radiation, they decay, losing power over time. + + To counter this decay, the Particle Accelerator emits particles that collide with the singularity, feeding and sustaining it. + + Singularities have defined power levels, which determine their radiation output. + Engineers can increase or decrease the singularity's power level by adjusting the power level on the Particle Accelerator Control Computer. + + Particle Accelerators normally operate between power levels 1 and 3, which translate to a power level of 1 to 3 on the singularity. + + Power levels also determine how big the singularity is, with higher power levels sustaining larger singularities capable of producing more power. + + ## Producing Power + The Singularity Engine produces power by capturing the radiation emitted by it using Radiation Collectors. + + + + + They require gaseous plasma to function. The plasma containers attached to the collectors must be filled with plasma to produce power. + + You can turn on the collectors by interacting with them using [color=yellow][bold][keybind="Use"][/bold][/color]. + + You can also eject the tank by interacting with the collector using [color=yellow][bold][keybind="AltActivateItemInWorld"][/bold][/color]. + From here, you can refill the tank with plasma using a plasma canister and reinsert it into the collector. + + The maximum power the radiation collector can produce is determined by: + - The amount of radiation it is capturing (which is effectively the Singularity's power level), + - and the amount of plasma it has in its connected tank. + + Over time, the collector will drain the tank of plasma, which reduces it's effective power output. + Eventually, the tank will be empty, and the collector will stop producing power. Be sure to refill the tank often! + + ## Radiation Protection + The singularity emits a massive amount of radiation, which can kill crew members who are not wearing proper protection. + Be sure to wear a radiation suit or an engineering hardsuit when working near the singularity. + This won't completely negate the radiation, but it will reduce the damage you take. + + + + + + + + + + + + The Chief Engineer has a special hardsuit that negates all radiation damage, which allows them to work near the singularity without fear of accumulating radiation damage over time. + + ## Singularity Properties + The Singularity has several properties, which both make it dangerous and useful for power generation: + - It has a strong gravitational pull that can suck in objects and crew members. + - It has an event horizon, which can permanently destroy any object that touches it, whether it be a crew member or station equipment. Any object swallowed by the singularity is lost forever, and feeds the singularity. + - It constantly emits radiation that can harm crew members who aren't wearing proper protection. + - The singularity can decay over time, losing power and radiation output. + + ## Loosed Singularity (Singuloose) + If the singularity escapes its containment field, it will begin to consume the station, destroying everything in its path. + The more it consumes, the larger it grows, making it harder to potentially contain it again. + + The singularity can be destroyed by firing antiparticles at it using a Portable Particle Decelerator, but this is a risky and dangerous operation that requires careful planning and execution. + Often multiple decelerators firing at once are needed to destroy a singularity. + + Portable Particle Decelerators can be either researched and made by the Research Department, or they can be bought from Cargo. + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/SingularityTeslaEngine.xml b/Resources/ServerInfo/Guidebook/Engineering/SingularityTeslaEngine.xml new file mode 100644 index 0000000000..d6fe22985e --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/SingularityTeslaEngine.xml @@ -0,0 +1,97 @@ + + # Singularity / Tesla Engine + + The Singularity Engine / Tesla Engine can yield [color=#a4885c]infinite power[/color] for the entire shift, making it a valuable asset to the station. + + It can also [color=red]destroy the whole station[/color] with equal ease, and requires careful preparation and monitoring to prevent a [bold]loose[/bold]. + + # Setting it up + Both engines follow the same basic setup steps, but have different subsystems and requirements. + + ## Containment Field + The Containment Field is a multi-tile beam field that repels the singularity or tesla, keeping it from escaping. + + The emitter lasers and the containment fields can also cause damage and/or cause you to be sent flying into deep space; [color=#a4885c]avoid touching them[/color] when active. + + + + + + + + Containment Fields are generated between active Containment Field Generators, which are powered by emitters. + + A containment field generator can generate a containment field if: + - The generator has been turned on, + - another field generator is within 8 tiles, + - and the field generators are on the same cardinal axis. + + This means that the maximum length of a containment field is 7 tiles. + + You can turn on a containment field generator by interacting with it using [color=yellow][bold][keybind="Use"][/bold][/color]. + Containment field generators won't work if they aren't turned on, even when struck by an emitter. Remember to turn on the field generator! + + The containment field generator has an internal energy level, which is filled by striking it with an emitter. When the containment field generator has enough stored energy, it will generate a containment field. + + This energy level will naturally decay over time, and the field will disappear when the energy level reaches zero after a delay. + + When the containment field is active, you cannot turn off the field generator or unanchor it. You must wait for the field to decay before you can turn off the generator. + + + + + + + + + + ## Emitters + Emitters are the devices that power the containment field generators. + + + + + + The emitters connect to MV cables, and fire lasers as long as they have power and are turned on. + + It is recommended to [color=#a4885c]lock the emitters[/color] with [color=yellow][bold][keybind="AltActivateItemInWorld"][/bold][/color], to prevent any break-in no-gooders from loosing the singularity or tesla by simply switching off the field. + + ## Particle Accelerator + The Particle Accelerator (PA) is a multi-tile structure that launches accelerated particles from its emitters. + + + + + + + + + + + + + + + + + + + + + + Some stations already have an unfinished PA. + To complete it, first ensure there is a MV cable beneath the PA power box, anchor all the parts, and then add an LV cable to each part. + + + + + + Then use a screwdriver to screw back the panels. + [color=#a4885c]Scan parts[/color] using the PA control computer to check if it's operational (the PA will not function if you do not scan it!). + If it shows up as incomplete, examine what's missing. + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/SolarPanels.xml b/Resources/ServerInfo/Guidebook/Engineering/SolarPanels.xml new file mode 100644 index 0000000000..d97d2a78d7 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/SolarPanels.xml @@ -0,0 +1,97 @@ + + # Solar Panels + Solar Panels are a low-maintenance passive power source that generates power from incoming sunlight. + + They are a renewable source of power that can be used to supplement generators in the station's power grid. + This is extremely useful, as while most generators burn through some type of fuel in some form or fashion, solar panels generate power for free. + + + + + + + + ## Power Generation + Solar panels generate power based on their relative angle to the sun, and if they are occluded by other objects. + + Because of this, you might see some panels generating 0 W of power, while others generate a lot more. + This is because the station is occluding some panels, so don't worry about it too much. + Most stations have solar arrays placed at all sides of the station, so there's always some power being generated. + + Solar panels generate [color=orange]HV power[/color], and as such require an [color=orange]HV wire[/color] running underneath them to connect to the station's power grid. + + ## Power Bridge + Solar panels might seem like an unnecessary power source at first glance. + After all, we have this giant black hole in the center of the station. + Why bother setting up solars when we can use that? + + It's ideal to set up solars alongside the [textlink="AME" link="AME"] for a few reasons: + - Having active solar panels alongside the [textlink="AME" link="AME"] increases the runtime of the station's batteries significantly more than just the [textlink="AME" link="AME"] alone. This can buy engineers more time to setup bigger power sources. + - Having active solar panels can reduce load on other grid producers. For example, if the solar arrays are producing enough power to satisfy half the station's needs, that is reflected in a reduced load on other engines, which can reduce the amount of fuel they burn. + + + ## Adjusting Panels + Because the station is orbiting a star, the sun's position in space changes over time. + Solar panels need to be pointing straight at the sun to generate power efficiently, and they need to move over time to keep up with the sun's position. + + The angle at which solar panels face to can be adjusted at a Solar Control Computer. + + + + + You can also adjust the rate at which the panels move to track the sun. + + The rate at which the sun moves around the station changes each shift, so time the sun's position and adjust the rate accordingly. + + The Solar Control Computer also reports on the total power generated by the solar panels. + + ## Construction + + Solar panels can be constructed by using two glass sheets on a solar assembly. + + + + + + + You can purchase solar assemblies from Cargo. + + ## Repairs + Solar panels can sometimes be damaged, and require repair. + + + + + + To fix them, you can use a crowbar to pry the broken glass shards out of the panel. + Weld these glass shards into glass sheets, and then use them to make a new panel. + + + + + + + + + + + + + + ## Setting Up Solar Panel Arrays + Solar panel arrays are commonly found on the exterior of the station, and are used to generate large amounts of free power for the station. + + You can either spacewalk to them from the outside, or you can run a loop through the station's maintenance tunnels to reach them. + Solar array machine rooms are often marked with signs, and locked behind engineering access. + + + + + + At the start of the shift, solar panels are misaligned and disconnected from the grid. + You will need to align them and connect them to the station's power grid to start generating power. + + This usually involves running a line of [color=orange]HV wire[/color] to the pannels from the solar array machine room, and then using a Solar Control Computer to align the panels. + + Solar array machine rooms frequently have a Solar Control Computer nearby, as well as an [textlink="SMES" link="PowerStorage"] to store the power generated by the panels for later use. + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Spacing.xml b/Resources/ServerInfo/Guidebook/Engineering/Spacing.xml new file mode 100644 index 0000000000..01097c10e2 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Spacing.xml @@ -0,0 +1,23 @@ + + # Spacing + Spacing is the most common form of atmospheric upset that can occur on the station. + + While the damage that caused the spacing is often time-consuming to [textlink="fix" link="ExpandingRepairingStation"], the actual spacing problem can be quickly resolved by simply repressurizing the area. + + Fixing spacing generally follows two simple steps: + + 1. Identify the area that has been spaced, and [textlink="seal the hole." link="ExpandingRepairingStation"] + + - If you're having trouble finding the hole, you can carefully listen for the flow of air rushing by you, if air is currently leaking to space. + - Look for any holes underneath girders that may be hard to see. + + 2. Repressurize the area. + + - [textlink="Air vents" link="AirVent"] enter pressure lockout when a room is spaced, so you'll need to override the vents to repressurize the area. You can do this by setting the connected [textlink="air alarm" link="AirAlarms"] to fill, or by using a screwdriver on a vent to manually override it temporarily. + + ## Things to Avoid + - Keep in mind that while you have an infinite supply of [textlink="mined gas" link="GasMiningAndStorage"], it is not quick enough to fill up multiple rooms at once. Setting [textlink="air alarms" link="AirAlarms"] to fill first [italic]before[/italic] fixing the root problem will often lead to wasted time and gas. + + - Leaving [textlink="air alarms" link="AirAlarms"] on the Fill mode unsupervised may lead to overpressuring a room, which can potentially harm crew if it gets out of hand. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/TEG.xml b/Resources/ServerInfo/Guidebook/Engineering/TEG.xml index fa6cf5df69..f79ad044ce 100644 --- a/Resources/ServerInfo/Guidebook/Engineering/TEG.xml +++ b/Resources/ServerInfo/Guidebook/Engineering/TEG.xml @@ -1,9 +1,12 @@ # Thermo-electric Engine (TEG) - The TEG generates power by exchanging heat between hot and cold gases. On the station, hot gas is usually created by burning plasma, and an array of heat-exchanging pipes in space radiates away heat to cool down circulated gases. + The TEG generates power by exchanging heat between hot and cold gases. + On the station, hot gas is usually created by burning plasma, and an array of [textlink="heat-exchanging" link="Radiators"] pipes in space radiates away heat to cool down circulated gases. - The TEG relies heavily on atmospherics piping. The only truly special component about it is the generator core and circulators; the rest is all off-the-shelf atmospherics equipment. Note that while the exact layout may vary significantly depending on the station, the general components and setup are usually the same. + The TEG relies heavily on [textlink="atmospherics" link="Atmospherics"] [textlink="piping." link="Pipes"] + The only truly special component about it is the generator core and circulators; the rest is all off-the-shelf atmospherics equipment. + Note that while the exact layout may vary significantly depending on the station, the general components and setup are usually the same. ## Generator @@ -15,60 +18,40 @@ - The circulators take in either a hot or cold gas, and pass it through the machine to exchange heat. The gas then gets output on the other end of the circulator. The generator produces the actual power and outputs it over an HV wire. + The circulators take in either a hot or cold gas, and pass it through the machine to exchange heat. + The gas then gets output on the other end of the circulator. The generator produces the actual power and outputs it over an [color=orange]HV wire[/color]. - Note that the circulators are [color=#a4885c]directional[/color]: they will only let gas through one way. You can see this direction in-game by examining the circulator itself. A pressure difference is required across the input and output, so pumps are generally provided and must be turned on. + Note that the circulators are [color=#a4885c]directional[/color]: they will only let gas through one way. + You can see this direction in-game by examining the circulator itself. + A pressure difference is required across the input and output, so pumps are generally provided and must be turned on. - There is no preference for which side must be hot or cold, there need only be a difference in temperature between them. The gases in the two "loops" are never mixed, [color=#a4885c]only energy is exchanged between them[/color]. The hot side will cool down, the cold side will heat up. + There is no preference for which side must be hot or cold, there need only be a difference in temperature between them. + The gases in the two "loops" are never mixed, [color=#a4885c]only energy is exchanged between them[/color]. + The hot side will cool down, the cold side will heat up. ## The Pipes - There are 2 major pipenets to worry about here: [color=red]The Hot Loop[/color] (where gas will be burnt for heat), and [color=cyan]The Cold Loop[/color] (where circulated, heated waste gas will either be removed into space or cooled back down). Make sure that [color=#a4885c][bold]both pipenets do NOT mix[/bold][/color], as only heat should be transferred between the two through the TEG. + There are 2 major [textlink="pipenets" link="PipeNetworks"] to worry about here: [color=red]The Hot Loop[/color] (where gas will be burnt for heat), and [color=cyan]The Cold Loop[/color] (where circulated, heated waste gas will either be removed into space or cooled back down). + Make sure that [color=#a4885c][bold]both [textlink="pipenets" link="PipeNetworks"] do NOT mix[/bold][/color], as only heat should be transferred between the two through the TEG. # The Hot Loop - As I'm sure a wise person once said: the best way to make something hot is to light it on fire. Well, depending on context, that may not be very wise, but luckily your engineering department has just what's needed to do it wisely after all. + As I'm sure a wise person once said: the best way to make something hot is to light it on fire. + Well, depending on context, that may not be very wise, but luckily your engineering department has just what's needed to do it wisely after all. - As stated above, there are many different layouts one can follow to heat up (or cool down) gases; this part of the guide will cover 2 common methods one will often see for the hot loop when the TEG is setup: [color=#a4885c]The Pipe Burn[/color], and [color=red]the Burn Chamber[/color]. + As stated above, there are many different layouts one can follow to heat up (or cool down) gases; this part of the guide will cover some common methods one will often see for the hot loop, involving [color=red]the Burn Chamber[/color]. - Side note: Plasma fires burn relatively cool compared to, for example, Tritium fires. It may be viable to extract Tritium from an extraction setup (using a 96/4 ratio of O2/Plasma) and react it with Oxygen to get truly hellish temperatures for power. Although, this is just a recommendation; I'm not ya mum. - - ## The Pipe Burn - - Also known as the naive method, this is generally discouraged when working for efficiency. However, if all you need is a smidge of power to run the station, and you don't feel like setting up the burn chamber, this method will do. - - [color=#444444]TODO: Remove this section when atmos pipes are updated to have pressure/temperature limits in a future atmos refactor.[/color] - - Most (if not all) pipe burns follow this general layout: - - Gas input -> High-pressure pump -> Pipe segment (with heater) -> Low-pressure pump -> Circulator - - - - - - - - - - - - - The Gas input is pretty self-explanatory; this is where you will input the O2-Plasma mix to be burnt. A 2:1 (67/33) ratio of Oxygen to Plasma is recommended for the hottest burn. - - The High-pressure pump serves 2 purposes; first, it prevents the burn from backwashing into the supply pipe, which would be... bad, for many reasons. Second, it maintains a positive pressure in the following pipe segment, which is important to allow the burn to continue, especially since hot gases expand. - - The Pipe segment is where the burn actually occurs; to start it off, one can use a heater to increase the temperature up to the ignition temperature of Plasma. Afterwards, the reaction should be self-sustaining, so long as the Pressure and Moles supplied remains high enough. [color=#a4885c]Be warned[/color]; if you wish to remove the heater, it will carry some of this superheated gas with it, transferring it to the next pipenet you connect it to. Best to space the gas through a space vent, if you must. - - The Low-pressure pump (whose pressure should be [italic]slightly lower[/italic] than the input pump) prevents [italic]all[/italic] the gas from passing through the circulator, which could result in the loss of the Moles required to sustain a burn. - - The Circulator is where this generated heat will flow to the cold loop; afterwards, feel free to space the waste gases. - - Note: Pressure pumps are used here as, while they pump on pressure (not flow-rate, which is comparatively faster), they are a bit easier to control when it comes to the limited Plasma supply on-station. However, the steps shown can be followed with volumetric pumps too. + Side note: Plasma fires burn relatively cool compared to, for example, Tritium fires. + It may be viable to extract Tritium from an extraction setup and react it with Oxygen to get truly hellish temperatures for power. ## The Burn Chamber The burn chamber is the preferred method for heating up gases, and it is commonly used for other purposes too. (see: Tritium production) - Most (if not all) stations have the burn chamber separated from the main atmospherics block by a 1-wide spaced grid, presumably to prevent conduction. The chambers consist of 3(+1) important parts: - - The Air Injector/Passive Vent + Most (if not all) stations have the burn chamber separated from the main atmospherics block by a 1-wide spaced grid, to prevent the flow of scalding hot gas to Atmos if there was a breach. The chambers consist of 3 important parts: + - The [textlink="Air Injector" link="AirInjector"]/[textlink="Passive Vent" link="PassiveVent"] - The Space Vent - - The Scrubber Array + - The [textlink="scrubber" link="AirScrubber"] Array Here is one layer of an example setup: @@ -100,27 +83,38 @@ - The air injector (or Passive Vent) injects air (or allows air to flow) into the burn chamber. Either should be supplemented with a pump before it, to keep pressures high. - There is a notable difference between the passive vent and the air injector; the air injector can only keep injecting air up to [color=#a4885c]9MPa[/color], which can be reached very easily with a good burn. Ideally, switch out the air injector for a passive vent connected to a volume pump. + The [textlink="air injector" link="AirInjector"] (or [textlink="passive vent" link="PassiveVent"]) injects air (or allows air to flow) into the burn chamber. + Either should be supplemented with a pump before it, to keep pressures high. - The space vent (designated as a blast door to space on one side of the burn chamber) allows waste gases to be expelled and destroyed. Open this every now and then to keep the pressure under control, or to space excess input gas. + There is a notable difference between the [textlink="passive vent" link="PassiveVent"] and the [textlink="air injector" link="AirInjector"]; the [textlink="air injector" link="AirInjector"] can only keep injecting air up to [color=#a4885c]9MPa[/color], which can be reached very easily with a good burn. + Ideally, switch out the [textlink="air injector" link="AirInjector"] for a [textlink="passive vent" link="PassiveVent"] connected to a volume pump. - The scrubber array filters out all the burnt gasses and sends them through the TEG. Note that using default settings on the scrubbers is a bad idea, as valuable plasma will be filtered out too. - Instead, use a network configurator to connect all the scrubbers to a nearby air alarm, and set the air alarm's scrubber settings to scrub everything except Oxygen and Plasma, and to siphon air as well. This ensures that as much heat as available can be collected and sent to the TEG. + The space vent (designated as a blast door to space on one side of the burn chamber) allows waste gases to be expelled and destroyed. + Open this occasionally to keep the pressure under control, or to space excess input gas. + You even might find the pneumatic valve useful for occasionally spacing the gas. - Note that these are just two of many ways you can setup the hot loop; [color=#a4885c]feel free to mix and match setups as needed![/color] Volume pumps in replacement of pressure pumps, radiator loops for heat collection, or even a Pyroclastic anomaly to provide said heat! The stars are the limit! + The [textlink="scrubber" link="AirScrubber"] array filters out all the burnt gasses and sends them through the TEG. + Note that using default settings on the [textlink="scrubbers" link="AirScrubber"] is a bad idea, as valuable plasma will be filtered out too. + + Instead, use a network configurator to connect all the [textlink="scrubbers" link="AirScrubber"] to a nearby air alarm, and set the air alarm's [textlink="scrubber" link="AirScrubber"] settings to scrub everything except Oxygen and Plasma, and to siphon air as well. + This ensures that as much heat as available can be collected and sent to the TEG. + + Note that this is just one of many ways you can setup the hot loop; [color=#a4885c]feel free to mix and match setups as needed![/color] + [textlink="Volume pumps" link="Pumps"] in replacement of [textlink="pressure pumps" link="Pumps"], [textlink="radiator" link="Radiators"] loops for heat collection, or even a Pyroclastic anomaly to provide said heat! + The stars are the limit! # The Cold Loop - As with the Hot Loop, the Cold Loop must also be setup in order to operate the TEG. However, the Cold Loop is usually a lot more low-tech than the Hot Loop; in reality, the Cold Loop only has to be "relatively" cooler -- hey, room temperature is technically cooler than the surface of the sun, right? + As with the Hot Loop, the Cold Loop must also be setup to operate the TEG. + However, the Cold Loop is usually a lot more low-tech than the Hot Loop; in reality, the Cold Loop only has to be "relatively" cooler—hey, room temperature is technically cooler than the surface of the sun, right? There are 3 main methods you will see used for the Cold Loop: [color=#a4885c]The Water Cooler[/color] (see: Liltenhead's video on the TEG), [color=cyan]the Coolant Array[/color] and [color=#a4885c]the Freezer Loop[/color]. ## The Water Cooler - An equally naive method as the Pipe Burn, this simply involves taking some useless gas (in this case, Water Vapour) and flowing it through the TEG and into space. It's dirt-cheap and simple, at the cost of efficiency and permanent loss of gas. + An equally naive method as the Pipe Burn, this simply involves taking some useless gas (in this case, Water Vapor) and flowing it through the TEG and into space. It's dirt-cheap and simple, at the cost of efficiency and permanent loss of gas. - Setting this up is so simple, even Hamlet could manage it. Just take an output of a gas (here, Water Vapour), send it through the Cold side of the TEG, and then vent it into space. + Setting this up is so simple, even Hamlet could manage it. Take an output of a gas (here, Water Vapor), send it through the Cold side of the TEG, and then vent it into space. @@ -131,19 +125,21 @@ - [color=#444444]TODO: Remove this section when gas miners are removed in a future atmos refactor.[/color] - ## Coolant Array - This is the default method for the Cold Loop you will see on a variety of stations. Being of moderate complexity and having no losses of any resource, this [color=#a4885c]should[/color] be the main method of cooling down the TEG. However, most stations at the moment somehow have their heat exchangers hooked up wrong (or suggest incorrect piping), reducing efficiency greatly. [color=#444444](Thanks a bunch, NT!)[/color] + This is the default method for the Cold Loop you will see on a variety of stations. + Being of moderate complexity and having no losses of any resource, this [color=#a4885c]should[/color] be the main method of cooling down the TEG. + However, most stations at the moment somehow have their radiators hooked up wrong (or suggest incorrect piping), reducing efficiency greatly. - To use heat-exchangers properly, they must be setup in [color=#a4885c]parallel[/color], not in series (like what you see on most stations). A gas pump at max pressure should be placed after, and a volumetric pump before the heat-exchangers. + To use heat-exchangers properly, they must be setup in [color=#a4885c]parallel[/color], not in series (like what you see on most stations). + A gas pump at max pressure should be placed after, and a volumetric pump before the heat-exchangers. The flow-rate of the volumetric pump should be set using the following formula: [color=cyan]( 200 / number of heat-exchangers )[/color] L/s. - Simply speaking, the Coolant Array consists of 3 major parts: An input connector port, a few pumps and the heat-exchanger array out in space. It can be setup like so: + Simply speaking, the Coolant Array consists of 3 major parts: An input connector port, a few pumps and the heat-exchanger array out in space. + It can be setup like so: @@ -190,15 +186,17 @@ - - Connector Port: Use this to input a gas with high heat capacity; most of the time, Plasma or Frezon is used to do so, as they both have very high specific heat capacities (although most any gas will do). (Yes, Plasma =/= Hot. You can cool it down, and it acts as a really good heat exchange medium.) - - Input/Output Pumps: Used to make sure gas keeps flowing through both the Circulator and the Heat-Exchanger array. As the gas cools down and heats up (and as it flows through the Exchanger), pressure must be applied for it to keep flowing. - - Heat-Exchanger: Basically, just a bunch of heat-exchanger pipes in space. Not much to say, besides the fact that it cools down the gas inside it. Make sure the heat-exchangers are [color=#a4885c]placed on lattice, not plating[/color]! Otherwise, the heat-exchange efficiency will be greatly reduced, as the heat-exchangers aren't directly exposed to space below them. + - Connector Port: Use this to input a gas with high heat capacity; most of the time, Plasma or Frezon is used to do so, as they both have very high specific heat capacities (although almost any gas will do). (Yes, Plasma =/= Hot. You can cool it down, and it acts as a excellent heat exchange medium.) + - Input/Output Pumps: Used to make sure gas keeps flowing through both the Circulator and the radiator array. As the gas cools down and heats up (and as it flows through the Exchanger), pressure must be applied for it to keep flowing. + - Radiator: Basically, just a bunch of radiators in space. Not much to say, besides the fact that it cools down the gas inside it. Make sure the radiators are [color=#a4885c]placed on lattice, not plating[/color]! Otherwise, the heat-exchange efficiency will be greatly reduced, as the radiators aren't directly exposed to space below them. ## The Freezer Loop - Most of the time, you will see this method being used in efficient TEG setups. It's basically just the Coolant array, but replacing the Heat-Exchangers with a freezer. Even though the freezer does use power, it is only a small fraction of what the TEG can generate, and it's better than the default Coolant array at the moment, so go fish. + Most of the time, you will see this method being used in efficient TEG setups. + It's basically just the Coolant array, but replacing the radiators with a freezer. + Even though the freezer does use power, it is only a small fraction of what the TEG can generate, and it's better than the default Coolant array at the moment, so go fish. - Just follow the steps for the Coolant array, but use a freezer in place of the Heat-Exchangers. As so: + Follow the steps for the Coolant array, but use a freezer in place of the Heat-Exchangers. As so: @@ -219,5 +217,18 @@ - Once again, use Plasma or Frezon in the loop for max efficiency (although most any gas will do). + Once again, use Plasma or Frezon in the loop for max efficiency (although almost any gas will do). + + ## In the Pursuit of Greater Efficiency + Remember, Atmospherics is a science, and as such, it is always evolving. + The setups above are just the tip of the iceberg; there are many ways to setup the TEG, and many ways to improve upon the setups above. + [color=#a4885c]Experiment![/color] + + Always seek to improve upon the designs you see, and always seek to improve upon the designs you make. + The TEG is a powerful tool, and with great power comes great responsibility. + Make sure to use it wisely, and make sure to use it well. + + Space Station 14 atmospherics is a complex system, and the TEG is just one part of it. + [bold]It's like a giant puzzle, so go out and solve it![/bold] + diff --git a/Resources/ServerInfo/Guidebook/Engineering/TeslaEngine.xml b/Resources/ServerInfo/Guidebook/Engineering/TeslaEngine.xml new file mode 100644 index 0000000000..859ec8317e --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/TeslaEngine.xml @@ -0,0 +1,104 @@ + + # Tesla Engine + The Tesla Engine is a powerful generator that uses a contained ball of lightning to produce energy for the station. + + + + + + + + It generates power by harnessing the lightning strikes produced by the lightning ball using Tesla Coils. + + ## Containment Field + The Tesla Engine requires a containment field to prevent the lightning ball from escaping and destroying the station. + + It is suggested to use the minimum size containment field for the lightning ball. + Larger containment fields allow the lightning ball to reach closer to sensitive equipment and potentially strike it, ignoring placed grounding rods and tesla coils. + + + + + + + + + + + + + + + + + + ## Lightning Strikes + When the Tesla Engine is active, the lightning ball will periodically strike objects surrounding it. + + The Tesla prefers to strike some objects more than others, such as Tesla Coils and Grounding Rods. + + + + + + + + + + + + Because of this, strategically placing Tesla Coils and Grounding Rods around the lightning ball can help protect sensitive equipment from being struck, and prevent a loosed tesla (tesloose). + + If the tesla can't find any Tesla Coils or Grounding Rods to strike first, it will strike almost any station object capable of being powered, such as Substations, APCs, and general machinery. + + Certain objects aren't struck by the tesla, such as batteries, lights, PDAs, and other handheld items. + + It will also strike mobs and crew members, shocking them. Make sure to wear insulated gloves before approaching it. + + Note that only placing Tesla Coils won't be enough to prevent the tesla from striking sensitive equipment. + Grounding Rods should also be placed to help protect nearby Emitters from being struck. + + Engineers can also use grounding rods to protect sensitive equipment from lightning strikes, such as the Emitters powering the containment field generators. + + ## Power Generation + Lightning strikes can be harnessed using Tesla Coils, which convert the lightning strikes into power for the station. + + + + + + + + Tesla Coils should be placed around the lightning ball to capture the lightning strikes, as well as to prevent the lightning from striking sensitive equipment further away. + + Tesla Coils take damage every time they are struck by lightning, and will eventually break if not repaired. + Be sure to monitor the condition of the Tesla Coils and repair them as needed. + + Grounding rods, in contrast, do not take damage from lightning strikes. + + When lightning strikes Tesla Coils, they fill an internal battery, which is rapidly discharged to the grid. + It will discharge this power even if there is no consumer to take it, so it's a good idea to have an SMES nearby to store the power and discharge it smoothly. + + ## Loosed Tesla (Tesloose) + If the lightning ball escapes the containment field, it is referred to as a loosed tesla, or tesloose. + + An escaped tesla will randomly walk around the station, attracted to objects that can be powered, such as APCs, Substations, and machinery. + It will also gladly strike crew members and mobs, shocking them. + + Wearing insulated gloves will protect you from being shocked by the tesla, but it won't prevent the tesla from striking you. + + + + + + The tesla can be destroyed by firing antiparticles at it using a Portable Particle Decelerator, however, the Tesla is much more powerful than the Singularity, and it will take a lot of antiparticles to destroy it. + A group of people using decelerators is recommended to destroy a tesloose. + + Portable Particle Decelerators can be either researched and made by the Research Department, or they can be bought from Cargo. + + + + + + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Thermomachines.xml b/Resources/ServerInfo/Guidebook/Engineering/Thermomachines.xml new file mode 100644 index 0000000000..64035cde19 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Thermomachines.xml @@ -0,0 +1,75 @@ + + # Thermomachines + Thermomachines are devices that manipulate the temperature of gases within a [textlink="pipe network" link="PipeNetworks"] or exposed atmosphere. + + + + + + They are essential for maintaining the temperature of gasses for various applications. + + All thermomachines work by using [textlink="electrical power" link="Power"] to preform work on the atmosphere to either heat or cool it. + The amount of work they do is directly related to the amount of power they consume. + + Thermomachines also have an efficiency coefficient, which determines how much work they can do per unit of power consumed. + + To prevent overshooting their target value, thermomachines will scale back their heating/cooling power as they approach the target temperature. + However, they will still consume the same amount of electrical power, even when idle. + + All thermomachines have a target temperature tolerance of [color=orange][protodata="GasThermoMachineFreezer" comp="GasThermoMachine" member="TemperatureTolerance"/] K[/color], meaning they will stop heating or cooling when the temperature is within [color=orange][protodata="GasThermoMachineFreezer" comp="GasThermoMachine" member="TemperatureTolerance"/] K[/color] of the target temperature. + + ## Space Heater + The space heater is a portable temperature control unit that preforms work to heat or cool gas in the atmosphere it's exposed to. + It's a simple and effective way to maintain the temperature of a room, without having to build a pipenet or other system. + + + + + + They can be commonly found in Atmospherics, although the relevant machine board can be printed at a circuit imprinter, commonly found in Science. + + The space heater can cool to as low as [color=orange][protodata="SpaceHeater" comp="SpaceHeater" member="MinTemperature"/] K[/color] and heat to as high as [color=orange][protodata="SpaceHeater" comp="SpaceHeater" member="MaxTemperature"/] K[/color]. + + It also has three power settings, which determine how much power it consumes and how much work it does. + + Botany or science will often request these to maintain the temperature of their plants or department. + + ## Pipenet Thermomachines (Freezer and Heater) + Pipenet thermomachines are more powerful stationary temperature control units that can be used to heat or cool gas in a [textlink="pipenet." link="PipeNetworks"] + + + + + + + They draw [color=orange][protodata="GasThermoMachineFreezer" comp="GasThermoMachine" member="HeatCapacity" format="N0"/] W[/color] of power and can heat or cool gas in a pipenet to as high as [color=orange][protodata="GasThermoMachineFreezer" comp="GasThermoMachine" member="MaxTemperature"/] K[/color] or as low as [color=orange][protodata="GasThermoMachineFreezer" comp="GasThermoMachine" member="MinTemperature"/] K[/color]. + + You can swap the mode of the thermomachine by deconstructing it and using a screwdriver on its board. + The board can be printed at a circuit imprinter, commonly found in Science. + + + + + + + + + + + + + ## Thermomachines from Hell + Science can research more powerful thermomachines, aptly called hellfire heaters and freezers. + These machines are much more powerful than their standard counterparts, but they also consume more power. + + + + + + + These machines draw [color=orange][protodata="GasThermoMachineHellfireFreezer" comp="GasThermoMachine" member="HeatCapacity" format="N0"/] W[/color] of power and can heat or cool gas in a pipenet to as high as [color=orange][protodata="GasThermoMachineHellfireFreezer" comp="GasThermoMachine" member="MaxTemperature"/] K[/color] or as low as [color=orange][protodata="GasThermoMachineHellfireFreezer" comp="GasThermoMachine" member="MinTemperature"/] K[/color]. + + However, they also leak [color=orange][protodata="GasThermoMachineHellfireFreezer" comp="GasThermoMachine" member="EnergyLeakPercentage" format="P0"/][/color] of their energy to the surrounding environment, heating or cooling the exposed atmosphere respectively. + This can be dangerous if not properly managed. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/Valves.xml b/Resources/ServerInfo/Guidebook/Engineering/Valves.xml new file mode 100644 index 0000000000..db8c18807c --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/Valves.xml @@ -0,0 +1,15 @@ + + # Valves + Valves are a quick way to halt or permit gas flow through a [textlink="pipenet" link="PipeNetworks"]. + + + + + + + All valves do not require [textlink="power" link="Power"] to operate. + + Valves may look simple, but they can enable a wide variety of complex pipe systems, including: + - Signal valves responding to air alarm or logic gate outputs + - Pneumatic valves controlling variable venting of waste gasses from a burn chamber + diff --git a/Resources/ServerInfo/Guidebook/Engineering/VoltageNetworks.xml b/Resources/ServerInfo/Guidebook/Engineering/VoltageNetworks.xml new file mode 100644 index 0000000000..9d7ed30096 --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/VoltageNetworks.xml @@ -0,0 +1,95 @@ + + # Voltage Networks + In Space Station 14, power distribution is divided into three separate voltage networks. + These networks are the [color=green]Low Voltage[/color] Network, the [color=Yellow]Medium Voltage[/color] Network, and the [color=orange]High Voltage[/color] Network. + + These networks power different types of machinery on the station. + + + + + + + + ## Low Voltage Network + The [color=green]Low Voltage[/color] Network is used for powering almost all small machines on the station. This includes things like lights, computers, and other small devices. + + + + + + + + + + + + [color=green]Low Voltage[/color] power is provided by APCs, which are wall-mounted devices that convert power from the [color=Yellow]Medium Voltage[/color] Network to [color=green]Low Voltage[/color]. + + + + + + [color=green]Low Voltage[/color] wire doesn't have to be directly run to every machine, as it can power multiple machines as long as the wire is close enough to the machine. + It can power machines within 2 tiles radially, and 3 tiles in each cardinal direction. + + ## Medium Voltage Network + The [color=Yellow]Medium Voltage[/color] Network is used for powering APCs and other power-hungry machinery that can only accept [color=Yellow]Medium Voltage[/color] power. + The Particle Accelerator is an example, as it operates on [color=Yellow]Medium Voltage[/color] power. + + + + + + + + + + + + + + + + + + + + + + + [color=#999999][italic]The Particle Accelerator[italic][/color] + + + [color=Yellow]Medium Voltage[/color] power is provided by Substations, which are large machines that convert power from the [color=Orange]High Voltage[/color] Network to [color=Yellow]Medium Voltage[/color]. + + There are also wallmount variants of these substations for compact spaces, like shuttles. + + + + + + + + + + ## High Voltage Network + The [color=Orange]High Voltage[/color] Network is used for moving large amount of power across the station. It is used to power most power handling equipment, such as SMES units and Substations. + + Most high-output generators output power to the [color=Orange]High Voltage[/color] Network. + + + + + + + + + ## Shock Damage + If you are shocked by a cable carrying power, you will take damage. The amount of damage you take is based on the voltage of the cable that shocked you. + + [color=green]Low Voltage[/color] cables will deal less damage than [color=Yellow]Medium Voltage[/color] cables, which will deal less damage than [color=Orange]High Voltage[/color] cables. + + Energized [color=Orange]High Voltage[/color] and [color=Yellow]Medium Voltage[/color] cabling hurts, so be sure to wear insulated gloves when working with it. + + diff --git a/Resources/ServerInfo/Guidebook/Engineering/WirePanels.xml b/Resources/ServerInfo/Guidebook/Engineering/WirePanels.xml new file mode 100644 index 0000000000..6ac749120b --- /dev/null +++ b/Resources/ServerInfo/Guidebook/Engineering/WirePanels.xml @@ -0,0 +1,29 @@ + + # Wire Panels + Some station devices like airlocks, vending machines, and arcade consoles have wire panels, which control certain aspects of their functionality. + + These panels can be opened using a screwdriver to access the wiring inside. + + + + + + + + From here, you can use wirecutters and a multitool to interact with the wiring. Note that interacting with the wiring often requires insulated gloves, as if the wire is live, you can get shocked. + + + + + + You can cut and mend wires using the wirecutters, and pulse wires using the multitool. + + Cutting wires often completely disables or restores functionality to a device. + It may also trigger unintended functionality, like shocking people, dropping door bolts, or exploding. + + Pulsing wires can have a variety of effects, but oftentimes it either temporarily disables or enables functionality. + + You can't pulse wires if the wire you're trying to pulse is cut. You have to mend the wire first. + + +