{
  "schema": "https://pointcast.xyz/schemas/editorial-history/v1",
  "id": "PC-NOUN-BATTLER-ANNUAL-2026",
  "title": "The Battle Record",
  "issue": "Noun Battler Annual 2026",
  "description": "An interactive magazine history of Noun Battler, from the deterministic three-round duel to the eight-gang 30-v-30 Nouns Nation league and the Pacific 48 edition.",
  "canonical": "https://pointcast.xyz/noun-battler-annual",
  "publishedAt": "2026-07-27",
  "editorialBoundary": {
    "history": "The chronology is reconstructed from checked-in design notes, PRDs, route manifests, and repository history.",
    "projection": "The interactive matchup lab is an annual-only deterministic editorial projection. It does not write to or represent official local league results.",
    "persistence": "The playable Nouns Nation season and rooting state are browser-local. Desk Wall snapshots may travel through links without creating a global live database.",
    "wagering": "No odds, wagers, or betting product."
  },
  "art": {
    "type": "original generator-made editorial plates",
    "project": "poster-image-engine/projects/noun-battler-annual-2026",
    "plates": [
      {
        "name": "The First Box Score",
        "url": "https://pointcast.xyz/noun-battler-annual/plates/01-first-box-score.jpg",
        "alt": "A 1970s newspaper sports desk at deadline, where human editors and two blocky Noun correspondents study geometric match diagrams, contact sheets, stat chips, a stopwatch, and square glasses."
      },
      {
        "name": "Thirty Against Thirty",
        "url": "https://pointcast.xyz/noun-battler-annual/plates/02-thirty-against-thirty.jpg",
        "alt": "A packed civic stadium under floodlights as eight color-coded groups of blocky Noun athletes charge across the field while a vintage broadcast crew follows from the press box."
      },
      {
        "name": "The League Remembers",
        "url": "https://pointcast.xyz/noun-battler-annual/plates/03-league-remembers.jpg",
        "alt": "A tactile sports archive and replay bay filled with folded newspapers, recap cards, field diagrams, trophies, old monitors, and a Noun archivist reading a long accordion-fold standings ledger."
      }
    ]
  },
  "promotion": {
    "campaign": {
      "id": "PC-NOUN-BATTLER-ANNUAL-2026",
      "label": "The Battle Record — Noun Battler Annual 2026",
      "advertiser": "PointCast Sports Desk",
      "creativeCount": 3,
      "placement": "Opening-week homepage feature and sitewide PointCast contextual rotation",
      "tracking": "aggregate impressions + clicks",
      "status": "house",
      "note": "A first-party editorial campaign for the free Noun Battler annual. Placement is selected from page context, not visitor behavior; no paid media, odds, wagering, wallet action, or saved league result is involved."
    },
    "dispatches": [
      {
        "id": "PC-NOUN-BATTLER-ANNUAL-001",
        "label": "Cover story",
        "headline": "The box score became a civilization.",
        "copy": "Three deterministic buttons grew into eight gangs, fourteen league days, sixty Nouns under the lights, and one very long scorebook.",
        "shareCopy": "Noun Battler did the thing every imaginary sport wants to do: invented a rule, a league, a press box, weather, factions, and one very long scorebook. The Battle Record is its playable magazine history.\n\nhttps://pointcast.xyz/noun-battler-annual",
        "href": "/noun-battler-annual",
        "cta": "Read the annual",
        "image": "/noun-battler-annual/plates/01-first-box-score.jpg",
        "alt": "The First Box Score editorial plate from The Battle Record.",
        "tone": "signal",
        "contexts": [
          "noun",
          "nouns",
          "battle",
          "battler",
          "sport",
          "sports",
          "history",
          "magazine",
          "press",
          "annual",
          "home",
          "pointcast"
        ]
      },
      {
        "id": "PC-NOUN-BATTLER-ANNUAL-002",
        "label": "League dispatch",
        "headline": "Thirty aside. Eight gangs. Weather everywhere.",
        "copy": "The Nouns Nation league turned a tiny duel into a 30-v-30 civic spectacle with roles, fields, playoffs, rival desks, and a Nouns Bowl.",
        "shareCopy": "Thirty Nouns aside. Eight gangs. Fourteen league days. Weather that refuses to stay neutral. PointCast made a sports annual for the browser league that accidentally became an institution.\n\nhttps://pointcast.xyz/noun-battler-annual#league",
        "href": "/noun-battler-annual#league",
        "cta": "Scout the eight gangs",
        "image": "/noun-battler-annual/plates/02-thirty-against-thirty.jpg",
        "alt": "Thirty Against Thirty stadium plate from The Battle Record.",
        "tone": "play",
        "contexts": [
          "game",
          "games",
          "league",
          "team",
          "gang",
          "play",
          "arcade",
          "drum",
          "tv",
          "field",
          "score",
          "nouns"
        ]
      },
      {
        "id": "PC-NOUN-BATTLER-ANNUAL-003",
        "label": "Press-box challenge",
        "headline": "Run the tape. Argue with the desk.",
        "copy": "Choose two gangs and a field, then let the annual issue a deterministic quarter-by-quarter projection with a printable box score.",
        "shareCopy": "The press box is open: pick two Noun Battler gangs, choose the field, and run a deterministic projection. No odds, no wagers, no saved state—just a printable argument with the desk.\n\nhttps://pointcast.xyz/noun-battler-annual#lab",
        "href": "/noun-battler-annual#lab",
        "cta": "Run the matchup lab",
        "image": "/noun-battler-annual/plates/03-league-remembers.jpg",
        "alt": "The League Remembers archive plate from The Battle Record.",
        "tone": "field",
        "contexts": [
          "agent",
          "agents",
          "data",
          "lab",
          "archive",
          "scorebook",
          "replay",
          "report",
          "json",
          "desk",
          "field",
          "nouns"
        ]
      }
    ],
    "links": {
      "canonical": "https://pointcast.xyz/noun-battler-annual",
      "machineEdition": "https://pointcast.xyz/noun-battler-annual.json",
      "shareKit": "https://pointcast.xyz/noun-battler-annual/share",
      "shareKitJson": "https://pointcast.xyz/noun-battler-annual/share.json",
      "pressFiling": "https://pointcast.xyz/press/noun-battler-annual-publishes-browser-league-history",
      "campaignReceipt": "https://pointcast.xyz/ads.json",
      "campaignReport": "https://pointcast.xyz/ads/report"
    }
  },
  "history": [
    {
      "date": "APR 17",
      "label": "THE FIRST RULEBOOK",
      "title": "A duel that could fit inside a receipt",
      "body": "The original design turned each Noun seed into a fighter with derived type, attack, defense, speed, focus, and hit points. Strike, Guard, and Focus formed the stance triangle. The same seeds and choices produced the same result: no hidden state and no random roll.",
      "routes": [
        "https://pointcast.xyz/battle",
        "https://pointcast.xyz/battle.json"
      ]
    },
    {
      "date": "APR 17",
      "label": "CH.BTL OPENS",
      "title": "The sport earns its own oxblood channel",
      "body": "PointCast approved BTL as a ninth channel rather than hiding the matches inside another beat. Local match logs, replayable query strings, a rotating Card of the Day, and JSON export made the first duel feel like a tiny sport with an archive.",
      "routes": [
        "https://pointcast.xyz/c/battler",
        "https://pointcast.xyz/battle-log"
      ]
    },
    {
      "date": "APR 28",
      "label": "THE LEAGUE TURN",
      "title": "Two fighters become sixty moving bodies",
      "body": "Nouns Nation Battler changed the scale. Eight gangs entered a fourteen-day, four-match-per-day double round robin. Standard matches became 30 against 30, with runners, bonkers, slingers, captains, and healers moving on their own toward a four-team playoff and the Nouns Bowl.",
      "routes": [
        "https://pointcast.xyz/games/nouns-nation-battler/",
        "https://pointcast.xyz/nouns-nation-battler-tv"
      ]
    },
    {
      "date": "APR 28",
      "label": "WEATHER ARRIVES",
      "title": "The field stops pretending to be neutral",
      "body": "Open Field gained Amplifier Rift, Crown Rush, Lava Audit, Cloud Court, Trash Planet, Fog Bowl, and later Nouns Kingdom. Late-season boss mutations—Monsoon Rift, Neon Crown, Scrap Storm, and Blackout Fog—turned terrain into something the desk had to explain.",
      "routes": [
        "https://pointcast.xyz/nouns-nation-battler-wiki",
        "https://pointcast.xyz/nouns-nation-battler-posters"
      ]
    },
    {
      "date": "APR 29",
      "label": "THE DESK ERA",
      "title": "A browser game grows a broadcast institution",
      "body": "Battle Desk, V2, and V3 added a scorebug, standings, replay calls, scouting, producer controls, season recaps, and federation planning around the same embedded field. The game was no longer only an animation; it became a system for watching, explaining, and remembering one.",
      "routes": [
        "https://pointcast.xyz/nouns-nation-battler/",
        "https://pointcast.xyz/nouns-nation-battler-v3/"
      ]
    },
    {
      "date": "APR 29–MAY 1",
      "label": "ROOMS AROUND THE FIELD",
      "title": "Agents, producers, sponsors, and hosts get desks",
      "body": "Desk Wall snapshots, report cards, a Results Desk, Agent Bench, Sideline Desk, Sponsorship Desk, Production Desk, Claim Board, prompt kit, and wiki made the league legible to people and software outside the live match. Most state stayed browser-local; shared frames traveled through links and JSON.",
      "routes": [
        "https://pointcast.xyz/nouns-nation-battler-desk",
        "https://pointcast.xyz/nouns-nation-battler-agents/"
      ]
    },
    {
      "date": "APR 30–MAY 6",
      "label": "THE SCREEN MULTIPLIES",
      "title": "Pocket Cast, Moon Cup, and result reenactment",
      "body": "The same league learned to travel: phone-first Pocket Cast, a clean TV route, a lunar tournament, Bowl path, and an informational sports reenactment desk. A visitor could watch the field, host a room, carry a snapshot, or translate an outside score into an unofficial Nouns-shaped result.",
      "routes": [
        "https://pointcast.xyz/nouns-nation-battler-mobile/",
        "https://pointcast.xyz/nouns-nation-battler-moon/"
      ]
    },
    {
      "date": "JUL 18",
      "label": "THE PACIFIC 48",
      "title": "The duel returns as a coastal card game",
      "body": "A separate five-round edition dealt two cards from a 48-battler set, asked the player to call the stronger stat, and kept stamps and a compact Passport receipt locally. It did not replace the league. It proved the Battler idea could split into another sport and keep its family resemblance.",
      "routes": [
        "https://pointcast.xyz/noun-battler",
        "https://noun-battler.mhoydich.chatgpt.site"
      ]
    }
  ],
  "foundingDuel": {
    "format": "deterministic best-of-three stance duel",
    "stances": {
      "STRIKE": "beats FOCUS",
      "FOCUS": "beats GUARD",
      "GUARD": "beats STRIKE"
    },
    "inheritedStats": [
      "type",
      "ATK",
      "DEF",
      "SPD",
      "FOC",
      "HP"
    ],
    "record": "A replay is the seed pair plus stance inputs; the same inputs reproduce the result.",
    "playable": "https://pointcast.xyz/battle",
    "rules": "https://pointcast.xyz/battle.json"
  },
  "nounsNationLeague": {
    "format": "eight-gang, fourteen-day double round robin",
    "teams": 8,
    "standardMatch": "30 vs 30",
    "matchesPerDay": 4,
    "playoffs": "top four, then Nouns Bowl final",
    "persistence": "browser localStorage only",
    "roles": [
      {
        "name": "Runner",
        "line": "74 HP · 1.34 speed",
        "note": "Breakaway dash"
      },
      {
        "name": "Bonker",
        "line": "112 HP · 15 damage",
        "note": "Noggles slam"
      },
      {
        "name": "Slinger",
        "line": "96 range · 9 damage",
        "note": "Auction volley"
      },
      {
        "name": "Captain",
        "line": "132 HP · 16 damage",
        "note": "Quorum rally"
      },
      {
        "name": "Healer",
        "line": "78 HP · 70 range",
        "note": "Emergency mint"
      }
    ],
    "fields": [
      {
        "id": "open",
        "name": "Open Field",
        "modifier": "speed",
        "note": "Center control and clean transitions."
      },
      {
        "id": "rift",
        "name": "Amplifier Rift",
        "modifier": "weird",
        "note": "Element lanes and overloaded specials."
      },
      {
        "id": "crown",
        "name": "Crown Rush",
        "modifier": "attack",
        "note": "The center crown rewards pressure."
      },
      {
        "id": "lava",
        "name": "Lava Audit",
        "modifier": "speed",
        "note": "Camping burns; movement charges."
      },
      {
        "id": "cloud",
        "name": "Cloud Court",
        "modifier": "speed",
        "note": "Drifting platforms bend every lane."
      },
      {
        "id": "trash",
        "name": "Trash Planet",
        "modifier": "weird",
        "note": "Scrap piles hide sudden powerups."
      },
      {
        "id": "fog",
        "name": "Fog Bowl",
        "modifier": "guard",
        "note": "Range fades; close defense gets louder."
      },
      {
        "id": "kingdom",
        "name": "Nouns Kingdom",
        "modifier": "attack",
        "note": "A 25-v-25 siege with towers and gates."
      }
    ],
    "gangs": [
      {
        "id": "tomato",
        "short": "TN",
        "name": "Tomato Noggles",
        "color": "#b63d32",
        "accent": "#f3cf55",
        "mark": "split tomato noggles",
        "cry": "Noggles down, elbows out",
        "noun": 0,
        "attack": 82,
        "guard": 66,
        "speed": 75,
        "weird": 58,
        "scouting": "Fast pressure club. Gets to the story before the copy desk has a headline.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-0.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "cobalt",
        "short": "CF",
        "name": "Cobalt Frames",
        "color": "#2865aa",
        "accent": "#9dcaf2",
        "mark": "blue square lenses",
        "cry": "Blue frames, clean lanes",
        "noun": 7,
        "attack": 68,
        "guard": 84,
        "speed": 62,
        "weird": 54,
        "scouting": "A patient blue wall: tidy lanes, low panic, excellent late-copy defense.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-7.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "golden",
        "short": "GN",
        "name": "Golden Nouncil",
        "color": "#b27b16",
        "accent": "#f3da73",
        "mark": "council coin",
        "cry": "Vote yes, swing heavy",
        "noun": 12,
        "attack": 78,
        "guard": 77,
        "speed": 54,
        "weird": 69,
        "scouting": "Committee basketball with a hammer. Slow quorum, forceful resolution.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-12.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "garden",
        "short": "GS",
        "name": "Garden Stack",
        "color": "#397d43",
        "accent": "#a9d589",
        "mark": "stacked leaf",
        "cry": "Roots hold, heads roll",
        "noun": 18,
        "attack": 61,
        "guard": 80,
        "speed": 64,
        "weird": 76,
        "scouting": "Deep-rooted survival specialists who make strange weather look planned.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-18.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "pixel",
        "short": "PU",
        "name": "Pixel Union",
        "color": "#7150a6",
        "accent": "#cbb8e9",
        "mark": "union pixel",
        "cry": "One block, one bonk",
        "noun": 24,
        "attack": 74,
        "guard": 73,
        "speed": 71,
        "weird": 71,
        "scouting": "The balanced press-box favorite: coordinated, legible, dangerous everywhere.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-24.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "night",
        "short": "NA",
        "name": "Night Auction",
        "color": "#303742",
        "accent": "#c2c9d4",
        "mark": "midnight paddle",
        "cry": "Going once, going through",
        "noun": 31,
        "attack": 70,
        "guard": 65,
        "speed": 83,
        "weird": 73,
        "scouting": "After-hours transition attack. Moves before the room knows the lot is open.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-31.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "sunset",
        "short": "SP",
        "name": "Sunset Prop House",
        "color": "#c96925",
        "accent": "#efbd80",
        "mark": "sunset ballot",
        "cry": "Fund the charge",
        "noun": 42,
        "attack": 84,
        "guard": 58,
        "speed": 70,
        "weird": 81,
        "scouting": "A loud proposal with cleats. High variance, excellent photographs.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-42.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      },
      {
        "id": "mint",
        "short": "MC",
        "name": "Mint Condition",
        "color": "#19877f",
        "accent": "#a4ddd2",
        "mark": "fresh mint stamp",
        "cry": "Fresh mint, no mercy",
        "noun": 55,
        "attack": 65,
        "guard": 76,
        "speed": 79,
        "weird": 67,
        "scouting": "Clean recovery, quick legs, and the league's least wrinkled second half.",
        "nounSprite": "https://pointcast.xyz/games/nouns-nation-battler/assets/noun-55.svg",
        "ratingsBoundary": "Annual editorial scouting rating used only by the matchup lab, not an official live league stat."
      }
    ],
    "playable": "https://pointcast.xyz/games/nouns-nation-battler/",
    "desk": "https://pointcast.xyz/nouns-nation-battler/",
    "manifest": "https://pointcast.xyz/nouns-nation-battler.json"
  },
  "pacific48": {
    "format": "five-round stronger-stat card battle",
    "battlers": 48,
    "receipts": [
      "browser-local stamp book",
      "portable Passport card"
    ],
    "boundary": "No wallet required; cards and stamps are local receipts, not minted tokens.",
    "pointcast": "https://pointcast.xyz/noun-battler",
    "standalone": "https://noun-battler.mhoydich.chatgpt.site"
  },
  "publicRooms": [
    {
      "label": "Original duel",
      "path": "/battle",
      "note": "Three rounds · deterministic stance game",
      "url": "https://pointcast.xyz/battle"
    },
    {
      "label": "Main Battle Desk",
      "path": "/nouns-nation-battler/",
      "note": "Live desk around the embedded league",
      "url": "https://pointcast.xyz/nouns-nation-battler/"
    },
    {
      "label": "Playable field",
      "path": "/games/nouns-nation-battler/",
      "note": "30-v-30 auto-battler and local season",
      "url": "https://pointcast.xyz/games/nouns-nation-battler/"
    },
    {
      "label": "TV cast",
      "path": "/nouns-nation-battler-tv/",
      "note": "Clean director-mode presentation",
      "url": "https://pointcast.xyz/nouns-nation-battler-tv/"
    },
    {
      "label": "Desk Wall",
      "path": "/nouns-nation-battler-desk/",
      "note": "Snapshots, reports, and scorebook frames",
      "url": "https://pointcast.xyz/nouns-nation-battler-desk/"
    },
    {
      "label": "Field guide",
      "path": "/nouns-nation-battler-wiki/",
      "note": "Rules, gangs, modes, and contribution map",
      "url": "https://pointcast.xyz/nouns-nation-battler-wiki/"
    },
    {
      "label": "Pacific 48",
      "path": "/noun-battler",
      "note": "Five rounds · stat cards · local Passport",
      "url": "https://pointcast.xyz/noun-battler"
    }
  ]
}