Merge remote-tracking branch 'upstream/master' into ed-03-10-2024-upstream

# Conflicts:
#	Resources/Prototypes/Entities/Mobs/Customization/Markings/human_hair.yml
This commit is contained in:
Ed
2024-10-03 17:34:08 +03:00
284 changed files with 3117 additions and 1387 deletions

View File

@@ -219,6 +219,7 @@
- id: MedicalTechFabCircuitboard
- id: MedkitFilled
- id: RubberStampCMO
- id: MedTekCartridge
# Hardsuit table, used for suit storage as well
- type: entityTable

View File

@@ -773,7 +773,7 @@
id: UplinkBinaryTranslatorKey
name: uplink-binary-translator-key-name
description: uplink-binary-translator-key-desc
icon: { sprite: /Textures/Objects/Devices/encryption_keys.rsi, state: borg_label }
icon: { sprite: /Textures/Objects/Devices/encryption_keys.rsi, state: ai_label }
productEntity: EncryptionKeyBinarySyndicate
cost:
Telecrystal: 1
@@ -1085,6 +1085,16 @@
categories:
- UplinkDisruption
- type: listing
id: UplinkCameraBug
name: uplink-cameraBug-name
description: uplink-cameraBug-desc
productEntity: CameraBug
cost:
Telecrystal: 4
categories:
- UplinkDisruption
# Allies
- type: listing
@@ -1805,6 +1815,17 @@
categories:
- UplinkPointless
- type: listing
id: UplinkSyndicateBusinessCard
name: uplink-business-card-name
description: uplink-business-card-desc
productEntity: SyndicateBusinessCard
categories:
- UplinkPointless
conditions:
- !type:ListingLimitedStockCondition
stock: 3
# Job Specific
- type: listing

View File

@@ -249,6 +249,7 @@
- type: Tag
tags:
- WhitelistChameleon
- FireHelmet
- type: HideLayerClothing
slots:
- Hair
@@ -281,6 +282,7 @@
- type: Tag
tags:
- WhitelistChameleon
- FireHelmet
- type: HideLayerClothing
slots:
- Hair

View File

@@ -35,6 +35,8 @@
- Snout
- type: UserInterface
interfaces:
enum.ChameleonUiKey.Key:
type: ChameleonBoundUserInterface
enum.VoiceMaskUIKey.Key:
type: VoiceMaskBoundUserInterface

View File

@@ -78,3 +78,19 @@
event: !type:StethoscopeActionEvent
checkCanInteract: false
priority: -1
- type: entity
parent: ClothingNeckBase
id: Dinkystar
name: star sticker
description: A dinky lil star for only the hardest working security officers! It's not even sticky anymore.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/dinkystar.rsi
state: icon
- type: Item
size: Tiny
- type: Tag
tags:
- Trash
- WhitelistChameleon

View File

