Innkeeper tweaks: modular mops, wearable buckets, and more (#1387)

* Clarify the naming of the farming sacks. Make mops breakable. Add modular mophead craftable at a workbench. Add lucens mophead. Make all mops and other tools not meant for swinging at things break faster. Tweaked damage numbers on certain tools. Add lucens bucket. Make all buckets wearable as shitty helmets. Add recipes to (slowly) craft ropes from the inventory.

* Revert all changes to the CP14BaseMop, as it doesn't need to be touched. Use migration to replace it instead.

* Remove the old mop

* Correct sprites based on feedback from omsoyk. Dewhimsy the lucens mop and bucket--mop head looks more logical, bucket's rope color is plain rope. Correct certain mop sprites facing the wrong way.

* Bring mops up to speed with the belt changes

* Make lucens bucket just a norma bucket, in blue

* Fix the errors by removing unnecessary fields from the craft recipes, updating the crate loot to use the new preset mop

* One more attempt to fix linting errors

* Final(?) bugsquash. Remove unnecessary name field

* Add clumsy tranlated localization

* Revise bucket helmet sprite to sit higher on the head at a jaunty angle

* Update old guidebook mop references

* Minor shading mistake: 💀

* Move rope craft recipes to the workbench

* Remove construction component from rope

---------

Co-authored-by: Red <96445749+TheShuEd@users.noreply.github.com>
This commit is contained in:
paige404
2025-06-16 04:30:21 -04:00
committed by GitHub
parent defa5cb11a
commit 7cdfaafb6b
51 changed files with 380 additions and 75 deletions

View File

@@ -53,7 +53,7 @@
- id: CP14Lighter
- id: CP14ModularIronShovel
- id: CP14KeyFile
- id: CP14BaseMop
- id: CP14ModularWoodMop
- id: CP14LockCopper
- id: CP14ModularCopperPickaxe
- id: CP14ModularIronSickle

View File

@@ -0,0 +1,38 @@
- type: entity
parent: BaseItem
id: CP14ModularBladeMopBase
categories: [ ForkFiltered ]
abstract: true
description: A mop head without a hilt. Attach it to a hilt to make a mop.
components:
- type: Item
storedRotation: 45
shape:
- 0,0,0,0
storedOffset: 0, 5
- type: entity
parent: CP14ModularBladeMopBase
id: CP14ModularBladeWoodMop
name: wooden mop head
components:
- type: Sprite
sprite: _CP14/Objects/ModularTools/Blade/Mop/mop.rsi
layers:
- state: icon
- type: CP14ModularCraftPart
possibleParts:
- BladeWoodMop
- type: entity
parent: CP14ModularBladeMopBase
id: CP14ModularBladeLucensMop
name: lucens mop head
components:
- type: Sprite
sprite: _CP14/Objects/ModularTools/Blade/Mop/lucens_mop.rsi
layers:
- state: icon
- type: CP14ModularCraftPart
possibleParts:
- BladeLucensMop

View File

@@ -1,8 +1,8 @@
- type: entity
name: sack
name: produce sack
id: CP14SackFarming
parent: BaseStorageItem
description: A bag for various fruits, vegetables, plants and anything else that grows in the bed.
description: A bag for various fruits, vegetables, plants and anything else that grows in the garden.
categories: [ ForkFiltered ]
components:
- type: Sprite
@@ -63,8 +63,6 @@
- type: entity
id: CP14SackFarmingWheat
name: seed sack
description: Sack for various plant seeds.
parent: CP14SackFarming
suffix: Wheat
components:
@@ -82,7 +80,8 @@
- type: entity
id: CP14SackFarmingSeed
parent: CP14SackFarming
suffix: Seed
name: seed sack
description: A sack for various plant seeds.
components:
- type: Sprite
sprite: _CP14/Objects/Storage/sack.rsi
@@ -137,4 +136,3 @@
- id: CP14SeedCotton
amount: 1
prob: 0.4

View File

@@ -17,6 +17,25 @@
visible: false
- type: Item
size: Ginormous
- type: Clothing
sprite: _CP14/Objects/Tools/wooden_bucket.rsi
clothingVisuals:
head:
- state: equipped-HELMET
equipDelay: 0.25
unequipDelay: 0.25
quickEquip: false
breakOnMove: false
slots:
- head
- type: Armor
modifiers:
coefficients:
Blunt: 0.98
Slash: 0.96
- type: ClothingSpeedModifier
walkModifier: 0.96
sprintModifier: 0.80
- type: SolutionContainerManager
solutions:
bucket:
@@ -62,3 +81,20 @@
tags:
- Bucket
- type: entity
parent: CP14Bucket
id: CP14BucketLucens
name: lucens bucket
description: It's a boring old bucket, made less boring by being blue.
components:
- type: Sprite
sprite: _CP14/Objects/Tools/lucens_bucket.rsi
- type: Clothing
sprite: _CP14/Objects/Tools/lucens_bucket.rsi
- type: Armor
modifiers:
coefficients:
Blunt: 0.94
Slash: 0.93
- type: ClothingSpeedModifier
walkModifier: 0.98

View File

@@ -33,4 +33,3 @@
Blunt: 0
- type: UseDelay
delay: 3

View File

@@ -1,37 +0,0 @@
- type: entity
id: CP14BaseMop
parent:
- BaseItem
- CP14BaseWeaponDestructible
name: wooden mop
description: Mop for cleaning floors from various unpleasant liquids
components:
- type: Item
size: Normal
storedRotation: 0
shape:
- 0,0,0,2
sprite: _CP14/Objects/Tools/mop.rsi
- type: Sprite
sprite: _CP14/Objects/Tools/mop.rsi
state: icon
- type: MeleeWeapon
wideAnimationRotation: 10
damage:
types:
Blunt: 7
soundHit:
collection: MetalThud
- type: Wieldable
- type: IncreaseDamageOnWield
damage:
types:
Blunt: 3
- type: Spillable
solution: absorbed
- type: Absorbent
- type: SolutionContainerManager
solutions:
absorbed:
maxVol: 50

View File

@@ -0,0 +1,14 @@
- type: entity
id: CP14ModularWoodMop
parent: CP14ModularGripWoodenLong
name: wooden mop
description: A mop for cleaning floors of various unpleasant liquids.
components:
- type: Sprite
layers:
- state: icon
- sprite: _CP14/Objects/ModularTools/Blade/Mop/mop.rsi
state: icon
- type: CP14ModularCraftAutoAssemble
details:
- BladeWoodMop

View File

@@ -36,6 +36,8 @@
bonusDamage:
types:
Piercing: 3
- !type:EditDamageableModifier # Improvised weapon
multiplier: 1.2
- !type:EditItem
newSize: Normal
adjustShape: 0, 1

View File

@@ -0,0 +1,67 @@
# Concept: the mop
# Cleans puddles
# Standard attack speed
# Reasonable blunt damage (mop-fu real)
# Fragile; not a real weapon, should not take the place of one long-term
- type: modularPart
id: BaseBladeMop
modifiers:
- !type:AddComponents
override: true
components:
- type: Spillable
solution: absorbed
- type: Absorbent
- type: SolutionContainerManager
solutions:
absorbed:
maxVol: 50
- !type:EditMeleeWeapon
bonusDamage:
types:
Blunt: 5
- !type:EditIncreaseDamageOnWield
bonusDamage:
types:
Blunt: 5
- !type:EditDamageableModifier # Improvised weapon
multiplier: 1.2
- !type:EditItem
newSize: Normal
adjustShape: 0, 1
storedOffsetBonus: 0, 5
- !type:EditModularSlots
addSlots:
- Garde # Remember, Ed asked for this
- BladeInlay # Ed didn't ask for this, but it's REALLY funny
- type: modularPart
id: BladeWoodMop
slots:
- Blade
rsiPath: _CP14/Objects/ModularTools/Blade/Mop/mop.rsi
modifiers:
- !type:Inherit
copyFrom:
- BaseBladeMop
- BaseBladeIron # TODO wood weapons are planned, revisit this when they're done
- !type:EditDamageableModifier
multiplier: 2 # For now, we treat it as weaker iron
- type: modularPart
id: BladeLucensMop
slots:
- Blade
rsiPath: _CP14/Objects/ModularTools/Blade/Mop/lucens_mop.rsi
modifiers:
- !type:Inherit
copyFrom:
- BaseBladeMop
- BaseBladeMithril # TODO wood weapons might mean lucens weapons?
- !type:AddComponents
override: true
components:
- type: SolutionContainerManager
solutions:
absorbed:
maxVol: 100

View File

@@ -17,13 +17,15 @@
angleMultiplier: 1.2
bonusDamage:
types:
Slash: 2
Slash: 3
Blunt: 3
- !type:EditIncreaseDamageOnWield
bonusDamage:
types:
Slash: 1
Blunt: 3
- !type:EditDamageableModifier # Improvised weapon
multiplier: 1.2
- !type:EditItem
newSize: Normal
adjustShape: 0, 1

View File

@@ -12,6 +12,20 @@
count: 1
result: CP14Bucket
- type: CP14Recipe
id: CP14BucketLucens
tag: CP14RecipeWorkbench
category: Tools
craftTime: 2
requirements:
- !type:StackResource
stack: CP14LucensWoodenPlanks
count: 3
- !type:ProtoIdResource
protoId: CP14Rope
count: 1
result: CP14BucketLucens
- type: CP14Recipe
id: CP14WoodenBeerMug
tag: CP14RecipeWorkbench
@@ -43,17 +57,32 @@
result: CP14Plate
- type: CP14Recipe
id: CP14BaseMop
id: CP14ModularBladeWoodMop
tag: CP14RecipeWorkbench
craftTime: 3
category: Tools
craftTime: 2
requirements:
- !type:StackGroupResource
group: WoodenPlanks
count: 2
count: 1
- !type:StackResource
stack: CP14Cloth
count: 1
result: CP14BaseMop
result: CP14ModularBladeWoodMop
- type: CP14Recipe
id: CP14ModularBladeLucensMop
tag: CP14RecipeWorkbench
category: Tools
craftTime: 2
requirements:
- !type:StackResource
stack: CP14LucensWoodenPlanks
count: 1
- !type:StackResource
stack: CP14Cloth
count: 1
result: CP14ModularBladeLucensMop
- type: CP14Recipe
id: CP14Lighter
@@ -275,3 +304,22 @@
count: 2
result: CP14OpenSign
- type: CP14Recipe
id: CP14RopeFromGrass
tag: CP14RecipeWorkbench
craftTime: 4
requirements:
- !type:StackResource
stack: CP14FloraMaterial
count: 4
result: CP14Rope
- type: CP14Recipe
id: CP14RopeFromCloth
tag: CP14RecipeWorkbench
craftTime: 3
requirements:
- !type:StackResource
stack: CP14Cloth
count: 2
result: CP14Rope