+- type: entity
+ parent: Bookshelf
+ id: BookshelfFilled
+ suffix: random filled
+ components:
+ - type: EntityTableContainerFill
+ containers:
+ storagebase: !type:NestedSelector
+ tableId: BookshelfEntityTable
+
+# Entity tables
- type: entityTable
id: BookshelfEntityTable
table: !type:AllSelector
amount: !type:RangeNumberSelector
range: 0, 4
# Guidebooks
- - !type:GroupSelector
- children:
- - id: BookBartendersManual
- - id: BookChemicalCompendium
- - id: BookEngineersHandbook
- - id: BookHowToCookForFortySpaceman
- - id: BookHowToKeepStationClean
- - id: BookHowToRockAndStone
- - id: BookHowToSurvive
- - id: BookLeafLoversSecret
- - id: BookMedicalReferenceBook
- - id: BookScientistsGuidebook
- - id: BookSecurity
- - id: BookSpaceEncyclopedia
- - id: BookSpaceLaw
- - id: BookTheBookOfControl
+ - !type:NestedSelector
+ tableId: RandomGuidebookTable
# Handwritten books
- - !type:GroupSelector
+ - !type:NestedSelector
rolls: !type:RangeNumberSelector
range: 0, 2
- children:
- - id: BookAurora
- - id: BookCafe
- - id: BookEarth
- - id: BookFeather
- - id: BookIanAntarctica
- - id: BookIanArctic
- - id: BookIanCity
- - id: BookIanDesert
- - id: BookIanLostWolfPup
- - id: BookIanMountain
- - id: BookIanOcean
- - id: BookIanRanch
- - id: BookInspiration
- - id: BookJourney
- - id: BookMap
- - id: BookMedicalOfficer
- - id: BookMorgue
- - id: BookNames
- - id: BookNarsieLegend
- - id: BookPossum
- - id: BookRufus
- - id: BookSlothClownMMD
- - id: BookSlothClownPranks
- - id: BookSlothClownSSS
- - id: BookStruck
- - id: BookSun
- - id: BookTemple
- - id: BookTruth
- - id: BookWatched
- - id: BookWorld
+ tableId: RandomHandwrittenBookTable
-- type: entity
- id: BookshelfFilled
- parent: Bookshelf
- suffix: random filled
- components:
- - type: EntityTableContainerFill
- containers:
- storagebase: !type:NestedSelector
- tableId: BookshelfEntityTable
+- type: entityTable
+ id: RandomHandwrittenBookTable
+ table: !type:GroupSelector
+ children:
+ - id: BookAurora
+ - id: BookCafe
+ - id: BookEarth
+ - id: BookFeather
+ - id: BookIanAntarctica
+ - id: BookIanArctic
+ - id: BookIanCity
+ - id: BookIanDesert
+ - id: BookIanLostWolfPup
+ - id: BookIanMountain
+ - id: BookIanOcean
+ - id: BookIanRanch
+ - id: BookInspiration
+ - id: BookJourney
+ - id: BookMap
+ - id: BookMedicalOfficer
+ - id: BookMorgue
+ - id: BookNames
+ - id: BookNarsieLegend
+ - id: BookPossum
+ - id: BookRufus
+ - id: BookSlothClownMMD
+ - id: BookSlothClownPranks
+ - id: BookSlothClownSSS
+ - id: BookStruck
+ - id: BookSun
+ - id: BookTemple
+ - id: BookTruth
+ - id: BookWatched
+ - id: BookWorld
+
+- type: entityTable
+ id: RandomGuidebookTable
+ table: !type:GroupSelector
+ children:
+ - id: BookBartendersManual
+ - id: BookChemicalCompendium
+ - id: BookEngineersHandbook
+ - id: BookHowToCookForFortySpaceman
+ - id: BookHowToKeepStationClean
+ - id: BookHowToRockAndStone
+ - id: BookHowToSurvive
+ - id: BookLeafLoversSecret
+ - id: BookMedicalReferenceBook
+ - id: BookScientistsGuidebook
+ - id: BookSecurity
+ - id: BookSpaceEncyclopedia
+ - id: BookSpaceLaw
+ - id: BookTheBookOfControl
+
+- type: entityTable
+ id: RandomBookTable
+ table: !type:GroupSelector
+ children:
+ - id: BookRandomStory
+ - !type:NestedSelector
+ tableId: RandomGuidebookTable
+ - !type:NestedSelector
+ tableId: RandomHandwrittenBookTable
- state: green
- sprite: Objects/Consumable/Drinks/dr_gibb.rsi
state: icon
- - type: RandomSpawner
- prototypes:
- - DrinkColaBottleFull
- - DrinkSpaceMountainWindBottleFull
- - DrinkSpaceUpBottleFull
- - DrinkWaterBottleFull
- - DrinkColaCan
- - DrinkIcedTeaCan
- - DrinkLemonLimeCan
- - DrinkLemonLimeCranberryCan
- - DrinkGrapeCan
- - DrinkRootBeerCan
- - DrinkSodaWaterCan
- - DrinkSpaceMountainWindCan
- - DrinkSpaceUpCan
- - DrinkStarkistCan
- - DrinkTonicWaterCan
- - DrinkFourteenLokoCan
- - DrinkChangelingStingCan
- - DrinkDrGibbCan
- - DrinkEnergyDrinkCan
- - DrinkShamblersJuiceCan
- - DrinkSolDryCan
- - DrinkPwrGameCan
- - DrinkHotCoco
- - DrinkHotCoffee
- - DrinkCafeLatte
- - DrinkTeacup
- - DrinkGreenTea
- - DrinkWaterCup
- - DrinkBeerCan
- - DrinkWineCan
- chance: 0.8
- offset: 0.0
- #rare
- rarePrototypes:
- - DrinkNukieCan
- - DrinkLean
- rareChance: 0.01
+ - type: EntityTableSpawner
+ table: !type:NestedSelector
+ tableId: RandomAllSodaTable
+ prob: 0.8
+
+- type: entityTable
+ id: RandomAllSodaTable
+ table: !type:GroupSelector
+ children:
+ - !type:NestedSelector
+ tableId: RandomCommonSodaTable
+ weight: 0.95
+ - !type:NestedSelector
+ tableId: RandomRareSodaTable
+ weight: 0.05
+
+- type: entityTable
+ id: RandomCommonSodaTable
+ table: !type:GroupSelector
+ children:
+ - id: DrinkBeerCan
+ - id: DrinkCafeLatte
+ - id: DrinkChangelingStingCan
+ - id: DrinkColaBottleFull
+ - id: DrinkColaCan
+ - id: DrinkDrGibbCan
+ - id: DrinkEnergyDrinkCan
+ - id: DrinkFourteenLokoCan
+ - id: DrinkGrapeCan
+ - id: DrinkGreenTea
+ - id: DrinkHotCoco
+ - id: DrinkHotCoffee
+ - id: DrinkIcedTeaCan
+ - id: DrinkLemonLimeCan
+ - id: DrinkLemonLimeCranberryCan
+ - id: DrinkPwrGameCan
+ - id: DrinkRootBeerCan
+ - id: DrinkShamblersJuiceCan
+ - id: DrinkSodaWaterCan
+ - id: DrinkSolDryCan
+ - id: DrinkSpaceMountainWindBottleFull
+ - id: DrinkSpaceMountainWindCan
+ - id: DrinkSpaceUpBottleFull
+ - id: DrinkSpaceUpCan
+ - id: DrinkStarkistCan
+ - id: DrinkTeacup
+ - id: DrinkTonicWaterCan
+ - id: DrinkWaterBottleFull
+ - id: DrinkWaterCup
+ - id: DrinkWineCan
+
+- type: entityTable
+ id: RandomRareSodaTable
+ table: !type:GroupSelector
+ children:
+ - id: DrinkNukieCan
+ - id: DrinkLean
- state: red
- sprite: Objects/Consumable/Food/snacks.rsi
state: cheesiehonkers
- - type: RandomSpawner
- #small item
- prototypes:
- - FoodSnackBoritos
- - FoodSnackCheesie
- - FoodSnackChips
- - FoodSnackChocolate
- - FoodSnackEnergy
- - FoodSnackChocolateBar
- - FoodSnackPopcorn
- - FoodSnackRaisins
- - FoodSnackSus
- - FoodSnackSyndi
- - FoodSnackChowMein
- - FoodSnackDanDanNoodles
- - FoodSnackCookieFortune
- - FoodSnackNutribrick
- - FoodSnackMREBrownie
- - FoodFrozenSandwich
- - FoodFrozenSandwichStrawberry
- - FoodFrozenFreezy
- - FoodFrozenSundae
- - FoodFrozenCornuto
- - FoodFrozenPopsicleOrange
- - FoodFrozenPopsicleBerry
- - FoodFrozenPopsicleJumbo
- - FoodFrozenSnowcone
- - FoodFrozenSnowconeBerry
- - FoodFrozenSnowconeFruit
- - FoodFrozenSnowconeClown
- - FoodFrozenSnowconeMime
- - FoodFrozenSnowconeRainbow
- - FoodSnackPistachios
- - FoodSnackSemki
- chance: 0.8
- offset: 0.0
+ - type: EntityTableSpawner
+ table: !type:NestedSelector
+ tableId: RandomSnackTable
+ prob: 0.8
+
+- type: entityTable
+ id: RandomSnackTable
+ table: !type:GroupSelector
+ children:
+ - id: FoodFrozenCornuto
+ - id: FoodFrozenFreezy
+ - id: FoodFrozenPopsicleBerry
+ - id: FoodFrozenPopsicleJumbo
+ - id: FoodFrozenPopsicleOrange
+ - id: FoodFrozenSandwich
+ - id: FoodFrozenSandwichStrawberry
+ - id: FoodFrozenSnowcone
+ - id: FoodFrozenSnowconeBerry
+ - id: FoodFrozenSnowconeClown
+ - id: FoodFrozenSnowconeFruit
+ - id: FoodFrozenSnowconeMime
+ - id: FoodFrozenSnowconeRainbow
+ - id: FoodFrozenSundae
+ - id: FoodSnackBoritos
+ - id: FoodSnackCheesie
+ - id: FoodSnackChips
+ - id: FoodSnackChocolate
+ - id: FoodSnackChocolateBar
+ - id: FoodSnackChowMein
+ - id: FoodSnackCookieFortune
+ - id: FoodSnackDanDanNoodles
+ - id: FoodSnackEnergy
+ - id: FoodSnackMREBrownie
+ - id: FoodSnackNutribrick
+ - id: FoodSnackPistachios
+ - id: FoodSnackPopcorn
+ - id: FoodSnackRaisins
+ - id: FoodSnackSemki
+ - id: FoodSnackSus
+ - id: FoodSnackSyndi
children:
- !type:NestedSelector # Don't you love getting mailed trash?
tableId: GenericTrashItems
- - !type:GroupSelector
- weight: 7
- children:
- - id: MailRobustToolsSpam
- - id: MailNanotrasenSpam
- - id: MailSyndicateSpam
- - id: MailScienceSpiderClanSpam
- - id: MailAllAccessSpam
- - id: MailCentcommRetributionSpam
- - id: MailAlternativeDimensionSpam
- - id: MailNarsieCultSpam
- - id: MailRageCageSpam
- - id: MailVoyageAdvertisementSpam
- - id: MailEvilLizardSpam
- - id: MailParentsNeedMoneySpam
+ - !type:NestedSelector
+ weight: 4
+ tableId: SpamMailTable
+ - !type:NestedSelector
+ weight: 2
+ tableId: RandomBookTable
+ - !type:NestedSelector
+ weight: 2
+ tableId: RandomSnackTable
+ - !type:NestedSelector
+ weight: 2
+ tableId: RandomAllSodaTable
- type: entityTable # TODO: Add more variety!
id: LetterUncommonEntityTable # Some more varied things, should never be more expensive than 100 spesos
table: !type:GroupSelector
children:
- - id: MobCockroach
+ - !type:NestedSelector
+ tableId: RandomSafePillTable
+ - !type:NestedSelector
+ tableId: RandomSafeSyringeTable
+ - !type:NestedSelector
+ tableId: UncommonLetterBundleTable
- id: SpaceCash100
- - id: StrangePill
- id: Joint
- type: entityTable # TODO: Add more variety!
table: !type:GroupSelector
children:
- id: ResearchDisk5000
- - id: ClothingHeadHatHairflower
- - id: ClothingHeadHatFlowerWreath
- id: JointRainbow
+ - id: StrangePill
+ amount: !type:RangeNumberSelector
+ range: 1, 3
+ - !type:GroupSelector
+ children:
+ - id: Brutepack
+ - id: Ointment
+ - id: Gauze
+ - id: Bloodpack
# Packages
# TODO: Currently mostly maints loot, should be updated in the future.
--- /dev/null
+# Basically all different loot tables that the mail can choose from
+
+# Common
+- type: entityTable
+ id: SpamMailTable
+ table: !type:GroupSelector
+ children:
+ - id: MailAllAccessSpam
+ - id: MailAlternativeDimensionSpam
+ - id: MailCentcommRetributionSpam
+ - id: MailEvilLizardSpam
+ - id: MailNanotrasenSpam
+ - id: MailNarsieCultSpam
+ - id: MailParentsNeedMoneySpam
+ - id: MailRageCageSpam
+ - id: MailRobustToolsSpam
+ - id: MailScienceSpiderClanSpam
+ - id: MailSyndicateSpam
+ - id: MailVoyageAdvertisementSpam
+
+# Letter Bundles
+## Basically items that should always spawn together, specific to letters
+- type: entityTable
+ id: UncommonLetterBundleTable
+ table: !type:GroupSelector
+ children:
+ - !type:NestedSelector
+ tableId: LetterBundleDarts
+ - !type:NestedSelector
+ tableId: LetterBundleLetter
+
+- type: entityTable
+ id: LetterBundleDarts
+ table: !type:AllSelector
+ children:
+ - id: Dart
+ - id: DartBlue
+ - id: DartPurple
+ - id: DartYellow
+
+- type: entityTable
+ id: LetterBundleLetter
+ table: !type:AllSelector
+ children:
+ - id: Paper
+ - id: Pen
reagents:
- ReagentId: Stimulants
Quantity: 15
+
+# Entity Tables
+- type: entityTable
+ id: RandomSafePillTable
+ table: !type:GroupSelector
+ children:
+ - id: PillBicaridine
+ - id: PillCharcoal
+ - id: PillCopper
+ - id: PillDermaline
+ - id: PillDexalin
+ - id: PillDylovene
+ - id: PillHyronalin
+ - id: PillIron
+ - id: PillKelotane
+ - id: PillPotassiumIodide
+ - id: PillTricordrazine
+ - id: StrangePill
+
+- type: entityTable
+ id: RandomSafeSyringeTable
+ table: !type:GroupSelector
+ children:
+ - id: SyringeBicaridine
+ - id: SyringeDermaline
+ - id: SyringeEphedrine
+ - id: SyringeEthylredoxrazine
+ - id: SyringeHyronalin
+ - id: SyringeInaprovaline
+ - id: SyringeIpecac
+ - id: SyringePhalanximine
+ - id: SyringeSaline
+ - id: SyringeSigynate
+ - id: SyringeTranexamicAcid