From 175e4ef153535d25dea8d8d46294c9caaa00ebf5 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Fri, 23 Feb 2024 23:16:13 -0300 Subject: [PATCH 01/15] Adds cardboard items as reward for dave --- data/json/items/armor/cardboard.json | 163 ++++++++++++++++++ data/json/items/book/fabrication.json | 21 +++ data/json/items/melee/cardboard.json | 42 +++++ .../beggars/BEGGAR_2_Dino_Dave.json | 4 +- .../surface_refugees/NPC_Dino_Dave.json | 73 +++++++- data/json/recipes/armor/cardboard.json | 81 +++++++++ data/json/recipes/nested.json | 24 +++ data/json/recipes/weapon/cardboard.json | 40 +++++ 8 files changed, 445 insertions(+), 3 deletions(-) create mode 100644 data/json/items/armor/cardboard.json create mode 100644 data/json/items/melee/cardboard.json create mode 100644 data/json/recipes/armor/cardboard.json create mode 100644 data/json/recipes/weapon/cardboard.json diff --git a/data/json/items/armor/cardboard.json b/data/json/items/armor/cardboard.json new file mode 100644 index 0000000000000..a672186a84edc --- /dev/null +++ b/data/json/items/armor/cardboard.json @@ -0,0 +1,163 @@ +[ + { + "id": "helmet_cardboard", + "type": "ARMOR", + "category": "armor", + "name": { "str": "cardboard great helm" }, + "description": "A cardboard helmet shaped to look like a medieval great helm. Very unencumbering in comparison to actual helmets, with rather obvious drawbacks in comparison. The interior is lined with aluminum, apparently to 'divert the zombie beta rays'. It sure doesn't help with comfort.", + "weight": "1250 g", + "volume": "2750 ml", + "price": 40000, + "price_postapoc": 5000, + "material": [ "cardboard", "aluminum" ], + "symbol": "[", + "looks_like": "helmet_barbute", + "color": "brown_yellow", + "armor": [ + { "covers": [ "head" ], "coverage": 100, "encumbrance_modifiers": [ "RESTRICTS_NECK", "WELL_SUPPORTED" ] }, + { "covers": [ "mouth" ], "rigid_layer_only": true, "coverage": 100, "encumbrance": 15 }, + { "covers": [ "eyes" ], "rigid_layer_only": true, "coverage": 95, "encumbrance": 15 } + ], + "warmth": 15, + "material_thickness": 5, + "environmental_protection": 1, + "techniques": [ "WBLOCK_1" ], + "flags": [ "WATER_DISSOLVE", "VARSIZE", "HARD", "PSYSHIELD_PARTIAL" ], + "melee_damage": { "bash": 0 } + }, + { + "id": "armor_cardboard", + "type": "ARMOR", + "category": "armor", + "name": { "str": "cardboard \"plate\" armor" }, + "description": "A set of cardboard armor that's been duct taped and superglued into place, with paper padding the interior in an unsuccessful attempt to increase comfort. Despite the triple-layering, tensile and shear strength diagrams, and careful design considerations, there's just no way this is going to hold up to a single attack.", + "weight": "3450 g", + "volume": "17500 ml", + "price": 0, + "price_postapoc": 0, + "to_hit": -5, + "material": [ "cardboard", "paper" ], + "symbol": "[", + "looks_like": "armor_junk_lightplate", + "color": "brown_yellow", + "warmth": 15, + "longest_side": "120 cm", + "material_thickness": 2, + "flags": [ "WATER_DISSOLVE", "OUTER", "BLOCK_WHILE_WORN", "HARD" ], + "armor": [ + { + "material": [ + { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + ], + "covers": [ "torso" ], + "coverage": 100, + "encumbrance": 18 + }, + { + "material": [ + { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + ], + "covers": [ "arm_l", "arm_r" ], + "coverage": 100, + "encumbrance": 21 + }, + { + "material": [ + { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + ], + "covers": [ "leg_l", "leg_r" ], + "coverage": 100, + "encumbrance": 23 + } + ], + "melee_damage": { "bash": 0 } + }, + { + "id": "armor_cardboard_cuirass", + "type": "ARMOR", + "name": { "str": "cardboard cuirass", "str_pl": "cardboard cuirasses" }, + "category": "armor", + "description": "While this isn't quite the 'heavy ballistic vest' the blueprints pretend it is, the layering makes it almost passable as a form of extremely rudimentary armor. It's still nowhere near as good as basically any other choice, while still being hard to move around in.", + "weight": "2105 g", + "volume": "6 L", + "price": 0, + "price_postapoc": 0, + "to_hit": -5, + "material": [ "cardboard", "paper" ], + "symbol": "[", + "looks_like": "cuirass_lightplate", + "color": "brown_yellow", + "longest_side": "60 cm", + "warmth": 15, + "material_thickness": 6, + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "VARSIZE", "OUTER", "HARD" ], + "armor": [ { "encumbrance": 12, "coverage": 90, "covers": [ "torso" ] } ], + "melee_damage": { "bash": 0 } + }, + { + "id": "cardboard_shield", + "type": "ARMOR", + "category": "armor", + "name": { "str": "cardboard shield" }, + "description": "You haven't seen many shields in the cataclysm, and considering the material this one was made out of you're likely not to see much more of it. Extremely bulky and barely protective, it performs the duty of looking cool somewhat decently.", + "weight": "1250 g", + "volume": "2750 ml", + "price": 0, + "price_postapoc": 0, + "material": [ "cardboard", "paper" ], + "symbol": "[", + "color": "brown_yellow", + "armor": [ + { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 35, 35 ] }, + { "covers": [ "hand_l", "hand_r" ], "coverage": 50, "encumbrance": [ 35, 35 ] } + ], + "warmth": 5, + "material_thickness": 6, + "techniques": [ "WBLOCK_1" ], + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "VARSIZE", "FRAGILE", "HARD", "RESTRICT_HANDS", "BLOCK_WHILE_WORN" ], + "melee_damage": { "bash": 0 } + }, + { + "id": "cardboard_crown", + "type": "ARMOR", + "name": { "str": "cardboard crown" }, + "description": "A piece of cardboard crudely bent into shape and cut to look like a crown.", + "weight": "280 g", + "volume": "100 ml", + "price": 0, + "price_postapoc": 0, + "material": [ "cardboard" ], + "looks_like": "crown_golden", + "symbol": "[", + "color": "brown_yellow", + "material_thickness": 1, + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "UNDERSIZE", "FRAGILE" ], + "armor": [ { "encumbrance": 1, "coverage": 20, "covers": [ "head" ], "specifically_covers": [ "head_crown" ] } ], + "use_action": { + "type": "transform", + "menu_text": "Loosen", + "target": "cardboard_crown_loose", + "msg": "You loosen your cardboard crown." + } + }, + { + "id": "cardboard_crown_loose", + "type": "ARMOR", + "name": { "str": "cardboard crown (loosened)" }, + "description": "A piece of cardboard crudely bent into shape and cut to look like a crown. This one's been loosened up somewhat, allowing it to be worn over some headgear comfortably.", + "copy-from": "cardboard_crown", + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE", "OUTER", "OVERSIZE", "POWERARMOR_COMPATIBLE" ], + "use_action": { "type": "transform", "menu_text": "Adjust", "target": "cardboard_crown", "msg": "You adjust your cardboard crown." } + }, + { + "id": "badge_cardboard", + "copy-from": "badge_abstract", + "type": "ARMOR", + "name": { "str": "cardboard badge" }, + "description": "An honorable badge identifying the owner as a \"Knight Errant\" of \"House Da\". The large letters slowly dwindle in size as the badge runs out of space, leaving out the last two letters of Dino Dave's name.", + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE" ] + } +] diff --git a/data/json/items/book/fabrication.json b/data/json/items/book/fabrication.json index fc5eddc1846ef..f64cb2a813ae9 100644 --- a/data/json/items/book/fabrication.json +++ b/data/json/items/book/fabrication.json @@ -742,5 +742,26 @@ "intelligence": 8, "time": "25 m", "melee_damage": { "bash": 4 } + }, + { + "id": "recipe_dave_manual", + "type": "BOOK", + "category": "manuals", + "name": { "str": "Dino Dave's cardboard notebook", "str_pl": "copies of Dino Dave's cardboard notebook" }, + "description": "This school notebook contains an astounding amount of \"recipes\" of various cardboard utilities, ranging from the wholly impractical to completely impossible. Despite that, they're illustrated in a surprisingly thorough manner, to the point where you could possibly learn something from studying the chicken scratch and schematics in detail. The last page thanks a number of names, some of which you recognize from the refugee center. Your name covers half the page. At the bottom, it warns you not to let \"the sandman\" read it.", + "weight": "600 g", + "volume": "500 ml", + "price": 0, + "price_postapoc": 0, + "material": [ "paper" ], + "symbol": "?", + "looks_like": "mag_glam", + "color": "brown_yellow", + "skill": "fabrication", + "required_level": 4, + "max_level": 6, + "intelligence": 14, + "time": "20 m", + "fun": -1 } ] diff --git a/data/json/items/melee/cardboard.json b/data/json/items/melee/cardboard.json new file mode 100644 index 0000000000000..975e7d819c419 --- /dev/null +++ b/data/json/items/melee/cardboard.json @@ -0,0 +1,42 @@ +[ + { + "type": "GENERIC", + "id": "sword_cardboard", + "symbol": "!", + "color": "brown", + "looks_like": "sword_wood", + "name": { "str": "cardboard \"sword\"" }, + "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon. ", + "material": [ "cardboard" ], + "volume": "2400 ml", + "weight": "500 g", + "longest_side": "100 cm", + "to_hit": { "grip": "none", "length": "long", "surface": "any", "balance": "neutral" }, + "price_postapoc": 0, + "flags": [ "BELT_CLIP", "WATER_DISSOLVE", "FRAGILE_MELEE" ], + "weapon_category": [ "MEDIUM_SWORDS" ], + "techniques": [ "WBLOCK_1" ], + "melee_damage": { "bash": 1, "cut": 0 } + }, + { + "type": "GENERIC", + "id": "spear_cardboard", + "symbol": "!", + "color": "brown", + "looks_like": "spear_wood", + "name": { "str": "cardboard \"spear\"" }, + "description": "Six aluminium foil rolls glued together, with a tip made out of cardboard sheets shaped to resemble a point. Not very practical.", + "material": [ "cardboard" ], + "volume": "2400 ml", + "weight": "700 g", + "longest_side": "180 cm", + "to_hit": { "grip": "none", "length": "long", "surface": "point", "balance": "neutral" }, + "flags": [ "SPEAR", "REACH_ATTACK", "NPC_THROWN", "SHEATH_SPEAR", "WATER_DISSOLVE", "FRAGILE_MELEE" ], + "weapon_category": [ "POLEARMS", "SPEARS" ], + "price": 400, + "qualities": [ [ "COOK", 1 ] ], + "price_postapoc": 0, + "techniques": [ "WBLOCK_1" ], + "melee_damage": { "bash": 1, "cut": 1 } + } +] diff --git a/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json b/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json index 8d4af3053c7da..34056cf38d817 100644 --- a/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json +++ b/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json @@ -246,7 +246,9 @@ { "npc_first_topic": "TALK_DINODAVE_1" }, { "mapgen_update": "cardboard_castle_1_main", "om_terrain": "evac_center_13_z1" }, { "mapgen_update": "cardboard_castle_1_roof", "om_terrain": "evac_center_13_z2" }, - { "npc_teleport": { "global_val": "dave_castle" } } + { "npc_teleport": { "global_val": "dave_castle" } }, + { "character_wears_item": { "avatar_id": "npc" }, "itype": "cardboard_crown" }, + { "character_wield_item": { "avatar_id": "npc" }, "itype": "spear_cardboard" } ] }, "responses": [ { "text": "I'll see you on the rooftop. Good luck, Dave.", "topic": "TALK_DONE" } ] diff --git a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json index 4e18e55c6660f..23125ecbf514a 100644 --- a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json +++ b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json @@ -2,11 +2,34 @@ { "type": "talk_topic", "id": "TALK_DINODAVE_1", - "dynamic_line": "*sits in a surprisingly well-built room made of lovingly assembled cardboard boxes. The area is quite clean and cozy. The whole building is built on top of cargo pallets, insulated with scraps, and waterproofed with plastic. It shows an unexpected amount of design prowess. \"Hello, my noble knight errant,\" Dave intones, his voice solemn. \"We owe you a great debt for your actions of the past. Some day, we shall repay it. Until then, you are welcome here, now and always.\"", + "dynamic_line": { + "concatenate": [ + "*sits in a surprisingly well-built room made of lovingly assembled cardboard boxes. The area is quite clean and cozy. The whole building is built on top of cargo pallets, insulated with scraps, and waterproofed with plastic. It shows an unexpected amount of design prowess. \"Hello, my noble knight errant,\" Dave intones, his voice solemn.\u0020", + { + "u_has_var": "u_cardboard_gift", + "type": "dialogue", + "context": "dave", + "value": "finished", + "yes": "\" We hope our gift to you will help repay our great debt. \"\u0020", + "no": "\"We owe you a great debt for your actions of the past. Some day, we shall repay it. Until then, you are welcome here, now and always.\"\u0020" + } + ] + }, "responses": [ { "text": "Hi Dave. You seem different.", "topic": "TALK_DINODAVE_Different" }, { "text": "How are things going up here on the roof?", "topic": "TALK_DINODAVE_Roof" }, - { "text": "Always good to catch up, Dave. Keep on being you.", "topic": "TALK_DONE" } + { "text": "Always good to catch up, Dave. Keep on being you.", "topic": "TALK_DONE" }, + { + "text": "You said something about a gift?", + "topic": "TALK_DINODAVE_Gift_Given", + "effect": [ { "u_add_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "finished" } ], + "condition": { + "and": [ + { "u_has_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "in_progress" }, + { "math": [ "time_since(u_timer_dave_creating_gift)", "<", "time('1 d')" ] } + ] + } + } ] }, { @@ -50,7 +73,53 @@ "dynamic_line": "*gestures about his new home. \"We have everything we wanted. They cannot see us here, and our mind is at peace. We go outside as we need, and the safety we have received here stays with us, as long as we are careful about it. In time, perhaps we will again have need of your noble services.\"", "responses": [ { "text": "You seem different.", "topic": "TALK_DINODAVE_Different" }, + { + "text": "You know, this place is surprisingly nice, for a cardboart fortress.", + "topic": "TALK_DINODAVE_Cardboard", + "effect": [ + { "u_add_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "in_progress" }, + { "math": [ "u_timer_dave_creating_gift", "=", "time('now')" ] } + ], + "condition": { + "and": [ + { "not": { "u_has_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "finished" } }, + { + "not": { "u_has_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "in_progress" } + } + ] + } + }, { "text": "Always good to catch up, Dave. Keep on being you.", "topic": "TALK_DONE" } ] + }, + { + "type": "talk_topic", + "id": "TALK_DINODAVE_Cardboard", + "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", + "responses": [ { "text": "Uh... you there?.", "topic": "TALK_DINODAVE_Gift" } ] + }, + { + "type": "talk_topic", + "id": "TALK_DINODAVE_Gift", + "dynamic_line": "\"You've given us an idea, a way we could repay a small fraction of your aid. Come back in a day, and your blessing will be here for you.\"", + "responses": [ { "text": "See you in a day, then.", "topic": "TALK_DINODAVE_Gift_Bye" } ] + }, + { + "type": "talk_topic", + "id": "TALK_DINODAVE_Gift_Bye", + "dynamic_line": "\"Make sure you don't let the sandman in. He can't be trusted.\"", + "responses": [ { "text": "Always good to catch up, Dave. Keep on being you.", "topic": "TALK_DONE" } ] + }, + { + "type": "talk_topic", + "id": "TALK_DINODAVE_Gift_Given", + "dynamic_line": "\"Indeed, my knight. I was hesitant to grant you this power, but you have proven your worth and fealty many times over. Make sure it does not fall into the wrong hands. May it help you on your journey.\"", + "responses": [ + { + "text": "[Take the gift.]", + "topic": "TALK_DINODAVE_Gift_Bye", + "effect": [ { "u_spawn_item": "recipe_dave_manual" }, { "u_spawn_item": "badge_cardboard" } ] + } + ] } ] diff --git a/data/json/recipes/armor/cardboard.json b/data/json/recipes/armor/cardboard.json new file mode 100644 index 0000000000000..b83e686c4318c --- /dev/null +++ b/data/json/recipes/armor/cardboard.json @@ -0,0 +1,81 @@ +[ + { + "result": "helmet_cardboard", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_ARMOR", + "subcategory": "CSC_ARMOR_HEAD", + "skill_used": "fabrication", + "difficulty": 2, + "skills_required": [ "fabrication", 1 ], + "time": "1 h", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 1 ] ], + "using": [ [ "adhesive", 2 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "cardboard", 300 ] ], [ [ "aluminum_foil", 5 ] ] ] + }, + { + "result": "armor_cardboard", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_ARMOR", + "subcategory": "CSC_ARMOR_SUIT", + "skill_used": "fabrication", + "difficulty": 3, + "skills_required": [ "fabrication", 2 ], + "time": "150 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 1 ] ], + "using": [ [ "adhesive", 15 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "cardboard", 2000 ] ], [ [ "paper", 60 ] ] ] + }, + { + "result": "armor_cardboard_cuirass", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_ARMOR", + "subcategory": "CSC_ARMOR_HEAD", + "skill_used": "fabrication", + "difficulty": 2, + "skills_required": [ "fabrication", 1 ], + "time": "150 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 1 ] ], + "using": [ [ "adhesive", 10 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "cardboard", 1200 ] ], [ [ "paper", 20 ] ] ] + }, + { + "result": "cardboard_shield", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_ARMOR", + "subcategory": "CSC_ARMOR_ARMS", + "skill_used": "fabrication", + "difficulty": 2, + "skills_required": [ "fabrication", 1 ], + "time": "40 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 1 ] ], + "using": [ [ "adhesive", 5 ], [ "cordage", 4 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "cardboard", 600 ] ], [ [ "paper", 10 ] ] ] + }, + { + "result": "cardboard_crown", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_ARMOR", + "subcategory": "CSC_ARMOR_HEAD", + "skill_used": "fabrication", + "difficulty": 0, + "skills_required": [ "fabrication", 0 ], + "time": "5 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 0 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "components": [ [ [ "cardboard", 100 ] ] ] + } +] diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index b73ac07c02d3a..43ceba707f70f 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7088,5 +7088,29 @@ "qt_esbi_plate" ], "difficulty": 5 + }, + { + "id": "nested_cardboard_armor", + "type": "nested_category", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_*", + "subcategory": "CSC_*_NESTED", + "name": "cardboard armor", + "description": "Recipes related to the construction of cardboard armor.", + "skill_used": "fabrication", + "nested_category_data": [ "helmet_cardboard", "armor_cardboard", "armor_cardboard_cuirass", "cardboard_shield", "cardboard_crown" ], + "difficulty": 1 + }, + { + "id": "nested_cardboard_weapons", + "type": "nested_category", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_*", + "subcategory": "CSC_*_NESTED", + "name": "cardboard weapons", + "description": "Recipes related to the construction of cardboard 'weaponry''.", + "skill_used": "fabrication", + "nested_category_data": [ "sword_cardboard", "spear_cardboard" ], + "difficulty": 1 } ] diff --git a/data/json/recipes/weapon/cardboard.json b/data/json/recipes/weapon/cardboard.json new file mode 100644 index 0000000000000..91b468f0bd6bc --- /dev/null +++ b/data/json/recipes/weapon/cardboard.json @@ -0,0 +1,40 @@ +[ + { + "result": "sword_cardboard", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_BASHING", + "skill_used": "fabrication", + "difficulty": 0, + "skills_required": [ "fabrication", 0 ], + "time": "30 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 0 ] ], + "using": [ [ "adhesive", 3 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "//": "Grip, handguard, and 'blade', respectively.", + "components": [ + [ [ "cardboard_roll", 1 ], [ "wrapper_foil_roll", 1 ] ], + [ [ "cardboard", 5 ], [ "box_small", 1 ], [ "box_small_folded", 1 ] ], + [ [ "wrapper_foil_roll", 2 ] ] + ] + }, + { + "result": "spear_cardboard", + "type": "recipe", + "activity_level": "LIGHT_EXERCISE", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_PIERCING", + "skill_used": "fabrication", + "difficulty": 1, + "skills_required": [ "fabrication", 0 ], + "time": "30 m", + "autolearn": false, + "book_learn": [ [ "recipe_dave_manual", 0 ] ], + "using": [ [ "adhesive", 6 ] ], + "qualities": [ { "id": "CUT", "level": 1 } ], + "//": "The shaft and then the cardboard tip.", + "components": [ [ [ "wrapper_foil_roll", 6 ] ], [ [ "cardboard", 5 ], [ "box_small", 1 ], [ "box_small_folded", 1 ] ] ] + } +] From 55ec1c55c270250ee479b7196e4d1f6d3ab20e5a Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Mon, 26 Feb 2024 00:11:05 -0300 Subject: [PATCH 02/15] Adds a reward for finishing Dino Dave's quest chain --- data/json/items/armor/cardboard.json | 55 ++++++------------- data/json/items/melee/cardboard.json | 4 +- .../beggars/BEGGAR_2_Dino_Dave.json | 5 +- .../surface_refugees/NPC_Dino_Dave.json | 4 +- data/json/recipes/armor/cardboard.json | 18 ------ data/json/recipes/nested.json | 8 +-- data/json/recipes/weapon/cardboard.json | 3 - 7 files changed, 26 insertions(+), 71 deletions(-) diff --git a/data/json/items/armor/cardboard.json b/data/json/items/armor/cardboard.json index a672186a84edc..a1762ca025dd8 100644 --- a/data/json/items/armor/cardboard.json +++ b/data/json/items/armor/cardboard.json @@ -3,15 +3,15 @@ "id": "helmet_cardboard", "type": "ARMOR", "category": "armor", - "name": { "str": "cardboard great helm" }, - "description": "A cardboard helmet shaped to look like a medieval great helm. Very unencumbering in comparison to actual helmets, with rather obvious drawbacks in comparison. The interior is lined with aluminum, apparently to 'divert the zombie beta rays'. It sure doesn't help with comfort.", + "looks_like": "helmet_larmor", + "name": { "str": "cardboard 'great' helm" }, + "description": "A cardboard helmet shaped to look like a medieval great helm. Very unencumbering in comparison to actual helmets, with rather obvious drawbacks in exchange. The interior is lined with aluminum, apparently to 'divert the zombie beta rays'. It sure doesn't help with comfort.", "weight": "1250 g", "volume": "2750 ml", "price": 40000, "price_postapoc": 5000, "material": [ "cardboard", "aluminum" ], "symbol": "[", - "looks_like": "helmet_barbute", "color": "brown_yellow", "armor": [ { "covers": [ "head" ], "coverage": 100, "encumbrance_modifiers": [ "RESTRICTS_NECK", "WELL_SUPPORTED" ] }, @@ -22,14 +22,15 @@ "material_thickness": 5, "environmental_protection": 1, "techniques": [ "WBLOCK_1" ], - "flags": [ "WATER_DISSOLVE", "VARSIZE", "HARD", "PSYSHIELD_PARTIAL" ], + "flags": [ "WATER_DISSOLVE", "VARSIZE", "HARD", "PSYSHIELD_PARTIAL", "FRAGILE" ], "melee_damage": { "bash": 0 } }, { "id": "armor_cardboard", "type": "ARMOR", "category": "armor", - "name": { "str": "cardboard \"plate\" armor" }, + "looks_like": "armor_larmor", + "name": { "str": "cardboard 'plate' armor" }, "description": "A set of cardboard armor that's been duct taped and superglued into place, with paper padding the interior in an unsuccessful attempt to increase comfort. Despite the triple-layering, tensile and shear strength diagrams, and careful design considerations, there's just no way this is going to hold up to a single attack.", "weight": "3450 g", "volume": "17500 ml", @@ -38,17 +39,16 @@ "to_hit": -5, "material": [ "cardboard", "paper" ], "symbol": "[", - "looks_like": "armor_junk_lightplate", "color": "brown_yellow", "warmth": 15, "longest_side": "120 cm", "material_thickness": 2, - "flags": [ "WATER_DISSOLVE", "OUTER", "BLOCK_WHILE_WORN", "HARD" ], + "flags": [ "WATER_DISSOLVE", "OUTER", "BLOCK_WHILE_WORN", "HARD", "FRAGILE" ], "armor": [ { "material": [ - { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, - { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + { "type": "cardboard", "covered_by_mat": 95, "thickness": 2.5 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 0.3 } ], "covers": [ "torso" ], "coverage": 100, @@ -56,8 +56,8 @@ }, { "material": [ - { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, - { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + { "type": "cardboard", "covered_by_mat": 95, "thickness": 2.5 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 0.3 } ], "covers": [ "arm_l", "arm_r" ], "coverage": 100, @@ -65,8 +65,8 @@ }, { "material": [ - { "type": "cardboard", "covered_by_mat": 95, "thickness": 0.3 }, - { "type": "paper", "covered_by_mat": 100, "thickness": 2.5 } + { "type": "cardboard", "covered_by_mat": 95, "thickness": 2.5 }, + { "type": "paper", "covered_by_mat": 100, "thickness": 0.3 } ], "covers": [ "leg_l", "leg_r" ], "coverage": 100, @@ -78,6 +78,7 @@ { "id": "armor_cardboard_cuirass", "type": "ARMOR", + "looks_like": "hoodie_brown", "name": { "str": "cardboard cuirass", "str_pl": "cardboard cuirasses" }, "category": "armor", "description": "While this isn't quite the 'heavy ballistic vest' the blueprints pretend it is, the layering makes it almost passable as a form of extremely rudimentary armor. It's still nowhere near as good as basically any other choice, while still being hard to move around in.", @@ -88,7 +89,6 @@ "to_hit": -5, "material": [ "cardboard", "paper" ], "symbol": "[", - "looks_like": "cuirass_lightplate", "color": "brown_yellow", "longest_side": "60 cm", "warmth": 15, @@ -97,29 +97,6 @@ "armor": [ { "encumbrance": 12, "coverage": 90, "covers": [ "torso" ] } ], "melee_damage": { "bash": 0 } }, - { - "id": "cardboard_shield", - "type": "ARMOR", - "category": "armor", - "name": { "str": "cardboard shield" }, - "description": "You haven't seen many shields in the cataclysm, and considering the material this one was made out of you're likely not to see much more of it. Extremely bulky and barely protective, it performs the duty of looking cool somewhat decently.", - "weight": "1250 g", - "volume": "2750 ml", - "price": 0, - "price_postapoc": 0, - "material": [ "cardboard", "paper" ], - "symbol": "[", - "color": "brown_yellow", - "armor": [ - { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 35, 35 ] }, - { "covers": [ "hand_l", "hand_r" ], "coverage": 50, "encumbrance": [ 35, 35 ] } - ], - "warmth": 5, - "material_thickness": 6, - "techniques": [ "WBLOCK_1" ], - "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "VARSIZE", "FRAGILE", "HARD", "RESTRICT_HANDS", "BLOCK_WHILE_WORN" ], - "melee_damage": { "bash": 0 } - }, { "id": "cardboard_crown", "type": "ARMOR", @@ -134,7 +111,7 @@ "symbol": "[", "color": "brown_yellow", "material_thickness": 1, - "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "UNDERSIZE", "FRAGILE" ], + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE", "SOFT" ], "armor": [ { "encumbrance": 1, "coverage": 20, "covers": [ "head" ], "specifically_covers": [ "head_crown" ] } ], "use_action": { "type": "transform", @@ -149,7 +126,7 @@ "name": { "str": "cardboard crown (loosened)" }, "description": "A piece of cardboard crudely bent into shape and cut to look like a crown. This one's been loosened up somewhat, allowing it to be worn over some headgear comfortably.", "copy-from": "cardboard_crown", - "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE", "OUTER", "OVERSIZE", "POWERARMOR_COMPATIBLE" ], + "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE", "OUTER", "POWERARMOR_COMPATIBLE", "SOFT" ], "use_action": { "type": "transform", "menu_text": "Adjust", "target": "cardboard_crown", "msg": "You adjust your cardboard crown." } }, { diff --git a/data/json/items/melee/cardboard.json b/data/json/items/melee/cardboard.json index 975e7d819c419..de53352e27fab 100644 --- a/data/json/items/melee/cardboard.json +++ b/data/json/items/melee/cardboard.json @@ -13,7 +13,7 @@ "longest_side": "100 cm", "to_hit": { "grip": "none", "length": "long", "surface": "any", "balance": "neutral" }, "price_postapoc": 0, - "flags": [ "BELT_CLIP", "WATER_DISSOLVE", "FRAGILE_MELEE" ], + "flags": [ "BELT_CLIP", "WATER_DISSOLVE" ], "weapon_category": [ "MEDIUM_SWORDS" ], "techniques": [ "WBLOCK_1" ], "melee_damage": { "bash": 1, "cut": 0 } @@ -31,7 +31,7 @@ "weight": "700 g", "longest_side": "180 cm", "to_hit": { "grip": "none", "length": "long", "surface": "point", "balance": "neutral" }, - "flags": [ "SPEAR", "REACH_ATTACK", "NPC_THROWN", "SHEATH_SPEAR", "WATER_DISSOLVE", "FRAGILE_MELEE" ], + "flags": [ "SPEAR", "REACH_ATTACK", "NPC_THROWN", "SHEATH_SPEAR", "WATER_DISSOLVE" ], "weapon_category": [ "POLEARMS", "SPEARS" ], "price": 400, "qualities": [ [ "COOK", 1 ] ], diff --git a/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json b/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json index ce53b7a957d81..d6f880fb9456d 100644 --- a/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json +++ b/data/json/npcs/refugee_center/beggars/BEGGAR_2_Dino_Dave.json @@ -50,6 +50,7 @@ { "item": "boxer_shorts" }, { "item": "socks_wool" }, { "item": "dinosuit" }, + { "item": "cardboard_crown_loose" }, { "item": "boots_winter" }, { "item": "coat_winter" } ] @@ -286,9 +287,7 @@ { "npc_first_topic": "TALK_DINODAVE_1" }, { "mapgen_update": "cardboard_castle_1_main", "om_terrain": "evac_center_13_z1" }, { "mapgen_update": "cardboard_castle_1_roof", "om_terrain": "evac_center_13_z2" }, - { "npc_teleport": { "global_val": "dave_castle" } }, - { "character_wears_item": { "avatar_id": "npc" }, "itype": "cardboard_crown" }, - { "character_wield_item": { "avatar_id": "npc" }, "itype": "spear_cardboard" } + { "npc_teleport": { "global_val": "dave_castle" } } ] }, "responses": [ { "text": "I'll see you on the rooftop. Good luck, Dave.", "topic": "TALK_DONE" } ] diff --git a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json index 23125ecbf514a..44eadb775337f 100644 --- a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json +++ b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json @@ -26,7 +26,7 @@ "condition": { "and": [ { "u_has_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "in_progress" }, - { "math": [ "time_since(u_timer_dave_creating_gift)", "<", "time('1 d')" ] } + { "math": [ "time_since(u_timer_dave_creating_gift)", ">", "time('1 d')" ] } ] } } @@ -74,7 +74,7 @@ "responses": [ { "text": "You seem different.", "topic": "TALK_DINODAVE_Different" }, { - "text": "You know, this place is surprisingly nice, for a cardboart fortress.", + "text": "You know, this place is surprisingly nice, for a cardboard fortress.", "topic": "TALK_DINODAVE_Cardboard", "effect": [ { "u_add_var": "u_cardboard_gift", "type": "dialogue", "context": "dave", "value": "in_progress" }, diff --git a/data/json/recipes/armor/cardboard.json b/data/json/recipes/armor/cardboard.json index b83e686c4318c..bd917b530b276 100644 --- a/data/json/recipes/armor/cardboard.json +++ b/data/json/recipes/armor/cardboard.json @@ -47,22 +47,6 @@ "qualities": [ { "id": "CUT", "level": 1 } ], "components": [ [ [ "cardboard", 1200 ] ], [ [ "paper", 20 ] ] ] }, - { - "result": "cardboard_shield", - "type": "recipe", - "activity_level": "LIGHT_EXERCISE", - "category": "CC_ARMOR", - "subcategory": "CSC_ARMOR_ARMS", - "skill_used": "fabrication", - "difficulty": 2, - "skills_required": [ "fabrication", 1 ], - "time": "40 m", - "autolearn": false, - "book_learn": [ [ "recipe_dave_manual", 1 ] ], - "using": [ [ "adhesive", 5 ], [ "cordage", 4 ] ], - "qualities": [ { "id": "CUT", "level": 1 } ], - "components": [ [ [ "cardboard", 600 ] ], [ [ "paper", 10 ] ] ] - }, { "result": "cardboard_crown", "type": "recipe", @@ -70,8 +54,6 @@ "category": "CC_ARMOR", "subcategory": "CSC_ARMOR_HEAD", "skill_used": "fabrication", - "difficulty": 0, - "skills_required": [ "fabrication", 0 ], "time": "5 m", "autolearn": false, "book_learn": [ [ "recipe_dave_manual", 0 ] ], diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index e0a0c7e43bcee..673f1b8b12fac 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7104,8 +7104,8 @@ "id": "nested_cardboard_armor", "type": "nested_category", "activity_level": "LIGHT_EXERCISE", - "category": "CC_*", - "subcategory": "CSC_*_NESTED", + "category": "CC_ARMOR*", + "subcategory": "CSC_ARMOR_SUIT", "name": "cardboard armor", "description": "Recipes related to the construction of cardboard armor.", "skill_used": "fabrication", @@ -7116,8 +7116,8 @@ "id": "nested_cardboard_weapons", "type": "nested_category", "activity_level": "LIGHT_EXERCISE", - "category": "CC_*", - "subcategory": "CSC_*_NESTED", + "category": "CC_WEAPON", + "subcategory": "CSC_WEAPON_BASHING", "name": "cardboard weapons", "description": "Recipes related to the construction of cardboard 'weaponry''.", "skill_used": "fabrication", diff --git a/data/json/recipes/weapon/cardboard.json b/data/json/recipes/weapon/cardboard.json index 91b468f0bd6bc..68c14c05ff55a 100644 --- a/data/json/recipes/weapon/cardboard.json +++ b/data/json/recipes/weapon/cardboard.json @@ -6,8 +6,6 @@ "category": "CC_WEAPON", "subcategory": "CSC_WEAPON_BASHING", "skill_used": "fabrication", - "difficulty": 0, - "skills_required": [ "fabrication", 0 ], "time": "30 m", "autolearn": false, "book_learn": [ [ "recipe_dave_manual", 0 ] ], @@ -28,7 +26,6 @@ "subcategory": "CSC_WEAPON_PIERCING", "skill_used": "fabrication", "difficulty": 1, - "skills_required": [ "fabrication", 0 ], "time": "30 m", "autolearn": false, "book_learn": [ [ "recipe_dave_manual", 0 ] ], From fab8d386ea5a8f32bbb7bdb2e991d44adeda3e96 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Sat, 2 Mar 2024 17:50:12 -0300 Subject: [PATCH 03/15] Grammar stuff --- data/json/items/armor/cardboard.json | 12 ++++++------ data/json/items/melee/cardboard.json | 8 ++++---- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/data/json/items/armor/cardboard.json b/data/json/items/armor/cardboard.json index a1762ca025dd8..962ea90598b56 100644 --- a/data/json/items/armor/cardboard.json +++ b/data/json/items/armor/cardboard.json @@ -5,7 +5,7 @@ "category": "armor", "looks_like": "helmet_larmor", "name": { "str": "cardboard 'great' helm" }, - "description": "A cardboard helmet shaped to look like a medieval great helm. Very unencumbering in comparison to actual helmets, with rather obvious drawbacks in exchange. The interior is lined with aluminum, apparently to 'divert the zombie beta rays'. It sure doesn't help with comfort.", + "description": "A cardboard helmet shaped to look like a medieval great helm. Very unencumbering in comparison to actual helmets, with rather obvious drawbacks in exchange. The interior is lined with aluminum, apparently to 'divert the zombie beta rays'. It sure doesn't help with comfort.", "weight": "1250 g", "volume": "2750 ml", "price": 40000, @@ -31,7 +31,7 @@ "category": "armor", "looks_like": "armor_larmor", "name": { "str": "cardboard 'plate' armor" }, - "description": "A set of cardboard armor that's been duct taped and superglued into place, with paper padding the interior in an unsuccessful attempt to increase comfort. Despite the triple-layering, tensile and shear strength diagrams, and careful design considerations, there's just no way this is going to hold up to a single attack.", + "description": "A set of cardboard armor that's been duct taped and superglued into place, with paper padding the interior in an unsuccessful attempt to increase comfort. Despite the triple-layering, tensile and shear strength diagrams, and careful design considerations, there's just no way this is going to hold up to a single attack.", "weight": "3450 g", "volume": "17500 ml", "price": 0, @@ -81,7 +81,7 @@ "looks_like": "hoodie_brown", "name": { "str": "cardboard cuirass", "str_pl": "cardboard cuirasses" }, "category": "armor", - "description": "While this isn't quite the 'heavy ballistic vest' the blueprints pretend it is, the layering makes it almost passable as a form of extremely rudimentary armor. It's still nowhere near as good as basically any other choice, while still being hard to move around in.", + "description": "While this isn't quite the 'heavy ballistic vest' the blueprints pretend it is, the layering makes it almost passable as a form of extremely rudimentary armor. It's still nowhere near as good as basically any other choice, while still being hard to move around in.", "weight": "2105 g", "volume": "6 L", "price": 0, @@ -123,8 +123,8 @@ { "id": "cardboard_crown_loose", "type": "ARMOR", - "name": { "str": "cardboard crown (loosened)" }, - "description": "A piece of cardboard crudely bent into shape and cut to look like a crown. This one's been loosened up somewhat, allowing it to be worn over some headgear comfortably.", + "name": { "str": "cardboard crown (loosened)", "str_pl": "cardboard crowns (loosened)" }, + "description": "A piece of cardboard crudely bent into shape and cut to look like a crown. This one's been loosened up somewhat, allowing it to be worn over some headgear comfortably.", "copy-from": "cardboard_crown", "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE", "OUTER", "POWERARMOR_COMPATIBLE", "SOFT" ], "use_action": { "type": "transform", "menu_text": "Adjust", "target": "cardboard_crown", "msg": "You adjust your cardboard crown." } @@ -134,7 +134,7 @@ "copy-from": "badge_abstract", "type": "ARMOR", "name": { "str": "cardboard badge" }, - "description": "An honorable badge identifying the owner as a \"Knight Errant\" of \"House Da\". The large letters slowly dwindle in size as the badge runs out of space, leaving out the last two letters of Dino Dave's name.", + "description": "An honorable badge identifying the owner as a \"Knight Errant\" of \"House Da\". The large letters slowly dwindle in size as the badge runs out of space, leaving out the last two letters of Dino Dave's name.", "flags": [ "WATER_DISSOLVE", "FRAGILE_MELEE", "NO_WEAR_EFFECT", "FRAGILE" ] } ] diff --git a/data/json/items/melee/cardboard.json b/data/json/items/melee/cardboard.json index de53352e27fab..140c1a710ef41 100644 --- a/data/json/items/melee/cardboard.json +++ b/data/json/items/melee/cardboard.json @@ -5,8 +5,8 @@ "symbol": "!", "color": "brown", "looks_like": "sword_wood", - "name": { "str": "cardboard \"sword\"" }, - "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon. ", + "name": { "str": "cardboard \"sword\"", "str_pl": "cardboard \"swords\"" }, + "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon. ", "material": [ "cardboard" ], "volume": "2400 ml", "weight": "500 g", @@ -24,8 +24,8 @@ "symbol": "!", "color": "brown", "looks_like": "spear_wood", - "name": { "str": "cardboard \"spear\"" }, - "description": "Six aluminium foil rolls glued together, with a tip made out of cardboard sheets shaped to resemble a point. Not very practical.", + "name": { "str": "cardboard \"spear\"", "str_pl": "cardboard \"spears\"" }, + "description": "Six aluminium foil rolls glued together, with a tip made out of cardboard sheets shaped to resemble a point. Not very practical.", "material": [ "cardboard" ], "volume": "2400 ml", "weight": "700 g", From b65238c31d06a6859570083ceb929cabb1a1221a Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Sat, 2 Mar 2024 18:06:51 -0300 Subject: [PATCH 04/15] Update data/json/recipes/nested.json Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- data/json/recipes/nested.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index bb22b6ce8897b..35b488feb2f6d 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7122,7 +7122,7 @@ "description": "Recipes related to the construction of cardboard 'weaponry''.", "skill_used": "fabrication", "nested_category_data": [ "sword_cardboard", "spear_cardboard" ], - "difficulty": 1 + "difficulty": 1 }, { "id": "nested_bullet_necklaces", From 59a5074373e197c9f0ecc4b1f01a1717acd98a1d Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Sat, 2 Mar 2024 22:31:03 -0300 Subject: [PATCH 05/15] Grammar --- .../surface_refugees/NPC_Dino_Dave.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json index 44eadb775337f..414caba46dd91 100644 --- a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json +++ b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json @@ -10,7 +10,7 @@ "type": "dialogue", "context": "dave", "value": "finished", - "yes": "\" We hope our gift to you will help repay our great debt. \"\u0020", + "yes": "\" We hope our gift to you will help repay our great debt.\"\u0020", "no": "\"We owe you a great debt for your actions of the past. Some day, we shall repay it. Until then, you are welcome here, now and always.\"\u0020" } ] @@ -95,25 +95,25 @@ { "type": "talk_topic", "id": "TALK_DINODAVE_Cardboard", - "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", - "responses": [ { "text": "Uh... you there?.", "topic": "TALK_DINODAVE_Gift" } ] + "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", + "responses": [ { "text": "Uh, you there?.", "topic": "TALK_DINODAVE_Gift" } ] }, { "type": "talk_topic", "id": "TALK_DINODAVE_Gift", - "dynamic_line": "\"You've given us an idea, a way we could repay a small fraction of your aid. Come back in a day, and your blessing will be here for you.\"", + "dynamic_line": "\"You've given us an idea, a way we could repay a small fraction of your aid. Come back in a day, and your blessing will be here for you.\"", "responses": [ { "text": "See you in a day, then.", "topic": "TALK_DINODAVE_Gift_Bye" } ] }, { "type": "talk_topic", "id": "TALK_DINODAVE_Gift_Bye", - "dynamic_line": "\"Make sure you don't let the sandman in. He can't be trusted.\"", + "dynamic_line": "\"Make sure you don't let the sandman in. He can't be trusted.\"", "responses": [ { "text": "Always good to catch up, Dave. Keep on being you.", "topic": "TALK_DONE" } ] }, { "type": "talk_topic", "id": "TALK_DINODAVE_Gift_Given", - "dynamic_line": "\"Indeed, my knight. I was hesitant to grant you this power, but you have proven your worth and fealty many times over. Make sure it does not fall into the wrong hands. May it help you on your journey.\"", + "dynamic_line": "\"Indeed, my knight. I was hesitant to grant you this power, but you have proven your worth and fealty many times over. Make sure it does not fall into the wrong hands. May it help you on your journey.\"", "responses": [ { "text": "[Take the gift.]", From f98c5574f885cf466fc0ab442019ca07001d7c32 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Tue, 5 Mar 2024 21:35:01 -0300 Subject: [PATCH 06/15] Apply suggestions from code review --- data/json/items/book/fabrication.json | 2 +- data/json/items/melee/cardboard.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/data/json/items/book/fabrication.json b/data/json/items/book/fabrication.json index 417f7b0c66d7f..8f6b11dedd9ca 100644 --- a/data/json/items/book/fabrication.json +++ b/data/json/items/book/fabrication.json @@ -749,7 +749,7 @@ "type": "BOOK", "category": "manuals", "name": { "str": "Dino Dave's cardboard notebook", "str_pl": "copies of Dino Dave's cardboard notebook" }, - "description": "This school notebook contains an astounding amount of \"recipes\" of various cardboard utilities, ranging from the wholly impractical to completely impossible. Despite that, they're illustrated in a surprisingly thorough manner, to the point where you could possibly learn something from studying the chicken scratch and schematics in detail. The last page thanks a number of names, some of which you recognize from the refugee center. Your name covers half the page. At the bottom, it warns you not to let \"the sandman\" read it.", + "description": "This school notebook contains an astounding amount of \"recipes\" of various cardboard utilities, ranging from the wholly impractical to completely impossible. Despite that, they're illustrated in a surprisingly thorough manner, to the point where you could possibly learn something from studying the chicken scratch and schematics in detail. The last page thanks a number of names, some of which you recognize from the refugee center. Your name covers half the page. At the bottom, it warns you not to let \"the sandman\" read it.", "weight": "600 g", "volume": "500 ml", "price": 0, diff --git a/data/json/items/melee/cardboard.json b/data/json/items/melee/cardboard.json index 140c1a710ef41..043ae9ee16b58 100644 --- a/data/json/items/melee/cardboard.json +++ b/data/json/items/melee/cardboard.json @@ -6,7 +6,7 @@ "color": "brown", "looks_like": "sword_wood", "name": { "str": "cardboard \"sword\"", "str_pl": "cardboard \"swords\"" }, - "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon. ", + "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon.", "material": [ "cardboard" ], "volume": "2400 ml", "weight": "500 g", From acd63cb46fdac7caadf88a1b11d3579a91439e52 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Tue, 5 Mar 2024 22:43:21 -0300 Subject: [PATCH 07/15] Apply suggestions from code review --- data/json/items/book/fabrication.json | 2 +- .../npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/data/json/items/book/fabrication.json b/data/json/items/book/fabrication.json index 8f6b11dedd9ca..4c15afc35476e 100644 --- a/data/json/items/book/fabrication.json +++ b/data/json/items/book/fabrication.json @@ -749,7 +749,7 @@ "type": "BOOK", "category": "manuals", "name": { "str": "Dino Dave's cardboard notebook", "str_pl": "copies of Dino Dave's cardboard notebook" }, - "description": "This school notebook contains an astounding amount of \"recipes\" of various cardboard utilities, ranging from the wholly impractical to completely impossible. Despite that, they're illustrated in a surprisingly thorough manner, to the point where you could possibly learn something from studying the chicken scratch and schematics in detail. The last page thanks a number of names, some of which you recognize from the refugee center. Your name covers half the page. At the bottom, it warns you not to let \"the sandman\" read it.", + "description": "This school notebook contains an astounding amount of \"recipes\" of various cardboard utilities, ranging from the wholly impractical to completely impossible. Despite that, they're illustrated in a surprisingly thorough manner, to the point where you could possibly learn something from studying the chicken scratch and schematics in detail. The last page thanks a number of names, some of which you recognize from the refugee center. Your name covers half the page. At the bottom, it warns you not to let \"the sandman\" read it.", "weight": "600 g", "volume": "500 ml", "price": 0, diff --git a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json index 414caba46dd91..77b6293035a01 100644 --- a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json +++ b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json @@ -4,7 +4,7 @@ "id": "TALK_DINODAVE_1", "dynamic_line": { "concatenate": [ - "*sits in a surprisingly well-built room made of lovingly assembled cardboard boxes. The area is quite clean and cozy. The whole building is built on top of cargo pallets, insulated with scraps, and waterproofed with plastic. It shows an unexpected amount of design prowess. \"Hello, my noble knight errant,\" Dave intones, his voice solemn.\u0020", + "*sits in a surprisingly well-built room made of lovingly assembled cardboard boxes. The area is quite clean and cozy. The whole building is built on top of cargo pallets, insulated with scraps, and waterproofed with plastic. It shows an unexpected amount of design prowess. \"Hello, my noble knight errant,\" Dave intones, his voice solemn.", { "u_has_var": "u_cardboard_gift", "type": "dialogue", @@ -95,8 +95,8 @@ { "type": "talk_topic", "id": "TALK_DINODAVE_Cardboard", - "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", - "responses": [ { "text": "Uh, you there?.", "topic": "TALK_DINODAVE_Gift" } ] + "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", + "responses": [ { "text": "Uh, you there?", "topic": "TALK_DINODAVE_Gift" } ] }, { "type": "talk_topic", From 585723acd53f3c7940a57d2aacb3976008e44e33 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Thu, 7 Mar 2024 17:03:44 -0300 Subject: [PATCH 08/15] Update data/json/items/armor/cardboard.json --- data/json/items/armor/cardboard.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/items/armor/cardboard.json b/data/json/items/armor/cardboard.json index 962ea90598b56..d20f1528a2eaa 100644 --- a/data/json/items/armor/cardboard.json +++ b/data/json/items/armor/cardboard.json @@ -102,7 +102,7 @@ "type": "ARMOR", "name": { "str": "cardboard crown" }, "description": "A piece of cardboard crudely bent into shape and cut to look like a crown.", - "weight": "280 g", + "weight": "480 g", "volume": "100 ml", "price": 0, "price_postapoc": 0, From 1612da5c596b71d7079ec075ad6fc086ee441e74 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Fri, 8 Mar 2024 10:21:31 -0300 Subject: [PATCH 09/15] Update data/json/items/armor/cardboard.json --- data/json/items/armor/cardboard.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/items/armor/cardboard.json b/data/json/items/armor/cardboard.json index d20f1528a2eaa..519bba16b464b 100644 --- a/data/json/items/armor/cardboard.json +++ b/data/json/items/armor/cardboard.json @@ -102,7 +102,7 @@ "type": "ARMOR", "name": { "str": "cardboard crown" }, "description": "A piece of cardboard crudely bent into shape and cut to look like a crown.", - "weight": "480 g", + "weight": "200 g", "volume": "100 ml", "price": 0, "price_postapoc": 0, From 17a0638ddde42cbe48e3a2d194424db7bc72cde4 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Fri, 8 Mar 2024 15:06:48 -0300 Subject: [PATCH 10/15] removed random asterisk --- data/json/recipes/nested.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index 35b488feb2f6d..cad091fc982af 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7104,7 +7104,7 @@ "id": "nested_cardboard_armor", "type": "nested_category", "activity_level": "LIGHT_EXERCISE", - "category": "CC_ARMOR*", + "category": "CC_ARMOR", "subcategory": "CSC_ARMOR_SUIT", "name": "cardboard armor", "description": "Recipes related to the construction of cardboard armor.", From 1ea5688327ddbbe1f79cb4ce7fbe908dd9135655 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Mon, 11 Mar 2024 23:48:52 -0500 Subject: [PATCH 11/15] Apply suggestions from code review --- data/json/items/book/fabrication.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/json/items/book/fabrication.json b/data/json/items/book/fabrication.json index 4c15afc35476e..02ebee9bf6b4c 100644 --- a/data/json/items/book/fabrication.json +++ b/data/json/items/book/fabrication.json @@ -759,8 +759,8 @@ "looks_like": "mag_glam", "color": "brown_yellow", "skill": "fabrication", - "required_level": 4, - "max_level": 6, + "required_level": 2, + "max_level": 3, "intelligence": 14, "time": "20 m", "fun": -1 From 1db5503ff3a4900aa56615fa251badaa77875a17 Mon Sep 17 00:00:00 2001 From: carlarctg <53100513+carlarctg@users.noreply.github.com> Date: Sat, 16 Mar 2024 14:58:28 -0300 Subject: [PATCH 12/15] Apply suggestions from code review Co-authored-by: casswedson <58050969+casswedson@users.noreply.github.com> --- .../npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json | 6 +++--- data/json/recipes/nested.json | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json index 77b6293035a01..1618a1d9f3950 100644 --- a/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json +++ b/data/json/npcs/refugee_center/surface_refugees/NPC_Dino_Dave.json @@ -10,8 +10,8 @@ "type": "dialogue", "context": "dave", "value": "finished", - "yes": "\" We hope our gift to you will help repay our great debt.\"\u0020", - "no": "\"We owe you a great debt for your actions of the past. Some day, we shall repay it. Until then, you are welcome here, now and always.\"\u0020" + "yes": "\"We hope our gift to you will help repay our great debt.\"", + "no": "\"We owe you a great debt for your actions of the past. Some day, we shall repay it. Until then, you are welcome here, now and always.\"" } ] }, @@ -95,7 +95,7 @@ { "type": "talk_topic", "id": "TALK_DINODAVE_Cardboard", - "dynamic_line": "* bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", + "dynamic_line": "*bows deeply. \"Thank you. Our expertise with the most sacred of materials comes from a past long gone.\" He gazes off into the distance, lost in thought. You wait, but he doesn't talk again.", "responses": [ { "text": "Uh, you there?", "topic": "TALK_DINODAVE_Gift" } ] }, { diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index cad091fc982af..8e69d1d4b2dc2 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7107,7 +7107,7 @@ "category": "CC_ARMOR", "subcategory": "CSC_ARMOR_SUIT", "name": "cardboard armor", - "description": "Recipes related to the construction of cardboard armor.", + "description": "Recipes related to the construction of cardboard 'armor'.", "skill_used": "fabrication", "nested_category_data": [ "helmet_cardboard", "armor_cardboard", "armor_cardboard_cuirass", "cardboard_shield", "cardboard_crown" ], "difficulty": 1 @@ -7119,7 +7119,7 @@ "category": "CC_WEAPON", "subcategory": "CSC_WEAPON_BASHING", "name": "cardboard weapons", - "description": "Recipes related to the construction of cardboard 'weaponry''.", + "description": "Recipes related to the construction of cardboard 'weaponry'.", "skill_used": "fabrication", "nested_category_data": [ "sword_cardboard", "spear_cardboard" ], "difficulty": 1 From 3fdb8cb488823a00d7acb090ef24edff2ca4dd53 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 21 Mar 2024 19:15:48 -0500 Subject: [PATCH 13/15] Delete data/json/items/melee/cardboard.json To make Erk's request to you easy if you'd like --- data/json/items/melee/cardboard.json | 42 ---------------------------- 1 file changed, 42 deletions(-) delete mode 100644 data/json/items/melee/cardboard.json diff --git a/data/json/items/melee/cardboard.json b/data/json/items/melee/cardboard.json deleted file mode 100644 index 043ae9ee16b58..0000000000000 --- a/data/json/items/melee/cardboard.json +++ /dev/null @@ -1,42 +0,0 @@ -[ - { - "type": "GENERIC", - "id": "sword_cardboard", - "symbol": "!", - "color": "brown", - "looks_like": "sword_wood", - "name": { "str": "cardboard \"sword\"", "str_pl": "cardboard \"swords\"" }, - "description": "A roll that formerly housed toilet paper or duct tape functions as the grip, with a single piece of cardboard acting as the handguard that separates two aluminium foil rolls, which pretend to be a blade. Needless to say, this is not a particularly useful weapon.", - "material": [ "cardboard" ], - "volume": "2400 ml", - "weight": "500 g", - "longest_side": "100 cm", - "to_hit": { "grip": "none", "length": "long", "surface": "any", "balance": "neutral" }, - "price_postapoc": 0, - "flags": [ "BELT_CLIP", "WATER_DISSOLVE" ], - "weapon_category": [ "MEDIUM_SWORDS" ], - "techniques": [ "WBLOCK_1" ], - "melee_damage": { "bash": 1, "cut": 0 } - }, - { - "type": "GENERIC", - "id": "spear_cardboard", - "symbol": "!", - "color": "brown", - "looks_like": "spear_wood", - "name": { "str": "cardboard \"spear\"", "str_pl": "cardboard \"spears\"" }, - "description": "Six aluminium foil rolls glued together, with a tip made out of cardboard sheets shaped to resemble a point. Not very practical.", - "material": [ "cardboard" ], - "volume": "2400 ml", - "weight": "700 g", - "longest_side": "180 cm", - "to_hit": { "grip": "none", "length": "long", "surface": "point", "balance": "neutral" }, - "flags": [ "SPEAR", "REACH_ATTACK", "NPC_THROWN", "SHEATH_SPEAR", "WATER_DISSOLVE" ], - "weapon_category": [ "POLEARMS", "SPEARS" ], - "price": 400, - "qualities": [ [ "COOK", 1 ] ], - "price_postapoc": 0, - "techniques": [ "WBLOCK_1" ], - "melee_damage": { "bash": 1, "cut": 1 } - } -] From cfc2e29c82c9d9fa516b6d60fecc4a3113ea26c7 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 21 Mar 2024 19:16:16 -0500 Subject: [PATCH 14/15] Delete data/json/recipes/weapon/cardboard.json Same as before --- data/json/recipes/weapon/cardboard.json | 37 ------------------------- 1 file changed, 37 deletions(-) delete mode 100644 data/json/recipes/weapon/cardboard.json diff --git a/data/json/recipes/weapon/cardboard.json b/data/json/recipes/weapon/cardboard.json deleted file mode 100644 index 68c14c05ff55a..0000000000000 --- a/data/json/recipes/weapon/cardboard.json +++ /dev/null @@ -1,37 +0,0 @@ -[ - { - "result": "sword_cardboard", - "type": "recipe", - "activity_level": "LIGHT_EXERCISE", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_BASHING", - "skill_used": "fabrication", - "time": "30 m", - "autolearn": false, - "book_learn": [ [ "recipe_dave_manual", 0 ] ], - "using": [ [ "adhesive", 3 ] ], - "qualities": [ { "id": "CUT", "level": 1 } ], - "//": "Grip, handguard, and 'blade', respectively.", - "components": [ - [ [ "cardboard_roll", 1 ], [ "wrapper_foil_roll", 1 ] ], - [ [ "cardboard", 5 ], [ "box_small", 1 ], [ "box_small_folded", 1 ] ], - [ [ "wrapper_foil_roll", 2 ] ] - ] - }, - { - "result": "spear_cardboard", - "type": "recipe", - "activity_level": "LIGHT_EXERCISE", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_PIERCING", - "skill_used": "fabrication", - "difficulty": 1, - "time": "30 m", - "autolearn": false, - "book_learn": [ [ "recipe_dave_manual", 0 ] ], - "using": [ [ "adhesive", 6 ] ], - "qualities": [ { "id": "CUT", "level": 1 } ], - "//": "The shaft and then the cardboard tip.", - "components": [ [ [ "wrapper_foil_roll", 6 ] ], [ [ "cardboard", 5 ], [ "box_small", 1 ], [ "box_small_folded", 1 ] ] ] - } -] From cc37a5c789d5542349f76de744e4c27c8973f151 Mon Sep 17 00:00:00 2001 From: Maleclypse <54345792+Maleclypse@users.noreply.github.com> Date: Thu, 21 Mar 2024 19:16:49 -0500 Subject: [PATCH 15/15] Update data/json/recipes/nested.json --- data/json/recipes/nested.json | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/data/json/recipes/nested.json b/data/json/recipes/nested.json index 8e69d1d4b2dc2..0b08dc94b0d6d 100644 --- a/data/json/recipes/nested.json +++ b/data/json/recipes/nested.json @@ -7112,18 +7112,6 @@ "nested_category_data": [ "helmet_cardboard", "armor_cardboard", "armor_cardboard_cuirass", "cardboard_shield", "cardboard_crown" ], "difficulty": 1 }, - { - "id": "nested_cardboard_weapons", - "type": "nested_category", - "activity_level": "LIGHT_EXERCISE", - "category": "CC_WEAPON", - "subcategory": "CSC_WEAPON_BASHING", - "name": "cardboard weapons", - "description": "Recipes related to the construction of cardboard 'weaponry'.", - "skill_used": "fabrication", - "nested_category_data": [ "sword_cardboard", "spear_cardboard" ], - "difficulty": 1 - }, { "id": "nested_bullet_necklaces", "type": "nested_category",