This commit is contained in:
2026-01-24 16:34:15 -05:00
commit c23bf51490
3996 changed files with 657568 additions and 0 deletions

View File

@@ -0,0 +1,77 @@
# Entity Shape Attacks
- type: entity
id: ActionBaseHierophant
parent: BaseAction
name: hierophant action
abstract: true
components:
- type: Action
priority: -21
useDelay: 2
icon:
sprite: _Lavaland/Objects/Weapons/hierophant_club.rsi
state: icon
itemIconStyle: NoItem
- type: TargetAction
checkCanAccess: false
range: 30
- type: WorldTargetAction
- type: entity
id: ActionHierophantBox
parent: ActionBaseHierophant
name: Expanding Box
description: Spawns an expanding box on the target position.
components:
- type: AngerDelayAction
minDelay: 1.5
maxDelay: 4.0
inverse: true
- type: WorldTargetAction
event: !type:SpawnEntityActionEvent
spawn: HierophantShapeBoxExpanding
- type: entity
id: ActionHierophantCrosses
parent: ActionBaseHierophant
name: Sequence Crosses
description: Spawns a sequence of crosses on the target position.
components:
- type: AngerDelayAction
minDelay: 1.5
maxDelay: 4.0
inverse: true
- type: WorldTargetAction
event: !type:SpawnEntityActionEvent
spawn: HierophantShapeCrossSequence
attachToTarget: true
- type: entity
id: ActionHierophantChasers
parent: ActionBaseHierophant
name: Spawn Chasers
description: Spawns hierophant tile chasers that move towards the target.
categories: [ HideSpawnMenu ]
components:
- type: AngerDelayAction
minDelay: 7.0
maxDelay: 20.0
inverse: true
- type: EntityTargetAction # Without a target it's pretty much useless?
- type: WorldTargetAction
event: !type:SpawnEntityActionEvent
spawn: LavalandHierophantChaser
spawnAtUser: true
- type: entity
id: ActionHierophantBlink
parent: ActionBaseHierophant
name: Blink
description: Teleports you to the target position.
components:
- type: AngerDelayAction
minDelay: 3.0
maxDelay: 10.0
inverse: true
- type: WorldTargetAction
event: !type:MegafaunaBlinkActionEvent

View File

@@ -0,0 +1,39 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseAction
id: ActionPumpCursedHeart
name: Heartbeat
description: Pump your own blood to live!
categories: [ HideSpawnMenu ]
components:
- type: Action
icon:
sprite: _Lavaland/Objects/Specific/Lavaland/loot.rsi
state: cursed_heart
checkCanInteract: false
checkConsciousness: false
itemIconStyle: BigAction
useDelay: 1
- type: InstantAction
event: !type:PumpHeartActionEvent

View File

@@ -0,0 +1,57 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# Hierophant club
- type: entity
id: ActionHierophantClubTileMovement
name: Curse of Tile Movement
description: Makes the target move only by tiles.
categories: [ HideSpawnMenu ]
components:
- type: Action
priority: -23
useDelay: 30
icon:
sprite: /Textures/_Lavaland/Interface/Alerts/hierophantbeat.rsi
state: hierophant
itemIconStyle: NoItem
- type: TargetAction
range: 5
- type: EntityTargetAction
event: !type:ToggleTileMovementActionEvent
- type: entity
id: ActionHierophantClubBlink
parent: ActionBaseHierophant
name: Blink
description: Teleports you to any position you can physically reach.
components:
- type: Action
raiseOnUser: true
priority: -24
useDelay: 10
icon:
sprite: _Lavaland/Objects/Weapons/hierophant_club.rsi
state: icon
- type: TargetAction
range: 10
- type: WorldTargetAction
event: !type:MegafaunaBlinkActionEvent

View File

@@ -0,0 +1,11 @@
- type: entity
parent: BaseAction
id: ActionTogglePKALight
name: Toggle PKA Light
description: Toggle the PKA light on and off.
components:
- type: Action
useDelay: 0.5
icon: { sprite: Objects/Tools/seclite.rsi, state: seclite }
- type: InstantAction
event: !type:ToggleActionEvent

View File

@@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: alert
id: HierophantBeat
category: TileMovement
icons:
- sprite: /Textures/_Lavaland/Interface/Alerts/hierophantbeat.rsi
state: hierophant
name: alerts-hierophantbeat-name
description: alerts-hierophantbeat-desc

View File

@@ -0,0 +1,14 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: cargoProduct
id: CargoGatewayLavaland
icon:
sprite: /Textures/Structures/Machines/gateway.rsi
state: frame
product: GatewayFlatpackLavaland
cost: 20000
category: cargoproduct-category-name-cargo
group: market

View File

@@ -0,0 +1,32 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: CrateCargoGatewayLavaland
parent: CrateGenericSteel
name: lavaland gateway crate
description: Allows you to teleport straight to Lavaland.
components:
- type: StorageFill
contents:
- id: GatewayFlatpackLavaland
- type: entity
id: CrateCargoClarkeAssembly
name: clarke assembly crate
description: At long last, you will finally feel secure inside this brand new spankin machine! Assembly required.
parent: CratePrivateSecure
components:
- type: StorageFill
contents:
- id: ClarkeHarness
- id: ClarkeHead
- id: ClarkeLArm
- id: ClarkeRArm
- id: ClarkeTreads
- id: ClarkeCentralElectronics
- id: ClarkePeripheralsElectronics
- id: MechAirTank
- id: MechThruster

View File

@@ -0,0 +1,57 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: LavalandCrateNecropolisHeart
parent: LavalandCrateNecropolis
suffix: Heart
components:
- type: StorageFill
contents:
- id: LavalandCursedHeart
- type: entity
id: LavalandCrateNecropolisCultArmor
parent: LavalandCrateNecropolis
suffix: Cult Armor
components:
- type: StorageFill
contents:
- id: ClothingOuterArmorCult
- type: entity
id: LavalandCrateNecropolisCultRobe
parent: LavalandCrateNecropolis
suffix: Cult Robe
components:
- type: StorageFill
contents:
- id: ClothingOuterRobesCult
- id: BedsheetCult
- type: entity
id: LavalandCrateNecropolisVampirismCrystal
parent: LavalandCrateNecropolis
suffix: Vampirism Crystal
components:
- type: StorageFill
contents:
- id: LavalandVampirismCrystal

View File

@@ -0,0 +1,40 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Speebro <100388782+Speebr0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Speebro <speebro@notreal.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: constructionGraph
id: ExplorerSuit
start: start
graph:
- node: start
entity: LavalandEquipmentExplorerSuit
edges:
- to: reinforced1
steps:
- material: GoliathHide
amount: 1
doAfter: 2
- node: reinforced1
entity: LavalandEquipmentExplorerSuitReinforced1
edges:
- to: reinforced2
steps:
- material: GoliathHide
amount: 2
doAfter: 2
- node: reinforced2
entity: LavalandEquipmentExplorerSuitReinforced2
edges:
- to: reinforced3
steps:
- material: GoliathHide
amount: 3
doAfter: 2
- node: reinforced3
entity: LavalandEquipmentExplorerSuitReinforced3

View File

@@ -0,0 +1,10 @@
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: damageModifierSet
id: Hierophant
coefficients:
Piercing: 0.1 # No bullets
Heat: 0.5 # No lasers

View File

@@ -0,0 +1,81 @@
- type: entity
parent: [ ClothingOuterBaseMedium, AllowSuitStorageClothing, BaseCargoContraband ]
id: LavalandEquipmentAncientArmor
name: predecessor armor
description: Ancient armor that is fully made out of strong goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Clothing/OuterClothing/Hardsuits/ancient_armor.rsi
state: icon
- type: Clothing
sprite: _Lavaland/Clothing/OuterClothing/Hardsuits/ancient_armor.rsi
- type: Armor
coverage:
- Chest
- Groin
- Arm
- Leg
- Tail
- Hand
- Foot
traumaDeductions:
Dismemberment: 0.25
OrganDamage: 0.25
BoneDamage: 0.25
VeinsDamage: 0
NerveDamage: 0
modifiers:
coefficients:
Blunt: 0.3
Slash: 0.3
Piercing: 0.5
Heat: 0.3
Caustic: 0.3
- type: ExplosionResistance
damageCoefficient: 0.3
- type: FireProtection
reduction: 0.7
- type: ContainerContainer
containers:
toggleable-clothing: !type:Container {}
- type: ToggleableClothing
clothingPrototypes:
head: LavalandEquipmentAncientArmorHood
- type: PressureArmorChange
- type: entity
parent: ClothingHeadBase
id: LavalandEquipmentAncientArmorHood
name: predecessor helmet
description: Armored helmet that resembles some pagan deity. Eye holes are covered with durable resin. Looks like it's hard to breath inside.
components:
- type: Sprite
sprite: _Lavaland/Clothing/Head/Hardsuits/ancient_armor.rsi
state: icon
- type: Clothing
sprite: _Lavaland/Clothing/Head/Hardsuits/ancient_armor.rsi
- type: Tag
tags:
- WhitelistChameleon
- type: HideLayerClothing
slots:
- Hair
- HeadTop
- HeadSide
- type: Armor
traumaDeductions:
Dismemberment: 0.25
OrganDamage: 0.25
BoneDamage: 0.25
VeinsDamage: 0
NerveDamage: 0
coverage:
- Head
modifiers:
coefficients:
Blunt: 0.65
Slash: 0.65
Piercing: 0.7
Heat: 0.65
Caustic: 0.65
- type: PressureArmorChange

View File

@@ -0,0 +1,274 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: [ ClothingOuterBaseMedium, AllowSuitStorageClothing, BaseCargoContraband ]
id: LavalandEquipmentExplorerSuit
suffix: Lava
name: explorer suit
description: An armoured suit for exploring harsh environments.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: icon
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
- type: Armor
coverage:
- Chest
- Groin
- Arm
- Leg
- Tail
traumaDeductions:
Dismemberment: 0.25
OrganDamage: 0.25
BoneDamage: 0.25
VeinsDamage: 0
NerveDamage: 0
modifiers:
coefficients:
Blunt: 0.6
Slash: 0.6
Piercing: 0.65
Heat: 0.6
Caustic: 0.6
- type: ExplosionResistance
damageCoefficient: 0.6
- type: ContainerContainer
containers:
toggleable-clothing: !type:Container {}
- type: ToggleableClothing
clothingPrototypes:
head: LavalandEquipmentExplorerHood
- type: Construction
graph: ExplorerSuit
node: start
- type: FireProtection
reduction: 0.4
- type: PressureArmorChange
- type: Tag
tags:
- ExplorerSuit
- type: entity
parent: ClothingHeadBase
id: LavalandEquipmentExplorerHood
suffix: Lava
name: explorer hood
description: An armoured hood for exploring harsh environments.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: icon_head
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
- type: Tag
tags:
- WhitelistChameleon
- type: HideLayerClothing
slots:
- Hair
- HeadTop
- HeadSide
- type: Armor
traumaDeductions:
Dismemberment: 0.25
OrganDamage: 0.25
BoneDamage: 0.25
VeinsDamage: 0
NerveDamage: 0
coverage:
- Head
modifiers:
coefficients:
Blunt: 0.65
Slash: 0.65
Piercing: 0.7
Heat: 0.65
Caustic: 0.65
- type: PressureArmorChange
- type: entity
parent: LavalandEquipmentExplorerSuit
id: LavalandEquipmentExplorerSuitReinforced1
suffix: Reinforced
name: reinforced explorer suit
description: An armoured suit for exploring harsh environments. Lightly reinforced with goliath plates.
components:
- type: Armor
modifiers:
coefficients:
Blunt: 0.5
Slash: 0.5
Piercing: 0.6
Heat: 0.5
Caustic: 0.5
- type: ExplosionResistance
damageCoefficient: 0.5
- type: FireProtection
reduction: 0.5
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced1-icon
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced1-equipped-OUTERCLOTHING
- type: ToggleableClothing
clothingPrototypes:
head: LavalandEquipmentExplorerHoodReinforced1
- type: Construction
graph: ExplorerSuit
node: reinforced1
- type: entity
parent: LavalandEquipmentExplorerHood
id: LavalandEquipmentExplorerHoodReinforced1
suffix: Reinforced
name: reinforced explorer hood
description: An armoured hood for exploring harsh environments. Lightly reinforced with goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced1-icon_head
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced1-equipped-HELMET
- type: Armor
modifiers:
coefficients:
Blunt: 0.55
Slash: 0.55
Piercing: 0.65
Heat: 0.55
Caustic: 0.55
- type: entity
parent: LavalandEquipmentExplorerSuit
id: LavalandEquipmentExplorerSuitReinforced2
suffix: Reinforced
name: reinforced explorer suit
description: An armoured suit for exploring harsh environments. Mostly reinforced with goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced2-icon
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced2-equipped-OUTERCLOTHING
- type: Armor
modifiers:
coefficients:
Blunt: 0.4
Slash: 0.4
Piercing: 0.55
Heat: 0.4
Caustic: 0.4
- type: ExplosionResistance
damageCoefficient: 0.4
- type: FireProtection
reduction: 0.6
- type: ToggleableClothing
clothingPrototypes:
head: LavalandEquipmentExplorerHoodReinforced2
- type: Construction
graph: ExplorerSuit
node: reinforced2
- type: entity
parent: LavalandEquipmentExplorerHood
id: LavalandEquipmentExplorerHoodReinforced2
suffix: Reinforced
name: reinforced explorer hood
description: An armoured hood for exploring harsh environments. Mostly reinforced with goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced2-icon_head
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced2-equipped-HELMET
- type: Armor
modifiers:
coefficients:
Blunt: 0.45
Slash: 0.45
Piercing: 0.6
Heat: 0.45
Caustic: 0.45
- type: entity
parent: LavalandEquipmentExplorerSuit
id: LavalandEquipmentExplorerSuitReinforced3
suffix: Reinforced
name: reinforced explorer suit
description: An armoured suit for exploring harsh environments. Fully reinforced with goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced3-icon
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced3-equipped-OUTERCLOTHING
- type: Armor
modifiers:
coefficients:
Blunt: 0.3
Slash: 0.3
Piercing: 0.5
Heat: 0.3
Caustic: 0.3
- type: ExplosionResistance
damageCoefficient: 0.3
- type: FireProtection
reduction: 0.7
- type: ToggleableClothing
clothingPrototypes:
head: LavalandEquipmentExplorerHoodReinforced3
- type: Construction
graph: ExplorerSuit
node: reinforced3
- type: entity
parent: LavalandEquipmentExplorerHood
id: LavalandEquipmentExplorerHoodReinforced3
suffix: Reinforced
name: reinforced explorer hood
description: An armoured hood for exploring harsh environments. Fully reinforced with goliath plates.
components:
- type: Sprite
sprite: _Lavaland/Equipment/explorer_suit.rsi
state: reinforced3-icon_head
- type: Clothing
sprite: _Lavaland/Equipment/explorer_suit.rsi
equippedState: reinforced3-equipped-HELMET
- type: Armor
modifiers:
coefficients:
Blunt: 0.35
Slash: 0.35
Piercing: 0.55
Heat: 0.35
Caustic: 0.35

