From: Southbridge <7013162+southbridge-fur@users.noreply.github.com> Date: Thu, 16 Jan 2025 00:56:12 +0000 (-0500) Subject: New and Modified Map Spawners (#34424) X-Git-Url: https://git.smokeofanarchy.ru/gitweb.cgi?a=commitdiff_plain;h=87ff3a24215368901945682fd1c3922ae1cf1544;p=space-station-14.git New and Modified Map Spawners (#34424) * 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 --- diff --git a/Resources/Prototypes/Catalog/Fills/Crates/engineering.yml b/Resources/Prototypes/Catalog/Fills/Crates/engineering.yml index 62d07b0bed..db01b7ab41 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/engineering.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/engineering.yml @@ -150,7 +150,7 @@ - type: entity id: CrateAirlockKit - parent: CrateGenericSteel + parent: CrateEngineering name: airlock kit description: A kit for building 6 airlocks, doesn't include tools. components: @@ -215,3 +215,31 @@ - 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 diff --git a/Resources/Prototypes/Catalog/Fills/Crates/materials.yml b/Resources/Prototypes/Catalog/Fills/Crates/materials.yml index f425b48c07..3934812ae4 100644 --- a/Resources/Prototypes/Catalog/Fills/Crates/materials.yml +++ b/Resources/Prototypes/Catalog/Fills/Crates/materials.yml @@ -107,6 +107,52 @@ - 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 diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml b/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml index 4c0a9826de..340083f404 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/misc.yml @@ -159,6 +159,9 @@ - !type:NestedSelector tableId: SyndieMaintLoot prob: 0.05 + # Recursive + - id: ClosetMaintenanceFilledRandom + prob: 0.01 - type: entity id: ClosetMaintenanceFilledRandom diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml index 1986dfc29c..14852de558 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml @@ -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 @@ -30,109 +30,112 @@ 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 diff --git a/Resources/Prototypes/Entities/Markers/Spawners/Random/vending.yml b/Resources/Prototypes/Entities/Markers/Spawners/Random/vending.yml index 746cbc7932..0b530c68b1 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/Random/vending.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/Random/vending.yml @@ -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 index 0000000000..207d79da34 Binary files /dev/null and b/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/clothing.png differ diff --git a/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/meta.json b/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/meta.json index 64adf522b9..2c0b0b72d1 100644 --- a/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/meta.json +++ b/Resources/Textures/Structures/Machines/VendingMachines/random.rsi/meta.json @@ -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" } ] }