Inspiration

Scout9 was born from a simple observation: esports coaches spend countless hours manually reviewing VODs and spreadsheets to find patterns that are already hidden in the data. While basic stats like KDA are easy to find, "scoutable" insights—like how a team executes a B-site hit or why their win rate drops against assassin compositions—are much harder to extract.

The spark for our current direction came from a strategic pivot suggested by Junie, our AI development partner. Early in the project, our reports were statistically accurate but strategically shallow. Junie analyzed the hackathon's judging criteria and challenged us: instead of just showing win rates, we needed to show "How to Win." This shift from data display to decision support became the inspiration for the entire Scout9 engine.

What it does

Scout9 is an automated scouting platform that converts official GRID API data into actionable tactical reports for League of Legends and VALORANT.

Tactical Analysis: It analyzes JSONL event streams to detect specific team behaviors, such as "5-man fast-hits" or "1-3-1 defaults." Player Tendencies: It identifies player-specific patterns, like early-game jungle pathing or Operator usage on specific map sites. Actionable Counter-Strats: It generates a "How to Win" section for every match, providing specific ban/pick recommendations and objective priorities based on the opponent's historical weaknesses. Map-Specific Insights: It breaks down performance by map and site (A vs B vs Mid), allowing coaches to prepare for exact defensive or offensive setups. How we built it

We chose a high-performance stack to handle the massive event streams provided by the GRID API:

Backend: A robust Go engine designed to parse and analyze thousands of match events concurrently. We implemented a modular analyzer architecture to handle game-specific logic for LoL and VALORANT. Frontend: A responsive Next.js dashboard using Tailwind CSS, optimized for readability during high-pressure scenarios like a match draft. Cloud Infrastructure: Deployed on Azure Container Apps using a serverless Consumption plan. We utilized Azure File Shares to persist generated reports across container restarts. Data Integration: We utilized GraphQL for metadata (teams, tournaments) and directly parsed JSONL streams for deep tactical event analysis. Challenges we ran into

The biggest technical hurdle was the "Map-to-Insight" pipeline. GRID provides granular data—every bullet fired and every ability used. Developing the logic to aggregate these millions of events into human-readable patterns like "B-Site blitzes" required significant algorithmic tuning and state-machine logic.

Another challenge was cloud performance parity. Processing match histories is CPU-intensive. When we first deployed, the cloud environment was significantly slower than our local machines. We solved this by scaling our Azure infrastructure to 4.0 vCPUs and implementing a resilient caching layer that survives container restarts.

Accomplishments that we're proud of

Zero-Cost Scaling: We successfully architected the platform to scale to zero replicas when not in use, meaning the backend costs $0 while idle but can scale to 4 cores instantly when a coach needs a report. Event-Level Accuracy: We are proud of our "How to Win" engine, which accurately identifies statistical drops in player performance when facing specific hero classes or map pressure. Infrastructure Resilience: We implemented a hybrid storage system using Azure Files that ensures scout reports are persistent and accessible even in a serverless, ephemeral environment. What we learned

We learned that the value of data isn't in its volume, but in its actionability. A report that says "Player X is good on Jett" is noise compared to one that says "Player X has a 12% lower win rate when pressured in the first 30 seconds of the round." We also learned the power of "AI-led Architecture," where our AI partner Junie acted as a strategist that helped us prioritize features that judges actually care about.

What's next for scout9

Predictive Drafting: Using the matchup data we've gathered to build a real-time "Draft Assistant" that predicts the win probability of different team compositions during the live pick/ban phase. Real-time Integration: Moving from post-match scouting to real-time event processing for live caster summaries. Game Expansion: Bringing the Scout9 engine to other major titles like Counter-Strike 2 and Dota 2 by adapting our modular analyzer framework. Mobile Export: Developing a lightweight "Coach's Tablet" view for on-stage tactical adjustments.

Built With

  • ai
  • azure-container-registry
  • azure-file-storage
  • docker-tools:-jetbrains-ides
  • junie
  • languages:-go-(golang)
  • openai-(insight-synthesis)-cloud/infra:-azure-container-apps
  • tailwind-css-apis:-grid-esports-api-(primary)
  • typescript-frameworks:-next.js
Share this project:

Updates