[
  {
    "type": "GENERIC",
    "id": "cudgel_plus_one",
    "copy-from": "cudgel",
    "name": "cudgel +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "cudgel_plus_two",
    "copy-from": "cudgel",
    "name": "cudgel +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "q_staff_plus_one",
    "copy-from": "q_staff",
    "name": "quarterstaff +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "q_staff_plus_two",
    "copy-from": "q_staff",
    "name": "quarterstaff +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "i_staff_plus_one",
    "copy-from": "i_staff",
    "name": "ironshod quarterstaff +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "i_staff_plus_two",
    "copy-from": "i_staff",
    "name": "ironshod quarterstaff +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "longsword_plus_one",
    "copy-from": "longsword",
    "name": "longsword +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "longsword_plus_two",
    "copy-from": "longsword",
    "name": "longsword +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "sledge_plus_one",
    "copy-from": "hammer_sledge",
    "name": "sledge hammer +1",
    "proportional": { "price": 9.0, "price_postapoc": 9.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "sledge_plus_two",
    "copy-from": "hammer_sledge",
    "name": "sledge hammer +2",
    "proportional": { "price": 12.0, "price_postapoc": 12.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "warhammer_plus_one",
    "copy-from": "warhammer",
    "name": "warhammer +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "warhammer_plus_two",
    "copy-from": "warhammer",
    "name": "warhammer +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "bat_plus_one",
    "copy-from": "bat",
    "name": { "str": "bat +1" },
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "bat_plus_two",
    "copy-from": "bat",
    "name": { "str": "bat +2" },
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "bat_metal_plus_one",
    "copy-from": "bat_metal",
    "name": { "str": "aluminum bat +1" },
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "bat_metal_plus_two",
    "copy-from": "bat_metal",
    "name": { "str": "aluminum bat +2" },
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "spear_steel_plus_one",
    "copy-from": "spear_steel",
    "name": "steel spear +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "spear_steel_plus_two",
    "copy-from": "spear_steel",
    "name": "steel spear +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "qiang_plus_one",
    "copy-from": "qiang",
    "name": "qiang +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "qiang_plus_two",
    "copy-from": "qiang",
    "name": "qiang +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "halberd_plus_one",
    "copy-from": "halberd",
    "name": "halberd +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "halberd_plus_two",
    "copy-from": "halberd",
    "name": "halberd +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "glaive_plus_one",
    "copy-from": "glaive",
    "name": "glaive +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "glaive_plus_two",
    "copy-from": "glaive",
    "name": "glaive +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "naginata_plus_one",
    "copy-from": "naginata",
    "name": "naginata +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "naginata_plus_two",
    "copy-from": "naginata",
    "name": "naginata +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "mace_plus_one",
    "copy-from": "mace",
    "name": "mace +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "mace_plus_two",
    "copy-from": "mace",
    "name": "mace +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "morningstar_plus_one",
    "copy-from": "morningstar",
    "name": "morningstar +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "morningstar_plus_two",
    "copy-from": "morningstar",
    "name": "morningstar +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "jian_plus_one",
    "copy-from": "jian",
    "name": "jian +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "jian_plus_two",
    "copy-from": "jian",
    "name": "jian +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "scimitar_plus_one",
    "copy-from": "scimitar",
    "name": "scimitar +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "scimitar_plus_two",
    "copy-from": "scimitar",
    "name": "scimitar +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "estoc_plus_one",
    "copy-from": "estoc",
    "name": "estoc +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "estoc_plus_two",
    "copy-from": "estoc",
    "name": "estoc +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "arming_sword_plus_one",
    "copy-from": "arming_sword",
    "name": { "str": "arming sword +1" },
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "arming_sword_plus_two",
    "copy-from": "arming_sword",
    "name": { "str": "arming sword +2" },
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "broadsword_plus_one",
    "copy-from": "broadsword",
    "name": "broadsword +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "broadsword_plus_two",
    "copy-from": "broadsword",
    "name": "broadsword +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "battleaxe_plus_one",
    "copy-from": "battleaxe",
    "name": { "str": "battle axe +1" },
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "battleaxe_plus_two",
    "copy-from": "battleaxe",
    "name": { "str": "battle axe +2" },
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "cavalry_sabre_plus_one",
    "copy-from": "cavalry_sabre",
    "name": "cavalry sabre +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "cavalry_sabre_plus_two",
    "copy-from": "cavalry_sabre",
    "name": "cavalry sabre +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "crowbar_plus_one",
    "copy-from": "crowbar",
    "name": "crowbar +1",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "crowbar_plus_two",
    "copy-from": "crowbar",
    "name": "crowbar +2",
    "proportional": { "price": 9.0, "price_postapoc": 9.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "cutlass_plus_one",
    "copy-from": "cutlass",
    "name": "cutlass +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "cutlass_plus_two",
    "copy-from": "cutlass",
    "name": "cutlass +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "fire_ax_plus_one",
    "copy-from": "fire_ax",
    "name": "fire axe +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "fire_ax_plus_two",
    "copy-from": "fire_ax",
    "name": "fire axe +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "katana_plus_one",
    "copy-from": "katana",
    "name": "katana +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "katana_plus_two",
    "copy-from": "katana",
    "name": "katana +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "knife_combat_plus_one",
    "copy-from": "knife_combat",
    "name": "combat knife +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "knife_combat_plus_two",
    "copy-from": "knife_combat",
    "name": "combat knife +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "knife_hunting_plus_one",
    "copy-from": "knife_hunting",
    "name": "hunting knife +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "knife_hunting_plus_two",
    "copy-from": "knife_hunting",
    "name": "hunting knife +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "knife_rambo_plus_one",
    "copy-from": "knife_rambo",
    "name": "survival knife +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "knife_rambo_plus_two",
    "copy-from": "knife_rambo",
    "name": "survival knife +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "knife_trench_plus_one",
    "copy-from": "knife_trench",
    "name": "trench knife +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "knife_trench_plus_two",
    "copy-from": "knife_trench",
    "name": "trench knife +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "kris_plus_one",
    "copy-from": "kris",
    "name": "kris +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "kris_plus_two",
    "copy-from": "kris",
    "name": "kris +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "kukri_plus_one",
    "copy-from": "kukri",
    "name": "kukri +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "kukri_plus_two",
    "copy-from": "kukri",
    "name": "kukri +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "nodachi_plus_one",
    "copy-from": "nodachi",
    "name": "nodachi +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "nodachi_plus_two",
    "copy-from": "nodachi",
    "name": "nodachi +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "pickaxe_plus_one",
    "copy-from": "pickaxe",
    "name": "pickaxe +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "pickaxe_plus_two",
    "copy-from": "pickaxe",
    "name": "pickaxe +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "pike_plus_one",
    "copy-from": "pike",
    "name": "pike +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "pike_plus_two",
    "copy-from": "pike",
    "name": "pike +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "rapier_plus_one",
    "copy-from": "rapier",
    "name": "rapier +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "rapier_plus_two",
    "copy-from": "rapier",
    "name": "rapier +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "tanto_plus_one",
    "copy-from": "tanto",
    "name": "tanto +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "tanto_plus_two",
    "copy-from": "tanto",
    "name": "tanto +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "wakizashi_plus_one",
    "copy-from": "wakizashi",
    "name": "wakizashi +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "wakizashi_plus_two",
    "copy-from": "wakizashi",
    "name": "wakizashi +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "zweihander_plus_one",
    "copy-from": "zweihander",
    "name": "zweihänder +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "zweihander_plus_two",
    "copy-from": "zweihander",
    "name": "zweihänder +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "khopesh_plus_one",
    "copy-from": "khopesh",
    "name": "khopesh +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "khopesh_plus_two",
    "copy-from": "khopesh",
    "name": "khopesh +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "sword_xiphos_plus_one",
    "copy-from": "sword_xiphos",
    "name": "xiphos +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "sword_xiphos_plus_two",
    "copy-from": "sword_xiphos",
    "name": "xiphos +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "type": "GENERIC",
    "id": "dao_plus_one",
    "copy-from": "dao",
    "name": "dao +1",
    "proportional": { "price": 3.0, "price_postapoc": 3.0, "bashing": 1.1, "cutting": 1.1, "weight": 0.9 },
    "relative": { "to_hit": 1 }
  },
  {
    "type": "GENERIC",
    "id": "dao_plus_two",
    "copy-from": "dao",
    "name": "dao +2",
    "proportional": { "price": 6.0, "price_postapoc": 6.0, "bashing": 1.2, "cutting": 1.2, "weight": 0.8 },
    "relative": { "to_hit": 2 }
  },
  {
    "id": "rune_biomancer_weapon",
    "type": "GENERIC",
    "name": { "str": "Biomancer spear" },
    "//": "Effectively a durable knife spear +1 with IMPALE tech.  based off Wicked Bonespear.  Lorewise, it would make sense for novice Biomancers to be developing their skills in spears so they can adequately use the Bonespear once they're proficient enough to summon one.  Should be weaker than other school weapons DPSwise due to reach.",
    "description": "A grotesque bone spearhead on a stout wooden pole.  There is a Biomancer rune embedded at the base of the head.",
    "weight": "1388 g",
    "volume": "1250 ml",
    "longest_side": "130 cm",
    "price": 3900,
    "to_hit": 2,
    "bashing": 6,
    "cutting": 21,
    "material": [ "wood", "bone" ],
    "symbol": "/",
    "color": "light_gray",
    "techniques": [ "WBLOCK_1", "IMPALE" ],
    "qualities": [ [ "COOK", 1 ] ],
    "flags": [ "SPEAR", "REACH_ATTACK", "DURABLE_MELEE", "SHEATH_SPEAR", "TRADER_AVOID", "MAGIC_FOCUS" ]
  },
  {
    "id": "rune_technomancer_weapon",
    "type": "GENERIC",
    "name": { "str": "Technomancer toolbar" },
    "//": "Combat stats based off crowbar +1, techniques off Halligan bar(closest non-magical substitute), weight based on 75% of hammer & wrench(since their handles aren't included) + 100% crowbar with benefit from +1 enchantment",
    "description": "This staff incorporates a sturdy cresent wrench on top of a prybar and a hammer on the other in a convenient package.  There is a Technomancer rune embedded in the hammerhead.",
    "weight": "995 g",
    "volume": "1750 ml",
    "longest_side": "65 cm",
    "price": 3900,
    "bashing": 22,
    "cutting": 1,
    "material": [ "steel" ],
    "symbol": "/",
    "color": "light_gray",
    "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ],
    "qualities": [ [ "PRY", 3 ], [ "HAMMER", 3 ], [ "HAMMER_FINE", 1 ], [ "WRENCH", 2 ], [ "WRENCH_FINE", 2 ] ],
    "flags": [ "DURABLE_MELEE", "BELT_CLIP", "TRADER_AVOID", "MAGIC_FOCUS" ]
  },
  {
    "id": "rune_magus_weapon",
    "type": "GENERIC",
    "name": { "str": "Magus staff", "str_pl": "Magus staves" },
    "//": "The classical vision of the wizard gets a classic weapon.  DPS Stats are between the regular and ironshod versions.  Stats are slightly worse than the QS+1 due to the glass weight slowing attack speed.",
    "description": "A quarterstaff with runes carved into it and two glass jars, heat-tempered and infused with mana for durability, to act as mana receptacles.  There are two Magi runes embedded at the tips.",
    "weight": "1530 g",
    "volume": "3500 ml",
    "longest_side": "185 cm",
    "price": 3900,
    "to_hit": 4,
    "bashing": 29,
    "material": [ "wood", "diamond" ],
    "symbol": "/",
    "color": "brown",
    "techniques": [ "WBLOCK_2", "RAPID", "SWEEP" ],
    "flags": [ "DURABLE_MELEE", "SHEATH_SPEAR", "TRADER_AVOID", "MAGIC_FOCUS" ]
  },
  {
    "id": "rune_kelvinist_weapon",
    "type": "GENERIC",
    "name": { "str": "Kelvinist flamberge" },
    "//": "Flame-bladed sword covers half of Kelvinist's heat-cold theme.  Combat stats equivalent to cutlass +1 with BRUTAL technique.",
    "description": "A sword with an undulating blade, reminiscent of a flame.  There is a Kelvinist rune embedded in the pommel.",
    "weight": "860 g",
    "volume": "1250 ml",
    "longest_side": "80 cm",
    "price": 3900,
    "to_hit": 2,
    "bashing": 6,
    "cutting": 29,
    "material": [ "wood", "steel" ],
    "symbol": "/",
    "color": "light_gray",
    "techniques": [ "WBLOCK_2", "BRUTAL" ],
    "qualities": [ [ "CUT", 1 ], [ "BUTCHER", 9 ] ],
    "use_action": [ "WEATHER_TOOL" ],
    "flags": [ "DURABLE_MELEE", "SHEATH_SWORD", "TRADER_AVOID", "MAGIC_FOCUS", "THERMOMETER" ]
  },
  {
    "id": "rune_stormshaper_weapon",
    "type": "GENERIC",
    "name": { "str": "Stormshaper axe" },
    "//": "Equivalent to copper ax +1.  Metals chosen for being two most conductive metals + balancing reasons",
    "description": "A forged copper axe with silver trimmings and a wooden handle.  There is a Stormshaper rune embedded in the eye.",
    "weight": "3330 g",
    "volume": "3500 ml",
    "longest_side": "90 cm",
    "price": 3900,
    "to_hit": -1,
    "bashing": 33,
    "cutting": 22,
    "material": [ "wood", "copper", "silver" ],
    "symbol": "/",
    "color": "brown",
    "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ],
    "qualities": [ [ "AXE", 1 ], [ "BUTCHER", -20 ] ],
    "use_action": [ "WEATHER_TOOL" ],
    "flags": [ "DURABLE_MELEE", "SHEATH_AXE", "TRADER_AVOID", "MAGIC_FOCUS", "HYGROMETER", "BAROMETER" ]
  },
  {
    "id": "rune_animist_weapon",
    "type": "GENERIC",
    "name": { "str": "Animist athame" },
    "//": "Tool qualities equivalent to steak knife, combat equiv.  to copper knife + 1 w/ RAPID and BLOCK1, size/weight off combat knife +1",
    "description": "A steel ritual knife used by Animists to draw blood for summoning.  Their school rune is embedded in the crossguard.",
    "weight": "504 g",
    "volume": "500 ml",
    "longest_side": "25 cm",
    "price": 3000,
    "bashing": 2,
    "cutting": 13,
    "material": [ "wood", "steel" ],
    "symbol": ";",
    "color": "light_gray",
    "techniques": [ "WBLOCK_1", "RAPID" ],
    "qualities": [ [ "CUT", 1 ], [ "CUT_FINE", 1 ], [ "BUTCHER", 11 ] ],
    "flags": [ "STAB", "SHEATH_KNIFE", "MAGIC_FOCUS", "TRADER_AVOID" ]
  },
  {
    "type": "GENERIC",
    "id": "springstaff-retracted",
    "category": "weapons",
    "name": { "str": "springstaff(baton)", "str_pl": "springstaves(baton)" },
    "description": "This versatile weapon uses Technomancy-enhanced springs to keep the staff tips retracted while in baton configuration.  Activate to extend.",
    "weight": "1800 g",
    "to_hit": 2,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel", "plastic" ],
    "techniques": [ "WBLOCK_1", "RAPID" ],
    "flags": [ "DURABLE_MELEE", "BELT_CLIP" ],
    "use_action": {
      "menu_text": "Extend to staff",
      "type": "transform",
      "target": "springstaff-extended",
      "msg": "You snap open your springstaff into staff mode.",
      "moves": 50,
      "need_wielding": true
    },
    "volume": "750 ml",
    "longest_side": "60 cm",
    "bashing": 24,
    "price": 34000
  },
  {
    "type": "GENERIC",
    "id": "springstaff-extended",
    "category": "weapons",
    "name": { "str": "springstaff(staff)", "str_pl": "springstaves(staff)" },
    "description": "This versatile weapon uses Technomancy-enhanced springs to keep the staff tips from retracting while in staff configuration.  Activate to extend.",
    "weight": "1800 g",
    "to_hit": 4,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel", "plastic" ],
    "techniques": [ "WBLOCK_2", "RAPID", "SWEEP" ],
    "flags": [ "DURABLE_MELEE", "SHEATH_SPEAR" ],
    "use_action": {
      "menu_text": "Retract to baton",
      "type": "transform",
      "target": "springstaff-retracted",
      "msg": "You collapse your springstaff into baton mode.",
      "moves": 200,
      "need_wielding": true
    },
    "volume": "3 L",
    "longest_side": "150 cm",
    "bashing": 29,
    "price": 34000
  }
]