View File

@@ -0,0 +1,117 @@
# Base
- type: entity
parent: MarkerBase
id: BaseHierophantShape
name: hierophant attack spawner
categories: [ HideSpawnMenu, Spawner ]
abstract: true
components:
- type: Sprite
state: red
- type: ShapeSpawner
spawn: LavalandHierophantSquare
# Crosses
- type: entity
parent: BaseHierophantShape
id: HierophantShapeCrossBishop
name: hierophant attack cross bishop spawner
categories: [ HideSpawnMenu, Spawner ]
components:
- type: ShapeSpawner
shape: !type:NestedEntityShape
id: BishopCross
size: 11
- type: entity
parent: BaseHierophantShape
id: HierophantShapeCrossRook
name: hierophant attack cross rook spawner
categories: [ HideSpawnMenu, Spawner ]
components:
- type: ShapeSpawner
shape: !type:NestedEntityShape
id: RookCross
size: 11
- type: entity
parent: BaseHierophantShape
id: HierophantShapeCrossQueen
name: hierophant attack cross queen spawner
categories: [ HideSpawnMenu, Spawner ]
components:
- type: ShapeSpawner
shape: !type:NestedEntityShape
id: QueenCross
size: 11
# Blink
- type: entity
parent: BaseHierophantShape
id: HierophantShapeBlink
name: hierophant attack blink spawner
categories: [ HideSpawnMenu, Spawner ]
components:
- type: ShapeSpawner
shape: !type:NestedEntityShape
id: BoxFilled
size: 3
- type: entity
parent: HierophantShapeBlink
id: HierophantShapeBlinkSafe
name: hierophant attack safe blink spawner
categories: [ HideSpawnMenu, Spawner ]
components:
- type: ShapeSpawner
spawn: LavalandHierophantSquareSafe
# Expanding box
- type: entity
parent: MarkerBase
id: HierophantShapeBoxExpanding
name: hierophant attack box expanding spawner
suffix: Anger
categories: [ HideSpawnMenu, Spawner ]
components:
- type: Sprite
state: red
- type: ShapeSpawner
spawn: LavalandHierophantSquare
shape: !type:NestedEntityShape
id: BoxHollow
- type: ShapeSpawnerCounter
- type: AngerShapeSpawner
counterRange: 3,8
periodRange: 0.2,0.7
inversePeriod: true
- type: ExpandingShapeSpawner
counterSize: 1
# Sequence crosses
- type: entity
parent: MarkerBase
id: HierophantShapeCrossSequence
name: hierophant attack cross sequence spawner
suffix: Anger
categories: [ HideSpawnMenu, Spawner ]
components:
- type: Sprite
state: red
- type: ShapeSpawner
spawn: LavalandHierophantSquare
shape: !type:GroupEntityShape
children:
- id: BishopCross
size: 11
- id: RookCross
size: 11
# - id: QueenCross # TODO expand MobPhases for actions, so it can be "upgraded" to also have a chance to spawn a queen cross.
# size: 11
# weight: 0.3
- type: ShapeSpawnerCounter
- type: AngerShapeSpawner
counterRange: 2,4
periodRange: 0.7,1.2
inversePeriod: true
- type: ExpandingShapeSpawner

View File

@@ -0,0 +1,38 @@
# Expanding box
- type: entity
parent: MarkerBase
id: HierophantClubShapeExpandingBox
name: hierophant attack box expanding spawner
suffix: Hierophant club
categories: [ HideSpawnMenu, Spawner ]
components:
- type: Sprite
state: red
- type: ShapeSpawner
spawn: LavalandHierophantSquare
shape: !type:NestedEntityShape
id: BoxHollow
- type: ShapeSpawnerCounter
maxCounter: 3
spawnPeriod: 0.6
- type: ExpandingShapeSpawner
counterSize: 1
# Sequence crosses
- type: entity
parent: MarkerBase
id: HierophantClubShapeRandomCross
name: hierophant attack cross sequence spawner
suffix: Hierophant club
categories: [ HideSpawnMenu, Spawner ]
components:
- type: Sprite
state: red
- type: ShapeSpawner
spawn: LavalandHierophantSquare
shape: !type:GroupEntityShape
children:
- id: BishopCross
size: 4
- id: RookCross
size: 4

View File

@@ -0,0 +1,40 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: MarkerBase
id: LavalandCrateNecropolisRandom
name: random necropolis chest spawner
suffix: Lavaland
components:
- type: Sprite
layers:
- state: red
- sprite: _Lavaland/Structures/Storage/Crates/necropolechest.rsi
state: icon
- type: RandomSpawner
offset: 0
prototypes:
- LavalandCrateNecropolisCultRobe
- LavalandCrateNecropolisCultArmor
- LavalandCrateNecropolisHeart
- LavalandCrateNecropolisVampirismCrystal
chance: 1

View File

@@ -0,0 +1,60 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entityTable
id: LavalandMobs
table: !type:GroupSelector
children:
- !type:GroupSelector
weight: 50
children:
- id: MobGoliathRandom
- id: MobHivelord
- !type:GroupSelector
weight: 35
children:
- id: MobCarpDungeon
- !type:GroupSelector
weight: 15
children:
- id: MobWatcherIcewing
- id: MobWatcherLavaland
#- id: LavalandTendrilLegion
- type: entity
name: lavaland mob spawner
id: SpawnerRandomMobLavaland
parent: MarkerBase
suffix: Lavaland
components:
- type: Sprite
layers:
- state: red
- sprite: Mobs/Aliens/Asteroid/goliath.rsi
state: goliath
- type: EntityTableSpawner
table: !type:NestedSelector
tableId: LavalandMobs
placement:
mode: AlignTileAny
- type: entity
id: MobGoliathRandom
parent: MarkerBase
name: Goliath
suffix: Random
components:
- type: Sprite
sprite: Mobs/Aliens/Asteroid/goliath.rsi
state: goliath
- type: EntityTableSpawner
table: !type:GroupSelector
children:
- id: MobLavalandGoliath
weight: 99
- id: MobLavalandGoliathAncient
weight: 1

View File

@@ -0,0 +1,57 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# Tendril Random Spawners
- type: entityTable
id: LavalandTendrils
table: !type:GroupSelector
children:
- !type:GroupSelector
weight: 70
children:
- id: LavalandTendrilLavaWatcher
- id: LavalandTendrilGoliath
- !type:GroupSelector
weight: 20
children:
- id: LavalandTendrilSpaceCarp
- !type:GroupSelector
weight: 10
children:
- id: LavalandTendrilIcewingWatcher
- id: LavalandTendrilMagmawingWatcher
#- id: LavalandTendrilLegion
- type: entity
name: tendril spawner
id: SpawnerRandomTendrilLavaland
parent: MarkerBase
suffix: Lavaland
components:
- type: Sprite
layers:
- state: red
- sprite: _Lavaland/Structures/Specific/tendril.rsi
state: tendril
- type: EntityTableSpawner
table: !type:NestedSelector
tableId: LavalandTendrils
placement:
mode: AlignTileAny

View File

@@ -0,0 +1,12 @@
- type: entity
parent: MarkerBase
id: SpawnMobHierophant
name: Hierophant Spawner
components:
- type: Sprite
layers:
- state: green
- state: ai
- type: ConditionalSpawner
prototypes:
- MobHierophant

View File

@@ -0,0 +1,125 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
# SPDX-FileCopyrightText: 2025 SX_7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: MobHierophant
name: hierophant
description: A massive metal club that hangs in the air as though waiting. It'll make you dance to its beat.
components:
# Basic stuff
- type: Physics
bodyType: KinematicController
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.35,-0.6,0.35,0.6"
density: 10000 # 10 tons. Can't really push this thing
mask:
- MobMask
layer:
- MobLayer
- type: Sprite
noRot: true
drawdepth: Mobs
sprite: _Lavaland/Mobs/Bosses/hierophant.rsi
state: hierophant
- type: Clickable
- type: InteractionOutline
- type: InputMover
- type: Input
context: "human"
- type: LagCompensation
- type: MobMover
- type: Actions
- type: Appearance
- type: RotationVisuals
defaultRotation: 0
horizontalRotation: 0
- type: DoAfter
- type: Examiner
- type: Eye
- type: ContentEye
- type: RequireProjectileTarget
active: False
- type: CombatMode
- type: MobState
- type: Damageable
damageContainer: Inorganic
damageModifierSet: Hierophant
- type: NoSlip
- type: MovementSpeedModifier
baseWalkSpeed: 1.5
baseSprintSpeed: 1.5
- type: MobThresholds
thresholds:
0: Alive
2500: Dead
- type: Tag
tags:
- CannotSuicide
# Actual boss from here
- type: ActionGrant
actions:
- ActionHierophantBox
- ActionHierophantCrosses
- ActionHierophantChasers
- ActionHierophantBlink
- type: Fauna
- type: Anger
totalHp: 2500
- type: Aggressive
forgiveRange: 25
- type: MobPhases
phaseThresholds:
0: 1
1000: 2
2000: 3
- type: BossMusic
soundId: Hierophant
- type: TileMovement
- type: DamageSquareImmunity
- type: SpawnLootOnDeath
loot: LavalandHierophantClub
deleteOnDeath: true
- type: MegafaunaAi
actionDelay: 0.5
selector: !type:NestedMegafaunaSelector
id: Hierophant
- type: AngerPlayerScaling
angerScale: 1.1
hpScale: 1.2
- type: MegafaunaFieldGenerator
wallId: WallHierophantArenaTemporary
wallShape: !type:NestedEntityShape
id: BoxHollow
size: 11 # Radius of the arena
- type: MegafaunaAnchor
- type: MegafaunaBlink
spawnOnTarget: HierophantShapeBlink
spawnOnUsed: HierophantShapeBlink
- type: MegafaunaBlinkInactive
- type: MegafaunaGodmode
- type: MegafaunaRejuvenate

View File

@@ -0,0 +1,46 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# todo: make it differ from baseasteroidmob... somehow???
- type: entity
id: LavalandMobBase
parent:
- BaseMob
- MobDamageable
- MobAtmosExposed
- MobCombat
abstract: true
components:
- type: Reactive
groups:
Flammable: [ Touch ]
Extinguish: [ Touch ]
Acidic: [ Touch, Ingestion, Eyes ]
- type: Climbing
- type: NameIdentifier
group: GenericNumber
- type: StatusEffects
allowed:
- SlowedDown
- TemporaryBlindness
- RadiationProtection
- type: Tag
tags:
- DoorBumpOpener

View File

@@ -0,0 +1,70 @@
- type: entity
id: MobLavalandGoliath
parent: MobGoliath
suffix: Lavaland
components:
- type: Sprite
sprite: _Lavaland/Mobs/goliath.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: goliath
- type: DamageStateVisuals
states:
Alive:
Base: goliath
Dead:
Base: goliath_dead
- type: WeatherImmune
- type: entity
id: MobLavalandGoliathAncient
parent: MobGoliath
name: ancient goliath
suffix: Lavaland
components:
- type: WeatherImmune
- type: Sprite
sprite: _Lavaland/Mobs/goliath.rsi
layers:
- map: [ "enum.DamageStateVisualLayers.Base" ]
state: goliath_ancient
- type: DamageStateVisuals
states:
Alive:
Base: goliath_ancient
Dead:
Base: goliath_ancient_dead
- type: MovementSpeedModifier
baseWalkSpeed: 2.5
baseSprintSpeed: 2.5
- type: MeleeWeapon
soundHit:
path: "/Audio/Weapons/smash.ogg"
angle: 0
attackRate: 0.75
animation: WeaponArcPunch
damage:
types:
Piercing: 10
Slash: 15
#- type: MobThresholds
# thresholds:
# 0: Alive
# 400: Dead
- type: HTN
constantlyReplan: false
rootTask:
task: GoliathCompound
blackboard:
VisionRadius: !type:Single
6
AggroVisionRadius: !type:Single
10
NavSmash: !type:Bool
true
- type: Butcherable
spawned:
- id: FoodMeatGoliath
amount: 3
- id: MaterialGoliathHide1
amount: 3

View File

@@ -0,0 +1,24 @@
- type: entity
name: fruiting cacti
parent: FoodProduceBase
id: FoodMealCactusFruit
description: A cactus fruit covered in a thick, reddish skin. And some ash.
components:
- type: Food
- type: FlavorProfile
flavors:
- berry
- type: Sprite
sprite: _Lavaland/Objects/Consomable/flora.rsi
state: fruiting_cactus
- type: SolutionContainerManager
solutions:
food:
maxVol: 18
reagents:
- ReagentId: Nutriment
Quantity: 5
- ReagentId: Water # Uhh, cacti are juicy, right?
Quantity: 5
- ReagentId: VitriumFroth
Quantity: 8

View File

@@ -0,0 +1,22 @@
- type: entity
name: seraka cap
parent: FoodProduceBase
id: FoodMealSerakaCap
description: Small, deeply flavourful mushrooms originally native to Tizira.
components:
- type: Food
- type: FlavorProfile
flavors:
- berry
- type: Sprite
sprite: _Lavaland/Objects/Consomable/flora.rsi
state: seraka_cap
- type: SolutionContainerManager
solutions:
food:
maxVol: 10
reagents:
- ReagentId: Nutriment
Quantity: 3
- ReagentId: SerakaExtract
Quantity: 7

View File

