Add utility knife/box cutter (#39567)

* add sprites for box cutter

* move box cutter to melee, add yaml

* remove unneeded soundHit yaml

* add opening sound effect to box cutter

* modify sprites to look more like actual box cutters

* add BoxCutter tag and add to belts

* rename box cutter to utility knife

* remove accidental backtick

* move utility knife to correct place in tags

* remove SECOND accidental backtick??

* Fix utility knife arbitrage by reducing steel to 50

* Reduce damage to 4

* Reduce knife bounty reward to $2000

* modify utility knife icon to be larger

* Make utility knife extendable/retractable

* move slicing out of ComponentToggler

* change utility knife extend/retract sound

* Use TiniestShark's larger inhand images for utility knife

* utilty knife is now only Slicing when activated
This commit is contained in:
Schuyler Duryee
2025-10-02 01:51:20 -07:00
committed by GitHub
parent aeb52a661c
commit 368d4dd273
17 changed files with 123 additions and 3 deletions

View File

@@ -82,8 +82,13 @@
license: "CC0-1.0"
copyright: "Taken from ScreamStudio on freesound.org"
source: "https://freesound.org/people/ScreamStudio/sounds/392617/"
- files: ["pop.ogg"]
license: "CC0-1.0"
copyright: "Taken from 0ne_one111yt on freesound.org"
source: "https://freesound.org/people/0ne_one111yt/sounds/478213/"
- files: ["utilityknifeopen.ogg, utilityknifeclose.ogg"]
license: "CC0-1.0"
copyright: "Taken from FilmOrbit on freesound.org"
source: "https://freesound.org/s/554299/"

Binary file not shown.

Binary file not shown.

View File

@@ -202,14 +202,16 @@
- type: cargoBounty
id: BountyKnife
reward: 6000
reward: 2000
description: bounty-description-knife
entries:
- name: bounty-item-knife
amount: 5
whitelist:
components:
- Sharp
- Sharp
tags:
- UtilityKnife # required because retracted utility knives are not Sharp
- type: cargoBounty
id: BountyLemon

View File

@@ -35,6 +35,7 @@
- GPS
- WeldingMask
- RemoteSignaller
- UtilityKnife
components:
- StationMap
- SprayPainter
@@ -120,6 +121,7 @@
- HolofanProjector
- Multitool
- AppraisalTool
- UtilityKnife
components:
- StationMap
- SprayPainter

View File

@@ -336,3 +336,67 @@
- ItemMask
restitution: 0.3
friction: 0.2
- type: entity
name: utility knife
parent: BaseItem
id: UtilityKnife
description: A knife with a retractable, tiny blade. Useful as a box cutter and letter opener, among other things.
components:
- type: Appearance
- type: ComponentToggler
components:
- type: Execution
doAfterDuration: 4.0
- type: Sharp
- type: Utensil
types:
- Knife
- type: Tool
qualities:
- Slicing
useSound:
path: /Audio/Items/Culinary/chop.ogg
- type: Item
size: Tiny
sprite: Objects/Weapons/Melee/utility_knife.rsi
- type: ItemToggle
soundActivate:
path: /Audio/Weapons/utilityknifeopen.ogg
soundDeactivate:
path: /Audio/Weapons/utilityknifeclose.ogg
- type: ItemToggleMeleeWeapon
activatedSoundOnHit:
path: /Audio/Weapons/bladeslice.ogg
activatedDamage:
types:
Slash: 4
- type: MeleeWeapon
wideAnimationRotation: -135
attackRate: 1
damage:
types:
Blunt: 1
- type: PhysicalComposition
materialComposition:
Steel: 50
- type: Sprite
sprite: Objects/Weapons/Melee/utility_knife.rsi
layers:
- state: utility_knife_handle
- state: utility_knife_blade
visible: false
map: [ "blade" ]
- type: Tag
tags:
- Knife
- UtilityKnife
- type: ToggleableVisuals
spriteLayer: blade
inhandVisuals:
left:
- state: inhand-left-blade
right:
- state: inhand-right-blade
- type: UseDelay
delay: 0.2

View File

@@ -5,6 +5,7 @@
recipes:
- AppraisalTool
- Pickaxe
- UtilityKnife
- type: latheRecipePack
id: CargoBoardsStatic

View File

@@ -12,3 +12,10 @@
completetime: 4
materials:
Steel: 500
- type: latheRecipe
id: UtilityKnife
result: UtilityKnife
completetime: 2
materials:
Steel: 100

View File

@@ -1460,6 +1460,9 @@
- type: Tag
id: UtilityBelt
- type: Tag
id: UtilityKnife
- type: Tag
id: Vegetable

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

View File

@@ -0,0 +1,36 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Icon sprited for SS14 by GitHub user sudobeans. Inhand sprites sprited for SS14 by Github user TiniestShark.",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "icon"
},
{
"name": "utility_knife_blade"
},
{
"name": "utility_knife_handle"
},
{
"name": "inhand-left",
"directions": 4
},
{
"name": "inhand-right",
"directions": 4
},
{
"name": "inhand-right-blade",
"directions": 4
},
{
"name": "inhand-left-blade",
"directions": 4
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B