]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
New and Modified Map Spawners (#34424)
authorSouthbridge <7013162+southbridge-fur@users.noreply.github.com>
Thu, 16 Jan 2025 00:56:12 +0000 (19:56 -0500)
committerGitHub <noreply@github.com>
Thu, 16 Jan 2025 00:56:12 +0000 (01:56 +0100)
* Added spanwers and modified others

* adjusted values to be more in line with what I want

* this comment may have caused that test fail

* oh my god another typo

* Modified door crate to be engineering flavored

* reduced the pride vendor odds

Webedit lmao

Resources/Prototypes/Catalog/Fills/Crates/engineering.yml
Resources/Prototypes/Catalog/Fills/Crates/materials.yml
Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml
Resources/Prototypes/Entities/Markers/Spawners/Random/vending.yml
Resources/Textures/Structures/Machines/VendingMachines/random.rsi/clothing.png [new file with mode: 0644]
Resources/Textures/Structures/Machines/VendingMachines/random.rsi/meta.json

index 62d07b0beda27811824f38b35227545838be7776..db01b7ab41522bd07b6ac96d40d52ed72b92e929 100644 (file)
 
 - type: entity
   id: CrateAirlockKit
-  parent: CrateGenericSteel
+  parent: CrateEngineering
   name: airlock kit
   description: A kit for building 6 airlocks, doesn't include tools.
   components:
   - type: StorageFill
     contents:
       - id: SpaceHeaterFlatpack
+
+- type: entityTable
+  id: RandomTechBoardTable
+  table: !type:GroupSelector
+    children:
+    - id: AirAlarmElectronics
+    - id: FireAlarmElectronics
+    - id: DoorElectronics
+    - id: FirelockElectronics
+    - id: APCElectronics
+    - id: SignalTimerElectronics
+    - id: SMESMachineCircuitboard
+    - id: SubstationMachineCircuitboard
+    - id: SpaceVillainArcadeComputerCircuitboard
+    - id: BlockGameArcadeComputerCircuitboard
+
+- type: entity
+  id: CrateTechBoardRandom
+  parent: CrateEngineering
+  name: surplus boards
+  description: Surplus boards from somewhere.
+  components:
+  - type: EntityTableContainerFill
+    containers:
+      entity_storage: !type:NestedSelector
+        tableId: RandomTechBoardTable
+        rolls: !type:RangeNumberSelector
+          range: 3, 7
index f425b48c07ef32790e7d5322e9235ed272106acb..3934812ae4e26ee5d3ebde938d88c777bc07dd46 100644 (file)
       - id: SheetPaper
         amount: 3
 
+- type: entityTable
+  id: RandomMaterialCrateTable
+  table: !type:GroupSelector
+    children:
+    - !type:GroupSelector # regular materials, 10
+      weight: 35
+      children:
+      - id: SheetGlass10
+      - id: SheetSteel10
+      - id: SheetPlastic10
+    - !type:GroupSelector # regular materials, stack
+      weight: 30
+      children:
+      - id: SheetGlass
+      - id: SheetSteel
+      - id: SheetPlastic
+    - !type:GroupSelector # secondary materials, stack
+      weight: 30
+      children:
+      - id: MaterialCloth
+      - id: SheetPlasteel
+      - id: MaterialWoodPlank
+      - id: PartRodMetal
+    - !type:GroupSelector # tertiary materials, singles
+      weight: 5
+      children:
+      - id: SheetPlasma1
+      - id: SheetUranium1
+      - id: IngotGold1
+      - id: IngotSilver1
+
+- type: entity
+  id: CrateMaterialRandom
+  parent: CrateGenericSteel
+  name: surplus materials
+  description: Surplus materials from somewhere.
+  components:
+  - type: EntityTableContainerFill
+    containers:
+      entity_storage: !type:NestedSelector
+        tableId: RandomMaterialCrateTable
+        rolls: !type:RangeNumberSelector
+          range: 1, 3
+          # for some reason, the selector here adds 1 to whatever value it generates,
+          # so this is actually 2-4
+
 #- type: entity
 #  id: CrateMaterialHFuelTank
 #  name: fueltank crate
index 4c0a9826de7cfc2da0ab7290fb23a4cc298df333..340083f40416c4d8d1b8313bbcde3a5b6d5e011b 100644 (file)
     - !type:NestedSelector
       tableId: SyndieMaintLoot
       prob: 0.05
+    # Recursive
+    - id: ClosetMaintenanceFilledRandom
+      prob: 0.01
 
 - type: entity
   id: ClosetMaintenanceFilledRandom
index 1986dfc29c52b9f791a7ca86007d71f5e9399e1f..14852de558bad4e7a4ffee92645e893b2c3cd7f9 100644 (file)
@@ -3,26 +3,26 @@
   id: CrateEmptySpawner
   parent: MarkerBase
   components:
-    - type: Sprite
-      layers:
-        - state: red
-        - sprite: Structures/Storage/Crates/generic.rsi
-          state: icon
-    - type: RandomSpawner
-      prototypes:
-        - CrateGenericSteel
-        - CratePlastic
-        - CrateFreezer
-        - CrateHydroponics
-        - CrateMedical
-        - CrateRadiation
-        - CrateInternals
-        - CrateElectrical
-        - CrateEngineering
-        - CrateScience
-        - CrateSurgery
-      chance: 0.7
-      offset: 0.0
+  - type: Sprite
+    layers:
+    - state: red
+    - sprite: Structures/Storage/Crates/generic.rsi
+      state: icon
+  - type: RandomSpawner
+    prototypes:
+    - CrateGenericSteel
+    - CratePlastic
+    - CrateFreezer
+    - CrateHydroponics
+    - CrateMedical
+    - CrateRadiation
+    - CrateInternals
+    - CrateElectrical
+    - CrateEngineering
+    - CrateScience
+    - CrateSurgery
+    chance: 0.7
+    offset: 0.0
 
 - type: entity
   name: Filled Crate Spawner
   suffix: Low Value
   parent: MarkerBase
   components:
-    - type: Sprite
-      layers:
-        - state: red
-        - sprite: Structures/Storage/Crates/o2.rsi
-          state: icon
-    - type: RandomSpawner
-      prototypes:
-        - CrateServiceReplacementLights
-        - CrateServiceBureaucracy
-        - CrateChemistrySupplies
-        - CrateMaterialGlass
-        - CrateMaterialSteel
-        - CrateMaterialPlastic
-        - CrateMaterialWood
-        - CrateMaterialPlasteel
-        - CrateFunArtSupplies
-        - CrateEngineeringCableLV
-        - CrateEngineeringCableMV
-        - CrateEngineeringCableHV
-        - CrateEngineeringCableBulk
-        - CrateEmergencyFire
-        - CrateEmergencyInternals
-        - CrateEmergencyInflatablewall
-        - CrateHydroponicsTools
-        - CrateHydroponicsSeeds
-      chance: 0.7
-      rarePrototypes:
-        - CrateMaterialPlasma
-        - CrateHydroponicsSeedsExotic
-      rareChance: 0.1
-      offset: 0.0
+  - type: Sprite
+    layers:
+    - state: red
+    - sprite: Structures/Storage/Crates/o2.rsi
+      state: icon
+  - type: RandomSpawner
+    prototypes:
+    - CrateServiceReplacementLights
+    - CrateServiceBureaucracy
+    - CrateChemistrySupplies
+    - CrateMaterialGlass
+    - CrateMaterialSteel
+    - CrateMaterialPlastic
+    - CrateMaterialWood
+    - CrateMaterialPlasteel
+    - CrateMaterialRandom
+    - CrateFunArtSupplies
+    - CrateEngineeringCableLV
+    - CrateEngineeringCableMV
+    - CrateEngineeringCableHV
+    - CrateEngineeringCableBulk
+    - CrateTechBoardRandom
+    - CrateEmergencyFire
+    - CrateEmergencyInternals
+    - CrateEmergencyInflatablewall
+    - CrateHydroponicsTools
+    - CrateHydroponicsSeeds
+    - PetCarrier
+    chance: 0.7
+    rarePrototypes:
+    - CrateMaterialPlasma
+    - CrateHydroponicsSeedsExotic
+    rareChance: 0.1
+    offset: 0.0
 
 - type: entity
   name: random engineering crate spawner
   id: LootSpawnerRandomCrateEngineering
   parent: MarkerBase
   components:
-    - type: Sprite
-      layers:
-        - state: red
-        - sprite: Structures/Storage/Crates/engineering.rsi
-          state: icon
-    - type: RandomSpawner
-      rarePrototypes:
-        - CrateEngineeringSingularityGenerator
-        - CrateEngineeringTeslaGenerator
-        - CrateEngineeringTeslaGroundingRod
-        - CrateEngineeringParticleAccelerator
-        - CrateRCD
-        - CrateEngineeringGear
-      rareChance: 0.2
-      prototypes:
-        - CrateEngineering
-        - CrateElectrical
-        - CrateEngineeringElectricalSupplies
-        - CrateRCDAmmo
-        - CrateEngineeringCableLV
-        - CrateEngineeringCableMV
-        - CrateEngineeringCableHV
-        - CrateEngineeringCableBulk
-        - CrateEngineeringSingularityContainment
-        - CrateEngineeringSingularityCollector
-        - CrateEngineeringTeslaCoil
-        - CrateEngineeringSingularityEmitter
-        - CrateEngineeringGyroscope
-        - CrateEngineeringThruster
-        - CrateEngineeringToolbox
-        - CrateEngineeringShuttle
-        - CrateEngineeringSolar
-        - CrateEngineeringJetpack
-        - CrateEmergencyRadiation
-        - CrateRadiation
-      chance: 0.9
-      offset: 0.0
+  - type: Sprite
+    layers:
+    - state: red
+    - sprite: Structures/Storage/Crates/engineering.rsi
+      state: icon
+  - type: RandomSpawner
+    rarePrototypes:
+    - CrateEngineeringSingularityGenerator
+    - CrateEngineeringTeslaGenerator
+    - CrateEngineeringTeslaGroundingRod
+    - CrateEngineeringParticleAccelerator
+    - CrateRCD
+    - CrateEngineeringGear
+    rareChance: 0.2
+    prototypes:
+    - CrateEngineering
+    - CrateElectrical
+    - CrateEngineeringElectricalSupplies
+    - CrateRCDAmmo
+    - CrateEngineeringCableLV
+    - CrateEngineeringCableMV
+    - CrateEngineeringCableHV
+    - CrateEngineeringCableBulk
+    - CrateEngineeringSingularityContainment
+    - CrateEngineeringSingularityCollector
+    - CrateEngineeringTeslaCoil
+    - CrateEngineeringSingularityEmitter
+    - CrateEngineeringGyroscope
+    - CrateEngineeringThruster
+    - CrateEngineeringToolbox
+    - CrateEngineeringShuttle
+    - CrateEngineeringSolar
+    - CrateEngineeringJetpack
+    - CrateEmergencyRadiation
+    - CrateRadiation
+    chance: 0.9
+    offset: 0.0
 
 - type: entity
   name: random security crate spawner
   id: LootSpawnerRandomCrateSecurity
   parent: MarkerBase
   components:
-    - type: Sprite
-      layers:
-        - state: red
-        - sprite: Structures/Storage/Crates/sec_gear.rsi
-          state: icon
-    - type: RandomSpawner
-      rarePrototypes: #Very useful stuff we probably don't want random people getting on space ruins often, even if there are hurdles to open it
-        - CrateArmoryShotgun
-        - CrateArmorySMG
-        - CrateSecurityRiot
-        - CrateSecurityNonlethal
-      rareChance: 0.1
-      prototypes:
-        - CrateWeaponSecure
-        - CrateArmoryLaser
-        - CrateArmoryPistols
-        - CrateTrainingBombs
-        - CrateTrackingImplants
-        - CrateSecurityTrackingMindshieldImplants
-        - CrateSecurityHelmet
-        - CrateSecurityArmor
-        - CrateRestraints
-        - CrateEmergencyExplosive
-        - CrateSecurityBiosuit
-      chance: 0.9
-      offset: 0.0
\ No newline at end of file
+  - type: Sprite
+    layers:
+    - state: red
+    - sprite: Structures/Storage/Crates/sec_gear.rsi
+      state: icon
+  - type: RandomSpawner
+    rarePrototypes: #Very useful stuff we probably don't want random people getting on space ruins often, even if there are hurdles to open it
+    - CrateArmoryShotgun
+    - CrateArmorySMG
+    - CrateSecurityRiot
+    - CrateSecurityNonlethal
+    rareChance: 0.1
+    prototypes:
+    - CrateWeaponSecure
+    - CrateArmoryLaser
+    - CrateArmoryPistols
+    - CrateTrainingBombs
+    - CrateTrackingImplants
+    - CrateSecurityTrackingMindshieldImplants
+    - CrateSecurityHelmet
+    - CrateSecurityArmor
+    - CrateRestraints
+    - CrateEmergencyExplosive
+    - CrateSecurityBiosuit
+    chance: 0.9
+    offset: 0.0
index 746cbc7932972375c018ef8e1e842eefc8bed9b9..0b530c68b19915d187bac292c0e2bf307df670c8 100644 (file)
@@ -6,30 +6,59 @@
   components:
   - type: Sprite
     layers:
-      - state: red
-      - sprite: Structures/Machines/VendingMachines/random.rsi
-        state: any
+    - state: red
+    - sprite: Structures/Machines/VendingMachines/random.rsi
+      state: any
   - type: RandomSpawner
     prototypes:
-      - VendingMachineChang
-      - VendingMachineCigs
-      - VendingMachineCoffee
-      - VendingMachineCola #Robust Sofdrinks
-      - VendingMachineColaBlack #Robust Sofdrinks [Black]
-      - VendingMachineColaRed #Space Cola
-      - VendingMachineDiscount
-      - VendingMachineDonut
-      - VendingMachineDrGibb
-      - VendingMachinePwrGame
-      - VendingMachineShamblersJuice
-      - VendingMachineSmite
-      - VendingMachineSnack
-      - VendingMachineSnackBlue
-      - VendingMachineSnackGreen
-      - VendingMachineSnackOrange
-      - VendingMachineSnackTeal
-      - VendingMachineSoda #Robust Sofdrinks [Soda]
-      - VendingMachineSovietSoda #Boda
-      - VendingMachineSpaceUp
-      - VendingMachineStarkist
+    - VendingMachineChang
+    - VendingMachineCigs
+    - VendingMachineCoffee
+    - VendingMachineCola #Robust Sofdrinks
+    - VendingMachineColaBlack #Robust Sofdrinks [Black]
+    - VendingMachineColaRed #Space Cola
+    - VendingMachineDiscount
+    - VendingMachineDonut
+    - VendingMachineDrGibb
+    - VendingMachinePwrGame
+    - VendingMachineShamblersJuice
+    - VendingMachineSmite
+    - VendingMachineSnack
+    - VendingMachineSnackBlue
+    - VendingMachineSnackGreen
+    - VendingMachineSnackOrange
+    - VendingMachineSnackTeal
+    - VendingMachineSoda #Robust Sofdrinks [Soda]
+    - VendingMachineSovietSoda #Boda
+    - VendingMachineSpaceUp
+    - VendingMachineStarkist
     chance: 1
+
+
+- type: entityTable
+  id: ClothingVendorTable
+  table: !type:GroupSelector
+    children:
+    - id: VendingMachineClothing
+      weight: 40
+    - id: VendingMachineWinter
+      weight: 40
+    - id: VendingMachinePride
+      weight: 10
+    - id: VendingMachineTheater
+      weight: 10
+
+- type: entity
+  id: RandomVendingClothing
+  name: random vending machine spawner
+  suffix: Clothing
+  parent: MarkerBase
+  components:
+  - type: Sprite
+    layers:
+    - state: red
+    - sprite: Structures/Machines/VendingMachines/random.rsi
+      state: clothing
+  - type: EntityTableSpawner
+    table: !type:NestedSelector
+      tableId: ClothingVendorTable
diff --git a/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/clothing.png b/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/clothing.png
new file mode 100644 (file)
index 0000000..207d79d
Binary files /dev/null and b/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/clothing.png differ
index 64adf522b93c8e9920703e0306994ec2cd2c04a0..2c0b0b72d1e7d604dd748b94c3997047a214fd37 100644 (file)
@@ -1,7 +1,7 @@
 {
   "version": 1,
   "license": "CC-BY-SA-3.0",
-  "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/a879151ef04192ae2a791278ee882c1bce7c5062, cola and any sprite modified by potato1234x (github) for ss14",
+  "copyright": "Taken from tgstation at https://github.com/tgstation/tgstation/commit/a879151ef04192ae2a791278ee882c1bce7c5062, cola and any sprite modified by potato1234x (github) for ss14, clothing by Southbridge_fur (github) for SS14",
   "size": {
     "x": 32,
     "y": 32
@@ -15,6 +15,9 @@
     },
     {
       "name": "any"
+    },
+    {
+      "name": "clothing"
     }
   ]
 }