@@ -0,0 +1,43 @@
- type: entity
name: fruiting cacti
parent: BaseStructure
id: FruitCactus
description: Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash.
components:
- type: Sprite
sprite: _Lavaland/Objects/Decoration/Flora/fruiting_cactus.rsi
layers:
- state: cactus1
map: ["random"]
- type: RandomSprite
available:
- random:
cactus1: ""
cactus2: ""
cactus3: ""
cactus4: ""
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.2
- type: InteractionOutline
- type: Harvestable
delay: 2.5
loot: FoodMealCactusFruit
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 150
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -0,0 +1,47 @@
- type: entity
name: dusty bush
id: AshBush
description: A bush that is covered in ash. It may look like it's dead, but it's actually alive!
components:
- type: Sprite
sprite: _Lavaland/Objects/Decoration/Flora/bush.rsi
layers:
- state: bush1
map: ["random"]
- type: RandomSprite
available:
- random:
bush1: ""
bush2: ""
bush3: ""
- type: Clickable
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.2
- type: InteractionOutline
#- type: Gatherable # TODO add proper loot
# toolWhitelist:
# components:
# - Hands
# loot:
# All: !type:GroupSelector
# children:
# - id: FoodSpaceshroom
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 25
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -0,0 +1,43 @@
- type: entity
name: lavashroom
parent: BaseStructure
id: Lavashroom
suffix: Structure
description: A wild mushroom that likes to grow in hot, moist environments.
components:
- type: Sprite
sprite: _Lavaland/Objects/Decoration/Flora/lavashroom.rsi
layers:
- state: shroom1
map: ["random"]
- type: RandomSprite
available:
- random:
shroom1: ""
shroom2: ""
shroom3: ""
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.2
- type: InteractionOutline
- type: Harvestable
delay: 3.5
loot: FoodSpaceshroom # TODO: make lavashroom food
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 150
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -0,0 +1,41 @@
- type: entity
name: seraka mushrooms
parent: BaseStructure
id: SerakaMushroom
description: A small cluster of seraka mushrooms. These must have come with the ashlizards.
components:
- type: Sprite
sprite: _Lavaland/Objects/Decoration/Flora/seraka_mushroom.rsi
layers:
- state: seraka_mushroom1
map: ["random"]
- type: RandomSprite
available:
- random:
seraka_mushroom1: ""
seraka_mushroom2: ""
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.2
- type: InteractionOutline
- type: Harvestable
delay: 3.5
loot: FoodMealSerakaCap
- type: Damageable
damageContainer: StructuralInorganic
damageModifierSet: Wood
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 150
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]

View File

@@ -0,0 +1,53 @@
- type: entity
parent: BaseTree
id: FloraAshtree
name: ash tree
components:
- type: Sprite
sprite: _Lavaland/Objects/Decoration/Flora/ashtree.rsi
offset: 0,0.5
layers:
- state: ashtree01
map: ["random"]
- type: RandomSprite
available:
- random:
ashtree01: ""
ashtree02: ""
ashtree03: ""
ashtree04: ""
ashtree05: ""
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.3,0.25,0.3"
density: 1000
layer:
- WallLayer
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 400
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:PlaySoundBehavior
sound:
path: /Audio/Effects/tree_fell.ogg
params:
volume: 5
variation: 0.05
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
Log:
min: 2
max: 5

View File

@@ -0,0 +1,31 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseComputerCircuitboard
id: LavalandShuttleConsoleCircuitboard
name: mining shuttle console board
description: A printed circuit board for a mining shuttle console.
components:
- type: Sprite
state: cpu_supply
- type: ComputerBoard
prototype: ComputerShuttleMiningLavaland

View File

@@ -0,0 +1,13 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseFlatpack
id: GatewayFlatpackLavaland
name: lavaland gateway flatpack # "lavaland" only in name since that's what it's used for, to be clear to players
description: A flatpack used to bluespace in a gateway for travel to Lavaland.
components:
- type: Flatpack
entity: GatewayLavalandStation

View File

@@ -0,0 +1,343 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: OreBase
id: ArtifactFragmentOre
name: artifact fragment ore
suffix: Full
components:
- type: Stack
stackType: ArtifactFragmentOre
- type: Sprite
sprite: _Lavaland/Objects/Materials/ore.rsi
state: artifact
- type: Material
- type: PhysicalComposition
materialComposition:
RawArtifactFragment: 100
- type: Extractable
juiceSolution:
reagents:
- ReagentId: Artifexium
Quantity: 10
- type: GuideHelp
guides:
- Xenoarchaeology
- type: Item
heldPrefix: artifact
- type: Tag
tags:
- Ore
- OreGold
- type: entity
parent: ArtifactFragmentOre
id: ArtifactFragmentOre1
suffix: Single
components:
- type: Stack
count: 1
# This is kinda shitty, but the other choice is fucking with StackSystem to allow it to track entities so I can keep tabs on which ore specifically has been clained.
# Or cook some nasty shitcode to split the unclaimed value across all of the entities in the stack if there is any. But that feels fairly wonky.
# Enjoy having to shove any new ores here.
- type: entity
parent: GoldOre
id: GoldOreUnprocessed
name: unprocessed gold ore
suffix: Full
components:
- type: Stack
stackType: GoldOreUnprocessed
- type: UnclaimedOre
miningPoints: 12
- type: entity
parent: GoldOreUnprocessed
id: GoldOre1Unprocessed
name: unprocessed gold ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: DiamondOre
id: DiamondOreUnprocessed
name: unprocessed diamond ore
suffix: Full
components:
- type: Stack
stackType: DiamondOreUnprocessed
- type: UnclaimedOre
miningPoints: 1000 # rarest ore in the game, only 1 yield, used for endgame schematics
- type: entity
parent: DiamondOreUnprocessed
id: DiamondOre1Unprocessed
name: unprocessed diamond ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: SteelOre
id: SteelOreUnprocessed
name: unprocessed iron ore
suffix: Thirty
components:
- type: Stack
stackType: SteelOreUnprocessed
- type: UnclaimedOre
miningPoints: 3 # very abundant, is used up more than coal (coal 0.1, iron 0.33)
- type: entity
id: SteelOre1Unprocessed
parent: SteelOreUnprocessed
name: unprocessed iron ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
id: SteelOre60Unprocessed
parent: SteelOreUnprocessed
name: unprocessed iron ore
suffix: Sixty
components:
- type: Stack
count: 60
- type: entity
id: SteelOre90Unprocessed
parent: SteelOreUnprocessed
name: unprocessed iron ore
suffix: Full
components:
- type: Stack
count: 90
- type: entity
parent: PlasmaOre
id: PlasmaOreUnprocessed
name: unprocessed plasma ore
suffix: Full
components:
- type: Stack
stackType: PlasmaOreUnprocessed
- type: UnclaimedOre
miningPoints: 6
- type: entity
parent: PlasmaOreUnprocessed
id: PlasmaOre1Unprocessed
name: unprocessed plasma ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: SilverOre
id: SilverOreUnprocessed
name: unprocessed silver ore
suffix: Full
components:
- type: Stack
stackType: SilverOreUnprocessed
- type: UnclaimedOre
miningPoints: 12
- type: entity
parent: SilverOreUnprocessed
id: SilverOre1Unprocessed
name: unprocessed silver ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: SpaceQuartz
id: SpaceQuartzUnprocessed
name: unprocessed space quartz
suffix: Thirty
components:
- type: Stack
stackType: SpaceQuartzUnprocessed
- type: UnclaimedOre
miningPoints: 3.5 # slightly rarer than iron and coal
- type: entity
parent: SpaceQuartzUnprocessed
id: SpaceQuartz1Unprocessed
name: unprocessed space quartz
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: SpaceQuartzUnprocessed
id: SpaceQuartz60Unprocessed
name: unprocessed space quartz
suffix: Sixty
components:
- type: Stack
count: 60
- type: entity
parent: SpaceQuartzUnprocessed
id: SpaceQuartz90Unprocessed
name: unprocessed space quartz
suffix: Full
components:
- type: Stack
count: 90
- type: entity
parent: UraniumOre
id: UraniumOreUnprocessed
name: unprocessed uranium ore
suffix: Full
components:
- type: Stack
stackType: UraniumOreUnprocessed
- type: UnclaimedOre
miningPoints: 24 # used for fuel, lategame schematics, artifacts ect
- type: entity
parent: UraniumOreUnprocessed
id: UraniumOre1Unprocessed
name: unprocessed uranium ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: BananiumOre
id: BananiumOreUnprocessed
name: unprocessed bananium ore
suffix: Full
components:
- type: Stack
stackType: BananiumOreUnprocessed
- type: UnclaimedOre
miningPoints: 69 # nice
- type: entity
parent: BananiumOreUnprocessed
id: BananiumOre1Unprocessed
name: unprocessed bananium ore
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: Coal
id: CoalUnprocessed
name: unprocessed coal
suffix: Thirty
components:
- type: Stack
stackType: CoalUnprocessed
- type: UnclaimedOre
miningPoints: 1 # very abundant, used up much less in steel (0.1 coal, 0.33 iron)
- type: entity
parent: CoalUnprocessed
id: Coal1Unprocessed
name: unprocessed coal
suffix: Single
components:
- type: Stack
count: 1
- type: entity
parent: CoalUnprocessed
id: Coal5Unprocessed
name: unprocessed coal
suffix: Five
components:
- type: Stack
count: 5
- type: entity
parent: CoalUnprocessed
id: Coal10Unprocessed
name: unprocessed coal
suffix: Ten
components:
- type: Stack
count: 10
- type: entity
parent: CoalUnprocessed
id: Coal15Unprocessed
name: unprocessed coal
suffix: Fifteen
components:
- type: Stack
count: 15
- type: entity
parent: CoalUnprocessed
id: Coal60Unprocessed
name: unprocessed coal
suffix: Sixty
components:
- type: Stack
count: 60
- type: entity
parent: CoalUnprocessed
id: Coal90Unprocessed
name: unprocessed coal
suffix: Full
components:
- type: Stack
count: 90
- type: entity
parent: ArtifactFragmentOre
id: ArtifactFragmentOreUnprocessed
name: unprocessed artifact fragment ore
suffix: Full
components:
- type: Stack
stackType: ArtifactFragmentOreUnprocessed
- type: UnclaimedOre
miningPoints: 200
- type: entity
parent: ArtifactFragmentOreUnprocessed
id: ArtifactFragmentOre1Unprocessed
name: unprocessed artifact fragment ore
suffix: Single
components:
- type: Stack
count: 1

View File

@@ -0,0 +1,31 @@
- type: entity
parent: BaseSubdermalImplant
id: DeathRattleLavalandImplant
name: lavaland death rattle implant
description: This implant will inform the Supply radio channel should the user die. Works only on lavaland surface and tells exact coordinates of death.
categories: [ HideSpawnMenu ]
components:
- type: SubdermalImplant
permanent: true
whitelist:
components:
- MobState # admeme implanting a chair with rattle implant needs to give the chair mobstate so it can die first
- type: MansusGraspBlockTrigger
- type: TriggerBlocker
mapWhitelist:
components:
- LavalandMap
- type: TriggerOnMobstateChange
mobState:
- Dead
- type: Rattle
radioChannel: Supply
reportCoordinates: true
- type: entity
id: DeathRattleLavalandImplanter
suffix: Lavaland Death Rattle
parent: BaseImplantOnlyImplanter
components:
- type: Implanter
implant: DeathRattleLavalandImplant

View File

@@ -0,0 +1,63 @@
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# hierophant damaging thing
- type: entity
id: LavalandHierophantSquare
categories: [ DoNotMap ]
name: hierophant square
placement:
mode: SnapgridCenter
snap:
- Wall
components:
- type: Sprite
sprite: _Lavaland/Effects/mob_effects.rsi
state: hierophant_blast
- type: Transform
anchored: true
- type: TimedDespawn
lifetime: 1
- type: DamageSquare
damageDelay: 0.7
damage:
types:
Blunt: 10
Heat: 10
damageWhitelist:
components:
- MobState
sound:
path: /Audio/_Lavaland/Mobs/Bosses/hiero_blast.ogg
- type: entity
id: LavalandHierophantChaser
suffix: DO NOT MAP
categories: [ DoNotMap ]
name: hierophant chaser
placement:
mode: SnapgridCenter
snap:
- Wall
components:
- type: Transform
anchored: true
- type: TileChaser
spawn: LavalandHierophantSquare
- type: AngerTileChaser
speedRange: 3,5
stepsRange: 15,40
- type: entity
parent: LavalandHierophantSquare
id: LavalandHierophantSquareSafe
suffix: Safe
components:
- type: DamageSquare
damageWhitelist:
requireAll: true
components:
- MobState
- Fauna # Only damages fauna

View File

@@ -0,0 +1,100 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
name: survival medipen
parent: ChemicalMedipen
id: SurvivalMedipen
description: A cocktail of powerful healing chemicals. Contains Leporazine, and Miner's Salve. Slowly heals damage and stabilizes body temperature. You can overdose on these if you use more than one in quick succession.
components:
- type: Sprite
sprite: /Textures/_Lavaland/Objects/Specific/Medical/medipen.rsi
layers:
- state: survivalpen
map: [ "enum.SolutionContainerLayers.Fill" ]
- type: Appearance
- type: SolutionContainerVisuals
maxFillLevels: 1
changeColor: false
emptySpriteName: survivalpen_empty
- type: Hypospray
solutionName: pen
transferAmount: 40
onlyAffectsMobs: false
injectOnly: true
- type: SolutionContainerManager
solutions:
pen:
maxVol: 40
reagents:
- ReagentId: MinersSalve
Quantity: 20
- ReagentId: Leporazine
Quantity: 10
- ReagentId: Epinephrine
Quantity: 10
# doesn't get any better than this
- type: entity
name: luxury medipen
parent: ChemicalMedipen
id: LuxuryMedipen
description: Cutting edge bluespace technology allowed Nanotrasen to compact 180u of volume into a single medipen. Contains rare and powerful chemicals used to aid in exploration of harsh environments. Chemicals relatively harmful and not as effective when used outside of low pressure.
components:
- type: Sprite
sprite: /Textures/_Lavaland/Objects/Specific/Medical/luxmedipen.rsi
layers:
- state: luxpen
map: [ "enum.SolutionContainerLayers.Fill" ]
- type: Appearance
- type: SolutionContainerVisuals
maxFillLevels: 1
changeColor: false
emptySpriteName: luxpen_empty
- type: Hypospray
solutionName: pen
transferAmount: 180
onlyAffectsMobs: false
injectOnly: true
- type: SolutionContainerManager
solutions:
pen:
maxVol: 180
reagents:
- ReagentId: DexalinPlus
Quantity: 20
- ReagentId: Epinephrine # until Penthrite gets shitcoded in someday
Quantity: 20
- ReagentId: Oxandrolone
Quantity: 20
- ReagentId: SalicylicAcid
Quantity: 20
- ReagentId: Omnizine
Quantity: 20
- ReagentId: Leporazine
Quantity: 20
- ReagentId: TranexamicAcid
Quantity: 20
- ReagentId: Saline
Quantity: 20
- ReagentId: Luxurium
Quantity: 20

