Game Configurationjson Cricket League File New Site


  "game_title": "Cricket League Championship",
  "version": "2.1.0",
  "match_format": "T20",
  "league_structure": 
    "total_teams": 8,
    "total_matches_per_team": 14,
    "playoffs": true,
    "playoffs_config": 
      "semi_finals": 2,
      "final": 1,
      "eliminator": true
    ,
    "points_system": 
      "win": 2,
      "loss": 0,
      "tie": 1,
      "no_result": 1,
      "bonus_point_threshold": 1.25,
      "bonus_points": 1
,
  "teams": [
"id": 1,
      "name": "Sydney Strikers",
      "short_name": "STS",
      "primary_color": "#FF4500",
      "secondary_color": "#FFD700",
      "home_ground": "Sydney Cricket Ground",
      "captain_id": 101,
      "coach": "Ricky Ponting"
    ,
"id": 2,
      "name": "Melbourne Mavericks",
      "short_name": "MMV",
      "primary_color": "#1E90FF",
      "secondary_color": "#FFFFFF",
      "home_ground": "Melbourne Cricket Ground",
      "captain_id": 202,
      "coach": "Shane Warne"
    ,
"id": 3,
      "name": "Bengaluru Blasters",
      "short_name": "BNB",
      "primary_color": "#FF1493",
      "secondary_color": "#000000",
      "home_ground": "M. Chinnaswamy Stadium",
      "captain_id": 303,
      "coach": "Virat Kohli"
    ,
"id": 4,
      "name": "London Lions",
      "short_name": "LNL",
      "primary_color": "#006400",
      "secondary_color": "#FFD700",
      "home_ground": "Lord's Cricket Ground",
      "captain_id": 404,
      "coach": "Joe Root"
],
  "players": 
    "batting_skills": 
      "aggression": [1, 100],
      "defense": [1, 100],
      "timing": [1, 100]
    ,
    "bowling_skills": 
      "pace": [1, 100],
      "spin": [1, 100],
      "variation": [1, 100],
      "accuracy": [1, 100]
    ,
    "fielding_skills": 
      "catching": [1, 100],
      "throwing": [1, 100],
      "agility": [1, 100]
    ,
    "player_types": ["Batsman", "Bowler", "All-Rounder", "Wicket-Keeper"]
  ,
  "match_rules": 
    "overs_per_innings": 20,
    "max_bowlers": 5,
    "max_overs_per_bowler": 4,
    "powerplay_overs": 6,
    "powerplay_field_restrictions": 
      "max_outfielders": 2
    ,
    "death_overs": [16, 20],
    "field_restrictions": 
      "outside_powerplay": 
        "max_outfielders": 5
,
    "no_ball_runs": 1,
    "free_hit": true,
    "wide_ball_runs": 1,
    "duckworth_lewis": true,
    "super_over": true,
    "review_system": true,
    "reviews_per_team": 2
  ,
  "tournament_schedule": 
    "start_date": "2025-05-10",
    "end_date": "2025-06-20",
    "match_times": ["14:00", "18:00", "20:30"],
    "days": ["Friday", "Saturday", "Sunday", "Wednesday"]
  ,
  "gameplay_settings": 
    "difficulty_levels": ["Easy", "Medium", "Hard", "Legend"],
    "default_difficulty": "Medium",
    "innings_break_duration": 10,
    "time_scale_factor": 1.0,
    "toss_enabled": true,
    "weather_effects": true,
    "day_night_match": true,
    "commentary_enabled": true,
    "commentary_language": "English",
    "replay_frequency": "Often"
  ,
  "visuals_and_audio": 
    "stadium_models": ["Lords", "MCG", "Eden Gardens", "Dubai International"],
    "crowd_noise_level": 0.8,
    "ui_theme": "Cricket Green",
    "hud_position": "Bottom",
    "ball_trail_effect": true,
    "player_celebration": true
  ,
  "rewards_and_achievements": 
    "win_bonus_coins": 500,
    "man_of_the_match_bonus": 200,
    "tournament_win_bonus": 5000,
    "achievements": [
      "Century Maker",
      "Hat-trick Hero",
      "Perfect Catch",
      "Fastest Fifty",
      "Economy King"
    ]
  ,
  "api_endpoints": 
    "fetch_live_scores": "https://api.cricketleague.com/v1/live",
    "update_team_stats": "https://api.cricketleague.com/v1/teams/update",
    "player_leaderboard": "https://api.cricketleague.com/v1/leaderboard"

Step 4: Populate Teams and Players

Use a script if you have 100+ players. Manually typing JSON for 8 squads of 15 players takes hours. Write a Python or JavaScript function that converts a CSV roster into the JSON structure above.

Advantages of Using JSON for League Configuration

  • Rapid Prototyping: Designers can test a new 10-over league one day, then switch to a 50-over World Cup simulation the next, simply by editing the JSON and restarting the game.
  • Localization & Customization: Modders can create new leagues (e.g., a retro 1980s league or a zombie cricket league) without touching the game’s source code.
  • Error Handling & Validation: The game can validate the JSON on load—checking that overs_per_innings is positive, that number_of_teams matches the length of a teams array, and that playoff type strings are recognized.
  • Separation of Concerns: Gameplay programmers focus on mechanics (bowling physics, AI), while designers tweak league rules in JSON. This parallel workflow accelerates development.

3. Broadcasting & Sponsorship

For career-mode league files, include media parameters: game configurationjson cricket league file new

"broadcast": 
  "title_sponsor": "Betway",
  "umpire_mic_volume": 70,
  "stump_mic_enabled": true,
  "cheerleader_frequency": "high"

C. Economy & Progression (economy)

This governs the meta-game (the league aspect). "game_title": "Cricket League Championship", "version": "2

  • Currency: Rewards for winning matches, hitting sixes, or taking wickets.
  • Store: Pricing for unlocking new players or cosmetic items (bats, gloves).
  • Energy System: Configuration for how many matches a user can play before a cooldown.

Migrating from Old to New: What Changes?

If you have an existing league_v1.json and want to convert it to the new schema: Step 4: Populate Teams and Players Use a

| Old Key | New Key (v2.0) | Action | | :--- | :--- | :--- | | num_teams | teams_count | Rename | | super_over (boolean) | super_over_on_tie | Rename and set to boolean | | points_table | points_system (array) | Restructure entirely | | fixture_list (array of arrays) | fixtures (array of objects) | Convert each entry to object with match_id |

4. Tournament Structure (tournament_structure)

For a new league, the playoff format is crucial. Instead of hard-coding a knockout tree, the JSON describes the bracket logic. In the example, ipl_style refers to a predefined template, but the explicit match pairings (1_vs_2, etc.) give clear instructions. This modular approach allows one game engine to support the IPL, The Hundred, or a custom league with equal ease.

Why Upgrade to the New JSON Schema?

If you have been using an older configuration file (perhaps from a game version released before 2023), you are missing out on critical features. Here is what the new configuration JSON offers:

  1. Dynamic Squad Management: Older files used static arrays for players. The new schema supports injuries, form_rating, and contract_value.
  2. Custom Points Logic: Beyond simple win/loss, you can now configure points for no-results, tied super overs, and even bonus points for high net run rates.
  3. Flexible Playoffs: Code for the "Indian Premier League" style (Top 4, Eliminator, Qualifier 1 & 2) or a simple semi-final structure with a few lines.
  4. Weather & Venue Integration: New JSON keys allow you to link a venue_id to dynamic weather probability maps.