Cleanup species prototypes a bit (#9513)
* Cleanup species prototypes a bit Skeletons were very stale because they didn't inherit from mobhuman but now they should have similar components as every other species. I also added a generic abstract base species to make custom species easier (where they may not want to have humans COUGH VILOUS). * a * drugs * gonflicts * no more conflicts I beg
This commit is contained in:
@@ -12,7 +12,7 @@ namespace Content.IntegrationTests.Tests.Interaction
|
|||||||
[TestOf(typeof(SharedInteractionSystem))]
|
[TestOf(typeof(SharedInteractionSystem))]
|
||||||
public sealed class InRangeUnobstructed
|
public sealed class InRangeUnobstructed
|
||||||
{
|
{
|
||||||
private const string HumanId = "MobHumanBase";
|
private const string HumanId = "MobHuman";
|
||||||
|
|
||||||
private const float InteractionRange = SharedInteractionSystem.InteractionRange;
|
private const float InteractionRange = SharedInteractionSystem.InteractionRange;
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Pathfinding Dummy
|
name: Pathfinding Dummy
|
||||||
parent: MobHumanBase
|
parent: BaseMobHuman
|
||||||
id: MobHumanPathDummy
|
id: MobHumanPathDummy
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
suffix: AI
|
suffix: AI
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
name: Civilian
|
name: Civilian
|
||||||
parent: MobHumanBase
|
parent: BaseMobHuman
|
||||||
id: MobCivilian
|
id: MobCivilian
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
components:
|
components:
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
name: Spirate
|
name: Spirate
|
||||||
parent: MobHumanBase
|
parent: BaseMobHuman
|
||||||
id: MobSpirate
|
id: MobSpirate
|
||||||
description: Yarr!
|
description: Yarr!
|
||||||
components:
|
components:
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
description: A highly trained CentCom agent, capable of dealing with various threats.
|
description: A highly trained CentCom agent, capable of dealing with various threats.
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
parent: MobHumanBase
|
parent: BaseMobHuman
|
||||||
suffix: Dead
|
suffix: Dead
|
||||||
save: true
|
save: true
|
||||||
id: SalvageHumanCorpse
|
id: SalvageHumanCorpse
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urist McHands The Dwarf
|
name: Urist McHands The Dwarf
|
||||||
parent: MobDwarfBase
|
parent: BaseMobDwarf
|
||||||
id: MobDwarf
|
id: MobDwarf
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
components:
|
components:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urist McHands
|
name: Urist McHands
|
||||||
parent: MobHumanBase
|
parent: BaseMobHuman
|
||||||
id: MobHuman
|
id: MobHuman
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
components:
|
components:
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urisst' Mzhand
|
name: Urisst' Mzhand
|
||||||
parent: MobReptilianBase
|
parent: BaseMobReptilian
|
||||||
id: MobReptilian
|
id: MobReptilian
|
||||||
description: A miserable pile of scales.
|
description: A miserable pile of scales.
|
||||||
components:
|
components:
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
parent: MobSkeletonPersonBase
|
parent: BaseMobSkeletonPerson
|
||||||
id: MobSkeletonPerson
|
id: MobSkeletonPerson
|
||||||
components:
|
components:
|
||||||
- type: InteractionPopup
|
- type: InteractionPopup
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
parent: MobSlimePersonBase
|
parent: BaseMobSlimePerson
|
||||||
id: MobSlimePerson
|
id: MobSlimePerson
|
||||||
components:
|
components:
|
||||||
- type: CombatMode
|
- type: CombatMode
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Vox
|
name: Vox
|
||||||
parent: MobVoxBase
|
parent: BaseMobVox
|
||||||
id: MobVox
|
id: MobVox
|
||||||
components:
|
components:
|
||||||
- type: CombatMode
|
- type: CombatMode
|
||||||
|
|||||||
451
Resources/Prototypes/Entities/Mobs/Species/base.yml
Normal file
451
Resources/Prototypes/Entities/Mobs/Species/base.yml
Normal file
@@ -0,0 +1,451 @@
|
|||||||
|
# Anything human specific (e.g. UI, input) goes under MobHuman
|
||||||
|
- type: entity
|
||||||
|
save: false
|
||||||
|
name: Urist McHands
|
||||||
|
id: BaseMobOrganic
|
||||||
|
description: A miserable pile of secrets.
|
||||||
|
noSpawn: true
|
||||||
|
components:
|
||||||
|
- type: RangedDamageSound
|
||||||
|
soundGroups:
|
||||||
|
Brute:
|
||||||
|
collection:
|
||||||
|
MeatBulletImpact
|
||||||
|
soundTypes:
|
||||||
|
Heat:
|
||||||
|
collection:
|
||||||
|
MeatLaserImpact
|
||||||
|
- type: Tag
|
||||||
|
tags:
|
||||||
|
- CanPilot
|
||||||
|
- FootstepSound
|
||||||
|
- DoorBumpOpener
|
||||||
|
- type: Reactive
|
||||||
|
groups:
|
||||||
|
Flammable: [ Touch ]
|
||||||
|
Extinguish: [ Touch ]
|
||||||
|
Acidic: [Touch, Ingestion]
|
||||||
|
reactions:
|
||||||
|
- reagents: [Water, SpaceCleaner]
|
||||||
|
methods: [Touch]
|
||||||
|
effects:
|
||||||
|
- !type:WashCreamPieReaction
|
||||||
|
- type: Flashable
|
||||||
|
- type: Polymorphable
|
||||||
|
- type: Hands
|
||||||
|
- type: MovementSpeedModifier
|
||||||
|
- type: MovedByPressure
|
||||||
|
- type: Barotrauma
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Blunt: 0.15 #per second, scales with pressure and other constants.
|
||||||
|
- type: DamageOnHighSpeedImpact
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Blunt: 5
|
||||||
|
soundHit:
|
||||||
|
path: /Audio/Effects/hit_kick.ogg
|
||||||
|
# Organs
|
||||||
|
- type: InjectableSolution
|
||||||
|
solution: chemicals
|
||||||
|
- type: IdExaminable
|
||||||
|
- type: HealthExaminable
|
||||||
|
examinableTypes:
|
||||||
|
- Blunt
|
||||||
|
- Slash
|
||||||
|
- Piercing
|
||||||
|
- Heat
|
||||||
|
- Shock
|
||||||
|
- type: Bloodstream
|
||||||
|
bloodlossDamage:
|
||||||
|
types:
|
||||||
|
Bloodloss:
|
||||||
|
1
|
||||||
|
bloodlossHealDamage:
|
||||||
|
types:
|
||||||
|
Bloodloss:
|
||||||
|
-0.25
|
||||||
|
- type: Stamina
|
||||||
|
- type: StatusEffects
|
||||||
|
allowed:
|
||||||
|
- Stun
|
||||||
|
- KnockedDown
|
||||||
|
- SlowedDown
|
||||||
|
- Stutter
|
||||||
|
- SeeingRainbows
|
||||||
|
- Electrocution
|
||||||
|
- Drunk
|
||||||
|
- SlurredSpeech
|
||||||
|
- PressureImmunity
|
||||||
|
- Muted
|
||||||
|
- ForcedSleep
|
||||||
|
- type: DiseaseCarrier
|
||||||
|
- type: Blindable
|
||||||
|
# Other
|
||||||
|
- type: Inventory
|
||||||
|
- type: Clickable
|
||||||
|
- type: InteractionOutline
|
||||||
|
- type: Icon
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: full
|
||||||
|
- type: Sprite
|
||||||
|
netsync: false
|
||||||
|
noRot: true
|
||||||
|
drawdepth: Mobs
|
||||||
|
layers:
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: torso_m
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.Head" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: head_m
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.Eyes" ]
|
||||||
|
color: "#008800"
|
||||||
|
sprite: Mobs/Customization/eyes.rsi
|
||||||
|
state: eyes
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.RArm" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_arm
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_arm
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_leg
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_leg
|
||||||
|
- shader: StencilClear
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_leg
|
||||||
|
- shader: StencilMask
|
||||||
|
map: [ "enum.HumanoidVisualLayers.StencilMask" ]
|
||||||
|
sprite: Mobs/Customization/masking_helpers.rsi
|
||||||
|
state: female_full
|
||||||
|
visible: false
|
||||||
|
- map: [ "jumpsuit" ]
|
||||||
|
shader: StencilDraw
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_hand
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_hand
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_foot
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_foot
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.Handcuffs" ]
|
||||||
|
color: "#ffffff"
|
||||||
|
sprite: Objects/Misc/handcuffs.rsi
|
||||||
|
state: body-overlay-2
|
||||||
|
visible: false
|
||||||
|
- map: [ "id" ]
|
||||||
|
- map: [ "gloves" ]
|
||||||
|
- map: [ "shoes" ]
|
||||||
|
- map: [ "ears" ]
|
||||||
|
- map: [ "outerClothing" ]
|
||||||
|
- map: [ "eyes" ]
|
||||||
|
- map: [ "belt" ]
|
||||||
|
- map: [ "neck" ]
|
||||||
|
- map: [ "back" ]
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
|
||||||
|
state: shaved
|
||||||
|
sprite: Mobs/Customization/human_facial_hair.rsi
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.Hair" ]
|
||||||
|
state: bald
|
||||||
|
sprite: Mobs/Customization/human_hair.rsi
|
||||||
|
- map: [ "mask" ]
|
||||||
|
- map: [ "head" ]
|
||||||
|
- map: [ "pocket1" ]
|
||||||
|
- map: [ "pocket2" ]
|
||||||
|
- type: Markings
|
||||||
|
layerPoints:
|
||||||
|
Tail:
|
||||||
|
points: 0
|
||||||
|
required: false
|
||||||
|
HeadTop:
|
||||||
|
points: 0
|
||||||
|
required: false
|
||||||
|
Chest:
|
||||||
|
points: 1
|
||||||
|
required: false
|
||||||
|
Legs:
|
||||||
|
points: 2
|
||||||
|
required: false
|
||||||
|
Arms:
|
||||||
|
points: 2
|
||||||
|
required: false
|
||||||
|
- type: Physics
|
||||||
|
bodyType: KinematicController
|
||||||
|
- type: Fixtures
|
||||||
|
fixtures: # TODO: This needs a second fixture just for mob collisions.
|
||||||
|
- shape:
|
||||||
|
!type:PhysShapeCircle
|
||||||
|
radius: 0.35
|
||||||
|
mass: 70
|
||||||
|
restitution: 0.0
|
||||||
|
mask:
|
||||||
|
- MobMask
|
||||||
|
layer:
|
||||||
|
- MobLayer
|
||||||
|
- type: AtmosExposed
|
||||||
|
- type: Flammable
|
||||||
|
fireSpread: true
|
||||||
|
canResistFire: true
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Heat: 1 #per second, scales with number of fire 'stacks'
|
||||||
|
- type: Temperature
|
||||||
|
heatDamageThreshold: 360
|
||||||
|
coldDamageThreshold: 260
|
||||||
|
currentTemperature: 310.15
|
||||||
|
specificHeat: 42
|
||||||
|
coldDamage:
|
||||||
|
types:
|
||||||
|
Cold: 0.1 #per second, scales with temperature & other constants
|
||||||
|
heatDamage:
|
||||||
|
types:
|
||||||
|
Heat: 0.1 #per second, scales with temperature & other constants
|
||||||
|
- type: HumanoidAppearance
|
||||||
|
- type: Body
|
||||||
|
template: HumanoidTemplate
|
||||||
|
preset: HumanPreset
|
||||||
|
- type: Damageable
|
||||||
|
damageContainer: Biological
|
||||||
|
- type: ThermalRegulator
|
||||||
|
metabolismHeat: 800
|
||||||
|
radiatedHeat: 100
|
||||||
|
implicitHeatRegulation: 500
|
||||||
|
sweatHeatRegulation: 2000
|
||||||
|
shiveringHeatRegulation: 2000
|
||||||
|
normalBodyTemperature: 310.15
|
||||||
|
thermalRegulationTemperatureThreshold: 25
|
||||||
|
- type: Internals
|
||||||
|
- type: MobState
|
||||||
|
thresholds:
|
||||||
|
0: Alive
|
||||||
|
100: Critical
|
||||||
|
200: Dead
|
||||||
|
- type: Destructible
|
||||||
|
thresholds:
|
||||||
|
- trigger:
|
||||||
|
!type:DamageTypeTrigger
|
||||||
|
damageType: Blunt
|
||||||
|
damage: 400
|
||||||
|
behaviors:
|
||||||
|
- !type:GibBehavior { }
|
||||||
|
- type: SlowOnDamage
|
||||||
|
speedModifierThresholds:
|
||||||
|
60: 0.7
|
||||||
|
80: 0.5
|
||||||
|
- type: HeatResistance
|
||||||
|
- type: Appearance
|
||||||
|
visuals:
|
||||||
|
- type: RotationVisualizer
|
||||||
|
- type: BuckleVisualizer
|
||||||
|
- type: CreamPiedVisualizer
|
||||||
|
state: creampie_human
|
||||||
|
- type: DamageVisualizer
|
||||||
|
thresholds: [ 20, 40, 100 ]
|
||||||
|
targetLayers:
|
||||||
|
- "enum.HumanoidVisualLayers.Chest"
|
||||||
|
- "enum.HumanoidVisualLayers.Head"
|
||||||
|
- "enum.HumanoidVisualLayers.LArm"
|
||||||
|
- "enum.HumanoidVisualLayers.LLeg"
|
||||||
|
- "enum.HumanoidVisualLayers.RArm"
|
||||||
|
- "enum.HumanoidVisualLayers.RLeg"
|
||||||
|
damageOverlayGroups:
|
||||||
|
Brute:
|
||||||
|
sprite: Mobs/Effects/brute_damage.rsi
|
||||||
|
color: "#FF0000"
|
||||||
|
Burn:
|
||||||
|
sprite: Mobs/Effects/burn_damage.rsi
|
||||||
|
- type: FireVisuals
|
||||||
|
sprite: Mobs/Effects/onfire.rsi
|
||||||
|
normalState: Generic_mob_burning
|
||||||
|
alternateState: Standing
|
||||||
|
fireStackAlternateState: 3
|
||||||
|
- type: CombatMode
|
||||||
|
- type: Climbing
|
||||||
|
- type: Cuffable
|
||||||
|
- type: CharacterInfo
|
||||||
|
- type: AnimationPlayer
|
||||||
|
- type: Buckle
|
||||||
|
- type: MeleeWeapon
|
||||||
|
hitSound:
|
||||||
|
collection: Punch
|
||||||
|
range: 0.8
|
||||||
|
arcwidth: 30
|
||||||
|
arc: fist
|
||||||
|
damage:
|
||||||
|
types:
|
||||||
|
Blunt: 5
|
||||||
|
- type: Pullable
|
||||||
|
- type: DoAfter
|
||||||
|
- type: CreamPied
|
||||||
|
- type: Stripping
|
||||||
|
- type: Strippable
|
||||||
|
- type: UserInterface
|
||||||
|
interfaces:
|
||||||
|
- key: enum.StrippingUiKey.Key
|
||||||
|
type: StrippableBoundUserInterface
|
||||||
|
- type: Puller
|
||||||
|
- type: Butcherable
|
||||||
|
butcheringType: Spike # TODO human.
|
||||||
|
spawned:
|
||||||
|
- id: FoodMeat
|
||||||
|
amount: 5
|
||||||
|
# - type: Recyclable Turns out turning off recycler safeties without considering the instagib is a bad idea
|
||||||
|
# safe: false
|
||||||
|
- type: Speech
|
||||||
|
speechSounds: Alto
|
||||||
|
- type: Vocal
|
||||||
|
- type: Emoting
|
||||||
|
- type: Grammar
|
||||||
|
attributes:
|
||||||
|
proper: true
|
||||||
|
- type: StandingState
|
||||||
|
- type: Fingerprint
|
||||||
|
- type: MobPrice
|
||||||
|
price: 1500 # Kidnapping a living person and selling them for cred is a good move.
|
||||||
|
deathPenalty: 0.01 # However they really ought to be living and intact, otherwise they're worth 100x less.
|
||||||
|
- type: Perishable
|
||||||
|
|
||||||
|
- type: entity
|
||||||
|
save: false
|
||||||
|
name: Urist McHands
|
||||||
|
id: BaseMobOrganicDummy
|
||||||
|
abstract: true
|
||||||
|
description: A dummy human meant to be used in character setup.
|
||||||
|
components:
|
||||||
|
- type: Hands
|
||||||
|
- type: Inventory
|
||||||
|
- type: ContainerContainer
|
||||||
|
- type: Icon
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: full
|
||||||
|
- type: Sprite
|
||||||
|
netsync: false
|
||||||
|
drawdepth: Mobs
|
||||||
|
noRot: true
|
||||||
|
# TODO BODY Turn these into individual body parts?
|
||||||
|
layers:
|
||||||
|
- map: ["enum.HumanoidVisualLayers.Chest"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: torso_m
|
||||||
|
- map: ["enum.HumanoidVisualLayers.Head"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: head_m
|
||||||
|
- map: ["enum.HumanoidVisualLayers.Eyes"]
|
||||||
|
color: "#008800"
|
||||||
|
sprite: Mobs/Customization/eyes.rsi
|
||||||
|
state: eyes
|
||||||
|
- map: ["enum.HumanoidVisualLayers.RArm"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_arm
|
||||||
|
- map: ["enum.HumanoidVisualLayers.LArm"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_arm
|
||||||
|
- map: ["enum.HumanoidVisualLayers.RLeg"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_leg
|
||||||
|
- map: ["enum.HumanoidVisualLayers.LLeg"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_leg
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_foot
|
||||||
|
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_foot
|
||||||
|
- shader: StencilClear
|
||||||
|
- shader: StencilMask
|
||||||
|
map: ["enum.HumanoidVisualLayers.StencilMask"]
|
||||||
|
sprite: Mobs/Customization/masking_helpers.rsi
|
||||||
|
state: female_full
|
||||||
|
visible: false
|
||||||
|
- map: ["jumpsuit"]
|
||||||
|
shader: StencilDraw
|
||||||
|
- map: ["enum.HumanoidVisualLayers.LHand"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: l_hand
|
||||||
|
- map: ["enum.HumanoidVisualLayers.RHand"]
|
||||||
|
color: "#e8b59b"
|
||||||
|
sprite: Mobs/Species/Human/parts.rsi
|
||||||
|
state: r_hand
|
||||||
|
- map: ["enum.HumanoidVisualLayers.Handcuffs"]
|
||||||
|
color: "#ffffff"
|
||||||
|
sprite: Objects/Misc/handcuffs.rsi
|
||||||
|
state: body-overlay-2
|
||||||
|
visible: false
|
||||||
|
- map: ["id"]
|
||||||
|
- map: ["gloves"]
|
||||||
|
- map: ["shoes"]
|
||||||
|
- map: ["ears"]
|
||||||
|
- map: ["outerClothing"]
|
||||||
|
- map: ["eyes"]
|
||||||
|
- map: ["belt"]
|
||||||
|
- map: ["neck"]
|
||||||
|
- map: ["back"]
|
||||||
|
- map: ["enum.HumanoidVisualLayers.FacialHair"]
|
||||||
|
state: shaved
|
||||||
|
sprite: Mobs/Customization/human_facial_hair.rsi
|
||||||
|
- map: ["enum.HumanoidVisualLayers.Hair"]
|
||||||
|
state: bald
|
||||||
|
sprite: Mobs/Customization/human_hair.rsi
|
||||||
|
- map: ["mask"]
|
||||||
|
- map: ["head"]
|
||||||
|
- map: [ "pocket1" ]
|
||||||
|
- map: [ "pocket2" ]
|
||||||
|
- map: ["hand-left"]
|
||||||
|
- map: ["hand-right"]
|
||||||
|
- type: Markings
|
||||||
|
- type: Physics
|
||||||
|
bodyType: Dynamic
|
||||||
|
- type: Fixtures
|
||||||
|
fixtures:
|
||||||
|
- shape:
|
||||||
|
!type:PhysShapeAabb
|
||||||
|
bounds: "-0.35,-0.35,0.35,0.35"
|
||||||
|
mass: 70
|
||||||
|
restitution: 0.0
|
||||||
|
mask:
|
||||||
|
- MobMask
|
||||||
|
layer:
|
||||||
|
- MobLayer
|
||||||
|
- type: HumanoidAppearance
|
||||||
|
- type: Body
|
||||||
|
template: HumanoidTemplate
|
||||||
|
preset: HumanPreset
|
||||||
|
- type: Damageable
|
||||||
|
damageContainer: Biological
|
||||||
|
- type: MobState
|
||||||
|
thresholds:
|
||||||
|
0: Alive
|
||||||
|
100: Critical
|
||||||
|
200: Dead
|
||||||
|
- type: Appearance
|
||||||
|
visuals:
|
||||||
|
- type: RotationVisualizer
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urist McHands The Dwarf
|
name: Urist McHands The Dwarf
|
||||||
parent: MobHumanBase
|
parent: BaseMobOrganic
|
||||||
id: MobDwarfBase
|
id: BaseMobDwarf
|
||||||
abstract: true
|
abstract: true
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
components:
|
components:
|
||||||
|
- type: Hunger
|
||||||
|
- type: Thirst
|
||||||
- type: Icon
|
- type: Icon
|
||||||
sprite: Mobs/Species/Slime/parts.rsi
|
sprite: Mobs/Species/Slime/parts.rsi
|
||||||
state: full
|
state: full
|
||||||
|
|||||||
@@ -1,454 +1,16 @@
|
|||||||
# Anything human specific (e.g. UI, input) goes under MobHuman
|
# Anything human specific (e.g. UI, input) goes under MobHuman
|
||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
|
||||||
name: Urist McHands
|
name: Urist McHands
|
||||||
id: MobHumanBase
|
parent: BaseMobOrganic
|
||||||
|
id: BaseMobHuman
|
||||||
|
abstract: true
|
||||||
description: A miserable pile of secrets.
|
description: A miserable pile of secrets.
|
||||||
noSpawn: true
|
|
||||||
components:
|
components:
|
||||||
- type: RangedDamageSound
|
|
||||||
soundGroups:
|
|
||||||
Brute:
|
|
||||||
collection:
|
|
||||||
MeatBulletImpact
|
|
||||||
soundTypes:
|
|
||||||
Heat:
|
|
||||||
collection:
|
|
||||||
MeatLaserImpact
|
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- CanPilot
|
|
||||||
- FootstepSound
|
|
||||||
- DoorBumpOpener
|
|
||||||
- type: Reactive
|
|
||||||
groups:
|
|
||||||
Flammable: [ Touch ]
|
|
||||||
Extinguish: [ Touch ]
|
|
||||||
Acidic: [Touch, Ingestion]
|
|
||||||
reactions:
|
|
||||||
- reagents: [Water, SpaceCleaner]
|
|
||||||
methods: [Touch]
|
|
||||||
effects:
|
|
||||||
- !type:WashCreamPieReaction
|
|
||||||
- type: Flashable
|
|
||||||
- type: Polymorphable
|
|
||||||
- type: Identity
|
|
||||||
- type: Hands
|
|
||||||
- type: MovementSpeedModifier
|
|
||||||
- type: MovedByPressure
|
|
||||||
- type: Barotrauma
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 0.15 #per second, scales with pressure and other constants.
|
|
||||||
- type: DamageOnHighSpeedImpact
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 5
|
|
||||||
soundHit:
|
|
||||||
path: /Audio/Effects/hit_kick.ogg
|
|
||||||
- type: Hunger
|
- type: Hunger
|
||||||
- type: Thirst
|
- type: Thirst
|
||||||
# Organs
|
|
||||||
- type: InjectableSolution
|
|
||||||
solution: chemicals
|
|
||||||
- type: IdExaminable
|
|
||||||
- type: HealthExaminable
|
|
||||||
examinableTypes:
|
|
||||||
- Blunt
|
|
||||||
- Slash
|
|
||||||
- Piercing
|
|
||||||
- Heat
|
|
||||||
- Shock
|
|
||||||
- type: Bloodstream
|
|
||||||
bloodlossDamage:
|
|
||||||
types:
|
|
||||||
Bloodloss:
|
|
||||||
1
|
|
||||||
bloodlossHealDamage:
|
|
||||||
types:
|
|
||||||
Bloodloss:
|
|
||||||
-0.25
|
|
||||||
- type: Stamina
|
|
||||||
- type: StatusEffects
|
|
||||||
allowed:
|
|
||||||
- Stun
|
|
||||||
- KnockedDown
|
|
||||||
- SlowedDown
|
|
||||||
- Stutter
|
|
||||||
- SeeingRainbows
|
|
||||||
- Electrocution
|
|
||||||
- Drunk
|
|
||||||
- SlurredSpeech
|
|
||||||
- PressureImmunity
|
|
||||||
- Muted
|
|
||||||
- ForcedSleep
|
|
||||||
- type: DiseaseCarrier
|
|
||||||
- type: Blindable
|
|
||||||
# Other
|
|
||||||
- type: Inventory
|
|
||||||
- type: Clickable
|
|
||||||
- type: InteractionOutline
|
|
||||||
- type: Icon
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: full
|
|
||||||
- type: Sprite
|
|
||||||
netsync: false
|
|
||||||
noRot: true
|
|
||||||
drawdepth: Mobs
|
|
||||||
layers:
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: torso_m
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.Head" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: head_m
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.Eyes" ]
|
|
||||||
color: "#008800"
|
|
||||||
sprite: Mobs/Customization/eyes.rsi
|
|
||||||
state: eyes
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.RArm" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_arm
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.LArm" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_arm
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.RLeg" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_leg
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.LLeg" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_leg
|
|
||||||
- shader: StencilClear
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_leg
|
|
||||||
- shader: StencilMask
|
|
||||||
map: [ "enum.HumanoidVisualLayers.StencilMask" ]
|
|
||||||
sprite: Mobs/Customization/masking_helpers.rsi
|
|
||||||
state: female_full
|
|
||||||
visible: false
|
|
||||||
- map: [ "jumpsuit" ]
|
|
||||||
shader: StencilDraw
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.LHand" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_hand
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.RHand" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_hand
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_foot
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_foot
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.Handcuffs" ]
|
|
||||||
color: "#ffffff"
|
|
||||||
sprite: Objects/Misc/handcuffs.rsi
|
|
||||||
state: body-overlay-2
|
|
||||||
visible: false
|
|
||||||
- map: [ "id" ]
|
|
||||||
- map: [ "gloves" ]
|
|
||||||
- map: [ "shoes" ]
|
|
||||||
- map: [ "ears" ]
|
|
||||||
- map: [ "outerClothing" ]
|
|
||||||
- map: [ "eyes" ]
|
|
||||||
- map: [ "belt" ]
|
|
||||||
- map: [ "neck" ]
|
|
||||||
- map: [ "back" ]
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.FacialHair" ]
|
|
||||||
state: shaved
|
|
||||||
sprite: Mobs/Customization/human_facial_hair.rsi
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.Hair" ]
|
|
||||||
state: bald
|
|
||||||
sprite: Mobs/Customization/human_hair.rsi
|
|
||||||
- map: [ "mask" ]
|
|
||||||
- map: [ "head" ]
|
|
||||||
- map: [ "pocket1" ]
|
|
||||||
- map: [ "pocket2" ]
|
|
||||||
- type: Markings
|
|
||||||
layerPoints:
|
|
||||||
Tail:
|
|
||||||
points: 0
|
|
||||||
required: false
|
|
||||||
HeadTop:
|
|
||||||
points: 0
|
|
||||||
required: false
|
|
||||||
Chest:
|
|
||||||
points: 1
|
|
||||||
required: false
|
|
||||||
Legs:
|
|
||||||
points: 2
|
|
||||||
required: false
|
|
||||||
Arms:
|
|
||||||
points: 2
|
|
||||||
required: false
|
|
||||||
- type: Physics
|
|
||||||
bodyType: KinematicController
|
|
||||||
- type: Fixtures
|
|
||||||
fixtures: # TODO: This needs a second fixture just for mob collisions.
|
|
||||||
- shape:
|
|
||||||
!type:PhysShapeCircle
|
|
||||||
radius: 0.35
|
|
||||||
mass: 70
|
|
||||||
restitution: 0.0
|
|
||||||
mask:
|
|
||||||
- MobMask
|
|
||||||
layer:
|
|
||||||
- MobLayer
|
|
||||||
- type: AtmosExposed
|
|
||||||
- type: Flammable
|
|
||||||
fireSpread: true
|
|
||||||
canResistFire: true
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Heat: 1 #per second, scales with number of fire 'stacks'
|
|
||||||
- type: Temperature
|
|
||||||
heatDamageThreshold: 360
|
|
||||||
coldDamageThreshold: 260
|
|
||||||
currentTemperature: 310.15
|
|
||||||
specificHeat: 42
|
|
||||||
coldDamage:
|
|
||||||
types:
|
|
||||||
Cold: 0.1 #per second, scales with temperature & other constants
|
|
||||||
heatDamage:
|
|
||||||
types:
|
|
||||||
Heat: 0.1 #per second, scales with temperature & other constants
|
|
||||||
- type: HumanoidAppearance
|
|
||||||
- type: Body
|
|
||||||
template: HumanoidTemplate
|
|
||||||
preset: HumanPreset
|
|
||||||
- type: Damageable
|
|
||||||
damageContainer: Biological
|
|
||||||
- type: ThermalRegulator
|
|
||||||
metabolismHeat: 800
|
|
||||||
radiatedHeat: 100
|
|
||||||
implicitHeatRegulation: 500
|
|
||||||
sweatHeatRegulation: 2000
|
|
||||||
shiveringHeatRegulation: 2000
|
|
||||||
normalBodyTemperature: 310.15
|
|
||||||
thermalRegulationTemperatureThreshold: 25
|
|
||||||
- type: Internals
|
|
||||||
- type: MobState
|
|
||||||
thresholds:
|
|
||||||
0: Alive
|
|
||||||
100: Critical
|
|
||||||
200: Dead
|
|
||||||
- type: Destructible
|
|
||||||
thresholds:
|
|
||||||
- trigger:
|
|
||||||
!type:DamageTypeTrigger
|
|
||||||
damageType: Blunt
|
|
||||||
damage: 400
|
|
||||||
behaviors:
|
|
||||||
- !type:GibBehavior { }
|
|
||||||
- type: SlowOnDamage
|
|
||||||
speedModifierThresholds:
|
|
||||||
60: 0.7
|
|
||||||
80: 0.5
|
|
||||||
- type: HeatResistance
|
|
||||||
- type: Appearance
|
|
||||||
visuals:
|
|
||||||
- type: RotationVisualizer
|
|
||||||
- type: BuckleVisualizer
|
|
||||||
- type: CreamPiedVisualizer
|
|
||||||
state: creampie_human
|
|
||||||
- type: DamageVisualizer
|
|
||||||
thresholds: [20, 40, 100]
|
|
||||||
targetLayers:
|
|
||||||
- "enum.HumanoidVisualLayers.Chest"
|
|
||||||
- "enum.HumanoidVisualLayers.Head"
|
|
||||||
- "enum.HumanoidVisualLayers.LArm"
|
|
||||||
- "enum.HumanoidVisualLayers.LLeg"
|
|
||||||
- "enum.HumanoidVisualLayers.RArm"
|
|
||||||
- "enum.HumanoidVisualLayers.RLeg"
|
|
||||||
damageOverlayGroups:
|
|
||||||
Brute:
|
|
||||||
sprite: Mobs/Effects/brute_damage.rsi
|
|
||||||
color: "#FF0000"
|
|
||||||
Burn:
|
|
||||||
sprite: Mobs/Effects/burn_damage.rsi
|
|
||||||
- type: FireVisuals
|
|
||||||
sprite: Mobs/Effects/onfire.rsi
|
|
||||||
normalState: Generic_mob_burning
|
|
||||||
alternateState: Standing
|
|
||||||
fireStackAlternateState: 3
|
|
||||||
- type: CombatMode
|
|
||||||
- type: Climbing
|
|
||||||
- type: Cuffable
|
|
||||||
- type: CharacterInfo
|
|
||||||
- type: AnimationPlayer
|
|
||||||
- type: Buckle
|
|
||||||
- type: MeleeWeapon
|
|
||||||
hitSound:
|
|
||||||
collection: Punch
|
|
||||||
range: 0.8
|
|
||||||
arcwidth: 30
|
|
||||||
arc: fist
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 5
|
|
||||||
- type: Pullable
|
|
||||||
- type: DoAfter
|
|
||||||
- type: CreamPied
|
|
||||||
- type: Stripping
|
|
||||||
- type: Strippable
|
|
||||||
- type: UserInterface
|
|
||||||
interfaces:
|
|
||||||
- key: enum.StrippingUiKey.Key
|
|
||||||
type: StrippableBoundUserInterface
|
|
||||||
- type: Puller
|
|
||||||
- type: Butcherable
|
|
||||||
butcheringType: Spike # TODO human.
|
|
||||||
spawned:
|
|
||||||
- id: FoodMeat
|
|
||||||
amount: 5
|
|
||||||
# - type: Recyclable Turns out turning off recycler safeties without considering the instagib is a bad idea
|
|
||||||
# safe: false
|
|
||||||
- type: Speech
|
|
||||||
speechSounds: Alto
|
|
||||||
- type: Vocal
|
|
||||||
- type: Emoting
|
|
||||||
- type: Grammar
|
|
||||||
attributes:
|
|
||||||
proper: true
|
|
||||||
- type: StandingState
|
|
||||||
- type: Fingerprint
|
|
||||||
- type: MobPrice
|
|
||||||
price: 1500 # Kidnapping a living person and selling them for cred is a good move.
|
|
||||||
deathPenalty: 0.01 # However they really ought to be living and intact, otherwise they're worth 100x less.
|
|
||||||
- type: Perishable
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
|
||||||
name: Urist McHands
|
name: Urist McHands
|
||||||
id: MobHumanDummy
|
id: MobHumanDummy
|
||||||
|
parent: BaseMobOrganicDummy
|
||||||
noSpawn: true
|
noSpawn: true
|
||||||
description: A dummy human meant to be used in character setup.
|
|
||||||
components:
|
|
||||||
- type: Hands
|
|
||||||
- type: Inventory
|
|
||||||
- type: ContainerContainer
|
|
||||||
- type: Icon
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: full
|
|
||||||
- type: Sprite
|
|
||||||
netsync: false
|
|
||||||
drawdepth: Mobs
|
|
||||||
noRot: true
|
|
||||||
# TODO BODY Turn these into individual body parts?
|
|
||||||
layers:
|
|
||||||
- map: ["enum.HumanoidVisualLayers.Chest"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: torso_m
|
|
||||||
- map: ["enum.HumanoidVisualLayers.Head"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: head_m
|
|
||||||
- map: ["enum.HumanoidVisualLayers.Eyes"]
|
|
||||||
color: "#008800"
|
|
||||||
sprite: Mobs/Customization/eyes.rsi
|
|
||||||
state: eyes
|
|
||||||
- map: ["enum.HumanoidVisualLayers.RArm"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_arm
|
|
||||||
- map: ["enum.HumanoidVisualLayers.LArm"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_arm
|
|
||||||
- map: ["enum.HumanoidVisualLayers.RLeg"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_leg
|
|
||||||
- map: ["enum.HumanoidVisualLayers.LLeg"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_leg
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.LFoot" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_foot
|
|
||||||
- map: [ "enum.HumanoidVisualLayers.RFoot" ]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_foot
|
|
||||||
- shader: StencilClear
|
|
||||||
- shader: StencilMask
|
|
||||||
map: ["enum.HumanoidVisualLayers.StencilMask"]
|
|
||||||
sprite: Mobs/Customization/masking_helpers.rsi
|
|
||||||
state: female_full
|
|
||||||
visible: false
|
|
||||||
- map: ["jumpsuit"]
|
|
||||||
shader: StencilDraw
|
|
||||||
- map: ["enum.HumanoidVisualLayers.LHand"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: l_hand
|
|
||||||
- map: ["enum.HumanoidVisualLayers.RHand"]
|
|
||||||
color: "#e8b59b"
|
|
||||||
sprite: Mobs/Species/Human/parts.rsi
|
|
||||||
state: r_hand
|
|
||||||
- map: ["enum.HumanoidVisualLayers.Handcuffs"]
|
|
||||||
color: "#ffffff"
|
|
||||||
sprite: Objects/Misc/handcuffs.rsi
|
|
||||||
state: body-overlay-2
|
|
||||||
visible: false
|
|
||||||
- map: ["id"]
|
|
||||||
- map: ["gloves"]
|
|
||||||
- map: ["shoes"]
|
|
||||||
- map: ["ears"]
|
|
||||||
- map: ["outerClothing"]
|
|
||||||
- map: ["eyes"]
|
|
||||||
- map: ["belt"]
|
|
||||||
- map: ["neck"]
|
|
||||||
- map: ["back"]
|
|
||||||
- map: ["enum.HumanoidVisualLayers.FacialHair"]
|
|
||||||
state: shaved
|
|
||||||
sprite: Mobs/Customization/human_facial_hair.rsi
|
|
||||||
- map: ["enum.HumanoidVisualLayers.Hair"]
|
|
||||||
state: bald
|
|
||||||
sprite: Mobs/Customization/human_hair.rsi
|
|
||||||
- map: ["mask"]
|
|
||||||
- map: ["head"]
|
|
||||||
- map: [ "pocket1" ]
|
|
||||||
- map: [ "pocket2" ]
|
|
||||||
- map: ["hand-left"]
|
|
||||||
- map: ["hand-right"]
|
|
||||||
- type: Markings
|
|
||||||
- type: Physics
|
|
||||||
bodyType: Dynamic
|
|
||||||
- type: Fixtures
|
|
||||||
fixtures:
|
|
||||||
- shape:
|
|
||||||
!type:PhysShapeAabb
|
|
||||||
bounds: "-0.35,-0.35,0.35,0.35"
|
|
||||||
mass: 70
|
|
||||||
restitution: 0.0
|
|
||||||
mask:
|
|
||||||
- MobMask
|
|
||||||
layer:
|
|
||||||
- MobLayer
|
|
||||||
- type: HumanoidAppearance
|
|
||||||
- type: Body
|
|
||||||
template: HumanoidTemplate
|
|
||||||
preset: HumanPreset
|
|
||||||
- type: Damageable
|
|
||||||
damageContainer: Biological
|
|
||||||
- type: MobState
|
|
||||||
thresholds:
|
|
||||||
0: Alive
|
|
||||||
100: Critical
|
|
||||||
200: Dead
|
|
||||||
- type: Appearance
|
|
||||||
visuals:
|
|
||||||
- type: RotationVisualizer
|
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urisst' Mzhand
|
name: Urisst' Mzhand
|
||||||
parent: MobHumanBase
|
parent: BaseMobOrganic
|
||||||
id: MobReptilianBase
|
id: BaseMobReptilian
|
||||||
abstract: true
|
abstract: true
|
||||||
description: A miserable pile of scales.
|
description: A miserable pile of scales.
|
||||||
components:
|
components:
|
||||||
|
- type: Hunger
|
||||||
|
- type: Thirst
|
||||||
- type: Icon
|
- type: Icon
|
||||||
sprite: Mobs/Species/Reptilian/parts.rsi
|
sprite: Mobs/Species/Reptilian/parts.rsi
|
||||||
state: full
|
state: full
|
||||||
|
|||||||
@@ -1,67 +1,17 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urist McSkelly
|
name: Urist McSkelly
|
||||||
id: MobSkeletonPersonBase
|
parent: BaseMobOrganic
|
||||||
|
id: BaseMobSkeletonPerson
|
||||||
|
abstract: true
|
||||||
description: A miserable pile of bones.
|
description: A miserable pile of bones.
|
||||||
noSpawn: true
|
|
||||||
components:
|
components:
|
||||||
- type: Tag
|
|
||||||
tags:
|
|
||||||
- CanPilot
|
|
||||||
- FootstepSound
|
|
||||||
- DoorBumpOpener
|
|
||||||
- type: Reactive
|
|
||||||
groups:
|
|
||||||
Flammable: [ Touch ]
|
|
||||||
Extinguish: [ Touch ]
|
|
||||||
Acidic: [Touch, Ingestion]
|
|
||||||
reactions:
|
|
||||||
- reagents: [Water, SpaceCleaner]
|
|
||||||
methods: [Touch]
|
|
||||||
effects:
|
|
||||||
- !type:WashCreamPieReaction
|
|
||||||
- type: Flashable
|
|
||||||
- type: Polymorphable
|
|
||||||
- type: Hands
|
|
||||||
- type: MovementSpeedModifier
|
|
||||||
- type: MovedByPressure
|
|
||||||
- type: Markings
|
- type: Markings
|
||||||
- type: Barotrauma
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 0.1 #per second, scales with pressure and other constants.
|
|
||||||
- type: DamageOnHighSpeedImpact
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 5
|
|
||||||
soundHit:
|
|
||||||
path: /Audio/Effects/hit_kick.ogg
|
|
||||||
# Organs
|
|
||||||
- type: HealthExaminable
|
|
||||||
examinableTypes:
|
|
||||||
- Blunt
|
|
||||||
- Slash
|
|
||||||
- Piercing
|
|
||||||
- Heat
|
|
||||||
- Shock
|
|
||||||
- type: StatusEffects
|
|
||||||
allowed:
|
|
||||||
- Stun
|
|
||||||
- KnockedDown
|
|
||||||
- SlowedDown
|
|
||||||
- Stutter
|
|
||||||
- Electrocution
|
|
||||||
# Other
|
|
||||||
- type: Inventory
|
|
||||||
- type: Clickable
|
|
||||||
- type: InteractionOutline
|
|
||||||
- type: Icon
|
- type: Icon
|
||||||
sprite: Mobs/Species/Skeleton/parts.rsi
|
sprite: Mobs/Species/Skeleton/parts.rsi
|
||||||
state: full
|
state: full
|
||||||
|
# Other
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
netsync: false
|
|
||||||
noRot: true
|
|
||||||
drawdepth: Mobs
|
|
||||||
layers:
|
layers:
|
||||||
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
||||||
color: "#ffffff"
|
color: "#ffffff"
|
||||||
@@ -135,38 +85,6 @@
|
|||||||
- map: [ "head" ]
|
- map: [ "head" ]
|
||||||
- map: [ "pocket1" ]
|
- map: [ "pocket1" ]
|
||||||
- map: [ "pocket2" ]
|
- map: [ "pocket2" ]
|
||||||
- type: Physics
|
|
||||||
bodyType: KinematicController
|
|
||||||
- type: Fixtures
|
|
||||||
fixtures: # TODO: This needs a second fixture just for mob collisions.
|
|
||||||
- shape:
|
|
||||||
!type:PhysShapeCircle
|
|
||||||
radius: 0.35
|
|
||||||
mass: 70
|
|
||||||
restitution: 0.0
|
|
||||||
mask:
|
|
||||||
- MobMask
|
|
||||||
layer:
|
|
||||||
- MobLayer
|
|
||||||
- type: AtmosExposed
|
|
||||||
- type: Flammable
|
|
||||||
fireSpread: true
|
|
||||||
canResistFire: true
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Heat: 1 #per second, scales with number of fire 'stacks'
|
|
||||||
- type: Temperature
|
|
||||||
heatDamageThreshold: 360
|
|
||||||
coldDamageThreshold: 260
|
|
||||||
currentTemperature: 310.15
|
|
||||||
specificHeat: 42
|
|
||||||
coldDamage:
|
|
||||||
types:
|
|
||||||
Cold : 1 #per second, scales with temperature & other constants
|
|
||||||
heatDamage:
|
|
||||||
types:
|
|
||||||
Heat : 1 #per second, scales with temperature & other constants
|
|
||||||
- type: HumanoidAppearance
|
|
||||||
- type: Body
|
- type: Body
|
||||||
template: HumanoidTemplate
|
template: HumanoidTemplate
|
||||||
preset: SkeletonPreset
|
preset: SkeletonPreset
|
||||||
@@ -174,15 +92,6 @@
|
|||||||
- type: Damageable
|
- type: Damageable
|
||||||
damageContainer: Biological
|
damageContainer: Biological
|
||||||
damageModifierSet: Skeleton
|
damageModifierSet: Skeleton
|
||||||
- type: ThermalRegulator
|
|
||||||
metabolismHeat: 800
|
|
||||||
radiatedHeat: 100
|
|
||||||
implicitHeatRegulation: 500
|
|
||||||
sweatHeatRegulation: 2000
|
|
||||||
shiveringHeatRegulation: 2000
|
|
||||||
normalBodyTemperature: 310.15
|
|
||||||
thermalRegulationTemperatureThreshold: 25
|
|
||||||
- type: Internals
|
|
||||||
- type: MobState
|
- type: MobState
|
||||||
thresholds:
|
thresholds:
|
||||||
0: Alive
|
0: Alive
|
||||||
@@ -198,71 +107,12 @@
|
|||||||
speedModifierThresholds:
|
speedModifierThresholds:
|
||||||
60: 0.9
|
60: 0.9
|
||||||
80: 0.7
|
80: 0.7
|
||||||
- type: HeatResistance
|
|
||||||
- type: Appearance
|
|
||||||
visuals:
|
|
||||||
- type: RotationVisualizer
|
|
||||||
- type: BuckleVisualizer
|
|
||||||
- type: CreamPiedVisualizer
|
|
||||||
state: creampie_human
|
|
||||||
- type: DamageVisualizer
|
|
||||||
thresholds: [20, 40, 100]
|
|
||||||
targetLayers:
|
|
||||||
- "enum.HumanoidVisualLayers.Chest"
|
|
||||||
- "enum.HumanoidVisualLayers.Head"
|
|
||||||
- "enum.HumanoidVisualLayers.LArm"
|
|
||||||
- "enum.HumanoidVisualLayers.LLeg"
|
|
||||||
- "enum.HumanoidVisualLayers.RArm"
|
|
||||||
- "enum.HumanoidVisualLayers.RLeg"
|
|
||||||
damageOverlayGroups:
|
|
||||||
Brute:
|
|
||||||
sprite: Mobs/Effects/brute_damage.rsi
|
|
||||||
color: "#8a8a8a"
|
|
||||||
Burn:
|
|
||||||
sprite: Mobs/Effects/burn_damage.rsi
|
|
||||||
- type: FireVisuals
|
|
||||||
sprite: Mobs/Effects/onfire.rsi
|
|
||||||
normalState: Generic_mob_burning
|
|
||||||
alternateState: Standing
|
|
||||||
fireStackAlternateState: 3
|
|
||||||
- type: CombatMode
|
|
||||||
canDisarm: true
|
|
||||||
- type: Climbing
|
|
||||||
- type: Cuffable
|
|
||||||
- type: CharacterInfo
|
|
||||||
- type: AnimationPlayer
|
|
||||||
- type: Buckle
|
|
||||||
- type: MeleeWeapon
|
|
||||||
hitSound:
|
|
||||||
collection: Punch
|
|
||||||
range: 0.8
|
|
||||||
arcwidth: 30
|
|
||||||
arc: fist
|
|
||||||
damage:
|
|
||||||
types:
|
|
||||||
Blunt: 5
|
|
||||||
- type: Pullable
|
|
||||||
- type: DoAfter
|
|
||||||
- type: CreamPied
|
|
||||||
- type: Stripping
|
|
||||||
- type: Strippable
|
|
||||||
- type: UserInterface
|
|
||||||
interfaces:
|
|
||||||
- key: enum.StrippingUiKey.Key
|
|
||||||
type: StrippableBoundUserInterface
|
|
||||||
- type: Puller
|
|
||||||
- type: Speech
|
- type: Speech
|
||||||
- type: Vocal
|
|
||||||
- type: Emoting
|
|
||||||
- type: Grammar
|
|
||||||
attributes:
|
|
||||||
proper: true
|
|
||||||
- type: StandingState
|
|
||||||
|
|
||||||
- type: entity
|
- type: entity
|
||||||
save: false
|
save: false
|
||||||
name: Urist McSkelly
|
name: Urist McSkelly
|
||||||
parent: MobHumanDummy
|
parent: BaseMobOrganicDummy
|
||||||
id: MobSkeletonPersonDummy
|
id: MobSkeletonPersonDummy
|
||||||
noSpawn: true
|
noSpawn: true
|
||||||
description: A dummy skeleton meant to be used in character setup.
|
description: A dummy skeleton meant to be used in character setup.
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
name: Urist McSlime
|
name: Urist McSlime
|
||||||
parent: MobHumanBase
|
parent: BaseMobOrganic
|
||||||
id: MobSlimePersonBase
|
id: BaseMobSlimePerson
|
||||||
description: A miserable pile of slime.
|
|
||||||
abstract: true
|
abstract: true
|
||||||
|
description: A miserable pile of slime.
|
||||||
components:
|
components:
|
||||||
|
- type: Hunger
|
||||||
|
- type: Thirst
|
||||||
- type: Icon
|
- type: Icon
|
||||||
sprite: Mobs/Species/Slime/parts.rsi
|
sprite: Mobs/Species/Slime/parts.rsi
|
||||||
state: full
|
state: full
|
||||||
|
|||||||
@@ -1,15 +1,14 @@
|
|||||||
- type: entity
|
- type: entity
|
||||||
parent: MobHumanBase
|
parent: BaseMobOrganic
|
||||||
id: MobVoxBase
|
id: BaseMobVox
|
||||||
noSpawn: true
|
abstract: true
|
||||||
components:
|
components:
|
||||||
|
- type: Hunger
|
||||||
|
- type: Thirst
|
||||||
- type: Icon
|
- type: Icon
|
||||||
sprite: Mobs/Species/Vox/parts.rsi
|
sprite: Mobs/Species/Vox/parts.rsi
|
||||||
state: vox_m
|
state: vox_m
|
||||||
- type: Sprite
|
- type: Sprite
|
||||||
netsync: false
|
|
||||||
noRot: true
|
|
||||||
drawdepth: Mobs
|
|
||||||
layers:
|
layers:
|
||||||
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
- map: [ "enum.HumanoidVisualLayers.Chest" ]
|
||||||
sprite: Mobs/Species/Vox/parts.rsi
|
sprite: Mobs/Species/Vox/parts.rsi
|
||||||
|
|||||||
Reference in New Issue
Block a user