View File

@@ -0,0 +1,44 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseItem
id: LavalandJaunter
name: jaunter
description: A complex device running on bluespace technology, that can teleport you out of danger spaces. You should have this on you when walking near a chasm.
components:
- type: Sprite
sprite: _Lavaland/Objects/Specific/Salvage/jaunter.rsi
state: icon
- type: Item
size: Small
- type: PreventChasmFalling
- type: entity
parent: LavalandJaunter
id: LavalandJaunterRecharging
name: experimental jaunter
components:
- type: PreventChasmFalling
deleteOnUse: false
- type: UseDelay
delay: 120

View File

@@ -0,0 +1,51 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: LavalandCursedHeart
parent: BaseHumanOrgan
name: heart
description: "I feel bad for the heartless bastard who lost this."
components:
- type: Sprite
sprite: _Lavaland/Objects/Specific/Lavaland/loot.rsi
state: cursed_heart
- type: Item
size: Small
- type: CursedHeartGrant
- type: entity
id: LavalandVampirismCrystal
parent: BasePKAUpgrade
name: a red crystal
components:
- type: Sprite
sprite: _Lavaland/Objects/Specific/Lavaland/loot.rsi
state: crystal
- type: GunUpgrade
tags: [ GunUpgradeReloadSpeed ]
examineText: gun-upgrade-examine-text-vampirism
- type: GunUpgradeVampirism
damageOnHit:
types:
Slash: -1.5
Piercing: -1.5
Blunt: -1.5

View File

@@ -0,0 +1,92 @@
- type: entity
id: MarkerBeacon
parent: BaseItem
name: marker beacon
description: Shines you the way through the darkness. Useful to not get lost on vast landscapes.
suffix: Unanchored
components:
- type: Sprite
sprite: _Lavaland/Objects/Specific/Salvage/marker_beacon.rsi
noRot: true
layers:
- state: base
- state: unshaded
color: "#FFFFFF"
visible: false
shader: unshaded
map: [ "light" ]
- type: Anchorable
delay: 0.2
- type: EnergySword # For random colors... Why the HELL it's called like that?!
- type: ItemToggle
- type: ItemTogglePointLight
toggleableVisualsColorModulatesLights: true
- type: Item
size: Tiny
- type: PointLight
enabled: false
radius: 2
energy: 2
color: white
netsync: false
- type: Appearance
- type: ToggleableVisuals
spriteLayer: light
- type: Tag
tags:
- MarkerBeacon
- type: UserInterface # Goobstation-EsColorPicker
interfaces:
enum.EsColorPickerMenu.Key:
type: EsColorPickerBUI
- type: entity
id: MarkerBeaconActive
parent: MarkerBeacon
suffix: Unanchored, Active
components:
- type: ItemToggle
activated: true
- type: entity
id: MarkerBeaconAnchored
parent: MarkerBeacon
suffix: Anchored
components:
- type: Transform
anchored: true
- type: Physics
canCollide: False
bodyType: Static
- type: entity
id: MarkerBeaconActiveAnchored
parent: MarkerBeaconActive
suffix: Anchored, Active
components:
- type: Transform
anchored: true
- type: Physics
canCollide: False
bodyType: Static
- type: entity
parent: BaseAmmoProvider # this is for cycling swabs out and not spawning 30 entities, trust
id: BoxMarkerBeacons
name: marker beacon dispenser
description: Dispenses 30 marker beacons, extremely useful for space and planet exploration.
components:
- type: Sprite
layers:
- state: boxwide
- type: BallisticAmmoProvider
whitelist:
tags:
- MarkerBeacon
proto: MarkerBeaconActive
capacity: 30
- type: UseDelay
delay: 1.0 # to prevent salvagers from creating neutron stars that kill client performance for everyone
#- type: GuideHelp
# guides:
#

View File

@@ -0,0 +1,70 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 PeccNeck <74548962+PeccNeck@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
abstract: true
parent: BaseItem
id: BaseShelterCapsule
components:
- type: Sprite
sprite: _Lavaland/Objects/Specific/Salvage/capsule.rsi
state: capsule
- type: Item
size: Tiny
- type: UseDelay
delay: 5 # avoid spamming popups when you know it will fail to spawn a room
- type: ShelterCapsule
- type: entity
parent: BaseShelterCapsule
id: ShelterCapsule
name: bluespace shelter capsule
description: An emergency shelter stored within a pocket of bluespace.
components:
- type: ShelterCapsule
deployTime: 5.0
preloadedGrid: ShelterCapsule5x5
boxSize: 5,5
offset: -2.5,-2.5
- type: entity
parent: BaseShelterCapsule
id: ShelterCapsuleLuxury
name: luxury bluespace shelter capsule
description: An exorbitantly expensive luxury suite stored within a pocket of bluespace.
components:
- type: ShelterCapsule
deployTime: 8.0
preloadedGrid: ShelterCapsule7x7
boxSize: 7,7
offset: -3.5,-3.5
# Grids
- type: preloadedGrid
id: ShelterCapsule5x5
path: /Maps/_Lavaland/Shelters/shelter_5x5.yml
copies: 0
- type: preloadedGrid
id: ShelterCapsule7x7
path: /Maps/_Lavaland/Shelters/shelter_7x7.yml
copies: 0

View File

@@ -0,0 +1,157 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
name: proto-kinetic shotgun
id: WeaponProtoKineticShotgun
parent: [ BaseGunWieldable, WeaponProtoKineticAcceleratorBase, BaseCargoContraband ]
description: Fires a spread of low-damage kinetic bolts that are half as effective for mining.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_shotgun.rsi
layers:
- state: icon
map: [ "enum.WeaponVisualLayers.Base" ]
- state: bayonet
map: [ "enum.WeaponVisualLayers.Bayonet" ]
visible: false
- state: flight
map: [ "enum.WeaponVisualLayers.FlightOff" ]
visible: false
- state: flight-on
map: [ "enum.WeaponVisualLayers.FlightOn" ]
visible: false
- state: animation-icon
visible: false
map: [ "empty-icon" ]
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_shotgun.rsi
- type: BasicEntityAmmoProvider
proto: PelletKineticSpread
capacity: 1
count: 1
- type: UpgradeableGun
maxUpgradeCapacity: 70
whitelist:
tags:
- PKAUpgrade
- type: GunRequiresWield
- type: Item
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_shotgun.rsi
shape:
- 0,0,4,0
- type: entity
name: proto-kinetic repeater
id: WeaponProtoKineticRepeater
parent: [ WeaponProtoKineticAcceleratorBase, BaseCargoContraband ]
description: Fires a barrage of medium-damage kinetic bolts at a short range.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_repeater.rsi
layers:
- state: icon
map: [ "enum.WeaponVisualLayers.Base" ]
- state: bayonet
map: [ "enum.WeaponVisualLayers.Bayonet" ]
visible: false
- state: flight
map: [ "enum.WeaponVisualLayers.FlightOff" ]
visible: false
- state: flight-on
map: [ "enum.WeaponVisualLayers.FlightOn" ]
visible: false
- state: animation-icon
visible: false
map: [ "empty-icon" ]
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_repeater.rsi
- type: Gun
selectedMode: Burst
minAngle: 10
maxAngle: 20
burstFireRate: 3
burstCooldown: 1.5
availableModes:
- Burst
soundGunshot:
path: /Audio/Weapons/Guns/Gunshots/kinetic_accel.ogg
- type: BasicEntityAmmoProvider
proto: RapidBulletKinetic
capacity: 3
count: 3
- type: UpgradeableGun
maxUpgradeCapacity: 70
whitelist:
tags:
- PKAUpgrade
- type: Item
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_repeater.rsi
shape:
- 0,0,2,1
- type: entity
name: proto-kinetic pistol
id: WeaponProtoKineticPistol
parent: [ WeaponProtoKineticAcceleratorBase, BaseCargoContraband ]
description: Fires low-damage kinetic bolts, has a higher mod capacity.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_pistol.rsi
layers:
- state: icon
map: [ "enum.WeaponVisualLayers.Base" ]
- state: bayonet
map: [ "enum.WeaponVisualLayers.Bayonet" ]
visible: false
- state: flight
map: [ "enum.WeaponVisualLayers.FlightOff" ]
visible: false
- state: flight-on
map: [ "enum.WeaponVisualLayers.FlightOn" ]
visible: false
- state: animation-icon
visible: false
map: [ "empty-icon" ]
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_pistol.rsi
- type: BasicEntityAmmoProvider
proto: WeakBulletKinetic
capacity: 1
count: 1
- type: UpgradeableGun
maxUpgradeCapacity: 200
whitelist:
tags:
- PKAUpgrade
- type: Gun
availableModes:
- FullAuto
- SemiAuto
- type: Item
sprite: _Lavaland/Objects/Weapons/Guns/Basic/kinetic_pistol.rsi
size: Small
shape:
- 0,0,1,0
- 0,1,0,1

View File

@@ -0,0 +1,63 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: RapidBulletKinetic
name: rapid kinetic bolt
parent: BulletKinetic
categories: [ HideSpawnMenu ]
components:
- type: Projectile
impactEffect: BulletImpactEffectKinetic
damage:
types:
Blunt: 24
- type: entity
id: WeakBulletKinetic
categories: [ HideSpawnMenu ]
parent: BulletKinetic
components:
- type: Projectile
impactEffect: BulletImpactEffectKinetic
damage:
types:
Blunt: 12
- type: entity
id: PelletKinetic
categories: [ HideSpawnMenu ]
parent: WeakBulletKinetic
components:
- type: GatheringProjectile
probability: 0.5
- type: entity
id: PelletKineticSpread
categories: [ HideSpawnMenu ]
parent: PelletKinetic
components:
- type: ProjectileSpread
proto: PelletKinetic
count: 6
spread: 30

View File

@@ -0,0 +1,157 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aviu00 <93730715+Aviu00@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
name: base katana
parent: BaseSword
id: LavalandBaseKatana
abstract: true
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Melee/katana.rsi
layers:
- state: blade
- state: handle
- type: Item
sprite: _Lavaland/Objects/Weapons/Melee/katana.rsi
shape:
- 0,0,0,3
#storedSprite:
# state: storage
# sprite: Objects/Weapons/Melee/katana_storage_64x.rsi #Done in 64x64 because it looks way too puny in 32x32
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Melee/katana.rsi
slots:
- Back
- Belt
- type: MeleeWeapon
wideAnimationRotation: -60
soundHit:
path: /Audio/Weapons/bladeslice.ogg
damage:
types:
Slash: 15
- type: DisarmMalus
- type: MeleeDash
- type: UseDelay
delay: 5 # Melee dash is strong
- type: StaticPrice
price: 10000
- type: Tag
tags:
- Katana
- type: entity
name: cryo katana
description: Okay maybe things took a weird route when a snow golem was making this engraved sword.
parent: [ LavalandBaseKatana, BaseSalvageContraband ]
id: CryoKatana
categories: [ DoNotMap ]
components:
- type: Sprite
layers:
- state: blade
color: "#00FFFF"
- state: handle
- type: Item
#storedSprite:
# state: storage
# sprite: Objects/Weapons/Melee/katana_storage_64x.rsi #Done in 64x64 because it looks way too puny in 32x32
inhandVisuals:
left:
- state: handle-inhand-left
- state: blade-inhand-left
color: "#00FFFF"
right:
- state: handle-inhand-right
- state: blade-inhand-right
color: "#00FFFF"
- type: Clothing
clothingVisuals:
back:
- state: handle-equipped-BACKPACK
- state: blade-equipped-BACKPACK
color: "#00FFFF"
belt:
- state: handle-equipped-BELT
- state: blade-equipped-BELT
color: "#00FFFF"
- type: ChangeTemperatureOnHit
heat: -100000 # Low temperature also slows you down, so the change is lower than on lava katana
- type: entity
name: lava katana
description: One thousand degree knife, that somehow always keeps intact.
parent: [ LavalandBaseKatana, BaseSalvageContraband ]
id: LavaKatana
categories: [ DoNotMap ]
components:
- type: Sprite
layers:
- state: blade
color: "#FF6600"
- state: handle
- type: Item
#storedSprite:
# state: storage
# sprite: Objects/Weapons/Melee/katana_storage_64x.rsi #Done in 64x64 because it looks way too puny in 32x32
inhandVisuals:
left:
- state: handle-inhand-left
- state: blade-inhand-left
color: "#FF6600"
right:
- state: handle-inhand-right
- state: blade-inhand-right
color: "#FF6600"
- type: Clothing
clothingVisuals:
back:
- state: handle-equipped-BACKPACK
- state: blade-equipped-BACKPACK
color: "#FF6600"
belt:
- state: handle-equipped-BELT
- state: blade-equipped-BELT
color: "#FF6600"
- type: ChangeTemperatureOnHit
heat: 150000
- type: entity
name: shadow katana
description: Legendary sword that emits the darkness itself. Has an ability to pierce through any armor with enough luck and determination.
parent: BaseSword
id: ShadowKatana
categories: [ DoNotMap ]
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Melee/shadow_katana.rsi
state: icon
- type: Item
size: Ginormous # Im not making a storage sprite for this shi
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Melee/shadow_katana.rsi
slots:
- Back
- Belt
- type: MeleeWeapon
wideAnimationRotation: -60
soundHit:
path: /Audio/Weapons/bladeslice.ogg
damage:
types:
Slash: 20
Holy: 10
- type: DisarmMalus
- type: MeleeDash
- type: UseDelay
delay: 3
- type: StaticPrice
price: 25000
- type: Tag
tags:
- Katana
# TODO: SWOON

View File