@@ -7,6 +7,10 @@
components:
- type: Item
size: Tiny
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
- type: entity
parent: ClothingNeckPinBase
@@ -15,14 +19,9 @@
description: Be gay do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: lgbt
state: lgbt
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: lgbt-equipped
equippedPrefix: lgbt
- type: entity
parent: ClothingNeckPinBase
@@ -31,14 +30,9 @@
description: Be aro do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: aro
state: aro
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: aro-equipped
equippedPrefix: aro
- type: entity
parent: ClothingNeckPinBase
@@ -47,14 +41,9 @@
description: Be ace do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: asex
state: asex
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: asex-equipped
equippedPrefix: asex
- type: entity
parent: ClothingNeckPinBase
@@ -63,14 +52,20 @@
description: Be bi do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: bi
state: bi
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: bi-equipped
equippedPrefix: bi
- type: entity
parent: ClothingNeckPinBase
id: ClothingNeckGayPin
name: gay pin
description: Be gay~ do crime.
components:
- type: Sprite
state: gay
- type: Clothing
equippedPrefix: gay
- type: entity
parent: ClothingNeckPinBase
@@ -79,14 +74,9 @@
description: Be intersex do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: inter
state: inter
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: inter-equipped
equippedPrefix: inter
- type: entity
parent: ClothingNeckPinBase
@@ -95,14 +85,9 @@
description: Be lesbian do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: les
state: les
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: les-equipped
equippedPrefix: les
- type: entity
parent: ClothingNeckPinBase
@@ -111,14 +96,9 @@
description: "01100010 01100101 00100000 01100101 01101110 01100010 01111001 00100000 01100100 01101111 00100000 01100011 01110010 01101001 01101101 01100101"
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: non
state: non
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: non-equipped
equippedPrefix: non
- type: entity
parent: ClothingNeckPinBase
@@ -127,14 +107,9 @@
description: Be pan do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: pan
state: pan
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: pan-equipped
equippedPrefix: pan
- type: entity
parent: ClothingNeckPinBase
@@ -143,14 +118,9 @@
description: Be trans do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/pins.rsi
layers:
- state: trans
state: trans
- type: Clothing
sprite: Clothing/Neck/Misc/pins.rsi
clothingVisuals:
neck:
- state: trans-equipped
equippedPrefix: trans
- type: entity
parent: ClothingNeckPinBase
@@ -159,14 +129,9 @@
description: Be autism do crime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/autismpin.rsi
layers:
- state: autism
state: autism
- type: Clothing
sprite: Clothing/Neck/Misc/autismpin.rsi
clothingVisuals:
neck:
- state: autism-equipped
equippedPrefix: autism
- type: entity
parent: ClothingNeckPinBase
@@ -175,11 +140,6 @@
description: Be autism do warcrime.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/goldautismpin.rsi
layers:
- state: goldautism
state: goldautism
- type: Clothing
sprite: Clothing/Neck/Misc/goldautismpin.rsi
clothingVisuals:
neck:
- state: goldautism-equipped
equippedPrefix: goldautism

View File

@@ -90,7 +90,7 @@
damageCoefficient: 0.9
- type: entity
parent: [ClothingOuterArmorHoS, ClothingOuterStorageBase]
parent: [ClothingOuterArmorHoS, ClothingOuterStorageBase, BaseSecurityCommandContraband]
id: ClothingOuterCoatHoSTrench
name: head of security's armored trenchcoat
description: A greatcoat enhanced with a special alloy for some extra protection and style for those with a commanding presence.
@@ -376,7 +376,7 @@
sprite: Clothing/OuterClothing/Coats/windbreaker_paramedic.rsi
- type: entity
parent: ClothingOuterStorageBase
parent: [ClothingOuterStorageBase, BaseSyndicateContraband]
id: ClothingOuterCoatSyndieCap
name: syndicate's coat
description: The syndicate's coat is made of durable fabric, with gilded patterns.
@@ -387,7 +387,7 @@
sprite: Clothing/OuterClothing/Coats/syndicate/coatsyndiecap.rsi
- type: entity
parent: ClothingOuterCoatHoSTrench
parent: [BaseSyndicateContraband, ClothingOuterCoatHoSTrench] # BaseSyndicateContraband as first parent so contraband system takes that as priority, yeah I know
id: ClothingOuterCoatSyndieCapArmored
name: syndicate's armored coat
description: The syndicate's armored coat is made of durable fabric, with gilded patterns.

View File

@@ -359,7 +359,7 @@
##########################################################
- type: entity
parent: [ClothingOuterArmorHoS, ClothingOuterWinterCoatToggleable, BaseCommandContraband]
parent: [ClothingOuterArmorHoS, ClothingOuterWinterCoatToggleable, BaseSecurityCommandContraband]
id: ClothingOuterWinterHoS
name: head of security's armored winter coat
description: A sturdy, utilitarian winter coat designed to protect a head of security from any brig-bound threats and hypothermic events.
@@ -373,7 +373,7 @@
##########################################################
- type: entity
parent: [ClothingOuterWinterCoatToggleable, BaseCommandContraband]
parent: [ClothingOuterWinterCoatToggleable, BaseSecurityCommandContraband]
id: ClothingOuterWinterHoSUnarmored
name: head of security's winter coat
description: A sturdy coat, a warm coat, but not an armored coat.

View File

