diff --git a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml index 64b0c71c01..8e4bdfb0fa 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml @@ -289,7 +289,199 @@ - state: rock_artifact_fragment # Basalt variants -# WICI +- type: entity + id: WallRockBasalt + parent: WallRock + components: + - type: Sprite + sprite: Structures/Walls/rock.rsi + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + +- type: entity + id: WallRockBasaltGold + parent: WallRockBasalt + description: An ore vein rich with gold. + suffix: Gold + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreGold + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_gold + +- type: entity + id: WallRockBasaltPlasma + parent: WallRockBasalt + description: An ore vein rich with plasma. + suffix: Plasma + components: + - type: OreVein + oreChance: 1.0 + currentOre: OrePlasma + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_phoron + +- type: entity + id: WallRockBasaltQuartz + parent: WallRockBasalt + description: An ore vein rich with quartz. + suffix: Quartz + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreSpaceQuartz + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_quartz + +- type: entity + id: WallRockBasaltSilver + parent: WallRockBasalt + description: An ore vein rich with silver. + suffix: Silver + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreSilver + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_silver + +- type: entity + id: WallRockBasaltTin + parent: WallRockBasalt + description: An ore vein rich with steel. + suffix: Steel + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreSteel + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_tin + +- type: entity + id: WallRockBasaltUranium + parent: WallRockBasalt + description: An ore vein rich with uranium. + suffix: Uranium + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreUranium + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_uranium + + +- type: entity + id: WallRockBasaltBananium + parent: WallRockBasalt + description: An ore vein rich with bananium. + suffix: Bananium + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreBananium + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_bananium + +- type: entity + id: WallRockBasaltArtifactFragment + parent: WallRockBasalt + description: A rock wall. What's that sticking out of it? + suffix: Artifact Fragment + components: + - type: OreVein + oreChance: 1.0 + currentOre: OreArtifactFragment + - type: Sprite + layers: + - state: rock_wall + - map: [ "enum.EdgeLayer.South" ] + state: rock_wall_south + - map: [ "enum.EdgeLayer.East" ] + state: rock_wall_east + - map: [ "enum.EdgeLayer.North" ] + state: rock_wall_north + - map: [ "enum.EdgeLayer.West" ] + state: rock_wall_west + - state: rock_artifact_fragment # Snow variants - type: entity diff --git a/Resources/Prototypes/Procedural/biome_ore_templates.yml b/Resources/Prototypes/Procedural/biome_ore_templates.yml index 27936fb450..1d4bc062d3 100644 --- a/Resources/Prototypes/Procedural/biome_ore_templates.yml +++ b/Resources/Prototypes/Procedural/biome_ore_templates.yml @@ -71,7 +71,77 @@ radius: 4 # Basalt variant -# WICI +# Low value +- type: biomeMarkerLayer + id: BasaltOreTin + proto: WallRockBasaltTin + entityMask: WallRockBasalt + maxCount: 30 + groupCount: 10 + radius: 4 + +- type: biomeMarkerLayer + id: BasaltOreQuartz + proto: WallRockBasaltQuartz + entityMask: WallRockBasalt + maxCount: 30 + groupCount: 10 + radius: 4 + +# Medium value +# Gold +- type: biomeMarkerLayer + id: BasaltOreGold + proto: WallRockBasaltGold + entityMask: WallRockBasalt + maxCount: 30 + groupCount: 5 + radius: 4 + +# Silver +- type: biomeMarkerLayer + id: BasaltOreSilver + proto: WallRockBasaltSilver + entityMask: WallRockBasalt + maxCount: 30 + groupCount: 5 + radius: 4 + +# High value +# Plasma +- type: biomeMarkerLayer + id: BasaltOrePlasma + proto: WallRockBasaltPlasma + entityMask: WallRockBasalt + maxCount: 12 + groupCount: 5 + radius: 4 + +# Uranium +- type: biomeMarkerLayer + id: BasaltOreUranium + proto: WallRockBasaltUranium + entityMask: WallRockBasalt + maxCount: 12 + groupCount: 5 + radius: 4 + +- type: biomeMarkerLayer + id: BasaltOreBananium + proto: WallRockBasaltBananium + entityMask: WallRockBasalt + maxCount: 12 + groupCount: 5 + radius: 4 + +# Artifact Fragment +- type: biomeMarkerLayer + id: BasaltOreArtifactFragment + proto: WallRockBasaltArtifactFragment + entityMask: WallRockBasalt + maxCount: 6 + groupCount: 1 + radius: 4 # Snow variant # Low value diff --git a/Resources/Prototypes/Procedural/biome_templates.yml b/Resources/Prototypes/Procedural/biome_templates.yml index 873d442da3..d1a54d5897 100644 --- a/Resources/Prototypes/Procedural/biome_templates.yml +++ b/Resources/Prototypes/Procedural/biome_templates.yml @@ -256,6 +256,23 @@ - FloorBasalt entities: - FloorLavaEntity + # Rock formations + - !type:BiomeEntityLayer + allowedTiles: + - FloorBasalt + threshold: -0.15 + noise: + seed: 0 + noiseType: Cellular + frequency: 0.05 + lacunarity: 2 + fractalType: FBm + octaves: 5 + gain: 1 + cellularDistanceFunction: Euclidean + cellularReturnType: Distance2 + entities: + - WallRockBasalt - !type:BiomeDummyLayer id: Loot # Fill basalt diff --git a/Resources/Prototypes/Procedural/salvage_loot.yml b/Resources/Prototypes/Procedural/salvage_loot.yml index 43054b4bbd..74f229e228 100644 --- a/Resources/Prototypes/Procedural/salvage_loot.yml +++ b/Resources/Prototypes/Procedural/salvage_loot.yml @@ -8,6 +8,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreTin + Lava: BasaltOreTin Snow: SnowOreTin - type: salvageLoot @@ -18,6 +19,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreQuartz + Lava: BasaltOreQuartz Snow: SnowOreQuartz # - Medium value @@ -29,6 +31,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreGold + Lava: BasaltOreGold Snow: SnowOreGold - type: salvageLoot @@ -39,6 +42,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreSilver + Lava: BasaltOreSilver Snow: SnowOreSilver # - High value @@ -50,6 +54,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OrePlasma + Lava: BasaltOrePlasma Snow: SnowOrePlasma - type: salvageLoot @@ -60,6 +65,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreUranium + Lava: BasaltOreUranium Snow: SnowOreUranium - type: salvageLoot @@ -70,6 +76,7 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreBananium + Lava: BasaltOreBananium Snow: SnowOreBananium - type: salvageLoot @@ -80,4 +87,5 @@ - !type:BiomeMarkerLoot proto: Grasslands: OreArtifactFragment + Lava: BasaltOreArtifactFragment Snow: SnowOreArtifactFragment diff --git a/Resources/Textures/Structures/Walls/rock.rsi/meta.json b/Resources/Textures/Structures/Walls/rock.rsi/meta.json index 26a3e9bd59..e198018251 100644 --- a/Resources/Textures/Structures/Walls/rock.rsi/meta.json +++ b/Resources/Textures/Structures/Walls/rock.rsi/meta.json @@ -1,7 +1,7 @@ { "version": 1, "license": "CC-BY-SA-3.0", - "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/turf/walls.dmi, rock_bananium made by brainfood1183 (github) for ss14, rock_snow and co from https://github.com/tgstation/tgstation/tree/e929cf39cded5207d63df1fa8521f41f2816b383", + "copyright": "https://github.com/Citadel-Station-13/Citadel-Station-13-RP/blob/817e7c1f225876b45891e3f06908e6d032f0a8bc/icons/turf/walls.dmi, rock_bananium made by brainfood1183 (github) for ss14, rock_snow + rock_wall and co from https://github.com/tgstation/tgstation/tree/e929cf39cded5207d63df1fa8521f41f2816b383", "size": { "x": 32, "y": 32 @@ -37,6 +37,21 @@ { "name": "rock_snow_west" }, + { + "name": "rock_wall" + }, + { + "name": "rock_wall_south" + }, + { + "name": "rock_wall_east" + }, + { + "name": "rock_wall_north" + }, + { + "name": "rock_wall_west" + }, { "name": "rock_artifact_fragment" }, diff --git a/Resources/Textures/Structures/Walls/rock.rsi/rock_wall.png b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall.png new file mode 100644 index 0000000000..cc90d1ec91 Binary files /dev/null and b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall.png differ diff --git a/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_east.png b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_east.png new file mode 100644 index 0000000000..05d3feb382 Binary files /dev/null and b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_east.png differ diff --git a/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_north.png b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_north.png new file mode 100644 index 0000000000..387cf9afa1 Binary files /dev/null and b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_north.png differ diff --git a/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_south.png b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_south.png new file mode 100644 index 0000000000..1c3c11cdfc Binary files /dev/null and b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_south.png differ diff --git a/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_west.png b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_west.png new file mode 100644 index 0000000000..ed5ac89ce3 Binary files /dev/null and b/Resources/Textures/Structures/Walls/rock.rsi/rock_wall_west.png differ