From 7275d44836e7b76f6af2bd570d6c9109775884e8 Mon Sep 17 00:00:00 2001 From: Aaron Chancey <abchiptop@gmail.com> Date: Sun, 30 Jan 2022 00:51:39 -0500 Subject: [PATCH] Genericize fabric (#54308) * Genericize Fabric This converts all fabric from ammo to generic and will likely upset some people, but i need to do it to continue the standardization of fabrics. * Boosting a few spawns in clothing store SUS group Clothing store SUS group spawns were a bit low given the upcoming changes and the removal of charges. I'm going to review other spawns as I go forward with the rest of the tailoring changes as well, but this seems to be a good start based on my testing, since they don't spawn with a bunch of charges any more and are used individually. * Migrating with new charge to items migration Got all the fabric items that were AMMO moved to the charge migration blacklist. Fixed my placement of faux fur and felt patch in the main list. --- data/json/itemgroups/SUS/clothes_store.json | 12 +- data/json/items/resources/tailoring.json | 126 ++++++++------------ data/json/obsoletion/charge_removal.json | 63 +++++++++- data/json/recipes/other/materials.json | 5 - 4 files changed, 117 insertions(+), 89 deletions(-) diff --git a/data/json/itemgroups/SUS/clothes_store.json b/data/json/itemgroups/SUS/clothes_store.json index 7f7a73cbc6979..a15851fe5d016 100644 --- a/data/json/itemgroups/SUS/clothes_store.json +++ b/data/json/itemgroups/SUS/clothes_store.json @@ -104,10 +104,10 @@ "entries": [ { "item": "thread", "count": [ 2, 7 ], "prob": 75 }, { "item": "rag", "count": [ 10, 40 ], "prob": 75 }, - { "item": "sheet_cotton", "count": [ 1, 5 ], "prob": 70 }, - { "item": "sheet_felt", "count": [ 1, 5 ], "prob": 40 }, - { "item": "sheet_lycra", "count": [ 1, 5 ], "prob": 20 }, - { "item": "sheet_nylon", "count": [ 1, 5 ], "prob": 20 } + { "item": "sheet_cotton", "count": [ 10, 35 ], "prob": 70 }, + { "item": "sheet_felt", "count": [ 10, 25 ], "prob": 40 }, + { "item": "sheet_lycra", "count": [ 10, 35 ], "prob": 20 }, + { "item": "sheet_nylon", "count": [ 10, 35 ], "prob": 20 } ] }, { @@ -119,8 +119,8 @@ "entries": [ { "item": "thread", "count": [ 2, 7 ], "prob": 75 }, { "item": "rag", "count": [ 5, 15 ], "prob": 75 }, - { "item": "sheet_cotton", "count": [ 1, 2 ], "prob": 70 }, - { "item": "tanned_pelt", "count": [ 1, 7 ], "prob": 70 } + { "item": "sheet_cotton", "count": [ 10, 25 ], "prob": 70 }, + { "item": "tanned_pelt", "count": [ 5, 35 ], "prob": 70 } ] } ] diff --git a/data/json/items/resources/tailoring.json b/data/json/items/resources/tailoring.json index d46636ed1c6d7..a66f03e6ab0d0 100644 --- a/data/json/items/resources/tailoring.json +++ b/data/json/items/resources/tailoring.json @@ -14,7 +14,7 @@ }, { "id": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "category": "other", "name": { "str_sp": "cotton scraps" }, "description": "Oddly-shaped smallish bits of cotton, waste material from tailoring projects. Not useful for much and usually disposed of, but can be recycled into some thread if you really want.", @@ -25,13 +25,12 @@ "material": [ "cotton" ], "symbol": "=", "color": "dark_gray", - "ammo_type": "components", "flags": [ "NO_SALVAGE" ] }, { "id": "scrap_faux_fur", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "faux fur scraps" }, "description": "Oddly-shaped smallish bits of faux fur, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -41,7 +40,7 @@ { "id": "scrap_felt", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "felt scraps" }, "description": "Oddly-shaped smallish bits of felt, waste material from tailoring projects. Not useful for much and usually disposed of, but can be recycled into some wool fiber if you really want.", "material": [ "wool" ] @@ -49,7 +48,7 @@ { "id": "scrap_fur", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "fur scraps" }, "description": "Oddly-shaped smallish bits of fur, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -58,7 +57,7 @@ { "id": "scrap_kevlar", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "Kevlar scraps" }, "description": "Oddly-shaped smallish bits of Kevlar fabric, waste material from tailoring projects. Normally it's disposed of, but since Kevlar would be very difficult to make in a post-apocalyptic world, it might be worth recycling it for Kevlar thread.", "price": 5, @@ -67,7 +66,7 @@ { "id": "scrap_leather", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "leather scraps" }, "description": "Oddly-shaped smallish bits of leather, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -76,7 +75,7 @@ { "id": "scrap_lycra", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "Lycra scraps" }, "description": "Oddly-shaped smallish bits of Lycra, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -85,7 +84,7 @@ { "id": "scrap_neoprene", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "neoprene scraps" }, "description": "Oddly-shaped smallish bits of neoprene, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -94,7 +93,7 @@ { "id": "scrap_nylon", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "synthetic fabric scraps" }, "description": "Oddly-shaped smallish bits of synthetic fabric, waste material from tailoring projects. Not useful for much and usually disposed of.", "price": 0, @@ -103,14 +102,14 @@ { "id": "scrap_nomex", "copy-from": "scrap_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "Nomex scraps" }, "description": "Oddly-shaped smallish bits of heat-resistant Nomex fabric, waste material from tailoring projects. Normally it's disposed of, but since Nomex would be very difficult to make in a post-apocalyptic world, it might be worth recycling it.", "price": 5, "material": [ "nomex" ] }, { - "type": "AMMO", + "type": "GENERIC", "id": "fur", "symbol": ",", "color": "brown", @@ -122,11 +121,10 @@ "flags": [ "NO_SALVAGE" ], "weight": "114 g", "volume": "250 ml", - "category": "spare_parts", - "ammo_type": "components" + "category": "spare_parts" }, { - "type": "AMMO", + "type": "GENERIC", "id": "faux_fur", "copy-from": "fur", "color": "pink", @@ -137,7 +135,7 @@ "material": [ "faux_fur" ] }, { - "type": "AMMO", + "type": "GENERIC", "id": "leather", "symbol": ",", "color": "brown", @@ -149,11 +147,10 @@ "flags": [ "NO_SALVAGE" ], "weight": "100 g", "volume": "250 ml", - "category": "spare_parts", - "ammo_type": "components" + "category": "spare_parts" }, { - "type": "AMMO", + "type": "GENERIC", "id": "felt_patch", "symbol": ",", "color": "white", @@ -165,11 +162,10 @@ "flags": [ "NO_SALVAGE" ], "weight": "100 g", "volume": "250 ml", - "category": "spare_parts", - "ammo_type": "components" + "category": "spare_parts" }, { - "type": "AMMO", + "type": "GENERIC", "id": "nomex", "category": "spare_parts", "symbol": ",", @@ -181,8 +177,7 @@ "material": [ "nomex" ], "flags": [ "NO_SALVAGE" ], "weight": "42 g", - "volume": "250 ml", - "ammo_type": "components" + "volume": "250 ml" }, { "type": "GENERIC", @@ -246,7 +241,7 @@ }, { "id": "sheet_cotton", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "cotton sheet" }, "description": "A sheet of cotton fabric, suitable for making clothing.", @@ -257,26 +252,23 @@ "price_postapoc": 100, "material": [ "cotton" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_cotton_patchwork", "copy-from": "sheet_cotton", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork cotton sheet" }, "description": "A selection of various clothing parts, sewn together from cotton patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "100 g", "volume": "65 ml", "//density": "1.55 grams per mL", "price": 200, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "id": "sheet_faux_fur", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "faux fur sheet" }, "description": "A sheet of fake synthetic colorful fur, suitable for making clothing.", @@ -287,26 +279,23 @@ "price_postapoc": 100, "material": [ "faux_fur" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_faux_fur_patchwork", "copy-from": "sheet_faux_fur", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork faux fur clothing parts" }, "description": "A selection of various clothing parts, sewn together from faux fur patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "200 g", "volume": "450 ml", "//": "Guesstimated density of 0.44 grams per mL based on felt", "price": 1000, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "id": "sheet_felt", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "felt sheet" }, "description": "A sheet of felt, suitable for making clothing.", @@ -317,26 +306,23 @@ "price_postapoc": 250, "material": [ "wool" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_felt_patchwork", "copy-from": "sheet_felt", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork felt clothing parts" }, "description": "A selection of various clothing parts, sewn together from felt patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "160 g", "volume": "360 ml", "//": "Density of 0.44 grams per mL", "price": 500, - "price_postapoc": 100, - "count": 1 + "price_postapoc": 100 }, { "id": "sheet_kevlar", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "Kevlar sheet" }, "description": "A sheet of Kevlar synthetic fabric, suitable for making cut-resistant, durable clothing. In this form, unlike rigid plates, it can be stitched.", @@ -347,13 +333,11 @@ "price_postapoc": 500, "material": [ "kevlar" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_lycra", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "Lycra sheet" }, "description": "A sheet of synthetic fabric blended with stretchy Lycra fibers, suitable for making flexible yet strong clothing.", @@ -364,9 +348,7 @@ "price_postapoc": 100, "material": [ "lycra" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_kevlar_layered", @@ -401,19 +383,18 @@ { "id": "sheet_lycra_patchwork", "copy-from": "sheet_lycra", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork Lycra clothing parts" }, "description": "A selection of various clothing parts, sewn together from Lycra patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "60 g", "volume": "45 ml", "//": "Density of 1.21-1.35 grams per mL, using 1.28", "price": 1000, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "id": "sheet_neoprene", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "neoprene sheet" }, "description": "A sheet of neoprene, a synthetic rubber, suitable for making underwater gear.", @@ -424,26 +405,23 @@ "price_postapoc": 100, "material": [ "neoprene" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_neoprene_patchwork", "copy-from": "sheet_neoprene", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork neoprene clothing parts" }, "description": "A selection of various clothing parts, sewn together from neoprene patches in a patchwork fashion, with waterproofed seams. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "120 g", "volume": "100 ml", "//": "Density of 1.23 grams per mL", "price": 1000, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "id": "sheet_nomex", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "Nomex sheet" }, "description": "A sheet of Nomex synthetic fabric, suitable for making heat-resistant clothing.", @@ -454,26 +432,23 @@ "price_postapoc": 250, "material": [ "nomex" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_nomex_patchwork", "copy-from": "sheet_nomex", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork Nomex clothing parts" }, "description": "A selection of various clothing parts, sewn together with Nomex thread from Nomex patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "100 g", "volume": "110 ml", "//": "Density of 0.72-1.1 grams per mL, using 0.91", "price": 3000, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "id": "sheet_nylon", - "type": "AMMO", + "type": "GENERIC", "category": "spare_parts", "name": { "str": "synthetic fabric sheet" }, "description": "A sheet of synthetic fabric, suitable for making clothing.", @@ -484,22 +459,19 @@ "price_postapoc": 100, "material": [ "nylon" ], "symbol": "=", - "color": "dark_gray", - "count": 100, - "ammo_type": "components" + "color": "dark_gray" }, { "id": "sheet_nylon_patchwork", "copy-from": "sheet_nylon", - "type": "AMMO", + "type": "GENERIC", "name": { "str_sp": "patchwork synthetic fabric clothing parts" }, "description": "A selection of various clothing parts, sewn together from synthetic fabric patches in a patchwork fashion. Suitable for making most clothing, though it's much less time-efficient than if using proper material sheets.", "weight": "60 g", "volume": "50 ml", "//": "Density of 1.15 grams per mL", "price": 1000, - "price_postapoc": 50, - "count": 1 + "price_postapoc": 50 }, { "type": "AMMO", diff --git a/data/json/obsoletion/charge_removal.json b/data/json/obsoletion/charge_removal.json index c881c1353f4f5..b6a1dbc78afb7 100644 --- a/data/json/obsoletion/charge_removal.json +++ b/data/json/obsoletion/charge_removal.json @@ -1,7 +1,38 @@ [ { "type": "charge_migration_blacklist", - "list": [ ] + "list": [ + "faux_fur", + "felt_patch", + "fur", + "leather", + "nomex", + "scrap_cotton", + "scrap_faux_fur", + "scrap_felt", + "scrap_fur", + "scrap_kevlar", + "scrap_leather", + "scrap_lycra", + "scrap_neoprene", + "scrap_nylon", + "scrap_nomex", + "sheet_cotton", + "sheet_cotton_patchwork", + "sheet_faux_fur", + "sheet_faux_fur_patchwork", + "sheet_felt", + "sheet_felt_patchwork", + "sheet_kevlar", + "sheet_lycra", + "sheet_lycra_patchwork", + "sheet_neoprene", + "sheet_neoprene_patchwork", + "sheet_nomex", + "sheet_nomex_patchwork", + "sheet_nylon", + "sheet_nylon_patchwork" + ] }, { "type": "charge_removal_blacklist", @@ -61,6 +92,8 @@ "electric_lantern_on", "esbit_stove", "extinguisher", + "faux_fur", + "felt_patch", "fish_trap", "flashlight", "flashlight_on", @@ -70,6 +103,7 @@ "food_processor", "forge", "frisbee", + "fur", "game_watch", "gasoline_cooker", "gasoline_lantern", @@ -102,6 +136,7 @@ "laptop", "large_repairkit", "lawn_dart", + "leather", "light_battery_cell", "light_disposable_cell", "light_minus_battery_cell", @@ -145,6 +180,7 @@ "needle_wood", "noise_emitter", "noise_emitter_on", + "nomex", "oil_cooker", "oil_lamp", "oil_lamp_on", @@ -179,8 +215,33 @@ "rx12_injector", "saxophone", "scuba_tank", + "scrap_cotton", + "scrap_faux_fur", + "scrap_felt", + "scrap_fur", + "scrap_kevlar", + "scrap_leather", + "scrap_lycra", + "scrap_neoprene", + "scrap_nylon", + "scrap_nomex", "sewing_kit", "shavingkit", + "sheet_cotton", + "sheet_cotton_patchwork", + "sheet_faux_fur", + "sheet_faux_fur_patchwork", + "sheet_felt", + "sheet_felt_patchwork", + "sheet_kevlar", + "sheet_lycra", + "sheet_lycra_patchwork", + "sheet_neoprene", + "sheet_neoprene_patchwork", + "sheet_nomex", + "sheet_nomex_patchwork", + "sheet_nylon", + "sheet_nylon_patchwork", "signed_chit", "sm_extinguisher", "small_repairkit", diff --git a/data/json/recipes/other/materials.json b/data/json/recipes/other/materials.json index 124b50ede1535..bfe7bbfeca8bf 100644 --- a/data/json/recipes/other/materials.json +++ b/data/json/recipes/other/materials.json @@ -500,7 +500,6 @@ "skill_used": "tailor", "difficulty": 2, "time": "10 m", - "charges": 1, "autolearn": true, "proficiencies": [ { "proficiency": "prof_weaving" } ], "tools": [ [ [ "loom_frame", -1 ] ], [ [ "shed_stick", -1 ] ] ], @@ -517,7 +516,6 @@ "skill_used": "tailor", "batch_time_factors": [ 70, 1 ], "time": "30 s", - "charges": 1, "autolearn": true, "proficiencies": [ { "proficiency": "prof_weaving" } ], "tools": [ [ [ "spinwheelitem", -1 ] ] ], @@ -535,7 +533,6 @@ "//time2": "also this was probably created originally before the proficiencies system", "//time3": "so that might explain the time, not sure which proficiencies it should use though", "time": "270 m", - "charges": 4, "autolearn": true, "qualities": [ { "id": "SEW", "level": 1 }, { "id": "CUT", "level": 2 } ], "components": [ [ [ "cotton_patchwork", 4 ] ], [ [ "filament", 15, "LIST" ] ] ] @@ -548,7 +545,6 @@ "subcategory": "CSC_OTHER_MATERIALS", "skill_used": "tailor", "time": "270 m", - "charges": 4, "autolearn": true, "qualities": [ { "id": "SEW_CURVED", "level": 1 }, { "id": "CUT", "level": 2 } ], "components": [ [ [ "neoprene", 5 ] ], [ [ "filament", 15, "LIST" ] ] ] @@ -561,7 +557,6 @@ "subcategory": "CSC_OTHER_MATERIALS", "skill_used": "tailor", "time": "270 m", - "charges": 4, "autolearn": true, "qualities": [ { "id": "SEW_CURVED", "level": 1 }, { "id": "CUT", "level": 2 } ], "components": [ [ [ "nomex", 5 ] ], [ [ "thread_nomex", 15 ] ] ]