🌟 Inspiration
We leveraged Riot Games’ data, using Retrieval-Augmented Generation (RAG) to power Large Language Models (LLMs). This allows us to deliver in-depth, contextually rich insights for VALORANT esports queries 🎮.
💡 What it does
Our project is an LLM-powered digital assistant built using Amazon Bedrock, which answers VALORANT esports questions and assists with team building. For example, users can ask, “Build a team using only players from VCT International 🌍,” and the assistant will suggest a roster based on player statistics and agent abilities.
🛠️ How we built it
Our assistant integrates several components: Amazon Bedrock for LLM capabilities, a custom RAG pipeline, and specialized agents for specific tasks.

The flowchart above illustrates the system’s architecture, with key components like:
- Master Agent: Manages communication between specialized agents.
- Classifier Agent: Identifies query types and routes them accordingly.
- Normal Agent: Handles general conversational queries.
- SQL Agent: Executes dynamic SQL queries in a MySQL database for data retrieval.
- Team Builder & Valorant Agents: Specialize in team building and answering Valorant-specific questions.
Agents interact with a MySQL database filled with player stats and match data, enabling data-driven responses 🔍.

How we handle the prompts
✨ Professional Team Submission:
We use data from the VCT International dataset to build the team Assign roles based on player stats and agent capabilities Explain how the team composition would be effective in competitive play
🌟 Semi-Professional Team Submission:
We use data from the VCT Challengers dataset to build the team Assign roles based on player stats and agent capabilities Explain how the semi-professional team would be effective
💫 Game Changers Team Submission:
We use data from the VCT Game Changers dataset to build the team Assign roles based on player stats and agent capabilities Explain how the all-Game Changers team would be impactful
✨ Mixed-Gender Team Submission:
We build a team with players from underrepresented groups like Game Changers Define roles for each player and discuss the advantages of this inclusive composition
🌟 Cross-Regional Team Submission:
We build a team with players from at least three different regions Assign roles for each player and explain the benefits of this diverse team
💫 Rising Star Team Submission:
We use data from both VCT Challengers and internal datasets Include at least two semi-professional players in the team Discuss how these rising star players were selected and their potential
🏆 Challenges we ran into
- Dataset Utilization: Making Riot Games’ dataset practical for player lookups and team suggestions was challenging. We invested significant time preprocessing to ensure a structured, easily queryable format.
- Building the RAG Pipeline: Crafting an efficient, accurate RAG pipeline to provide relevant context for user queries required experimentation with various models and configurations.
🚀 Accomplishments we're proud of
We successfully integrated LLMs with our backend, built a modular chatbot system with dynamic SQL generation, and implemented a seamless RAG framework for contextualized responses. By designing optimized SQL tables and predefined queries, we achieved faster response times ⚡.
📘 What we learned
We deepened our knowledge of LLMs in real-world applications, especially leveraging RAG for quality responses. We learned valuable techniques for preprocessing large datasets and using MySQL for efficient retrieval in conversational systems. Orchestrating specialized agents for distinct workflows also taught us valuable lessons in modular design 🧩.
🔮 What's next for Shadow Code: Zero Terminal
Currently, the player list on the right side of the web and the Assistant aren’t directly linked. We're working on enabling player selection so users can manually build teams, with the Assistant providing feedback to refine user-created teams for an interactive experience 🧑🤝🧑.
🔍 What it does
Our LLM-powered assistant uses Amazon Bedrock to discover top players and powerful teams through historical VALORANT data. It answers questions about esports players and teams, like, “Build a team using only players from VCT International 🏆,” and suggests a roster based on VCT International data. For the Rising Star Team Submission, data from internal and challenger leagues is used.
🤖 What we updated for the judging stage
Due to recent announcements, we are temporarily unable to use the Amazon Bedrock service. In its place, we use LLaMA 3.1-70B with our server to maintain high performance and ensure our assistant remains responsive and insightful .
🚀 What would we do if we didn’t have throttling issues
If throttling limitations were removed, we’d leverage the following improvements to enhance user experience and assistant capabilities:
Real-time Processing: Without throttling, the assistant could process multiple queries, providing responses to users in real time. This would reduce wait times and enable smoother interactions .
Enhanced Contextual Depth: We could add more detailed contextual data retrieval, enhancing the accuracy and richness of responses. This would allow the assistant to dive deeper into historical and real-time stats for more nuanced insights .
User-Customizable Queries: Without throttling constraints, we could offer a feature allowing users to specify custom parameters for queries, resulting in highly personalized insights and team-building recommendations tailored to their strategic preferences .
👊 Show some love for our project:
https://devpost.com/software/shadow-code-zero-terminal
🎌 Explore our GitHub:
https://github.com/Kleinpenny/VCTEVA
💯 Try it online:
- Gradio (Recommended for testing agents): http://54.226.235.178:7863/
- Vue: http://54.226.235.178:5173/
Log in or sign up for Devpost to join the conversation.