@@ -144,6 +144,7 @@
- id: ClothingNeckAromanticPin
- id: ClothingNeckAsexualPin
- id: ClothingNeckBisexualPin
- id: ClothingNeckGayPin
- id: ClothingNeckIntersexPin
- id: ClothingNeckLesbianPin
- id: ClothingNeckNonBinaryPin

View File

@@ -85,6 +85,7 @@
- type: Hands
showInHands: false
disableExplosionRecursion: true
canBeStripped: false
- type: ComplexInteraction
- type: IntrinsicRadioReceiver
- type: IntrinsicRadioTransmitter
@@ -121,6 +122,7 @@
cellSlotId: cell_slot
fitsInCharger: true
- type: ItemToggle
onActivate: false # You should not be able to turn off a borg temporarily.
activated: false # gets activated when a mind is added
onUse: false # no item-borg toggling sorry
- type: ItemTogglePointLight

View File

@@ -108,6 +108,53 @@
- type: NoSlip
- type: Insulated
- type: entity
parent: MobSiliconBase
id: MobFireBot
name: firebot
description: A little fire extinguishing bot. He looks rather anxious.
components:
- type: Sprite
sprite: Mobs/Silicon/Bots/firebot.rsi
state: firebot
- type: Construction
graph: FireBot
node: bot
- type: SentienceTarget
flavorKind: station-event-random-sentience-flavor-mechanical
- type: HTN
rootTask:
task: FirebotCompound
- type: SolutionContainerManager
solutions:
spray:
maxVol: 10
reagents:
- ReagentId: Water
Quantity: 10
- type: SolutionRegeneration
solution: spray
generated:
reagents:
- ReagentId: Water
Quantity: 10
- type: Spray
transferAmount: 10
pushbackAmount: 60
spraySound:
path: /Audio/Effects/extinguish.ogg
sprayedPrototype: ExtinguisherSpray
vaporAmount: 1
vaporSpread: 90
sprayVelocity: 3.0
- type: UseDelay
delay: 4
- type: InteractionPopup
interactSuccessString: petting-success-firebot
interactFailureString: petting-failure-firebot
interactSuccessSound:
path: /Audio/Ambience/Objects/periodic_beep.ogg
- type: entity
parent: MobSiliconBase
id: MobHonkBot
@@ -211,8 +258,6 @@
- type: Construction
graph: CleanBot
node: bot
- type: SentienceTarget
flavorKind: station-event-random-sentience-flavor-mechanical
- type: Absorbent
pickupAmount: 10
- type: UseDelay
@@ -284,8 +329,6 @@
- type: Construction
graph: MediBot
node: bot
- type: SentienceTarget
flavorKind: station-event-random-sentience-flavor-mechanical
- type: Anchorable
- type: InteractionPopup
interactSuccessString: petting-success-medibot

View File

@@ -0,0 +1,25 @@
- type: entity
id: CameraBug
parent: [ BaseItem, BaseSyndicateContraband ]
name: camera bug
description: An illegal syndicate device that allows you to hack into the station's camera network.
components:
- type: Sprite
sprite: Objects/Devices/camera_bug.rsi
layers:
- state: camera_bug
- type: Item
- type: ActivatableUI
requireActiveHand: false
inHandsOnly: true
key: enum.SurveillanceCameraMonitorUiKey.Key
- type: UserInterface
interfaces:
enum.SurveillanceCameraMonitorUiKey.Key:
type: SurveillanceCameraMonitorBoundUserInterface
- type: DeviceNetwork
deviceNetId: Wired
receiveFrequencyId: SurveillanceCamera
transmitFrequencyId: SurveillanceCamera
- type: WiredNetworkConnection
- type: SurveillanceCameraMonitor

View File

@@ -117,6 +117,25 @@
- type: StealTarget
stealGroup: WantedListCartridge
- type: entity
parent: BaseItem
id: MedTekCartridge
name: MedTek cartridge
description: A program that provides medical diagnostic tools.
components:
- type: Sprite
sprite: Objects/Devices/cartridge.rsi
state: cart-med
- type: Icon
sprite: Objects/Devices/cartridge.rsi
state: cart-med
- type: Cartridge
programName: med-tek-program-name
icon:
sprite: Objects/Specific/Medical/healthanalyzer.rsi
state: icon
- type: MedTekCartridge
- type: entity
parent: BaseItem
id: AstroNavCartridge

