Inspiration
“The coaches drafted badly” is easy to say and impossible to prove. This project turns GRID draft history from 2024 & 2025 into an interactive simulator where fans and coaches can explore, practice, test, and share strategies in real time. It’s built to feel like an actual coaching tool, focused on decision-making rather than raw statistics.
What it does
Allows practice drafts against real professional teams
Experience realistic ban/pick order and constraints
The tool processes historical draft sequences from GRID competitive match data into a state-aware draft engine. Each pick and ban is evaluated in context, so team compositions, champion synergies, and counters evolve naturally as the draft unfolds. Champion pools are inferred from team-level historical picks, allowing realistic draft behavior without hardcoded rules.
The recommendation layer reacts to each pick and ban, making the tool suitable for both draft practice and real-time draft decision support. After the draft, users can evaluate picks using win-rate statistics per champion and team.
The project is aimed at coaches, analysts, competitive teams, and fans who want to understand and practice professional-level drafting rather than relying on static tier lists or pick-rates.
How I built it
The project is built primarily in Python using Django, with a clean domain model for drafts, teams, champions, and draft actions.
The draft simulator was built from scratch during this hackathon. Drafts are modeled using a state-aware draft engine, where each pick and ban is evaluated in the context of the current draft to generate predictions and recommendations.
The feature extraction layer looks at which champions are picked together, which champions are commonly picked as responses or counters, and how these patterns change over time. Recent games and patch effects are incorporated via temporal decay to prioritize evolving patch trends.
Development leveraged JetBrains PyCharm for navigating complex draft logic, refactoring, and debugging edge cases. Most frontend logic and rapid prototype iterations were implemented with Junie, JetBrains’ AI coding agent, which accelerated development and validation under tight hackathon constraints.
Challenges we ran into
Limited and uneven data across teams, seasons, and missing playoffs/international tournaments.
Instead of forcing a deep neural network that would overfit, I created a lightweight, interpretable ML approximation that:
Learns from draft context and current draft state
Preserves team-specific tendencies, enabling realistic comfort picks and target bans
Produces recommendations that make sense in practice and real-time scenarios
Balances statistical signals with real-world draft constraints
Accomplishments that we're proud of
A production-quality draft interface that mirrors professional tools while minimizing cognitive load:
Fully responsive design usable on desktop, tablet, and mobile
Usable in live preparation or on-stage practice
Scalable backend architecture designed to support live data and future features like fearless draft
As a primarily backend-focused developer, delivering a polished and intuitive UI was a major accomplishment.
What we learned
High-quality data matters more than model complexity.
Designing systems that adapt well to limited data leads to more reliable, explainable, and usable results, especially in competitive decision-making environments.
What's next for League of Legends Draft Predictor / Practice Tool
While the simulator is functional, the next steps involve:
- Fearless draft: Extending draft logic and interface to fully simulate fearless draft strategies.
- Live Sync: Connecting to live GRID feeds to provide real-time recommendations during on-stage drafts.
- Meta reads: Expanding the dataset to include playoffs, international tournaments, and newer seasons to improve meta awareness and recommendation accuracy in the 2026 season.

Log in or sign up for Devpost to join the conversation.