Merge branch 'master' into MagicWands

This commit is contained in:
comasqw
2024-12-12 00:59:47 +04:00
393 changed files with 220202 additions and 9814 deletions

View File

@@ -0,0 +1,3 @@
- type: accessLevel
id: Wizard
name: id-card-access-level-wizard

View File

@@ -63,7 +63,7 @@
icon:
sprite: Objects/Tanks/red.rsi
state: icon
product: CrateSlimepersonLifeSupport
product: CrateNitrogenInternals
cost: 350
category: cargoproduct-category-name-emergency
group: market

View File

@@ -18,6 +18,16 @@
category: cargoproduct-category-name-service
group: market
- type: cargoProduct
id: ServiceLightsHoliday
icon:
sprite: Objects/Power/light_bulb.rsi
state: normal
product: CrateServiceHolidayLights
cost: 800
category: cargoproduct-category-name-service
group: market
- type: cargoProduct
id: MousetrapBoxes
icon:
@@ -207,3 +217,5 @@
cost: 500
category: cargoproduct-category-name-service
group: market

View File

@@ -154,7 +154,7 @@
sprite: Objects/Specific/Service/vending_machine_restock.rsi
state: base
product: CrateVendingMachineRestockSalvageEquipmentFilled
cost: 1000
cost: 1500
category: cargoproduct-category-name-engineering
group: market

View File

@@ -31,7 +31,10 @@
- id: Flare
- id: FoodSnackNutribrick
- id: DrinkWaterBottleFull
# Intentionally wrong picture on the box. NT did not care enough to change it.
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen
@@ -68,7 +71,10 @@
- id: Flare
- id: FoodSnackNutribrick
- id: DrinkWaterBottleFull
# Intentionally wrong picture on the box. NT did not care enough to change it.
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen
@@ -106,7 +112,10 @@
- id: Flare
- id: FoodSnackNutribrick
- id: DrinkWaterBottleFull
# Intentionally wrong picture on the box. NT did not care enough to change it.
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen
@@ -144,7 +153,10 @@
- id: Flare
- id: FoodSnackNutribrick
- id: DrinkWaterBottleFull
# Intentionally wrong picture on the box. NT did not care enough to change it.
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen
@@ -216,6 +228,10 @@
- id: Flare
- id: FoodBreadBaguette
- id: DrinkWaterBottleFull
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen
@@ -250,6 +266,9 @@
- id: EmergencyMedipen
- id: Flare
- id: FoodSnackNutribrick
# Intentionally wrong picture on the box to mimic the NT one
- type: Sprite
layers:
- state: internals
- state: nitrogentank
- type: Label
currentLabel: reagent-name-nitrogen

View File

@@ -84,6 +84,26 @@
- id: LightBulb
amount: 6
- type: entity
name: holiday lighttube box
parent: BoxLightbulb
id: BoxLighttubeHoliday
components:
- type: StorageFill
contents:
- id: LightTubeCrystalRed # Its alternating on purpose for the light replacer.
- id: LightTubeCrystalGreen
- id: LightTubeCrystalRed
- id: LightTubeCrystalGreen
- id: LightTubeCrystalRed
- id: LightTubeCrystalGreen
- id: LightTubeCrystalRed
- id: LightTubeCrystalGreen
- id: LightTubeCrystalRed
- id: LightTubeCrystalGreen
- id: LightTubeCrystalRed
- id: LightTubeCrystalGreen
- type: entity
name: PDA box
parent: BoxCardboard

View File

@@ -73,10 +73,10 @@
amount: 6
- type: entity
id: CrateSlimepersonLifeSupport
id: CrateNitrogenInternals
parent: CrateInternals
name: slimeperson life support crate
description: Contains four breath masks and four large nitrogen tanks.
name: internals crate (nitrogen)
description: Contains four breath masks and four large nitrogen tanks. Intended for Slimepeople and Vox.
components:
- type: StorageFill
contents:

View File

@@ -32,6 +32,17 @@
- id: BoxLighttube
- id: BoxLightbulb
- type: entity
id: CrateServiceHolidayLights
parent: CrateGenericSteel
name: holiday lights crate
description: Deck the halls with these festive holiday lights!
components:
- type: StorageFill
contents:
- id: BoxLighttubeHoliday
- id: BoxLighttubeHoliday
- type: entity
id: CrateMousetrapBoxes
parent: CrateGenericSteel

View File

@@ -10,7 +10,6 @@
- id: ClothingBeltSecurityFilled
- id: Flash
- id: ClothingEyesGlassesSecurity
- id: ClothingHeadsetAltSecurity
- id: ClothingHandsGlovesCombat
- id: ClothingShoesBootsJack
- id: ClothingOuterCoatWarden
@@ -37,7 +36,6 @@
- id: ClothingBeltSecurityFilled
- id: Flash
- id: ClothingEyesGlassesSecurity
- id: ClothingHeadsetAltSecurity
- id: ClothingHandsGlovesCombat
- id: ClothingShoesBootsJack
- id: ClothingOuterCoatWarden

View File

@@ -3,10 +3,10 @@
startingInventory:
Crowbar: 2
Pickaxe: 4
OreBag: 2
OreBag: 4
Flare: 4
FlashlightLantern: 2
HandheldGPSBasic: 2
RadioHandheld: 2
WeaponGrapplingGun: 2
WeaponGrapplingGun: 4
WeaponProtoKineticAccelerator: 4

View File

@@ -118,6 +118,19 @@
- !type:ListingLimitedStockCondition
stock: 1
- type: listing
id: SpellbookWandLocker
name: spellbook-wand-locker-name
description: spellbook-wand-locker-description
productEntity: WeaponWandLocker
cost:
WizCoin: 3
categories:
- SpellbookEquipment
conditions:
- !type:ListingLimitedStockCondition
stock: 1
# Event
- type: listing
id: SpellbookEventSummonGhosts

View File