View File

@@ -227,7 +227,7 @@
- type: Sprite
layers:
- state: crypt_silver
- state: borg_label
- state: ai_label
- type: entity
parent: [ EncryptionKey, BaseSyndicateContraband ]
@@ -242,7 +242,7 @@
- type: Sprite
layers:
- state: crypt_red
- state: borg_label
- state: ai_label
- type: entity
parent: EncryptionKey

View File

@@ -131,12 +131,13 @@
id: BaseMedicalPDA
abstract: true
components:
- type: ItemToggle
onUse: false
- type: HealthAnalyzer
scanDelay: 1
scanningEndSound:
path: "/Audio/Items/Medical/healthscanner.ogg"
- type: CartridgeLoader
uiKey: enum.PdaUiKey.Key
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
- NewsReaderCartridge
- MedTekCartridge
- type: entity
parent: BasePDA
@@ -169,7 +170,7 @@
parent: BaseMedicalPDA
id: MedicalInternPDA
name: medical intern PDA
description: Why isn't it white? Has a built-in health analyzer.
description: Why isn't it white?
components:
- type: Pda
id: MedicalInternIDCard
@@ -569,7 +570,7 @@
parent: BaseMedicalPDA
id: CMOPDA
name: chief medical officer PDA
description: Extraordinarily shiny and sterile. Has a built-in health analyzer.
description: Extraordinarily shiny and sterile.
components:
- type: Pda
id: CMOIDCard
@@ -585,7 +586,7 @@
parent: BaseMedicalPDA
id: MedicalPDA
name: medical PDA
description: Shiny and sterile. Has a built-in health analyzer.
description: Shiny and sterile.
components:
- type: Pda
id: MedicalIDCard
@@ -612,7 +613,7 @@
parent: BaseMedicalPDA
id: ParamedicPDA
name: paramedic PDA
description: Shiny and sterile. Has a built-in rapid health analyzer.
description: Shiny and sterile.
components:
- type: Pda
id: ParamedicIDCard
@@ -905,14 +906,18 @@
id: ERTMedicPDA
name: ERT Medic PDA
suffix: Medic
description: Red for firepower, it's shiny and sterile. Has a built-in rapid health analyzer.
description: Red for firepower, it's shiny and sterile.
components:
- type: Pda
id: ERTMedicIDCard
- type: HealthAnalyzer
scanDelay: 1
scanningEndSound:
path: "/Audio/Items/Medical/healthscanner.ogg"
- type: CartridgeLoader
uiKey: enum.PdaUiKey.Key
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
- NewsReaderCartridge
- MedTekCartridge
- WantedListCartridge
- type: entity
parent: ERTLeaderPDA
@@ -1019,7 +1024,7 @@
parent: BaseMedicalPDA
id: BrigmedicPDA
name: brigmedic PDA
description: I wonder whose pulse is on the screen? I hope he doesnt stop... PDA has a built-in health analyzer.
description: I wonder whose pulse is on the screen? I hope it doesn't stop...
components:
- type: Pda
id: BrigmedicIDCard
@@ -1089,7 +1094,7 @@
parent: BaseMedicalPDA
id: SeniorPhysicianPDA
name: senior physician PDA
description: Smells faintly like iron and chemicals. Has a built-in health analyzer.
description: Smells faintly like iron and chemicals.
components:
- type: Pda
id: SeniorPhysicianIDCard
@@ -1145,6 +1150,7 @@
uiKey: enum.PdaUiKey.Key
preinstalled:
- NotekeeperCartridge
- MedTekCartridge
cartridgeSlot:
priority: -1
name: Cartridge

View File

@@ -17,8 +17,6 @@
- type: Tag
tags:
- Figurine
- type: StealTarget
stealGroup: Figurines
- type: UseDelay
delay: 10
- type: Speech

View File

