diff --git a/.github/workflows/build-map-renderer.yml b/.github/workflows/build-map-renderer.yml
index 637eb56ff99..647cdd746db 100644
--- a/.github/workflows/build-map-renderer.yml
+++ b/.github/workflows/build-map-renderer.yml
@@ -2,7 +2,7 @@
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
merge_group:
pull_request:
types: [ opened, reopened, synchronize, ready_for_review ]
diff --git a/.github/workflows/build-test-debug.yml b/.github/workflows/build-test-debug.yml
index 357b90ce64f..0320dc783d4 100644
--- a/.github/workflows/build-test-debug.yml
+++ b/.github/workflows/build-test-debug.yml
@@ -2,7 +2,7 @@ name: Build & Test Debug
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
merge_group:
pull_request:
types: [ opened, reopened, synchronize, ready_for_review ]
diff --git a/.github/workflows/test-packaging.yml b/.github/workflows/test-packaging.yml
index 0e4690ea191..991f33ca98e 100644
--- a/.github/workflows/test-packaging.yml
+++ b/.github/workflows/test-packaging.yml
@@ -2,7 +2,7 @@
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
paths:
- '**.cs'
- '**.csproj'
diff --git a/.github/workflows/validate-rgas.yml b/.github/workflows/validate-rgas.yml
index 153ca4fa4f1..70490c0babf 100644
--- a/.github/workflows/validate-rgas.yml
+++ b/.github/workflows/validate-rgas.yml
@@ -1,7 +1,7 @@
name: RGA schema validator
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
merge_group:
pull_request:
types: [ opened, reopened, synchronize, ready_for_review ]
diff --git a/.github/workflows/validate-rsis.yml b/.github/workflows/validate-rsis.yml
index aa572b32cc8..210531a0c0b 100644
--- a/.github/workflows/validate-rsis.yml
+++ b/.github/workflows/validate-rsis.yml
@@ -2,7 +2,7 @@ name: RSI Validator
on:
push:
- branches: [ staging, trying, cursed ]
+ branches: [ staging, trying, endrbranch2 ]
merge_group:
pull_request:
paths:
diff --git a/.github/workflows/validate_mapfiles.yml b/.github/workflows/validate_mapfiles.yml
index 0aebc7abd95..db404228c04 100644
--- a/.github/workflows/validate_mapfiles.yml
+++ b/.github/workflows/validate_mapfiles.yml
@@ -1,7 +1,7 @@
name: Map file schema validator
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
merge_group:
pull_request:
types: [ opened, reopened, synchronize, ready_for_review ]
diff --git a/.github/workflows/yaml-linter.yml b/.github/workflows/yaml-linter.yml
index bdb43b0f3fb..e711985d0ae 100644
--- a/.github/workflows/yaml-linter.yml
+++ b/.github/workflows/yaml-linter.yml
@@ -2,7 +2,7 @@ name: YAML Linter
on:
push:
- branches: [ master, staging, trying, cursed ]
+ branches: [ master, staging, trying, endrbranch2 ]
merge_group:
pull_request:
types: [ opened, reopened, synchronize, ready_for_review ]
diff --git a/Content.Client/RCD/RCDMenu.xaml b/Content.Client/RCD/RCDMenu.xaml
index b3d5367a5fd..d039f67a6e1 100644
--- a/Content.Client/RCD/RCDMenu.xaml
+++ b/Content.Client/RCD/RCDMenu.xaml
@@ -6,7 +6,7 @@
VerticalExpand="True"
HorizontalExpand="True"
MinSize="450 450">
-
+
@@ -27,6 +27,10 @@
+
+
+
+
@@ -40,8 +44,10 @@
-
+
+
+
diff --git a/Resources/Locale/ru-RU/stray/items/tools.ftl b/Resources/Locale/ru-RU/stray/items/tools.ftl
new file mode 100644
index 00000000000..aaa1d776612
--- /dev/null
+++ b/Resources/Locale/ru-RU/stray/items/tools.ftl
@@ -0,0 +1,10 @@
+ent-AdavancedRCD = Продвинутое РСУ
+ .desc = РСУ с большим количеством возможных строений и большим возможным количеством зарядов.
+ent-AdavancedRCDEmpty = Продвинутое РСУ
+ .desc = РСУ с большим количеством возможных строений и большим возможным количеством зарядов.
+ent-CombatRCD = Боевое РСУ
+ .desc = РСУ с большим количеством возможных строений и гигантским количеством зарядов. Используется СИ и инженерами ОБР.
+ent-RACDEmpty = РАСУ
+ .desc = Ручное атмосферное строительное устройство. Может строить трубы.
+ent-RACD = РАСУ
+ .desc = Ручное атмосферное строительное устройство. Может строить трубы.
diff --git a/Resources/Locale/ru-RU/stray/research.ftl b/Resources/Locale/ru-RU/stray/research.ftl
index cef131cc961..c72f9212921 100644
--- a/Resources/Locale/ru-RU/stray/research.ftl
+++ b/Resources/Locale/ru-RU/stray/research.ftl
@@ -1 +1,2 @@
-research-technology-advanced-salvage-weapons = Продвинутое вооружение утилизаторов
\ No newline at end of file
+research-technology-advanced-salvage-weapons = Продвинутое вооружение утилизаторов
+research-technology-adavanced-rcd = Продвинутые РСУ
\ No newline at end of file
diff --git a/Resources/Prototypes/Catalog/Fills/Items/belt.yml b/Resources/Prototypes/Catalog/Fills/Items/belt.yml
index a271b32f0ac..69563cbaade 100644
--- a/Resources/Prototypes/Catalog/Fills/Items/belt.yml
+++ b/Resources/Prototypes/Catalog/Fills/Items/belt.yml
@@ -40,6 +40,7 @@
- id: HolofanProjector
- id: GasAnalyzer
- id: trayScanner
+ - id: CombatRCD
- type: entity
id: ClothingBeltSecurityFilled
diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml b/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml
index 0477d250db2..ff63f24b99a 100644
--- a/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml
+++ b/Resources/Prototypes/Catalog/Fills/Lockers/engineer.yml
@@ -95,6 +95,7 @@
- id: MedkitOxygenFilled
- id: HolofanProjector
- id: RCD
+ - id: RACD
- id: RCDAmmo
- id: LunchboxEngineeringFilledRandom # Delta-V Lunchboxes!
prob: 0.3
@@ -113,6 +114,7 @@
- id: MedkitOxygenFilled
- id: HolofanProjector
- id: RCD
+ - id: RACD
- id: RCDAmmo
- id: LunchboxEngineeringFilledRandom # Delta-V Lunchboxes!
prob: 0.3
diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/heads.yml b/Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
index 3a6af51d7b3..89ccd4b6931 100644
--- a/Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
+++ b/Resources/Prototypes/Catalog/Fills/Lockers/heads.yml
@@ -183,6 +183,8 @@
- id: ClothingShoesBootsLaceup # DeltaV - add fancy shoes for HoP and cap
- id: ClothingShoesMiscWhite # DeltaV - add fancy shoes for HoP and cap
- id: ClothingShoesBootsWinterHeadOfPersonel #Delta V: Add departmental winter boots
+ - id: ClothingOuterHardsuitHoP # Stray
+ - id: WeaponDisabler # Stray
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
prob: 0.3
diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml
index 16cfdeafbe1..1881026c57b 100644
--- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml
+++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml
@@ -373,6 +373,9 @@
- WeaponProtoKineticAcceleratorMining
- WeaponProtoKineticAcceleratorAdvancedMining
- WeaponProtoKineticAcceleratorSubversiveMining
+ - RCD
+ - RACD
+ - AdavancedRCD
# End Stray additions
- type: EmagLatheRecipes
emagDynamicRecipes:
diff --git a/Resources/Prototypes/Maps/edge.yml b/Resources/Prototypes/Maps/edge.yml
index 18aba16c9a1..ff9b853991b 100644
--- a/Resources/Prototypes/Maps/edge.yml
+++ b/Resources/Prototypes/Maps/edge.yml
@@ -49,7 +49,7 @@
Paramedic: [ 1, 2 ]
Psychologist: [ 1, 1 ]
MedicalDoctor: [ 3, 4 ]
- MedicalIntern: [ 2, 3 ]s
+ MedicalIntern: [ 2, 3 ]
Slugcat: [ 1, 1 ]
#science
ResearchDirector: [ 1, 1 ]
diff --git a/Resources/Prototypes/Research/industrial.yml b/Resources/Prototypes/Research/industrial.yml
index 18db9d42e89..18e63eaabed 100644
--- a/Resources/Prototypes/Research/industrial.yml
+++ b/Resources/Prototypes/Research/industrial.yml
@@ -180,6 +180,8 @@
- JawsOfLife
- BorgModuleAdvancedTool
- BorgModuleRCD
+ - RCD
+ - RCDAmmo
# Tier 3
diff --git a/Resources/Prototypes/SimpleStation14/Entities/Clothing/OuterClothing/hardsuits.yml b/Resources/Prototypes/SimpleStation14/Entities/Clothing/OuterClothing/hardsuits.yml
index 4dd45fb00a4..0fe35a38258 100644
--- a/Resources/Prototypes/SimpleStation14/Entities/Clothing/OuterClothing/hardsuits.yml
+++ b/Resources/Prototypes/SimpleStation14/Entities/Clothing/OuterClothing/hardsuits.yml
@@ -41,14 +41,14 @@
highPressureMultiplier: 0.02
lowPressureMultiplier: 4500
- type: ClothingSpeedModifier
- walkModifier: 0.8
- sprintModifier: 0.8
+ walkModifier: 1
+ sprintModifier: 0.85
- type: Armor
modifiers:
coefficients:
- Blunt: 0.90
- Slash: 0.8
- Piercing: 0.90
+ Blunt: 0.7
+ Slash: 0.7
+ Piercing: 0.7
Heat: 0.8
Radiation: 0.6
- type: ExplosionResistance
diff --git a/Resources/Prototypes/Stray/Body/Organs/ipc.yml b/Resources/Prototypes/Stray/Body/Organs/ipc.yml
index feb30530111..e9f76be3f1e 100644
--- a/Resources/Prototypes/Stray/Body/Organs/ipc.yml
+++ b/Resources/Prototypes/Stray/Body/Organs/ipc.yml
@@ -9,13 +9,6 @@
- type: Organ
- type: Extractable
grindableSolutionName: organ
- - type: SolutionContainerManager
- solutions:
- organ:
- maxVol: 10
- reagents:
- - ReagentId: Oil
- Quantity: 10
- type: entity
id: OrganIPCFan
diff --git a/Resources/Prototypes/Stray/Entities/Mobs/Species/ipc.yml b/Resources/Prototypes/Stray/Entities/Mobs/Species/ipc.yml
index 0639c15b6b3..49b28c99e66 100644
--- a/Resources/Prototypes/Stray/Entities/Mobs/Species/ipc.yml
+++ b/Resources/Prototypes/Stray/Entities/Mobs/Species/ipc.yml
@@ -269,7 +269,6 @@
- Freelance
- type: LockedWiresPanel
-
- type: entity
name: Urist McIPC
parent: MobHumanDummy
diff --git a/Resources/Prototypes/Stray/Entities/Objects/Tools/RCD.yml b/Resources/Prototypes/Stray/Entities/Objects/Tools/RCD.yml
new file mode 100644
index 00000000000..cf5d3fb13b8
--- /dev/null
+++ b/Resources/Prototypes/Stray/Entities/Objects/Tools/RCD.yml
@@ -0,0 +1,148 @@
+- type: entity
+ id: CombatRCD
+ parent: BaseItem
+ name: Combat RCD
+ description: The rapid construction device can be used to quickly place and remove various station structures and fixtures. Requires compressed matter to function.
+ components:
+ - type: RCD
+ availablePrototypes:
+ - WallSolid
+ - FloorSteel
+ - Plating
+ - Catwalk
+ - Grille
+ - Window
+ - WindowDirectional
+ - WindowReinforcedDirectional
+ - ReinforcedWindow
+ - Airlock
+ - AirlockGlass
+ - Firelock
+ - TubeLight
+ - BulbLight
+ - LVCable
+ - MVCable
+ - HVCable
+ - CableTerminal
+ - Deconstruct
+ - GasVentPump
+ - GasVentScrubber
+ - GasPipeStraight
+ - GasPipeTJunction
+ - GasPipeBend
+ - GasPipeFourway
+ - GasPressurePump
+ - GasMixer
+ - GasFilter
+ - ComputerFrame
+ - MachineFrame
+ - WindoorSecure
+ - Windoor
+ - AirlockGlassShuttle
+ - AirlockShuttle
+ - WallShuttle
+ - WallReinforced
+ - type: LimitedCharges
+ maxCharges: 500
+ charges: 500
+ - type: AutoRecharge
+ rechargeDuration: 480
+ - type: UseDelay
+ - type: Sprite
+ sprite: Stray/Objects/Tools/crcd.rsi
+ state: icon
+ - type: Item
+ sprite: Stray/Objects/Tools/crcd.rsi
+ size: Normal
+ - type: PhysicalComposition
+ materialComposition:
+ Steel: 600
+ Plastic: 100
+ - type: StaticPrice
+ price: 50000
+ - type: UserInterface
+ interfaces:
+ enum.RcdUiKey.Key:
+ type: RCDMenuBoundUserInterface
+ - type: ActivatableUI
+ key: enum.RcdUiKey.Key
+
+- type: entity
+ id: RACD
+ parent: BaseItem
+ name: RACD
+ description: The rapid construction device can be used to quickly place and remove various station structures and fixtures. Requires compressed matter to function.
+ components:
+ - type: RCD
+ availablePrototypes:
+ - GasPassiveVent
+ - GasVentPump
+ - GasVentScrubber
+ - GasPipeStraight
+ - GasPipeTJunction
+ - GasPipeBend
+ - GasPipeFourway
+ - GasPressurePump
+ - GasVolumePump
+ - GasMixer
+ - GasFilter
+ - FloorSteel
+ - Airlock
+ - AirlockGlass
+ - Firelock
+ - Deconstruct
+ - type: LimitedCharges
+ maxCharges: 30
+ charges: 30
+ - type: UseDelay
+ - type: Sprite
+ sprite: Stray/Objects/Tools/rcad.rsi
+ state: icon
+ - type: Item
+ sprite: Stray/Objects/Tools/rcad.rsi
+ size: Normal
+ - type: PhysicalComposition
+ materialComposition:
+ Steel: 600
+ Plastic: 100
+ - type: StaticPrice
+ price: 50000
+ - type: UserInterface
+ interfaces:
+ enum.RcdUiKey.Key:
+ type: RCDMenuBoundUserInterface
+ - type: ActivatableUI
+ key: enum.RcdUiKey.Key
+
+- type: entity
+ id: AdavancedRCD
+ parent: CombatRCD
+ name: Adavanced RCD
+ description: The rapid construction device can be used to quickly place and remove various station structures and fixtures. Requires compressed matter to function.
+ components:
+ - type: LimitedCharges
+ maxCharges: 60
+ charges: 60
+ - type: Sprite
+ sprite: Stray/Objects/Tools/arcd.rsi
+ state: icon
+ - type: Item
+ sprite: Stray/Objects/Tools/arcd.rsi
+
+- type: entity
+ id: AdavancedRCDEmpty
+ parent: AdavancedRCD
+ suffix: пустое
+ components:
+ - type: LimitedCharges
+ maxCharges: 60
+ charges: 0
+
+- type: entity
+ id: RACDEmpty
+ parent: RACD
+ suffix: пустое
+ components:
+ - type: LimitedCharges
+ maxCharges: 30
+ charges: 0
\ No newline at end of file
diff --git a/Resources/Prototypes/Stray/RCD/rcd.yml b/Resources/Prototypes/Stray/RCD/rcd.yml
new file mode 100644
index 00000000000..7060e1a28c0
--- /dev/null
+++ b/Resources/Prototypes/Stray/RCD/rcd.yml
@@ -0,0 +1,249 @@
+- type: rcd
+ id: GasPassiveVent
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/PVent.png
+ mode: ConstructObject
+ prototype: GasPassiveVent
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasVentPump
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/Vent.png
+ mode: ConstructObject
+ prototype: GasVentPump
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasVentScrubber
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/Scrubber.png
+ mode: ConstructObject
+ prototype: GasVentScrubber
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasPipeStraight
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/Pipe.png
+ mode: ConstructObject
+ prototype: GasPipeStraight
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasPipeTJunction
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/TPipe.png
+ mode: ConstructObject
+ prototype: GasPipeTJunction
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasPipeBend
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/BPipe.png
+ mode: ConstructObject
+ prototype: GasPipeBend
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasPipeFourway
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/FPipe.png
+ mode: ConstructObject
+ prototype: GasPipeFourway
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasPressurePump
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/PPump.png
+ mode: ConstructObject
+ prototype: GasPressurePump
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasVolumePump
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/VPump.png
+ mode: ConstructObject
+ prototype: GasVolumePump
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasMixer
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/Mixer.png
+ mode: ConstructObject
+ prototype: GasMixer
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: GasFilter
+ category: Tubes
+ sprite: /Textures/Interface/Radial/RCD/Filter.png
+ mode: ConstructObject
+ prototype: GasFilter
+ cost: 1
+ delay: 1
+ collisionMask: FullTileMask
+ rules:
+ - IsWindow
+ rotation: User
+ fx: EffectRCDConstruct1
+
+- type: rcd
+ id: WallReinforced
+ category: WallsAndFlooring
+ sprite: /Textures/Interface/Radial/RCD/reinforced_wall.png
+ mode: ConstructObject
+ prototype: WallReinforced
+ cost: 6
+ delay: 4
+ collisionMask: FullTileMask
+ rotation: Fixed
+ fx: EffectRCDConstruct4
+
+- type: rcd
+ id: WallShuttle
+ category: WallsAndFlooring
+ sprite: /Textures/Interface/Radial/RCD/shuttle_wall.png
+ mode: ConstructObject
+ prototype: WallShuttle
+ cost: 6
+ delay: 4
+ collisionMask: FullTileMask
+ rotation: Fixed
+ fx: EffectRCDConstruct4
+
+- type: rcd
+ id: AirlockShuttle
+ category: Airlocks
+ sprite: /Textures/Interface/Radial/RCD/shuttle_airlock.png
+ mode: ConstructObject
+ prototype: AirlockShuttle
+ cost: 8
+ delay: 4
+ collisionMask: FullTileMask
+ rotation: Camera
+ fx: EffectRCDConstruct4
+
+- type: rcd
+ id: AirlockGlassShuttle
+ category: Airlocks
+ sprite: /Textures/Interface/Radial/RCD/glass_shuttle_airlock.png
+ mode: ConstructObject
+ prototype: AirlockGlassShuttle
+ cost: 7
+ delay: 4
+ collisionMask: FullTileMask
+ rotation: Camera
+ fx: EffectRCDConstruct4
+
+- type: rcd
+ id: Windoor
+ category: WindowsAndGrilles
+ sprite: /Textures/Interface/Radial/RCD/Windoor.png
+ mode: ConstructObject
+ prototype: Windoor
+ cost: 3
+ delay: 2
+ collisionMask: FullTileMask
+ rotation: Camera
+ fx: EffectRCDConstruct2
+
+- type: rcd
+ id: WindoorSecure
+ category: WindowsAndGrilles
+ sprite: /Textures/Interface/Radial/RCD/WindoorSecure.png
+ mode: ConstructObject
+ prototype: WindoorSecure
+ cost: 4
+ delay: 3
+ collisionMask: FullTileMask
+ rotation: Camera
+ fx: EffectRCDConstruct3
+
+- type: rcd
+ id: MachineFrame
+ category: Electrical
+ sprite: /Textures/Interface/Radial/RCD/machine_frame.png
+ mode: ConstructObject
+ prototype: MachineFrame
+ cost: 1
+ delay: 2
+ collisionMask: FullTileMask
+ rotation: Fixed
+ fx: EffectRCDConstruct2
+
+- type: rcd
+ id: ComputerFrame
+ category: Electrical
+ sprite: /Textures/Interface/Radial/RCD/computer_frame.png
+ mode: ConstructObject
+ prototype: ComputerFrame
+ cost: 1
+ delay: 2
+ collisionMask: FullTileMask
+ rotation: Fixed
+ fx: EffectRCDConstruct2
\ No newline at end of file
diff --git a/Resources/Prototypes/Stray/Recipes/Lathes/RCD.yml b/Resources/Prototypes/Stray/Recipes/Lathes/RCD.yml
new file mode 100644
index 00000000000..97c3e5b70a5
--- /dev/null
+++ b/Resources/Prototypes/Stray/Recipes/Lathes/RCD.yml
@@ -0,0 +1,17 @@
+- type: latheRecipe
+ id: RACD
+ result: RACDEmpty
+ completetime: 10
+ materials:
+ Steel: 1000
+ Plastic: 300
+ Glass: 500
+
+- type: latheRecipe
+ id: AdavancedRCD
+ result: AdavancedRCDEmpty
+ completetime: 10
+ materials:
+ Steel: 1000
+ Plastic: 600
+ Glass: 500
\ No newline at end of file
diff --git a/Resources/Prototypes/Stray/Research/industrial.yml b/Resources/Prototypes/Stray/Research/industrial.yml
new file mode 100644
index 00000000000..1737747909e
--- /dev/null
+++ b/Resources/Prototypes/Stray/Research/industrial.yml
@@ -0,0 +1,14 @@
+# Tier 3
+
+- type: technology
+ id: Adavanced-rcd
+ name: research-technology-adavanced-rcd
+ icon:
+ sprite: Stray/Objects/Tools/arcd.rsi
+ state: icon
+ discipline: Industrial
+ tier: 3
+ cost: 25000
+ recipeUnlocks:
+ - RACD
+ - AdavancedRCD
\ No newline at end of file
diff --git a/Resources/Textures/Interface/Radial/RCD/BPipe.png b/Resources/Textures/Interface/Radial/RCD/BPipe.png
new file mode 100644
index 00000000000..70177a7fee5
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/BPipe.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/FPipe.png b/Resources/Textures/Interface/Radial/RCD/FPipe.png
new file mode 100644
index 00000000000..deac9a3c44b
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/FPipe.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Filter.png b/Resources/Textures/Interface/Radial/RCD/Filter.png
new file mode 100644
index 00000000000..8c1f90faac7
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Filter.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Mixer.png b/Resources/Textures/Interface/Radial/RCD/Mixer.png
new file mode 100644
index 00000000000..f29efc95f1e
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Mixer.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/PPump.png b/Resources/Textures/Interface/Radial/RCD/PPump.png
new file mode 100644
index 00000000000..5d98b8d2e2d
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/PPump.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/PVent.png b/Resources/Textures/Interface/Radial/RCD/PVent.png
new file mode 100644
index 00000000000..a55831b38b6
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/PVent.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Pipe.png b/Resources/Textures/Interface/Radial/RCD/Pipe.png
new file mode 100644
index 00000000000..ddfdf07a94f
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Pipe.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Scrubber.png b/Resources/Textures/Interface/Radial/RCD/Scrubber.png
new file mode 100644
index 00000000000..614d7a82934
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Scrubber.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/TPipe.png b/Resources/Textures/Interface/Radial/RCD/TPipe.png
new file mode 100644
index 00000000000..42bba34b4cb
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/TPipe.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Tubes.png b/Resources/Textures/Interface/Radial/RCD/Tubes.png
new file mode 100644
index 00000000000..c9679025e1a
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Tubes.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/VPump.png b/Resources/Textures/Interface/Radial/RCD/VPump.png
new file mode 100644
index 00000000000..f711a03afd5
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/VPump.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Vent.png b/Resources/Textures/Interface/Radial/RCD/Vent.png
new file mode 100644
index 00000000000..fb5a06a87d9
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Vent.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/Windoor.png b/Resources/Textures/Interface/Radial/RCD/Windoor.png
new file mode 100644
index 00000000000..6b22d2f0f3c
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/Windoor.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/WindoorSecure.png b/Resources/Textures/Interface/Radial/RCD/WindoorSecure.png
new file mode 100644
index 00000000000..e2cc9a6ff38
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/WindoorSecure.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/glass_shuttle_airlock.png b/Resources/Textures/Interface/Radial/RCD/glass_shuttle_airlock.png
new file mode 100644
index 00000000000..dbbd590bed3
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/glass_shuttle_airlock.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/shuttle_airlock.png b/Resources/Textures/Interface/Radial/RCD/shuttle_airlock.png
new file mode 100644
index 00000000000..8cb05093777
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/shuttle_airlock.png differ
diff --git a/Resources/Textures/Interface/Radial/RCD/shuttle_wall.png b/Resources/Textures/Interface/Radial/RCD/shuttle_wall.png
new file mode 100644
index 00000000000..b8232fc138f
Binary files /dev/null and b/Resources/Textures/Interface/Radial/RCD/shuttle_wall.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/arcd.rsi/icon.png b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/icon.png
new file mode 100644
index 00000000000..8ba79e24fd4
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/icon.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-left.png b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-left.png
new file mode 100644
index 00000000000..2efd82505cf
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-right.png b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-right.png
new file mode 100644
index 00000000000..8bf649fb09d
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/arcd.rsi/meta.json b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/meta.json
new file mode 100644
index 00000000000..d74b1134fff
--- /dev/null
+++ b/Resources/Textures/Stray/Objects/Tools/arcd.rsi/meta.json
@@ -0,0 +1,22 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "By endr_animet for Stray server",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ }
+ ]
+}
diff --git a/Resources/Textures/Stray/Objects/Tools/crcd.rsi/icon.png b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/icon.png
new file mode 100644
index 00000000000..ffcc46029d8
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/icon.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-left.png b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-left.png
new file mode 100644
index 00000000000..7aad1863a6e
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-right.png b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-right.png
new file mode 100644
index 00000000000..39e3ab3797a
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/crcd.rsi/meta.json b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/meta.json
new file mode 100644
index 00000000000..d74b1134fff
--- /dev/null
+++ b/Resources/Textures/Stray/Objects/Tools/crcd.rsi/meta.json
@@ -0,0 +1,22 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "By endr_animet for Stray server",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ }
+ ]
+}
diff --git a/Resources/Textures/Stray/Objects/Tools/rcad.rsi/icon.png b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/icon.png
new file mode 100644
index 00000000000..dd5758aa03d
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/icon.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-left.png b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-left.png
new file mode 100644
index 00000000000..1e0767d7c34
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-left.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-right.png b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-right.png
new file mode 100644
index 00000000000..e315eb0571c
Binary files /dev/null and b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/inhand-right.png differ
diff --git a/Resources/Textures/Stray/Objects/Tools/rcad.rsi/meta.json b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/meta.json
new file mode 100644
index 00000000000..d74b1134fff
--- /dev/null
+++ b/Resources/Textures/Stray/Objects/Tools/rcad.rsi/meta.json
@@ -0,0 +1,22 @@
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "By endr_animet for Stray server",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "icon"
+ },
+ {
+ "name": "inhand-left",
+ "directions": 4
+ },
+ {
+ "name": "inhand-right",
+ "directions": 4
+ }
+ ]
+}
diff --git a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/bounty.png b/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/bounty.png
deleted file mode 100644
index ee32a8211ea..00000000000
Binary files a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/bounty.png and /dev/null differ
diff --git a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/captains_paper.png b/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/captains_paper.png
deleted file mode 100644
index 57f9a909507..00000000000
Binary files a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/captains_paper.png and /dev/null differ
diff --git a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/invoice.png b/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/invoice.png
deleted file mode 100644
index ed4951d12a8..00000000000
Binary files a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/invoice.png and /dev/null differ
diff --git a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/paper.png b/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/paper.png
deleted file mode 100644
index 6cf41f02c8b..00000000000
Binary files a/Resources/Textures/Stray/Structures/Storage/supermatter.rsi/paper.png and /dev/null differ