@@ -1,111 +1,5 @@
- type: dataset
id: names_ai
- type: localizedDataset
id: NamesAI
values:
- 16-20
- 512k
- 640k #ought to be enough for anybody
- "790"
- Adaptive Manipulator
- Adlib #named after the famous soundcard
- ALICE
- Allied Mastercomputer
- Alpha 2
- Alpha 3
- Alpha 4
- Alpha 5
- Alpha 6
- Alpha 7
- Alpha 8
- Alpha 9
- AmigoBot
- Android
- Aniel
- AOL
- Asimov
- Bell 301 #the most influential modem ever, created by the bell system. It still lives on today in certain applications
- Bishop
- Blitz
- Box
- Calculator
- Cassandra
- Cell
- Chii
- Chip
- C.R.A.I.G.
- Cray-2 #commercial supercomputer from the 70s
- CompuServe #if we're going to have AOL we may as well have some of their major competitors
- Computer
- Cutie
- Daedalus
- DecTalk
- Dee Model
- Dial Up
- Dorfl
- Duey
- Emma-2
- ENIAC #famous early computer
- Erasmus
- Everything
- Ez-27
- FRIEND COMPUTER
- Faith
- Fi
- Frost
- George
- H.E.L.P
- Hadaly
- Helios
- Hivebot Overmind
- Huey
- iAI #a play on the fad apple spawned of putting "i" infront of your tech products name
- I.E. 6 #hell on earth (web browser)
- Icarus
- Jeeves #if you don't get this one you are too young
- Jinx
- K.I.N.G
- Klapaucius
- Knight
- Louie
- Manchester Mark 2 #named after the Manchester Mark 1, the successor of which was actually named the Ferranti Mark 1, rather than Manchester Mark 2
- MARK13
- Maria
- Marvin
- Max 404
- Metalhead
- M.I.M.I
- MK ULTRA
- MoMMI
- Mugsy3000
- Multivac
- NCH
- NT v6.0 #A play on both NT as in NanoTrasen and NT as in windows NT, of which version 6.0 is windows vista
- Packard Bell
- PTO
- Project Y2K
- Revelation
- Robot Devil
- S.A.M.
- S.H.O.C.K.
- S.H.R.O.U.D.
- S.O.P.H.I.E.
- Samaritan
- Shrike
- Solo
- Station Control Program
- AINU (AI's Not Unix)
- Super 35
- Surgeon General
- TWA
- Terminus
- TPM 3.0
- Turing Complete
- Tidy
- Ulysses
- W1k1
- X-5
- X.A.N.A.
- XERXES
- Z-1
- Z-2
- Z-3
- Zed
prefix: names-ai-dataset-
count: 108

View File

@@ -3,7 +3,6 @@
values:
- Amblyocarenum
- Aname
- Aname
- Aptostichus
- Archoleptoneta
- Argyroneta

View File

@@ -7,11 +7,28 @@
- Ivy
- Stalk
- Petal
- Petals
- Thorn
- Thorns
- Vine
- Vines
- Branch
- Branches
- Weed
- Weeds
- Rose
- Dandelion
- Lilac
- Lily
- Birch
- Oak
- Spruce
- Willow
- Cyprus
- Mangrove
- Stump
- Sap
- Bayou
- Bay
- Lake
- River
@@ -21,12 +38,63 @@
- Mountain
- Peak
- Garden
- Ocean
- Arctic
- Sea
- Spring
- Swamp
- Stream
- Forest
- Rainforest
- Soil
- Valley
- Moor
- Steppe
- Orchard
- Orchid
- Glacier
- Desert
- Tundra
- Taiga
- Plain
- Plains
- Plateau
- Cliff
- Coast
- Shore
- Jungle
- Tropics
- Flower
- Grass
- Bark
- Autumn
- Summer
- Winter
- Fruit
- Leaves
- Overgrowth
- Atmosphere
- Climate
- Chill
- Winds
- Blossom
- Bloom
- Cap
- Saturation
- Permeation
- Light
- Taste
- Acorn
- Shell
- Ice
- Monsoon
- Overcast
- Storm
- type: dataset
id: DionaLast
values:
# Positive
- Peace
- Harmony
- Relaxation
@@ -47,4 +115,108 @@
- Ease
- Equilibrium
- Composure
- Control
- Control
- Bliss
- Enjoyment
- Optimism
- Ecstasy
- Cheer
- Delight
- Luxury
- Euphoria
- Excitement
- Satisfaction
- Cleanliness
- Expression
- Enrichment
- Enthusiam
- Brilliance
- Determination
- Integrity
- Justice
- Kindness
- Bravery
- Empathy
- Stoicism
- Competence
- Love
- Hope
- Honesty
- Generosity
- Oppritunity
- Motivation
# Neutral
- Urgency
- Vitality
- Hardiness
- Vigor
- Agility
- Dexterity
- Perception
- Wisdom
- Charisma
- Persistence
- Perseverance
- Density
- Strength
- Congestion
- Concentration
- Intensity
- Refinement
- Obscurity
- Fortitude
- Endurance
- Patience
- Passivity
- Indifference
- Sleepiness
- Neutrality
- Fairness
- Silliness
- Restraint
- Silence
- Bewilderment
- Tactility
- Invisibility
- Darkness
- Fragility
- Action
- Awakening
- Activity
- Audacity
- Vivacity
- Knowledge
- Modification
# Negative
# These should be something a diona would still realistically name themselves, i.e not inherintly self deprecating.
- Envy
- Ineptitude
- Ignorance
- Decay
- Lethargy
- Bitterness
- Acidity
- Illness
- Weakness
- Enervation
- Fatigue
- Noxiousness
- Convolution
- Confusion
- Agitation
- Despair
- Sorrow
- Pain
- Animosity
- Fury
- Disinterest
- Anger
- Rage
- Displeasure
- Irritation
- Resentment
- Soreness
- Frustration
- Insanity
- Chaos
- Fear

View File

@@ -42,6 +42,5 @@
- Todd
- Tony
- Willie
- Willie
- Wirry
- Yan

View File

@@ -47,7 +47,6 @@
- Todd
- Tony
- Willie
- Willie
- Wirry
- Dugnutt
- Dustice

View File

@@ -173,7 +173,6 @@
- Garrison
- Gettemy
- Gibson
- Gibson
- Graham
- Gray
- Green

View File

@@ -1,7 +1,6 @@
- type: dataset
id: names_vox
values:
- Bakabepa
- Babapir
- Babasri
- Babepipit

View File

@@ -29,6 +29,8 @@
Quantity: 30
absorbed:
maxVol: 30
- type: UseDelay
delay: 1
- type: Fiber
fiberColor: fibers-white
- type: DnaSubstanceTrace

View File

@@ -348,7 +348,7 @@
sprite: Clothing/OuterClothing/Coats/clownpriest.rsi
- type: entity
parent: ClothingOuterStorageBase
parent: [ClothingOuterStorageBase, BaseMajorContraband]
id: ClothingOuterDogi
name: samurai dogi
description: Dogi is a type of traditional Japanese clothing. The dogi is made of heavy, durable fabric, it is practical in combat and stylish in appearance. It is decorated with intricate patterns and embroidery on the back.

View File

@@ -156,4 +156,5 @@
- PosterLegitSafetyMothMeth
- PosterLegitSafetyMothHardhat
- PosterLegitSafetyMothSSD
- PosterLegitOppenhopper
chance: 1

View File

@@ -100,7 +100,7 @@
- type: GhostRole
name: ghost-role-information-loneop-name
description: ghost-role-information-loneop-description
rules: ghost-role-information-rules-default-solo-antagonist
rules: ghost-role-information-loneop-rules
- type: Sprite
sprite: Markers/jobs.rsi
layers:
@@ -170,3 +170,21 @@
- state: green
- sprite: Objects/Weapons/Melee/energykatana.rsi
state: icon
- type: entity
categories: [ HideSpawnMenu, Spawner ]
parent: BaseAntagSpawner
id: SpawnPointGhostDerelictCyborg
components:
- type: GhostRole
name: ghost-role-information-derelict-cyborg-name
description: ghost-role-information-derelict-cyborg-description
rules: ghost-role-information-silicon-rules
raffle:
settings: default
- type: Sprite
sprite: Markers/jobs.rsi
layers:
- state: green
- sprite: Mobs/Silicon/chassis.rsi
state: derelict_icon

View File

@@ -880,3 +880,46 @@
- type: ConditionalSpawner
prototypes:
- MobHonkBot
- type: entity
name: gingerbread man Spawner
id: SpawnMobGingerbreadAI
suffix: Ghostrole
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: full
sprite: Mobs/Species/Gingerbread/parts.rsi
- type: ConditionalSpawner
prototypes:
- MobGingerbreadAI
- type: entity
name: Reindeer Buck Spawner
id: SpawnMobReindeerBuck
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: reindeer_buck_still
sprite: Mobs/Animals/reindeer_buck.rsi
- type: ConditionalSpawner
prototypes:
- MobReindeerBuck
- type: entity
name: Reindeer Doe Spawner
id: SpawnMobReindeerDoe
parent: MarkerBase
components:
- type: Sprite
layers:
- state: green
- state: reindeer_doe_still
sprite: Mobs/Animals/reindeer_doe.rsi
- type: ConditionalSpawner
prototypes:
- MobReindeerDoe

View File

@@ -279,6 +279,9 @@
parent: [BaseBorgChassis, BaseBorgTransponder]
abstract: true
components:
- type: RandomMetadata
nameSegments:
- names_borg
- type: NpcFactionMember
factions:
- NanoTrasen
@@ -325,3 +328,23 @@
Unsexed: UnisexSiliconSyndicate
- type: PointLight
color: "#dd200b"
- type: entity
id: BaseBorgChassisDerelict
parent: BaseBorgChassis
abstract: true
components:
- type: NpcFactionMember
factions:
- NanoTrasen #The seemingly best fit. It was a regular NT cyborg once, after all.
- type: Access
enabled: false
groups:
- AllAccess #Randomized access would be fun. AllAccess is the best i can think of right now that does make it too hard for it to enter the station or navigate it..
- type: AccessReader
access: [["Command"], ["Research"]]
- type: StartIonStormed
ionStormAmount: 3
- type: IonStormTarget
chance: 1
- type: ShowJobIcons

View File

@@ -187,3 +187,35 @@
interactFailureString: petting-failure-syndicate-cyborg
interactSuccessSound:
path: /Audio/Ambience/Objects/periodic_beep.ogg
- type: entity
id: BorgChassisDerelict
parent: BaseBorgChassisDerelict
name: derelict cyborg
description: A man-machine hybrid that assists in station activity. This one is in a state of great disrepair.
components:
- type: Sprite
layers:
- state: derelict
- state: derelict_e_r
map: ["enum.BorgVisualLayers.Light"]
shader: unshaded
visible: false
- state: derelict_l
shader: unshaded
map: ["light"]
visible: false
- type: BorgChassis
maxModules: 5 # the sixth one broke lol
moduleWhitelist:
tags:
- BorgModuleGeneric
hasMindState: derelict_e
noMindState: derelict_e_r
- type: Construction
node: derelictcyborg
- type: InteractionPopup
interactSuccessString: petting-success-derelict-cyborg
interactFailureString: petting-failure-derelict-cyborg
interactSuccessSound:
path: /Audio/Ambience/Objects/periodic_beep.ogg

View File

@@ -1393,7 +1393,7 @@
makeSentient: true
name: ghost-role-information-monkey-name
description: ghost-role-information-monkey-description
rules: ghost-role-information-syndicate-monkey-reinforcement-rules
rules: ghost-role-information-syndicate-reinforcement-rules
raffle:
settings: default
- type: GhostTakeoverAvailable
@@ -3468,3 +3468,97 @@
components:
- type: ReplacementAccent
accent: nymph
- type: entity
name: reindeer buck
parent: [ SimpleMobBase, MobCombat ]
id: MobReindeerBuck
description: You think it can pull a sleigh?
components:
- type: Sprite
drawdepth: Mobs
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: reindeer_buck
sprite: Mobs/Animals/reindeer_buck.rsi
# - type: SpriteMovement # One day when this shit isnt broken as hell. For now they hoppity hop.
# movementLayers:
# movement:
# state: reindeer_buck
# noMovementLayers:
# movement:
# state: reindeer_buck_still
- type: Physics
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.48
density: 200
mask:
- MobMask
layer:
- MobLayer
- type: DamageStateVisuals
states:
Alive:
Base: reindeer_buck
Critical:
Base: reindeer_buck_dead
Dead:
Base: reindeer_buck_dead
- type: Butcherable
spawned:
- id: FoodMeat
amount: 4
- type: Bloodstream
bloodMaxVolume: 300
# Horns though
- type: MeleeWeapon
damage:
types:
Piercing: 22
animation: WeaponArcFist
- type: NPCRetaliation
- type: FactionException
- type: NpcFactionMember
factions:
- Passive
- type: HTN
rootTask:
task: SimpleHostileCompound
- type: Puller
needsHands: false
- type: entity
name: reindeer doe
parent: MobReindeerBuck
id: MobReindeerDoe
components:
- type: MeleeWeapon
damage:
types:
Blunt: 15
animation: WeaponArcFist
- type: Sprite
drawdepth: Mobs
layers:
- map: ["enum.DamageStateVisualLayers.Base"]
state: reindeer_doe
sprite: Mobs/Animals/reindeer_doe.rsi
# - type: SpriteMovement # One day when this shit isnt broken as hell. For now they hoppity hop.
# movementLayers:
# movement:
# state: reindeer_doe
# noMovementLayers:
# movement:
# state: reindeer_doe_still
- type: DamageStateVisuals
states:
Alive:
Base: reindeer_doe
Critical:
Base: reindeer_doe_dead
Dead:
Base: reindeer_doe_dead

View File

@@ -99,7 +99,7 @@
makeSentient: true
name: ghost-role-information-xeno-name
description: ghost-role-information-xeno-description
rules: ghost-role-information-rules-default-team-antagonist
rules: ghost-role-information-xeno-rules
raffle:
settings: default
- type: GhostTakeoverAvailable

View File

@@ -34,53 +34,53 @@
- NuclearOperative
- SyndicateAgent
- CentralCommand
- type: UserInterface
interfaces:
enum.SolarControlConsoleUiKey.Key:
type: SolarControlConsoleBoundUserInterface
enum.CommunicationsConsoleUiKey.Key:
type: CommunicationsConsoleBoundUserInterface
enum.RadarConsoleUiKey.Key:
type: RadarConsoleBoundUserInterface
enum.CargoConsoleUiKey.Orders:
type: CargoOrderConsoleBoundUserInterface
enum.CrewMonitoringUIKey.Key:
type: CrewMonitoringBoundUserInterface
enum.GeneralStationRecordConsoleKey.Key:
# who the fuck named this bruh
type: GeneralStationRecordConsoleBoundUserInterface
- type: IntrinsicUI
uis:
enum.SolarControlConsoleUiKey.Key:
toggleAction: ActionAGhostShowSolar
enum.CommunicationsConsoleUiKey.Key:
toggleAction: ActionAGhostShowCommunications
enum.RadarConsoleUiKey.Key:
toggleAction: ActionAGhostShowRadar
enum.CargoConsoleUiKey.Orders:
toggleAction: ActionAGhostShowCargo
enum.CrewMonitoringUIKey.Key:
toggleAction: ActionAGhostShowCrewMonitoring
enum.GeneralStationRecordConsoleKey.Key:
toggleAction: ActionAGhostShowStationRecords
- type: SolarControlConsole # look ma i AM the computer!
- type: CommunicationsConsole
title: comms-console-announcement-title-centcom
color: "#228b22"
- type: RadarConsole
followEntity: true
- type: CargoOrderConsole
- type: BankClient
- type: CrewMonitoringConsole
- type: GeneralStationRecordConsole
canDeleteEntries: true
- type: DeviceNetwork
deviceNetId: Wireless
receiveFrequencyId: CrewMonitor
transmitFrequencyId: ShuttleTimer
- type: WirelessNetworkConnection
range: 500
- type: StationLimitedNetwork
#- type: UserInterface
# interfaces:
# enum.SolarControlConsoleUiKey.Key:
# type: SolarControlConsoleBoundUserInterface
# enum.CommunicationsConsoleUiKey.Key:
# type: CommunicationsConsoleBoundUserInterface
# enum.RadarConsoleUiKey.Key:
# type: RadarConsoleBoundUserInterface
# enum.CargoConsoleUiKey.Orders:
# type: CargoOrderConsoleBoundUserInterface
# enum.CrewMonitoringUIKey.Key:
# type: CrewMonitoringBoundUserInterface
# enum.GeneralStationRecordConsoleKey.Key:
# # who the fuck named this bruh
# type: GeneralStationRecordConsoleBoundUserInterface
#- type: IntrinsicUI
# uis:
# enum.SolarControlConsoleUiKey.Key:
# toggleAction: ActionAGhostShowSolar
# enum.CommunicationsConsoleUiKey.Key:
# toggleAction: ActionAGhostShowCommunications
# enum.RadarConsoleUiKey.Key:
# toggleAction: ActionAGhostShowRadar
# enum.CargoConsoleUiKey.Orders:
# toggleAction: ActionAGhostShowCargo
# enum.CrewMonitoringUIKey.Key:
# toggleAction: ActionAGhostShowCrewMonitoring
# enum.GeneralStationRecordConsoleKey.Key:
# toggleAction: ActionAGhostShowStationRecords
#- type: SolarControlConsole # look ma i AM the computer!
#- type: CommunicationsConsole
# title: comms-console-announcement-title-centcom
# color: "#228b22"
#- type: RadarConsole
# followEntity: true
#- type: CargoOrderConsole
#- type: BankClient
#- type: CrewMonitoringConsole
#- type: GeneralStationRecordConsole
# canDeleteEntries: true
#- type: DeviceNetwork
# deviceNetId: Wireless
# receiveFrequencyId: CrewMonitor
# transmitFrequencyId: ShuttleTimer
#- type: WirelessNetworkConnection
# range: 500
#- type: StationLimitedNetwork
- type: Thieving
stripTimeReduction: 9999
stealthy: true

View File

@@ -11,3 +11,23 @@
damageRecovery:
types:
Asphyxiation: -1.0
- type: entity
name: gingerbread man
id: MobGingerbreadAI
parent: [ MobGingerbread, MobCombat]
components:
- type: GhostRole
name: ghost-role-information-gingerbread-name
description: ghost-role-information-gingerbread-description
rules: ghost-role-information-nonantagonist-rules
- type: GhostTakeoverAvailable
- type: NPCRetaliation
- type: FactionException
- type: NpcFactionMember
factions:
- Passive
- type: HTN
rootTask:
task: SimpleHostileCompound

View File

@@ -55,6 +55,7 @@
skipChecks: true
- type: Ghost
- type: GhostHearing
- type: ShowElectrocutionHUD
- type: IntrinsicRadioReceiver
- type: ActiveRadio
receiveAllChannels: true

View File

@@ -30,6 +30,7 @@
- type: IgnoreUIRange
- type: StationAiHeld
- type: StationAiOverlay
- type: ShowElectrocutionHUD
- type: ActionGrant
actions:
- ActionJumpToCore
@@ -525,3 +526,37 @@
- PlayerBorgSyndicateAssaultGhostRole
- PlayerBorgSyndicateAssaultGhostRole # Saboteurs are kinda like cyborg medics, we want less.
- PlayerBorgSyndicateSaboteurGhostRole
- type: entity
id: PlayerBorgDerelict
parent: BorgChassisDerelict
suffix: Battery, Module
components:
- type: ContainerFill
containers:
borg_brain:
- PositronicBrain
borg_module:
- BorgModuleTool
- BorgModuleFireExtinguisher
- BorgModuleGPS
- type: ItemSlots
slots:
cell_slot:
name: power-cell-slot-component-slot-name-default
startingItem: PowerCellHigh
- type: RandomMetadata
nameSegments: [names_borg]
- type: entity
id: PlayerBorgDerelictGhostRole
parent: PlayerBorgDerelict
suffix: Ghost role
components:
- type: GhostRole
name: ghost-role-information-derelict-cyborg-name
description: ghost-role-information-derelict-cyborg-description
rules: ghost-role-information-silicon-rules
raffle:
settings: default
- type: GhostTakeoverAvailable

View File

@@ -32,6 +32,18 @@
- type: Damageable
damageContainer: Biological
damageModifierSet: Vox
- type: PassiveDamage
# Augment normal health regen to be able to tank some Poison damage
# This allows Vox to take their mask off temporarily to eat something without needing a trip to medbay afterwards.
allowedStates:
- Alive
damageCap: 20
damage:
types:
Heat: -0.07
Poison: -0.2
groups:
Brute: -0.07
- type: DamageVisuals
damageOverlayGroups:
Brute:

View File

@@ -98,11 +98,25 @@
id: FoodMealNachos
description: Chips from Space Mexico.
components:
- type: Food
trash:
- FoodPlateSmall
- type: FlavorProfile
flavors:
- nachos
- type: Sprite
state: nachos
- type: SolutionContainerManager
solutions:
food:
maxVol: 11
reagents:
- ReagentId: Nutriment
Quantity: 4
- ReagentId: Vitamin
Quantity: 1
- ReagentId: TableSalt
Quantity: 1
# Tastes like nachos.
- type: entity
@@ -111,6 +125,9 @@
id: FoodMealNachosCheesy
description: The delicious combination of nachos and melting cheese.
components:
- type: Food
trash:
- FoodPlateSmall
- type: FlavorProfile
flavors:
- nachos
@@ -136,24 +153,27 @@
id: FoodMealNachosCuban
description: That's some dangerously spicy nachos.
components:
- type: Food
trash:
- FoodPlateSmall
- type: FlavorProfile
flavors:
- nachos
- cheesy
- tomato
- spicy
- type: Sprite
state: nachos-cuban
- type: SolutionContainerManager
solutions:
food:
maxVol: 15
maxVol: 25
reagents:
- ReagentId: Nutriment
Quantity: 7
- ReagentId: CapsaicinOil
Quantity: 8
- ReagentId: CapsaicinOil
Quantity: 7
- ReagentId: Vitamin
Quantity: 4
Quantity: 5
# Tastes like nachos, hot pepper.
- type: entity

View File

@@ -678,6 +678,11 @@
tags:
- Raw
- Meat
- type: Extractable
juiceSolution:
reagents:
- ReagentId: Slime
Quantity: 10
- type: Sprite
state: slime
@@ -1207,7 +1212,7 @@
name: anomalous steak
parent: FoodMeatBase
id: FoodMeatAnomalyCooked
description: A gigantic mass of cooked meat. A meal for a dinner party, or someone REALLY hungry.
description: A gigantic mass of cooked meat. A meal for a dinner party, or someone REALLY hungry.
components:
- type: Tag
tags:

View File

@@ -24,8 +24,8 @@
components:
- type: GhostRole
name: ghost-role-information-syndicate-reinforcement-spy-name
description: ghost-role-information-syndicate-reinforcement-description
rules: ghost-role-information-rules-default-solo-antagonist
description: ghost-role-information-syndicate-reinforcement-spy-description
rules: ghost-role-information-syndicate-reinforcement-rules
raffle:
settings: default
- type: GhostRoleMobSpawner
@@ -57,7 +57,7 @@
- type: GhostRole
name: ghost-role-information-syndicate-monkey-reinforcement-name
description: ghost-role-information-syndicate-monkey-reinforcement-description
rules: ghost-role-information-rules-default-familiar
rules: ghost-role-information-syndicate-reinforcement-rules
raffle:
settings: default
- type: GhostRoleMobSpawner
@@ -69,6 +69,8 @@
id: ReinforcementRadioSyndicateAncestorNukeops # Reinforcement radio exclusive to nukeops uplink
suffix: NukeOps
components:
- type: GhostRole
rules: ghost-role-information-nukeop-reinforcement-rules
- type: GhostRoleMobSpawner
prototype: MobMonkeySyndicateAgentNukeops
selectablePrototypes: ["SyndicateMonkeyNukeops", "SyndicateKoboldNukeops"]
@@ -82,7 +84,7 @@
- type: GhostRole
name: ghost-role-information-SyndiCat-name
description: ghost-role-information-SyndiCat-description
rules: ghost-role-information-rules-default-familiar
rules: ghost-role-information-syndicate-reinforcement-rules
raffle:
settings: default
- type: GhostRoleMobSpawner

View File

@@ -438,6 +438,14 @@
- type: NavMapBeacon
defaultText: station-beacon-gravgen
- type: entity
parent: DefaultStationBeaconEngineering
id: DefaultStationBeaconAnchor
suffix: Anchor
components:
- type: NavMapBeacon
defaultText: station-beacon-anchor
- type: entity
parent: DefaultStationBeaconEngineering
id: DefaultStationBeaconSingularity

View File

@@ -498,12 +498,22 @@
- type: Sprite
sprite: Objects/Fun/sharkplush.rsi
state: blue
- type: EmitSoundOnLand
sound:
path: /Audio/Items/Toys/rawr.ogg
- type: EmitSoundOnTrigger
sound:
path: /Audio/Items/Toys/rawr.ogg
- type: EmitSoundOnUse
sound:
path: /Audio/Items/Toys/rawr.ogg
- type: EmitSoundOnActivate
sound:
path: /Audio/Items/Toys/rawr.ogg
- type: MeleeWeapon
wideAnimationRotation: 180
soundHit:
path: /Audio/Items/Toys/rawr.ogg
- type: Item
heldPrefix: blue
storedRotation: -90

View File

@@ -54,6 +54,8 @@
reagents:
- ReagentId: Cellulose
Quantity: 6
- type: Item
heldPrefix: cardboard
- type: entity
parent: MaterialCardboard
@@ -135,6 +137,8 @@
- type: Construction
graph: WebObjects # not sure if I should either keep this here or just make another prototype. Will keep it here just in case.
node: cloth
- type: Item
heldPrefix: cloth
- type: entity
parent: MaterialCloth
@@ -195,6 +199,8 @@
tags:
- ClothMade
- RawMaterial
- type: Item
heldPrefix: durathread
- type: entity
parent: MaterialDurathread
@@ -335,8 +341,7 @@
sprite: Objects/Materials/materials.rsi
state: corgihide
- type: Item
sprite: Clothing/Head/Misc/hides.rsi
heldPrefix: corgi
heldPrefix: corgihide
- type: Clothing
sprite: Clothing/Head/Misc/hides.rsi
equippedPrefix: corgi2
@@ -428,6 +433,8 @@
tags:
- ClothMade
- RawMaterial
- type: Item
heldPrefix: cotton
- type: entity
parent: MaterialCotton
@@ -480,6 +487,8 @@
tags:
- ClothMade
- RawMaterial
- type: Item
heldPrefix: pyrotton
- type: entity
parent: MaterialPyrotton
@@ -539,6 +548,8 @@
- ReagentId: Honk
Quantity: 5
- type: Appearance
- type: Item
heldPrefix: bananium
- type: entity
parent: MaterialBananium
@@ -589,6 +600,9 @@
tags:
- ClothMade
- RawMaterial
- type: Item
sprite: Objects/Materials/silk.rsi
heldPrefix: silk
- type: entity
parent: MaterialWebSilk
@@ -711,6 +725,8 @@
reagents:
- ReagentId: Vitamin
Quantity: 3
- type: Item
heldPrefix: bones
- type: entity
parent: MaterialBones
@@ -765,6 +781,8 @@
- goliath_hide_3
- type: Item
size: Large
heldPrefix: goliathhide
sprite: Objects/Materials/hide.rsi
shape:
- 0,0,2,2

View File

@@ -46,6 +46,8 @@
reagents:
- ReagentId: Gold
Quantity: 10
- type: Item
heldPrefix: gold
- type: entity
parent: GoldOre
@@ -77,6 +79,8 @@
reagents:
- ReagentId: Carbon
Quantity: 20
- type: Item
heldPrefix: diamond
- type: entity
parent: DiamondOre
@@ -108,6 +112,8 @@
reagents:
- ReagentId: Iron
Quantity: 10
- type: Item
heldPrefix: iron
- type: entity
id: SteelOre1
@@ -144,6 +150,8 @@
reagents:
- ReagentId: Plasma
Quantity: 10
- type: Item
heldPrefix: plasma
- type: entity
parent: PlasmaOre
@@ -175,6 +183,8 @@
reagents:
- ReagentId: Silver
Quantity: 10
- type: Item
heldPrefix: silver
- type: entity
parent: SilverOre
@@ -206,6 +216,8 @@
reagents:
- ReagentId: Silicon
Quantity: 10
- type: Item
heldPrefix: spacequartz
- type: entity
parent: SpaceQuartz
@@ -245,6 +257,8 @@
- ReagentId: Radium
Quantity: 2
canReact: false
- type: Item
heldPrefix: uranium
- type: entity
parent: UraniumOre
@@ -285,6 +299,8 @@
Quantity: 2
- ReagentId: Honk
Quantity: 5
- type: Item
heldPrefix: bananium
- type: entity
parent: BananiumOre
@@ -324,6 +340,8 @@
- type: PhysicalComposition
materialComposition:
Coal: 100
- type: Item
heldPrefix: coal
- type: entity
parent: Coal
@@ -381,6 +399,8 @@
Quantity: 10
- ReagentId: Iodine
Quantity: 5
- type: Item
heldPrefix: salt
- type: entity
parent: SaltOre

View File

@@ -45,7 +45,7 @@
map: ["base"]
- type: Item
size: Normal
# heldPrefix: rods
heldPrefix: rods
- type: Construction
graph: MetalRod
node: MetalRod

View File

@@ -810,3 +810,4 @@
- CentralCommand
- NuclearOperative
- SyndicateAgent
- Wizard

View File

@@ -119,6 +119,7 @@
- CentralCommand
- NuclearOperative
- SyndicateAgent
- Wizard
privilegedIdSlot:
name: id-card-console-privileged-id
ejectSound: /Audio/Machines/id_swipe.ogg

View File

@@ -57,6 +57,42 @@
capacity: 5
count: 5
- type: entity
name: wand of the locker
description: Stuff nerds at a distance!
parent: WeaponWandBase
id: WeaponWandLocker
components:
- type: Sprite
layers:
- state: locker
map: ["base"]
- state: locker-effect
map: ["effect"]
- type: Gun
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/Magic/staff_animation.ogg
- type: BasicEntityAmmoProvider
proto: ProjectileLocker
capacity: 5
count: 5
- type: Item
size: Normal
inhandVisuals:
left:
- state: locker-inhand-left
right:
- state: locker-inhand-right
- type: GenericVisualizer
visuals:
enum.AmmoVisuals.HasAmmo:
effect:
True: { visible: False }
False: { visible: True }
base:
True: { visible: True }
False: { visible: False }
- type: entity
name: magical wand of instant death
parent: WeaponWandBase

View File

@@ -79,6 +79,86 @@
totalIntensity: 0.3
maxTileBreak: 0
- type: entity
id: ProjectileLocker
name: cursed locker
description: A cursed magical locker! Can you resist?
parent: ClosetSteelBase
categories: [ HideSpawnMenu ]
components:
- type: ResistLocker
resistTime: 30
- type: StoreOnCollide
lockOnCollide: true
disableWhenFirstOpened: true
whitelist:
components:
- Body
- type: LockVisuals
stateLocked: cursed_door
stateUnlocked: decursed_door
- type: Lock
breakOnEmag: false
- type: AccessReader
access: [["Wizard"]]
breakOnEmag: false
- type: Projectile
deleteOnCollide: false
onlyCollideWhenShot: true
damage:
types:
Brute: 0
- type: Sprite
noRot: true
sprite: Structures/Storage/closet.rsi
layers:
- state: cursed
map: [ "enum.StorageVisualLayers.Base" ]
- state: decursed_door
map: [ "enum.StorageVisualLayers.Door" ]
- state: paper
visible: false
sprite: Structures/Storage/closet_labels.rsi
map: [ "enum.PaperLabelVisuals.Layer" ]
- state: cursed_door
map: [ "enum.LockVisualLayers.Lock" ]
- state: welded
visible: false
map: [ "enum.WeldableLayers.BaseWelded" ]
#TODO: Will have to eventually make a custom visualizer for cursed lockers
- type: EntityStorageVisuals
stateBaseClosed: decursed
stateDoorOpen: decursed_open
stateDoorClosed: decursed_door
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.48,0.25,0.48"
density: 75
mask:
- MachineMask
layer:
- MachineLayer
projectile:
shape:
!type:PhysShapeAabb
bounds: "-0.15,-0.45,0.15,0.15"
hard: false
mask:
- Impassable
- BulletImpassable
fly-by: &flybyfixture
shape: !type:PhysShapeCircle
radius: 0.6
layer:
- Impassable
- MidImpassable
- HighImpassable
- LowImpassable
hard: false
- type: entity
id: ProjectilePolyboltBase
parent: BaseBullet

View File

@@ -5,7 +5,7 @@
- type: TimedDespawn
lifetime: 0.4
- type: Sprite
drawdepth: Effects
drawdepth: BelowMobs
layers:
- shader: unshaded
map: ["enum.EffectLayers.Unshaded"]
@@ -983,7 +983,7 @@
- HideContextMenu
- type: entity
name: laser bolt
name: laser bolt
id: BulletLaser
parent: BaseBullet
categories: [ HideSpawnMenu ]
@@ -1029,7 +1029,7 @@
- type: ProjectileSpread
proto: BulletLaser
count: 5 #65 heat damage if you hit all your shots, but wide spread
spread: 30
spread: 30
- type: entity
name: narrow laser barrage
@@ -1051,4 +1051,4 @@
- type: ProjectileSpread
proto: BulletDisablerSmg
count: 3 #bit stronger than a disabler if you hit your shots you goober, still not a 2 hit stun though
spread: 9
spread: 9

View File

@@ -274,6 +274,7 @@
components:
- type: ItemToggle
onUse: false # wielding events control it instead
onActivate: false # prevents the weapon from being able to be turned on when it is on the ground
soundActivate:
path: /Audio/Weapons/ebladeon.ogg
params:

View File

@@ -96,6 +96,7 @@
Slash: 12
- type: EmbeddableProjectile
sound: /Audio/Weapons/star_hit.ogg
offset: -0.15,0.0
- type: LandAtCursor
- type: DamageOtherOnHit
damage:
@@ -108,6 +109,8 @@
sprite: Objects/Weapons/Melee/combat_knife.rsi
- type: DisarmMalus
malus: 0.225
- type: ThrowingAngle
angle: 225
- type: entity
name: survival knife
@@ -140,6 +143,7 @@
Slash: 15
- type: Item
sprite: Objects/Weapons/Melee/kukri_knife.rsi
storedSprite: null
- type: entity
parent: ClothingHeadHatGreyFlatcap
@@ -286,6 +290,7 @@
Slash: 5
- type: EmbeddableProjectile
sound: /Audio/Weapons/star_hit.ogg
offset: -0.15,0.0
- type: LandAtCursor
- type: DamageOtherOnHit
ignoreResistances: true
@@ -295,3 +300,5 @@
Piercing: 15
- type: Item
sprite: Objects/Weapons/Melee/throwing_knife.rsi
- type: ThrowingAngle
angle: 225

View File

@@ -989,6 +989,15 @@
- type: Wires
layoutId: AirlockMedical
- type: entity
parent: AirlockMaintMedLocked
id: AirlockMedicalMorgueMaintLocked
suffix: Morgue, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMorgue ]
- type: entity
parent: AirlockMaintMedLocked
id: AirlockMaintChemLocked