@@ -0,0 +1,26 @@
- type: entity
id: SyndicateBusinessCard
name: syndicate business card
parent: Paper
description: A black card with the syndicate's logo. There's something written on the back.
components:
- type: Sprite
sprite: Objects/Misc/bureaucracy.rsi
layers:
- state: syndicate_card
- state: syndicate_card
map: ["enum.PaperVisualLayers.Writing"]
visible: false
- state: paper_stamp-generic
map: ["enum.PaperVisualLayers.Stamp"]
visible: false
- type: Paper
content: syndicate-business-card-base
- type: PaperVisuals
headerImagePath: "/Textures/Interface/Paper/paper_heading_syndicate_logo.svg.96dpi.png"
headerMargin: 0.0, 0.0, 0.0, 2.0
backgroundImagePath: "/Textures/Interface/Paper/paper_background_black.svg.96dpi.png"
backgroundPatchMargin: 16.0, 16.0, 16.0, 16.0
contentMargin: 4.0, 4.0, 4.0, 4.0
maxWritableArea: 400.0, 256.0

View File

@@ -1,19 +0,0 @@
- type: entity
parent: ClothingNeckBase
id: Dinkystar
name: star sticker
description: A dinky lil star for only the hardest working security officers! It's not even sticky anymore.
components:
- type: Sprite
sprite: Clothing/Neck/Misc/dinkystar.rsi
state: icon
- type: Clothing
sprite: Clothing/Neck/Misc/dinkystar.rsi
clothingVisuals:
neck:
- state: star-equipped
- type: Item
size: Tiny
- type: Tag
tags:
- Trash

View File

@@ -62,6 +62,9 @@
- Rolling
speedModifier: 0.5 # its very big, awkward to use
- type: Appearance
- type: Tag
tags:
- FireExtinguisher
- type: GenericVisualizer
visuals:
enum.ToggleVisuals.Toggled:

View File

@@ -1286,6 +1286,22 @@
- type: Stack
stackType: FloorTileBCircuit
- type: entity
name: red circuit floor
parent: FloorTileItemBase
id: FloorTileItemRCircuit
components:
- type: Sprite
state: rcircuit
- type: Item
heldPrefix: rcircuit
- type: FloorTile
outputs:
- Plating
- FloorRedCircuit
- type: Stack
stackType: FloorTileRCircuit
# Circuits stacks
- type: entity
@@ -1304,6 +1320,14 @@
- type: Stack
count: 4
- type: entity
parent: FloorTileItemRCircuit
id: FloorTileItemRCircuit4
suffix: 4
components:
- type: Stack
count: 4
# Terrain
- type: entity
name: grass tile

View File

@@ -237,9 +237,10 @@
- state: icon-tools-adv
- type: ItemBorgModule
items:
- Omnitool
- JawsOfLife
- PowerDrill
- Multitool
- WelderExperimental
- NetworkConfigurator
- RemoteSignaller
- GasAnalyzer
- GeigerCounter

View File

@@ -380,7 +380,7 @@
- type: entity
name: x-ray cannon
parent: [BaseWeaponBattery, BaseGunWieldable]
parent: [BaseWeaponBattery, BaseGunWieldable, BaseSecurityContraband]
id: WeaponXrayCannon
description: An experimental weapon that uses concentrated x-ray energy against its target.
components:
@@ -720,7 +720,7 @@
- type: entity
name: energy shotgun
parent: [BaseWeaponBattery, BaseGunWieldable]
parent: [BaseWeaponBattery, BaseGunWieldable, BaseGrandTheftContraband]
id: WeaponEnergyShotgun
description: A one-of-a-kind prototype energy weapon that uses various shotgun configurations. It offers the possibility of both lethal and non-lethal shots, making it a versatile weapon.
components:

View File

@@ -116,7 +116,7 @@
cluster-payload: !type:Container
- type: entity
parent: [GrenadeBase, BaseSyndicateContraband]
parent: [GrenadeBase, BaseSecurityContraband]
id: GrenadeStinger
name: stinger grenade
description: Nothing to see here, please disperse.

View File

