{
  "fists": {
    "name": "Fists",
    "type": "melee",
    "style": "fists",
    "dmg": 14,
    "swing": 0.22,
    "reach": 1.6,
    "arc": 1.2,
    "block": 0.35,
    "pellets": 1,
    "rpm": 270,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 0,
    "starter": true,
    "color": "#ffd8a0",
    "desc": "Always on you. Jab, cross, uppercut: click to punch (a 3-hit combo, the uppercut hits harder), hold to wind up a haymaker, right click to guard. H holsters and draws your weapon.",
    "cls": "primitive"
  },
  "sidearm": {
    "name": "Starter Pistol",
    "type": "pistol",
    "dmg": 26,
    "pellets": 1,
    "rpm": 300,
    "mag": 10,
    "reload": 1.2,
    "spread": 0.012,
    "ads": 0.003,
    "recoil": 0.024,
    "cost": 1,
    "auto": false,
    "price": 0,
    "starter": true,
    "color": "#c8d0d8",
    "desc": "Every runner's free sidearm. Never lost: a death keeps it. Nothing fancy, but it always works.",
    "cls": "kinetic"
  },
  "knife": {
    "name": "Basic Knife",
    "type": "melee",
    "style": "knife",
    "dmg": 24,
    "swing": 0.26,
    "reach": 1.8,
    "arc": 1.2,
    "block": 0,
    "assassin": true,
    "pellets": 1,
    "rpm": 230,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 0,
    "starter": true,
    "color": "#9fd8ff",
    "desc": "Every runner's free blade. Never lost. Quick slashes and a stab finisher; triple damage on Glitches that haven't noticed you.",
    "cls": "blade"
  },
  "pulse": {
    "name": "Pulse Rifle",
    "dmg": 21,
    "pellets": 1,
    "rpm": 620,
    "mag": 30,
    "reload": 1.7,
    "spread": 0.014,
    "ads": 0.003,
    "recoil": 0.01,
    "cost": 1,
    "auto": true,
    "price": 350,
    "color": "#39ff88",
    "desc": "Reliable full-auto. Cheap, but no longer free: lose it in a raid and it's gone."
  },
  "needler": {
    "name": "Needler SMG",
    "dmg": 17,
    "pellets": 1,
    "rpm": 1100,
    "mag": 45,
    "reload": 1.5,
    "spread": 0.022,
    "ads": 0.01,
    "recoil": 0.006,
    "cost": 1,
    "auto": true,
    "price": 650,
    "color": "#62b6ff",
    "desc": "Bullet hose. Melts drones up close."
  },
  "scatter": {
    "name": "Scatter Cannon",
    "dmg": 18,
    "pellets": 9,
    "rpm": 85,
    "mag": 6,
    "reload": 2.2,
    "spread": 0.075,
    "ads": 0.05,
    "recoil": 0.05,
    "cost": 2,
    "auto": false,
    "price": 900,
    "color": "#ffb020",
    "desc": "Devastating up close."
  },
  "ion": {
    "name": "Ion Carbine",
    "dmg": 70,
    "pellets": 1,
    "rpm": 260,
    "mag": 14,
    "reload": 1.9,
    "spread": 0.006,
    "ads": 0.0008,
    "recoil": 0.03,
    "cost": 2,
    "auto": false,
    "price": 1400,
    "color": "#b48cff",
    "desc": "Hard-hitting semi-auto. Rewards headshots."
  },
  "rail": {
    "name": "Rail Lance",
    "dmg": 240,
    "pellets": 1,
    "rpm": 55,
    "mag": 4,
    "reload": 2.5,
    "spread": 0.002,
    "ads": 0,
    "recoil": 0.06,
    "cost": 4,
    "auto": false,
    "price": 2200,
    "color": "#37e8ff",
    "desc": "Pierces every enemy in a line.",
    "pierce": true
  },
  "pistol": {
    "name": "Ember Pistol",
    "dmg": 44,
    "pellets": 1,
    "rpm": 380,
    "mag": 12,
    "reload": 1.1,
    "spread": 0.008,
    "ads": 0.002,
    "recoil": 0.022,
    "cost": 1,
    "auto": false,
    "price": 450,
    "color": "#ffd25a",
    "desc": "A snappy one-handed sidearm. Quick to reload, deadly up close, and great in VR.",
    "type": "pistol"
  },
  "arbalest": {
    "name": "Arbalest",
    "dmg": 240,
    "pellets": 1,
    "rpm": 50,
    "mag": 1,
    "reload": 1.15,
    "spread": 0.002,
    "ads": 0,
    "recoil": 0.05,
    "cost": 4,
    "auto": false,
    "price": 1900,
    "color": "#ff9a3d",
    "desc": "A plasma crossbow. Its heavy bolt flies fast and flat and pierces a whole line of Glitches.",
    "pierce": true,
    "type": "crossbow"
  },
  "warbow": {
    "name": "Warbow",
    "dmg": 150,
    "pellets": 1,
    "rpm": 130,
    "mag": 12,
    "reload": 1.8,
    "spread": 0.004,
    "ads": 0.0008,
    "recoil": 0.02,
    "cost": 2,
    "auto": false,
    "price": 1500,
    "color": "#9fffd0",
    "desc": "Hold to draw, release to loose. A full draw hits hardest and flies fastest, and arrows drop over distance. Never reloads: each arrow costs 2 Pulse Cells. Quiet: Glitches barely hear it.",
    "type": "bow"
  },
  "longsword": {
    "name": "Energy Longsword",
    "type": "melee",
    "style": "sword",
    "dmg": 60,
    "swing": 0.42,
    "reach": 2.7,
    "arc": 1.9,
    "block": 0.75,
    "parry": true,
    "pellets": 1,
    "rpm": 140,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 1600,
    "color": "#37e8ff",
    "desc": "An energy blade and a buckler. Click to slash (a 3-hit combo), hold to wind up a heavy blow, and hold right click to raise your guard: it stops 75% of incoming damage and swats bolts out of the air."
  },
  "warmaul": {
    "name": "War Maul",
    "type": "melee",
    "style": "maul",
    "dmg": 120,
    "swing": 0.8,
    "reach": 2.5,
    "arc": 1.5,
    "block": 0.5,
    "staggerAll": true,
    "pellets": 1,
    "rpm": 75,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 2000,
    "color": "#ff9a3d",
    "desc": "Slow and crushing. Every blow staggers what it hits, and a heavy one flattens. Its guard stops half the damage."
  },
  "daggers": {
    "name": "Twin Daggers",
    "type": "melee",
    "style": "daggers",
    "dmg": 30,
    "swing": 0.24,
    "reach": 1.9,
    "arc": 1.3,
    "block": 0,
    "assassin": true,
    "pellets": 1,
    "rpm": 250,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 1300,
    "color": "#b56cff",
    "desc": "Twin blades, fast as thought. Triple damage on Glitches that haven't noticed you or are staggered. No guard."
  },
  "hail": {
    "name": "Hailstorm LMG",
    "dmg": 28,
    "pellets": 1,
    "rpm": 780,
    "mag": 90,
    "reload": 3.6,
    "spread": 0.02,
    "ads": 0.008,
    "recoil": 0.008,
    "cost": 1,
    "auto": true,
    "price": 3200,
    "color": "#ff5d5d",
    "desc": "90 rounds. Pin the boss down."
  },
  "gravity": {
    "name": "Gravity Gun",
    "special": "gravity",
    "type": "carbine",
    "dmg": 60,
    "pellets": 1,
    "rpm": 120,
    "mag": 12,
    "reload": 2,
    "spread": 0,
    "ads": 0,
    "recoil": 0.02,
    "cost": 2,
    "auto": false,
    "price": 2600,
    "color": "#9d7bff",
    "loot": 0.35,
    "shop": true,
    "grab": {
      "range": 9,
      "hold": 2.6,
      "throwSpeed": 34,
      "throwDmg": 60,
      "slamDmg": 45,
      "maxEnemyHp": 220
    },
    "desc": "Hold fire to lift a prop or a small Glitch, let go to throw it. Thrown things hit hard."
  },
  "ricochet": {
    "name": "Ricochet Disc",
    "special": "ricochet",
    "type": "smg",
    "dmg": 38,
    "pellets": 1,
    "rpm": 150,
    "mag": 8,
    "reload": 1.8,
    "spread": 0,
    "ads": 0,
    "recoil": 0.015,
    "cost": 1,
    "auto": false,
    "price": 1900,
    "color": "#37e8ff",
    "loot": 0.5,
    "shop": true,
    "disc": {
      "speed": 30,
      "bounces": 3,
      "life": 3.5,
      "radius": 0.45,
      "bounceBonus": 0.25
    },
    "desc": "A spinning blade that bounces off walls 3 times, cutting through everything on the way. Hits harder after each bounce."
  },
  "blackhole": {
    "name": "Black Hole Grenade",
    "special": "blackhole",
    "type": "shotgun",
    "dmg": 120,
    "pellets": 1,
    "rpm": 40,
    "mag": 2,
    "reload": 3,
    "spread": 0,
    "ads": 0,
    "recoil": 0.06,
    "cost": 6,
    "auto": false,
    "price": 3400,
    "color": "#ff2bd6",
    "loot": 0.25,
    "shop": true,
    "hole": {
      "speed": 20,
      "fuse": 1.4,
      "seconds": 3,
      "radius": 10,
      "pull": 11,
      "tickDmg": 12,
      "bossPull": 0.25
    },
    "desc": "Lobs a singularity that drags every Glitch within 10 m into it for 3 s, then collapses for big damage."
  },
  "rewind": {
    "name": "Rewind Gun",
    "special": "rewind",
    "type": "rail",
    "dmg": 30,
    "pellets": 1,
    "rpm": 50,
    "mag": 3,
    "reload": 2.4,
    "spread": 0,
    "ads": 0,
    "recoil": 0.03,
    "cost": 4,
    "auto": false,
    "price": 2900,
    "color": "#ffd25a",
    "loot": 0.3,
    "shop": true,
    "rewind": {
      "seconds": 3,
      "stun": 1.2,
      "bossSeconds": 1
    },
    "desc": "Sends a target back to where it was 3 s ago, dazed. Bosses only slip back 1 s."
  },
  "revolver": {
    "name": "Six-Shot Revolver",
    "cls": "kinetic",
    "type": "pistol",
    "dmg": 74,
    "pellets": 1,
    "rpm": 150,
    "mag": 6,
    "reload": 2.1,
    "spread": 0.006,
    "ads": 0.001,
    "recoil": 0.06,
    "cost": 2,
    "auto": false,
    "price": 1100,
    "shop": true,
    "color": "#ffb060",
    "desc": "Six heavy rounds and a slow reload. Every shot kicks like a mule and hits like one."
  },
  "katana": {
    "name": "Katana",
    "cls": "blade",
    "type": "melee",
    "style": "katana",
    "dmg": 50,
    "swing": 0.32,
    "reach": 2.5,
    "arc": 1.6,
    "block": 0.55,
    "parry": true,
    "pellets": 1,
    "rpm": 190,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 1700,
    "shop": true,
    "color": "#ff4b5c",
    "desc": "A curved single edge, faster than the longsword. Click for a 3-cut combo, hold for a heavy draw-cut, right click to parry: a clean guard swats bolts away."
  },
  "sling": {
    "name": "Sling",
    "cls": "primitive",
    "type": "bow",
    "proj": "stone",
    "dmg": 70,
    "pellets": 1,
    "rpm": 130,
    "mag": 12,
    "reload": 1.8,
    "spread": 0.007,
    "ads": 0.002,
    "recoil": 0.01,
    "cost": 1,
    "auto": false,
    "price": 500,
    "shop": true,
    "color": "#d8b070",
    "desc": "Hold to whirl it up, release to let fly. Stones drop fast, so aim high. Each stone costs 1 Pulse Cell. Silent."
  },
  "runestaff": {
    "name": "Rune Staff",
    "cls": "arcane",
    "dmg": 48,
    "pellets": 1,
    "rpm": 150,
    "mag": 8,
    "reload": 1.8,
    "spread": 0.004,
    "ads": 0.001,
    "recoil": 0.004,
    "cost": 2,
    "auto": false,
    "price": 2100,
    "shop": true,
    "color": "#b56cff",
    "desc": "Carved runes and a living crystal. Each cast throws a bolt of light that leaves a sigil where it lands. No recoil."
  },
  "hexorb": {
    "name": "Hex Orb",
    "cls": "arcane",
    "dmg": 14,
    "pellets": 6,
    "rpm": 110,
    "mag": 5,
    "reload": 1.6,
    "spread": 0.06,
    "ads": 0.04,
    "recoil": 0.004,
    "cost": 2,
    "auto": false,
    "price": 1800,
    "shop": true,
    "color": "#ff7ad9",
    "desc": "A fistful of hex light: each cast bursts into six orbs that spread wide. Brutal up close."
  },
  "leveraction": {
    "name": "Lever-Action Rifle",
    "world": "wildwest",
    "cls": "kinetic",
    "dmg": 68,
    "pellets": 1,
    "rpm": 110,
    "mag": 8,
    "reload": 2.4,
    "spread": 0.004,
    "ads": 0.0008,
    "recoil": 0.05,
    "cost": 2,
    "auto": false,
    "price": 1400,
    "color": "#d8a050",
    "desc": "From Dust Ridge. Eight long rounds, a lever between each, and it hits like the frontier."
  },
  "doublebarrel": {
    "name": "Double-Barrel",
    "world": "wildwest",
    "cls": "kinetic",
    "type": "shotgun",
    "dmg": 13,
    "pellets": 9,
    "rpm": 100,
    "mag": 2,
    "reload": 1.9,
    "spread": 0.07,
    "ads": 0.05,
    "recoil": 0.07,
    "cost": 2,
    "auto": false,
    "price": 1200,
    "color": "#c8a070",
    "desc": "From Dust Ridge. Two barrels, two chances, then a reload."
  },
  "halberd": {
    "name": "Halberd",
    "world": "castle",
    "cls": "blade",
    "type": "melee",
    "style": "halberd",
    "dmg": 74,
    "swing": 0.55,
    "reach": 3.2,
    "arc": 1.4,
    "block": 0.4,
    "staggerAll": true,
    "pellets": 1,
    "rpm": 110,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 1800,
    "color": "#c8d0d8",
    "desc": "From Gravenhold. An axe on a pole: the longest reach of any blade, and every blow staggers."
  },
  "flail": {
    "name": "Flail",
    "world": "castle",
    "cls": "blade",
    "type": "melee",
    "style": "maul",
    "dmg": 82,
    "swing": 0.6,
    "reach": 2.4,
    "arc": 2,
    "block": 0.2,
    "pellets": 1,
    "rpm": 100,
    "mag": 1,
    "reload": 0.1,
    "spread": 0,
    "ads": 0,
    "recoil": 0,
    "cost": 0,
    "auto": false,
    "price": 1600,
    "color": "#ff8a3a",
    "desc": "From Gravenhold. A spiked ball on a chain. Wide, heavy and hard to stop."
  },
  "zapper": {
    "name": "Light Zapper",
    "world": "arcade",
    "cls": "energy",
    "type": "pistol",
    "dmg": 40,
    "pellets": 1,
    "rpm": 260,
    "mag": 12,
    "reload": 1.1,
    "spread": 0.006,
    "ads": 0.0015,
    "recoil": 0.015,
    "cost": 1,
    "auto": false,
    "price": 1100,
    "color": "#ff7a1a",
    "desc": "From Neon 1984. The light gun from a duck hunt, rewired for Glitches."
  },
  "pixelcannon": {
    "name": "Pixel Cannon",
    "world": "arcade",
    "cls": "energy",
    "type": "shotgun",
    "dmg": 16,
    "pellets": 7,
    "rpm": 120,
    "mag": 6,
    "reload": 1.7,
    "spread": 0.06,
    "ads": 0.04,
    "recoil": 0.04,
    "cost": 2,
    "auto": false,
    "price": 1500,
    "color": "#39ff88",
    "desc": "From Neon 1984. Fires a spread of 8-bit blocks. Blocky, brutal, nostalgic."
  }
}