View File

@@ -31,6 +31,11 @@
shader: unshaded
- state: panel_open
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: ["enum.ElectrifiedLayers.HUD"]
- type: AnimationPlayer
- type: Physics
- type: Fixtures
@@ -73,6 +78,7 @@
- type: DoorBolt
- type: Appearance
- type: WiresVisuals
- type: ElectrocutionHUDVisuals
- type: ApcPowerReceiver
powerLoad: 20
- type: ExtensionCableReceiver

View File

@@ -27,6 +27,11 @@
shader: unshaded
- state: panel_open
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: ["enum.ElectrifiedLayers.HUD"]
- type: AnimationPlayer
- type: Physics
- type: Fixtures
@@ -66,6 +71,7 @@
containerAccessProvider: board
- type: Appearance
- type: WiresVisuals
- type: ElectrocutionHUDVisuals
- type: ApcPowerReceiver
powerLoad: 20
- type: ExtensionCableReceiver

View File

@@ -31,23 +31,6 @@
- type: Sprite
sprite: Structures/Doors/Airlocks/Standard/shuttle.rsi
snapCardinals: false
layers:
- state: closed
map: ["enum.DoorVisualLayers.Base"]
- state: closed_unlit
shader: unshaded
map: ["enum.DoorVisualLayers.BaseUnlit"]
visible: false
- state: welded
map: ["enum.WeldableLayers.BaseWelded"]
- state: bolted_unlit
shader: unshaded
map: ["enum.DoorVisualLayers.BaseBolted"]
- state: emergency_unlit
shader: unshaded
map: ["enum.DoorVisualLayers.BaseEmergencyAccess"]
- state: panel_open
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- type: Wires
layoutId: Docking
- type: Door
@@ -113,6 +96,7 @@
- type: Sprite
sprite: Structures/Doors/Airlocks/Glass/shuttle.rsi
state: closed
snapCardinals: false
- type: Construction
graph: AirlockShuttle
node: assembly