@@ -0,0 +1,241 @@
# SPDX-FileCopyrightText: 2025 ActiveMammmoth <140334666+ActiveMammmoth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 ActiveMammmoth <kmcsmooth@gmail.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 gus <august.eymann@gmail.com>
# SPDX-FileCopyrightText: 2025 keronshb <54602815+keronshb@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: [BaseItem, BaseSecurityCargoContraband]
id: LavalandWeaponKineticBase
abstract: true
components:
- type: Tag
tags:
- Pickaxe
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_spear.rsi
state: icon
- type: AmmoCounter
- type: UseDelayOnShoot
- type: UseDelay
delay: 0.9
- type: Gun
soundGunshot: /Audio/Weapons/plasma_cutter.ogg
fireRate: 1
useKey: false
- type: RechargeBasicEntityAmmo
rechargeCooldown: 0.5
rechargeSound:
path: /Audio/Weapons/Guns/MagIn/kinetic_reload.ogg
- type: BasicEntityAmmoProvider
proto: BulletCharge
capacity: 1
count: 1
- type: DisarmMalus
- type: MegafaunaWeaponLooter
- type: entity
parent: [LavalandWeaponKineticBase, BaseSecurityCargoContraband]
id: LavalandWeaponKineticSpear
name: kinetic spear
description: A long-ranged melee weapon. Deals less damage than a normal crusher, but has longer attack range.
components:
- type: Tag
tags:
- Pickaxe
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_spear.rsi
state: icon
- type: AmmoCounter
- type: UseDelayOnShoot
- type: UseDelay
delay: 0.9
- type: Gun
soundGunshot: /Audio/Weapons/plasma_cutter.ogg
fireRate: 1
useKey: false
- type: RechargeBasicEntityAmmo
rechargeSound:
path: /Audio/Weapons/Guns/MagIn/kinetic_reload.ogg
rechargeCooldown: 0.5
- type: BasicEntityAmmoProvider
proto: BulletCharge
capacity: 1
count: 1
- type: MeleeWeapon
attackRate: 0.65 # insane reach
wideAnimationRotation: -135
damage:
types:
Blunt: 10
Slash: 5
soundHit:
collection: MetalThud
angle: 0
animation: WeaponArcThrust
range: 2.2
- type: GunRequiresWield
- type: Item
size: Ginormous
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_spear-inhands.rsi
- type: DisarmMalus
- type: Wieldable
- type: Sharp
- type: MeleeRequiresWield
fumbleOnAttempt: true
- type: DamageBoostOnMarker
boost:
types: # Totals to 60 damage when hitting marked targets
Blunt: 30
Slash: 15
backstabBoost: # And 20 extra for a backstab. Adding up to 80
types:
Blunt: 11
Slash: 9
- type: entity
parent: LavalandWeaponKineticBase
id: LavalandWeaponKineticHammer
name: kinetic hammer
description: A beefy, two-handed weapon that inflicts knockback and heavier damage than a crusher.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_hammer.rsi
state: icon
- type: UseDelay
delay: 1
- type: MeleeWeapon
attackRate: 0.70 # slightly slower than the fireaxe
wideAnimationRotation: -135
damage:
types:
Blunt: 17.5
soundHit:
collection: MetalThud
angle: 0
animation: WeaponArcThrust
range: 1.6
- type: Item
size: Ginormous
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_hammer-inhands.rsi
- type: MeleeThrowOnHit
distance: 3
speed: 5
- type: FlipOnHit
- type: GunRequiresWield
- type: Wieldable
- type: MeleeRequiresWield
fumbleOnAttempt: true
- type: DamageBoostOnMarker
boost:
types: # BLOOD FOR THE BLOOD GOD ITS A FUCKING HAMMER
Blunt: 75
- type: Tool
speedModifier: 1.5 # peak hammer technology
useSound:
path: /Audio/Items/trayhit2.ogg
qualities:
- Hammering
- type: entity
parent: [LavalandWeaponKineticBase, ClothingHandsBase]
id: LavalandWeaponKineticClaws
name: kinetic claws
description: Unleash your inner edgelord with this one-handed claw small enough to fit in your backpack. Deals a lot more damage when backstabbing marked targets.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_claws.rsi
state: icon
- type: UseDelay
delay: 1
- type: Clothing
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_claws-inhands.rsi
- type: Fiber
fiberMaterial: fibers-kinetic
fiberColor: fibers-purple
- type: MeleeWeapon
attackRate: 1.5
wideAnimationRotation: -135
damage:
types:
Slash: 5
soundHit:
collection: MetalThud
angle: 0
animation: WeaponArcThrust
range: 1.6
mustBeEquippedToUse: true
- type: Item
size: Normal
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_claws-inhands.rsi
- type: Sharp
- type: DamageBoostOnMarker
boost:
types: # Totals to 45 damage when hitting marked targets
Slash: 25
Blunt: 15
backstabBoost: # And 120 extra for a backstab. Adding up to 165!!!
types:
Slash: 75
Blunt: 45
- type: entity
parent: LavalandWeaponKineticBase
id: LavalandWeaponKineticMachete
name: kinetic machete
description: A smaller, one-handed variant of the crusher which allows you to block attacks.
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_machete.rsi
state: icon
- type: UseDelay
delay: 1
- type: MeleeWeapon
attackRate: 1.0 # slightly slower than a combat/utility knife, but in return is slightly stronger than one
damage:
types:
Slash: 12.5
soundHit:
collection: MetalThud
angle: 0
animation: WeaponArcThrust
range: 1.6
- type: Item
size: Ginormous
sprite: _Lavaland/Objects/Weapons/Crushers/crusher_machete-inhands.rsi
# too lazy to port parrying and risk a [redacted] lmao
- type: Sharp
- type: DamageBoostOnMarker
boost:
types: # Totals to 50 damage when hitting marked targets
Slash: 27.5
Blunt: 10
backstabBoost: # And 20 extra for a backstab
types:
Slash: 15
Blunt: 5
- type: BlockCharge
rechargeTime: 120
markerReductionTime: 20

View File

@@ -0,0 +1,90 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: LavalandHierophantClub
parent: BaseItem
name: hierophant club
description: Get item'ed lol
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/hierophant_club.rsi
state: icon
- type: Clothing
sprite: _Lavaland/Objects/Weapons/hierophant_club.rsi
slots:
- back
- suitStorage
- type: Item
size: Normal
sprite: _Lavaland/Objects/Weapons/hierophant_club-inhands.rsi
- type: StaticPrice
price: 5000
- type: MeleeWeapon
wideAnimationRotation: 90
attackRate: 0.75
damage:
types:
Blunt: 15
Heat: 5
- type: ActionGrant
actions:
- ActionHierophantClubTileMovement
- ActionHierophantClubBlink
- type: ItemActionGrant
actions:
- ActionHierophantClubTileMovement
- ActionHierophantClubBlink
- type: HeldGrantComponent
components:
- type: MegafaunaBlink
spawnOnTarget: HierophantShapeBlinkSafe
spawnOnUsed: HierophantShapeBlinkSafe
- type: entity
id: LavalandHierophantMarker
name: mysterious marker
description: What even is this?
placement:
mode: AlignTileAny
components:
- type: Transform
anchored: true
- type: Physics
bodyType: Static
- type: Fixtures
fixtures:
fix1:
hard: false
shape:
!type:PhysShapeCircle
radius: 0.35
- type: Clickable
- type: InteractionOutline
- type: Sprite
sprite: _Lavaland/Structures/Specific/hierophant_telepad.rsi
state: hierophant_tele_on # TODO hierophant visuals
- type: SyncSprite
- type: PointLight
radius: 5.0
energy: 1.5
softness: 1
castShadows: false

View File

@@ -0,0 +1,152 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: BasePKAUpgrade
parent: [BaseItem, BaseSecurityCargoContraband]
name: PKA modkit
description: A modkit for a proto-kinetic accelerator.
abstract: true
components:
- type: Sprite
sprite: _Lavaland/Objects/Weapons/upgrade.rsi
- type: Item
size: Small
- type: GunUpgrade
- type: StaticPrice
price: 750
- type: Tag
tags:
- PKAUpgrade
- type: entity
id: PKAUpgradeDamage
parent: BasePKAUpgrade
name: PKA modkit (damage)
components:
- type: Sprite
layers:
- state: base
- state: overlay-1
color: "#ec9b2d"
- state: overlay-2
color: "#a71010"
- state: overlay-3
color: "#eb4c13"
- type: GunUpgrade
capacityCost: 40
tags: [ GunUpgradeDamage ]
examineText: gun-upgrade-examine-text-damage
- type: GunUpgradeDamage
damage:
types:
Blunt: 10
- type: entity
id: PKAUpgradeRange
parent: BasePKAUpgrade
name: PKA modkit (range)
components:
- type: Sprite
layers:
- state: base
- state: overlay-1
color: "#2decec"
- state: overlay-2
color: "#1012a7"
- state: overlay-3
color: "#1373eb"
- type: GunUpgrade
tags: [ GunUpgradeRange ]
capacityCost: 20
examineText: gun-upgrade-examine-text-range
- type: GunUpgradeSpeed
coefficient: 1.5
- type: entity
id: PKAUpgradeFireRate
parent: BasePKAUpgrade
name: PKA modkit (fire rate)
components:
- type: Sprite
layers:
- state: base
- state: overlay-1
color: "#bbf134"
- state: overlay-2
color: "#07901b"
- state: overlay-3
color: "#9bf134"
- type: GunUpgrade
tags: [ GunUpgradeReloadSpeed ]
capacityCost: 40
examineText: gun-upgrade-examine-text-reload
- type: GunUpgradeFireRate
coefficient: 1.5
- type: entity
id: PKAUpgradeLight
parent: BasePKAUpgrade
name: PKA modkit (light)
components:
- type: Sprite
layers:
- state: base
- state: overlay-1
color: "#bbf134"
- state: overlay-2
color: "#07901b"
- state: overlay-3
color: "#9bf134"
- type: GunUpgrade
tags: [ GunUpgradeReloadSpeed ]
examineText: gun-upgrade-examine-text-light
capacityCost: 10
unique: true
- type: GunComponentUpgrade
components:
- type: UnpoweredFlashlight
- type: PointLight
color: "#ffeead"
enabled: false
radius: 4
- type: entity
id: PKAUpgradePressure
parent: [BaseSyndicateContraband, BasePKAUpgrade]
name: PKA modkit (pressure)
components:
- type: Sprite
layers:
- state: base
- state: overlay-1
color: "#ff4500"
- state: overlay-2
color: "#9b0000"
- state: overlay-3
color: "#ff4500"
- type: GunUpgrade
tags: [ GunUpgradePressure ]
examineText: gun-upgrade-examine-text-pressure
unique: true
- type: GunUpgradePressure

View File

@@ -0,0 +1,7 @@
- type: entity
id: BaseSalvageContraband
parent: BaseRestrictedContraband
abstract: true
components:
- type: Contraband
allowedJobs: [ SalvageSpecialist ]

View File

@@ -0,0 +1,48 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseGateway
id: GatewayLavaland
name: Lavaland gateway
description: To hell you go.
components:
- type: ActivatableUI
key: enum.GatewayUiKey.Key
- type: UserInterface
interfaces:
enum.GatewayUiKey.Key:
type: GatewayBoundUserInterface
- type: Gateway
enabled: true
tagRestriction: LavalandStationGateway
- type: Tag
tags:
- Structure
- LavalandGateway
- type: entity
parent: BaseGateway
id: GatewayLavalandStation
name: Lavaland gateway
description: To hell you go.
suffix: Station
components:
- type: ActivatableUI
key: enum.GatewayUiKey.Key
- type: UserInterface
interfaces:
enum.GatewayUiKey.Key:
type: GatewayBoundUserInterface
- type: Gateway
enabled: true
tagRestriction: LavalandGateway
- type: Tag
tags:
- Structure
- LavalandStationGateway
- type: Construction
graph: LavaPortal
node: Lavaportal

View File

@@ -0,0 +1,74 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: VendingMachine
id: VendingMachineMiningDrobe
name: MiningDrobe
description: A highly advanced vending machine for buying mining related clothing for free. Please do not mine Bitcoin with it.
components:
- type: VendingMachine
pack: MiningDrobeInventory
offState: off
brokenState: broken
normalState: normal-unshaded
- type: Advertise
pack: MiningDrobeAds
- type: SpeakOnUIClosed
pack: GenericVendGoodbyes
- type: Sprite
sprite: _Lavaland/Structures/VendingMachines/minerdrobe.rsi
layers:
- state: "off"
map: ["enum.VendingMachineVisualLayers.Base"]
- state: "off"
map: ["enum.VendingMachineVisualLayers.BaseUnshaded"]
shader: unshaded
- state: panel
map: ["enum.WiresVisualLayers.MaintenancePanel"]
- type: PointLight
radius: 1.5
energy: 1.6
color: "#b89e2a"
- type: AccessReader
access: [["Salvage"]]
- type: localizedDataset
id: MiningDrobeAds
values:
prefix: advertisement-miningdrobe-
count: 3
- type: vendingMachineInventory
id: MiningDrobeInventory
startingInventory:
ClothingUniformJumpsuitSalvageSpecialist: 3
ClothingShoesBootsSalvage: 3
ClothingHandsGlovesColorBlack: 3
ClothingBackpackSalvage: 2
ClothingBackpackSatchelSalvage: 2
ClothingBackpackDuffelSalvage: 2
ClothingBackpackMessengerSalvage: 2
ClothingHeadsetMining: 2
ClothingOuterWinterMiner: 2
emaggedInventory:
PKAUpgradeDamage: 1

View File

@@ -0,0 +1,147 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
id: LavalandTendrilBase
parent: BaseStructure
name: tendril
abstract: true
description: A huge structure.
components:
- type: Sprite
noRot: true
sprite: _Lavaland/Structures/Specific/tendril.rsi
state: tendril
drawdepth: Mobs
- type: Tendril
- type: Damageable
damageContainer: Biological
damageModifierSet: Skeleton
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 250
behaviors:
- !type:DoActsBehavior
acts: [ "Destruction" ]
- !type:SpawnEntitiesBehavior
spawn:
LavalandCrateNecropolisRandom:
min: 1
max: 1
- type: Physics
bodyType: Static
- type: Transform
noRot: true
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeAabb
bounds: "-0.25,-0.45,0.25,0.45"
mask:
- MobMask
layer:
- MobLayer
density: 200
- type: entity
id: LavalandTendrilGoliath
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Goliath
components:
- type: Tendril
maxSpawns: 2
mobsToDefeat: 6
spawnDelay: 15.0
spawns:
- MobGoliath
- type: entity
id: LavalandTendrilLegion
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Legion
components:
# TODO: Add Legioners
- type: Tendril
spawns: []
- type: entity
id: LavalandTendrilLavaWatcher
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Watcher
components:
- type: Tendril
maxSpawns: 2
mobsToDefeat: 8
spawnDelay: 12.0
spawns:
- MobWatcherLavaland
- type: entity
id: LavalandTendrilIcewingWatcher
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Ice Watcher
components:
- type: Tendril
maxSpawns: 2
mobsToDefeat: 4
spawnDelay: 12.0
spawns:
- MobWatcherIcewing
- type: entity
id: LavalandTendrilMagmawingWatcher
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Magma Watcher
components:
- type: Tendril
maxSpawns: 2
mobsToDefeat: 4
spawnDelay: 12.0
spawns:
- MobWatcherMagmawing
- type: entity
id: LavalandTendrilSpaceCarp
parent: LavalandTendrilBase
name: tendril
description: A huge structure.
suffix: Carp
components:
- type: Tendril
maxSpawns: 4
mobsToDefeat: 8
spawnDelay: 8.0
spawns:
- MobCarpDungeon

