Skip to content

Commit

Permalink
large kitchen knife
Browse files Browse the repository at this point in the history
Update domestic.json
  • Loading branch information
Kamejeir committed Jun 4, 2024
1 parent 75d4fbf commit 0e22134
Show file tree
Hide file tree
Showing 21 changed files with 81 additions and 65 deletions.
8 changes: 4 additions & 4 deletions data/json/itemgroups/SUS/domestic.json
Original file line number Diff line number Diff line change
Expand Up @@ -78,14 +78,14 @@
"entries": [
{
"distribution": [
{ "item": "knife_chef", "prob": 10 },
{ "item": "knife_large", "variant": "knife_chef", "prob": 10 },
{ "item": "knife_vegetable_cleaver", "prob": 3 }
]
},
{ "item": "knife_small", "variant": "knife_paring" },
{ "item": "knife_small", "variant": "knife_paring", "prob": 75 },
{ "item": "knife_bread", "prob": 95 },
{ "item": "knife_bread", "prob": 45 },
{ "item": "knife_large", "variant": "knife_bread", "prob": 95 },
{ "item": "knife_large", "variant": "knife_bread", "prob": 45 },
{
"distribution": [
{ "item": "knife_butcher", "prob": 10 },
Expand All @@ -95,7 +95,7 @@
},
{ "item": "knife_small", "variant": "knife_steak", "count": [ 2, 4 ], "prob": 75 },
{
"collection": [ { "item": "knife_carving" }, { "item": "carving_fork", "prob": 90 } ],
"collection": [ { "item": "knife_large", "variant": "knife_carving" }, { "item": "carving_fork", "prob": 90 } ],
"prob": 85
},
{ "item": "scissors", "prob": 80 },
Expand Down
6 changes: 3 additions & 3 deletions data/json/itemgroups/collections_domestic.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,13 +97,13 @@
[ "corkscrew", 10 ],
[ "peeler", 15 ],
[ "brush", 15 ],
[ "knife_bread", 20 ],
[ "knife_chef", 20 ],
[ "knife_carving", 20 ],
[ "knife_butcher", 10 ],
[ "knife_meat_cleaver", 10 ],
[ "knife_vegetable_cleaver", 10 ],
{ "item": "knife_small", "variant": "knife_paring", "prob": 25 },
{ "item": "knife_large", "variant": "knife_bread", "prob": 20 },
{ "item": "knife_large", "variant": "knife_chef", "prob": 20 },
{ "item": "knife_large", "variant": "knife_carving", "prob": 20 },
[ "cutting_board", 20 ],
[ "bottle_opener", 15 ],
[ "mortar_pestle", 10 ]
Expand Down
36 changes: 36 additions & 0 deletions data/json/items/tool/knives.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,42 @@
"weapon_category": [ "SHIVS" ],
"melee_damage": { "bash": 2, "stab": 7 }
},
{
"id": "knife_large",
"name": { "str": "large kitchen knife", "str_pl": "large kitchen knives" },
"type": "TOOL",
"variants": [
{
"id": "knife_chef",
"name": { "str": "chef knife", "str_pl": "chef knives" },
"description": "A long-bladed kitchen knife. The blade is wider than the handle, giving room for the wielder's knuckles, and it has a characteristic curve for a fast rocking action for chopping vegetables. It makes an acceptable melee weapon, but the wide blade is unwieldy for butchering.",
"ascii_picture": "knife_chef"
},
{
"id": "knife_carving",
"name": { "str": "carving knife", "str_pl": "carving knives" },
"description": "A long-bladed kitchen knife with a thin, slightly curved blade for deftly slicing meat either in flat sheets or around the bone. It makes a decent melee weapon, and is excellent for butchery.",
"ascii_picture": "knife_carving"
},
{
"id": "knife_bread",
"name": { "str": "bread knife", "str_pl": "bread knives" },
"description": "This knife has quite a long blade with a scalloped edge for cutting bread. It's not that sharp, but its length and heft mean it could do a bit of damage and cause some nasty tearing.",
"ascii_picture": "knife_bread"
}
],
"copy-from": "base_kitchen_knife",
"weight": "140 g",
"volume": "200 ml",
"longest_side": "30 cm",
"price": "20 USD",
"price_postapoc": "50 cent",
"to_hit": { "grip": "weapon", "length": "short", "surface": "point", "balance": "neutral" },
"qualities": [ [ "CUT", 2 ], [ "CUT_FINE", 1 ], [ "BUTCHER", 22 ] ],
"flags": [ "SHEATH_KNIFE", "ALLOWS_BODY_BLOCK" ],
"weapon_category": [ "SHIVS" ],
"melee_damage": { "bash": 1, "stab": 18 }
},
{
"id": "copper_knife",
"type": "TOOL",
Expand Down
2 changes: 1 addition & 1 deletion data/json/mapgen/house/house08.json
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
{ "item": "child_book", "x": 3, "y": 2, "chance": 100 },
{ "item": "sponge_cake", "x": 11, "y": 17, "chance": 100 },
{ "item": "candle", "x": 11, "y": 17, "chance": 100 },
{ "item": "knife_chef", "x": 11, "y": 17, "chance": 100 },
{ "item": "knife_large", "variant": "knife_chef", "x": 11, "y": 17, "chance": 100 },
{ "item": "ceramic_plate", "x": 11, "y": 17, "chance": 100 },
{ "item": "balloon", "x": [ 7, 18 ], "y": [ 15, 19 ], "chance": 75, "repeat": [ 3, 6 ] },
{ "item": "paper", "x": [ 9, 10 ], "y": [ 16, 18 ], "chance": 66, "repeat": [ 2, 5 ] },
Expand Down
2 changes: 1 addition & 1 deletion data/json/monsterdrops/feral_humans.json
Original file line number Diff line number Diff line change
Expand Up @@ -186,8 +186,8 @@
"entries": [
{
"distribution": [
{ "item": "knife_chef", "prob": 50, "damage": [ 0, 3 ] },
{ "item": "knife_butcher", "prob": 50, "damage": [ 0, 3 ] }
{ "item": "knife_large", "variant": "knife_chef", "prob": 50, "damage": [ 0, 3 ] },
]
},
{
Expand Down
4 changes: 2 additions & 2 deletions data/json/monsterdrops/zombie_survivor.json
Original file line number Diff line number Diff line change
Expand Up @@ -196,8 +196,8 @@
"type": "item_group",
"items": [
[ "knife_butcher", 15 ],
[ "knife_chef", 15 ],
[ "knife_carving", 15 ],
{ "item": "knife_large", "variant": "knife_chef", "prob": 15 },
{ "item": "knife_large", "variant": "knife_carving", "prob": 15 },
[ "knife_folding", 10 ],
[ "makeshift_knife", 1 ],
{ "item": "knife_small", "variant": "knife_steak", "prob": 35 },
Expand Down
4 changes: 2 additions & 2 deletions data/json/npcs/island_prison/prisoners.json
Original file line number Diff line number Diff line change
Expand Up @@ -84,12 +84,12 @@
"items": [
[ "baton-extended", 50 ],
[ "PR24-retracted", 50 ],
[ "knife_chef", 30 ],
[ "knife_butcher", 30 ],
[ "knife_meat_cleaver", 30 ],
[ "knife_carving", 30 ],
{ "item": "knife_small", "variant": "knife_steak", "prob": 30 },
{ "item": "knife_large", "variant": "knife_chef", "prob": 30 },
{ "item": "knife_small", "variant": "knife_paring", "prob": 30 },
{ "item": "knife_large", "variant": "knife_carving", "prob": 30 },
[ "pointy_stick", 30 ],
[ "cudgel", 20 ],
[ "knuckle_nail", 20 ],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@
{ "id": "hunting" }
],
"blueprint_excludes": [ { "id": "fbmc_firestation1_butchery" } ],
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_chef", 1 ], [ "knife_carving", 1 ] ] ]
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_large", 2 ] ] ]
},
{
"type": "recipe",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@
"blueprint_requires": [ { "id": "fbmk_canteen_smoking" } ],
"blueprint_provides": [ { "id": "fbmk_canteen_butchery" }, { "id": "kitchen_recipes_3" }, { "id": "trapping" }, { "id": "hunting" } ],
"blueprint_excludes": [ { "id": "fbmk_canteen_butchery" } ],
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_chef", 1 ], [ "knife_carving", 1 ] ] ]
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_large", 2 ] ] ]
},
{
"type": "recipe",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@
"blueprint_requires": [ { "id": "fbmk_2_smoking" } ],
"blueprint_provides": [ { "id": "fbmk_2_butchery" }, { "id": "fbmk_2_recipes_3" }, { "id": "trapping" }, { "id": "hunting" } ],
"blueprint_excludes": [ { "id": "fbmk_2_butchery" } ],
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_chef", 1 ], [ "knife_carving", 1 ] ] ],
"components": [ [ [ "knife_butcher", 1 ], [ "knife_small", 1 ], [ "knife_large", 2 ] ] ],
"flags": [
"MAP_MIRROR_HORIZONTAL_IF_N",
"MAP_ROTATE_90_IF_NE",
Expand Down
18 changes: 1 addition & 17 deletions data/json/recipes/recipe_deconstruction.json
Original file line number Diff line number Diff line change
Expand Up @@ -3068,7 +3068,7 @@
{
"type": "uncraft",
"activity_level": "MODERATE_EXERCISE",
"result": "knife_bread",
"result": "knife_large",
"time": "2 m",
"qualities": [ { "id": "HAMMER", "level": 1 } ],
"components": [ [ [ "steel_chunk", 1 ], [ "scrap", 5 ] ] ]
Expand All @@ -3081,22 +3081,6 @@
"qualities": [ { "id": "HAMMER", "level": 1 }, { "id": "CUT", "level": 2 } ],
"components": [ [ [ "spike", 1 ], [ "steel_chunk", 4 ], [ "scrap", 20 ] ], [ [ "leather", 1 ], [ "fur", 1 ] ] ]
},
{
"type": "uncraft",
"activity_level": "LIGHT_EXERCISE",
"result": "knife_carving",
"time": "30 s",
"qualities": [ { "id": "HAMMER", "level": 1 } ],
"components": [ [ [ "spike", 1 ] ], [ [ "scrap", 1 ] ] ]
},
{
"type": "uncraft",
"activity_level": "MODERATE_EXERCISE",
"result": "knife_chef",
"time": "5 m",
"qualities": [ { "id": "HAMMER", "level": 1 } ],
"components": [ [ [ "spike", 1 ], [ "scrap", 5 ] ] ]
},
{
"type": "uncraft",
"activity_level": "MODERATE_EXERCISE",
Expand Down
2 changes: 1 addition & 1 deletion data/json/recipes/tools/tool.json
Original file line number Diff line number Diff line change
Expand Up @@ -228,8 +228,8 @@
"autolearn": true,
"components": [
[ [ "knife_butcher", 1 ] ],
[ [ "knife_carving", 1 ] ],
[ [ "knife_meat_cleaver", 1 ] ],
[ [ "knife_large", 1 ] ],
[ [ "leather", 2 ], [ "cotton_patchwork", 2 ] ],
[ [ "cordage_short", 2, "LIST" ] ]
]
Expand Down
9 changes: 6 additions & 3 deletions data/json/recipes/tools/tools_hand.json
Original file line number Diff line number Diff line change
Expand Up @@ -1279,7 +1279,8 @@
},
{
"type": "recipe",
"result": "knife_chef",
"result": "knife_large",
"variant": "knife_chef",
"activity_level": "BRISK_EXERCISE",
"category": "CC_OTHER",
"subcategory": "CSC_OTHER_TOOLS",
Expand All @@ -1299,7 +1300,8 @@
},
{
"type": "recipe",
"result": "knife_carving",
"result": "knife_large",
"variant": "knife_carving",
"activity_level": "BRISK_EXERCISE",
"category": "CC_OTHER",
"subcategory": "CSC_OTHER_TOOLS",
Expand All @@ -1319,7 +1321,8 @@
},
{
"type": "recipe",
"result": "knife_bread",
"result": "knife_large",
"variant": "knife_bread",
"activity_level": "BRISK_EXERCISE",
"category": "CC_OTHER",
"subcategory": "CSC_OTHER_TOOLS",
Expand Down
9 changes: 3 additions & 6 deletions data/json/recipes/weapon/piercing.json
Original file line number Diff line number Diff line change
Expand Up @@ -955,8 +955,7 @@
[ [ "stick_long", 1 ], [ "long_pole", 1 ] ],
[
[ "knife_butcher", 1 ],
[ "knife_chef", 1 ],
[ "knife_carving", 1 ],
[ "knife_large", 1 ],
[ "knife_combat", 1 ],
[ "knife_combat_army", 1 ],
[ "knife_combat_marine", 1 ],
Expand Down Expand Up @@ -992,8 +991,7 @@
[ [ "stick_long", 1 ], [ "long_pole", 1 ] ],
[
[ "knife_butcher", 1 ],
[ "knife_chef", 1 ],
[ "knife_carving", 1 ],
[ "knife_large", 1 ],
[ "knife_combat", 1 ],
[ "knife_combat_army", 1 ],
[ "knife_combat_marine", 1 ],
Expand Down Expand Up @@ -1049,8 +1047,7 @@
[ [ "spear_shaft", 1 ] ],
[
[ "knife_butcher", 1 ],
[ "knife_chef", 1 ],
[ "knife_carving", 1 ],
[ "knife_large", 1 ],
[ "knife_combat", 1 ],
[ "knife_combat_army", 1 ],
[ "knife_combat_marine", 1 ],
Expand Down
5 changes: 2 additions & 3 deletions data/json/requirements/melee.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,8 @@
[ "bone_knife", -1 ],
[ "knuckle_katar", -1 ],
[ "sharp_toothbrush", -1 ],
[ "knife_carving", -1 ],
[ "knife_bread", -1 ],
[ "knife_small", -1 ],
[ "knife_large", -1 ],
[ "screwdriver", -1 ],
[ "scissors_child", -1 ],
[ "scissors_medical", -1 ],
Expand Down Expand Up @@ -100,9 +99,9 @@
[ "kirpan_cheap", -1 ],
[ "enfield_bayonet", -1 ],
[ "knife_butcher", -1 ],
[ "knife_chef", -1 ],
[ "knife_vegetable_cleaver", -1 ],
[ "knife_meat_cleaver", -1 ]
[ "knife_large", -1 ],
]
]
},
Expand Down
2 changes: 1 addition & 1 deletion data/mods/CrazyCataclysm/crazy_recipes.json
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@
"time": "25 m",
"autolearn": true,
"qualities": [ { "id": "OVEN", "level": 1 } ],
"tools": [ [ [ "surface_heat", 8, "LIST" ] ], [ "knife_bread" ] ],
"tools": [ [ [ "surface_heat", 8, "LIST" ] ], [ "knife_large" ] ],
"components": [ [ [ "flour", 20 ], [ "bread_flour", 20 ] ], [ [ "yeast", 1 ] ], [ [ "water", 2 ], [ "water_clean", 2 ] ] ]
},
{
Expand Down
4 changes: 2 additions & 2 deletions data/mods/Magiclysm/items/enchanted_tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -102,15 +102,15 @@
{
"type": "GENERIC",
"id": "knife_carving_plus_one",
"copy-from": "knife_carving",
"copy-from": "knife_large",
"name": { "str": "carving knife +1", "str_pl": "carving knives +1" },
"proportional": { "price": 3.0, "price_postapoc": 3.0, "weight": 0.9, "melee_damage": { "all": 1.1 } },
"extend": { "qualities": [ [ "BUTCHER", 24 ] ] }
},
{
"type": "GENERIC",
"id": "knife_carving_plus_two",
"copy-from": "knife_carving",
"copy-from": "knife_large",
"name": { "str": "carving knife +2", "str_pl": "carving knives +2" },
"proportional": { "price": 6.0, "price_postapoc": 6.0, "weight": 0.8, "melee_damage": { "all": 1.2 } },
"extend": { "qualities": [ [ "BUTCHER", 26 ] ] }
Expand Down
2 changes: 1 addition & 1 deletion data/mods/Magiclysm/recipes/enchanting.json
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@
"copy-from": "cestus_plus_one",
"qualities": [ { "id": "MANA_INFUSE", "level": 1 } ],
"result": "knife_carving_plus_one",
"components": [ [ [ "knife_carving", 1 ] ], [ [ "mana_dust", 20 ] ], [ [ "mercury", 10 ] ] ]
"components": [ [ [ "knife_large", 1 ] ], [ [ "mana_dust", 20 ] ], [ [ "mercury", 10 ] ] ]
},
{
"type": "recipe",
Expand Down
2 changes: 1 addition & 1 deletion data/mods/Magiclysm/requirements/spell_components.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
[ "diveknife", 1 ],
[ "knife_butcher", 1 ],
[ "knife_combat", 1 ],
[ "knife_chef", 1 ],
[ "knife_large", 1 ],
[ "knife_hunting", 1 ],
[ "knife_rambo", 1 ],
[ "knife_small", 1 ],
Expand Down
5 changes: 1 addition & 4 deletions data/mods/Xedra_Evolved/recipes/dreamforged_weapon.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,7 @@
"type": "recipe",
"result": "dreamdross_knife",
"copy-from": "dreamdross_bo",
"components": [
[ [ "dreamdross_lump", 2 ], [ "scrap_dreamdross", 20 ] ],
[ [ "knife_butcher", 1 ], [ "knife_chef", 1 ], [ "knife_carving", 1 ] ]
],
"components": [ [ [ "dreamdross_lump", 2 ], [ "scrap_dreamdross", 20 ] ], [ [ "knife_butcher", 1 ], [ "knife_large", 1 ] ] ],
"time": "2 h",
"flags": [ "SECRET" ],
"difficulty": 1
Expand Down
20 changes: 10 additions & 10 deletions tests/npc_attack_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ static const faction_id faction_your_followers( "your_followers" );

static const itype_id itype_combat_exoskeleton_medium( "combat_exoskeleton_medium" );
static const itype_id itype_combat_exoskeleton_medium_on( "combat_exoskeleton_medium_on" );
static const itype_id itype_knife_chef( "knife_chef" );
static const itype_id itype_knife_large( "knife_large" );
static const itype_id itype_rock( "rock" );
static const itype_id itype_wearable_light( "wearable_light" );

Expand Down Expand Up @@ -76,10 +76,10 @@ TEST_CASE( "NPC_faces_zombies", "[npc_attack]" )
GIVEN( "There is a zombie 1 tile away" ) {
monster *zombie = npc_attack_setup::spawn_zombie_at_range( 1 );

WHEN( "NPC only has a chef knife" ) {
item weapon( "knife_chef" );
WHEN( "NPC only has a large knife" ) {
item weapon( "knife_large" );
main_npc.set_wielded_item( weapon );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_chef );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_large );

THEN( "NPC attempts to melee the enemy target" ) {
main_npc.evaluate_best_attack( zombie );
Expand Down Expand Up @@ -207,10 +207,10 @@ TEST_CASE( "NPC_faces_zombies", "[npc_attack]" )
GIVEN( "There is a zombie 5 tiles away" ) {
monster *zombie = npc_attack_setup::spawn_zombie_at_range( 5 );

WHEN( "NPC only has a chef knife" ) {
item weapon( "knife_chef" );
WHEN( "NPC only has a large knife" ) {
item weapon( "knife_large" );
main_npc.set_wielded_item( weapon );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_chef );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_large );

THEN( "NPC attempts to melee the enemy target" ) {
main_npc.evaluate_best_attack( zombie );
Expand Down Expand Up @@ -241,10 +241,10 @@ TEST_CASE( "NPC_faces_zombies", "[npc_attack]" )
monster *zombie = npc_attack_setup::spawn_zombie_at_range( 1 );
monster *zombie_far = npc_attack_setup::spawn_zombie_at_range( 8 );

WHEN( "NPC only has a chef knife" ) {
item weapon( "knife_chef" );
WHEN( "NPC only has a large knife" ) {
item weapon( "knife_large" );
main_npc.set_wielded_item( weapon );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_chef );
REQUIRE( main_npc.get_wielded_item()->typeId() == itype_knife_large );

WHEN( "NPC is targetting closest zombie" ) {
main_npc.evaluate_best_attack( zombie );
Expand Down

0 comments on commit 0e22134

Please sign in to comment.