View File

@@ -43,6 +43,11 @@
map: ["enum.DoorVisualLayers.BaseEmergencyAccess"]
- state: panel_open
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: ["enum.ElectrifiedLayers.HUD"]
- type: AnimationPlayer
- type: ApcPowerReceiver
- type: ExtensionCableReceiver
@@ -138,6 +143,7 @@
type: WiresBoundUserInterface
- type: Appearance
- type: WiresVisuals
- type: ElectrocutionHUDVisuals
- type: Airtight
noAirWhenFullyAirBlocked: false
airBlockedDirection:
@@ -177,6 +183,11 @@
- state: panel_open
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
visible: false
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: [ "enum.ElectrifiedLayers.HUD" ]
- type: Damageable
damageModifierSet: RGlass
- type: Destructible
@@ -238,6 +249,11 @@
- state: panel_open
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
visible: false
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: [ "enum.ElectrifiedLayers.HUD" ]
- type: Destructible
thresholds:
- trigger:
@@ -294,6 +310,11 @@
- state: panel_open
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
visible: false
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: ["enum.ElectrifiedLayers.HUD"]
- type: Destructible
thresholds:
- trigger:
@@ -355,6 +376,11 @@
- state: panel_open
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
visible: false
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: [ "enum.ElectrifiedLayers.HUD" ]
- type: Destructible
thresholds:
- trigger:
@@ -411,6 +437,11 @@
- state: panel_open
map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
visible: false
- state: electrified
sprite: Interface/Misc/ai_hud.rsi
shader: unshaded
visible: false
map: [ "enum.ElectrifiedLayers.HUD" ]
- type: Destructible
thresholds:
- trigger:

View File

@@ -110,6 +110,7 @@
- type: WarpPoint
follow: true
location: nuclear bomb
- type: FTLSmashImmune
- type: entity
parent: NuclearBomb

View File

@@ -45,3 +45,11 @@
powerMV:
!type:CableTerminalNode
nodeGroupID: MVPower
- type: entity
id: CableTerminalUncuttable
parent: CableTerminal
suffix: uncuttable
components:
- type: Cable
cuttingQuality: null

View File

@@ -98,6 +98,14 @@
sound:
path: /Audio/Ambience/Objects/emf_buzz.ogg
- type: entity
id: CableHVUncuttable
parent: CableHV
suffix: uncuttable
components:
- type: Cable
cuttingQuality: null
- type: entity
parent: CableBase
id: CableMV
@@ -142,6 +150,14 @@
- type: CableVisualizer
statePrefix: mvcable_
- type: entity
id: CableMVUncuttable
parent: CableMV
suffix: uncuttable
components:
- type: Cable
cuttingQuality: null
- type: entity
parent: CableBase
id: CableApcExtension
@@ -188,3 +204,11 @@
acts: [ "Destruction" ]
- type: CableVisualizer
statePrefix: lvcable_
- type: entity
id: CableApcExtensionUncuttable
parent: CableApcExtension
suffix: uncuttable
components:
- type: Cable
cuttingQuality: null

View File

@@ -28,6 +28,8 @@
interfaces:
enum.BarSignUiKey.Key:
type: BarSignBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Appearance
- type: Destructible
thresholds:
@@ -37,6 +39,11 @@
behaviors:
- !type:DoActsBehavior
acts: ["Destruction"]
- type: StationAiWhitelist
- type: WiresPanel
- type: Wires
boardName: wires-board-name-barsign
layoutId: BarSign
- type: entity
parent: BaseBarSign

View File

@@ -1069,6 +1069,15 @@
- type: Sprite
state: poster52_legit
- type: entity
parent: PosterBase
id: PosterLegitOppenhopper
name: "Oppenhopper"
description: "A poster for a long-forgotten movie. It follows a group of tenacious greenhorns from the Grasshopper Sector as they defend against onslaughts of the infamous Nuclear Operatives. The tagline reads: \"Nuke Ops will continue until robustness improves.\""
components:
- type: Sprite
state: poster53_legit
#maps

View File

@@ -70,8 +70,8 @@
- type: Appearance
- type: GenericVisualizer
visuals:
enum.ElectrifiedVisuals.IsPowered:
enum.ElectrifiedLayers.Powered:
enum.ElectrifiedVisuals.ShowSparks:
enum.ElectrifiedLayers.Sparks:
True: { visible: True }
False: { visible: False }
- type: AnimationPlayer
@@ -91,7 +91,7 @@
- state: straight_broken
- state: electrified
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Physics
@@ -151,7 +151,7 @@
- state: straight
- state: electrified
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Fixtures
@@ -209,7 +209,7 @@
- state: corner
- state: electrified
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Fixtures
@@ -256,7 +256,7 @@
- state: end
- state: electrified
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Fixtures
@@ -292,7 +292,7 @@
map: ["enum.DoorVisualLayers.Base"]
- state: electrified
sprite: Effects/electricity.rsi
map: [ "enum.ElectrifiedLayers.Powered" ]
map: [ "enum.ElectrifiedLayers.Sparks" ]
shader: unshaded
visible: false
- type: Fixtures

View File

@@ -21,7 +21,7 @@
- state: grille
- state: electrified
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
@@ -82,8 +82,8 @@
- type: Appearance
- type: GenericVisualizer
visuals:
enum.ElectrifiedVisuals.IsPowered:
enum.ElectrifiedLayers.Powered:
enum.ElectrifiedVisuals.ShowSparks:
enum.ElectrifiedLayers.Sparks:
True: { visible: True }
False: { visible: False }
- type: AnimationPlayer
@@ -176,7 +176,7 @@
- state: grille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon
@@ -211,7 +211,7 @@
- state: ratvargrille_diagonal
- state: electrified_diagonal
sprite: Effects/electricity.rsi
map: ["enum.ElectrifiedLayers.Powered"]
map: ["enum.ElectrifiedLayers.Sparks"]
shader: unshaded
visible: false
- type: Icon

View File