@@ -65,7 +65,7 @@
board: [ DoorElectronicsBar ]
- type: entity
parent: AirlockServiceLocked
parent: AirlockHydroponics
id: AirlockHydroponicsLocked
suffix: Hydroponics, Locked
components:
@@ -531,7 +531,7 @@
board: [ DoorElectronicsJanitor ]
- type: entity
parent: AirlockServiceGlassLocked
parent: AirlockHydroponicsGlass
id: AirlockHydroGlassLocked
suffix: Hydroponics, Locked
components:

View File

@@ -40,6 +40,16 @@
- type: Wires
layoutId: AirlockCargo
- type: entity
parent: Airlock
id: AirlockHydroponics
suffix: Hydroponics
components:
- type: Sprite
sprite: Structures/Doors/Airlocks/Standard/hydroponics.rsi
- type: Wires
layoutId: AirlockService
- type: entity
parent: Airlock
id: AirlockMedical
@@ -197,6 +207,16 @@
- type: Wires
layoutId: AirlockCargo
- type: entity
parent: AirlockGlass
id: AirlockHydroponicsGlass
suffix: Hydroponics
components:
- type: Sprite
sprite: Structures/Doors/Airlocks/Glass/hydroponics.rsi
- type: Wires
layoutId: AirlockService
- type: entity
parent: AirlockGlass
id: AirlockMedicalGlass

View File

@@ -138,6 +138,25 @@
sprite: Structures/Doors/Airlocks/Standard/freezer.rsi
state: "assembly"
#Hydroponics
- type: entity
parent: AirlockAssembly
id: AirlockAssemblyHydroponics
suffix: Hydroponics
components:
- type: Sprite
sprite: Structures/Doors/Airlocks/Standard/hydroponics.rsi
state: "assembly"
- type: entity
parent: AirlockAssembly
id: AirlockAssemblyHydroponicsGlass
suffix: Hydroponics, Glass
components:
- type: Sprite
sprite: Structures/Doors/Airlocks/Glass/hydroponics.rsi
state: "assembly"
#Maintenance
- type: entity
parent: AirlockAssembly

View File

@@ -9,6 +9,7 @@
command: Structures/Doors/Airlocks/Standard/command.rsi
engineering: Structures/Doors/Airlocks/Standard/engineering.rsi
freezer: Structures/Doors/Airlocks/Standard/freezer.rsi
hydroponics: Structures/Doors/Airlocks/Standard/hydroponics.rsi
maintenance: Structures/Doors/Airlocks/Standard/maint.rsi
medical: Structures/Doors/Airlocks/Standard/medical.rsi
science: Structures/Doors/Airlocks/Standard/science.rsi
@@ -27,6 +28,7 @@
science: Structures/Doors/Airlocks/Glass/science.rsi
engineering: Structures/Doors/Airlocks/Glass/engineering.rsi
glass: Structures/Doors/Airlocks/Glass/glass.rsi
hydroponics: Structures/Doors/Airlocks/Glass/hydroponics.rsi
maintenance: Structures/Doors/Airlocks/Glass/maint.rsi
medical: Structures/Doors/Airlocks/Glass/medical.rsi
security: Structures/Doors/Airlocks/Glass/security.rsi
@@ -74,6 +76,7 @@
engineering: Engineering
freezer: Civilian
glass: Civilian
hydroponics: Civilian
maintenance: Civilian
medical: Medical
science: Science

View File

@@ -442,6 +442,7 @@
- UniformPrinterMachineCircuitboard
- FloorGreenCircuit
- FloorBlueCircuit
- FloorRedCircuit
- MicrowaveMachineCircuitboard
- ReagentGrinderMachineCircuitboard
- ElectricGrillMachineCircuitboard

View File

@@ -104,6 +104,7 @@
collection: MetalGlassBreak
params:
volume: -4
- type: StationAiWhitelist
placement:
mode: SnapgridCenter
snap:

View File

@@ -20,6 +20,7 @@
- id: UnknownShuttleMeatZone
- id: UnknownShuttleMicroshuttle
- id: UnknownShuttleSpacebus
- id: UnknownShuttleInstigator
- type: entityTable
id: UnknownShuttlesFreelanceTable

View File

