{
  "version": "2.1.0",
  "updated": "2026-06-01T20:09:54Z",
  "description": "Canonical Club Faceoff game registry. Built-in, STEM, Brain Arcade, classic arcade, and uploaded games appear here.",
  "games": [
    {
      "id": "classic-memory",
      "title": "Match Cards",
      "emoji": "\ud83d\udcaa",
      "description": "Flip cards and match pairs for coins.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Memory",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-bubble",
      "title": "Bubble Pop",
      "emoji": "\ud83c\udf88",
      "description": "Pop bubbles and avoid bombs.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Reflex",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-pusher",
      "title": "Coin Pusher",
      "emoji": "\ud83c\udfb0",
      "description": "Drop coins and push rewards over the edge.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Physics",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-fortune",
      "title": "8-Ball",
      "emoji": "\ud83d\udd2e",
      "description": "Ask the magic ball, spend coins, and have fun.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Fortune",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-slots",
      "title": "Lucky Spin",
      "emoji": "\ud83c\udfb0",
      "description": "Spin reels and match symbols.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Chance",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-tictac",
      "title": "Tic Tac Pro",
      "emoji": "\ud83c\udfae",
      "description": "Beat the computer at tic tac toe.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Strategy",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-simon",
      "title": "Simon Bolts",
      "emoji": "\u26a1",
      "description": "Repeat the growing light sequence.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Memory",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-snake",
      "title": "Turbo Snake",
      "emoji": "\ud83d\udc0d",
      "description": "Eat apples and avoid crashing.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Action",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-whack",
      "title": "Whack-a-Mole",
      "emoji": "\ud83d\udd28",
      "description": "Hit game icons and avoid bombs.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Reaction",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-react",
      "title": "Reaction Speed",
      "emoji": "\u26a1",
      "description": "Click as fast as you can when the signal appears.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Reaction",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-scramble",
      "title": "Word Scramble",
      "emoji": "\ud83d\udcdd",
      "description": "Unscramble words for coin rewards.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Words",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-catch",
      "title": "Catch Gems",
      "emoji": "\ud83d\udc8e",
      "description": "Catch falling gems and dodge hazards.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Action",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-flappy",
      "title": "Flappy Jet",
      "emoji": "\ud83d\ude80",
      "description": "Fly through gaps and collect score.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Timing",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "classic-typeit",
      "title": "Type Attack",
      "emoji": "\u2328\ufe0f",
      "description": "Type fast and accurately under pressure.",
      "category": "Classic Arcade",
      "club": "both",
      "tags": [
        "Typing",
        "arcade"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "legacy-inline",
      "startUrlByClub": {
        "boys": "../boys/arcade.html",
        "girls": "../girls/arcade.html"
      },
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-math",
      "title": "Math Blitz",
      "emoji": "\ud83e\uddee",
      "description": "Solve arithmetic problems in short timed rounds.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Math",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-word",
      "title": "Word Sprint",
      "emoji": "\u2328\ufe0f",
      "description": "Type the shown word before the bar empties.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Spelling",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-flag",
      "title": "Flag Quiz",
      "emoji": "\ud83c\udf0d",
      "description": "Pick the country that matches the flag.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Geography",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-capital",
      "title": "Capital Match",
      "emoji": "\ud83c\udfdb\ufe0f",
      "description": "Match countries with their capital cities.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Geography",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-brain-element",
      "title": "Element Pop",
      "emoji": "\u2697\ufe0f",
      "description": "Identify elements by their periodic-table symbols.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Chemistry",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "brain-fraction",
      "title": "Fraction Slice",
      "emoji": "\ud83d\udcd0",
      "description": "Click the slice that matches the fraction.",
      "category": "Brain Arcade",
      "club": "both",
      "tags": [
        "Math",
        "educational"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "external-page",
      "startUrl": "../minigames/index.html",
      "source": "built-in",
      "rewardType": "existing-page",
      "coinsMultiplier": 1,
      "xpMultiplier": 1,
      "teamScore": true
    },
    {
      "id": "code-dash",
      "title": "Code Dash Bots",
      "emoji": "\ud83e\udd16",
      "description": "Run the robot through command gates.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Coding",
        "Robotics",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=code-dash",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "circuit-surge",
      "title": "Circuit Surge",
      "emoji": "\u26a1",
      "description": "Rotate tiles to power the core.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Circuits",
        "Logic",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=circuit-surge",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "robot-factory",
      "title": "Robot Factory Frenzy",
      "emoji": "\ud83c\udfed",
      "description": "Assemble robot orders before the belt jams.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Robotics",
        "Engineering",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=robot-factory",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "drone-drop",
      "title": "Drone Drop Dash",
      "emoji": "\ud83d\ude81",
      "description": "Fly delivery drones across moving target zones.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Coordinates",
        "Planning",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=drone-drop",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "bug-blast",
      "title": "Bug Blast Defender",
      "emoji": "\ud83d\udc1e",
      "description": "Blast code bugs before they hit the firewall.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Debugging",
        "Cyber",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=bug-blast",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "rocket-angle",
      "title": "Rocket Angle Rush",
      "emoji": "\ud83d\ude80",
      "description": "Hit launch gates and conserve fuel.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Physics",
        "Angles",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=rocket-angle",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "element-pop",
      "title": "Element Pop",
      "emoji": "\ud83e\uddea",
      "description": "Pop correct element bubbles.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Chemistry",
        "Memory",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=element-pop",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "math-reactor",
      "title": "Math Reactor",
      "emoji": "\u2797",
      "description": "Solve tiles to cool the reactor.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Math",
        "Speed",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=math-reactor",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "magnet-mayhem",
      "title": "Magnet Mayhem",
      "emoji": "\ud83e\uddf2",
      "description": "Push and pull metal orbs through the course.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Forces",
        "Magnetism",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=magnet-mayhem",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    },
    {
      "id": "data-chip",
      "title": "Data Chip Catch",
      "emoji": "\ud83d\udcbe",
      "description": "Catch good chips and avoid corrupted files.",
      "category": "STEM Arcade",
      "club": "both",
      "tags": [
        "Data",
        "Cyber Safety",
        "STEM"
      ],
      "ageRange": "8-16",
      "difficulty": [
        "easy",
        "medium",
        "hard"
      ],
      "playType": "stem",
      "startUrl": "../stem-arcade/game.html?game=data-chip",
      "source": "built-in",
      "rewardType": "score",
      "coinsMultiplier": 1.15,
      "xpMultiplier": 1.15,
      "teamScore": true
    }
  ]
}