Mushroom update (#1590)

* mycelium tiles

* cave mushroom procedular generation

* mushroom demiplane

* Update herbals.yml

* Update mushroom.yml

* Delete 2.4.png
This commit is contained in:
Red
2025-07-30 14:16:14 +03:00
committed by GitHub
parent 53cd6fde50
commit c8f25eefcf
38 changed files with 627 additions and 39 deletions

View File

@@ -5,4 +5,5 @@ cp14-demiplane-location-grassland-island = Green Island
cp14-demiplane-location-ice-cave = Ice caves
cp14-demiplane-location-snow-island = Snowy island
cp14-demiplane-location-leaf-maze = Leaf maze
cp14-demiplane-location-wastelands = Wasteland
cp14-demiplane-location-wastelands = Wasteland
cp14-demiplane-location-mushroom-caves = Mushroom caves

View File

@@ -12,6 +12,8 @@ cp14-tiles-snow-deep = deep snow
cp14-tiles-snow-deep-deep = deep deep snow
cp14-tiles-marble-cave = marble floor
cp14-tiles-cobblestone = cobblestone
cp14-tiles-mycelium = mycelium
cp14-tiles-mycelium-light = dense mycelium
# Produced
cp14-tiles-foundation = foundation

View File

@@ -5,4 +5,5 @@ cp14-demiplane-location-grassland-island = Зеленый остров
cp14-demiplane-location-ice-cave = Ледяные пещеры
cp14-demiplane-location-snow-island = Заснеженный остров
cp14-demiplane-location-leaf-maze = Травяной лабиринт
cp14-demiplane-location-wastelands = Пустошь
cp14-demiplane-location-wastelands = Пустошь
cp14-demiplane-location-mushroom-caves = Грибные пещеры

View File

@@ -12,6 +12,8 @@ cp14-tiles-snow-deep = глубокий снег
cp14-tiles-snow-deep-deep = очень глубокий снег
cp14-tiles-marble-cave = мраморный пол
cp14-tiles-cobblestone = булыжник
cp14-tiles-mycelium = мицелий
cp14-tiles-mycelium-light = густой мицелий
# Produced
cp14-tiles-foundation = фундамент

View File

@@ -61,6 +61,18 @@
- type: CP14BiomeSpawner
biome: CP14CavesFloor
- type: entity
id: CP14BiomeSpawnerCaveGeneric
parent: CP14BaseBiomeSpawner
suffix: Cave Generic
components:
- type: Sprite
layers:
- state: cave
- state: frame
- type: CP14BiomeSpawner
biome: CP14CavesGeneric
- type: entity
id: CP14BiomeSpawnerForest
parent: CP14BaseBiomeSpawner
@@ -160,10 +172,22 @@
components:
- type: Sprite
layers:
- state: cave
- sprite: _CP14/Tiles/Water/water.rsi
state: full
- state: dirt
- state: frame
- type: CP14BiomeSpawner
biome: CP14Wastelands
- type: entity
id: CP14BiomeSpawnerCavesMushroom
parent: CP14BaseBiomeSpawner
suffix: Mushroom cave
components:
- type: Sprite
layers:
- state: cave
- sprite: _CP14/Structures/Flora/Wild/agaric.rsi
state: world4
- state: frame
- type: CP14BiomeSpawner
biome: CP14MushroomsCaveResult

View File

@@ -0,0 +1,127 @@
- type: entity
parent: CP14BaseTree
id: CP14MushroomTree1
name: giant mushroom
description: Have you ever heard how infected mushrooms sound?
components:
- type: Sprite
sprite: _CP14/Structures/Flora/tree_mushroom.rsi
offset: 0,0.9
layers:
- state: 1_log
- state: 1_hat
map: ["random"]
- type: RandomSprite
available:
- random:
1_hat: ScurretColors
- type: entity
parent: CP14MushroomTree1
id: CP14MushroomTree2
components:
- type: Sprite
layers:
- state: 2_log
- state: 2_hat
map: ["random"]
- type: RandomSprite
available:
- random:
2_hat: ScurretColors
- type: entity
parent: CP14MushroomTree1
id: CP14MushroomTree3
components:
- type: Sprite
layers:
- state: 3_log
- state: 3_hat
map: ["random"]
- type: RandomSprite
available:
- random:
3_hat: ScurretColors
- type: entity
parent: CP14MushroomTree1
id: CP14MushroomTree4
components:
- type: Sprite
layers:
- state: 4_log
- state: 4_hat
map: ["random"]
- type: RandomSprite
available:
- random:
4_hat: ScurretColors
- type: entity
parent: CP14MushroomTree1
id: CP14MushroomTree1Glowing
name: giant glowing mushroom
components:
- type: Sprite
layers:
- state: 1_log
map: ["random"]
- state: 1_hat
shader: unshaded
color: "#36c98f"
- type: RandomSprite
available:
- random:
1_log: ""
- type: PointLight
color: "#36c98f"
radius: 3.5
- type: entity
parent: CP14MushroomTree1Glowing
id: CP14MushroomTree2Glowing
components:
- type: Sprite
layers:
- state: 2_log
map: ["random"]
- state: 2_hat
shader: unshaded
color: "#36c98f"
- type: RandomSprite
available:
- random:
2_log: ""
- type: entity
parent: CP14MushroomTree1Glowing
id: CP14MushroomTree3Glowing
components:
- type: Sprite
layers:
- state: 3_log
map: ["random"]
- state: 3_hat
shader: unshaded
color: "#36c98f"
- type: RandomSprite
available:
- random:
3_log: ""
- type: entity
parent: CP14MushroomTree1Glowing
id: CP14MushroomTree4Glowing
components:
- type: Sprite
layers:
- state: 4_log
map: ["random"]
- state: 4_hat
shader: unshaded
color: "#36c98f"
- type: RandomSprite
available:
- random:
4_log: ""

View File

@@ -0,0 +1,35 @@
- type: cp14DemiplaneLocation
id: T1MushroomCaves
levels:
min: 1
max: 5
icon:
sprite: _CP14/Interface/Misc/demiplane_locations.rsi
state: mushroom_caves
locationConfig: CP14DemiplaneMushroomCaves
name: cp14-demiplane-location-mushroom-caves
tags:
- CP14DemiplaneOres
- CP14DemiplaneUnderground
- CP14DemiplaneMushrooms
components:
- type: Biome
template: CP14ChasmFill
- type: dungeonConfig
id: CP14DemiplaneMushroomCaves
layers:
# Masks
- !type:PrototypeDunGen
proto: CP14DemiplaneCavesFloorMaskStone
- !type:PrototypeDunGen
proto: CP14DemiplaneCavesFloorMaskAir
# Biomes
- !type:BiomeDunGen
biomeTemplate: CP14MushroomsCaveResult
tileMask:
- CP14FloorSand
- !type:BiomeDunGen
biomeTemplate: CP14CavesMushroomFloor
tileMask:
- CP14FloorGrass

View File

@@ -306,3 +306,35 @@
count: 1
minGroupSize: 1
maxGroupSize: 1
- type: cp14DemiplaneModifier
id: MyconideFlyagaric
levels:
min: 1
max: 10
categories:
Danger: 0.3
requiredTags:
- CP14DemiplaneMushrooms
layers:
- !type:CP14OreDunGen
entity: CP14MobMonsterMyconideFlyagaric
count: 5
minGroupSize: 8
maxGroupSize: 14
- type: cp14DemiplaneModifier
id: MyconideLumish
levels:
min: 1
max: 10
categories:
Danger: 0.3
requiredTags:
- CP14DemiplaneMushrooms
layers:
- !type:CP14OreDunGen
entity: CP14MobMonsterMyconideLumish
count: 5
minGroupSize: 8
maxGroupSize: 14

View File

@@ -58,11 +58,33 @@
- CP14FloorGrass
- CP14FloorGrassLight
- CP14FloorGrassTall
- CP14FloorMycelium
- CP14FloorMyceliumLight
entity: CP14GatherableFlyAgaric
count: 10
minGroupSize: 3
maxGroupSize: 5
- type: cp14DemiplaneModifier
id: FlyAgaric2
levels:
min: 1
max: 10
name: cp14-modifier-fly-agaric
categories:
Reward: 0.15
requiredTags:
- CP14DemiplaneMushrooms
layers:
- !type:CP14OreDunGen
tileMask:
- CP14FloorMycelium
- CP14FloorMyceliumLight
entity: CP14GatherableFlyAgaric
count: 10
minGroupSize: 6
maxGroupSize: 10
- type: cp14DemiplaneModifier
id: BlueAmanita
levels:
@@ -172,7 +194,29 @@
- CP14FloorSnow
- CP14FloorSnowDeep
- CP14FloorSnowDeepDeep
- CP14FloorMycelium
- CP14FloorMyceliumLight
entity: CP14GatherableLumiMushroom
count: 10
minGroupSize: 3
maxGroupSize: 5
- type: cp14DemiplaneModifier
id: LumiShroom2
levels:
min: 4
max: 10
name: cp14-modifier-lumisroom
categories:
Reward: 0.15
requiredTags:
- CP14DemiplaneMushrooms
layers:
- !type:CP14OreDunGen
tileMask:
- CP14FloorMycelium
- CP14FloorMyceliumLight
entity: CP14GatherableLumiMushroom
count: 10
minGroupSize: 6
maxGroupSize: 10

View File

@@ -4,6 +4,23 @@
- !type:BiomeTileLayer
threshold: -1.0
tile: CP14FloorBase
- !type:BiomeTileLayer
tile: CP14FloorCobblestone
threshold: 0.3
noise:
seed: 14
noiseType: OpenSimplex2
fractalType: FBm
frequency: 0.2
- !type:BiomeTileLayer
tile: CP14FloorDirt
threshold: 0.3
noise:
seed: 18
noiseType: OpenSimplex2
fractalType: FBm
frequency: 0.1
- type: biomeTemplate
id: CP14CavesFloor
@@ -20,6 +37,8 @@
frequency: 2
allowedTiles:
- CP14FloorBase
- CP14FloorDirt
- CP14FloorCobblestone
entities:
- CP14RockSmall
@@ -41,8 +60,23 @@
gain: 0.5
allowedTiles:
- CP14FloorBase
- CP14FloorCobblestone
entities:
- CP14WallStone
- !type:BiomeEntityLayer
threshold: -0.79
invert: true
noise:
seed: 0
noiseType: Perlin
fractalType: Ridged
octaves: 1
frequency: 0.05
gain: 0.5
allowedTiles:
- CP14FloorDirt
entities:
- CP14WallDirt
#Rivers
- !type:BiomeEntityLayer
threshold: 0.60
@@ -55,6 +89,8 @@
octaves: 1
allowedTiles:
- CP14FloorBase
- CP14FloorDirt
- CP14FloorCobblestone
entities:
- CP14FloorWater
@@ -77,6 +113,7 @@
domainWarpAmp: 120
allowedTiles:
- CP14FloorBase
- CP14FloorCobblestone
entities:
- CP14GatherableLumiMushroom
#Walls
@@ -92,6 +129,8 @@
gain: 0.5
allowedTiles:
- CP14FloorBase
- CP14FloorDirt
- CP14FloorCobblestone
entities:
- CP14WallStone
#Copper
@@ -104,6 +143,8 @@
frequency: 1.75
allowedTiles:
- CP14FloorBase
- CP14FloorDirt
- CP14FloorCobblestone
entities:
- CP14WallStoneCopperOre

View File

@@ -0,0 +1,146 @@
- type: biomeTemplate
id: CP14CavesMushroomFloor
layers:
- !type:BiomeMetaLayer
template: CP14CavesFloor
- !type:BiomeTileLayer
tile: CP14FloorMycelium
threshold: 0
noise:
seed: 0
noiseType: OpenSimplex2
fractalType: Ridged
frequency: 0.05
octaves: 3
lacunarity: 1.8
gain: 0.7
domainWarpType: OpenSimplex2
domainWarpAmp: 120
- !type:BiomeTileLayer
tile: CP14FloorMyceliumLight
threshold: 0.45
noise:
seed: 0
noiseType: OpenSimplex2
fractalType: Ridged
frequency: 0.05
octaves: 3
lacunarity: 1.8
gain: 0.7
domainWarpType: OpenSimplex2
domainWarpAmp: 120
- type: biomeTemplate
id: CP14CavesMushroom
layers:
- !type:BiomeMetaLayer
template: CP14CavesMushroomFloor
#Walls
- !type:BiomeEntityLayer
threshold: -0.75
invert: true
noise:
seed: 0
noiseType: Perlin
fractalType: Ridged
octaves: 1
frequency: 0.05
gain: 0.5
allowedTiles:
- CP14FloorBase
- CP14FloorMycelium
- CP14FloorMyceliumLight
- CP14FloorCobblestone
entities:
- CP14WallStone
- !type:BiomeEntityLayer
threshold: -0.79
invert: true
noise:
seed: 0
noiseType: Perlin
fractalType: Ridged
octaves: 1
frequency: 0.05
gain: 0.5
allowedTiles:
- CP14FloorDirt
entities:
- CP14WallDirt
#Mazy mini tunenls
- !type:BiomeEntityLayer
threshold: 0.40
noise:
seed: 3
noiseType: OpenSimplex2
frequency: 0.13
lacunarity: 1.50
fractalType: Ridged
octaves: 1
allowedTiles:
- CP14FloorBase
- CP14FloorMycelium
- CP14FloorMyceliumLight
- CP14FloorCobblestone
entities:
- CP14RoofRemover #Lol, i just wanna air here. TODO: fix
# Rare Trees
- !type:BiomeEntityLayer
threshold: 0.8
noise:
seed: 0
noiseType: OpenSimplex2
fractalType: FBm
frequency: 2
allowedTiles:
- CP14FloorMycelium
- CP14FloorMyceliumLight
entities:
- CP14MushroomTree1
- CP14MushroomTree2
- CP14MushroomTree3
- CP14MushroomTree4
# Subbiomes
- type: biomeTemplate
id: CP14MushroomCaveForest # Лес
layers:
- !type:BiomeMetaLayer
template: CP14CavesMushroom
- !type:BiomeEntityLayer # More Trees
threshold: 0.2
noise:
seed: 4
noiseType: OpenSimplex2
fractalType: FBm
frequency: 2
allowedTiles:
- CP14FloorMycelium
- CP14FloorMyceliumLight
entities:
- CP14MushroomTree1
- CP14MushroomTree2
- CP14MushroomTree3
- CP14MushroomTree4
- CP14MushroomTree1
- CP14MushroomTree2
- CP14MushroomTree3
- CP14MushroomTree4
- CP14MushroomTree1Glowing
- CP14MushroomTree2Glowing
- CP14MushroomTree3Glowing
- CP14MushroomTree4Glowing
- type: biomeTemplate
id: CP14MushroomsCaveResult
layers:
- !type:BiomeMetaLayer
template: CP14CavesMushroom
- !type:BiomeMetaLayer
template: CP14MushroomCaveForest
threshold: 0.2
noise:
seed: 18
frequency: 0.02
fractalType: None

View File

@@ -13,6 +13,9 @@
- type: Tag
id: CP14DemiplaneHerbals
- type: Tag
id: CP14DemiplaneMushrooms
# Demiplane features
- type: Tag

View File

@@ -1,3 +1,56 @@
# SORTED BY EDGE SPRITE PRIORITY
# 0
- type: tile
editorHidden: false
id: CP14FloorMarbleCave
name: cp14-tiles-marble-cave
sprite: /Textures/_CP14/Tiles/marble_cave.png
variants: 14
placementVariants:
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
baseTurf: CP14FloorBase
deconstructTools: [ CP14Digging ]
isSubfloor: true
itemDrop: CP14MarbleBlock1
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: true
indestructible: true
- type: tile
id: CP14FloorIce
editorHidden: false
name: tiles-ice
sprite: /Textures/_CP14/Tiles/ice.png
variants: 4
placementVariants:
- 1.0
- 1.0
- 1.0
- 1.0
baseTurf: CP14FloorBase
isSubfloor: false
heatCapacity: 10000
friction: 0.05
mobAcceleration: 0.1
weather: true
- type: tile
editorHidden: false
id: CP14FloorDirt
@@ -72,11 +125,11 @@
weather: true
- type: tile
id: CP14FloorMycelium
editorHidden: false
id: CP14FloorMarbleCave
name: cp14-tiles-marble-cave
sprite: /Textures/_CP14/Tiles/marble_cave.png
variants: 14
name: cp14-tiles-mycelium
sprite: /Textures/_CP14/Tiles/Mycelium/tile.png
variants: 12
placementVariants:
- 1.0
- 1.0
@@ -90,17 +143,54 @@
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
baseTurf: CP14FloorBase
edgeSpritePriority: 3
edgeSprites:
South: /Textures/_CP14/Tiles/Mycelium/double_edge_S.png
East: /Textures/_CP14/Tiles/Mycelium/double_edge_E.png
North: /Textures/_CP14/Tiles/Mycelium/double_edge_N.png
West: /Textures/_CP14/Tiles/Mycelium/double_edge_W.png
baseTurf: CP14FloorDirt
deconstructTools: [ CP14Digging ]
isSubfloor: true
itemDrop: CP14MarbleBlock1
itemDrop: CP14RandomDirtLootSpawner
isSubfloor: false
footstepSounds:
collection: FootstepAsteroid
collection: FootstepGrass
heatCapacity: 10000
weather: true
- type: tile
id: CP14FloorMyceliumLight
editorHidden: false
name: cp14-tiles-mycelium-light
sprite: /Textures/_CP14/Tiles/MyceliumLight/tile.png
variants: 12
placementVariants:
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 4
edgeSprites:
South: /Textures/_CP14/Tiles/MyceliumLight/double_edge_S.png
East: /Textures/_CP14/Tiles/MyceliumLight/double_edge_E.png
North: /Textures/_CP14/Tiles/MyceliumLight/double_edge_N.png
West: /Textures/_CP14/Tiles/MyceliumLight/double_edge_W.png
baseTurf: CP14FloorDirt
deconstructTools: [ CP14Digging ]
itemDrop: CP14RandomDirtLootSpawner
isSubfloor: false
footstepSounds:
collection: FootstepGrass
heatCapacity: 10000
weather: true
indestructible: true
- type: tile
editorHidden: false
@@ -114,7 +204,7 @@
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 3
edgeSpritePriority: 5
edgeSprites:
SouthEast: /Textures/_CP14/Tiles/Sand/single_edge_SE.png
NorthEast: /Textures/_CP14/Tiles/Sand/single_edge_NE.png
@@ -146,7 +236,7 @@
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 4
edgeSpritePriority: 6
edgeSprites:
SouthEast: /Textures/_CP14/Tiles/Grass/single_edge_SE.png
NorthEast: /Textures/_CP14/Tiles/Grass/single_edge_NE.png
@@ -178,7 +268,7 @@
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 5
edgeSpritePriority: 7
edgeSprites:
SouthEast: /Textures/_CP14/Tiles/GrassLight/single_edge_SE.png
NorthEast: /Textures/_CP14/Tiles/GrassLight/single_edge_NE.png
@@ -210,7 +300,7 @@
- 1.0
- 1.0
- 1.0
edgeSpritePriority: 6
edgeSpritePriority: 8
edgeSprites:
SouthEast: /Textures/_CP14/Tiles/GrassTall/single_edge_SE.png
NorthEast: /Textures/_CP14/Tiles/GrassTall/single_edge_NE.png
@@ -324,22 +414,3 @@
collection: FootstepSnow
heatCapacity: 10000
weather: true
- type: tile
id: CP14FloorIce
editorHidden: false
name: tiles-ice
sprite: /Textures/_CP14/Tiles/ice.png
variants: 4
placementVariants:
- 1.0
- 1.0
- 1.0
- 1.0
baseTurf: CP14FloorBase
isSubfloor: false
heatCapacity: 10000
friction: 0.05
mobAcceleration: 0.1
weather: true

View File

@@ -22,6 +22,9 @@
{
"name": "magma_caves"
},
{
"name": "mushroom_caves"
},
{
"name": "snow_island"
},

Binary file not shown.

After

Width:  |  Height:  |  Size: 525 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 891 B

View File

@@ -10,6 +10,9 @@
{
"name": "cave"
},
{
"name": "dirt"
},
{
"name": "frame"
},

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1022 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 815 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 940 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 830 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,35 @@
{
"version": 1,
"license": "CC-BY-SA-4.0",
"copyright": "By jaraten(github/discord), based on wax391's works",
"size": {
"x": 64,
"y": 96
},
"states": [
{
"name": "1_log"
},
{
"name": "1_hat"
},
{
"name": "2_log"
},
{
"name": "2_hat"
},
{
"name": "3_log"
},
{
"name": "3_hat"
},
{
"name": "4_log"
},
{
"name": "4_hat"
}
]
}

View File

@@ -0,0 +1,9 @@
- files:
- tile.png
- double_edge_E.png
- double_edge_N.png
- double_edge_S.png
- double_edge_W.png
license: "CC-BY-SA-3.0"
copyright: "Created by TheShuEd "
source: "https://github.com/crystallpunk-14/crystall-punk-14"

Binary file not shown.

After

Width:  |  Height:  |  Size: 777 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 720 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 834 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 891 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@@ -0,0 +1,9 @@
- files:
- tile.png
- double_edge_E.png
- double_edge_N.png
- double_edge_S.png
- double_edge_W.png
license: "CC-BY-SA-3.0"
copyright: "Created by TheShuEd "
source: "https://github.com/crystallpunk-14/crystall-punk-14"

Binary file not shown.

After

Width:  |  Height:  |  Size: 946 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 986 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1005 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB