diff --git a/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml b/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml index 643b5f5d92..d90f278190 100644 --- a/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml +++ b/Resources/Prototypes/Entities/Mobs/Cyborgs/borg_chassis.yml @@ -257,7 +257,8 @@ footstepSoundCollection: collection: FootstepHoverBorg params: - volume: -6 + variation: 0.1 + volume: -13 - type: InteractionPopup interactSuccessString: petting-success-medical-cyborg interactFailureString: petting-failure-medical-cyborg diff --git a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml index 9a77ebc285..cce1afbff5 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/fire_extinguisher.yml @@ -104,4 +104,18 @@ - type: PhysicalComposition materialComposition: Steel: 50 - Glass: 40 \ No newline at end of file + Glass: 40 + +- type: entity + name: massive fire extinguisher + parent: FireExtinguisher + id: FireExtinguisherMassive + description: It extinguishes fires. + components: + - type: SolutionContainerManager + solutions: + spray: + maxVol: 300 + reagents: + - ReagentId: Water + Quantity: 300 diff --git a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml index e9eb18f926..2b279cb8d9 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/spray.yml @@ -27,7 +27,7 @@ - type: UseDelay - type: Spray transferAmount: 10 - sprayVelocity: 2 + sprayVelocity: 5 # WD spraySound: path: /Audio/Effects/spray2.ogg - type: TrashOnSolutionEmpty @@ -93,6 +93,20 @@ - Spray - DroneUsable #They don't have any other chem stuff on their whitelist so they can't refill it +- type: entity # WD - for borgs + name: space cleaner + description: BLAM!-brand non-foaming space cleaner! + id: SprayBottleSpaceCleanerSelfRecharging + parent: SprayBottle + suffix: "" + components: + - type: SolutionRegeneration + solution: spray + generated: + reagents: + - ReagentId: SpaceCleaner + Quantity: 3 + # Vapor - type: entity diff --git a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/trashbag.yml b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/trashbag.yml index 0be2889d18..1dc0e587a6 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Janitorial/trashbag.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Janitorial/trashbag.yml @@ -44,6 +44,24 @@ - type: StorageFillVisualizer fillBaseName: blue-icon +- type: entity # WD - for borgs + name: trash bag + id: TrashBagAdvanced + parent: TrashBagBlue + components: + - type: Storage + maxItemSize: Large + grid: + - 0,0,4,9 + quickInsert: true + areaInsert: true + storageOpenSound: + collection: trashBagRustle + storageInsertSound: + collection: trashBagRustle + - type: Dumpable + multiplier: 1.3 + - type: entity name: spell of all-consuming cleanliness id: BagOfSummoningGarbage diff --git a/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml b/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml index fe4b9cf0ca..8c0282751a 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Medical/hypospray.yml @@ -1,14 +1,9 @@ -- type: entity +- type: entity # WD name: hypospray parent: BaseItem description: A sterile injector for rapid administration of drugs to patients. - id: Hypospray + id: BaseHypospray components: - - type: Sprite - sprite: Objects/Specific/Medical/hypospray.rsi - state: hypo - - type: Item - sprite: Objects/Specific/Medical/hypospray.rsi - type: SolutionContainerManager solutions: hypospray: @@ -23,16 +18,28 @@ delay: 0.5 - type: StaticPrice price: 750 + - type: ContextMenuInteractionBlocker + +- type: entity + name: hypospray + parent: BaseHypospray # WD + description: A sterile injector for rapid administration of drugs to patients. + id: Hypospray + components: + - type: Sprite + sprite: Objects/Specific/Medical/hypospray.rsi + state: hypo + - type: Item + sprite: Objects/Specific/Medical/hypospray.rsi - type: Tag tags: - HighRiskItem - type: StealTarget stealGroup: Hypospray - - type: ContextMenuInteractionBlocker - type: entity name: gorlex hypospray - parent: BaseItem + parent: BaseHypospray # WD description: Using reverse engineered designs from NT, Cybersun produced these in limited quantities for Gorlex Marauder operatives. id: SyndiHypo components: @@ -45,19 +52,10 @@ solutions: hypospray: maxVol: 20 - - type: RefillableSolution - solution: hypospray - - type: ExaminableSolution - solution: hypospray - - type: Hypospray - onlyAffectsMobs: false - - type: UseDelay - delay: 0.5 - - type: ContextMenuInteractionBlocker - type: entity name: borghypo - parent: BaseItem + parent: BaseHypospray # WD description: A sterile injector for rapid administration of drugs to patients. A cheaper and more specialised version for medical borgs. id: BorgHypo components: @@ -69,16 +67,54 @@ - type: SolutionContainerManager solutions: hypospray: - maxVol: 10 - - type: RefillableSolution + maxVol: 15 + - type: AutoRegenReagent # WD + reagents: + - Epinephrine + - Tricordrazine + - Dexalin + - Saline + - Kelotane + interval: 1 solution: hypospray - - type: ExaminableSolution + +- type: entity # WD + name: borghypo + parent: BorgHypo + description: A sterile injector for rapid administration of drugs to patients. A cheaper and more specialised version for medical borgs. + id: BorgHypoAdvanced + components: + - type: SolutionContainerManager + solutions: + hypospray: + maxVol: 25 + - type: AutoRegenReagent + reagents: + - Epinephrine + - Bicaridine + - Dermaline + - DexalinPlus + - Ultravasculine + - Saline + interval: 2 + solution: hypospray + +- type: entity # WD + name: borghypo + parent: BorgHypo + description: A sterile injector for rapid administration of drugs to patients. A cheaper and more specialised version for medical borgs. + id: BorgHypoParamedic + components: + - type: AutoRegenReagent + reagents: + - Epinephrine + - Barozine + - TranexamicAcid + - Inaprovaline + - Ethylredoxrazine + - Ipecac + interval: 2 solution: hypospray - - type: Hypospray - onlyAffectsMobs: false - - type: UseDelay - delay: 0.5 - - type: ContextMenuInteractionBlocker - type: entity name: experimental hypospray @@ -87,12 +123,12 @@ description: The ultimate application of bluespace technology and rapid chemical administration. id: AdminHypo components: - - type: SolutionContainerManager - solutions: - hypospray: - maxVol: 3000 - - type: UseDelay - delay: 0.0 + - type: SolutionContainerManager + solutions: + hypospray: + maxVol: 3000 + - type: UseDelay + delay: 0.0 - type: entity name: chemical medipen diff --git a/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml b/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml index 3ba14b0e28..1a7bd92c94 100644 --- a/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml +++ b/Resources/Prototypes/Entities/Objects/Specific/Robotics/borg_modules.yml @@ -120,19 +120,6 @@ - Wirecutter - trayScanner -- type: entity - id: BorgModuleFireExtinguisher - parent: [ BaseBorgModule, BaseProviderBorgModule ] - name: fire extinguisher cyborg module - components: - - type: Sprite - layers: - - state: generic - - state: icon-fire-extinguisher - - type: ItemBorgModule - items: - - FireExtinguisher - - type: entity id: BorgModuleGPS parent: [ BaseBorgModule, BaseProviderBorgModule ] @@ -178,6 +165,7 @@ - Wirecutter - Multitool - WelderIndustrial + - FireExtinguisher # cargo modules - type: entity @@ -236,20 +224,18 @@ - state: icon-tools-adv - type: ItemBorgModule items: - - Omnitool - - WelderExperimental - - NetworkConfigurator - - RemoteSignaller - - GasAnalyzer - - GeigerCounter - - RemoteSignaller - - GasAnalyzer + - JawsOfLife # WD + - PowerDrill # WD + - WelderExperimental # WD + - Tricorder # WD + - AccessConfigurator # WD + - trayScanner # WD - GeigerCounter - type: entity - id: BorgModuleConstruction + id: BorgModuleAtmospherics # WD parent: [ BaseBorgModuleEngineering, BaseProviderBorgModule ] - name: construction cyborg module + name: atmospherics cyborg module components: - type: Sprite layers: @@ -257,15 +243,15 @@ - state: icon-construction - type: ItemBorgModule items: - - SheetSteelLingering0 - - SheetGlassLingering0 - - PartRodMetalLingering0 - - FloorTileItemSteelLingering0 + - HolofanProjector # WD + - RapidPipeDispenserRecharging # WD + - trayScanner # WD + - GasAnalyzer # WD - type: entity - id: BorgModuleRCD + id: BorgModuleConstruction # WD parent: [ BaseBorgModuleEngineering, BaseProviderBorgModule ] - name: RCD cyborg module + name: construction cyborg module components: - type: Sprite layers: @@ -287,7 +273,7 @@ - state: icon-light-replacer - type: ItemBorgModule items: - - LightReplacer + - LightReplacerBigger # WD - Crowbar - Screwdriver @@ -319,24 +305,10 @@ items: - AdvMopItem - HoloprojectorBorg - - SprayBottleSpaceCleaner - - Dropper + - SprayBottleSpaceCleanerSelfRecharging # WD + - TrashBagAdvanced # WD # medical modules -- type: entity - id: BorgModuleDiagnosis # todo: reuse when med refractor is finished - parent: [ BaseBorgModuleMedical, BaseProviderBorgModule ] - name: diagnosis cyborg module - components: - - type: Sprite - layers: - - state: medical - - state: icon-diagnosis - - type: ItemBorgModule - items: - - HandheldHealthAnalyzerUnpowered - - ClothingNeckStethoscope - - type: entity id: BorgModuleTreatment parent: [ BaseBorgModuleMedical, BaseProviderBorgModule ] @@ -349,12 +321,24 @@ - type: ItemBorgModule items: - HandheldHealthAnalyzerUnpowered - - Brutepack10Lingering - - Ointment10Lingering - - Gauze10Lingering - - Bloodpack10Lingering + - BorgHypo # WD - Syringe +- type: entity # WD + id: BorgModuleResque + parent: [ BaseBorgModuleMedical, BaseProviderBorgModule ] + name: treatment cyborg module + components: + - type: Sprite + layers: + - state: medical + - state: icon-treatment + - type: ItemBorgModule + items: + - HandheldHealthAnalyzerUnpowered + - BorgHypoParamedic + - HandheldCrewMonitor + - type: entity id: BorgModuleDefibrillator parent: [ BaseBorgModuleMedical, BaseProviderBorgModule ] @@ -380,10 +364,10 @@ - type: ItemBorgModule items: - HandheldHealthAnalyzerUnpowered + - BorgHypoAdvanced # WD - Beaker - Beaker - BorgDropper - - BorgHypo # science modules # todo: if science ever gets their own custom robot, add more "sci" modules. diff --git a/Resources/Prototypes/Entities/Objects/Tools/light_replacer.yml b/Resources/Prototypes/Entities/Objects/Tools/light_replacer.yml index f1c6a2fa5e..d54ddeb929 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/light_replacer.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/light_replacer.yml @@ -33,3 +33,15 @@ contents: - id: LightTube amount: 0 + +- type: entity # WD - for borgs + parent: LightReplacer + id: LightReplacerBigger + suffix: 2x bulbs + components: + - type: LightReplacer + contents: + - id: LightTube + amount: 16 + - id: LightBulb + amount: 16 diff --git a/Resources/Prototypes/Entities/Objects/Tools/tools.yml b/Resources/Prototypes/Entities/Objects/Tools/tools.yml index f55add8db2..6f5cf28e45 100644 --- a/Resources/Prototypes/Entities/Objects/Tools/tools.yml +++ b/Resources/Prototypes/Entities/Objects/Tools/tools.yml @@ -543,7 +543,15 @@ maxCharges: 20 charges: 20 - type: AutoRecharge - rechargeDuration: 10 + rechargeDuration: 3 + +- type: entity # WD + id: RapidPipeDispenserRecharging + parent: RapidPipeDispenser + suffix: Empty + components: + - type: AutoRecharge + rechargeDuration: 2 - type: entity id: RCDExperimental diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index 6cafa010a9..1c67d9fe15 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -539,15 +539,15 @@ - type: Lathe idleState: fab-idle runningState: fab-active - staticRecipes: + staticRecipes: # WD edit - removed BorgModuleFireExtinguisher - MMI - PositronicBrain - SciFlash - BorgModuleCable - - BorgModuleFireExtinguisher - BorgModuleRadiationDetection - BorgModuleTool - BorgModuleAppraisal + - BorgModuleAtmospherics # WD - BorgModuleConstruction - BorgModuleService - BorgModuleTreatment @@ -587,7 +587,7 @@ - RightLegBorgService - HeadBorgService - TorsoBorgService - dynamicRecipes: + dynamicRecipes: # WD edit - removed BorgModuleDiagnosis - ProximitySensor - BorgModuleLightReplacer - BorgModuleAdvancedCleaning @@ -595,14 +595,12 @@ - BorgModuleGrapplingGun - BorgModuleAdvancedTool - BorgModuleGPS - - BorgModuleRCD - BorgModuleArtifact - BorgModuleAnomaly - BorgModuleGardening - BorgModuleHarvesting - BorgModuleMusique - BorgModuleClowning - - BorgModuleDiagnosis - BorgModuleDefibrillator - BorgModuleAdvancedTreatment - RipleyHarness diff --git a/Resources/Prototypes/Recipes/Lathes/robotics.yml b/Resources/Prototypes/Recipes/Lathes/robotics.yml index 44a9e2f0f2..49402a714b 100644 --- a/Resources/Prototypes/Recipes/Lathes/robotics.yml +++ b/Resources/Prototypes/Recipes/Lathes/robotics.yml @@ -367,15 +367,7 @@ Glass: 250 Plastic: 250 -- type: latheRecipe - id: BorgModuleFireExtinguisher - result: BorgModuleFireExtinguisher - category: Robotics - completetime: 3 - materials: - Steel: 250 - Glass: 250 - Plastic: 250 +# WD edit - removed BorgModuleFireExtinguisher - type: latheRecipe id: BorgModuleGPS @@ -450,18 +442,19 @@ Gold: 50 - type: latheRecipe - id: BorgModuleConstruction - result: BorgModuleConstruction + id: BorgModuleAtmospherics + result: BorgModuleAtmospherics category: Robotics completetime: 3 materials: Steel: 500 Glass: 500 Plastic: 250 + Gold: 50 - type: latheRecipe - id: BorgModuleRCD - result: BorgModuleRCD + id: BorgModuleConstruction + result: BorgModuleConstruction category: Robotics completetime: 3 materials: @@ -501,15 +494,7 @@ Plastic: 250 Gold: 50 -- type: latheRecipe - id: BorgModuleDiagnosis - result: BorgModuleDiagnosis - category: Robotics - completetime: 3 - materials: - Steel: 250 - Glass: 250 - Plastic: 250 +# WD edit - removed BorgModuleDiagnosis - type: latheRecipe id: BorgModuleTreatment @@ -543,6 +528,16 @@ Plastic: 250 Gold: 50 +- type: latheRecipe + id: BorgModuleResque + result: BorgModuleResque + category: Robotics + completetime: 3 + materials: + Steel: 250 + Glass: 250 + Plastic: 250 + - type: latheRecipe id: BorgModuleArtifact result: BorgModuleArtifact diff --git a/Resources/Prototypes/Research/civilianservices.yml b/Resources/Prototypes/Research/civilianservices.yml index c4c39e9eda..a60e106409 100644 --- a/Resources/Prototypes/Research/civilianservices.yml +++ b/Resources/Prototypes/Research/civilianservices.yml @@ -140,9 +140,10 @@ state: scanner discipline: CivilianServices tier: 2 - cost: 10000 + cost: 5000 recipeUnlocks: - HandheldCrewMonitor + - BorgModuleResque - type: technology id: MechanizedTreatment @@ -152,7 +153,7 @@ state: medical discipline: CivilianServices tier: 2 - cost: 5000 + cost: 10000 recipeUnlocks: - BorgModuleAdvancedTreatment - BorgModuleDefibrillator diff --git a/Resources/Prototypes/Research/industrial.yml b/Resources/Prototypes/Research/industrial.yml index f4acd916c0..d0c8468af2 100644 --- a/Resources/Prototypes/Research/industrial.yml +++ b/Resources/Prototypes/Research/industrial.yml @@ -164,6 +164,7 @@ - HellfireFreezerMachineCircuitBoard - PortableScrubberMachineCircuitBoard - HolofanProjector + - BorgModuleAtmospherics # WD - type: technology id: AdvancedToolsTechnology @@ -179,7 +180,7 @@ - PowerDrill - JawsOfLife - BorgModuleAdvancedTool - - BorgModuleRCD + - BorgModuleConstruction # WD # Tier 3 diff --git a/Resources/migration.yml b/Resources/migration.yml index 84be52a2e6..1a56553099 100644 --- a/Resources/migration.yml +++ b/Resources/migration.yml @@ -272,3 +272,8 @@ BoxTrashbag: TrashBag # 2024-08-05 WD OmntnsHammer: JudgeHammer + +# 2024-08-07 WD +BorgModuleDiagnosis: null +BorgModuleRCD: BorgModuleConstruction +BorgModuleFireExtinguisher: null