[
  {
    "type": "AMMO",
    "id": "test_rock",
    "symbol": "*",
    "color": "light_gray",
    "name": "TEST rock",
    "description": "A rock the size of a baseball.  Makes a decent melee weapon, and is also good for throwing at enemies.",
    "category": "spare_parts",
    "material": [ "stone" ],
    "ammo_type": "rock",
    "flags": [ "TRADER_AVOID" ],
    "weight": "657 g",
    "volume": "250 ml",
    "bashing": 7,
    "damage": { "damage_type": "stab", "amount": 7 },
    "range": 10,
    "dispersion": 14,
    "loudness": 0,
    "to_hit": -2,
    "effects": [ "NEVER_MISFIRES", "NON_FOULING", "RECOVER_80" ],
    "qualities": [ [ "HAMMER", 1 ] ]
  },
  {
    "type": "TOOL_ARMOR",
    "id": "test_ring_strength_1",
    "weight": "4 g",
    "volume": "1 ml",
    "price": 5000,
    "material": [ "copper" ],
    "symbol": "[",
    "color": "light_red",
    "covers": [ "hand_l", "hand_r" ],
    "sided": true,
    "coverage": 0,
    "warmth": 0,
    "flags": [ "WATER_FRIENDLY", "ALLOWS_NATURAL_ATTACKS", "FANCY", "ONLY_ONE", "SKINTIGHT" ],
    "name": { "str": "ring of strength +1", "str_pl": "rings of strength +1" },
    "description": "A copper ring that makes you a little stronger when you wear it.",
    "relic_data": { "passive_effects": [ { "has": "WORN", "condition": "ALWAYS", "values": [ { "value": "STRENGTH", "add": 1 } ] } ] }
  },
  {
    "id": "test_rag",
    "type": "TOOL",
    "category": "spare_parts",
    "name": "TEST rag",
    "description": "This is a largish piece of cloth, useful in crafting and possibly for staunching bleeding.",
    "weight": "80 g",
    "volume": "250 ml",
    "price": 0,
    "material": [ "cotton" ],
    "symbol": ",",
    "color": "white",
    "use_action": [
      { "type": "heal", "move_cost": 200, "used_up_item": { "id": "rag", "quantity": 1, "flags": [ "FILTHY" ] } },
      "WASH_HARD_ITEMS"
    ],
    "flags": [ "NO_SALVAGE" ]
  },
  {
    "type": "GENERIC",
    "id": "test_2x4",
    "name": "TEST plank",
    "description": "A narrow, thick plank of wood, like a 2 by 4 or similar piece of dimensional lumber.  Makes a decent melee weapon, and can be used for all kinds of construction.",
    "category": "spare_parts",
    "volume": "4400 ml",
    "weight": "2200 g",
    "longest_side": "130 cm",
    "to_hit": 1,
    "color": "brown",
    "symbol": "/",
    "material": [ "wood" ],
    "techniques": [ "WBLOCK_1" ],
    "bashing": 10,
    "price": 1000,
    "price_postapoc": 0,
    "flags": [ "FIREWOOD" ]
  },
  {
    "type": "GENERIC",
    "id": "test_pipe",
    "name": "TEST pipe",
    "description": "A steel pipe, makes a good melee weapon.  Useful in a few crafting recipes.",
    "category": "spare_parts",
    "weight": "1250 g",
    "volume": "1 L",
    "longest_side": "50 cm",
    "to_hit": 1,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ],
    "qualities": [ [ "HAMMER", 1 ] ],
    "techniques": [ "WBLOCK_1" ],
    "bashing": 12,
    "price": 7500,
    "price_postapoc": 300
  },
  {
    "id": "test_tool_belt",
    "type": "ARMOR",
    "name": { "str": "tool belt" },
    "description": "A common belt with pockets, loops and sheaths to store up to six tools or blades.  Widely used by handymen and electricians.",
    "weight": "2000 g",
    "volume": "2250 ml",
    "price": 4500,
    "price_postapoc": 1500,
    "bashing": 5,
    "material": [ "leather" ],
    "symbol": "[",
    "looks_like": "holster",
    "color": "brown",
    "covers": [ "torso" ],
    "coverage": 20,
    "encumbrance": 2,
    "material_thickness": 2,
    "pocket_data": [
      {
        "holster": true,
        "min_item_volume": "50 ml",
        "max_item_length": "70 cm",
        "max_contains_volume": "1500 ml",
        "max_contains_weight": "1000 g",
        "moves": 50,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      },
      {
        "holster": true,
        "min_item_volume": "50 ml",
        "max_item_length": "70 cm",
        "max_contains_volume": "1500 ml",
        "max_contains_weight": "1000 g",
        "moves": 50,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      },
      {
        "holster": true,
        "min_item_volume": "50 ml",
        "max_item_length": "70 cm",
        "max_contains_volume": "1500 ml",
        "max_contains_weight": "1000 g",
        "moves": 50,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      },
      {
        "holster": true,
        "min_item_volume": "50 ml",
        "max_item_length": "70 cm",
        "max_contains_volume": "1500 ml",
        "max_contains_weight": "1000 g",
        "moves": 50,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      }
    ],
    "use_action": { "type": "holster", "holster_prompt": "Store tool or blade", "holster_msg": "You put your %1$s in your %2$s" },
    "flags": [ "WAIST", "NO_QUICKDRAW", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_utility_belt",
    "type": "ARMOR",
    "name": { "str": "utility belt" },
    "description": "Holy pockets, Batman!  This belt has all kinds of pockets for testing.",
    "weight": "3 kg",
    "volume": "4 L",
    "price": 25000,
    "price_postapoc": 9900,
    "bashing": 5,
    "material": [ "kevlar" ],
    "symbol": "[",
    "looks_like": "holster",
    "color": "yellow",
    "covers": [ "TORSO" ],
    "coverage": 30,
    "encumbrance": 5,
    "material_thickness": 4,
    "pocket_data": [
      {
        "//": "Small pouch for a pocket knife, screwdriver, or multi-tool.  Just long enough for a test screwdriver, but not long enough for a sonic screwdriver.",
        "holster": true,
        "rigid": true,
        "min_item_volume": "10 ml",
        "max_contains_volume": "100 ml",
        "max_contains_weight": "1000 g",
        "max_item_length": "15 cm",
        "moves": 50,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      },
      {
        "//": "Large holster for an axe or Halligan bar",
        "holster": true,
        "rigid": false,
        "min_item_volume": "100 ml",
        "max_contains_volume": "2000 ml",
        "max_contains_weight": "4000 g",
        "max_item_length": "80 cm",
        "moves": 200,
        "flag_restriction": [ "BELT_CLIP", "SHEATH_KNIFE" ]
      },
      {
        "//": "Flexible water pouch for drinks or other liquid.  Integrated straw for fast access.",
        "watertight": true,
        "rigid": false,
        "max_item_volume": "1 ml",
        "max_contains_volume": "1 L",
        "max_contains_weight": "2 kg",
        "moves": 10
      },
      {
        "//": "Pressure-tight canister for emergency oxygen supply or other gas.",
        "airtight": true,
        "rigid": true,
        "max_item_volume": "1 ml",
        "max_contains_volume": "1 L",
        "max_contains_weight": "1 kg",
        "moves": 100
      },
      {
        "//": "Fire-proof pouch for thermite or other combustible materials.",
        "rigid": false,
        "fire_protection": true,
        "max_contains_volume": "500 ml",
        "max_contains_weight": "1 kg",
        "moves": 150
      },
      {
        "//": "Micro cooler to preserve snacks for long stakeouts.",
        "rigid": true,
        "spoil_multiplier": 0.5,
        "max_contains_volume": "500 ml",
        "max_contains_weight": "1 kg",
        "moves": 150
      },
      {
        "//": "Cryo-chamber to deep-freeze organic samples.  Small, but prevents spoiling indefinitely.",
        "rigid": true,
        "spoil_multiplier": 0.0,
        "max_contains_volume": "100 ml",
        "max_contains_weight": "100 g",
        "moves": 1000
      }
    ],
    "use_action": { "type": "holster", "holster_prompt": "Store tool or blade", "holster_msg": "You put your %1$s in your %2$s" },
    "flags": [ "WAIST", "NO_QUICKDRAW", "WATER_FRIENDLY" ]
  },
  {
    "type": "GENERIC",
    "id": "test_sheet_metal",
    "name": "TEST sheet metal",
    "description": "A thin sheet of metal.",
    "//": "Roughly in the 70cm×70cm×1.5mm to 1m×1m×0.75mm range. Has to be folded / rolled up when in inventory, so 75% density compared to solid block.",
    "weight": "6000 g",
    "to_hit": -2,
    "color": "light_cyan",
    "symbol": "]",
    "material": [ "steel" ],
    "volume": "1 L",
    "bashing": 5,
    "category": "spare_parts",
    "price": 6000,
    "qualities": [ [ "COOK", 1 ] ]
  },
  {
    "id": "test_sheet_metal_small",
    "type": "AMMO",
    "category": "spare_parts",
    "name": "TEST small metal sheet",
    "description": "A small sheet of metal.",
    "looks_like": "test_sheet_metal",
    "weight": "250 g",
    "volume": "250 ml",
    "price": 2000,
    "bashing": 5,
    "to_hit": -3,
    "stack_size": 8,
    "//": "Roughly in the 15cm×15cm to 20cm×20cm range. Compact and stacks well, so equally dense as a solid block.",
    "material": [ "steel" ],
    "symbol": "]",
    "color": "light_cyan",
    "ammo_type": "components"
  },
  {
    "id": "test_halligan",
    "type": "TOOL",
    "name": "TEST Halligan bar",
    "description": "This is a heavy multiple-use tool commonly carried by firefighters, law enforcement, and military rescue units.  Use it to open locked doors without destroying them or to lift manhole covers.  You could also wield it to bash some heads in.",
    "weight": "3600 g",
    "volume": "1250 ml",
    "longest_side": "76 cm",
    "price": 7500,
    "to_hit": 2,
    "bashing": 20,
    "cutting": 5,
    "material": [ "steel" ],
    "symbol": ";",
    "color": "dark_gray",
    "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ],
    "qualities": [ [ "PRY", 4 ], [ "HAMMER", 2 ], [ "DIG", 1 ] ],
    "use_action": [ "HAMMER", "CROWBAR" ],
    "flags": [ "DURABLE_MELEE", "BELT_CLIP" ]
  },
  {
    "id": "test_fire_ax",
    "type": "TOOL",
    "name": "TEST fire axe",
    "description": "This is a large, two-handed pickhead axe normally used by firefighters.  It makes a powerful melee weapon, but is a bit slow to recover between swings.",
    "weight": "2520 g",
    "volume": "2 L",
    "price": 20000,
    "to_hit": 1,
    "bashing": 20,
    "cutting": 20,
    "material": [ "steel", "wood" ],
    "symbol": "/",
    "color": "light_gray",
    "techniques": [ "WBLOCK_1", "BRUTAL", "SWEEP" ],
    "qualities": [ [ "AXE", 2 ], [ "PRY", 3 ], [ "BUTCHER", -30 ] ],
    "flags": [ "DURABLE_MELEE", "NONCONDUCTIVE", "BELT_CLIP", "SHEATH_AXE" ],
    "use_action": [ "CROWBAR" ]
  },
  {
    "id": "test_screwdriver",
    "type": "TOOL",
    "name": "TEST screwdriver",
    "description": "This is a Philips-head screwdriver.  It is important for almost all electronics crafting, most mechanics crafting, and has many more uses.",
    "weight": "170 g",
    "volume": "40 ml",
    "longest_side": "15 cm",
    "price": 450,
    "to_hit": -1,
    "bashing": 2,
    "cutting": 6,
    "material": [ "steel", "plastic" ],
    "symbol": ";",
    "color": "yellow",
    "qualities": [ [ "SCREW", 1 ] ],
    "flags": [ "SPEAR", "BELT_CLIP" ]
  },
  {
    "id": "test_sonic_screwdriver",
    "type": "TOOL",
    "name": "TEST sonic screwdriver",
    "description": "This is a sonic screwdriver.  Like a normal screwdriver, but sonic.",
    "weight": "170 g",
    "volume": "250 ml",
    "longest_side": "25 cm",
    "price": 450,
    "to_hit": -1,
    "bashing": 2,
    "cutting": 6,
    "material": [ "steel", "plastic" ],
    "symbol": ";",
    "color": "yellow",
    "qualities": [ [ "SCREW", 2 ], [ "SCREW_FINE", 1 ], [ "WRENCH", 1 ], [ "PRY", 2 ], [ "LOCKPICK", 30 ] ],
    "use_action": [ "PICK_LOCK" ],
    "flags": [ "SPEAR", "BELT_CLIP" ],
    "min_skills": [ [ "electronics", 3 ], [ "traps", 2 ] ],
    "min_intelligence": 9,
    "min_perception": 5
  },
  {
    "id": "test_soldering_iron",
    "type": "TOOL",
    "name": "TEST soldering iron",
    "description": "This is a device with a metal tip that can get very hot.  It is necessary for advanced electronics crafting.  You could also use it to cauterize wounds, if you had to.",
    "weight": "181 g",
    "volume": "500 ml",
    "price": 1000,
    "bashing": 2,
    "cutting": 6,
    "material": [ "iron" ],
    "symbol": ",",
    "color": "light_gray",
    "ammo": [ "battery" ],
    "charges_per_use": 1,
    "use_action": [
      {
        "type": "repair_item",
        "item_action_type": "repair_metal",
        "materials": [ "plastic", "lead", "tin", "zinc" ],
        "skill": "fabrication",
        "cost_scaling": 0.1,
        "move_cost": 1500
      },
      { "flame": false, "type": "cauterize" }
    ],
    "flags": [ "SPEAR", "BELT_CLIP", "ALLOWS_REMOTE_USE" ],
    "pocket_data": [
      {
        "pocket_type": "MAGAZINE_WELL",
        "holster": true,
        "max_contains_volume": "20 L",
        "max_contains_weight": "20 kg",
        "item_restriction": [ "test_battery_disposable", "test_battery_rechargable" ]
      }
    ]
  },
  {
    "id": "test_battery_disposable",
    "type": "MAGAZINE",
    "category": "spare_parts",
    "name": { "str": "test disposable battery", "str_pl": "test disposable batteries" },
    "description": "This is a test disposable battery.",
    "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "battery": 300 } } ],
    "flags": [ "NO_SALVAGE", "NO_UNLOAD" ],
    "weight": "45 g",
    "volume": "35 ml",
    "price": 10000,
    "price_postapoc": 200,
    "material": [ "iron", "plastic" ],
    "symbol": "=",
    "color": "yellow",
    "ammo_type": [ "battery" ],
    "count": 300,
    "capacity": 300,
    "looks_like": "battery"
  },
  {
    "id": "test_battery_rechargable",
    "type": "MAGAZINE",
    "category": "spare_parts",
    "name": { "str": "test rechargeable battery", "str_pl": "test rechargeable batteries" },
    "description": "This is a test battery that may be recharged.",
    "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "battery": 150 } } ],
    "flags": [ "NO_SALVAGE", "NO_UNLOAD", "RECHARGE" ],
    "weight": "45 g",
    "volume": "35ml",
    "price": 5000,
    "price_postapoc": 150,
    "material": [ "iron", "plastic" ],
    "symbol": "=",
    "color": "yellow",
    "ammo_type": [ "battery" ],
    "capacity": 150,
    "looks_like": "battery"
  },
  {
    "id": "test_jack_small",
    "type": "TOOL",
    "name": "TEST scissor jack",
    "description": "A compact scissor jack used for lifting vehicles.",
    "material": [ "steel" ],
    "symbol": ";",
    "color": "light_gray",
    "weight": "3000 g",
    "volume": "750 ml",
    "price": 5000,
    "bashing": 4,
    "to_hit": -2,
    "qualities": [ [ "JACK", 4 ] ]
  },
  {
    "id": "test_smart_phone",
    "type": "TOOL",
    "name": { "str": "test smartphone" },
    "description": "UPS-powered smartphone with a flashlight, camera, and MP3 player.",
    "weight": "230 g",
    "volume": "100 ml",
    "price": 20000,
    "price_postapoc": 200,
    "material": [ "plastic", "aluminum" ],
    "looks_like": "cell_phone",
    "symbol": ";",
    "color": "light_gray",
    "ammo": [ "battery" ],
    "initial_charges": 110,
    "max_charges": 120,
    "charges_per_use": 1,
    "use_action": [
      {
        "target": "smart_phone_flashlight",
        "msg": "You activate the flashlight app.",
        "active": true,
        "need_charges": 5,
        "need_charges_msg": "The smartphone's charge is too low.",
        "type": "transform"
      },
      "CAMERA",
      "MP3"
    ],
    "flags": [ "WATCH", "ALARMCLOCK", "USE_UPS", "NO_UNLOAD", "RECHARGE", "NO_RELOAD" ]
  },
  {
    "id": "test_socks",
    "type": "ARMOR",
    "name": { "str": "TEST pair of socks", "str_pl": "TEST pairs of socks" },
    "description": "Socks.  Put 'em on your feet.",
    "weight": "32 g",
    "volume": "250 ml",
    "price": 200,
    "material": [ "cotton", "wool" ],
    "symbol": "[",
    "looks_like": "socks_wool",
    "color": "white",
    "covers": [ "foot_l", "foot_r" ],
    "coverage": 100,
    "warmth": 5,
    "material_thickness": 1,
    "flags": [ "VARSIZE", "SKINTIGHT" ]
  },
  {
    "id": "test_croc_socks",
    "type": "ARMOR",
    "name": { "str": "TEST pair of croc socks", "str_pl": "TEST pairs of croc socks" },
    "description": "Goofy-looking socks with zero ankle coverage and lots of holes on top.  For testing only, nobody would actually wear these, right?",
    "weight": "20 g",
    "volume": "150 ml",
    "price": 200,
    "material": [ "cotton" ],
    "symbol": "[",
    "looks_like": "socks_wool",
    "color": "green",
    "covers": [ "foot_l", "foot_r" ],
    "coverage": 50,
    "warmth": 2,
    "material_thickness": 1,
    "flags": [ "VARSIZE", "SKINTIGHT" ]
  },
  {
    "id": "test_longshirt",
    "type": "ARMOR",
    "name": "TEST long-sleeved shirt",
    "description": "A long-sleeved cotton shirt.",
    "weight": "146 g",
    "volume": "750 ml",
    "price": 2000,
    "material": [ "cotton" ],
    "symbol": "[",
    "looks_like": "dress_shirt",
    "color": "blue",
    "covers": [ "torso", "arm_l", "arm_r" ],
    "coverage": 90,
    "encumbrance": 3,
    "warmth": 5,
    "material_thickness": 0.2,
    "flags": [ "VARSIZE" ]
  },
  {
    "id": "test_ear_plugs",
    "type": "ARMOR",
    "name": { "str": "TEST pair of ear plugs", "str_pl": "TEST pairs of ear plugs" },
    "description": "Industrial grade ear plugs.  They fit inside the ear.",
    "weight": "10 g",
    "volume": "10 ml",
    "price": 10,
    "material": [ "plastic" ],
    "symbol": ";",
    "color": "light_gray",
    "coverage": 1,
    "material_thickness": 1,
    "flags": [ "DEAF", "OVERSIZE", "POWERARMOR_COMPATIBLE" ]
  },
  {
    "id": "test_hazmat_suit",
    "repairs_like": "aep_suit",
    "type": "ARMOR",
    "name": "TEST hazmat suit",
    "description": "An impermeable whole-body garment worn as protection against hazardous materials.  Though very restrictive and fragile, wearing it will provide complete protection against ambient radiation.  It requires a separate gas mask for full protection.",
    "weight": "5000 g",
    "volume": "17 L",
    "price": 117500,
    "material": [ "plastic" ],
    "symbol": "[",
    "looks_like": "beekeeping_suit",
    "color": "yellow",
    "covers": [ "head", "torso", "arm_l", "arm_r", "hand_l", "hand_r", "leg_l", "leg_r", "foot_l", "foot_r" ],
    "coverage": 100,
    "encumbrance": 37,
    "warmth": 40,
    "material_thickness": 2,
    "environmental_protection": 20,
    "flags": [ "VARSIZE", "WATERPROOF", "RAINPROOF", "GAS_PROOF", "RAD_PROOF", "ELECTRIC_IMMUNE", "OUTER" ]
  },
  {
    "id": "test_zentai",
    "type": "ARMOR",
    "name": { "str": "test zentai" },
    "description": "Full-body suit completely covering all body parts, including the head, mouth, and eyes.",
    "weight": "300 g",
    "volume": "500 ml",
    "price": 2500,
    "price_postapoc": 50,
    "material": [ "lycra" ],
    "symbol": "[",
    "color": "dark_gray",
    "covers": [ "head", "mouth", "eyes", "torso", "arm_l", "arm_r", "hand_l", "hand_r", "leg_l", "leg_r", "foot_l", "foot_r" ],
    "coverage": 100,
    "warmth": 20,
    "material_thickness": 1,
    "flags": [ "VARSIZE", "SKINTIGHT", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_sunglasses",
    "repairs_like": "goggles_swim",
    "type": "ARMOR",
    "name": { "str": "test pair of sunglasses", "str_pl": "test pairs of sunglasses" },
    "description": "When your tests are so bright, you have to wear shades.",
    "weight": "35 g",
    "volume": "250 ml",
    "price": 5000,
    "price_postapoc": 10,
    "to_hit": -2,
    "material": [ "glass", "plastic" ],
    "symbol": "[",
    "looks_like": "glasses_eye",
    "color": "dark_gray",
    "covers": [ "eyes" ],
    "coverage": 85,
    "encumbrance": 1,
    "material_thickness": 1,
    "environmental_protection": 1,
    "qualities": [ [ "GLARE", 1 ] ],
    "flags": [ "WATER_FRIENDLY", "SUN_GLASSES", "FRAGILE" ]
  },
  {
    "id": "test_umbrella",
    "type": "GENERIC",
    "category": "tools",
    "name": { "str": "test umbrella" },
    "description": "A portable plastic dome to keep the rain and sun off.",
    "weight": "141 g",
    "volume": "1500 ml",
    "price": 2400,
    "price_postapoc": 50,
    "to_hit": 1,
    "bashing": 6,
    "cutting": 4,
    "material": [ "plastic", "aluminum" ],
    "ascii_picture": "umbrella",
    "symbol": "/",
    "color": "magenta",
    "techniques": [ "WBLOCK_1" ],
    "flags": [ "STAB", "RAIN_PROTECT", "SHEATH_SWORD" ]
  },
  {
    "id": "test_compbow",
    "looks_like": "longbow",
    "type": "GUN",
    "symbol": "(",
    "color": "yellow",
    "name": "TEST compound bow",
    "description": "A high-power bow with shaped cams and extra cables for high velocity shots that can be used effectively by fairly strong archers.  Currently set to a medium weight.",
    "price": 55000,
    "material": [ "steel", "plastic" ],
    "flags": [ "FIRE_TWOHAND", "RELOAD_AND_SHOOT", "PRIMITIVE_RANGED_WEAPON", "WATERPROOF_GUN", "NEVER_JAMS" ],
    "ammo_effects": [ "NEVER_MISFIRES" ],
    "skill": "archery",
    "min_strength": 6,
    "ammo": [ "arrow" ],
    "weight": "907 g",
    "volume": "1500 ml",
    "bashing": 8,
    "to_hit": 1,
    "reload_noise_volume": 3,
    "loudness": 10,
    "ranged_damage": { "damage_type": "stab", "amount": 18 },
    "range": 18,
    "dispersion": 850,
    "durability": 6,
    "clip_size": 1,
    "reload": 110,
    "valid_mod_locations": [ [ "underbarrel", 1 ], [ "sights", 1 ], [ "accessories", 2 ], [ "stabilizer", 1 ], [ "dampening", 1 ] ],
    "use_action": {
      "menu_text": "Tighten Limbs",
      "type": "transform",
      "target": "compbow_high",
      "qualities_needed": { "SCREW_FINE": 1 },
      "msg": "You tighten the limbs, increasing the strength of the bow."
    },
    "pocket_data": [ { "pocket_type": "MAGAZINE", "ammo_restriction": { "arrow": 1 } } ]
  },
  {
    "type": "COMESTIBLE",
    "id": "test_pine_nuts",
    "name": { "str_sp": "TEST pine nuts" },
    "weight": "30 g",
    "color": "brown",
    "spoils_in": 1080,
    "container": "bag_plastic",
    "comestible_type": "FOOD",
    "symbol": "%",
    "quench": -2,
    "healthy": 1,
    "calories": 202,
    "description": "A handful of tasty crunchy nuts from a pinecone.",
    "price": 136,
    "price_postapoc": 136,
    "material": [ "nut" ],
    "volume": "250 ml",
    "flags": [ "EDIBLE_FROZEN", "NUTRIENT_OVERRIDE" ],
    "charges": 4,
    "vitamins": [ [ "iron", 9 ] ],
    "fun": 2
  },
  {
    "id": "test_bitter_almond",
    "type": "COMESTIBLE",
    "comestible_type": "FOOD",
    "category": "food",
    "name": { "str_sp": "test bitter almonds" },
    "description": "A variety of almonds with traces of hydrocyanic acid, potentially toxic when eaten raw.",
    "flags": [ "HIDDEN_POISON", "RAW" ],
    "weight": "200 g",
    "volume": "250 ml",
    "symbol": "%",
    "color": "brown",
    "calories": 200,
    "quench": -10,
    "fun": -5
  },
  {
    "id": "test_hallu_nutmeg",
    "type": "COMESTIBLE",
    "comestible_type": "FOOD",
    "category": "food",
    "name": { "str_sp": "test hallucinogenic nutmeg" },
    "description": "With high levels of the psychoactive myristicin, high doses of nutmeg can cause hallucinations and euphoria, along with a lot of nasty side effects.",
    "flags": [ "HIDDEN_HALLU" ],
    "weight": "212 g",
    "volume": "250 ml",
    "symbol": "%",
    "color": "brown",
    "quench": -50,
    "fun": -20
  },
  {
    "id": "test_apple",
    "type": "COMESTIBLE",
    "comestible_type": "FOOD",
    "category": "food",
    "name": { "str": "test apple" },
    "description": "Test apple.  May contain worms, but tastes delicious!",
    "volume": "250 ml",
    "weight": "200 g",
    "color": "red",
    "spoils_in": "5 days",
    "symbol": "%",
    "quench": 3,
    "healthy": -1,
    "calories": 95,
    "price": 900,
    "price_postapoc": 100,
    "material": [ "fruit" ],
    "fun": 10,
    "flags": [ "FREEZERBURN", "SMOKABLE" ],
    "smoking_result": "dry_fruit",
    "vitamins": [ [ "vitA", 2 ], [ "vitC", 14 ], [ "iron", 1 ] ]
  },
  {
    "id": "test_egg",
    "type": "COMESTIBLE",
    "comestible_type": "FOOD",
    "category": "food",
    "name": { "str": "test egg" },
    "description": "Test egg, very much like a bird egg, but a little too perfect.  Does not need to be cooked.",
    "volume": "50 ml",
    "weight": "40 g",
    "color": "brown",
    "spoils_in": "7 days",
    "symbol": "o",
    "quench": 4,
    "healthy": 1,
    "calories": 80,
    "price": 44,
    "price_postapoc": 50,
    "material": [ "egg" ],
    "fun": -8,
    "//": "Omitting the RAW flag so calories will be taken at face value.",
    "flags": [ "FREEZERBURN" ],
    "rot_spawn": "GROUP_EGG_BIRD_WILD",
    "vitamins": [ [ "vitA", 9 ], [ "calcium", 3 ], [ "iron", 4 ], [ "vitB", 21 ] ],
    "rot_spawn_chance": 50
  },
  {
    "id": "test_jug_plastic",
    "type": "GENERIC",
    "category": "container",
    "name": "TEST gallon jug",
    "description": "A standard plastic jug used for milk and household cleaning chemicals.",
    "weight": "190 g",
    "volume": "3938 ml",
    "price": 0,
    "to_hit": 1,
    "material": [ "plastic" ],
    "symbol": ")",
    "color": "light_cyan",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "watertight": true,
        "rigid": true,
        "max_contains_volume": "3750 ml",
        "max_item_volume": "15 ml",
        "max_contains_weight": "5 kg",
        "moves": 100
      }
    ]
  },
  {
    "id": "test_waterskin",
    "type": "GENERIC",
    "category": "container",
    "name": "TEST small waterskin",
    "description": "A small watertight leather bag with a carrying strap, can hold 1.5 liters of water.",
    "weight": "453 g",
    "volume": "250 ml",
    "price": 2000,
    "to_hit": -1,
    "bashing": 1,
    "material": [ "leather" ],
    "symbol": ")",
    "color": "brown",
    "armor_data": { "covers": [ "leg_l", "leg_r" ], "sided": true, "coverage": 5, "material_thickness": 2 },
    "pocket_data": [
      {
        "max_item_volume": "15 ml",
        "max_item_length": "12 cm",
        "max_contains_volume": "1500 ml",
        "max_contains_weight": "3 kg",
        "watertight": true,
        "rigid": false,
        "moves": 220
      }
    ],
    "flags": [ "WAIST", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_balloon",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test balloon" },
    "description": "Stretchy, watertight, and airtight - the perfect trial balloon.",
    "weight": "5 g",
    "volume": "15 ml",
    "price": 0,
    "price_postapoc": 25,
    "to_hit": -5,
    "material": [ "rubber" ],
    "symbol": ")",
    "color": "white",
    "flags": [ "CONDUCTIVE", "WATER_FRIENDLY" ],
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": false,
        "airtight": true,
        "watertight": true,
        "max_contains_volume": "10 L",
        "max_contains_weight": "10 kg",
        "moves": 1000
      }
    ],
    "properties": [ [ "burst_when_filled", "75" ] ]
  },
  {
    "id": "test_can_drink",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test aluminum can" },
    "description": "A factory-sealed aluminum can for testing.",
    "weight": "13 g",
    "volume": "253 ml",
    "material": [ "aluminum" ],
    "symbol": ")",
    "color": "light_blue",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "250 ml",
        "max_item_volume": "10 ml",
        "max_contains_weight": "1 kg",
        "sealed_data": { "spoil_multiplier": 0.0 }
      }
    ]
  },
  {
    "id": "test_backpack",
    "type": "ARMOR",
    "name": "TEST backpack",
    "description": "A small backpack.  Good storage for a little encumbrance.",
    "weight": "633 g",
    "volume": "2 L",
    "price": 3900,
    "price_postapoc": 16000,
    "material": [ "cotton" ],
    "symbol": "[",
    "looks_like": "ragpouch",
    "color": "green",
    "covers": [ "torso" ],
    "coverage": 30,
    "encumbrance": 2,
    "max_encumbrance": 15,
    "pocket_data": [ { "pocket_type": "CONTAINER", "max_contains_volume": "15 L", "max_contains_weight": "30 kg", "moves": 300 } ],
    "warmth": 6,
    "material_thickness": 2,
    "flags": [ "BELTED" ]
  },
  {
    "id": "test_briefcase",
    "repairs_like": "backpack_hiking",
    "type": "ARMOR",
    "name": "TEST briefcase",
    "description": "Useful for carrying money, documents, or smuggled goods.",
    "weight": "1700 g",
    "volume": "15750 ml",
    "price": 24000,
    "to_hit": -2,
    "bashing": 5,
    "material": [ "plastic" ],
    "symbol": "[",
    "looks_like": "plastic_shopping_bag",
    "color": "light_gray",
    "covers": [ "arm_l", "arm_r", "hand_l", "hand_r" ],
    "sided": true,
    "coverage": 10,
    "encumbrance": 30,
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "max_contains_volume": "15 L",
        "max_contains_weight": "30 kg",
        "moves": 300,
        "rigid": true
      }
    ],
    "material_thickness": 2,
    "flags": [ "FANCY", "OVERSIZE", "BELTED", "RESTRICT_HANDS", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_quiver",
    "type": "ARMOR",
    "name": { "str": "test quiver" },
    "description": "Quiver of Testing, with room for 20 arrows or bolts.",
    "weight": "260 g",
    "volume": "500 ml",
    "price": 6500,
    "price_postapoc": 1000,
    "bashing": 2,
    "material": [ "leather" ],
    "symbol": "[",
    "looks_like": "bscabbard",
    "color": "brown",
    "covers": [ "leg_l", "leg_r" ],
    "sided": true,
    "coverage": 10,
    "encumbrance": 3,
    "material_thickness": 1,
    "pocket_data": [ { "ammo_restriction": { "arrow": 20, "bolt": 20 }, "moves": 20 } ],
    "flags": [ "WAIST", "OVERSIZE", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_arrow_wood",
    "type": "AMMO",
    "price": 1000,
    "name": { "str": "test wooden broadhead arrow" },
    "symbol": "=",
    "color": "green",
    "looks_like": "arrow_fire_hardened_fletched",
    "description": "Test arrow",
    "material": [ "wood", "steel" ],
    "volume": "250 ml",
    "price_postapoc": 250,
    "weight": "30 g",
    "bashing": 2,
    "cutting": 1,
    "ammo_type": "arrow",
    "damage": { "damage_type": "stab", "armor_penetration": 1, "constant_damage_multiplier": 1.5 },
    "dispersion": 110,
    "loudness": 0,
    "count": 10,
    "critical_multiplier": 10,
    "effects": [ "RECOVER_25" ]
  },
  {
    "id": "test_pointy_stick",
    "type": "GENERIC",
    "name": { "str": "test pointy stick" },
    "description": "A simple wood pole with one end sharpened.",
    "material": [ "wood" ],
    "volume": "1250 ml",
    "weight": "900 g",
    "symbol": "/",
    "color": "brown",
    "bashing": 5,
    "cutting": 9,
    "to_hit": -1,
    "price_postapoc": 10,
    "flags": [ "SPEAR" ],
    "techniques": [ "WBLOCK_1" ],
    "qualities": [ [ "COOK", 1 ] ]
  },
  {
    "type": "GENERIC",
    "id": "test_clumsy_sword",
    "name": "TEST clumsy sword",
    "description": "A poorly balanced sword for test purposes",
    "category": "spare_parts",
    "weight": "1250 g",
    "volume": "1 L",
    "longest_side": "1 meter",
    "to_hit": -1,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ],
    "bashing": 32,
    "cutting": 32,
    "price": 7500,
    "price_postapoc": 300
  },
  {
    "type": "GENERIC",
    "id": "test_normal_sword",
    "name": "TEST normal sword",
    "description": "A sword for test purposes",
    "category": "spare_parts",
    "weight": "1250 g",
    "volume": "1 L",
    "longest_side": "1 meter",
    "to_hit": 1,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ],
    "bashing": 32,
    "cutting": 32,
    "price": 7500,
    "price_postapoc": 300
  },
  {
    "type": "GENERIC",
    "id": "test_balanced_sword",
    "name": "TEST balanced sword",
    "description": "A well-balanced sword for test purposes",
    "category": "spare_parts",
    "weight": "1250 g",
    "volume": "1 L",
    "longest_side": "1 meter",
    "to_hit": 3,
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ],
    "bashing": 32,
    "cutting": 32,
    "price": 7500,
    "price_postapoc": 300
  },
  {
    "id": "test_glock",
    "type": "GUN",
    "name": { "str": "Test Glock" },
    "description": "A handgun for testing, based on the Glock 9mm.",
    "weight": "600 g",
    "volume": "500 ml",
    "price": 69000,
    "price_postapoc": 2500,
    "to_hit": -2,
    "bashing": 8,
    "material": [ "plastic", "steel" ],
    "symbol": "(",
    "color": "dark_gray",
    "ammo": [ "test_9mm" ],
    "ranged_damage": { "damage_type": "bullet", "amount": -1 },
    "dispersion": 480,
    "durability": 6,
    "blackpowder_tolerance": 48,
    "min_cycle_recoil": 380,
    "skill": "pistol",
    "pocket_data": [
      {
        "pocket_type": "MAGAZINE_WELL",
        "holster": true,
        "max_contains_volume": "20 L",
        "max_contains_weight": "20 kg",
        "item_restriction": [ "test_glockmag", "test_glockbigmag" ]
      }
    ]
  },
  {
    "id": "test_glockmag",
    "looks_like": "glock17_17",
    "type": "MAGAZINE",
    "name": { "str": "Test Glock magazine" },
    "description": "Magazine exclusively designed for Test Glocks.",
    "weight": "105 g",
    "volume": "250 ml",
    "price": 2900,
    "price_postapoc": 100,
    "material": [ "plastic" ],
    "symbol": "#",
    "color": "light_gray",
    "ammo_type": [ "test_9mm" ],
    "capacity": 15,
    "flags": [ "MAG_COMPACT" ],
    "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "test_9mm": 15 } } ]
  },
  {
    "id": "test_glockbigmag",
    "looks_like": "glock17_17",
    "type": "MAGAZINE",
    "name": { "str": "Test Glock extended magazine" },
    "description": "30-round magazine exclusively for use with the Test Glock.",
    "weight": "210 g",
    "volume": "500 ml",
    "price": 4700,
    "price_postapoc": 500,
    "material": [ "plastic" ],
    "symbol": "#",
    "color": "light_gray",
    "ammo_type": [ "test_9mm" ],
    "capacity": 30,
    "reload_time": 140,
    "flags": [ "MAG_COMPACT" ],
    "pocket_data": [ { "pocket_type": "MAGAZINE", "rigid": true, "ammo_restriction": { "test_9mm": 30 } } ]
  },
  {
    "id": "test_9mm_ammo",
    "type": "AMMO",
    "name": { "str": "Test 9mm ammo" },
    "description": "Generic 9mm ammo based on JHP.",
    "weight": "7 g",
    "volume": "250 ml",
    "price": 150,
    "price_postapoc": 1000,
    "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
    "material": [ "brass", "powder" ],
    "symbol": "=",
    "color": "yellow",
    "count": 50,
    "stack_size": 50,
    "ammo_type": "test_9mm",
    "casing": "9mm_casing",
    "range": 14,
    "damage": { "damage_type": "bullet", "amount": 26 },
    "dispersion": 60,
    "recoil": 500,
    "effects": [ "COOKOFF" ]
  },
  {
    "id": "test_45_ammo",
    "type": "AMMO",
    "name": { "str": "Test .45 ammo" },
    "description": "Test ammo based on the .45 JHP.",
    "weight": "10 g",
    "volume": "250 ml",
    "price": 180,
    "price_postapoc": 600,
    "flags": [ "IRREPLACEABLE_CONSUMABLE" ],
    "material": [ "brass", "powder" ],
    "symbol": "=",
    "color": "yellow",
    "count": 30,
    "stack_size": 30,
    "ammo_type": "45",
    "casing": "45_casing",
    "range": 16,
    "damage": { "damage_type": "bullet", "amount": 30, "armor_penetration": 2 },
    "dispersion": 50,
    "recoil": 600,
    "effects": [ "COOKOFF" ]
  },
  {
    "id": "test_liquid",
    "type": "COMESTIBLE",
    "comestible_type": "DRINK",
    "category": "food",
    "name": { "str_sp": "test liquid" },
    "description": "No clue what it's made of, but it's definitely liquid.  Only for testing, do not drink!",
    "phase": "liquid",
    "weight": "250 g",
    "volume": "250 ml",
    "price": 50,
    "symbol": "~",
    "color": "light_blue"
  },
  {
    "id": "test_gas",
    "type": "ammunition_type",
    "name": "heady vapours",
    "default": "test_gas"
  },
  {
    "id": "test_gas",
    "type": "AMMO",
    "ammo_type": "test_gas",
    "category": "chems",
    "name": { "str_sp": "test gas" },
    "description": "Some mysterious substance in the form of a gas.  Only for testing, do not inhale!",
    "phase": "gas",
    "weight": "250 g",
    "volume": "250 ml",
    "price": 50,
    "symbol": "~",
    "color": "light_gray"
  },
  {
    "id": "test_box",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test box" },
    "description": "A simple 1-liter cardboard box of deliberately undefined proportions.",
    "weight": "100 g",
    "volume": "1050 ml",
    "price": 0,
    "price_postapoc": 25,
    "material": [ "cardboard" ],
    "symbol": "[",
    "color": "brown",
    "pocket_data": [
      {
        "//": "max_item_length is left undefined on purpose, to test default length from volume",
        "pocket_type": "CONTAINER",
        "rigid": true,
        "max_item_volume": "1 L",
        "max_contains_volume": "1 L",
        "max_contains_weight": "10 kg",
        "moves": 200
      }
    ]
  },
  {
    "id": "test_rod_14cm",
    "type": "GENERIC",
    "name": "test 14 cm rod",
    "description": "A thin rod exactly 14 cm in length",
    "category": "spare_parts",
    "weight": "1 g",
    "volume": "1 ml",
    "longest_side": "14 cm",
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ]
  },
  {
    "id": "test_rod_15cm",
    "type": "GENERIC",
    "name": "test 15 cm rod",
    "description": "A thin rod exactly 15 cm in length",
    "category": "spare_parts",
    "weight": "1 g",
    "volume": "1 ml",
    "longest_side": "15 cm",
    "color": "dark_gray",
    "symbol": "/",
    "material": [ "steel" ]
  },
  {
    "id": "test_crafted_suppressor",
    "type": "GUNMOD",
    "name": { "str": "test suppressor" },
    "description": "Gun suppressor mod for testing.",
    "weight": "880 g",
    "volume": "750 ml",
    "price": 480,
    "price_postapoc": 250,
    "install_time": "30 s",
    "to_hit": 1,
    "bashing": 3,
    "material": [ "steel" ],
    "symbol": ":",
    "color": "dark_gray",
    "location": "muzzle",
    "mod_targets": [ "pistol", "rifle" ],
    "consume_chance": 20,
    "consume_divisor": 110,
    "damage_modifier": { "damage_type": "bullet", "amount": -5 },
    "dispersion_modifier": 40,
    "sight_dispersion": 11,
    "aim_speed": 4,
    "handling_modifier": 1,
    "loudness_modifier": -30,
    "flags": [ "DISABLE_SIGHTS", "CONSUMABLE", "REACH_ATTACK" ]
  },
  {
    "type": "COMESTIBLE",
    "id": "test_milk",
    "name": { "str_sp": "intolerant milk" },
    "weight": "258 g",
    "color": "white",
    "spoils_in": "1 d",
    "container": "jug_plastic",
    "comestible_type": "DRINK",
    "symbol": "~",
    "quench": 25,
    "healthy": 1,
    "calories": 132,
    "description": "You can only push a drink so far before it spoils.",
    "price": 38,
    "price_postapoc": 50,
    "material": [ "milk" ],
    "volume": "250 ml",
    "phase": "liquid",
    "flags": [ "EATEN_COLD" ],
    "vitamins": [ [ "vitA", 10 ], [ "vitB", 6 ], [ "vitC", 4 ], [ "calcium", 25 ] ],
    "fun": 1
  },
  {
    "type": "COMESTIBLE",
    "id": "test_brew_wine",
    "name": "tennis ball wine must",
    "description": "Unfermented tennis ball wine.  A rubbery, boiled juice made from mashed tennis balls.",
    "weight": "46 g",
    "color": "light_red",
    "container": "bottle_glass",
    "flags": [ "TRADER_AVOID", "NUTRIENT_OVERRIDE" ],
    "symbol": "~",
    "calories": 17,
    "quench": 6,
    "fun": -5,
    "price": 0,
    "material": [ "rubber", "water" ],
    "volume": "250 ml",
    "price_postapoc": 10,
    "charges": 7,
    "phase": "liquid",
    "comestible_type": "DRINK",
    "brewable": { "time": "12 hours", "results": [ "test_wine", "yeast" ] }
  },
  {
    "type": "COMESTIBLE",
    "id": "test_wine",
    "name": { "str_sp": "test tennis ball wine" },
    "weight": "36 g",
    "color": "light_red",
    "addiction_type": "alcohol",
    "use_action": [ "ALCOHOL_WEAK" ],
    "stim": -4,
    "container": "bottle_glass",
    "comestible_type": "DRINK",
    "symbol": "~",
    "quench": 10,
    "healthy": -2,
    "addiction_potential": 3,
    "calories": 49,
    "description": "Cheap booze made from fermented tennis ball juice.  Tastes just like it sounds.",
    "price": 550,
    "price_postapoc": 100,
    "material": [ "alcohol", "water" ],
    "primary_material": "alcohol",
    "volume": "250 ml",
    "phase": "liquid",
    "charges": 7,
    "flags": [ "EATEN_COLD" ],
    "fun": -5,
    "freezing_point": 20
  },
  {
    "id": "test_nuclear_carafe",
    "type": "GENERIC",
    "category": "tools",
    "name": { "str": "test nuclear carafe" },
    "description": "This is a test coffee carafe designed to keep atomic beverages extra radioactive.  It leaks radiation all the time.",
    "weight": "5 kg",
    "volume": "4 L",
    "price": 100000,
    "price_postapoc": 3000,
    "material": [ "plastic", "aluminum" ],
    "qualities": [ [ "BOIL", 1 ] ],
    "symbol": "&",
    "color": "light_green",
    "flags": [ "LEAK_ALWAYS", "RADIOACTIVE" ]
  },
  {
    "id": "test_gum",
    "type": "COMESTIBLE",
    "comestible_type": "MED",
    "name": { "str_sp": "test chewing gum" },
    "description": "Curiously stimulating and thirst-quenching blueberry-flavored chewing gum.",
    "category": "food",
    "weight": "3 g",
    "volume": "250 ml",
    "price": 100,
    "price_postapoc": 100,
    "charges": 10,
    "stack_size": 100,
    "symbol": "*",
    "color": "pink",
    "fun": 5,
    "stim": 10,
    "quench": 50,
    "addiction_potential": 10,
    "flags": [ "NO_INGEST" ],
    "use_action": [ "CHEW" ]
  },
  {
    "id": "test_cmdline_book",
    "type": "BOOK",
    "name": { "str": "In the Beginning… Was the Command Line", "str_pl": "copies of In the Beginning… Was the Command Line" },
    "description": "Humorous 1999 essay by Neal Stephenson comparing computer operating system vendors to car dealerships.",
    "weight": "300 g",
    "volume": "300 ml",
    "price": 500,
    "price_postapoc": 500,
    "material": [ "paper" ],
    "symbol": "?",
    "color": "blue",
    "time": "5 m",
    "fun": 2
  },
  {
    "id": "test_dragon_book",
    "type": "BOOK",
    "name": { "str": "Principles of Compiler Design", "str_pl": "copies of Principles of Compiler Design" },
    "description": "Alfred Aho and Jeffrey Ullman's classic 1977 computer science textbook.  Features a cover drawing of a knight wielding an LALR parser generation and syntax directed translation against the metaphorical green dragon, The Complexity of Compiler Design.",
    "weight": "1587 g",
    "volume": "1500 ml",
    "price": 7800,
    "price_postapoc": 500,
    "bashing": 6,
    "material": [ "paper" ],
    "symbol": "?",
    "color": "green",
    "skill": "computer",
    "required_level": 4,
    "max_level": 7,
    "intelligence": 12,
    "time": "50 m",
    "fun": -1
  },
  {
    "id": "test_power_armor",
    "type": "ARMOR",
    "category": "armor",
    "name": { "str": "test power armor" },
    "description": "This is a prototype power armor just for testing.",
    "weight": "55 kg",
    "volume": "100 L",
    "price": 7000000,
    "price_postapoc": 30000,
    "to_hit": 1,
    "bashing": 1,
    "material": [ "hardsteel", "ceramic", "kevlar_rigid" ],
    "symbol": "[",
    "looks_like": "depowered_armor",
    "color": "light_gray",
    "covers": [ "torso", "arm_l", "arm_r", "hand_l", "hand_r", "leg_l", "leg_r", "foot_l", "foot_r" ],
    "coverage": 100,
    "encumbrance": 50,
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "max_contains_volume": "2500 ml",
        "max_contains_weight": "15 kg",
        "moves": 200
      }
    ],
    "warmth": 90,
    "power_armor": true,
    "material_thickness": 14,
    "environmental_protection": 16,
    "flags": [ "WATERPROOF", "STURDY", "ELECTRIC_IMMUNE" ]
  },
  {
    "id": "test_meower_armor",
    "type": "PET_ARMOR",
    "name": { "str": "meower armor" },
    "description": "Sleek and lightweight kevlar cat harness with a protective hood and chestplate.  Includes a very small, inconvenient velcro pocket on the back.",
    "weight": "300 g",
    "volume": "1 L",
    "price": 30000,
    "price_postapoc": 1000,
    "material": [ "kevlar_layered" ],
    "material_thickness": 2,
    "environmental_protection": 10,
    "symbol": "[",
    "looks_like": "tacvest",
    "color": "blue",
    "flags": [ "IS_PET_ARMOR", "NO_SALVAGE" ],
    "max_pet_vol": "3 L",
    "min_pet_vol": "6 L",
    "pet_bodytype": "dog",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "max_contains_volume": "100 ml",
        "max_contains_weight": "100 g",
        "//": "It takes you an extremely long time to make your cat hold still.",
        "moves": 2500
      }
    ]
  },
  {
    "id": "test_matches",
    "type": "TOOL",
    "name": { "str": "test matchbook" },
    "description": "Test matches - when you must burn things, for science!",
    "weight": "10 g",
    "volume": "10 ml",
    "price": 10,
    "price_postapoc": 50,
    "material": [ "cardboard" ],
    "symbol": ",",
    "color": "blue",
    "initial_charges": 20,
    "max_charges": 20,
    "charges_per_use": 1,
    "pocket_data": [ { "pocket_type": "MAGAZINE", "holster": true, "ammo_restriction": { "match": 20 } } ],
    "use_action": { "type": "firestarter", "moves": 40, "moves_slow": 1000 },
    "flags": [ "FIRESTARTER", "NO_RELOAD", "NO_UNLOAD" ]
  },
  {
    "id": "test_thumb",
    "type": "COMESTIBLE",
    "category": "other",
    "material": [ "hflesh" ],
    "name": { "str": "test mutated thumb" },
    "description": "A misshapen human thumb.  Eating this would be incredibly disgusting and probably cause you to mutate.",
    "volume": "100 ml",
    "weight": "100 g",
    "color": "brown",
    "spoils_in": "2 days",
    "use_action": { "type": "mutagen", "is_weak": true },
    "flags": [ "TRADER_AVOID", "NUTRIENT_OVERRIDE" ],
    "comestible_type": "FOOD",
    "symbol": "%",
    "healthy": -8,
    "calories": 50,
    "price": 0,
    "price_postapoc": 0,
    "fun": -20
  },
  {
    "id": "test_swat_armor",
    "repairs_like": "survivor_suit",
    "type": "ARMOR",
    "category": "armor",
    "name": { "str": "SWAT armor" },
    "//": "This is well within the pricing structure I found for ballistic vest, shins, and LBE.  LEO gear ain't cheap.",
    "description": "A suit of black bulletproof armor with lots of pockets.  The word SWAT is emblazoned across the back.",
    "weight": "7800 g",
    "volume": "13 L",
    "price": 285000,
    "price_postapoc": 2000,
    "to_hit": -3,
    "bashing": 6,
    "material": [ "kevlar_layered", "cotton" ],
    "symbol": "[",
    "looks_like": "touring_suit",
    "color": "dark_gray",
    "armor_portion_data": [ { "covers": [ "torso", "leg_l", "leg_r", "arm_l", "arm_r" ], "coverage": 95, "encumbrance": [ 12, 25 ] } ],
    "pocket_data": [
      { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "3 kg", "moves": 80 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "1 L", "max_contains_weight": "3 kg", "moves": 80 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "1500 ml", "max_contains_weight": "3 kg", "moves": 120 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "1500 ml", "max_contains_weight": "3 kg", "moves": 120 }
    ],
    "warmth": 35,
    "material_thickness": 11,
    "valid_mods": [ "steel_padded" ],
    "environmental_protection": 4,
    "flags": [ "POCKETS", "STURDY" ]
  },
  {
    "id": "test_pants_fur",
    "type": "ARMOR",
    "name": { "str_sp": "fur pants" },
    "description": "A hefty pair of fur-lined pants.",
    "weight": "920 g",
    "volume": "4 L",
    "price": 20000,
    "price_postapoc": 100,
    "to_hit": 1,
    "material": [ "cotton", "fur" ],
    "symbol": "[",
    "looks_like": "pants",
    "color": "brown",
    "covers": [ "leg_l", "leg_r" ],
    "coverage": 95,
    "encumbrance": 16,
    "max_encumbrance": 20,
    "pocket_data": [
      { "pocket_type": "CONTAINER", "max_contains_volume": "350 ml", "max_contains_weight": "1 kg", "moves": 80 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "350 ml", "max_contains_weight": "1 kg", "moves": 80 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "250 ml", "max_contains_weight": "1 kg", "moves": 100 },
      { "pocket_type": "CONTAINER", "max_contains_volume": "250 ml", "max_contains_weight": "1 kg", "moves": 100 }
    ],
    "warmth": 80,
    "material_thickness": 3,
    "valid_mods": [ "steel_padded" ],
    "environmental_protection": 3,
    "flags": [ "VARSIZE", "POCKETS" ]
  },
  {
    "id": "test_pants_faux_fur",
    "type": "ARMOR",
    "copy-from": "test_pants_fur",
    "name": { "str_sp": "faux fur pants" },
    "description": "A pair of long cotton pants lined with warm imitation fur.",
    "material": [ "faux_fur", "cotton" ],
    "covers": [ "leg_l", "leg_r" ],
    "warmth": 70
  },
  {
    "id": "test_portion_faux_fur_pants_suit",
    "type": "ARMOR",
    "copy-from": "test_pants_fur",
    "name": { "str_sp": "faux fur pants suit test thing" },
    "description": "A TEST OBJECT SHOULD NOT BE IN GAME",
    "material": [ "faux_fur", "cotton" ],
    "armor_portion_data": [
      { "covers": [ "torso", "leg_r", "arm_r" ], "coverage": 100, "encumbrance": [ 10, 25 ] },
      { "covers": [ "arm_l", "leg_l", "head" ], "coverage": 50, "encumbrance": 5 }
    ],
    "warmth": 5
  },
  {
    "id": "test_liquid_1ml",
    "type": "AMMO",
    "category": "fuel",
    "ammo_type": "gasoline",
    "phase": "liquid",
    "name": { "str_sp": "test liquid" },
    "description": "One milliliter liquid.",
    "weight": "1 g",
    "volume": "1 ml",
    "symbol": "?",
    "color": "light_gray"
  },
  {
    "id": "test_solid_1ml",
    "type": "AMMO",
    "category": "spare_parts",
    "ammo_type": "components",
    "name": { "str": "test solid" },
    "description": "One milliliter solid.",
    "volume": "1 ml",
    "weight": "1 g",
    "symbol": "?",
    "color": "light_gray"
  },
  {
    "id": "test_watertight_open_sealed_container_250ml",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test can" },
    "description": "Some strange can from another dimension.  It can be worn on the waist.",
    "weight": "13 g",
    "volume": "253 ml",
    "symbol": "?",
    "color": "light_gray",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "250 ml",
        "max_item_volume": "250 ml",
        "max_contains_weight": "1 kg",
        "sealed_data": { "spoil_multiplier": 0.0 }
      }
    ],
    "armor_data": { "covers": [ "torso" ], "coverage": 10, "encumbrance": 4, "material_thickness": 2 },
    "flags": [ "WAIST", "OVERSIZE", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_watertight_open_sealed_multipocket_container_2x250ml",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test can" },
    "description": "Some strange can from another dimension.",
    "weight": "26 g",
    "volume": "506 ml",
    "symbol": "?",
    "color": "light_gray",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "250 ml",
        "max_item_volume": "250 ml",
        "max_contains_weight": "1 kg",
        "sealed_data": { "spoil_multiplier": 0.0 }
      },
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "250 ml",
        "max_item_volume": "250 ml",
        "max_contains_weight": "1 kg",
        "sealed_data": { "spoil_multiplier": 0.0 }
      }
    ]
  },
  {
    "id": "test_watertight_open_sealed_container_1L",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test jug" },
    "description": "Some strange jug from another dimension.",
    "weight": "52 g",
    "volume": "1012 ml",
    "symbol": "?",
    "color": "light_gray",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "1 L",
        "max_item_volume": "1 L",
        "max_contains_weight": "4 kg",
        "sealed_data": { "spoil_multiplier": 0.0 }
      }
    ],
    "armor_data": { "covers": [ "torso" ], "coverage": 10, "encumbrance": 4, "material_thickness": 2 },
    "flags": [ "WAIST", "OVERSIZE", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_watertight_open_sealed_multipocket_container_2x1L",
    "type": "GENERIC",
    "category": "container",
    "name": { "str": "test jug with strap", "str_pl": "test jugs with strap" },
    "description": "Some strange jug from another dimension.  It can be worn on the waist.",
    "weight": "104 g",
    "volume": "2024 ml",
    "symbol": "?",
    "color": "light_gray",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "1 L",
        "max_item_volume": "1 L",
        "max_contains_weight": "4 kg",
        "sealed_data": { "spoil_multiplier": 0.0 },
        "item_restriction": [ "test_watertight_open_sealed_multipocket_container_2x250ml", "test_solid_1ml" ]
      },
      {
        "pocket_type": "CONTAINER",
        "rigid": true,
        "watertight": true,
        "open_container": true,
        "max_contains_volume": "1 L",
        "max_item_volume": "1 L",
        "max_contains_weight": "4 kg",
        "sealed_data": { "spoil_multiplier": 0.0 },
        "item_restriction": [ "test_watertight_open_sealed_multipocket_container_2x250ml", "test_solid_1ml" ]
      }
    ],
    "armor_data": { "covers": [ "torso" ], "coverage": 10, "encumbrance": 4, "material_thickness": 2 },
    "flags": [ "WAIST", "OVERSIZE", "WATER_FRIENDLY" ]
  },
  {
    "id": "test_restricted_container_holder",
    "type": "ARMOR",
    "name": { "str": "test restricted container holder" },
    "description": "A backpack that somehow only holds specific containers.",
    "weight": "208 g",
    "volume": "4048 ml",
    "symbol": "?",
    "color": "light_gray",
    "pocket_data": [
      {
        "pocket_type": "CONTAINER",
        "max_contains_volume": "4 L",
        "max_contains_weight": "16 kg",
        "item_restriction": [
          "test_watertight_open_sealed_multipocket_container_2x1L",
          "test_watertight_open_sealed_container_1L",
          "test_watertight_open_sealed_container_250ml"
        ]
      }
    ],
    "armor_data": { "covers": [ "torso" ], "coverage": 10, "encumbrance": 4, "material_thickness": 2 },
    "flags": [ "BELTED" ]
  }
]