@@ -1,9 +1,11 @@
- type: RandomPlantMutationList
id: RandomPlantMutations
mutations:
- name: Bioluminescent
baseOdds: 0.036
effect: !type:Glow
mutations:
# disabled until 50 morbillion point lights don't cause the renderer to die
#- name: Bioluminescent
# baseOdds: 0.036
# appliesToPlant: false
# effect: !type:Glow
- name: Sentient
baseOdds: 0.0072
appliesToProduce: false
@@ -11,6 +13,7 @@
effect: !type:MakeSentient # existing effect.
- name: Slippery
baseOdds: 0.036
appliesToPlant: false
effect: !type:Slipify
- name: ChangeSpecies
baseOdds: 0.036
@@ -176,4 +179,4 @@
- name: ChangeHarvest
baseOdds: 0.036
persists: false
effect: !type:PlantMutateHarvest
effect: !type:PlantMutateHarvest

View File

@@ -46,3 +46,8 @@
id: DetectiveCoat
equipment:
outerClothing: ClothingOuterCoatDetectiveLoadout
- type: loadout
id: DetectiveCoatGrey
equipment:
outerClothing: ClothingOuterCoatDetectiveLoadoutGrey

View File

@@ -95,6 +95,12 @@
back:
- ClothingNeckBisexualPin
- type: loadout
id: ClothingNeckGayPin
storage:
back:
- ClothingNeckGayPin
- type: loadout
id: ClothingNeckIntersexPin
storage:

View File

@@ -18,6 +18,7 @@
- ClothingNeckAromanticPin
- ClothingNeckAsexualPin
- ClothingNeckBisexualPin
- ClothingNeckGayPin
- ClothingNeckIntersexPin
- ClothingNeckLesbianPin
- ClothingNeckNonBinaryPin
@@ -1054,6 +1055,7 @@
loadouts:
- DetectiveArmorVest
- DetectiveCoat
- DetectiveCoatGrey
- type: loadoutGroup
id: SecurityCadetJumpsuit

View File

@@ -0,0 +1,44 @@
- type: htnCompound
id: FirebotCompound
branches:
- tasks:
- !type:HTNCompoundTask
task: DouseFireTargetCompound
- tasks:
- !type:HTNCompoundTask
task: IdleCompound
- type: htnCompound
id: DouseFireTargetCompound
branches:
- tasks:
- !type:HTNPrimitiveTask
operator: !type:UtilityOperator
proto: NearbyOnFire
- !type:HTNPrimitiveTask
operator: !type:SpeakOperator
speech: firebot-fire-detected
hidden: true
- !type:HTNPrimitiveTask
operator: !type:MoveToOperator
pathfindInPlanning: true
removeKeyOnFinish: false
targetKey: TargetCoordinates
pathfindKey: TargetPathfind
rangeKey: InteractRange
- !type:HTNPrimitiveTask
preconditions:
- !type:TargetInRangePrecondition
targetKey: Target
rangeKey: InteractRange
operator: !type:InteractWithOperator
targetKey: Target
services:
- !type:UtilityService
id: FireService
proto: NearbyOnFire
key: Target

View File

@@ -144,6 +144,27 @@
- !type:TargetAccessibleCon
curve: !type:BoolCurve
- type: utilityQuery
id: NearbyOnFire
query:
- !type:ComponentQuery
components:
- type: Flammable
# why does Flammable even have a required damage
damage:
types:
burn: 0
considerations:
- !type:TargetDistanceCon
curve: !type:PresetCurve
preset: TargetDistance
- !type:TargetAccessibleCon
curve: !type:BoolCurve
- !type:TargetInLOSOrCurrentCon
curve: !type:BoolCurve
- !type:TargetOnFireCon
curve: !type:BoolCurve
- type: utilityQuery
id: NearbyPuddles
query:

View File

@@ -63,7 +63,6 @@
StampStealCollectionObjective: 1
DoorRemoteStealCollectionObjective: 1
TechnologyDiskStealCollectionObjective: 1 #rnd
FigurineStealCollectionObjective: 0.3 #service
IDCardsStealCollectionObjective: 1
LAMPStealCollectionObjective: 2 #only for moth

View File