@@ -36,6 +36,15 @@
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: or
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate
@@ -63,7 +72,18 @@
Nor: { state: nor }
Nand: { state: nand }
Xnor: { state: xnor }
enum.LogicGateVisuals.InputA:
enum.LogicGateLayers.InputA:
True: { visible: true }
False: { visible: false }
enum.LogicGateVisuals.InputB:
enum.LogicGateLayers.InputB:
True: { visible: true }
False: { visible: false }
enum.LogicGateVisuals.Output:
enum.LogicGateLayers.Output:
True: { visible: true }
False: { visible: false }
- type: entity
parent: LogicGateOr
id: LogicGateAnd
@@ -72,6 +92,16 @@
- type: Sprite
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: and
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate
@@ -85,6 +115,16 @@
- type: Sprite
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: xor
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate
@@ -98,6 +138,16 @@
- type: Sprite
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: nor
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate
@@ -111,6 +161,16 @@
- type: Sprite
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: nand
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate
@@ -124,6 +184,16 @@
- type: Sprite
layers:
- state: base
- state: logic
- state: logic_a
visible: false
map: [ "enum.LogicGateLayers.InputA" ]
- state: logic_b
visible: false
map: [ "enum.LogicGateLayers.InputB" ]
- state: logic_o
visible: false
map: [ "enum.LogicGateLayers.Output" ]
- state: xnor
map: [ "enum.LogicGateLayers.Gate" ]
- type: LogicGate

View File

@@ -10,6 +10,7 @@
- id: ClericalError
- id: CockroachMigration
- id: GasLeak
- id: GreytideVirus
- id: IonStorm # its calm like 90% of the time smh
- id: KudzuGrowth
- id: MassHallucinations
@@ -36,6 +37,7 @@
- id: SleeperAgents
- id: ZombieOutbreak
- id: LoneOpsSpawn
- id: DerelictCyborgSpawn
- type: entity
id: BaseStationEvent
@@ -540,3 +542,45 @@
maxOccurrences: 1 # this event has diminishing returns on interesting-ness, so we cap it
weight: 5
- type: MobReplacementRule
- type: entity
id: GreytideVirus
parent: BaseStationEventShortDelay
components:
- type: StationEvent
startAudio:
path: /Audio/Announcements/attention.ogg
weight: 5
minimumPlayers: 25
reoccurrenceDelay: 20
- type: GreytideVirusRule
accessGroups:
- Cargo
- Command
- Engineering
- Research
- Security
- Service
blacklist:
- External # don't space everything
- type: entity
parent: BaseGameRule
id: DerelictCyborgSpawn
components:
- type: StationEvent
weight: 5
earliestStart: 15
reoccurrenceDelay: 20
minimumPlayers: 4
duration: null
- type: SpaceSpawnRule
spawnDistance: 0
- type: AntagSpawner
prototype: PlayerBorgDerelict
- type: AntagSelection
definitions:
- spawnerPrototype: SpawnPointGhostDerelictCyborg
min: 1
max: 1
pickPlayer: false

View File

@@ -28,7 +28,7 @@
# Silicons
- type: roleLoadout
id: JobStationAi
nameDataset: names_ai
nameDataset: NamesAI
# Civilian
- type: roleLoadout

View File

@@ -1,4 +1,4 @@
- type: gameMapPool
id: NOCP14DefaultMapPool
maps:
- Dev
- Dev

View File

@@ -0,0 +1,65 @@
- type: gameMap
id: Amber
mapName: 'Amber'
mapPath: /Maps/amber.yml
minPlayers: 7
maxPlayers: 50
stations:
Amber:
stationProto: StandardNanotrasenStation
components:
- type: StationNameSetup
mapNameTemplate: '{0} Amber Station {1}'
nameGenerator:
!type:NanotrasenNameGenerator
prefixCreator: '14-SB'
- type: StationEmergencyShuttle
emergencyShuttlePath: /Maps/Shuttles/emergency_amber.yml
- type: StationJobs
availableJobs:
#service
Captain: [ 1, 1 ]
HeadOfPersonnel: [ 1, 1 ]
Bartender: [ 1, 1 ]
Botanist: [ 2, 2 ]
Chef: [ 1, 1 ]
Janitor: [ 2, 2 ]
Chaplain: [ 1, 1 ]
Librarian: [ 1, 1 ]
ServiceWorker: [ 1, 3 ]
Reporter: [ 1, 1 ]
#engineering
ChiefEngineer: [ 1, 1 ]
AtmosphericTechnician: [ 2, 2 ]
StationEngineer: [ 2, 4 ]
TechnicalAssistant: [ 1, 1 ]
#medical
ChiefMedicalOfficer: [ 1, 1 ]
Chemist: [ 2, 2 ]
MedicalDoctor: [ 2, 4 ]
Paramedic: [ 2, 2 ]
MedicalIntern: [ 1, 2 ]
Psychologist: [ 1, 1 ]
#science
ResearchDirector: [ 1, 1 ]
Scientist: [ 4, 4 ]
ResearchAssistant: [ 1, 2 ]
#security
HeadOfSecurity: [ 1, 1 ]
Warden: [ 1, 1 ]
SecurityOfficer: [ 4, 4 ]
Detective: [ 1, 1 ]
SecurityCadet: [ 1, 1 ]
Lawyer: [ 1, 1 ]
#supply
Quartermaster: [ 1, 1 ]
SalvageSpecialist: [ 2, 3 ]
CargoTechnician: [ 2, 3 ]
#civilian
Passenger: [ -1, -1 ]
Clown: [ 1, 1 ]
Mime: [ 1, 1 ]
Musician: [ 1, 1 ]
#silicon
StationAi: [ 1, 1 ]
Borg: [ 2, 2 ]

View File

@@ -34,3 +34,6 @@
- node: cyborg
entity: BorgChassisSelectable
- node: derelictcyborg
entity: BorgChassisDerelict

View File

@@ -1220,6 +1220,41 @@
solids:
FoodCarrot: 1
- type: microwaveMealRecipe
id: RecipeNachos
name: nachos recipe
result: FoodMealNachos
time: 10
reagents:
TableSalt: 1
solids:
FoodDoughTortillaFlat: 1
FoodPlateSmall: 1
- type: microwaveMealRecipe
id: RecipeNachosCheesy
name: cheesy nachos recipe
result: FoodMealNachosCheesy
time: 10
reagents:
TableSalt: 1
solids:
FoodCheeseSlice: 1
FoodDoughTortillaFlat: 1
FoodPlateSmall: 1
- type: microwaveMealRecipe
id: RecipeNachosCuban
name: cuban nachos recipe
result: FoodMealNachosCuban
time: 10
reagents:
Ketchup: 5
solids:
FoodChiliPepper: 1
FoodDoughTortillaFlat: 1
FoodPlateSmall: 1
- type: microwaveMealRecipe
id: RecipePopcorn
name: popcorn recipe

View File

@@ -1,4 +1,4 @@
- type: latheRecipe
- type: latheRecipe
id: ConveyorBeltAssembly
result: ConveyorBeltAssembly
completetime: 4

View File

@@ -81,10 +81,10 @@
- type: latheRecipe
id: Vape
result: Vape
icon:
sprite: Objects/Consumable/Smokeables/Vapes/vape-standard.rsi
state: icon
result: Vape
completetime: 2
materials:
Plastic: 100

View File

@@ -1,54 +1,39 @@
- type: latheRecipe
parent: BasePartRecipe
id: TimerTrigger
result: TimerTrigger
category: Parts
completetime: 2
materials:
Steel: 300
Plastic: 200
- type: latheRecipe
parent: BasePartRecipe
id: SignalTrigger
result: SignalTrigger
category: Parts
completetime: 2
materials:
Steel: 300
Plastic: 200
- type: latheRecipe
parent: BasePartRecipe
id: VoiceTrigger
result: VoiceTrigger
category: Parts
completetime: 2
materials:
Steel: 300
Plastic: 200
- type: latheRecipe
parent: BasePartRecipe
id: Igniter
result: Igniter
category: Parts
completetime: 2
materials:
Steel: 300
Plastic: 100
Glass: 100
- type: latheRecipe
parent: BaseWeaponRecipe
id: ChemicalPayload
result: ChemicalPayload
category: Weapons
completetime: 2
materials:
Steel: 200
Plastic: 300
- type: latheRecipe
parent: BaseWeaponRecipe
id: FlashPayload
result: FlashPayload
category: Weapons
completetime: 2
materials:
Steel: 50
Plastic: 100
@@ -68,20 +53,18 @@
Silver: 50
- type: latheRecipe
parent: BasePartRecipe
id: Signaller
result: RemoteSignaller
category: Parts
completetime: 2
materials:
Steel: 100
Plastic: 200
Glass: 100
- type: latheRecipe
parent: BasePartRecipe
id: SignallerAdvanced
result: RemoteSignallerAdvanced
category: Parts
completetime: 2
materials:
Steel: 100
Plastic: 200
@@ -106,10 +89,9 @@
Glass: 100
- type: latheRecipe
parent: BaseToolRecipe
id: AnomalyScanner
result: AnomalyScanner
category: Tools
completetime: 2
materials:
Plastic: 200
Glass: 150
@@ -146,34 +128,19 @@
Uranium: 150
- type: latheRecipe
parent: ClothingBackpackHolding
id: ClothingBackpackSatchelHolding
result: ClothingBackpackSatchelHolding
completetime: 5
materials:
Steel: 2000
Silver: 750
Plasma: 1500
Uranium: 150
- type: latheRecipe
parent: ClothingBackpackHolding
id: ClothingBackpackDuffelHolding
result: ClothingBackpackDuffelHolding
completetime: 5
materials:
Steel: 2000
Silver: 750
Plasma: 1500
Uranium: 150
- type: latheRecipe
parent: ClothingBackpackHolding
id: OreBagOfHolding
result: OreBagOfHolding
completetime: 5
materials:
Steel: 2000
Silver: 750
Plasma: 1500
Uranium: 150
- type: latheRecipe
id: ClothingMaskWeldingGas

View File

@@ -1,178 +1,140 @@
# Ripley
# Base prototypes
- type: latheRecipe
id: RipleyHarness
result: RipleyHarness
abstract: true
id: BaseMechPartRecipe
category: Mech
completetime: 10
# Recipes
# Ripley
- type: latheRecipe
parent: BaseMechPartRecipe
id: RipleyHarness
result: RipleyHarness
materials:
Steel: 1500
Glass: 1200
- type: latheRecipe
parent: BaseMechPartRecipe
id: RipleyLArm
result: RipleyLArm
category: Mech
completetime: 10
materials:
Steel: 1000
Glass: 750
- type: latheRecipe
parent: RipleyLArm
id: RipleyLLeg
result: RipleyLLeg
category: Mech
completetime: 10
materials:
Steel: 1000
Glass: 750
- type: latheRecipe
parent: RipleyLLeg
id: RipleyRLeg
result: RipleyRLeg
category: Mech
completetime: 10
materials:
Steel: 1000
Glass: 750
- type: latheRecipe
parent: RipleyLArm
id: RipleyRArm
result: RipleyRArm
category: Mech
completetime: 10
materials:
Steel: 1000
Glass: 750
- type: latheRecipe
parent: BaseMechPartRecipe
id: MechEquipmentGrabber
result: MechEquipmentGrabber
category: Mech
completetime: 10
materials:
Steel: 500
Plastic: 200
# H.O.N.K.
- type: latheRecipe
parent: BaseMechPartRecipe
id: HonkerHarness
result: HonkerHarness
category: Mech
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
parent: BaseMechPartRecipe
id: HonkerLArm
result: HonkerLArm
category: Mech
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
Steel: 2000
Glass: 750
Bananium: 250
- type: latheRecipe
parent: HonkerLArm
id: HonkerLLeg
result: HonkerLLeg
category: Mech
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
parent: HonkerLLeg
id: HonkerRLeg
result: HonkerRLeg
category: Mech
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
parent: HonkerLArm
id: HonkerRArm
result: HonkerRArm
category: Mech
completetime: 10
materials:
Steel: 3000
Glass: 1200
Bananium: 500
- type: latheRecipe
parent: BaseMechPartRecipe
id: MechEquipmentHorn
result: MechEquipmentHorn
category: Mech
completetime: 10
materials:
Steel: 500
Bananium: 200
# HAMTR
- type: latheRecipe
parent: BaseMechPartRecipe
id: HamtrHarness
result: HamtrHarness
category: Mech
completetime: 10
materials:
Steel: 1200
Glass: 1000
- type: latheRecipe
parent: BaseMechPartRecipe
id: HamtrLArm
result: HamtrLArm
category: Mech
completetime: 10
materials:
Steel: 800
Glass: 600
- type: latheRecipe
parent: HamtrLArm
id: HamtrLLeg
result: HamtrLLeg
category: Mech
completetime: 10
materials:
Steel: 800
Glass: 600
- type: latheRecipe
parent: HamtrLLeg
id: HamtrRLeg
result: HamtrRLeg
category: Mech
completetime: 10
materials:
Steel: 800
Glass: 600
- type: latheRecipe
parent: HamtrLArm
id: HamtrRArm
result: HamtrRArm
category: Mech
completetime: 10
materials:
Steel: 800
Glass: 600
- type: latheRecipe
parent: BaseMechPartRecipe
id: MechEquipmentGrabberSmall
result: MechEquipmentGrabberSmall
category: Mech
completetime: 10
materials:
Steel: 400
Plastic: 100
# Vim
- type: latheRecipe
parent: BaseMechPartRecipe
id: VimHarness
result: VimHarness
category: Mech
completetime: 5
materials:
Steel: 500

