dungeon carp and dragon (#17040)

Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
deltanedas
2023-06-04 11:06:13 +00:00
committed by GitHub
parent f30da48115
commit 5906ec24f2
5 changed files with 164 additions and 129 deletions

View File

@@ -99,6 +99,7 @@ ghost-role-information-ifrit-description = Listen to your owner. Don't tank dama
ghost-role-information-space-dragon-name = Space dragon ghost-role-information-space-dragon-name = Space dragon
ghost-role-information-space-dragon-description = Call in 3 carp rifts and take over this quadrant! You have only 5 minutes in between each rift before you will disappear. ghost-role-information-space-dragon-description = Call in 3 carp rifts and take over this quadrant! You have only 5 minutes in between each rift before you will disappear.
ghost-role-information-space-dragon-dungeon-description = Defend the expedition dungeon with your fishy comrades!
ghost-role-information-cluwne-name = Cluwne ghost-role-information-cluwne-name = Cluwne
ghost-role-information-cluwne-description = Become a pitiful cluwne, your only goal in life is to find a sweet release from your suffering (usually by being beaten to death). A cluwne is not an antagonist but may defend itself. Crewmembers may murder cluwnes freely. ghost-role-information-cluwne-description = Become a pitiful cluwne, your only goal in life is to find a sweet release from your suffering (usually by being beaten to death). A cluwne is not an antagonist but may defend itself. Crewmembers may murder cluwnes freely.

View File

@@ -155,3 +155,13 @@
- type: GhostTakeoverAvailable - type: GhostTakeoverAvailable
- type: HTN - type: HTN
rootTask: DragonCarpCompound rootTask: DragonCarpCompound
- type: entity
id: MobCarpDungeon
parent: MobCarp
suffix: Dungeon
components:
- type: MeleeWeapon
damage:
types:
Slash: 5

View File

@@ -1,126 +1,148 @@
- type: entity - type: entity
name: space dragon
parent: SimpleSpaceMobBase parent: SimpleSpaceMobBase
id: MobDragon id: BaseMobDragon
suffix: "" suffix: ""
name: space dragon
description: A flying leviathan, loosely related to space carps. description: A flying leviathan, loosely related to space carps.
components: components:
- type: GhostRole - type: GhostRole
allowMovement: true allowMovement: true
allowSpeech: true allowSpeech: true
makeSentient: true makeSentient: true
name: ghost-role-information-space-dragon-name name: ghost-role-information-space-dragon-name
description: ghost-role-information-space-dragon-description description: ghost-role-information-space-dragon-description
- type: GhostTakeoverAvailable - type: GhostTakeoverAvailable
- type: HTN - type: HTN
rootTask: XenoCompound rootTask: XenoCompound
- type: Faction - type: Faction
factions: factions:
- Dragon - Dragon
- type: Speech - type: Speech
- type: CombatMode - type: CombatMode
- type: MobMover - type: MobMover
- type: InputMover - type: InputMover
- type: MovementSpeedModifier - type: MovementSpeedModifier
baseWalkSpeed: 3 baseWalkSpeed: 3
baseSprintSpeed: 5 baseSprintSpeed: 5
weightlessModifier: 1.5 weightlessModifier: 1.5
- type: RandomSprite - type: RandomSprite
available: available:
- enum.DamageStateVisualLayers.Base: - enum.DamageStateVisualLayers.Base:
alive: Rainbow alive: Rainbow
- type: Sprite - type: Sprite
sprite: Mobs/Aliens/Carps/dragon.rsi sprite: Mobs/Aliens/Carps/dragon.rsi
netsync: false noRot: true
noRot: true layers:
layers: - map: [ "enum.DamageStateVisualLayers.Base" ]
- map: [ "enum.DamageStateVisualLayers.Base" ] state: alive
state: alive - map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ]
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded" ] state: alive-unshaded
state: alive-unshaded shader: unshaded
shader: unshaded - type: Appearance
- type: Appearance - type: DamageStateVisuals
- type: DamageStateVisuals states:
states: Alive:
Alive: Base: alive
Base: alive BaseUnshaded: alive-unshaded
BaseUnshaded: alive-unshaded Critical:
Critical: Base: crit
Base: crit Dead:
Dead: Base: dead
Base: dead BaseUnshaded: dead-unshaded
BaseUnshaded: dead-unshaded - type: Physics
- type: Physics bodyType: KinematicController
bodyType: KinematicController - type: Fixtures
- type: Fixtures fixtures:
fixtures: fix1:
fix1: shape:
shape: !type:PhysShapeCircle
!type:PhysShapeCircle radius: 0.40
radius: 0.40 density: 100
density: 100 mask:
mask: - FlyingMobMask
- FlyingMobMask layer:
layer: - FlyingMobLayer
- FlyingMobLayer - type: MobState
- type: MobState - type: MobThresholds
- type: MobThresholds thresholds:
thresholds: 0: Alive
0: Alive 450: Critical
450: Critical 500: Dead
500: Dead - type: Metabolizer
- type: Metabolizer solutionOnBody: false
solutionOnBody: false updateFrequency: 0.25
updateFrequency: 0.25 metabolizerTypes: [ Dragon ]
metabolizerTypes: [ Dragon ] groups:
groups: - id: Medicine
- id: Medicine - id: Poison
- id: Poison - type: MovementAlwaysTouching
- type: MovementAlwaysTouching - type: NoSlip
- type: NoSlip - type: Butcherable
- type: Butcherable spawned:
spawned: - id: FoodMeatDragon
- id: FoodMeatDragon amount: 2
amount: 2 - type: InteractionPopup
- type: InteractionPopup successChance: 0.25 # It's no goose, but you better smell like carp.
successChance: 0.25 # It's no goose, but you better smell like carp. interactSuccessString: petting-success-dragon
interactSuccessString: petting-success-dragon interactFailureString: petting-failure-dragon
interactFailureString: petting-failure-dragon interactFailureSound:
interactFailureSound: path: /Audio/Animals/space_dragon_roar.ogg
path: /Audio/Animals/space_dragon_roar.ogg soundPerceivedByOthers: false # A 75% chance for a loud roar would get old fast.
soundPerceivedByOthers: false # A 75% chance for a loud roar would get old fast. - type: MeleeWeapon
- type: MeleeWeapon hidden: true
hidden: true soundHit:
soundHit: path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg
path: /Audio/Weapons/Xeno/alien_claw_flesh3.ogg damage:
damage: types:
types: Piercing: 15
Piercing: 15 Slash: 15
Slash: 15 - type: Devourer
- type: Devourer foodPreference: Humanoid
foodPreference: Humanoid shouldStoreDevoured: true
shouldStoreDevoured: true chemical: Ichor
chemical: Ichor healRate: 15.0
healRate: 15.0 whitelist:
whitelist: components:
components: - MobState
- MobState - Door
- Door tags:
tags: - Wall
- Wall devourAction:
devourAction: event: !type:DevourActionEvent
event: !type:DevourActionEvent icon: Interface/Actions/devour.png
icon: Interface/Actions/devour.png name: action-name-devour
name: action-name-devour description: action-description-devour
description: action-description-devour
- type: Dragon - type: entity
spawnsLeft: 2 parent: BaseMobDragon
spawnsProto: MobCarpDragon id: MobDragon
spawnRiftAction: components:
event: !type:DragonSpawnRiftActionEvent - type: Dragon
icon: spawnsLeft: 2
sprite: Interface/Actions/carp_rift.rsi spawnsProto: MobCarpDragon
state: icon spawnRiftAction:
name: action-name-carp-rift event: !type:DragonSpawnRiftActionEvent
description: action-description-carp-rift icon:
useDelay: 1 sprite: Interface/Actions/carp_rift.rsi
state: icon
name: action-name-carp-rift
description: action-description-carp-rift
useDelay: 1
- type: entity
parent: BaseMobDragon
id: MobDragonDungeon
suffix: Dungeon
components:
- type: GhostRole
description: ghost-role-information-space-dragon-dungeon-description
# less tanky, no crit
- type: MobThresholds
thresholds:
0: Alive
300: Dead
# less meat spawned since it's a lot easier to kill
- type: Butcherable
spawned:
- id: FoodMeatDragon
amount: 1

View File

@@ -10,7 +10,7 @@
- type: biomeMarkerLayer - type: biomeMarkerLayer
id: Carps id: Carps
proto: MobCarp proto: MobCarpDungeon
#- type: biomeMarkerLayer #- type: biomeMarkerLayer

View File

@@ -20,18 +20,20 @@
id: Carps id: Carps
groups: groups:
- entries: - entries:
- id: MobCarp - id: MobCarpDungeon
amount: 1 amount: 1
maxAmount: 3 maxAmount: 4
- id: MobCarpMagic
amount: 1
maxAmount: 2
- entries: - entries:
- id: MobCarpHolo - id: MobCarpMagic
amount: 1 amount: 1
maxAmount: 3 maxAmount: 3
prob: 0.5 prob: 0.5
- entries:
- id: MobCarpHolo
amount: 1
maxAmount: 2
prob: 0.25
configs: configs:
DefenseStructure: CarpStatue DefenseStructure: CarpStatue
Mining: Carps Mining: Carps
Megafauna: MobDragon Megafauna: MobDragonDungeon