Compare commits

...

16 Commits

Author SHA1 Message Date
Red
7a4537d6c0 Merge branch 'master' into ed-21-09-2025-armor-update 2025-10-02 11:23:05 +03:00
Kit
bc60036a29 poll results (#1820)
poll
2025-10-01 21:39:50 -04:00
nukkuminen
e8ae76eae5 QOL (#1817) 2025-10-01 12:57:13 -04:00
nukkuminen
67704f953f cats now climb on tables (#1816)
* cats now climb on tables

* pulling
2025-10-01 11:49:33 -04:00
CrystallEdge Server
dece65f3a7 Automatic changelog update 2025-10-01 17:45:15 +03:00
nukkuminen
bdcd379363 Kitties! Cats! Small carcats! (#1814)
* todo finish after cbt

* alright. it's working, somehow

* colored cars

* i'll fucking smash my head against the wall

* colored cars with spots

* i can't belive my eyes

* spawners, localization and some stuff

* rat hunters

* resolving stuff

* and this one too

* car

* car 2

* car 3

* 13

* car 4

* car 5

* car 6

* i hate rats

* car 7

* finally

* alldun!

* CARCATS 2 IS REAL
2025-10-01 17:44:08 +03:00
github-actions[bot]
f2ca5a9a89 @kin98 has signed the CLA in crystallpunk-14/crystall-punk-14#1815 2025-10-01 14:19:25 +00:00
CrystallEdge Server
d812103806 Automatic changelog update 2025-10-01 14:37:12 +03:00
nukkuminen
5cd90ec7e8 Tweaks for the alchemy (#1764)
* buff the antidote poison

* fix the hallucinogenic solution

* antidote isn't antidoting now
2025-10-01 07:36:06 -04:00
CrystallEdge Server
1053a8502a Automatic changelog update 2025-09-30 19:29:04 +03:00
Nim
60946749a8 Snail (#1753)
* snail

* sack snail

* gib on step

* comment

* chance step trigger

* timed spawner

* Respirator

* GhostRole

* Speech

* Hunger

* Thirst
2025-09-30 12:27:58 -04:00
CrystallEdge Server
ef9fbbd699 Automatic changelog update 2025-09-30 15:03:56 +03:00
nukkuminen
bce80d4026 Merge pull request #1813 from oldschoolotaku/OH-GOD-IT-BURNS
Custom burning sprites
2025-09-30 08:02:49 -04:00
CrystallEdge Server
fe0853a1f3 Automatic changelog update 2025-09-28 23:54:21 +03:00
Red
621ee3fa73 Hotfix (#1811)
* fix #1809

* fairies disable
2025-09-28 23:53:15 +03:00
Ed
a4d49a1a99 armor system 2025-09-22 20:30:41 +03:00
47 changed files with 734 additions and 51 deletions

View File

@@ -90,7 +90,7 @@ public sealed partial class CP14RoundEndSystem
var isWeekend = now.DayOfWeek is DayOfWeek.Saturday || now.DayOfWeek is DayOfWeek.Sunday;
var allowedRuPlaytime = isWeekend ? now.Hour is >= 13 and < 17 : now.Hour is >= 15 and < 19;
var allowedEngPlaytime = now.Hour is >= 19 and < 23;
var allowedEngPlaytime = isWeekend ? now.Hour is >= 17 and < 21 : now.Hour is >= 19 and < 23;
var isMonday = now.DayOfWeek is DayOfWeek.Monday;
if (((ruDays && allowedRuPlaytime) || (!ruDays && allowedEngPlaytime)) && !isMonday)

View File

@@ -394,7 +394,7 @@ namespace Content.Shared.Damage
}
}
public sealed class DamageChangedEvent : EntityEventArgs
public sealed class DamageChangedEvent : EntityEventArgs, IInventoryRelayEvent
{
/// <summary>
/// This is the component whose damage was changed.
@@ -448,5 +448,9 @@ namespace Content.Shared.Damage
}
InterruptsDoAfters = interruptsDoAfters && DamageIncreased;
}
//CP14
public SlotFlags TargetSlots => SlotFlags.All;
//CP14 end
}
}

View File

@@ -45,6 +45,7 @@ public partial class InventorySystem
SubscribeLocalEvent<InventoryComponent, CP14MagicEssenceScanEvent>(RelayInventoryEvent);
SubscribeLocalEvent<InventoryComponent, CP14CalculateManacostEvent>(RelayInventoryEvent);
SubscribeLocalEvent<InventoryComponent, CP14SkillScanEvent>(RelayInventoryEvent);
SubscribeLocalEvent<InventoryComponent, DamageChangedEvent>(RelayInventoryEvent);
//CP14 End
SubscribeLocalEvent<InventoryComponent, DamageModifyEvent>(RelayInventoryEvent);

View File

@@ -0,0 +1,15 @@
using Content.Shared._CP14.Actions;
using Content.Shared.Damage;
using Robust.Shared.GameStates;
namespace Content.Shared._CP14.Armor;
/// <summary>
/// When the wearer takes damage, part of that damage is also taken by this item of clothing.
/// </summary>
[RegisterComponent, NetworkedComponent, Access(typeof(CP14ArmorSystem))]
public sealed partial class CP14ArmorDamageAbsorptionComponent : Component
{
[DataField]
public float Absorption = 0.3f;
}

View File

@@ -0,0 +1,28 @@
using Content.Shared.Damage;
using Content.Shared.Inventory;
namespace Content.Shared._CP14.Armor;
public sealed class CP14ArmorSystem : EntitySystem
{
[Dependency] private readonly DamageableSystem _damageable = default!;
public override void Initialize()
{
base.Initialize();
SubscribeLocalEvent<CP14ArmorDamageAbsorptionComponent, InventoryRelayedEvent<DamageChangedEvent>>(OnDamageChanged);
}
private void OnDamageChanged(Entity<CP14ArmorDamageAbsorptionComponent> ent, ref InventoryRelayedEvent<DamageChangedEvent> args)
{
if (!args.Args.DamageIncreased)
return;
if (args.Args.DamageDelta is null)
return;
_damageable.TryChangeDamage(ent, args.Args.DamageDelta * ent.Comp.Absorption);
}
}

View File

@@ -2297,3 +2297,41 @@
id: 8277
time: '2025-09-28T08:16:52.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1805
- author: TheShuEd
changes:
- message: Disabled magic fairies until fix, becaues they cause server crashes
type: Remove
- message: Fixed lurker melee stun interrupting
type: Fix
id: 8278
time: '2025-09-28T20:53:15.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1811
- author: TTTomaTTT, oldschool_otaku
changes:
- message: Added custom burning sprites
type: Add
id: 8279
time: '2025-09-30T12:02:49.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1813
- author: Nimfar11
changes:
- message: Adds snails and their shells as an appetiser. Be careful when hitting
them, they are very fragile.
type: Add
id: 8280
time: '2025-09-30T16:27:58.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1753
- author: oldschool_otaku
changes:
- message: Hallucinogenic solution is fixed
type: Fix
id: 8281
time: '2025-10-01T11:36:06.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1764
- author: oldschool_otaku
changes:
- message: Added cats!
type: Add
id: 8282
time: '2025-10-01T14:44:09.0000000+00:00'
url: https://github.com/crystallpunk-14/crystall-punk-14/pull/1814

View File

@@ -12,3 +12,9 @@ cp14-ghost-role-information-description-rat = An honorable rat. Relieve tavernke
cp14-ghost-role-information-name-bone-hound = Bone hound
cp14-ghost-role-information-description-bone-hound = A bone hound created by necromantic magic, usually summoned by skeleton mages to form a pack of hunters. Obeys the skeleton that summoned it.
cp14-ghost-role-information-name-snail = Snail
cp14-ghost-role-information-description-snail = Surviving is already an achievement.
cp14-ghost-role-information-cat-name = Cat
cp14-ghost-role-information-cat-description = You're the fluffiest thing in the world. Hunt the mice/rats, be cute or stick with some adventurers!

View File

@@ -12,3 +12,9 @@ cp14-ghost-role-information-description-rat = Крыса чести. Избав
cp14-ghost-role-information-name-bone-hound = Костяная гончая
cp14-ghost-role-information-description-bone-hound = Костяная гончая, созданная с помощью магии некромантии, обычно вызываемая магами скелетами для формирования стаи охотников. Подчиняется скелету, который его вызвал.
cp14-ghost-role-information-name-snail = Улитка
cp14-ghost-role-information-description-snail = Выжить это уже достижение.
cp14-ghost-role-information-cat-name = Кот
cp14-ghost-role-information-cat-description = Ты самое пушистое существо в этом мире! Охоться за мышами/крысами, будь милым или ходи вместе с авантюристами!

View File

@@ -126,3 +126,5 @@
- id: CP14BookTieflingGambit
- id: CP14GuidebookCooking
- id: CP14SackFarmingSeedFull
- id: CP14SackFarmingSeedSnail
prob: 0.6

View File

@@ -8,7 +8,7 @@
stamina: 20
- type: DoAfterArgs
delay: 2.5
distanceThreshold: 1.5
distanceThreshold: 2.5
breakOnDamage: true
- type: CP14ActionEmoting
startEmote: cp14-kick-lurker-start

View File

@@ -57,13 +57,6 @@
CP14Leather: 18 # 20u CP14Leather (4x5u) ~~~ and -2u for cost balance
CP14Iron: 2 # 2u CP14IronBuckle (1x2u)
# Cost: (20×1.2) + (2×2) = 24 + 4 = 28 copper coins
- type: Armor
modifiers:
coefficients:
Blunt: 0.95
Slash: 0.95
Heat: 0.90
Caustic: 0.90
- type: ExplosionResistance
damageCoefficient: 0.9

View File

@@ -108,11 +108,6 @@
CP14Iron: 12 # 12u CP14IronBuckle (6x2u)
CP14Cloth: 50 # 40u CP14Cloth (8x10u) + 10u CP14String ~~~ 15 additional coppers
# Cost: (45×1.2) + (12×2) = 54 + 24 = 78 copper coins
- type: Armor
modifiers:
coefficients:
Blunt: 0.95
Slash: 0.95
- type: StaticPrice
price: 30 # Balance with backpack
@@ -139,11 +134,6 @@
CP14Iron: 12 # 12u CP14IronBuckle (6x2u)
CP14Cloth: 50 # 40u CP14Cloth (8x10u) + 10u CP14String ~~~ 15 additional coppers
# Cost: (80×1.2) + (12×2) = 96 + 24 = 120 copper coins
- type: Armor
modifiers:
coefficients:
Blunt: 0.90
Slash: 0.90
- type: ExplosionResistance
damageCoefficient: 0.9
- type: ClothingSpeedModifier
@@ -180,11 +170,5 @@
CP14Leather: 45 # 15u thin (3x5u) + 30u regular (3x10u)
CP14Iron: 32 # 20 + 12u CP14IronBuckle (6x2u)
# Cost: (45×1.2) + (32×2) = 54 + 64 = 118 copper coins
- type: Armor
modifiers:
coefficients:
Blunt: 0.90
Slash: 0.90
Piercing: 0.95
- type: ExplosionResistance
damageCoefficient: 0.85

View File

@@ -127,6 +127,9 @@
sprintModifier: 0.90
- type: CP14MagicManacostModify
globalModifier: 1.2
- type: CP14ArmorDamageAbsorption
absorption: 0.5
- type: PhysicalComposition
materialComposition:
CP14Iron: 90
- type: Damageable

View File

@@ -107,6 +107,56 @@
prototypes:
- CP14MobSheep
- type: entity
name: snail spawner
id: CP14SpawnMobSnail
parent: MarkerBase
categories: [ ForkFiltered ]
components:
- type: Sprite
layers:
- sprite: Markers/cross.rsi
state: green
- sprite: _CP14/Mobs/Animals/snail.rsi
state: live
- type: ConditionalSpawner
prototypes:
- CP14MobSnail
- type: entity
name: cat spawner
id: CP14SpawnMobCatRandomColored
parent: MarkerBase
categories: [ ForkFiltered ]
suffix: "Colored"
components:
- type: Sprite
layers:
- sprite: Markers/cross.rsi
state: green
- sprite: _CP14/Mobs/Animals/cat.rsi
state: lying
- type: ConditionalSpawner
prototypes:
- CP14MobCatRandomColored
- type: entity
name: cat spawner
id: CP14SpawnMobCatRandomColoredWithSpots
parent: MarkerBase
categories: [ ForkFiltered ]
suffix: "Colored, Spotted"
components:
- type: Sprite
layers:
- sprite: Markers/cross.rsi
state: green
- sprite: _CP14/Mobs/Animals/cat.rsi
state: lying
- type: ConditionalSpawner
prototypes:
- CP14MobCatRandomColoredWithSpots
# Dino
- type: entity

View File

@@ -0,0 +1,20 @@
- type: entity
name: snail timed spawner
id: CP14SpawnTimedMobSnail
parent: MarkerBase
categories: [ ForkFiltered ]
components:
- type: Sprite
layers:
- sprite: Markers/cross.rsi
state: blue
- sprite: _CP14/Mobs/Animals/snail.rsi
state: live
- type: Timer
- type: TimedSpawner
prototypes:
- CP14MobSnail
chance: 0.5
intervalSeconds: 540
minimumEntitiesSpawned: 1
maximumEntitiesSpawned: 1

View File

@@ -565,4 +565,139 @@
volume: -2
variation: 0.125
- type: SoundWhileAlive
- type: FloorOcclusion
- type: entity
id: CP14MobSnail
parent: CP14SimpleMobBase
name: snail
description: A small and slow snail. It seems that any touch could crush it.
categories: [ ForkFiltered ]
components:
- type: GhostRole
makeSentient: true
allowSpeech: true
allowMovement: true
name: cp14-ghost-role-information-name-snail
description: cp14-ghost-role-information-description-snail
rules: ghost-role-information-freeagent-rules
mindRoles:
- MindRoleGhostRoleFreeAgentHarmless
- type: GhostTakeoverAvailable
- type: HTN
constantlyReplan: false
rootTask:
task: MouseCompound
- type: NpcFactionMember
factions:
- CP14PeacefulAnimals
- type: Sprite
drawdepth: SmallMobs
layers:
- sprite: _CP14/Mobs/Animals/snail.rsi
state: live
- type: Item
size: Tiny
- type: Physics
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.1
density: 20
mask:
- SmallMobMask
layer:
- SmallMobLayer
- type: MobState
- type: MobThresholds
thresholds:
0: Alive
10: Dead
- type: MovementSpeedModifier
baseWalkSpeed: 2
baseSprintSpeed: 3
- type: Speech
speechVerb: SmallMob
- type: ReplacementAccent
accent: mouse
- type: Food
- type: Thirst
baseDecayRate: 0.01
- type: Hunger
baseDecayRate: 0.01
- type: Body
prototype: null
- type: Respirator
minSaturation: 5.0
- type: SolutionContainerManager
solutions:
food:
reagents:
- ReagentId: UncookedAnimalProteins
Quantity: 3
- type: Tag
tags:
- Meat
- type: CombatMode
combatToggleAction: ActionCombatModeToggleOff
- type: Bloodstream
bloodMaxVolume: 10
bloodReagent: CP14BloodAnimal
- type: CanEscapeInventory
- type: BadFood
- type: FireVisuals
sprite: Mobs/Effects/onfire.rsi
normalState: Mouse_burning
- type: NoSlip
- type: Slippery
- type: StepTrigger
requiredTriggeredSpeed: 1
- type: TriggerOnStepTrigger
- type: RandomChanceTriggerCondition
successChance: 0.3
- type: GibOnTrigger
- type: ProtectedFromStepTriggers
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 10
behaviors:
- !type:GibBehavior
recursive: false
- !type:SpawnEntitiesBehavior
spawnInContainer: true
spawn:
CP14FoodSnailShell:
min: 1
max: 1
- trigger:
!type:DamageTypeTrigger
damageType: Blunt
damage: 3
behaviors:
- !type:GibBehavior
recursive: false
- trigger:
!type:DamageTypeTrigger
damageType: Slash
damage: 5
behaviors:
- !type:GibBehavior
recursive: false
- trigger:
!type:DamageTypeTrigger
damageType: Heat
damage: 9
behaviors:
- !type:SpawnEntitiesBehavior
spawnInContainer: true
spawn:
CP14Ash1:
min: 1
max: 1
- !type:BurnBodyBehavior { }
- !type:PlaySoundBehavior
sound:
collection: MeatLaserImpact

View File

@@ -0,0 +1,173 @@
- type: entity
id: CP14MobCatBase
parent: CP14SimpleMobBase
name: cat
description: A cute small feline, that purrs when you pet it. Meow!
categories: [ ForkFiltered ]
abstract: true
components:
- type: NpcFactionMember
factions:
- CP14Cat
- type: HTN
rootTask:
task: SimpleHostileCompound
- type: MovementSpeedModifier
baseWalkSpeed: 3
baseSprintSpeed: 5
- type: Sprite
drawdepth: Mobs
sprite: _CP14/Mobs/Animals/cat.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base", "movement"]
state: walking
- type: SpriteMovement
movementLayers:
movement:
state: walking
noMovementLayers:
movement:
state: lying
- type: FireVisuals
sprite: Mobs/Effects/onfire.rsi
normalState: Mouse_burning
- type: Hands # remove when climbing on tables will be possible without hands component
- type: Puller
needsHands: false
- type: Appearance
- type: Physics
- type: Fixtures
fixtures:
fix1:
shape:
!type:PhysShapeCircle
radius: 0.25
density: 40
mask:
- MobMask
layer:
- MobLayer
- type: MobThresholds
thresholds:
0: Alive
50: Critical
75: Dead
- type: CP14NightVision # Why do carcats have night vision, but not cats?
- type: DamageStateVisuals
states:
Alive:
Base: walking
Critical:
Base: dead
Dead:
Base: dead
- type: MeleeWeapon
damage:
types:
Slash: 7.5
attackRate: 1.5
range: 1.25
altDisarm: false
angle: 0
animation: WeaponArcClaw
soundHit:
collection: AlienClaw
wideAnimation: WeaponArcClaw
- type: GhostRole
name: cp14-ghost-role-information-cat-name
description: cp14-ghost-role-information-cat-description
rules: cp14-ghost-role-information-rules-pet
raffle:
settings: short
- type: GhostTakeoverAvailable
- type: MessyDrinker
spillChance: 0.2
- type: Speech
speechSounds: Cat
speechVerb: SmallMob
- type: ReplacementAccent
accent: cat
- type: InteractionPopup
successChance: 0.6
interactSuccessString: petting-success-cat
interactFailureString: petting-failure-generic
interactSuccessSpawn: EffectHearts
interactSuccessSound:
path: /Audio/Animals/cat_meow.ogg
- type: PassiveDamage
allowedStates:
- Alive
damageCap: 40
damage:
groups:
Brute: -0.05
Burn: -0.02
Toxin: -0.02
- type: Bloodstream
bloodMaxVolume: 80
bloodReagent: CP14BloodAnimal
- type: Tag
tags:
- CannotSuicide
- type: entity
parent: CP14MobCatBase
id: CP14MobCatColoredWithSpotsBase
categories: [ ForkFiltered ]
abstract: true
components:
- type: Sprite
drawdepth: Mobs
sprite: _CP14/Mobs/Animals/cat.rsi
layers:
- map: ["enum.DamageStateVisualLayers.Base", "movement"]
state: walking
- map: [ "enum.DamageStateVisualLayers.BaseUnshaded", "overlay"]
state: walking-overlay
- type: SpriteMovement
movementLayers:
movement:
sprite: _CP14/Mobs/Animals/cat.rsi
state: walking
overlay:
sprite: _CP14/Mobs/Animals/cat.rsi
state: walking-overlay
noMovementLayers:
movement:
sprite: _CP14/Mobs/Animals/cat.rsi
state: lying
overlay:
sprite: _CP14/Mobs/Animals/cat.rsi
state: lying-overlay
- type: DamageStateVisuals
states:
Alive:
Base: walking
BaseUnshaded: walking-overlay
Dead:
Base: dead
BaseUnshaded: dead-overlay
- type: entity
parent: CP14MobCatBase
id: CP14MobCatRandomColored
suffix: "Colored"
categories: [ ForkFiltered ]
components:
- type: RandomSprite
available:
- enum.DamageStateVisualLayers.Base:
walking: CP14CatColors
- type: entity
parent: CP14MobCatColoredWithSpotsBase
id: CP14MobCatRandomColoredWithSpots
suffix: "Colored, Spotted"
categories: [ ForkFiltered ]
components:
- type: RandomSprite
available:
- enum.DamageStateVisualLayers.Base:
walking: CP14CatColors
- enum.DamageStateVisualLayers.BaseUnshaded:
walking-overlay: CP14CatColors

View File

@@ -3,7 +3,7 @@
parent: CP14SimpleMobBase
id: CP14MobFairy
description: It glows, squeaks and considers itself very important. It seems that ordinary weapons are incapable of killing her, and only the dissipation of magic will help.
categories: [ ForkFiltered ]
categories: [ ForkFiltered, HideSpawnMenu ] #Disable spawn in spawmenu
components:
- type: MovementSpeedModifier
baseWalkSpeed : 2

View File

@@ -10,7 +10,7 @@
task: RuminantHostileCompound
- type: NpcFactionMember
factions:
- CP14PeacefulAnimals
- CP14Rodent
- type: NPCRetaliation
attackMemoryLength: 20
- type: Sprite

View File

@@ -289,7 +289,9 @@
bloodReagent: CP14Blood
# Other
- type: FireVisuals
alternateState: Standing #TODO - custom visuals
sprite: _CP14/Mobs/Effects/onfire.rsi
normalState: Small_burning
alternateState: Humanoid_burning
- type: entity
save: false
@@ -361,4 +363,4 @@
- type: UserInterface
interfaces:
enum.HumanoidMarkingModifierKey.Key: # sure, this can go here too
type: HumanoidMarkingModifierBoundUserInterface
type: HumanoidMarkingModifierBoundUserInterface

View File

@@ -58,6 +58,8 @@
visible: false
- type: HumanoidAppearance
species: CP14Carcat
- type: FireVisuals
alternateState: Carcat_burning
- type: Icon
sprite: _CP14/Mobs/Species/Carcat/parts.rsi
state: full

View File

@@ -67,6 +67,8 @@
48:
sprite: _CP14/Mobs/Species/Goblin/displacement48.rsi
state: hair
- type: FireVisuals
alternateState: Goblin_burning
- type: Icon
sprite: _CP14/Mobs/Species/Goblin/parts.rsi
state: full

View File

@@ -63,3 +63,62 @@
Quantity: 6
- type: Temperature
currentTemperature: 250
- type: entity
id: CP14FoodSnailShell
parent: FoodInjectableBase
categories: [ ForkFiltered ]
name: shell
description: A snail shell with a dead snail inside.
components:
- type: Item
size: Tiny
- type: FlavorProfile
flavors:
- meaty
- type: Sprite
sprite: _CP14/Objects/Consumable/Food/shell.rsi
layers:
- state: shell
- type: SolutionContainerManager
solutions:
food:
maxVol: 6
reagents:
- ReagentId: UncookedAnimalProteins
Quantity: 3
- type: Temperature
currentTemperature: 290
- type: InternalTemperature
thickness: 0.006
area: 0.006
- type: CP14TemperatureTransformation
entries:
- temperatureRange: 400, 500
transformTo: CP14FoodSnailShellCooked
- type: entity
id: CP14FoodSnailShellCooked
parent:
- FoodInjectableBase
- CP14BurnsAsh
categories: [ ForkFiltered ]
name: cooked snail
description: Fried shells with snails in their own juice. Excellent.
components:
- type: Item
size: Tiny
- type: FlavorProfile
flavors:
- meaty
- type: Sprite
sprite: _CP14/Objects/Consumable/Food/shell.rsi
layers:
- state: cooked_snail
- type: SolutionContainerManager
solutions:
food:
maxVol: 6
reagents:
- ReagentId: Protein
Quantity: 3

View File

@@ -53,7 +53,7 @@
- 1
- 5
- 10
currentTransferAmount: 1
currentTransferAmount: 5
toggleState: 1 # draw
- type: Tag
tags:

View File

@@ -131,3 +131,13 @@
- id: CP14SeedCotton
amount: 1
prob: 0.4
- type: entity
id: CP14SackFarmingSeedSnail
parent: CP14SackFarmingSeed
suffix: Snail
components:
- type: StorageFill
contents:
- id: CP14FoodSnailShellCooked
amount: 12

View File

@@ -0,0 +1,10 @@
- type: palette
id: CP14CatColors
name: CP14CatColors
colors:
black: "#333333"
gray: "#666666"
white: "#ffffff"
brown: "#595042"
lightbrown: "#654321"
orange: "#e49b0f"

View File

@@ -38,21 +38,21 @@
minGroupSize: 2
maxGroupSize: 6
- type: cp14LocationModifier
id: Fairy
levels:
min: 0
max: 3
categories:
Danger: 0.20
requiredTags:
- CP14DemiplaneHerbals
layers:
- !type:CP14OreDunGen
entity: CP14MobFairy
count: 4
minGroupSize: 2
maxGroupSize: 3
#- type: cp14LocationModifier #Temporarily disabled until fairies can crash server
# id: Fairy
# levels:
# min: 0
# max: 3
# categories:
# Danger: 0.20
# requiredTags:
# - CP14DemiplaneHerbals
# layers:
# - !type:CP14OreDunGen
# entity: CP14MobFairy
# count: 4
# minGroupSize: 2
# maxGroupSize: 3
- type: cp14LocationModifier
id: SmallHydra

View File

@@ -21,11 +21,10 @@
Narcotic:
metabolismRate: 0.05
effects:
- !type:GenericStatusEffect
key: SeeingRainbows
component: SeeingRainbows
type: Add
- !type:ModifyStatusEffect
effectProto: StatusEffectSeeingRainbow
time: 25
type: Add
refresh: false
pricePerUnit: 0.5 # Purely decorative effect

View File

@@ -19,6 +19,8 @@
- CP14Monster
- CP14Slimes
- CP14Fishies
- CP14Cat
- CP14Rodent
- type: npcFaction
id: CP14Undead
@@ -28,6 +30,8 @@
- CP14PeacefulAnimals
- CP14AggressiveAnimals
- CP14Fishies
- CP14Cat
- CP14Rodent
- type: npcFaction
id: CP14PeacefulAnimals
@@ -35,6 +39,15 @@
- type: npcFaction
id: CP14Neutrals
- type: npcFaction
id: CP14Cat
hostile:
- CP14Rodent
- CP14Fishies
- type: npcFaction
id: CP14Rodent
- type: npcFaction
id: CP14AggressiveAnimals
hostile:
@@ -45,6 +58,8 @@
- CP14Slimes
- CP14HostileEveryone
- CP14Fishies
- CP14Cat
- CP14Rodent
- type: npcFaction
id: CP14Monster
@@ -53,6 +68,8 @@
- CP14HostileEveryone
- CP14AggressiveAnimals
- CP14PeacefulAnimals
- CP14Cat
- CP14Rodent
- type: npcFaction
id: CP14Insects
@@ -69,6 +86,8 @@
- CP14HostileEveryone
- CP14PeacefulAnimals
- CP14AggressiveAnimals
- CP14Cat
- CP14Rodent
- type: npcFaction
id: CP14Fishies

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 688 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 622 B

View File

@@ -0,0 +1,31 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Sprites by darksovet(discord), modified by omsoyk(discord), modified RSI by oldschool_otaku, owned by Gogenych",
"states": [
{
"name": "walking",
"directions": 4
},
{
"name": "lying"
},
{
"name": "dead"
},
{
"name": "walking-overlay",
"directions": 4
},
{
"name": "lying-overlay"
},
{
"name": "dead-overlay"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 659 B

View File

@@ -0,0 +1,15 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-4.0",
"copyright": "Created by omsoyk (github/discord)",
"states": [
{
"name": "live",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@@ -0,0 +1,51 @@
{
"version": 1,
"size": {
"x": 48,
"y": 48
},
"license": "CC-BY-SA-3.0",
"copyright": "by TTTomaTTT (github) for CrystallEdge",
"states": [
{
"name": "Small_burning",
"directions": 4,
"delays": [
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ]
]
},
{
"name": "Humanoid_burning",
"directions": 4,
"delays": [
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ]
]
},
{
"name": "Goblin_burning",
"directions": 4,
"delays": [
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ]
]
},
{
"name": "Carcat_burning",
"directions": 4,
"delays": [
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ],
[ 0.3, 0.3, 0.3, 0.3 ]
]
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 B

View File

@@ -0,0 +1,17 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-4.0",
"copyright": "Created by omsoyk (github/discord)",
"states": [
{
"name": "shell"
},
{
"name": "cooked_snail"
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

View File

@@ -303,6 +303,14 @@
"created_at": "2025-09-19T17:28:13Z",
"repoId": 778936029,
"pullRequestNo": 1792
},
{
"name": "kin98",
"id": 51699101,
"comment_id": 3356567866,
"created_at": "2025-10-01T14:16:19Z",
"repoId": 778936029,
"pullRequestNo": 1815
}
]
}