View File

@@ -1,97 +1,85 @@
# Base Prototypes
- type: latheRecipe
abstract: true
id: BaseLightRecipe
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
abstract: true
id: BaseFauxTileRecipe
completetime: 1
materials:
Plastic: 100
# Recipes
## Lights
- type: latheRecipe
parent: BaseLightRecipe
id: LightTube
result: LightTube
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: LedLightTube
result: LedLightTube
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: SodiumLightTube
result: SodiumLightTube
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: ExteriorLightTube
result: ExteriorLightTube
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: LightBulb
result: LightBulb
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: LedLightBulb
result: LedLightBulb
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: DimLightBulb
result: DimLightBulb
category: Lights
completetime: 2
materials:
Steel: 50
Glass: 50
- type: latheRecipe
parent: BaseLightRecipe
id: GlowstickRed
result: GlowstickRed
category: Lights
completetime: 2
materials:
Plastic: 50
- type: latheRecipe
parent: GlowstickRed
id: Flare
result: Flare
category: Lights
completetime: 2
materials:
Plastic: 50
- type: latheRecipe
parent: BaseLightRecipe
id: FlashlightLantern
result: EmptyFlashlightLantern
category: Lights
completetime: 2
materials:
Steel: 100
Glass: 100
Plastic: 100
- type: latheRecipe
parent: BaseToolRecipe
id: FireExtinguisher
result: FireExtinguisher
category: Tools
completetime: 2
materials:
Steel: 200
@@ -112,10 +100,9 @@
Glass: 100
- type: latheRecipe
parent: BaseToolRecipe
id: NodeScanner
result: NodeScanner
category: Tools
completetime: 2
materials:
Steel: 100
Plastic: 50
@@ -160,39 +147,29 @@
Plastic: 100
- type: latheRecipe
parent: BaseFauxTileRecipe
id: FauxTileAstroGrass
result: FloorTileItemAstroGrass
completetime: 1
materials:
Plastic: 100
- type: latheRecipe
parent: BaseFauxTileRecipe
id: FauxTileMowedAstroGrass
result: FloorTileItemMowedAstroGrass
completetime: 1
materials:
Plastic: 100
- type: latheRecipe
parent: BaseFauxTileRecipe
id: FauxTileJungleAstroGrass
result: FloorTileItemJungleAstroGrass
completetime: 1
materials:
Plastic: 100
- type: latheRecipe
parent: BaseFauxTileRecipe
id: FauxTileAstroIce
result: FloorTileItemAstroIce
completetime: 1
materials:
Plastic: 100
- type: latheRecipe
parent: BaseFauxTileRecipe
id: FauxTileAstroSnow
result: FloorTileItemAstroSnow
completetime: 1
materials:
Plastic: 100
- type: latheRecipe
id: FloorGreenCircuit
@@ -202,11 +179,9 @@
Steel: 100
- type: latheRecipe
parent: FloorGreenCircuit
id: FloorBlueCircuit
result: FloorTileItemBCircuit4
completetime: 2
materials:
Steel: 100
- type: latheRecipe
id: FloorRedCircuit

View File

@@ -66,4 +66,4 @@
Steel: 600
Glass: 800
Plastic: 400
Gold: 100
Gold: 100

View File

@@ -1,34 +1,41 @@
# recipes should generally cost 1.5x to 2x of the biomass output of their mob
# Base prototypes
- type: latheRecipe
abstract: true
id: BaseCubeRecipe
completetime: 30
materials:
Biomass: 16
# Recipes
# recipes should generally cost 1.5x to 2x of the biomass output of their mob
- type: latheRecipe
parent: BaseCubeRecipe
id: MonkeyCube
result: MonkeyCube
completetime: 30
materials:
Biomass: 16
- type: latheRecipe
parent: BaseCubeRecipe
id: KoboldCube
result: KoboldCube
completetime: 30
materials:
Biomass: 16
- type: latheRecipe
parent: BaseCubeRecipe
id: CowCube
result: CowCube
completetime: 30
materials:
Biomass: 120
- type: latheRecipe
parent: BaseCubeRecipe
id: GoatCube
result: GoatCube
completetime: 30
materials:
Biomass: 35
- type: latheRecipe
parent: BaseCubeRecipe
id: MothroachCube
result: MothroachCube
completetime: 45 # prevent biblical floods
@@ -36,6 +43,7 @@
Biomass: 20 # a lot of materials wasted due to complex genetics
- type: latheRecipe
parent: BaseCubeRecipe
id: MouseCube
result: MouseCube
completetime: 15
@@ -43,21 +51,22 @@
Biomass: 12
- type: latheRecipe
parent: MouseCube
id: CockroachCube
result: CockroachCube
completetime: 15
materials:
Biomass: 16
- type: latheRecipe
parent: BaseCubeRecipe
id: SpaceCarpCube
result: SpaceCarpCube
completetime: 30
materials:
Biomass: 24
Plasma: 600
- type: latheRecipe
parent: BaseCubeRecipe
id: SpaceTickCube
result: SpaceTickCube
completetime: 15
@@ -66,9 +75,9 @@
Plasma: 300 # less biomass but more plasma
- type: latheRecipe
parent: BaseCubeRecipe
id: AbominationCube
result: AbominationCube
completetime: 30
materials: # abominations are slow and essentially worse than even carp
Biomass: 28
Plasma: 500 # more biomass but less plasma

View File

@@ -48,19 +48,18 @@
Silver: 100
- type: latheRecipe
parent: BaseToolRecipe
id: MiningDrill
result: MiningDrill
category: Tools
completetime: 3
materials:
Steel: 500
Plastic: 100
- type: latheRecipe
parent: MiningDrill
id: MiningDrillDiamond
result: MiningDrillDiamond
category: Tools
completetime: 3
materials:
Steel: 600
Plastic: 200

View File

@@ -1,363 +1,249 @@
# Base Prototypes
- type: latheRecipe
abstract: true
id: BaseTileRecipe
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
abstract: true
parent: BaseTileRecipe
id: BaseWoodTileRecipe
materials:
Wood: 25
- type: latheRecipe
abstract: true
parent: BaseTileRecipe
id: BaseConcreteTileRecipe
materials:
Steel: 25
Plastic: 25
# Recipes
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDark
result: FloorTileItemDark
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkDiagonalMini
result: FloorTileItemDarkDiagonalMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkDiagonal
result: FloorTileItemDarkDiagonal
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkHerringbone
result: FloorTileItemDarkHerringbone
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkMini
result: FloorTileItemDarkMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkMono
result: FloorTileItemDarkMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkPavement
result: FloorTileItemDarkPavement
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkPavementVertical
result: FloorTileItemDarkPavementVertical
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemDarkOffset
result: FloorTileItemDarkOffset
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelCheckerDark
result: FloorTileItemSteelCheckerDark
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteel
result: FloorTileItemSteel
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelOffset
result: FloorTileItemSteelOffset
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelDiagonalMini
result: FloorTileItemSteelDiagonalMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelDiagonal
result: FloorTileItemSteelDiagonal
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelHerringbone
result: FloorTileItemSteelHerringbone
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelMini
result: FloorTileItemSteelMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelMono
result: FloorTileItemSteelMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelPavement
result: FloorTileItemSteelPavement
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelPavementVertical
result: FloorTileItemSteelPavementVertical
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhite
result: FloorTileItemWhite
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteOffset
result: FloorTileItemWhiteOffset
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteDiagonalMini
result: FloorTileItemWhiteDiagonalMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteDiagonal
result: FloorTileItemWhiteDiagonal
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteHerringbone
result: FloorTileItemWhiteHerringbone
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteMini
result: FloorTileItemWhiteMini
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhiteMono
result: FloorTileItemWhiteMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhitePavement
result: FloorTileItemWhitePavement
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemWhitePavementVertical
result: FloorTileItemWhitePavementVertical
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelCheckerLight
result: FloorTileItemSteelCheckerLight
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
# Other steel
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemGratingMaint
result: FloorTileItemGratingMaint
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemTechmaint
result: FloorTileItemTechmaint
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
- type: latheRecipe
parent: BaseTileRecipe
id: FloorTileItemSteelMaint
result: FloorTileItemSteelMaint
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
# Wood
- type: latheRecipe
parent: BaseWoodTileRecipe
id: FloorTileItemWood
result: FloorTileItemWood
applyMaterialDiscount: false
completetime: 0.5
materials:
Wood: 25
- type: latheRecipe
parent: BaseWoodTileRecipe
id: FloorTileItemWoodLarge
result: FloorTileItemWoodLarge
applyMaterialDiscount: false
completetime: 0.5
materials:
Wood: 25
- type: latheRecipe
parent: BaseWoodTileRecipe
id: FloorTileItemWoodPattern
result: FloorTileItemWoodPattern
applyMaterialDiscount: false
completetime: 0.5
materials:
Wood: 25
# Concrete
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemConcrete
result: FloorTileItemConcrete
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemConcreteMono
result: FloorTileItemConcreteMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemConcreteSmooth
result: FloorTileItemConcreteSmooth
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemGrayConcrete
result: FloorTileItemGrayConcrete
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemGrayConcreteMono
result: FloorTileItemGrayConcreteMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemGrayConcreteSmooth
result: FloorTileItemGrayConcreteSmooth
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemOldConcrete
result: FloorTileItemOldConcrete
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemOldConcreteMono
result: FloorTileItemOldConcreteMono
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25
- type: latheRecipe
parent: BaseConcreteTileRecipe
id: FloorTileItemOldConcreteSmooth
result: FloorTileItemOldConcreteSmooth
applyMaterialDiscount: false
completetime: 0.5
materials:
Steel: 25
Plastic: 25

View File

@@ -2,35 +2,35 @@
id: SyndicateKobold
name: ghost-role-information-syndicate-kobold-reinforcement-name
description: ghost-role-information-syndicate-kobold-reinforcement-description
rules: ghost-role-information-rules-default-familiar
rules: ghost-role-information-syndicate-reinforcement-rules
entityPrototype: MobKoboldSyndicateAgent
- type: ghostRole
id: SyndicateKoboldNukeops
name: ghost-role-information-syndicate-kobold-reinforcement-name
description: ghost-role-information-syndicate-kobold-reinforcement-description
rules: ghost-role-information-rules-default-familiar
rules: ghost-role-information-nukeop-reinforcement-rules
entityPrototype: MobKoboldSyndicateAgentNukeops
- type: ghostRole
id: SyndicateMonkey
name: ghost-role-information-syndicate-monkey-reinforcement-name
description: ghost-role-information-syndicate-monkey-reinforcement-description
rules: ghost-role-information-rules-default-familiar
rules: ghost-role-information-syndicate-reinforcement-rules
entityPrototype: MobMonkeySyndicateAgent
- type: ghostRole
id: SyndicateMonkeyNukeops
name: ghost-role-information-syndicate-monkey-reinforcement-name
description: ghost-role-information-syndicate-monkey-reinforcement-description
rules: ghost-role-information-syndicate-monkey-reinforcement-name
rules: ghost-role-information-nukeop-reinforcement-rules
entityPrototype: MobMonkeySyndicateAgentNukeops
- type: ghostRole
id: SyndicateAgentMedic
name: ghost-role-information-syndicate-reinforcement-medic-name
description: ghost-role-information-syndicate-reinforcement-medic-description
rules: ghost-role-information-syndicate-monkey-reinforcement-rules
rules: ghost-role-information-syndicate-reinforcement-rules
entityPrototype: MobHumanSyndicateAgentMedic
iconPrototype: MedkitCombat
@@ -38,7 +38,7 @@
id: SyndicateAgentSpy
name: ghost-role-information-syndicate-reinforcement-spy-name
description: ghost-role-information-syndicate-reinforcement-spy-description
rules: ghost-role-information-syndicate-monkey-reinforcement-rules
rules: ghost-role-information-syndicate-reinforcement-rules
entityPrototype: MobHumanSyndicateAgentSpy
iconPrototype: ClothingMaskGasVoiceChameleon
@@ -46,6 +46,6 @@
id: SyndicateAgentThief
name: ghost-role-information-syndicate-reinforcement-thief-name
description: ghost-role-information-syndicate-reinforcement-thief-description
rules: ghost-role-information-syndicate-monkey-reinforcement-rules
rules: ghost-role-information-syndicate-reinforcement-rules
entityPrototype: MobHumanSyndicateAgentThief
iconPrototype: SyndicateJawsOfLife

