DEV Community

KADHIR K
KADHIR K

Posted on

VALGRAPH

Building VALOGRAPH: Real-Time Valorant Tactical Graph Intelligence & Persistent Agent Memory with FalkorDB and Groq

Competitive gaming moves in milliseconds, yet the tools players use to analyze matches are stuck in the past. When playing Valorant, In-Game Leaders (IGLs), solo-queue players, and esports coaches rely on fragmented, flat stat trackers and external wikis.

During a live match on Icebox or Lotus, nobody wants to Alt+Tab through five different web pages just to check a teammate's best weapon, an opponent's historical K/D/A, or which Agent skills synergize best on a specific site. Worse yet, standard LLM chatbots fail as tactical gaming coaches because they hallucinate patch stats, cannot reason across multi-hop relationships (Player → Agent → Skill → Map → Weapon Mastery), and suffer from complete amnesia the moment a session ends.

For the WeMakeDevs x FalkorDB Graph Hacks hackathon, I built VALOGRAPH (HACKING GG)—a real-time tactical graph command center and persistent AI memory engine powered by FalkorDB Cloud and Groq.


🎯 The Problem We Solved

  1. Flat Data Blindness: Traditional SQL tables and vector databases treat player stats, agent abilities, weapon damage falloffs, and map win rates as isolated rows. They cannot naturally answer multi-hop tactical questions like: "Based on our live 5-player squad on Icebox and Melophile's 55 kills with the Vandal, what is our optimal attacking setup and eco-buy strategy against the enemy roster?"
  2. External Tab Friction: Clicking out to external wikis mid-round breaks competitive focus. Players need a zero-redirect interface where clicking any Agent, Player, Weapon, or Match node expands live telemetry immediately inside the canvas.
  3. LLM Session Amnesia: An AI coach is useless if you have to re-explain your main Agent, playstyle, and weak maps every single game.

🧠 Why FalkorDB Was the Game-Changer

To make VALOGRAPH feel like a native esports broadcast and tactical HUD, the underlying database had to traverse interconnected game entities with near-zero latency.

Using FalkorDB Cloud (hacking_gg_valorant), we modeled the entire tactical ecosystem across 145+ nodes and 116+ edges with 32 tactical properties (acs, kd, kda, atk_wr, def_wr, fire_rate, cost, pen, playstyle):

  • Core Graph Entities: (:Player), (:Agent), (:Skill), (:Weapon), (:Map), (:Match), and (:Memory)
  • Connected Tactical Edges:
    • (:Agent)-[:HAS_SKILL]->(:Skill) — Connects Agents (like Astra or Jett) directly to their C, Q, E, and X abilities with live visual previews.
    • (:Player)-[:PLAYS]->(:Agent) & (:Player)-[:PLAYED]->(:Match) — Tracks live 10-player rosters (5 Live Squad + 5 Opponents) and historical match performance (WIN/LOSS, ACS, K/D/A) across maps like Abyss, Lotus, Icebox, and Skirmish.
    • (:Player)-[:REMEMBERS]->(:Memory) — Stores persistent cross-session AI coaching insights (question, ans, text, ts).

Blazing-Fast Cypher Execution (~1.36ms)

Every time a user clicks a player in the LIVE SQUAD sidebar, selects a row in the RECENT MATCHES table, or inspects an Agent in the 3D GRAPH canvas, our local Python backend (python app.py) executes live parameterized OpenCypher queries against FalkorDB:

MATCH p=()-['HAS_SKILL']->() RETURN p
Enter fullscreen mode Exit fullscreen mode
MERGE (p:Player {riot_id: $rid})
SET p.name = $n, p.level = $lv, p.rank = $rk, p.agent = $ag, p.acs = $acs, p.kd = $kd
Enter fullscreen mode Exit fullscreen mode

We even built a Live Cypher Telemetry Bar at the bottom of the VALOGRAPH UI so players and judges can watch the exact MERGE and MATCH queries firing in real time (~1.36ms response time!).


💡 Key Learnings During Development

  1. Graphs Beat Flat Tables for Game AI: Representing a 10-player Valorant match as a connected subgraph allowed our AI Team Combo and Ask Falkor features (powered by Groq) to reason over exact squad synergies and weapon kill distributions (Vandal, Sheriff, Ghost, Phantom) without hallucinating.
  2. Persistent Graph Memory ([:REMEMBERS]) Changes Coaching: Storing player Q&A history and playstyle tags directly as graph nodes linked to their riot_id gave the AI genuine long-term memory across matches.
  3. Visualizing Graph Topologies in a Custom Game UI: Bridging FalkorDB's sparse-matrix graph responses into a custom dark-themed 3D/2D interactive canvas taught me how to turn raw database relationships into an intuitive HUD that gamers actually love using.

🔗 Check Out VALOGRAPH

  • GitHub Repository: https://github.com
  • Built With: Python (Flask), FalkorDB Cloud, OpenCypher, Groq LLM API, HTML5/JS Canvas.

Top comments (0)