View File

@@ -0,0 +1,31 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: CrateGenericSteel
id: LavalandCrateNecropolis
name: necropolis chest
description: Steel and strong.
components:
- type: Icon
sprite: _Lavaland/Structures/Storage/Crates/necropolechest.rsi
- type: Sprite
sprite: _Lavaland/Structures/Storage/Crates/necropolechest.rsi

View File

@@ -0,0 +1,46 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# this goes on lavaland, unlimited
- type: entity
parent: AirlockGlassShuttle
id: AirlockExternalGlassShuttleMining
suffix: External, Mining, Glass, Docking, Locked
components:
- type: PriorityDock
tag: DockMining
- type: ContainerFill
containers:
board: [ DoorElectronicsExternal ]
# 1 per map, this spawns the mining shuttle
- type: entity
parent: AirlockExternalGlassShuttleMining
id: AirlockExternalGlassShuttleMiningFilled
suffix: Mining, Filled, Locked
components:
- type: PriorityDock
tag: DockMining
- type: GridFill
path: /Maps/_Lavaland/mining.yml
addComponents:
- type: IFF
flags:
- HideLabel

View File

@@ -0,0 +1,67 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
abstract: true
parent: BaseComputer
id: BaseComputerDocking
components:
- type: Sprite
layers:
- map: [ "computerLayerBody" ]
state: computer
- map: [ "computerLayerKeyboard" ]
state: generic_keyboard
- map: [ "computerLayerScreen" ]
state: shuttle
- map: ["computerLayerKeys" ]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ActivatableUI
key: enum.DockingConsoleUiKey.Key
- type: UserInterface
interfaces:
enum.DockingConsoleUiKey.Key:
type: DockingConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: WorldLoader
radius: 256
- type: DockingConsole
- type: PointLight
radius: 1.5
energy: 1.6
color: "#43ccb5"
- type: entity
parent: BaseComputerDocking
id: ComputerShuttleMiningLavaland
name: mining shuttle console
description: Used to pilot the mining shuttle to and from the mining base.
components:
- type: DockingConsole
windowTitle: mining-console-window-title
shuttleWhitelist:
components:
- MiningShuttle
- type: Computer
board: LavalandShuttleConsoleCircuitboard

View File

@@ -0,0 +1,70 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 Aviu00 <93730715+Aviu00@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: entity
parent: BaseWall
id: WallHierophantArena
name: hierophant wall
components:
- type: Tag
tags:
- Wall
- type: Sprite
sprite: _Lavaland/Structures/Walls/hierophant.rsi
- type: Icon
sprite: _Lavaland/Structures/Walls/hierophant.rsi
- type: Destructible
- type: IconSmooth
key: walls
base: hierophant
- type: SyncSprite
- type: PointLight
radius: 5.0
energy: 1.5
softness: 1
castShadows: false
- type: RustRequiresPathStage
pathStage: 11 # Can't rust
- type: entity
parent: BaseWall
id: WallHierophantArenaTemporary
name: hierophant field
description: "Keeps the salvager in and... Why are you looking at this in a middle of a fight? You have nothing to do?!"
components:
- type: Tag
tags:
- Wall
- type: Sprite
sprite: _Lavaland/Structures/Walls/hierophant_temp.rsi
- type: Icon
sprite: _Lavaland/Structures/Walls/hierophant_temp.rsi
- type: Destructible
- type: IconSmooth
key: hierofield
base: hierotemp
shader: unshaded
- type: Occluder
enabled: false
- type: RustRequiresPathStage
pathStage: 11 # Can't rust

View File

@@ -0,0 +1,36 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: gameMap
id: Lavatest
mapName: Lavaland Playtest
mapPath: /Maps/_Lavaland/lavaland_playtest.yml
minPlayers: 0
stations:
Lavatest:
stationProto: StandardNanotrasenStation
components:
- type: StationNameSetup
mapNameTemplate: "LavaTest"
- type: StationJobs
availableJobs:
Quartermaster: [ 1, 1 ]
SalvageSpecialist: [ -1, -1 ]

View File

@@ -0,0 +1,78 @@
# Root selector
- type: megafaunaSelector
id: Hierophant
selector: !type:AllMegafaunaSelector
children:
- id: PickTargetSimple
- id: HierophantActions
# Target selector
- type: megafaunaSelector
id: PickTargetSimple
selector: !type:AggressivePickTargetSelector
delay: 0.0
priority: 10
targetConditions:
# Hit closer aggressors more often.
- !type:RangeCondition
maxRange: 3.0
- !type:RangeCondition
maxRange: 6.0
- !type:RangeCondition
maxRange: 9.0
# Actions
- type: megafaunaSelector
id: HierophantActions
selector: !type:GroupMegafaunaSelector
children:
- id: ActionHierophantBox
- id: ActionHierophantCrosses
- id: ActionHierophantChasers
- id: ActionHierophantBlink
# Anger delays are needed so hierophant doesn't wait for 4 seconds and then uses all actions at once.
# TODO: add support for actions to have a shared delay so we can remove AngerNumberSelector
- type: megafaunaSelector
id: ActionHierophantBox
selector: !type:PerformActionSelector
delay: !type:AngerNumberSelector
range: 1.0,4.0
inverse: true
actionId: ActionHierophantBox
conditions:
- !type:ActionAvailableCondition
actionId: ActionHierophantBox
- type: megafaunaSelector
id: ActionHierophantCrosses
selector: !type:PerformActionSelector
delay: !type:AngerNumberSelector
range: 1.0,3.0
inverse: true
actionId: ActionHierophantCrosses
conditions:
- !type:ActionAvailableCondition
actionId: ActionHierophantCrosses
- type: megafaunaSelector
id: ActionHierophantChasers
selector: !type:PerformActionSelector
delay: !type:AngerNumberSelector
range: 0.1,0.5
inverse: true
actionId: ActionHierophantChasers
conditions:
- !type:ActionAvailableCondition
actionId: ActionHierophantChasers
- type: megafaunaSelector
id: ActionHierophantBlink
selector: !type:PerformActionSelector
delay: !type:AngerNumberSelector
range: 0.2,1.0
inverse: true
actionId: ActionHierophantBlink
conditions:
- !type:ActionAvailableCondition
actionId: ActionHierophantBlink

View File

@@ -0,0 +1,143 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: dungeonRoom
id: LavalandInterior5x5a
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 0,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5b
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 6,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5c
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 12,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5d
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 18,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5e
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 6,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5f
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 6,6
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5g
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 6,12
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5h
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 6,18
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5i
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 12,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5j
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 12,6
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5k
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 12,12
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5l
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 12,18
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5m
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 18,0
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5n
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 18,6
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5o
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 18,12
tags: [LavalandInterior5x5]
- type: dungeonRoom
id: LavalandInterior5x5p
size: 5,5
atlas: /Maps/_Lavaland/Lavaland/Dungeon/lavaland_interior.yml
offset: 18,18
tags: [LavalandInterior5x5]
- type: entity
id: LavalandInteriorRoomMarker
parent: BaseRoomMarker
name: Lavaland interior marker
suffix: 5x5
components:
- type: RoomFill
roomWhitelist:
tags:
- LavalandInterior5x5

View File

@@ -0,0 +1,34 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: biomeMarkerLayer
id: RandomTendrilLavaland
prototype: SpawnerRandomTendrilLavaland
radius: 64
maxCount: 24
size: 512
- type: biomeMarkerLayer
id: RandomMobLavaland
prototype: SpawnerRandomMobLavaland
radius: 32
maxCount: 96
size: 128

View File

@@ -0,0 +1,495 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# First we lava, then we land... Let's Lavaland!
- type: biomeTemplate
id: LavaLand
layers:
- !type:BiomeMetaLayer
threshold: -1.0
template: LavaCaves
- !type:BiomeMetaLayer
template: LavaWastelands
threshold: -0.5
noise:
frequency: 0.003
noiseType: OpenSimplex2
fractalType: FBm
octaves: 2
lacunarity: 2
- !type:BiomeMetaLayer
template: Ashlands
threshold: 0
noise:
frequency: 0.003
noiseType: OpenSimplex2
fractalType: FBm
octaves: 2
lacunarity: 2
- !type:BiomeMetaLayer
template: LavaLakes
threshold: 0.5
noise:
frequency: 0.003
noiseType: OpenSimplex2
fractalType: FBm
octaves: 2
lacunarity: 2
# Default wastelands, edited Wizden's Lava biome
- type: biomeTemplate
id: LavaWastelands
layers:
- !type:BiomeEntityLayer
threshold: 0.95
noise:
frequency: 1
seed: 15
allowedTiles:
- FloorBasaltLavaland
entities:
- BasaltOne
- BasaltTwo
- BasaltThree
- BasaltFour
- BasaltFive
- !type:BiomeDecalLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.95
divisions: 1
noise:
seed: 25
frequency: 1
decals:
- Basalt1
- Basalt2
- Basalt3
- Basalt4
- Basalt5
- Basalt6
- Basalt7
- Basalt8
- Basalt9
- !type:BiomeEntityLayer
threshold: 0.95
noise:
seed: 0
noiseType: OpenSimplex2
frequency: 2
allowedTiles:
- FloorBasaltLavaland
entities:
- FloraRockSolid
# Fruit (cactus fruit)
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.9
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
frequency: 2
entities:
- FruitCactus
- !type:BiomeEntityLayer
threshold: 0.2
noise:
seed: 10
frequency: 0.025
fractalType: FBm
octaves: 5
lacunarity: 2
gain: 0.4
allowedTiles:
- FloorBasaltLavaland
entities:
- FloorLavaEntity
# Rock formations
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: -0.25
noise:
seed: 5
noiseType: Cellular
frequency: 0.05
lacunarity: 2
fractalType: FBm
octaves: 5
cellularDistanceFunction: Euclidean
cellularReturnType: Distance2
entities:
- WallRockBasalt
- !type:BiomeDummyLayer
id: Loot
# Fill basalt
- !type:BiomeTileLayer
threshold: -1
tile: FloorBasaltLavaland
# Ashlands - wasteland with more life, but fully covered in ash
- type: biomeTemplate
id: Ashlands
layers:
# Normal lavaland things included on basalt tiles
- !type:BiomeEntityLayer
threshold: 0.95
noise:
frequency: 1
seed: 15
allowedTiles:
- FloorPlanetAsh
- FloorBasaltLavaland
entities:
- BasaltOne
- BasaltTwo
- BasaltThree
- BasaltFour
- BasaltFive
- !type:BiomeDecalLayer
allowedTiles:
- FloorPlanetAsh
- FloorBasaltLavaland
threshold: 0.95
divisions: 1
noise:
seed: 25
frequency: 1
decals:
- Basalt1
- Basalt2
- Basalt3
- Basalt4
- Basalt5
- Basalt6
- Basalt7
- Basalt8
- Basalt9
- !type:BiomeEntityLayer
threshold: 0.95
noise:
seed: 0
noiseType: OpenSimplex2
frequency: 2
allowedTiles:
- FloorPlanetAsh
- FloorBasaltLavaland
entities:
- FloraRockSolid # Rock is flora apparently by the way.
# Instead of lava lakes there are only lava rivers
- !type:BiomeEntityLayer
allowedTiles:
- FloorPlanetAsh
- FloorBasaltLavaland
threshold: 0.95
noise:
seed: 4
noiseType: OpenSimplex2
frequency: 0.003
lacunarity: 1.50
fractalType: Ridged
octaves: 1
entities:
- FloorLavaEntity
# Rock formations
- !type:BiomeEntityLayer
allowedTiles:
- FloorPlanetAsh
threshold: -0.2 # +0.05 compared to default lavaland so walls appear less
noise:
seed: 5
noiseType: Cellular
frequency: 0.05
lacunarity: 2
fractalType: FBm
octaves: 5
cellularDistanceFunction: Euclidean
cellularReturnType: Distance2
entities:
- AsteroidRock
#
# Actual Ashlands from here!
#
# Vegetation
- !type:BiomeEntityLayer
allowedTiles:
- FloorPlanetAsh
threshold: 0.85
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
entities:
- AshBush
# Food (mushrooms)
- !type:BiomeEntityLayer
allowedTiles:
- FloorPlanetAsh
threshold: 0.9
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
entities:
- Lavashroom
# Fruit (seraka mushrooms)
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
- FloorPlanetAsh
threshold: 0.9
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
frequency: 2
entities:
- SerakaMushroom
# Trees
- !type:BiomeEntityLayer
threshold: 0.6
noise:
seed: 0
noiseType: OpenSimplex2
fractalType: FBm
frequency: 2
allowedTiles:
- FloorPlanetAsh
entities:
- FloraAshtree
- !type:BiomeDummyLayer
id: Loot
# Fill basalt & ash grass
- !type:BiomeTileLayer
threshold: -1.0
tile: FloorBasaltLavaland
- !type:BiomeTileLayer
threshold: -0.5 # 1/4 from all the lavaland, since there are 4 biomes it has to be like that
tile: FloorPlanetAsh
noise:
seed: 0
frequency: 0.02
fractalType: None
# Lava caves - has no lava, but rarely spawns chasms
- type: biomeTemplate
id: LavaCaves
layers:
# Basic stuff
- !type:BiomeEntityLayer
threshold: 0.95
noise:
frequency: 1
seed: 15
allowedTiles:
- FloorBasaltLavaland
entities:
- BasaltOne
- BasaltTwo
- BasaltThree
- BasaltFour
- BasaltFive
- !type:BiomeDecalLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.95
divisions: 1
noise:
seed: 25
frequency: 1
decals:
- Basalt1
- Basalt2
- Basalt3
- Basalt4
- Basalt5
- Basalt6
- Basalt7
- Basalt8
- Basalt9
- !type:BiomeEntityLayer
threshold: 0.95
noise:
seed: 0
noiseType: OpenSimplex2
frequency: 2
allowedTiles:
- FloorBasaltLavaland
entities:
- FloraRockSolid
# Crystals to signal the biome type
- !type:BiomeEntityLayer
threshold: 0.85
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
allowedTiles:
- FloorBasaltLavaland
entities:
- CrystalGreen
- CrystalPink
- CrystalOrange
- CrystalBlack
- CrystalBlue
- CrystalYellow
- CrystalCyan
# Be careful here!
- !type:BiomeEntityLayer
threshold: 0.7
noise:
seed: 10
frequency: 0.025
fractalType: FBm
octaves: 5
lacunarity: 2
gain: 0.4
allowedTiles:
- FloorBasaltLavaland
entities:
- FloorChasmEntity
# Rock formations - copied from Caves
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: -0.5
invert: true
noise:
seed: 0
noiseType: Perlin
fractalType: Ridged
octaves: 1
frequency: 0.1
gain: 0.5
entities:
- WallRockBasalt
- !type:BiomeDummyLayer
id: Loot
# Fill basalt
- !type:BiomeTileLayer
threshold: -1
tile: FloorBasaltLavaland
# Fruit (cactus fruit)
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.9
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
entities:
- FruitCactus
# Lava lakes - has much more lava, but doesn't appear so often
- type: biomeTemplate
id: LavaLakes
layers:
- !type:BiomeEntityLayer
threshold: 0.95
noise:
frequency: 1
seed: 15
allowedTiles:
- FloorBasaltLavaland
entities:
- BasaltOne
- BasaltTwo
- BasaltThree
- BasaltFour
- BasaltFive
- !type:BiomeDecalLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.95
divisions: 1
noise:
seed: 25
frequency: 1
decals:
- Basalt1
- Basalt2
- Basalt3
- Basalt4
- Basalt5
- Basalt6
- Basalt7
- Basalt8
- Basalt9
- !type:BiomeEntityLayer
threshold: 0.95
noise:
seed: 0
noiseType: OpenSimplex2
frequency: 2
allowedTiles:
- FloorBasaltLavaland
entities:
- FloraRockSolid
# Fruit (cactus fruit)
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: 0.9
noise:
seed: 2
noiseType: OpenSimplex2
fractalType: PingPong
frequency: 3 # more frequent near lava
entities:
- FruitCactus
- !type:BiomeEntityLayer
threshold: 0 # The only difference is right here
noise:
seed: 10
frequency: 0.025
fractalType: FBm
octaves: 3
lacunarity: 3
gain: 0.4
allowedTiles:
- FloorBasaltLavaland
entities:
- FloorLavaEntity
# Rock formations
- !type:BiomeEntityLayer
allowedTiles:
- FloorBasaltLavaland
threshold: -0.1 # Fewer stones
noise:
seed: 5
noiseType: Cellular
frequency: 0.05
lacunarity: 2
fractalType: FBm
octaves: 5
cellularDistanceFunction: Euclidean
cellularReturnType: Distance2
entities:
- WallRockBasalt
- !type:BiomeDummyLayer
id: Loot
# Fill basalt
- !type:BiomeTileLayer
threshold: -1
tile: FloorBasaltLavaland

