diff options
| author | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2022-02-02 16:43:51 -0800 | 
|---|---|---|
| committer | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2022-02-02 16:43:51 -0800 | 
| commit | 6bd924a6320887576ca79cd93dcb99cc674e22a9 (patch) | |
| tree | 973440c3beaea7af6870a5b7f3fadc060bfdaa26 | |
| parent | Adding the name not required for copy-from martialarts (diff) | |
| download | cataclysm-dda-mod_hk-loadout-6bd924a6320887576ca79cd93dcb99cc674e22a9.tar.xz | |
Fix 000 shot ordering so as to not place types before their copy-froms.
Convert guns to use str_sp instead of str.
Convert ammo types and materials to arrays.
Various formatting changes to recipes to ease readability.
Fix factory loaded 000shot uncraft from providing less materials than a reloaded.
| -rw-r--r-- | json/items/ammo/000shot.json | 72 | ||||
| -rw-r--r-- | json/items/ammo/46.json | 3 | ||||
| -rw-r--r-- | json/items/generic/casing.json | 4 | ||||
| -rw-r--r-- | json/items/gun/000shot.json | 4 | ||||
| -rw-r--r-- | json/items/gun/223.json | 6 | ||||
| -rw-r--r-- | json/items/gun/308.json | 6 | ||||
| -rw-r--r-- | json/items/gun/40.json | 2 | ||||
| -rw-r--r-- | json/items/gun/45.json | 4 | ||||
| -rw-r--r-- | json/items/gun/46.json | 6 | ||||
| -rw-r--r-- | json/items/gun/473.json | 4 | ||||
| -rw-r--r-- | json/items/gun/9mm.json | 6 | ||||
| -rw-r--r-- | json/items/magazine/000shot.json | 8 | ||||
| -rw-r--r-- | json/items/magazine/223.json | 6 | ||||
| -rw-r--r-- | json/items/magazine/308.json | 4 | ||||
| -rw-r--r-- | json/items/magazine/40.json | 2 | ||||
| -rw-r--r-- | json/items/magazine/46.json | 18 | ||||
| -rw-r--r-- | json/items/magazine/473.json | 2 | ||||
| -rw-r--r-- | json/recipes/000shot.json | 20 | ||||
| -rw-r--r-- | json/uncraft/000shot.json | 21 | 
19 files changed, 111 insertions, 87 deletions
diff --git a/json/items/ammo/000shot.json b/json/items/ammo/000shot.json index 1f227eb..7b9dde7 100644 --- a/json/items/ammo/000shot.json +++ b/json/items/ammo/000shot.json @@ -1,41 +1,5 @@  [    { -    "id": "reloaded_shot_000", -    "copy-from": "shot_000", -    "type": "AMMO", -    "name": { "str": "000 shot, reloaded" }, -    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, -    "extend": { "effects": [ "RECYCLED" ] }, -    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } -  }, -  { -    "id": "reloaded_shot_000_flechette", -    "copy-from": "shot_000_flechette", -    "type": "AMMO", -    "name": { "str": "000 flechette shell, reloaded" }, -    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, -    "extend": { "effects": [ "RECYCLED" ] }, -    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } -  }, -  { -    "id": "reloaded_shot_000_slug", -    "copy-from": "shot_000_slug", -    "type": "AMMO", -    "name": { "str": "000 shotgun slug, reloaded" }, -    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, -    "extend": { "effects": [ "RECYCLED" ] }, -    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } -  }, -  { -    "id": "reloaded_shot_000_inc", -    "copy-from": "shot_000_inc", -    "type": "AMMO", -    "name": { "str": "000 incendiary shell, reloaded" }, -    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, -    "extend": { "effects": [ "RECYCLED" ] }, -    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } -  }, -  {      "id": "shot_000",      "type": "AMMO",      "looks_like": "shot_00", @@ -121,5 +85,41 @@      "proportional": { "damage": { "damage_type": "stab", "amount": 0.25, "armor_penetration": 0.25 } },      "delete": { "effects": [ "SHOT" ] },      "extend": { "effects": [ "EXPLOSIVE_TINY" ] } +  }, +  { +    "id": "reloaded_shot_000", +    "copy-from": "shot_000", +    "type": "AMMO", +    "name": { "str": "000 shot, reloaded" }, +    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, +    "extend": { "effects": [ "RECYCLED" ] }, +    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } +  }, +  { +    "id": "reloaded_shot_000_flechette", +    "copy-from": "shot_000_flechette", +    "type": "AMMO", +    "name": { "str": "000 flechette shell, reloaded" }, +    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, +    "extend": { "effects": [ "RECYCLED" ] }, +    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } +  }, +  { +    "id": "reloaded_shot_000_slug", +    "copy-from": "shot_000_slug", +    "type": "AMMO", +    "name": { "str": "000 shotgun slug, reloaded" }, +    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, +    "extend": { "effects": [ "RECYCLED" ] }, +    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] } +  }, +  { +    "id": "reloaded_shot_000_inc", +    "copy-from": "shot_000_inc", +    "type": "AMMO", +    "name": { "str": "000 incendiary shell, reloaded" }, +    "proportional": { "price": 0.7, "damage": { "damage_type": "stab", "amount": 0.9 }, "dispersion": 1.1 }, +    "extend": { "effects": [ "RECYCLED" ] }, +    "delete": { "effects": [ "NEVER_MISFIRES" ], "flags": [ "IRREPLACEABLE_CONSUMABLE" ] }    }  ] diff --git a/json/items/ammo/46.json b/json/items/ammo/46.json index 859f275..e0dd5a7 100644 --- a/json/items/ammo/46.json +++ b/json/items/ammo/46.json @@ -5,7 +5,7 @@      "name": { "str": "4.6x30mm DM11" },      "description": "4.6x30mm ammunition with 31gr copper plated steel bullets. The Ultimate Combat DM11 Penetrator round has low recoil and excellent armor penetration.",      "weight": "6500 mg", -    "volume": "250 ml", +    "volume": "156 ml",      "price": 300,      "price_postapoc": 1600,      "flags": [ "IRREPLACEABLE_CONSUMABLE" ], @@ -17,7 +17,6 @@      "ammo_type": "46",      "casing": "46mm_casing",      "range": 14, -    "//": "Base damage of 20, balance increase of one third.",      "damage": { "damage_type": "stab", "amount": 24, "armor_penetration": 24 },      "dispersion": 40,      "recoil": 90, diff --git a/json/items/generic/casing.json b/json/items/generic/casing.json index 580cab7..86e2855 100644 --- a/json/items/generic/casing.json +++ b/json/items/generic/casing.json @@ -6,7 +6,7 @@      "type": "GENERIC",      "name": { "str": "4.73x33mm mold" },      "description": "A mold for casting a 4.73x33mm rifle round. This mold is fragile and will not last beyond a single casting.", -    "material": "plastic", +    "material": [ "plastic" ],      "weight": "2 g",      "volume": "10ml",      "charges": 25, @@ -22,7 +22,7 @@      "weight": "8 g",      "volume": "12ml",      "stackable": true, -    "material": "plastic", +    "material": [ "plastic" ],      "symbol": "=",      "color": "red",      "damage_states": [ 0, 0 ] diff --git a/json/items/gun/000shot.json b/json/items/gun/000shot.json index cb0a6bd..25a96bb 100644 --- a/json/items/gun/000shot.json +++ b/json/items/gun/000shot.json @@ -3,7 +3,7 @@      "id": "hk_caws",      "copy-from": "shotgun_base",      "type": "GUN", -    "name": { "str": "H&K CAWS" }, +    "name": { "str_sp": "H&K CAWS" },      "description": "The Heckler & Koch CAWS is a bullpup combat shotgun designed to fill the need for a high accuracy, short-range weapon with low recoil.",      "weight": "3700 g",      "volume": "2000 ml", @@ -16,7 +16,7 @@      "ranged_damage": 5,      "dispersion": 300,      "durability": 8, -    "ammo": "000shot", +    "ammo": [ "000shot" ],      "barrel_length": "81 ml",      "valid_mod_locations": [        [ "accessories", 2 ], diff --git a/json/items/gun/223.json b/json/items/gun/223.json index 9f4af57..45369b1 100644 --- a/json/items/gun/223.json +++ b/json/items/gun/223.json @@ -3,21 +3,21 @@      "id": "h&k416a5",      "copy-from": "h&k416a5",      "type": "GUN", -    "name": { "str": "H&K HK416A5" }, +    "name": { "str_sp": "H&K HK416A5" },      "description": "Designed to replace the M4A1, the Heckler & Koch HK416A5 features most of the former's strengths, while being considerably more durable."    },    {      "id": "m27iar",      "copy-from": "m27iar",      "type": "GUN", -    "name": { "str": "M27 IAR" }, +    "name": { "str_sp": "M27 IAR" },      "default_mods": [ "grip", "acog_scope" ]    },    {      "id": "hk_g36",      "copy-from": "hk_g36",      "type": "GUN", -    "name": { "str": "H&K G36" }, +    "name": { "str_sp": "H&K G36" },      "description": "Designed as a replacement for the early Heckler & Koch G3 battle rifle, the G36 is more accurate, and uses the much-lighter .223 round, allowing for a higher ammo capacity. It was later found to have problems overheating during prolonged firefights, and was phased out of active service in 2016.",      "built_in_mods": [ "folding_stock" ]    } diff --git a/json/items/gun/308.json b/json/items/gun/308.json index 020bf52..600e81c 100644 --- a/json/items/gun/308.json +++ b/json/items/gun/308.json @@ -3,14 +3,14 @@      "id": "hk417_13",      "copy-from": "hk417_13",      "type": "GUN", -    "name": { "str": "H&K HK417A2" } +    "name": { "str_sp": "H&K HK417A2" }    },    {      "id": "hk_psg1a1",      "copy-from": "rifle_semi",      "looks_like": "ar15",      "type": "GUN", -    "name": { "str": "H&K PSG1A1", "str_pl": "H&K PSG1A1" }, +    "name": { "str_sp": "H&K PSG1A1" },      "description": "The Heckler & Koch PSG1A1 is a semi-automatic sniper rifle based the G3 rifle. It is exceptionally accurate for a semi-automatic rifle.",      "weight": "6670 g",      "volume": "2250 ml", @@ -34,7 +34,7 @@      "copy-from": "hk_psg1a1",      "looks_like": "hk_psg1a1",      "type": "GUN", -    "name": { "str": "H&K MSG90A2", "str_pl": "H&K MSG90A2" }, +    "name": { "str_sp": "H&K MSG90A2" },      "description": "The Heckler & Koch MSG90A2 is a semi-automatic sniper rifle based the G3 rifle. It is exceptionally accurate for a semi-automatic rifle. This is the military version.",      "weight": "5280 g",      "volume": "2250 ml", diff --git a/json/items/gun/40.json b/json/items/gun/40.json index ac04b12..f6a6947 100644 --- a/json/items/gun/40.json +++ b/json/items/gun/40.json @@ -3,7 +3,7 @@      "id": "usp_40",      "copy-from": "usp_9mm",      "type": "GUN", -    "name": { "str": "H&K USP .40", "str_pl": "H&K USP .40" }, +    "name": { "str_sp": "H&K USP .40" },      "weight": "748 g",      "ammo": "40",      "magazines": [ [ "40", [ "usp40mag" ] ] ] diff --git a/json/items/gun/45.json b/json/items/gun/45.json index 2b32d68..25b2dbc 100644 --- a/json/items/gun/45.json +++ b/json/items/gun/45.json @@ -3,14 +3,14 @@      "id": "usp_45",      "copy-from": "usp_45",      "type": "GUN", -    "name": { "str": "H&K USP .45", "str_pl": "H&K USP .45" }, +    "name": { "str_sp": "H&K USP .45" },      "weight": "789 g"    },    {      "id": "hk_ump45",      "copy-from": "hk_ump45",      "type": "GUN", -    "name": { "str": "H&K UMP45", "str_pl": "H&K UMP45" }, +    "name": { "str_sp": "H&K UMP45" },      "modes": [ [ "DEFAULT", "semi", 1 ], [ "BURST", "burst", 2 ],  [ "AUTO", "auto", 4 ] ]    }  ] diff --git a/json/items/gun/46.json b/json/items/gun/46.json index 64f4a38..cf0a3f6 100644 --- a/json/items/gun/46.json +++ b/json/items/gun/46.json @@ -3,7 +3,7 @@      "id": "hk_ucp",      "type": "GUN",      "reload_noise_volume": 10, -    "name": { "str": "H&K UCP" }, +    "name": { "str_sp": "H&K UCP" },      "description": "The Heckler & Koch UCP is a small, very high capacity pistol designed to counter most common body armors.",      "weight": "730 g",      "volume": "500 ml", @@ -14,7 +14,7 @@      "material": [ "steel", "plastic" ],      "symbol": "(",      "color": "light_gray", -    "ammo": "46", +    "ammo": [ "46" ],      "skill": "pistol",      "dispersion": 410,      "durability": 9, @@ -39,7 +39,7 @@      "id": "hk_mp7",      "copy-from": "hk_mp7",      "type": "GUN", -    "name": { "str": "H&K MP7A2" }, +    "name": { "str_sp": "H&K MP7A2" },      "weight": "1960 g",      "volume": "1000 ml",      "bashing": 10, diff --git a/json/items/gun/473.json b/json/items/gun/473.json index 4ceddc1..307f8cf 100644 --- a/json/items/gun/473.json +++ b/json/items/gun/473.json @@ -3,7 +3,7 @@      "id": "hk_g11",      "type": "GUN",      "reload_noise_volume": 10, -    "name": { "str": "H&K G11K2 Assault Rifle" }, +    "name": { "str_sp": "H&K G11K2 Assault Rifle" },      "description": "The Heckler & Koch G11 is a bullpup assault rifle that was designed to replace the G3 rifle. It utilizes the caseless 4.73x33mm round from an internal magazine bay and has a very high rate of burst fire.",      "weight": "3650 g",      "volume": "1500 ml", @@ -15,7 +15,7 @@      "material": [ "steel", "plastic" ],      "symbol": "(",      "color": "dark_gray", -    "ammo": "473", +    "ammo": [ "473" ],      "skill": "rifle",      "dispersion": 120,      "durability": 9, diff --git a/json/items/gun/9mm.json b/json/items/gun/9mm.json index fb37fa6..679e9e5 100644 --- a/json/items/gun/9mm.json +++ b/json/items/gun/9mm.json @@ -3,14 +3,14 @@      "id": "usp_9mm",      "copy-from": "usp_9mm",      "type": "GUN", -    "name": { "str": "H&K USP 9mm", "str_pl": "H&K USP 9mm" }, +    "name": { "str_sp": "H&K USP 9mm" },      "weight": "748 g"    },    {      "id": "hk_mp5",      "copy-from": "hk_mp5",      "type": "GUN", -    "name": { "str": "H&K MP5A4", "str_pl": "H&K MP5A4" }, +    "name": { "str_sp": "H&K MP5A4" },      "weight": "2540 g",      "volume": "1750 ml"    }, @@ -18,7 +18,7 @@      "id": "hk_mp5k",      "copy-from": "hk_mp5k",      "type": "GUN", -    "name": { "str": "H&K MP5K-PDW", "str_pl": "H&K MP5K-PDW" }, +    "name": { "str_sp": "H&K MP5K-PDW" },      "weight": "2530 g",      "volume": "1250 ml"    } diff --git a/json/items/magazine/000shot.json b/json/items/magazine/000shot.json index ad60008..1a06b6e 100644 --- a/json/items/magazine/000shot.json +++ b/json/items/magazine/000shot.json @@ -9,10 +9,10 @@      "volume": "500 ml",      "price": 30000,      "price_postapoc": 175, -    "material": "plastic", +    "material": [ "plastic" ],      "symbol": "#",      "color": "dark_gray", -    "ammo_type": "000shot", +    "ammo_type": [ "000shot" ],      "capacity": 10,      "reliability": 9,      "flags": [ "MAG_COMPACT" ] @@ -27,10 +27,10 @@      "volume": "500 ml",      "price": 30000,      "price_postapoc": 175, -    "material": "copper", +    "material": [ "copper" ],      "symbol": "#",      "color": "light_gray", -    "ammo_type": "000shot", +    "ammo_type": [ "000shot" ],      "capacity": 20,      "reliability": 6,      "armor_data": { "covers": [ "TORSO" ], "coverage": 5, "material_thickness": 1, "encumbrance": 2 }, diff --git a/json/items/magazine/223.json b/json/items/magazine/223.json index 39cb92c..e54d4a1 100644 --- a/json/items/magazine/223.json +++ b/json/items/magazine/223.json @@ -6,9 +6,9 @@      "type": "MAGAZINE",      "name": { "str": "H&K G36 30-round magazine" },      "weight": "127 g",  -    "material": "plastic", +    "material": [ "plastic" ],      "description": "A standard capacity box magazine for use with the H&K G36 assault rifle.", -    "ammo_type": "223", +    "ammo_type": [ "223" ],      "reliability": 9    },    { @@ -18,6 +18,6 @@      "type": "MAGAZINE",      "name": { "str": "H&K G36 100-round double drum magazine" },      "description": "A bulky 100-round double drum magazine for use with the H&K G36 assault rifle.", -    "ammo_type": "223" +    "ammo_type": [ "223" ]    }  ] diff --git a/json/items/magazine/308.json b/json/items/magazine/308.json index 4c7d225..8f39489 100644 --- a/json/items/magazine/308.json +++ b/json/items/magazine/308.json @@ -30,10 +30,10 @@      "volume": "250 ml",      "price": 4500,      "price_postapoc": 90, -    "material": "aluminum", +    "material": [ "aluminum" ],      "symbol": "#",      "color": "light_gray", -    "ammo_type": "308", +    "ammo_type": [ "308" ],      "capacity": 10,      "reliability": 9,      "flags": [ "MAG_COMPACT" ] diff --git a/json/items/magazine/40.json b/json/items/magazine/40.json index 340b82a..c0ee22a 100644 --- a/json/items/magazine/40.json +++ b/json/items/magazine/40.json @@ -5,7 +5,7 @@      "type": "MAGAZINE",      "name": { "str": "H&K USP .40 magazine" },      "description": "A standard capacity magazine for use with the Heckler & Koch USP .40 handgun.", -    "ammo_type": "40", +    "ammo_type": [ "40" ],      "capacity": 13    }  ] diff --git a/json/items/magazine/46.json b/json/items/magazine/46.json index f6f22e9..856a12f 100644 --- a/json/items/magazine/46.json +++ b/json/items/magazine/46.json @@ -1,5 +1,14 @@  [    { +    "id": "hk46mag", +    "looks_like": "mp5mag", +    "copy-from": "hk46mag", +    "type": "MAGAZINE", +    "name": { "str": "H&K 4.6mm magazine" }, +    "description": "A standard capacity 20-round magazine for use with H&K's proprietary 4.6x30mm round.", +    "weight": "100 g" +  }, +  {      "id": "hk46bigmag",      "looks_like": "mp5mag",      "copy-from": "hk46bigmag", @@ -20,14 +29,5 @@      "price": 5500,      "price_postapoc": 300,      "capacity": 30 -  }, -  { -    "id": "hk46mag", -    "looks_like": "mp5mag", -    "copy-from": "hk46mag", -    "type": "MAGAZINE", -    "name": { "str": "H&K 4.6mm magazine" }, -    "description": "A standard capacity 20-round magazine for use with H&K's proprietary 4.6x30mm round.", -    "weight": "100 g"    }  ] diff --git a/json/items/magazine/473.json b/json/items/magazine/473.json index 916d3c9..94a53b0 100644 --- a/json/items/magazine/473.json +++ b/json/items/magazine/473.json @@ -12,7 +12,7 @@      "material": [ "plastic" ],      "symbol": "#",      "color": "dark_gray", -    "ammo_type": "473", +    "ammo_type": [ "473" ],      "capacity": 50,      "reliability": 10,      "reload_time": 50, diff --git a/json/recipes/000shot.json b/json/recipes/000shot.json index 298587d..799e35a 100644 --- a/json/recipes/000shot.json +++ b/json/recipes/000shot.json @@ -13,7 +13,9 @@      "charges": 1,      "reversible": true,      "using": [ [ "shot_forming", 1 ], [ "ammo_bullet", 12 ], [ "ammo_000_shot", 1 ] ], -    "components": [ [ [ "gunpowder", 6 ] ] ] +    "components": [ +      [ [ "gunpowder", 6 ] ] +    ]    },    {      "result": "reloaded_shot_000_inc", @@ -29,7 +31,10 @@      "charges": 1,      "reversible": true,      "using": [ [ "shot_forming", 1 ], [ "ammo_bullet", 12 ], [ "ammo_000_shot", 1 ] ], -    "components": [ [ [ "gunpowder", 5 ] ], [ [ "incendiary", 5 ] ] ] +    "components": [ +      [ [ "gunpowder", 5 ] ], +      [ [ "incendiary", 5 ] ] +    ]    },    {      "result": "reloaded_shot_000_flechette", @@ -45,7 +50,10 @@      "charges": 1,      "reversible": true,      "using": [ [ "shot_forming", 1 ], [ "ammo_000_shot", 1 ] ], -    "components": [ [ [ "gunpowder", 6 ] ], [ [ "combatnail", 12 ] ] ] +    "components": [ +      [ [ "gunpowder", 6 ] ], +      [ [ "combatnail", 12 ] ] +    ]    },    {      "result": "reloaded_shot_000_slug", @@ -60,7 +68,9 @@      "book_learn": [ [ "recipe_bullets", 3 ], [ "manual_shotgun", 3 ] ],      "charges": 1,      "reversible": true, -    "using": [ [ "bullet_forming", 1 ], [ "ammo_bullet", 24 ], [ "ammo_000_shot", 1 ] ], -    "components": [ [ [ "gunpowder", 6 ] ] ] +    "using": [ [ "shot_forming", 1 ], [ "ammo_bullet", 24 ], [ "ammo_000_shot", 1 ] ], +    "components": [ +      [ [ "gunpowder", 6 ] ] +    ]    }  ] diff --git a/json/uncraft/000shot.json b/json/uncraft/000shot.json index 39ae0c8..1820560 100644 --- a/json/uncraft/000shot.json +++ b/json/uncraft/000shot.json @@ -6,7 +6,12 @@      "difficulty": 5,      "time": "1 s",      "qualities": [ { "id": "PULL", "level": 1 } ], -    "components": [ [ [ "000shot_hull", 1 ] ], [ [ "shotgun_primer", 1 ] ], [ [ "gunpowder", 6 ] ], [ [ "lead", 10 ] ] ], +    "components": [ +      [ [ "000shot_hull", 1 ] ], +      [ [ "shotgun_primer", 1 ] ], +      [ [ "gunpowder", 6 ] ], +      [ [ "lead", 12 ] ] +    ],      "flags": [ "UNCRAFT_SINGLE_CHARGE" ]    },    { @@ -16,7 +21,12 @@      "difficulty": 5,      "time": "1 s",      "qualities": [ { "id": "PULL", "level": 1 } ], -    "components": [ [ [ "000shot_hull", 1 ] ], [ [ "shotgun_primer", 1 ] ], [ [ "gunpowder", 6 ] ], [ [ "combatnail", 10 ] ] ], +    "components": [ +      [ [ "000shot_hull", 1 ] ], +      [ [ "shotgun_primer", 1 ] ], +      [ [ "gunpowder", 6 ] ], +      [ [ "combatnail", 12 ] ] +    ],      "flags": [ "UNCRAFT_SINGLE_CHARGE" ]    },    { @@ -26,7 +36,12 @@      "difficulty": 5,      "time": "1 s",      "qualities": [ { "id": "PULL", "level": 1 } ], -    "components": [ [ [ "000shot_hull", 1 ] ], [ [ "shotgun_primer", 1 ] ], [ [ "gunpowder", 6 ] ], [ [ "lead", 20 ] ] ], +    "components": [ +      [ [ "000shot_hull", 1 ] ], +      [ [ "shotgun_primer", 1 ] ], +      [ [ "gunpowder", 6 ] ], +      [ [ "lead", 24 ] ] +    ],      "flags": [ "UNCRAFT_SINGLE_CHARGE" ]    }  ]  | 