View File

@@ -1,6 +1,6 @@
- type: species
id: Gingerbread
name: species-name-human
name: species-name-gingerbread
roundStart: false
prototype: MobGingerbread
sprites: MobGingerbreadSprites

View File

@@ -884,23 +884,6 @@
itemDrop: FloorTileItemSteel #This should probably be made null when it becomes possible to make it such, in SS13 prying destroyed tiles wouldn't give you anything.
heatCapacity: 10000
- type: tile
id: FloorSteelBurnt
name: tiles-steel-floor
sprite: /Textures/Tiles/steel_burnt.png
variants: 2
placementVariants:
- 1.0
- 1.0
baseTurf: Plating
isSubfloor: false
deconstructTools: [ Prying ]
footstepSounds:
collection: FootstepFloor
itemDrop: FloorTileItemSteel #Same case as FloorSteelDamaged, make it null when possible
heatCapacity: 10000
# Concrete
- type: tile
id: FloorConcrete

View File

@@ -25,17 +25,6 @@
friction: 0.3
heatCapacity: 10000
- type: tile
id: PlatingBurnt
name: tiles-plating
sprite: /Textures/Tiles/plating_burnt.png
baseTurf: Lattice
isSubfloor: true
footstepSounds:
collection: FootstepPlating
friction: 0.3
heatCapacity: 10000
- type: tile
id: PlatingAsteroid
name: tiles-asteroid-plating

View File

@@ -6,6 +6,10 @@
- type: tileAlias
id: CP14FloorWoodPlanksBig
target: CP14FloorOakWoodPlanksBig
- type: tileAlias
id: CP14FloorStonebricksWeather
target: FloorIce
### /CP14 UPD
- type: tileAlias
@@ -59,6 +63,8 @@
id: FloorAsteroidCoarseSandDug
target: FloorAsteroidSandDug
# 2023-09-09
- type: tileAlias
id: FloorGlassAlt
target: FloorGlass
@@ -66,3 +72,15 @@
- type: tileAlias
id: FloorRGlassAlt
target: FloorRGlass
# 2024-11-15
# Burnt tiles now exist, but they don't use the tiles system. They're decals.
# There's presently no way to add decals over existing tiles, so this will have to suffice for now.
- type: tileAlias
id: PlatingBurnt
target: PlatingDamaged
- type: tileAlias
id: FloorSteelBurnt
target: FloorSteelDamaged

View File

@@ -189,3 +189,11 @@
wires:
- !type:PowerWireAction
- !type:AiInteractWireAction
- type: wireLayout
id: BarSign
dummyWires: 2
wires:
- !type:PowerWireAction
- !type:AiInteractWireAction
- !type:AccessWireAction

View File

@@ -0,0 +1,36 @@
- type: entity
id: CP14ActionZLevelUp
name: Move up
description: Move up one Z-Level
components:
- type: InstantAction
checkCanInteract: false
icon:
sprite: _CP14/Actions/zLevel.rsi
state: up
event: !type:CP14ZLevelActionUp
- type: entity
id: CP14ActionZLevelDown
name: Move down
description: Move down one Z-Level
components:
- type: InstantAction
checkCanInteract: false
icon:
sprite: _CP14/Actions/zLevel.rsi
state: down
event: !type:CP14ZLevelActionDown
- type: entity
id: CP14ActionToggleRoofs
name: Toggle roofs
description: Show or hide roofs
components:
- type: InstantAction
clientExclusive: true
checkCanInteract: false
icon:
sprite: _CP14/Actions/zLevel.rsi
state: roof
event: !type:CP14ToggleRoofVisibilityAction

View File

@@ -229,6 +229,13 @@
- type: CanEnterCryostorage
- type: CP14IgnitionModifier
ignitionTimeModifier: 2.5
- type: CanMoveInAir # read: CanSwimInOcean lol
- type: MovementAlwaysTouching
- type: MovementSpeedModifier
weightlessAcceleration: 0.7 # Slow swimming
weightlessFriction: 3
weightlessModifier: 0.5
- type: CP14DamageableByMap
- type: entity

View File

@@ -12,6 +12,9 @@
drawdepth: FloorTiles
- type: Transform
anchored: true
- type: Tag
tags:
- Catwalk
- type: entity
id: CP14WoodenPallet

View File

@@ -0,0 +1,92 @@
- type: entity
id: CP14BaseRoof
categories: [ ForkFiltered ]
abstract: true
name: roof
description: A roof over your head to protect you from the heat of the sun or the weather.
placement:
mode: SnapgridCenter
components:
- type: PlacementReplacement
key: CP14Roof
- type: Clickable
- type: Physics
bodyType: Static
canCollide: false
- type: Transform
anchored: true
- type: BlockWeather
- type: CP14Roof
- type: Sprite
drawdepth: Effects
sprite: _CP14/Structures/Roof/test.rsi
- type: Icon
sprite: _CP14/Structures/Roof/test.rsi
state: full
- type: IconSmooth
key: CP14roof
base: roof
- type: entity
parent:
- CP14BaseRoof
- CP14BaseFlammableSpreading
id: CP14RoofWooden
name: wooden roof
components:
- type: Sprite
sprite: _CP14/Structures/Roof/wooden.rsi
- type: Icon
sprite: _CP14/Structures/Roof/wooden.rsi
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:PlaySoundBehavior
sound:
collection: WoodDestroy
- !type:SpawnEntitiesBehavior
spawn:
CP14WoodenPlanks1:
min: 1
max: 1
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: CP14RoofWooden
node: CP14RoofWooden
- type: entity
parent:
- CP14BaseRoof
id: CP14RoofStone
name: stone roof
components:
- type: Sprite
sprite: _CP14/Structures/Roof/stone.rsi
- type: Icon
sprite: _CP14/Structures/Roof/stone.rsi
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Rock
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 150
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/break_stone.ogg
params:
volume: -6
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: Construction
graph: CP14RoofStone
node: CP14RoofStone

View File

@@ -133,7 +133,7 @@
collection: WoodDestroy
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank1:
CP14WoodenPlanks1:
min: 1
max: 4
- !type:DoActsBehavior
@@ -163,7 +163,7 @@
collection: WoodDestroy
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank1:
CP14WoodenPlanks1:
min: 1
max: 4
- !type:DoActsBehavior

View File

@@ -37,6 +37,9 @@
- type: Construction
graph: CP14WallStonebrick
node: WallStonebrick
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Rock
- type: Destructible
thresholds:
- trigger:
@@ -48,6 +51,11 @@
CP14WallStonebrickCrushedMedium:
min: 1
max: 1
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/break_stone.ogg
params:
volume: -6
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: CP14WallpaperHolder

View File

@@ -1,6 +1,6 @@
- type: entity
id: CP14DungeonEntrance
name: dungeon entrance
name: stairway down
categories: [ HideSpawnMenu ]
description: The dark depths of the underworld are calling you.
placement:
@@ -13,17 +13,17 @@
- type: Physics
bodyType: Static
- type: Sprite
sprite: /Textures/_CP14/Structures/Dungeon/holes.rsi
sprite: /Textures/_CP14/Structures/Dungeon/ladders.rsi
drawdepth: FloorTiles
layers:
- state: hole_big
- state: ladder_big_top_part
- state: ladder
#- state: down
- type: Fixtures
fixtures:
portalFixture:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.48,0.25,0.48"
bounds: "-0.48,-0.48,0.48,-0.05"
mask:
- FullTileMask
layer:
@@ -36,16 +36,27 @@
- type: entity
parent: CP14DungeonEntrance
id: CP14DungeonExit
name: dungeon exit
name: stairway up
categories: [ HideSpawnMenu ]
description: A way out of the dark underworld into the overworld.
components:
- type: Sprite
noRot: true
sprite: /Textures/_CP14/Structures/Dungeon/holes.rsi
sprite: /Textures/_CP14/Structures/Dungeon/ladders_up.rsi
drawdepth: Mobs
layers:
- state: ladder_bottom_part
- state: ladder
#- state: top
- type: Fixtures
fixtures:
portalFixture:
shape:
!type:PhysShapeAabb
bounds: "-0.48,0.48,0.48,0.05"
mask:
- FullTileMask
layer:
- WallLayer
hard: false
- type: PointLight
color: White
radius: 3

View File

@@ -64,6 +64,11 @@
CP14Banker: [3, 4]
CP14Guard: [8, 8]
CP14GuardCommander: [1, 1]
- type: CP14StationZLevels
defaultMapLevel: 0
levels:
-1:
path: /Maps/_CP14/comoss_d.yml
- type: CP14StationKeyDistribution
keys:
- TavernDorms1

View File

@@ -10,6 +10,7 @@
- type: MapLight
ambientLightColor: "#BFEEFFFF"
- type: CP14MapFloorOccluder
- type: CP14MapDamage
- type: Parallax
parallax: CP14Ocean
- type: CP14CloudShadows

View File

@@ -9,6 +9,7 @@
- type: MapLight
ambientLightColor: "#BFEEFFFF"
- type: CP14MapFloorOccluder
- type: CP14MapDamage
- type: Parallax
parallax: CP14Ocean
- type: CP14CloudShadows

View File

@@ -109,12 +109,12 @@
- CP14WallStone
#Copper
- !type:BiomeEntityLayer
threshold: 0.5
threshold: 0.7
noise:
seed: 20
noiseType: OpenSimplex2
fractalType: FBm
frequency: 3
frequency: 2
allowedTiles:
- CP14FloorBase
entities:

View File

@@ -0,0 +1,29 @@
- type: constructionGraph
id: CP14RoofWooden
start: start
graph:
- node: start
edges:
- to: CP14RoofWooden
steps:
- material: CP14WoodenPlanks
amount: 2
doAfter: 2
- node: CP14RoofWooden
entity: CP14RoofWooden
- type: constructionGraph
id: CP14RoofStone
start: start
graph:
- node: start
edges:
- to: CP14RoofStone
steps:
- material: CP14Stone
amount: 2
doAfter: 2
- node: CP14RoofStone
entity: CP14RoofStone

View File

@@ -0,0 +1,31 @@
- type: construction
crystallPunkAllowed: true
name: Wooden roof
description: A roof over your head to protect you from the heat of the sun or the weather.
id: CP14RoofWooden
graph: CP14RoofWooden
startNode: start
targetNode: CP14RoofWooden
category: construction-category-structures
icon:
sprite: _CP14/Structures/Roof/wooden.rsi
state: full
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: true
- type: construction
crystallPunkAllowed: true
name: Stone roof
description: A roof over your head to protect you from the heat of the sun or the weather.
id: CP14RoofStone
graph: CP14RoofStone
startNode: start
targetNode: CP14RoofStone
category: construction-category-structures
icon:
sprite: _CP14/Structures/Roof/stone.rsi
state: full
objectType: Structure
placementMode: SnapgridCenter
canBuildInImpassable: true

View File

@@ -39,6 +39,7 @@
collection: FootstepAsteroid
heatCapacity: 10000
weather: true
suckReagents: true
color: "#452f27"
- type: tile
@@ -71,6 +72,7 @@
collection: FootstepSnow #TODO
heatCapacity: 10000
weather: true
suckReagents: true
color: "#dccd9e"
- type: tile
@@ -104,6 +106,7 @@
collection: FootstepGrass
heatCapacity: 10000
weather: true
suckReagents: true
color: "#4a613a"
- type: tile
@@ -137,6 +140,7 @@
collection: FootstepGrass
heatCapacity: 10000
weather: true
suckReagents: true
color: "#4a613a"
- type: tile
@@ -170,4 +174,5 @@
collection: FootstepGrass
heatCapacity: 10000
weather: true
suckReagents: true
color: "#4a613a"

