Rock and Meat anom rework (try 2) (#24449)
* rework * bruh * all fixed * balance * bb * Update TileAnomalySystem.cs * Update EntityAnomalySystem.cs * spawn on shutdown variant * fix entites, fix DataRecord * fix some review * god forgive me * oh fuck wrong brench * Revert "oh fuck wrong brench" This reverts commit c81f57f7830c8e55fd47982500c57281af40b0dc.
This commit is contained in:
@@ -26,15 +26,57 @@
|
||||
prototype: AsteroidRock
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidCrab
|
||||
id: WallSpawnAsteroidUraniumCrab
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockCrab
|
||||
prototype: AsteroidRockUraniumCrab
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidCrab1
|
||||
id: WallSpawnAsteroidUranium
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockCrab1
|
||||
prototype: AsteroidRockUranium
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidQuartzCrab
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockQuartzCrab
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidQuartz
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockQuartz
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidSilverCrab
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockSilverCrab
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidSilver
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockSilver
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidIronCrab
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockTinCrab
|
||||
|
||||
- type: entity
|
||||
id: WallSpawnAsteroidIron
|
||||
parent: WallSpawnAsteroid
|
||||
components:
|
||||
- type: SpawnOnDespawn
|
||||
prototype: AsteroidRockTin
|
||||
@@ -16,8 +16,26 @@
|
||||
- AnomalyFlesh
|
||||
- AnomalyBluespace
|
||||
- AnomalyIce
|
||||
- AnomalyRock
|
||||
- RandomRockAnomalySpawner
|
||||
- AnomalyLiquid
|
||||
- AnomalyFlora
|
||||
chance: 1
|
||||
offset: 0.15 # not to put it higher. The anomaly sychnronizer looks for anomalies within this radius, and if the radius is higher, the anomaly can be attracted from a neighboring tile.
|
||||
|
||||
- type: entity
|
||||
id: RandomRockAnomalySpawner
|
||||
parent: MarkerBase
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: red
|
||||
- sprite: Structures/Specific/anomaly.rsi
|
||||
state: anom6
|
||||
- type: RandomSpawner
|
||||
prototypes:
|
||||
- AnomalyRockIron
|
||||
- AnomalyRockSilver
|
||||
- AnomalyRockQuartz
|
||||
- AnomalyRockUranium
|
||||
chance: 1
|
||||
offset: 0.15
|
||||
@@ -1,31 +0,0 @@
|
||||
- type: entity
|
||||
name: Asteroid Crab Spawner
|
||||
id: AsteroidCrabSpawner
|
||||
parent: MarkerBase
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: red
|
||||
- sprite: Structures/Walls/rock.rsi
|
||||
state: rock_asteroid_ore
|
||||
- type: RandomSpawner
|
||||
prototypes:
|
||||
- AsteroidRockCrab
|
||||
- AsteroidRockCrab1
|
||||
chance: 1
|
||||
|
||||
- type: entity
|
||||
name: Rock Anom Crab Spawner
|
||||
id: RockAnomCrabSpawner
|
||||
parent: MarkerBase
|
||||
components:
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: red
|
||||
- sprite: Structures/Walls/rock.rsi
|
||||
state: rock_asteroid_ore
|
||||
- type: RandomSpawner
|
||||
prototypes:
|
||||
- WallSpawnAsteroidCrab
|
||||
- WallSpawnAsteroidCrab1
|
||||
chance: 1
|
||||
@@ -10,8 +10,7 @@
|
||||
- type: MeleeSound
|
||||
soundGroups:
|
||||
Brute:
|
||||
path:
|
||||
"/Audio/Weapons/slash.ogg"
|
||||
collection: GlassBreak
|
||||
- type: Sprite
|
||||
sprite: Objects/Misc/ice_crust.rsi
|
||||
layers:
|
||||
|
||||
@@ -147,16 +147,75 @@
|
||||
color: "#cb5b7e"
|
||||
castShadows: false
|
||||
- type: TileSpawnAnomaly
|
||||
floorTileId: FloorFlesh
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
spawnOnStabilityChanged: true
|
||||
minAmount: 3
|
||||
maxAmount: 7
|
||||
maxRange: 4
|
||||
floor: FloorFlesh
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 10
|
||||
maxAmount: 30
|
||||
maxRange: 10
|
||||
floor: FloorFlesh
|
||||
- type: EntitySpawnAnomaly
|
||||
superCriticalSpawns:
|
||||
- FleshKudzu
|
||||
spawns:
|
||||
- MobFleshJared
|
||||
- MobFleshGolem
|
||||
- MobFleshClamp
|
||||
- MobFleshLover
|
||||
- FleshBlocker
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 1
|
||||
maxAmount: 4
|
||||
minRange: 1.5
|
||||
maxRange: 2.5
|
||||
spawns:
|
||||
- FleshBlocker
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
maxAmount: 3
|
||||
minRange: 3
|
||||
maxRange: 4.5
|
||||
spawns:
|
||||
- MobFleshJared
|
||||
- MobFleshGolem
|
||||
- MobFleshClamp
|
||||
- MobFleshLover
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 10
|
||||
maxAmount: 15
|
||||
minRange: 5
|
||||
maxRange: 15
|
||||
spawns:
|
||||
- FleshBlocker
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 5
|
||||
maxAmount: 10
|
||||
maxRange: 8
|
||||
spawns:
|
||||
- MobFleshJared
|
||||
- MobFleshGolem
|
||||
- MobFleshClamp
|
||||
- MobFleshLover
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 5
|
||||
maxAmount: 8
|
||||
maxRange: 10
|
||||
spawns:
|
||||
- FleshKudzu
|
||||
- settings:
|
||||
spawnOnShutdown: true
|
||||
maxAmount: 2
|
||||
maxRange: 1
|
||||
spawns:
|
||||
- MobFleshJared
|
||||
- MobFleshGolem
|
||||
- MobFleshClamp
|
||||
- MobFleshLover
|
||||
- FleshKudzu
|
||||
|
||||
- type: entity
|
||||
id: AnomalyBluespace
|
||||
@@ -241,12 +300,14 @@
|
||||
projectilePrototype: ProjectileIcicle
|
||||
targetNonSentientChance: 0.1
|
||||
- type: EntitySpawnAnomaly
|
||||
spawns:
|
||||
- IceCrust
|
||||
maxSpawnAmount: 17
|
||||
spawnOnPulse: false
|
||||
spawnOnSuperCritical: false
|
||||
spawnOnStabilityChanged: true
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnStabilityChanged: true
|
||||
minAmount: 5
|
||||
maxAmount: 15
|
||||
maxRange: 4
|
||||
spawns:
|
||||
- IceCrust
|
||||
- type: TempAffectingAnomaly
|
||||
tempChangePerSecond: -25
|
||||
hotspotExposeTemperature: -1000
|
||||
@@ -256,8 +317,9 @@
|
||||
spawnRadius: 0
|
||||
|
||||
- type: entity
|
||||
id: AnomalyRock
|
||||
id: AnomalyRockBase
|
||||
parent: BaseAnomaly
|
||||
abstract: true
|
||||
suffix: Rock
|
||||
components:
|
||||
- type: Anomaly
|
||||
@@ -276,18 +338,219 @@
|
||||
color: "#5ca8cb"
|
||||
castShadows: false
|
||||
- type: TileSpawnAnomaly
|
||||
floorTileId: FloorAsteroidTile
|
||||
spawnChance: 0.8
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 15
|
||||
maxAmount: 20
|
||||
maxRange: 7.5
|
||||
floor: FloorAsteroidTile
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 30
|
||||
maxAmount: 50
|
||||
maxRange: 12
|
||||
floor: FloorAsteroidTile
|
||||
|
||||
- type: entity
|
||||
id: AnomalyRockUranium
|
||||
parent: AnomalyRockBase
|
||||
suffix: Rock, Uranium
|
||||
components:
|
||||
- type: Sprite
|
||||
color: "#52ff39"
|
||||
- type: PointLight
|
||||
radius: 2.0
|
||||
energy: 7.5
|
||||
color: "#52ff39"
|
||||
- type: EntitySpawnAnomaly
|
||||
maxSpawnAmount: 50
|
||||
spawnRange: 10
|
||||
spawns:
|
||||
- WallSpawnAsteroid
|
||||
- RockAnomCrabSpawner
|
||||
- CrystalSpawner
|
||||
superCriticalSpawns:
|
||||
- WallSpawnAsteroid
|
||||
- SpawnMobOreCrab
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 8
|
||||
maxAmount: 15
|
||||
minRange: 4.5
|
||||
maxRange: 7.5
|
||||
spawns:
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidUranium
|
||||
- WallSpawnAsteroidUraniumCrab
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
maxAmount: 3
|
||||
minRange: 2.5
|
||||
maxRange: 4.5
|
||||
spawns:
|
||||
- CrystalGreen
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 30
|
||||
maxAmount: 40
|
||||
minRange: 5
|
||||
maxRange: 15
|
||||
spawns:
|
||||
- CrystalGreen
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidUraniumCrab
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 6
|
||||
maxAmount: 10
|
||||
maxRange: 5
|
||||
spawns:
|
||||
- MobSpawnCrabUranium
|
||||
|
||||
- type: entity
|
||||
id: AnomalyRockQuartz
|
||||
parent: AnomalyRockBase
|
||||
suffix: Rock, Quartz
|
||||
components:
|
||||
- type: Sprite
|
||||
color: "#fb4747"
|
||||
- type: PointLight
|
||||
radius: 2.0
|
||||
energy: 7.5
|
||||
color: "#fb4747"
|
||||
- type: EntitySpawnAnomaly
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 8
|
||||
maxAmount: 15
|
||||
minRange: 4.5
|
||||
maxRange: 7.5
|
||||
spawns:
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidQuartz
|
||||
- WallSpawnAsteroidQuartzCrab
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
maxAmount: 3
|
||||
minRange: 2.5
|
||||
maxRange: 4.5
|
||||
spawns:
|
||||
- CrystalGrey
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 30
|
||||
maxAmount: 40
|
||||
minRange: 5
|
||||
maxRange: 15
|
||||
spawns:
|
||||
- CrystalGrey
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidQuartzCrab
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 6
|
||||
maxAmount: 10
|
||||
maxRange: 5
|
||||
spawns:
|
||||
- MobSpawnCrabQuartz
|
||||
|
||||
- type: entity
|
||||
id: AnomalyRockSilver
|
||||
parent: AnomalyRockBase
|
||||
suffix: Rock, Silver
|
||||
components:
|
||||
- type: Sprite
|
||||
color: "#47f8ff"
|
||||
- type: PointLight
|
||||
radius: 2.0
|
||||
energy: 7.5
|
||||
color: "#47f8ff"
|
||||
- type: EntitySpawnAnomaly
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 8
|
||||
maxAmount: 15
|
||||
minRange: 4.5
|
||||
maxRange: 7.5
|
||||
spawns:
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidSilver
|
||||
- WallSpawnAsteroidSilverCrab
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
maxAmount: 3
|
||||
minRange: 2.5
|
||||
maxRange: 4.5
|
||||
spawns:
|
||||
- CrystalCyan
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 30
|
||||
maxAmount: 40
|
||||
minRange: 5
|
||||
maxRange: 15
|
||||
spawns:
|
||||
- CrystalCyan
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidSilverCrab
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 6
|
||||
maxAmount: 10
|
||||
maxRange: 5
|
||||
spawns:
|
||||
- MobSpawnCrabSilver
|
||||
|
||||
- type: entity
|
||||
id: AnomalyRockIron
|
||||
parent: AnomalyRockBase
|
||||
suffix: Rock, Iron
|
||||
components:
|
||||
- type: Sprite
|
||||
color: "#ff8227"
|
||||
- type: PointLight
|
||||
radius: 2.0
|
||||
energy: 7.5
|
||||
color: "#ff8227"
|
||||
- type: EntitySpawnAnomaly
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 8
|
||||
maxAmount: 15
|
||||
minRange: 4.5
|
||||
maxRange: 7.5
|
||||
spawns:
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidIron
|
||||
- WallSpawnAsteroidIronCrab
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
maxAmount: 3
|
||||
minRange: 2.5
|
||||
maxRange: 4.5
|
||||
spawns:
|
||||
- CrystalOrange
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 30
|
||||
maxAmount: 40
|
||||
minRange: 5
|
||||
maxRange: 15
|
||||
spawns:
|
||||
- CrystalOrange
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroid
|
||||
- WallSpawnAsteroidIronCrab
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 6
|
||||
maxAmount: 10
|
||||
maxRange: 5
|
||||
spawns:
|
||||
- MobSpawnCrabIron
|
||||
|
||||
- type: entity
|
||||
id: AnomalyFlora
|
||||
@@ -316,15 +579,35 @@
|
||||
types:
|
||||
Slash: 0
|
||||
- type: TileSpawnAnomaly
|
||||
floorTileId: FloorAstroGrass
|
||||
spawnRange: 6
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 3
|
||||
maxAmount: 7
|
||||
maxRange: 5
|
||||
floor: FloorAstroGrass
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 10
|
||||
maxAmount: 30
|
||||
maxRange: 15
|
||||
floor: FloorAstroGrass
|
||||
- type: EntitySpawnAnomaly
|
||||
maxSpawnAmount: 15
|
||||
spawnRange: 6
|
||||
superCriticalSpawns:
|
||||
- KudzuFlowerAngry
|
||||
spawns:
|
||||
- KudzuFlowerFriendly
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnPulse: true
|
||||
minAmount: 2
|
||||
maxAmount: 5
|
||||
maxRange: 2
|
||||
spawns:
|
||||
- KudzuFlowerFriendly
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 5
|
||||
maxAmount: 10
|
||||
maxRange: 6
|
||||
spawns:
|
||||
- KudzuFlowerAngry
|
||||
|
||||
- type: entity
|
||||
id: AnomalyFloraBulb
|
||||
@@ -400,10 +683,14 @@
|
||||
types:
|
||||
Slash: 1
|
||||
- type: EntitySpawnAnomaly
|
||||
superCriticalSpawns:
|
||||
- ReagentSlimeSpawner
|
||||
spawns:
|
||||
- PuddleSparkle
|
||||
entries:
|
||||
- settings:
|
||||
spawnOnSuperCritical: true
|
||||
minAmount: 3
|
||||
maxAmount: 8
|
||||
maxRange: 2
|
||||
spawns:
|
||||
- ReagentSlimeSpawner
|
||||
- type: SolutionContainerManager
|
||||
solutions:
|
||||
anomaly:
|
||||
|
||||
@@ -148,6 +148,28 @@
|
||||
state: rock_asteroid_west
|
||||
- state: rock_quartz
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockQuartzCrab
|
||||
parent: AsteroidRock
|
||||
description: An ore vein rich with quartz.
|
||||
suffix: Quartz Crab
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 1.0
|
||||
currentOre: OreQuartzCrab
|
||||
- type: Sprite
|
||||
layers:
|
||||
- state: rock_asteroid
|
||||
- map: [ "enum.EdgeLayer.South" ]
|
||||
state: rock_asteroid_south
|
||||
- map: [ "enum.EdgeLayer.East" ]
|
||||
state: rock_asteroid_east
|
||||
- map: [ "enum.EdgeLayer.North" ]
|
||||
state: rock_asteroid_north
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_asteroid_west
|
||||
- state: rock_quartz
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockSilver
|
||||
parent: AsteroidRock
|
||||
@@ -169,6 +191,15 @@
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_asteroid_west
|
||||
- state: rock_silver
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockSilverCrab
|
||||
parent: AsteroidRockSilver
|
||||
suffix: Silver Crab
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 1.0
|
||||
currentOre: OreSilverCrab
|
||||
|
||||
# Yes I know it drops steel but we may get smelting at some point
|
||||
- type: entity
|
||||
@@ -192,6 +223,15 @@
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_asteroid_west
|
||||
- state: rock_tin
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockTinCrab
|
||||
parent: AsteroidRockTin
|
||||
suffix: Iron
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 1.0
|
||||
currentOre: OreIronCrab
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockUranium
|
||||
@@ -215,6 +255,14 @@
|
||||
state: rock_asteroid_west
|
||||
- state: rock_uranium
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockUraniumCrab
|
||||
parent: AsteroidRockUranium
|
||||
suffix: Uranium Crab
|
||||
components:
|
||||
- type: OreVein
|
||||
oreChance: 1.0
|
||||
currentOre: OreUraniumCrab
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockBananium
|
||||
@@ -271,46 +319,6 @@
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: RandomOreDistributionStandard
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockCrab
|
||||
parent: AsteroidRock
|
||||
name: asteroid rock
|
||||
suffix: orecrab
|
||||
description: An asteroid.
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Structures/Walls/rock.rsi
|
||||
layers:
|
||||
- state: rock_asteroid_ore
|
||||
- map: [ "enum.EdgeLayer.South" ]
|
||||
state: rock_asteroid_south
|
||||
- map: [ "enum.EdgeLayer.East" ]
|
||||
state: rock_asteroid_east
|
||||
- map: [ "enum.EdgeLayer.North" ]
|
||||
state: rock_asteroid_north
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_asteroid_west
|
||||
- type: OreVein
|
||||
oreChance: 0.33
|
||||
oreRarityPrototypeId: OreCrab
|
||||
|
||||
- type: entity
|
||||
id: AsteroidRockCrab1
|
||||
parent: AsteroidRockCrab
|
||||
components:
|
||||
- type: Sprite
|
||||
sprite: Structures/Walls/rock.rsi
|
||||
layers:
|
||||
- state: rock_asteroid_ore1
|
||||
- map: [ "enum.EdgeLayer.South" ]
|
||||
state: rock_asteroid_south
|
||||
- map: [ "enum.EdgeLayer.East" ]
|
||||
state: rock_asteroid_east
|
||||
- map: [ "enum.EdgeLayer.North" ]
|
||||
state: rock_asteroid_north
|
||||
- map: [ "enum.EdgeLayer.West" ]
|
||||
state: rock_asteroid_west
|
||||
|
||||
- type: entity
|
||||
id: IronRock
|
||||
parent: AsteroidRock
|
||||
|
||||
Reference in New Issue
Block a user