rift-rewind-project
🧩 RiftTale – Relive Your Journey Through the Rift
Transform your League of Legends stats into personal stories powered by AWS and AI.
🎮 How to Use
- Visit the website: RiftTale
- Enter your Riot ID and Tag (e.g., Hide on bush#KR1).
- Select your Server / Region.
- (Optional) If you want to compare with your friend and get the Duo Report , enter your friend's Riot ID, Tag and Server / Region.
- Wait for data processing — it might take a tiny while.
- Explore your results:
- 📊 Player Stats — Your in-game fundamentals like kills, assists, deaths, gold, and wards.
- 🔎 Style Analysis — Understand your overall playstyle and personality in the Rift.
- 🔥 Kill Heatmap — Visualizes where you get kills, assists, or deaths on the Summoner’s Rift.
- 📈 Timeline Performance — Shows your performance trend throughout the match by minute.
- 🛡️ Champion Stats — Your top three most-played champions and AI-recommended similar ones.
- 🏆 Your Best Match — Find the professional player whose style most closely matches yours (you can save and share your match card!).
- 🎯 Duo Radar — Compare with a friend’s Riot ID to analyze synergy and get an AI-written duo report.
> 💡 RiftTale supports all Riot regions (Americas, Europe, Asia, SEA).
- 📊 Player Stats — Your in-game fundamentals like kills, assists, deaths, gold, and wards.
💡 Inspiration
RiftTale was inspired by the idea that numbers should tell a story.
Most League of Legends stat sites only show raw numbers — kills, assists, gold — without explaining what those numbers actually mean.
Yet when fans discuss professional players, we describe them through personality and style.
We wanted to bring that same human language of playstyle into data analytics.
As fans who love professional play, we wanted to give every player the chance to discover which pro shares their style —
bridging the excitement of esports with personal gameplay analytics.
At the same time, League of Legends is a team game, and many players often wonder after a ranked loss:
“Was it my fault or my duo’s?”
RiftTale was inspired by that curiosity too — to help friends visualize their synergy, and see whether they truly complement each other or secretly hold each other back.
⚙️ What it does
RiftTale transforms League of Legends match history into personalized coaching insights.
It retrieves your recent matches, computes advanced metrics, and infers playstyle tags — such as aggressive, high-risk, or vision-control — describing how you truly play.
The system visualizes spatial and temporal data through heatmaps and timelines, helping players see when and where they perform best or struggle.
For fun and discovery, RiftTale also compares you with professional players across all regions, finding your most similar pro and generating an AI-written summary.
It performs champion similarity recommendations using embedding-based comparisons of your most-played champions.
Finally, players can enter a friend’s Riot ID to generate radar charts and a natural-language duo synergy report, showing whether you’re the perfect pair or total opposites.
🧰 How we built it
RiftTale uses the Riot Games API to fetch up to 50 recent matches per player, analyzing statistics, timelines, and positional data to derive advanced metrics such as KP, DMG%, DTH%, CSPM, DPM, and GOLD%.
Match timelines and in-game events are cached in AWS DynamoDB and compressed in AWS S3 for efficient, scalable retrieval.
The backend runs entirely on AWS Lambda (serverless), ensuring stability across Riot’s multi-region clusters (Americas, Europe, Asia, SEA).
The frontend is hosted on AWS Amplify, providing fast global delivery.
Beyond the Riot API, we use Riot Data Dragon (DDragon) for champion metadata and Oracle’s Elixir for professional player datasets.
For the AI layer, we leverage Amazon Bedrock —
using Titan Embeddings for numerical similarity and Mistral 7B Instruct to generate natural-language insights, stylistic analyses, and duo synergy explanations.
Built with HTML / CSS / JavaScript, the interface turns raw data into an interactive, narrative-driven experience.
⚠️ Challenges we ran into
Working with the Riot Games API presented several challenges — especially its strict rate limits and multi-region architecture.
We built an adaptive throttling system in Lambda that dynamically adjusts request timing and uses DynamoDB caching to prevent redundant calls.
API inconsistency also became an issue — particularly for Taiwan (TW), where some accounts are under Asia while others are under SEA.
We solved this by building a dynamic region detection system that automatically routes to the correct cluster.
Handling large timeline and positional data for 50 matches per user created bandwidth bottlenecks, so we implemented S3 GZIP compression and a streaming parser to improve efficiency.
Each obstacle pushed us to build a more scalable, modular, and globally robust system — capable of handling data-heavy analytics while staying smooth for players.
🏆 Accomplishments that we're proud of
- 🌍 Cross-region data retrieval — works seamlessly across all Riot servers.
- 🧠 Pro player similarity feature — matches your playstyle with real professional players from 2025 esports leagues.
- 🔥 Summoner’s Rift heatmap visualization — transforms kill and death positions into intuitive spatial insights.
Together, these features make RiftTale not just analytics — but a personal mirror of your playstyle.
📚 What we learned
Through building RiftTale, we deepened our understanding of AWS cloud architecture — from deploying serverless backends on Lambda, managing persistence with DynamoDB and S3, to automating delivery via Amplify.
It was our first time building a project that had to be both scalable and truly usable — not just a prototype.
We learned how to handle real-world latency, throttling, and caching, ensuring stable performance even under heavy loads.
Most importantly, we learned that data becomes powerful only when it tells a human story.
🚀 What’s next for RiftTale – Relive Your Journey Through the Rift
Next, we plan to make RiftTale even more interactive and intelligent.
We’re building an AI-powered Q&A coaching zone, where players can ask questions like
“Why do I lose early fights?”
“How can I play safer as a jungler?”
and receive data-driven answers grounded in their own match history.
We’ll further enhance language model integration, fine-tuning Mistral and Bedrock models for better tactical reasoning and conversational feedback.
Finally, we hope to collaborate with professional esports teams, leveraging RiftTale’s analytics to explore team coordination and playstyle development.
Our vision: to bridge the gap between everyday players and the pros — turning data into strategy, and strategy into growth.
Built With
- amazon-amplify
- amazon-bedrock
- amazon-dynamodb
- amazon-lambda
- amazon-web-services
- css
- github
- html
- javascript
- json
- python
- riot-games
Log in or sign up for Devpost to join the conversation.