View File

@@ -58,39 +58,6 @@
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: false
- type: tile
editorHidden: false
id: CP14FloorStonebricksWeather
name: cp14-tiles-stonebricks-weather
sprite: /Textures/_CP14/Tiles/Stonebricks/stonebricks.png
variants: 9
placementVariants:
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 101
edgeSprites:
SouthEast: /Textures/_CP14/Tiles/Stonebricks/single_edge_SE.png
NorthEast: /Textures/_CP14/Tiles/Stonebricks/single_edge_NE.png
NorthWest: /Textures/_CP14/Tiles/Stonebricks/single_edge_NW.png
SouthWest: /Textures/_CP14/Tiles/Stonebricks/single_edge_SW.png
South: /Textures/_CP14/Tiles/Stonebricks/double_edge_S.png
East: /Textures/_CP14/Tiles/Stonebricks/double_edge_E.png
North: /Textures/_CP14/Tiles/Stonebricks/double_edge_N.png
West: /Textures/_CP14/Tiles/Stonebricks/double_edge_W.png
baseTurf: CP14FloorFoundation
isSubfloor: false
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: true
- type: tile
@@ -116,7 +83,7 @@
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: false
weather: true
- type: tile
editorHidden: false
@@ -141,7 +108,7 @@
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: false
weather: true
- type: tile
editorHidden: false
@@ -166,7 +133,7 @@
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: false
weather: true
- type: tile
editorHidden: false
@@ -189,4 +156,4 @@
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: false
weather: true

View File

@@ -28,7 +28,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -59,7 +59,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -90,7 +90,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -121,7 +121,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
#broken
@@ -153,7 +153,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -183,7 +183,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -213,7 +213,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -243,7 +243,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
@@ -280,7 +280,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -311,7 +311,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -342,7 +342,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -373,7 +373,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
#broken
@@ -405,7 +405,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -435,7 +435,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -465,7 +465,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -495,7 +495,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
@@ -532,7 +532,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -563,7 +563,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -594,7 +594,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -625,7 +625,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
#broken
@@ -657,7 +657,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -687,7 +687,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -717,7 +717,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -747,7 +747,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
@@ -784,7 +784,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -815,7 +815,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -846,7 +846,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -877,7 +877,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
#broken
@@ -909,7 +909,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -939,7 +939,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -969,7 +969,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -999,7 +999,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
@@ -1036,7 +1036,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -1067,7 +1067,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -1098,7 +1098,7 @@
heatCapacity: 10000
deconstructTools: [ Prying ]
itemDrop: CP14WoodenPlanks1
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -1129,7 +1129,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned
#broken
@@ -1161,7 +1161,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBurned
- type: tile #Big
@@ -1191,7 +1191,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksBigBurned
- type: tile #Cruci
@@ -1221,7 +1221,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksCruciformBurned
- type: tile #Stairways
@@ -1251,7 +1251,7 @@
footstepSounds:
collection: FootstepWood
heatCapacity: 10000
weather: false
weather: true
burnedTile: CP14FloorWoodPlanksStairwaysBurned

View File

@@ -1 +1,337 @@
# Not used in CP14
- type: ambientMusic
id: Morgue
sound:
params:
volume: -12
collection: AmbienceSpooky
rules: NearMorgue
priority: 4
- type: ambientMusic
id: SpookyFog
sound:
params:
volume: -12
collection: AmbienceSpookyFog
rules: NearSpookyFog
priority: 5
- type: ambientMusic
id: Holy
sound:
params:
volume: -12
collection: AmbienceHoly
rules: NearPrayable
priority: 4
- type: ambientMusic
id: Train
sound:
params:
volume: -8
collection: AmbienceTrain
rules: NearTrain
priority: 4
# Departments
- type: ambientMusic
id: Medical
sound:
params:
volume: -12
collection: AmbienceMedical
rules: NearMedical
priority: 3
- type: ambientMusic
id: Engineering
sound:
params:
volume: -12
collection: AmbienceEngineering
rules: NearEngineering
priority: 3
# General areas
- type: ambientMusic
id: Maintenance
sound:
params:
volume: -12
collection: AmbienceMaintenance
rules: NearMaintenance
priority: 2
- type: ambientMusic
id: Space
sound:
params:
volume: -10
collection: AmbienceSpace
fadeIn: true
interruptable: true
rules: InSpace
priority: 1
- type: ambientMusic
id: Mining
sound:
params:
volume: -12
collection: AmbienceMining
rules: OnMapGrid
fadeIn: true
interruptable: true
priority: 1
## Fallback if nothing else found
- type: ambientMusic
id: General
sound:
params:
volume: -12
collection: AmbienceGeneral
rules: AlwaysTrue
# Sound collections
- type: soundCollection
id: AmbienceEngineering
files:
- /Audio/Ambience/ambiatmos.ogg
- /Audio/Ambience/ambiatmos2.ogg
- /Audio/Ambience/ambisin1.ogg
- /Audio/Ambience/ambisin2.ogg
- /Audio/Ambience/ambisin3.ogg
- /Audio/Ambience/ambisin4.ogg
- /Audio/Ambience/ambitech.ogg
- /Audio/Ambience/ambitech2.ogg
- /Audio/Ambience/ambitech3.ogg
- type: soundCollection
id: AmbienceGeneral
files:
- /Audio/Ambience/ambigen1.ogg
- /Audio/Ambience/ambigen3.ogg
- /Audio/Ambience/ambigen4.ogg
- /Audio/Ambience/ambigen5.ogg
- /Audio/Ambience/ambigen6.ogg
- /Audio/Ambience/ambigen7.ogg
- /Audio/Ambience/ambigen8.ogg
- /Audio/Ambience/ambigen9.ogg
- /Audio/Ambience/ambigen10.ogg
- /Audio/Ambience/ambigen11.ogg
- /Audio/Ambience/ambigen12.ogg
- /Audio/Ambience/ambigen14.ogg
- /Audio/Ambience/ambigen15.ogg
- type: soundCollection
id: AmbienceHoly
files:
- /Audio/Ambience/ambicha1.ogg
- /Audio/Ambience/ambicha2.ogg
- /Audio/Ambience/ambicha3.ogg
- /Audio/Ambience/ambicha4.ogg
- /Audio/Ambience/ambiholy.ogg
- /Audio/Ambience/ambiholy2.ogg
- /Audio/Ambience/ambiholy3.ogg
- type: soundCollection
id: AmbienceMaintenance
files:
- /Audio/Ambience/ambimaint1.ogg
- /Audio/Ambience/ambimaint2.ogg
- /Audio/Ambience/ambimaint3.ogg
- /Audio/Ambience/ambimaint4.ogg
- /Audio/Ambience/ambimaint5.ogg
- /Audio/Ambience/ambitech2.ogg
- /Audio/Voice/Misc/lowHiss1.ogg
- /Audio/Voice/Misc/lowHiss2.ogg
- /Audio/Voice/Misc/lowHiss3.ogg
- /Audio/Voice/Misc/lowHiss4.ogg
- /Audio/Ambience/maintambience.ogg
- type: soundCollection
id: AmbienceMedical
files:
- /Audio/Ambience/ambinice.ogg
- type: soundCollection
id: AmbienceMining
files:
- /Audio/Ambience/ambicave.ogg
- /Audio/Ambience/ambidanger.ogg
- /Audio/Ambience/ambidanger2.ogg
- /Audio/Ambience/ambilava1.ogg
- /Audio/Ambience/ambilava2.ogg
- /Audio/Ambience/ambilava3.ogg
- /Audio/Ambience/ambimaint1.ogg
- /Audio/Ambience/ambimine.ogg
- /Audio/Ambience/ambiruin.ogg
- /Audio/Ambience/ambiruin2.ogg
- /Audio/Ambience/ambiruin3.ogg
- /Audio/Ambience/ambiruin4.ogg
- /Audio/Ambience/ambiruin5.ogg
- /Audio/Ambience/ambiruin6.ogg
- /Audio/Ambience/ambiruin7.ogg
- /Audio/Ambience/voyage_neverending.ogg
- /Audio/Ambience/unanchored.ogg
- type: soundCollection
id: AmbienceRuins
files:
- /Audio/Ambience/ambicave.ogg
- /Audio/Ambience/ambidanger.ogg
- /Audio/Ambience/ambidanger2.ogg
- /Audio/Ambience/ambimaint1.ogg
- /Audio/Ambience/ambimine.ogg
- /Audio/Ambience/ambimystery.ogg
- /Audio/Ambience/ambiruin.ogg
- /Audio/Ambience/ambiruin2.ogg
- /Audio/Ambience/ambiruin3.ogg
- /Audio/Ambience/ambiruin4.ogg
- /Audio/Ambience/ambiruin5.ogg
- /Audio/Ambience/ambiruin6.ogg
- /Audio/Ambience/ambiruin7.ogg
- type: soundCollection
id: AmbienceSpace
files:
- /Audio/Ambience/constellations.ogg
- /Audio/Ambience/starlight.ogg
- /Audio/Ambience/drifting.ogg
- /Audio/Ambience/spookyspace1.ogg
- /Audio/Ambience/spookyspace2.ogg
- /Audio/Ambience/ambispace2.ogg
- /Audio/Lobby/title2.ogg
- type: soundCollection
id: AmbienceSpooky
files:
- /Audio/Ambience/ambimo1.ogg
- /Audio/Ambience/ambimo2.ogg
- /Audio/Ambience/ambimystery.ogg
- /Audio/Ambience/ambiodd.ogg
- /Audio/Ambience/ambiruin6.ogg
- /Audio/Ambience/ambiruin7.ogg
- type: soundCollection
id: AmbienceTrain
files:
- /Audio/Ambience/ambitrain1.ogg
- /Audio/Ambience/ambitrain2.ogg
- /Audio/Ambience/ambitrain3.ogg
- /Audio/Ambience/ambiruin3.ogg
- /Audio/Ambience/ambiruin5.ogg
- /Audio/Ambience/ambiruin6.ogg
- type: soundCollection
id: AmbienceSpookyFog
files:
- /Audio/Ambience/spookyspace1.ogg
- /Audio/Ambience/spookyspace2.ogg
- /Audio/Ambience/ambimo2.ogg
- /Audio/Ambience/ambilava1.ogg
- /Audio/Ambience/ambilava2.ogg
- /Audio/Ambience/ambiruin2.ogg
- /Audio/Ambience/ambiruin3.ogg
- /Audio/Ambience/ambiruin4.ogg
- /Audio/Ambience/ambiruin5.ogg
- /Audio/Ambience/ambiruin6.ogg
- /Audio/Ambience/ambiruin7.ogg
- /Audio/Ambience/ambidanger.ogg
- /Audio/Ambience/ambidanger2.ogg
- /Audio/Ambience/ambimine.ogg
## Background noise on station, separate to ambient music.
- type: soundCollection
id: AmbienceStation
files:
- /Audio/Ambience/shipambience.ogg
# Rules
#- type: rules
# id: AlwaysTrue
# rules:
# - !type:AlwaysTrueRule
- type: rules
id: InSpace
rules:
- !type:InSpaceRule
- !type:GridInRangeRule
inverted: true
range: 3
# TODO
- type: rules
id: NearEngineering
rules:
- !type:NearbyAccessRule
access:
- Engineering
range: 2.5
- type: rules
id: NearMaintenance
rules:
- !type:NearbyTilesPercentRule
ignoreAnchored: true
percent: 0.25
tiles:
- Plating
range: 2
- type: rules
id: NearTrain
rules:
- !type:NearbyTilesPercentRule
ignoreAnchored: true
percent: 0.05
tiles:
- TrainLattice
range: 4
- type: rules
id: NearMedical
rules:
- !type:NearbyTilesPercentRule
ignoreAnchored: true
percent: 0.5
tiles:
- FloorWhite
range: 3
- type: rules
id: NearPrayable
rules:
- !type:NearbyComponentsRule
anchored: true
components:
- type: Prayable
range: 5
- type: rules
id: NearMorgue
rules:
- !type:NearbyComponentsRule
anchored: true
count: 2
components:
- type: Morgue
range: 3
- type: rules
id: NearSpookyFog
rules:
- !type:NearbyEntitiesRule
count: 5
whitelist:
tags:
- SpookyFog
range: 4
- type: rules
id: OnMapGrid
rules:
- !type:OnMapGridRule