View File

@@ -0,0 +1,10 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: lavalandDungeonRuin
id: CommonRuin5x5
boundary: 5,5
spawnedMarker: LavalandInteriorRoomMarker
priority: 0

View File

@@ -0,0 +1,259 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
# SPDX-FileCopyrightText: 2025 SX-7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: lavalandGridRuin
id: HierophantArena
name: lavaland-ruin-hierophant
path: /Maps/_Lavaland/Lavaland/ruin_hierophant_arena.yml
priority: -1 # highest priority
patchToPlanet: false
componentsToGrant:
- type: HierophantBeat
- type: lavalandGridRuin
id: SyndicateBase
name: lavaland-ruin-syndicate
path: /Maps/_Lavaland/Lavaland/ruin_syndicate_base.yml
priority: -1 # highest priority
patchToPlanet: false
- type: lavalandGridRuin
id: BiodomeSnow
name: lavaland-ruin-biodome
path: /Maps/_Lavaland/Lavaland/ruin_snow_biodome.yml
priority: 1
patchToPlanet: false
- type: lavalandGridRuin
id: BiodomeBeach
name: lavaland-ruin-biodome
path: /Maps/_Lavaland/Lavaland/ruin_beach_biodome.yml
priority: 2
patchToPlanet: false
- type: lavalandGridRuin
id: GolemShuttle
name: lavaland-ruin-big-shuttle
path: /Maps/_Lavaland/Lavaland/ruin_golem_shuttle.yml
priority: 3
- type: lavalandGridRuin
id: ToyShop
name: lavaland-ruin-wooden
path: /Maps/_Lavaland/Lavaland/ruin_toyshop.yml
priority: 4
- type: lavalandGridRuin
id: RougeAI
name: lavaland-ruin-station
path: /Maps/_Lavaland/Lavaland/ruin_rouge_ai.yml
priority: 5
- type: lavalandGridRuin
id: Ratvar
name: lavaland-ruin-laboratory
path: /Maps/_Lavaland/Lavaland/ruin_ratvar.yml
priority: 6
- type: lavalandGridRuin
id: VulpLab
name: lavaland-ruin-laboratory
path: /Maps/_Lavaland/Lavaland/ruin_vulp_lab.yml
priority: 7
- type: lavalandGridRuin
id: Chemistry
name: lavaland-ruin-laboratory
path: /Maps/_Lavaland/Lavaland/ruin_chemistry.yml
priority: 8
- type: lavalandGridRuin
id: Shelter
name: lavaland-ruin-shelter
path: /Maps/_Lavaland/Lavaland/ruin_shelter.yml
priority: 9
- type: lavalandGridRuin
id: MiningPost
name: lavaland-ruin-shelter
path: /Maps/_Lavaland/Lavaland/ruin_mining_outpost.yml
priority: 10
patchToPlanet: false
- type: lavalandGridRuin
id: Hermit
name: lavaland-ruin-shelter
path: /Maps/_Lavaland/Lavaland/ruin_hermit.yml
priority: 11
- type: lavalandGridRuin
id: LavaLake
name: lavaland-ruin-anomalous-landscape
path: /Maps/_Lavaland/Lavaland/ruin_lavalake.yml
priority: 12
- type: lavalandGridRuin
id: SeedVault
name: lavaland-ruin-seed-vault
path: /Maps/_Lavaland/Lavaland/ruin_seed_vault.yml
priority: 13
patchToPlanet: false
- type: lavalandGridRuin
id: Graveyard
name: lavaland-ruin-seed-graveyard
path: /Maps/_Lavaland/Lavaland/ruin_graveyard.yml
priority: 14
- type: lavalandGridRuin
id: WaffleCo
name: lavaland-ruin-wooden
path: /Maps/_Lavaland/Lavaland/ruin_wafflecohouse.yml
priority: 15
- type: lavalandGridRuin
id: ArrivalsBack
name: lavaland-ruin-arrivals-shuttle
path: /Maps/_Lavaland/Lavaland/ruin_arrivals_back.yml
priority: 16
- type: lavalandGridRuin
id: ArrivalsFront
name: lavaland-ruin-arrivals-shuttle
path: /Maps/_Lavaland/Lavaland/ruin_arrivals_front.yml
priority: 17
- type: lavalandGridRuin
id: CargoDebris
name: lavaland-ruin-cargo
path: /Maps/_Lavaland/Lavaland/ruin_cargo_debris.yml
priority: 18
- type: lavalandGridRuin
id: AbductorDebris
name: lavaland-ruin-abductor
path: /Maps/_Lavaland/Lavaland/ruin_abductor.yml
priority: 19
- type: lavalandGridRuin
id: CultBase
name: lavaland-ruin-cult
path: /Maps/_Lavaland/Lavaland/ruin_cult.yml
priority: 20
- type: lavalandGridRuin
id: FleshCave
name: lavaland-ruin-flesh
path: /Maps/_Lavaland/Lavaland/ruin_flesh.yml
priority: 21
- type: lavalandGridRuin
id: FloraCave
name: lavaland-ruin-flora
path: /Maps/_Lavaland/Lavaland/ruin_flora.yml
priority: 21
- type: lavalandGridRuin
id: IceCave
name: lavaland-ruin-ice
path: /Maps/_Lavaland/Lavaland/ruin_ice.yml
priority: 21
- type: lavalandGridRuin
id: RockCave
name: lavaland-ruin-rock
path: /Maps/_Lavaland/Lavaland/ruin_rock.yml
priority: 21
- type: lavalandGridRuin
id: SlimeCave
name: lavaland-ruin-slime
path: /Maps/_Lavaland/Lavaland/ruin_slime.yml
priority: 21
- type: lavalandGridRuin
id: Hunter
name: lavaland-ruin-hunt
path: /Maps/_Lavaland/Lavaland/ruin_hunter.yml
priority: 22
- type: lavalandGridRuin
id: Stash1
name: lavaland-ruin-stash
path: /Maps/_Lavaland/Lavaland/ruin_stash_1.yml
priority: 23
- type: lavalandGridRuin
id: Stash2
name: lavaland-ruin-stash
path: /Maps/_Lavaland/Lavaland/ruin_stash_2.yml
priority: 23
- type: lavalandGridRuin
id: Stash3
name: lavaland-ruin-stash
path: /Maps/_Lavaland/Lavaland/ruin_stash_3.yml
priority: 23
- type: lavalandGridRuin
id: Stash4
name: lavaland-ruin-stash
path: /Maps/_Lavaland/Lavaland/ruin_stash_4.yml
priority: 23
## WIZDEN RUINS man
- type: lavalandGridRuin
id: CargoWreck
name: lavaland-ruin-cargo2
path: /Maps/Lavaland/broken_cargo.yml
priority: 24
- type: lavalandGridRuin
id: Murder
name: lavaland-ruin-murder
path: /Maps/Lavaland/cave_murder.yml
priority: 25
- type: lavalandGridRuin
id: EscapePod
name: lavaland-ruin-crash
path: /Maps/Lavaland/escape_pod_crash.yml
priority: 26
- type: lavalandGridRuin
id: Desk
name: lavaland-ruin-desk
path: /Maps/Lavaland/front_desk.yml
priority: 27
- type: lavalandGridRuin
id: Generator
name: lavaland-ruin-generator
path: /Maps/Lavaland/generator_scrapyard.yml
priority: 28
- type: lavalandGridRuin
id: Mug
name: lavaland-ruin-mug
path: /Maps/Lavaland/mug_factory.yml
priority: 29
- type: lavalandGridRuin
id: Temple
name: lavaland-ruin-temple
path: /Maps/Lavaland/temple.yml
priority: 30
#Goobstation ruins? Idk.
- type: lavalandGridRuin
id: FlockLarge
name: lavaland-ruin-flock-large
path: /Maps/_Lavaland/Lavaland/flock_ruins_large.yml
priority: 31

View File

@@ -0,0 +1,6 @@
- type: lavalandLayout
id: LavalandOutpost
layouts:
- gridPath: /Maps/_Lavaland/Lavaland/outpost_lavaland.yml
position: 0,0
name: lavaland-planet-outpost

View File

@@ -0,0 +1,5 @@
- type: lavalandMap
id: Lavaland
planet: LavalandPlanet
layout: LavalandOutpost
ruins: LavalandRuins

View File

@@ -0,0 +1,75 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: lavalandPlanet
id: LavalandPlanet
name: lavaland-planet-name-lavaland
mapLight: "#f0a959"
biome: LavaLand
atmosphere:
volume: 2500
immutable: True
temperature: 308.4523 # 35.3023 C
moles:
- 10.524779 # oxygen, not enough for breathing
- 25.10312 # nitrogen
- 8.21301 # carbon dioxide
markers:
- RandomTendrilLavaland
- RandomMobLavaland
- OreIron
- OreCoal
- OreQuartz
- OreGold
- OreSilver
- OrePlasma
- OreUranium
- OreBananium
- OreArtifactFragment
- OreDiamond
- OreBSCrystal
addComponents:
- type: FTLDestination
whitelist: # TODO fix shuttles FTLing on planets and remove this whitelist
components:
- MiningShuttle
- type: WeatherScheduler # Regular ash storms
stages:
- duration: # 10-15 minutes of calm
min: 600
max: 900
- weather: AshfallLight
message: ash-storm-telegraph
duration:
min: 90
max: 120
- weather: Ashfall
message: ash-storm-alert
duration:
min: 120
max: 180
- weather: AshfallLight
message: ash-storm-clearing
duration:
min: 30
max: 30

View File

@@ -0,0 +1,72 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Roudenn <romabond091@gmail.com>
# SPDX-FileCopyrightText: 2025 SX-7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# Lavaland ruins are loaded as separate grids.
# HugeRuins should contain the biggest and most valuable ruins,
# while SmallRuins should spawn only small and not important ruins.
- type: lavalandRuinPool
id: LavalandRuins
gridRuins:
SyndicateBase: 1
HierophantArena: 1
RougeAI: 1
BiodomeBeach: 2
BiodomeSnow: 2
GolemShuttle: 2
ToyShop: 1
Chemistry: 2
LavaLake: 3
Graveyard: 1
SeedVault: 2
Hermit: 5
WaffleCo: 2
ArrivalsBack: 1
ArrivalsFront: 1
CargoDebris: 2
VulpLab: 1
Shelter: 4
Ratvar: 1
MiningPost: 3
AbductorDebris: 1
CultBase: 1
FleshCave: 1
FloraCave: 1
IceCave: 1
RockCave: 1
SlimeCave: 1
Hunter: 1
Stash1: 2
Stash2: 2
Stash3: 2
Stash4: 2
FlockLarge: 1
#WIZDEN RUINS (only peak ones, rest are trash) man
CargoWreck: 1
Murder: 1
EscapePod: 2
Desk: 2
Generator: 3
Mug: 1
Temple: 1
dungeonRuins:
CommonRuin5x5: 60

View File