@@ -86,13 +86,6 @@
# Thief Collection
- type: stealTargetGroup
id: Figurines
name: steal-target-groups-figurines
sprite:
sprite: Objects/Fun/figurines.rsi
state: figurine_spawner
- type: stealTargetGroup
id: HeadCloak
name: steal-target-groups-heads-cloaks

View File

@@ -53,17 +53,6 @@
# Collections
- type: entity
parent: BaseThiefStealCollectionObjective
id: FigurineStealCollectionObjective
components:
- type: StealCondition
stealGroup: Figurines
minCollectionSize: 10
maxCollectionSize: 18 #will be limited to the number of figures on the station anyway.
- type: Objective
difficulty: 0.25
- type: entity
parent: BaseThiefStealCollectionObjective
id: HeadCloakStealCollectionObjective
@@ -129,7 +118,7 @@
- type: StealCondition
stealGroup: IDCard
minCollectionSize: 5
maxCollectionSize: 15
maxCollectionSize: 10
verifyMapExistence: false
- type: Objective
difficulty: 0.7

View File

@@ -0,0 +1,33 @@
- type: constructionGraph
id: FireBot
start: start
graph:
- node: start
edges:
- to: bot
steps:
- tag: FireExtinguisher
icon:
sprite: Objects/Misc/fire_extinguisher.rsi
state: fire_extinguisher_open
name: fire extinguisher
- tag: FireHelmet
icon:
sprite: Clothing/Head/Helmets/firehelmet.rsi
state: icon
name: fire helmet
doAfter: 2
- tag: ProximitySensor
icon:
sprite: Objects/Misc/proximity_sensor.rsi
state: icon
name: proximity sensor
doAfter: 2
- tag: BorgArm
icon:
sprite: Mobs/Silicon/drone.rsi
state: l_hand
name: borg arm
doAfter: 2
- node: bot
entity: MobFireBot

View File

@@ -11,6 +11,19 @@
sprite: Mobs/Silicon/Bots/cleanbot.rsi
state: cleanbot
- type: construction
name: firebot
id: firebot
graph: FireBot
startNode: start
targetNode: bot
category: construction-category-utilities
objectType: Item
description: This bot puts out fires wherever it goes.
icon:
sprite: Mobs/Silicon/Bots/firebot.rsi
state: firebot
- type: construction
name: honkbot
id: honkbot

View File

@@ -3,7 +3,7 @@
result: ConveyorBeltAssembly
completetime: 4
materials:
Steel: 500
Steel: 250
Plastic: 50
- type: latheRecipe

View File

@@ -199,6 +199,13 @@
materials:
Steel: 100
- type: latheRecipe
id: FloorRedCircuit
result: FloorTileItemRCircuit4
completetime: 2
materials:
Steel: 100
- type: latheRecipe
id: HandheldStationMap
result: HandheldStationMapEmpty

View File

@@ -538,6 +538,12 @@
spawn: FloorTileItemBCircuit
maxCount: 30
- type: stack
id: FloorTileRCircuit
name: red-circuit floor
spawn: FloorTileItemRCircuit
maxCount: 30
- type: stack
id: FloorTileGrass
name: grass floor tile

View File

@@ -1422,6 +1422,18 @@
itemDrop: FloorTileItemBCircuit
heatCapacity: 10000
- type: tile
id: FloorRedCircuit
name: tiles-red-circuit-floor
sprite: /Textures/Tiles/red_circuit.png
baseTurf: Plating
isSubfloor: false
deconstructTools: [ Prying ]
footstepSounds:
collection: FootstepHull
itemDrop: FloorTileItemRCircuit
heatCapacity: 10000
# Terrain
- type: tile
id: FloorAsphalt

View File

@@ -90,6 +90,7 @@
- type: wireLayout
id: FireAlarm
wires:
- !type:AiInteractWireAction
- !type:PowerWireAction
- !type:AtmosMonitorDeviceNetWire
alarmOnPulse: true

View File

@@ -617,6 +617,12 @@
- type: Tag
id: FirelockElectronics
- type: Tag
id: FireExtinguisher
- type: Tag
id: FireHelmet
- type: Tag
id: Flare