| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625 |
- - type: entityTable
- id: BasicCalmEventsTable
- table: !type:AllSelector # we need to pass a list of rules, since rules have further restrictions to consider via StationEventComp
- children:
- - id: AnomalySpawn
- - id: BluespaceArtifact
- - id: BluespaceLocker
- - id: BreakerFlip
- - id: BureaucraticError
- - id: ClericalError
- - id: CockroachMigration
- - id: GasLeak
- - id: GreytideVirus
- - id: IonStorm # its calm like 90% of the time smh
- - id: KudzuGrowth
- - id: MassHallucinations
- - id: MimicVendorRule
- - id: MouseMigration
- - id: PowerGridCheck
- - id: RandomSentience
- - id: SlimesSpawn
- - id: SolarFlare
- - id: SnakeSpawn
- - id: SpiderClownSpawn
- - id: SpiderSpawn
- - id: VentClog
- - type: entityTable
- id: BasicAntagEventsTable
- table: !type:AllSelector # we need to pass a list of rules, since rules have further restrictions to consider via StationEventComp
- children:
- - id: ClosetSkeleton
- - id: DragonSpawn
- - id: KingRatMigration
- - id: NinjaSpawn
- - id: RevenantSpawn
- - id: SleeperAgents
- - id: ZombieOutbreak
- - id: LoneOpsSpawn
- - id: DerelictCyborgSpawn
- - id: WizardSpawn
- - type: entity
- id: BaseStationEvent
- parent: BaseGameRule
- abstract: true
- components:
- - type: GameRule
- delay:
- min: 10
- max: 20
- - type: entity
- id: BaseStationEventShortDelay
- parent: BaseGameRule
- abstract: true
- components:
- - type: GameRule
- delay:
- min: 10
- max: 20
- - type: entity
- id: BaseStationEventLongDelay
- parent: BaseGameRule
- abstract: true
- components:
- - type: GameRule
- delay:
- min: 40
- max: 60
- - type: entity
- id: AnomalySpawn
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncementColor: "#18abf5"
- startAudio:
- path: /Audio/Announcements/announce.ogg
- weight: 8
- duration: 35
- - type: AnomalySpawnRule
- - type: entity
- id: BluespaceArtifact
- parent: BaseStationEventShortDelay
- components:
- - type: GameRule
- delay:
- min: 30
- max: 30
- - type: StationEvent
- startAnnouncementColor: "#18abf5"
- startAudio:
- path: /Audio/Announcements/announce.ogg
- weight: 8
- duration: 35
- - type: BluespaceArtifactRule
- - type: entity
- id: BluespaceLocker
- parent: BaseGameRule
- components:
- - type: StationEvent
- weight: 2
- reoccurrenceDelay: 5
- earliestStart: 1
- duration: 1
- - type: BluespaceLockerRule
- - type: entity
- id: BreakerFlip
- parent: BaseGameRule
- components:
- - type: StationEvent
- weight: 7
- duration: 1
- minimumPlayers: 15
- - type: BreakerFlipRule
- - type: entity
- id: BureaucraticError
- parent: BaseGameRule
- components:
- - type: StationEvent
- startAnnouncement: station-event-bureaucratic-error-announcement
- minimumPlayers: 25
- weight: 3
- duration: 1
- - type: BureaucraticErrorRule
- ignoredJobs:
- - StationAi
- - type: entity
- id: ClericalError
- parent: BaseGameRule
- components:
- - type: StationEvent
- startAnnouncement: station-event-clerical-error-announcement
- minimumPlayers: 15
- weight: 5
- duration: 1
- - type: ClericalErrorRule
- - type: entity
- parent: BaseGameRule
- id: ClosetSkeleton
- components:
- - type: StationEvent
- weight: 5
- duration: 1
- minimumPlayers: 10
- - type: RandomEntityStorageSpawnRule
- prototype: MobSkeletonCloset
- - type: entity
- parent: BaseGameRule
- id: DragonSpawn
- components:
- - type: StationEvent
- weight: 6.5
- earliestStart: 40
- reoccurrenceDelay: 20
- minimumPlayers: 20
- duration: null
- - type: SpaceSpawnRule
- spawnDistance: 0
- - type: AntagSpawner
- prototype: MobDragon
- - type: DragonRule
- - type: AntagObjectives
- objectives:
- - CarpRiftsObjective
- - DragonSurviveObjective
- - type: AntagSelection
- agentName: dragon-round-end-agent-name
- definitions:
- - spawnerPrototype: SpawnPointGhostDragon
- min: 1
- max: 1
- pickPlayer: false
- mindRoles:
- - MindRoleDragon
- - type: entity
- parent: BaseGameRule
- id: NinjaSpawn
- components:
- - type: StationEvent
- weight: 6
- duration: null
- earliestStart: 30
- reoccurrenceDelay: 20
- minimumPlayers: 30
- - type: SpaceSpawnRule
- - type: AntagLoadProfileRule
- - type: AntagObjectives
- objectives:
- - StealResearchObjective
- - DoorjackObjective
- - SpiderChargeObjective
- - TerrorObjective
- - MassArrestObjective
- - NinjaSurviveObjective
- - type: AntagSelection
- agentName: ninja-round-end-agent-name
- definitions:
- - spawnerPrototype: SpawnPointGhostSpaceNinja
- min: 1
- max: 1
- pickPlayer: false
- startingGear: SpaceNinjaGear
- roleLoadout:
- - RoleSurvivalEVA
- briefing:
- text: ninja-role-greeting
- color: Green
- sound: /Audio/Misc/ninja_greeting.ogg
- components:
- - type: SpaceNinja
- - type: NpcFactionMember
- factions:
- - Syndicate
- - type: AutoImplant
- implants:
- - DeathAcidifierImplant
- - type: RandomMetadata
- nameSegments:
- - NamesNinjaTitle
- - NamesNinja
- mindRoles:
- - MindRoleNinja
- - type: entity
- parent: BaseGameRule
- id: RevenantSpawn
- components:
- - type: StationEvent
- weight: 7.5
- duration: 1
- earliestStart: 45
- minimumPlayers: 20
- - type: RandomSpawnRule
- prototype: MobRevenant
- - type: entity
- parent: BaseWizardRule
- id: WizardSpawn
- components:
- - type: StationEvent
- weight: 1 # rare
- duration: 1
- earliestStart: 30
- reoccurrenceDelay: 60
- minimumPlayers: 10
- - type: AntagSelection
- agentName: wizard-round-end-name
- definitions:
- - spawnerPrototype: SpawnPointGhostWizard
- min: 1
- max: 1
- playerRatio: 1
- pickPlayer: false
- startingGear: WizardBlueGear
- roleLoadout:
- - RoleSurvivalExtended
- briefing:
- text: wizard-role-greeting
- color: Turquoise
- # TODO: Need Wizard Start sound
- #sound: "/Audio/Ambience/Antag/wizard_start.ogg"
- # TODO: WizardComp as needed
- components:
- - type: NpcFactionMember
- factions:
- - Wizard
- - type: RandomMetadata
- nameSegments:
- - NamesWizardFirst
- - NamesWizardLast
- mindRoles:
- - MindRoleWizard
- # disabled until event is rewritten to be more interesting
- #- type: entity
- # id: FalseAlarm
- # parent: BaseGameRule
- # components:
- # - type: StationEvent
- # weight: 15
- # duration: 1
- # - type: FalseAlarmRule
- - type: entity
- id: GasLeak
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-gas-leak-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- endAnnouncement: station-event-gas-leak-end-announcement
- weight: 8
- - type: GasLeakRule
- - type: entity
- id: KudzuGrowth
- parent: BaseStationEventLongDelay
- components:
- - type: StationEvent
- earliestStart: 15
- minimumPlayers: 15
- weight: 7
- duration: 240
- - type: KudzuGrowthRule
- - type: entity
- id: PowerGridCheck
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- weight: 5
- startAnnouncement: station-event-power-grid-check-start-announcement
- endAnnouncement: station-event-power-grid-check-end-announcement
- startAudio:
- path: /Audio/Announcements/power_off.ogg
- params:
- volume: -4
- duration: 60
- maxDuration: 120
- - type: PowerGridCheckRule
- - type: entity
- parent: BaseGameRule
- id: SolarFlare
- components:
- - type: StationEvent
- weight: 8
- startAnnouncement: station-event-solar-flare-start-announcement
- endAnnouncement: station-event-solar-flare-end-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- duration: 120
- maxDuration: 240
- - type: SolarFlareRule
- onlyJamHeadsets: true
- affectedChannels:
- - Common
- extraChannels:
- - Command
- - Engineering
- - Medical
- - Science
- - Security
- - Service
- - Supply
- extraCount: 2
- lightBreakChancePerSecond: 0.0003
- doorToggleChancePerSecond: 0.001
- - type: entity
- id: VentClog
- parent: BaseStationEventLongDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-vent-clog-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- earliestStart: 15
- minimumPlayers: 15
- weight: 5
- duration: 60
- - type: VentClogRule
- - type: entity
- id: SlimesSpawn
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-vent-creatures-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- earliestStart: 20
- minimumPlayers: 15
- weight: 5
- duration: 60
- - type: VentCrittersRule
- entries:
- - id: MobAdultSlimesBlueAngry
- prob: 0.02
- - id: MobAdultSlimesGreenAngry
- prob: 0.02
- - id: MobAdultSlimesYellowAngry
- prob: 0.02
- - type: entity
- id: SnakeSpawn
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-vent-creatures-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- earliestStart: 20
- minimumPlayers: 15
- weight: 5
- duration: 60
- - type: VentCrittersRule
- entries:
- - id: MobPurpleSnake
- prob: 0.02
- - id: MobSmallPurpleSnake
- prob: 0.02
- - id: MobCobraSpace
- prob: 0.02
- - type: entity
- id: SpiderSpawn
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-vent-creatures-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- earliestStart: 20
- minimumPlayers: 15
- weight: 5
- duration: 60
- - type: VentCrittersRule
- entries:
- - id: MobGiantSpiderAngry
- prob: 0.05
- - type: entity
- id: SpiderClownSpawn
- parent: BaseStationEventShortDelay
- components:
- - type: StationEvent
- startAnnouncement: station-event-vent-creatures-start-announcement
- startAudio:
- path: /Audio/Announcements/attention.ogg
- earliestStart: 20
- minimumPlayers: 20
- weight: 1.5
- duration: 60
- - type: VentCrittersRule
- entries:
- - id: MobClownSpider
- prob: 0.05
- - type: entity
- id: ZombieOutbreak
- parent: BaseGameRule
- components:
- - type: StationEvent
- earliestStart: 90
- minimumPlayers: 40
- weight: 1 # Zombies was happening basically every single survival round, so now it's super rare
- duration: 1
- - type: ZombieRule
- - type: AntagSelection
- definitions:
- - prefRoles: [ InitialInfected ]
- max: 3
- playerRatio: 10
- blacklist:
- components:
- - ZombieImmune
- - AntagImmune
- briefing:
- text: zombie-patientzero-role-greeting
- color: Plum
- sound: "/Audio/Ambience/Antag/zombie_start.ogg"
- components:
- - type: PendingZombie #less time to prepare than normal
- minInitialInfectedGrace: 300
- maxInitialInfectedGrace: 450
- - type: ZombifyOnDeath
- - type: IncurableZombie
- - type: InitialInfected
- mindRoles:
- - MindRoleInitialInfected
- - type: entity
- parent: BaseNukeopsRule
- id: LoneOpsSpawn
- components:
- - type: StationEvent
- earliestStart: 35
- weight: 5.5
- minimumPlayers: 20
- duration: 1
- - type: RuleGrids
- - type: LoadMapRule
- gridPath: /Maps/Shuttles/ShuttleEvent/striker.yml
- - type: NukeopsRule
- roundEndBehavior: Nothing
- - type: AntagSelection
- definitions:
- - spawnerPrototype: SpawnPointLoneNukeOperative
- min: 1
- max: 1
- pickPlayer: false
- startingGear: SyndicateLoneOperativeGearFull
- roleLoadout:
- - RoleSurvivalNukie
- components:
- - type: NukeOperative
- - type: RandomMetadata
- nameSegments:
- - NamesSyndicatePrefix
- - NamesSyndicateNormal
- - type: NpcFactionMember
- factions:
- - Syndicate
- mindRoles:
- - MindRoleNukeops
- - type: entity
- parent: BaseTraitorRule
- id: SleeperAgents
- components:
- - type: StationEvent
- earliestStart: 30
- weight: 8
- minimumPlayers: 15
- maxOccurrences: 1 # can only happen once per round
- startAnnouncement: station-event-communication-interception
- startAudio:
- path: /Audio/Announcements/intercept.ogg
- duration: null # the rule has to last the whole round not 1 second
- occursDuringRoundEnd: false
- - type: AlertLevelInterceptionRule
- - type: AntagSelection
- definitions:
- - prefRoles: [ TraitorSleeper ]
- fallbackRoles: [ Traitor ]
- min: 1
- max: 2
- playerRatio: 10
- blacklist:
- components:
- - AntagImmune
- mindRoles:
- - MindRoleTraitorSleeper
- - type: entity
- id: MassHallucinations
- parent: BaseGameRule
- components:
- - type: StationEvent
- weight: 7
- duration: 150
- maxDuration: 300
- reoccurrenceDelay: 30
- - type: MassHallucinationsRule
- minTimeBetweenIncidents: 0.1
- maxTimeBetweenIncidents: 300
- maxSoundDistance: 7
- sounds:
- collection: Paracusia
- - type: entity
- parent: BaseGameRule
- id: IonStorm
- components:
- - type: StationEvent
- weight: 8
- reoccurrenceDelay: 20
- duration: 1
- - type: IonStormRule
- - type: entity
- id: MimicVendorRule
- parent: BaseGameRule
- components:
- - type: StationEvent
- earliestStart: 0
- minimumPlayers: 20
- 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
|