Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New and Modified Map Spawners #34424

Merged
merged 7 commits into from
Jan 16, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 29 additions & 1 deletion Resources/Prototypes/Catalog/Fills/Crates/engineering.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down Expand Up @@ -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
46 changes: 46 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Crates/materials.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
3 changes: 3 additions & 0 deletions Resources/Prototypes/Catalog/Fills/Lockers/misc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,9 @@
- !type:NestedSelector
tableId: SyndieMaintLoot
prob: 0.05
# Recursive
- id: ClosetMaintenanceFilledRandom
prob: 0.01

- type: entity
id: ClosetMaintenanceFilledRandom
Expand Down
231 changes: 117 additions & 114 deletions Resources/Prototypes/Entities/Markers/Spawners/Random/crates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,136 +3,139 @@
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
id: CrateFilledSpawner
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
- 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
Loading
Loading