{
  "format": "opentd.game",
  "format_version": 1,
  "title": "Sample Game 1",
  "exported_at": "2026-08-27T18:34:04Z",
  "definition": {
    "version": 1,
    "title": "Sample Game 1",
    "settings": {
      "width": 20,
      "height": 12,
      "game_type": "monster_march",
      "chaos_mode": false,
      "allow_ground_build": false,
      "starting_lives": 20,
      "starting_gold": 1000,
      "path_must_reach_exit": true,
      "start_delay_seconds": 15,
      "between_waves_delay_seconds": 5,
      "max_rounds": 10
    },
    "grid": [
      [
        "spawn",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "path",
        "ground",
        "path",
        "path",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "path",
        "tower",
        "path",
        "tower",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "path",
        "path",
        "path",
        "ground",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "ground",
        "ground",
        "path",
        "path",
        "path",
        "path",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "tower",
        "ground",
        "path",
        "ground",
        "tower",
        "ground",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "path",
        "path",
        "path",
        "ground",
        "ground",
        "ground",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "tower",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "path",
        "path",
        "path",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "tower",
        "path",
        "path",
        "ground",
        "ground",
        "ground",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "path",
        "path",
        "tower",
        "ground"
      ],
      [
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "ground",
        "path",
        "path",
        "exit"
      ]
    ],
    "spawns": [
      {
        "id": "1",
        "x": 0,
        "y": 0,
        "exit_mode": "any",
        "exit_id": ""
      }
    ],
    "exits": [
      {
        "id": "1",
        "x": 19,
        "y": 11
      }
    ],
    "towers": [
      {
        "id": "twr_e290c1a95a",
        "name": "Archer",
        "cost": 50,
        "damage": 5,
        "range": 3,
        "hp": 50,
        "cooldown": 1.0,
        "description": "Basic ranged tower.",
        "weapon": {
          "type": "single",
          "projectile_count": 1,
          "burst_interval": 0.08,
          "spread_degrees": 30.0
        },
        "element": {
          "type": "none",
          "duration": 0.0,
          "tick_rate": 0.5,
          "tick_damage": 0.0,
          "slow_factor": 0.5,
          "aoe_radius": 0.0
        },
        "upgrade_of": "",
        "upgrade_level": 1
      },
      {
        "id": "twr_79822c1bcec2",
        "name": "Archer 2",
        "cost": 50,
        "damage": 15,
        "range": 6,
        "hp": 50,
        "cooldown": 1.0,
        "description": "",
        "weapon": {
          "type": "machine_gun",
          "projectile_count": 3,
          "burst_interval": 0.08,
          "spread_degrees": 30.0
        },
        "element": {
          "type": "none",
          "duration": 0.0,
          "tick_rate": 0.5,
          "tick_damage": 0.0,
          "slow_factor": 0.5,
          "aoe_radius": 0.0
        },
        "upgrade_of": "twr_e290c1a95a",
        "upgrade_level": 2
      }
    ],
    "monsters": [
      {
        "id": "mob_41e50c869d",
        "name": "Goblin",
        "hp": 20,
        "speed": 1.0,
        "reward": 10,
        "description": "Weak and fast."
      }
    ],
    "wave_types": [
      {
        "id": "wav_df0c8f2e0e",
        "name": "Default wave",
        "rounds": "1-10",
        "groups": [
          {
            "monster_id": "mob_41e50c869d",
            "count": 5
          }
        ],
        "scaling": [
          {
            "stat": "hp",
            "basis": "appearance",
            "mode": "base_times_n",
            "factor": 1.0
          }
        ]
      }
    ],
    "scoreboard": {
      "items": [
        "score",
        "lives",
        "gold",
        "wave",
        "timer"
      ]
    }
  }
}