🚧 This site is a work in progress β€” some sections are still being polished.
Ethan Shapiro
← All projects

VALORANT Agent Meta & Sentiment Tracker

Where community β€œmeta” talk diverges from what's actually winning.

Sentiment AnalysisRiot APIStatistical ModelingReddit API

SITUATION

VALORANT players constantly argue about which agents are β€œmeta” (strong) based on forum sentiment and vibes, but that community perception doesn't always track what's actually happening in ranked matches.

TASK

Quantify, with real data instead of vibes, where community sentiment about agent strength diverges from actual ranked win-rate performance β€” across multiple game patches, since both balance and mood shift every patch.

THE DATA

Joining two very different, messy real-world sources: roughly 5,000 unstructured Reddit comments needing sentiment scoring, and 160,000+ agent picks pulled from Riot's official match API, aligned across 11 separate game patches that each shifted the underlying balance.

ACTION

Built an end-to-end pipeline joining Reddit sentiment (scored with VADER) with real ranked match data from Riot's API across 11 patches, then built a statistical model ranking each agent's win rate against its sentiment score relative to its patch-mates, to surface where the two diverged most.

TRADE-OFFS

Used VADER, a fast lexicon-based sentiment scorer, over a heavier transformer-based sentiment model β€” the goal was ranking thousands of comments per patch against each other, not maximizing precision on any single comment, so speed and scale mattered more than nuance.

DESIGN DECISIONS

Ranked within each patch, not against an all-time baseline

Both game balance and community mood shift with every patch, so an agent's win-rate/sentiment gap is only meaningful measured against its patch-mates β€” comparing across patches would conflate balance changes with meta-discourse changes.

Lexicon-based sentiment over a heavier model

VADER trades per-comment nuance for speed at scale β€” appropriate here since the output that mattered was a relative ranking across thousands of comments per patch, not a precise sentiment score for any one comment.

DEPLOYMENT

A data pipeline and analysis project (Reddit + Riot API ingestion β†’ sentiment scoring β†’ statistical ranking), not a hosted service.

RESULT

Found the widest perception gap in the whole dataset in patch 12.02: an agent with a 63% win rate carrying a sentiment score of -0.06 β€” a case where the community's read on an agent's strength was almost exactly backwards.