@@ -0,0 +1,17 @@
- type: material
id: ArtifactFragment
stackEntity: ArtifactFragment1
name: materials-artifact-fragment
unit: materials-unit-piece
icon: { sprite: Objects/Specific/Xenoarchaeology/artifact_fragments.rsi, state: precursorball2 }
color: "#ff35e4"
price: 0.75
- type: material
id: RawArtifactFragment
stackEntity: ArtifactFragmentOre1
name: materials-artifact-fragment-ore
unit: materials-unit-piece
icon: { sprite: _Lavaland/Objects/Materials/ore.rsi, state: artifact }
color: "#ff35e4"
price: 0.75

View File

@@ -0,0 +1,172 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 thebiggestbruh <marcus2008stoke@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: reagent
id: MinersSalve
name: reagent-name-minerssalve
group: Medicine
desc: reagent-desc-minerssalve
physicalDesc: reagent-physical-desc-shiny
flavor: metallic
color: "#f2c777"
recognizable: true
metabolisms:
Medicine:
effects:
- !type:ModifyBloodLevel
amount: 1.5
- !type:HealthChange
damage:
groups:
Burn: -1.75
Brute: -1.75
types:
Bloodloss: -1.25
- !type:ModifyBloodLevel
amount: 1.5
conditions:
- !type:PressureThreshold
min: 1
max: 50
worksOnLavaland: true
- !type:HealthChange
damage:
groups:
Burn: -4.75
Brute: -4.75
types:
Bloodloss: -1.25
conditions:
- !type:PressureThreshold
min: 1
max: 50
worksOnLavaland: true
- !type:HealthChange
conditions:
- !type:ReagentThreshold
min: 21
- !type:PressureThreshold
min: 1
max: 50
worksOnLavaland: true
damage:
types:
Poison: 5
Cold: 5
- !type:Jitter
- !type:PopupMessage
type: Local
visualType: Small
messages: [ "generic-reagent-effect-burning-insides" ]
probability: 0.1
- !type:Emote
emote: Scream
probability: 0.05
#It's balanced I swear!
- type: reagent
id: Luxurium
name: reagent-name-luxurium
group: Medicine
desc: reagent-desc-luxurium
physicalDesc: reagent-physical-desc-powdery
flavor: metallic
color: "#302f70"
recognizable: true
metabolisms:
Medicine:
effects:
- !type:HealthChange
damage:
types:
Cold: 2
Asphyxiation: 1.75
Bloodloss: 3
groups:
Toxin: 1.5
Brute: 7.5
Burn: 4
Airloss: 1.5
- !type:HealthChange
damage:
types:
Cold: -2
Asphyxiation: -1.75
Bloodloss: -3
groups:
Toxin: -1.5
Brute: -7.5
Burn: -4
Airloss: -1.5
conditions:
- !type:PressureThreshold
min: 1
max: 50
worksOnLavaland: true
# Cuts the amount healed roughly by 50% when in normal pressure.
- type: reagent
id: VitriumFroth
name: reagent-name-vitrium-froth
group: Medicine
desc: reagent-desc-vitrium-froth
physicalDesc: reagent-physical-desc-exotic-smelling
flavor: sweet
color: "#d3a308"
metabolisms:
Medicine:
effects:
- !type:HealthChange
damage:
groups:
Brute: -2
types:
Heat: -1
Shock: -1
Cold: -1
- type: reagent
id: SerakaExtract
name: reagent-name-seraka-extract
group: Medicine
desc: reagent-desc-seraka-extract
physicalDesc: reagent-physical-desc-sticky
flavor: metallic
color: "#00767c"
metabolisms:
Medicine:
effects:
- !type:HealthChange
damage:
types:
Bloodloss: -1
- !type:ModifyBleedAmount
amount: -1
- !type:ModifyBloodLevel
amount: 1
- !type:HealthChange # Overdose can cause blood to clot in the veins
conditions:
- !type:ReagentThreshold
min: 8
damage:
groups:
Airloss: 7

View File

@@ -0,0 +1,6 @@
- type: latheRecipe
id: ArtifactFragment1
result: ArtifactFragment1
completetime: 0
materials:
RawArtifactFragment: 100

View File

@@ -0,0 +1,54 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 SX_7 <sn1.test.preria.2002@gmail.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: latheRecipe
id: PKAUpgradeDamage
result: PKAUpgradeDamage # Probably the strongest so might as well keep it under control.
categories:
- Weapons
completetime: 5
materials:
Steel: 4500
Gold: 2500
Silver: 2500
- type: latheRecipe
id: PKAUpgradeRange
result: PKAUpgradeRange
categories:
- Weapons
completetime: 5
materials:
Steel: 1500
Gold: 500
Silver: 500
- type: latheRecipe
id: PKAUpgradeFireRate
result: PKAUpgradeFireRate
categories:
- Weapons
completetime: 5
materials:
Steel: 1500
Gold: 500
Silver: 500

View File

@@ -0,0 +1,39 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <logkedr18@gmail.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: technology
id: KineticModifications
name: research-technology-kinetic-modifications
icon:
sprite: _Lavaland/Objects/Weapons/upgrade.rsi
state: display
discipline: Industrial
tier: 2
cost: 10000
recipeUnlocks:
- PKAUpgradeDamage
- PKAUpgradeRange
- PKAUpgradeFireRate
position: 0,-7
technologyPrerequisites:
- MassExcavation

View File

@@ -0,0 +1,113 @@
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2021 Vera Aguilera Puerto <gradientvera@outlook.com>
# SPDX-FileCopyrightText: 2022 Chris V <HoofedEar@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2023 Jeff <velcroboy333@hotmail.com>
# SPDX-FileCopyrightText: 2023 Velcroboy <107660393+IamVelcroboy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 brainfood1183 <113240905+brainfood1183@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 AJCM-git <60196617+AJCM-git@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Zadeon <loldude9000@gmail.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
# Normal ore
- type: stack
id: ArtifactFragmentOre
name: stack-artifact-fragment-ore
icon: { sprite: Objects/Specific/Xenoarchaeology/artifact_fragments.rsi, state: ancientball1 }
spawn: ArtifactFragmentOre1
maxCount: 30
# Unprocessed ore
- type: stack
id: GoldOreUnprocessed
name: stack-unprocessed-gold-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: gold }
spawn: GoldOre1Unprocessed
maxCount: 30
- type: stack
id: DiamondOreUnprocessed
name: stack-unprocessed-diamond-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: diamond }
spawn: DiamondOre1Unprocessed
maxCount: 30
- type: stack
id: SteelOreUnprocessed
name: stack-unprocessed-steel-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: iron }
spawn: SteelOre1Unprocessed
maxCount: 90 # Goobstation
- type: stack
id: PlasmaOreUnprocessed
name: stack-unprocessed-plasma-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: plasma }
spawn: PlasmaOre1Unprocessed
maxCount: 30
- type: stack
id: SilverOreUnprocessed
name: stack-unprocessed-silver-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: silver }
spawn: SilverOre1Unprocessed
maxCount: 30
- type: stack
id: SpaceQuartzUnprocessed
name: stack-unprocessed-quartz-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: spacequartz }
spawn: SpaceQuartz1Unprocessed
maxCount: 90 # Goobstation
- type: stack
id: UraniumOreUnprocessed
name: stack-unprocessed-uranium-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: uranium }
spawn: UraniumOre1Unprocessed
maxCount: 30
- type: stack
id: BananiumOreUnprocessed
name: stack-unprocessed-bananium-ore
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: bananium }
spawn: BananiumOre1Unprocessed
maxCount: 30
- type: stack
id: CoalUnprocessed
name: stack-unprocessed-coal
icon: { sprite: /Textures/Objects/Materials/ore.rsi, state: coal }
spawn: Coal1Unprocessed
maxCount: 90 # Goobstation
- type: stack
id: ArtifactFragmentOreUnprocessed
name: stack-unprocessed-artifact-fragment-ore
icon: { sprite: Objects/Specific/Xenoarchaeology/artifact_fragments.rsi, state: ancientball1 }
spawn: ArtifactFragmentOre1Unprocessed
maxCount: 30

View File

@@ -0,0 +1,23 @@
- type: entityShape
id: BoxFilled
shape: !type:BoxEntityShape
- type: entityShape
id: BoxHollow
shape: !type:BoxEntityShape
hollow: true
- type: entityShape
id: RookCross
shape: !type:RookEntityShape
- type: entityShape
id: BishopCross
shape: !type:BishopEntityShape
- type: entityShape
id: QueenCross
shape: !type:AllEntityShape
children:
- id: RookCross
- id: BishopCross

View File

@@ -0,0 +1,100 @@
# Boxes
- type: entityShape
id: DebugBoxFilled1
shape: !type:BoxEntityShape
size: 1
- type: entityShape
id: DebugBoxHollow1
shape: !type:BoxEntityShape
hollow: true
size: 1
- type: entityShape
id: DebugBoxFilled2
shape: !type:BoxEntityShape
size: 2
- type: entityShape
id: DebugBoxHollow2
shape: !type:BoxEntityShape
hollow: true
size: 2
- type: entityShape
id: DebugBoxFilled3
shape: !type:BoxEntityShape
size: 3
- type: entityShape
id: DebugBoxHollow3
shape: !type:BoxEntityShape
hollow: true
size: 3
- type: entityShape
id: DebugBoxFilled4
shape: !type:BoxEntityShape
size: 4
- type: entityShape
id: DebugBoxHollow4
shape: !type:BoxEntityShape
hollow: true
size: 4
- type: entityShape
id: DebugBoxFilled5
shape: !type:BoxEntityShape
size: 5
- type: entityShape
id: DebugBoxHollow5
shape: !type:BoxEntityShape
hollow: true
size: 5
# Crosses
- type: entityShape
id: DebugCrossRook1
shape: !type:RookEntityShape
size: 1
- type: entityShape
id: DebugCrossBishop1
shape: !type:RookEntityShape
size: 1
- type: entityShape
id: DebugCrossRook5
shape: !type:RookEntityShape
size: 5
- type: entityShape
id: DebugCrossBishop5
shape: !type:RookEntityShape
size: 5
# Options
- type: entityShape
id: DebugOptionsTest
shape: !type:AllEntityShape
children:
- id: DebugBoxFilled1
group: First
- id: DebugBoxFilled1
group: Second
- id: DebugCrossRook1
group: Third
options:
First:
groupSize: 5
offset: 0,10
Second:
groupSize: 3
offset: 0,-10
Third:
groupSize: 5
offset: 10,0

View File

@@ -0,0 +1,31 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: tile
id: LavalandFloorHierophantArena
name: DO NOT MAP
sprite: /Textures/Tiles/Planet/basalt.png
isSubfloor: false
footstepSounds:
collection: FootstepFloor
heatCapacity: 10000
weather: true
indestructible: true

View File

@@ -0,0 +1,34 @@
# Lava
- type: tile
id: FloorBasaltLavaland
name: tiles-basalt-floor-planetmap
sprite: /Textures/Tiles/Planet/basalt.png
isSubfloor: true
footstepSounds:
collection: FootstepAsteroid
heatCapacity: 10000
weather: true
indestructible: true
- type: tile
id: FloorPlanetAsh
name: tiles-ash-planet-floor
sprite: /Textures/_Lavaland/Tiles/Planet/Ash/ash.png
edgeSpritePriority: 2
edgeSprites:
SouthEast: /Textures/_Lavaland/Tiles/Planet/Ash/single_edge.png
NorthEast: /Textures/_Lavaland/Tiles/Planet/Ash/single_edge.png
NorthWest: /Textures/_Lavaland/Tiles/Planet/Ash/single_edge.png
SouthWest: /Textures/_Lavaland/Tiles/Planet/Ash/single_edge.png
South: /Textures/_Lavaland/Tiles/Planet/Ash/double_edge.png
East: /Textures/_Lavaland/Tiles/Planet/Ash/double_edge.png
North: /Textures/_Lavaland/Tiles/Planet/Ash/double_edge.png
West: /Textures/_Lavaland/Tiles/Planet/Ash/double_edge.png
baseTurf: FloorBasaltLavaland
isSubfloor: true
footstepSounds:
collection: FootstepGrass
itemDrop: FloorTileItemGrass
heatCapacity: 10000
weather: true
indestructible: true

View File

@@ -0,0 +1,29 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: bossMusic
id: Hierophant
fade: true
fadeInTime: 5
fadeOutTime: 8
positionOnEnd: 0
sound:
path: /Audio/_Lavaland/Mobs/Bosses/hiero_bgm.ogg

View File

@@ -0,0 +1,15 @@
<!--
SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
SPDX-License-Identifier: AGPL-3.0-or-later
-->
This folder does not follow any wizden conventions whatsoever.
Why? Because mucho folders for too specific items, it's better to sort them out in files.
The only convention i came up with is that all lavaland items must have `Lavaland` prefix before them.
Enjoy hell.
TODO: FUCK HTN better make it's own system

View File

@@ -0,0 +1,60 @@
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <dmitri.s.kiselev@gmail.com>
# SPDX-FileCopyrightText: 2025 Armok <155400926+ARMOKS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 FaDeOkno <143940725+FaDeOkno@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 Ilya246 <57039557+Ilya246@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 McBosserson <148172569+McBosserson@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Milon <plmilonpl@gmail.com>
# SPDX-FileCopyrightText: 2025 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2025 Rouden <149893554+Roudenn@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Ted Lukin <66275205+pheenty@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 TheBorzoiMustConsume <197824988+TheBorzoiMustConsume@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Unlumination <144041835+Unlumy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2025 gluesniffler <159397573+gluesniffler@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 gluesniffler <linebarrelerenthusiast@gmail.com>
# SPDX-FileCopyrightText: 2025 pheenty <fedorlukin2006@gmail.com>
# SPDX-FileCopyrightText: 2025 username <113782077+whateverusername0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 whateverusername0 <whateveremail>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
- type: Tag
id: DockMining
- type: Tag
id: ExplorerSuit
- type: Tag
id: GunUpgradeDamage
- type: Tag
id: GunUpgradePressure
- type: Tag
id: GunUpgradeReloadSpeed
- type: Tag
id: GunUpgradeRange
- type: Tag
id: LavalandGateway
- type: Tag
id: LavalandStationGateway
- type: Tag
id: LavalandInterior5x5
- type: Tag
id: LavalandInterior7x7
- type: Tag
id: PKAUpgrade
- type: Tag
id: MarkerBeacon