All about the Challenge Tracker

Welcome to the about page of the Challenge Tracker! This page is about the tech behind the tracker.

Visit challenges.darkintaqt.com.

Tech-Stack

So, how does the Challenge Tracker handle stuff?

Profile Lookup

When a profile is looked up, the data will be directly pulled from the League of Legends API. This ensures, that the data is always up to date but can also lead to problems, if the League of Legends API has an outage. Looked up data will be stored for 15 minutes, before it will be pulled from the API again.

If the looked up profile is new, the players challenges will be directly into a database, otherwise only modified challenges will be updated.

We may not store challenge data for an inactive profile.

Leaderboard generation

Leaderboards are usually generated every hour or two. For this, we compare our data with the leaderboard data from Riot Games and update a profile, if the data has changed. Unfortunaly, some challenges don't support leaderboards, so the leaderboards are completely generated on our end.

As we don't know how to get challenge data for non-supported leaderboards, we have to update every player in our database to generate a leaderboard effectively. Rotating through all 4 million summoners in our database can take 30-40 hours, so non-supported leaderboards are lacking a little bit behind. However, verifying a profile or lookup a profile does help to overcome this problem.

When leaderboards are generated, they are generated per region and then merged into a single leaderboard file which is eventually sent to the frontend.

Website

The website is currently written in ReactJS and the backend is mostly written in NodeJS, Python and PHP. As ReactJS does not support server side rendering, the next approach is to rewrite the frontend in NextJS. You can check out the source code for the frontend on Github (DarkIntaqt/challenges).

About

Make LoL Challenges easily understandable and accessible from everywhere.

First, this project is old. The first version was created just after challenges hit the PBE. That was around November 2021, 6 months before the initial challenge release. Unfortunately, neither the first version of the source code nor screenshots exist of the oldest version. The first version of this site was published exactly 5 days after the Challenge release. Even though it wasn't publicly shared, there were some people using the site already.

The very first version was coded in PHP. PHP was slow and not very reactive (haha), that's why the project was re-written in ReactJS. Leaderboards were added shortly after that.

Contributors

Whether helping with the source code, translating the site or just giving feedback. Without contributors, this project probably wouldn't have gotten anywhere near this far:

BlossomiShymae Thanks a lot to BlossomiShymae for migrating huge parts of the old page into nextJS. But not just migrating but also refactoring, documentating and helping with the new nextJS page. BlossomiShymae's GitHub

NicoW Thanks a lot for your feedback, the image analyzation and optimization! Additionally, thanks a lot for the Spanish translation.

Pyke Thanks a lot for finding several severe bugs, the and the great and creative feedback. Most of the feedback has made it 1:1 into the site.

FAQ

Here are some of the more or less frequently asked questions answered: If you still got questions, consider writing me an E-Mail (see imprint), create an issue on GitHub or message me on Twitter.

How can I navigate the leaderboard page

You can apply a ton of filters. Shift+Leftclick will allow you to select serveral regions at once, Rightclick will select every region except the clicked.

What are all these filter options on a profile page?

Well there are a lot of options, but I will explain a few in detail which are not well described on the site.

Display options Display options

By switching between these two buttons you can change the display options for the challenges. A list and a compact mode is available.

Set thresholds to master Set thresholds to master

By setting the thresholds to master you can easily check how many points you need until you 'max' a challenge.

Only show challenges which (still) gives points Only show challenges which (still) gives points

Thiis filter options removes all challenges where you can't gain any new points from.

My challenges are not updating

That's bad. Usually, challenges update around every 15 minutes, leaderboards around every 60 minutes (maybe longer due to caching). If your challenges don't update at all, you may contact me on twitter: @darkintaqt.

The leaderboard positions are wrong

That is our fault. Our leaderboard positions, escpecially the top leaderboards positions are more up to date than the Riot ones. We will keep it that way to serve more accurate leaderboards, sorry about your rankings. Additionally, summoner only show up on the leaderboard when they were looked up at least once.

My challenge doesn't update even though I'm over the threshold

You will most likely be promoted in the next 24 hours as the Master+ leaderboards do not update immediately.

I don't want to appear here

That's sad but ok, so just send me a direct message on (X) Twitter: @darkintaqt, and I'll try to remove you within the next 1-2 days. However, this will not prevent you from being lookup up by users who know your name and your username could be displayed longer (1-4 weeks) in search engines. This will also not remove your scores from the leaderboards, only your name and profileIcon. This is because the leaderboards must not be falsified.

What about my privacy and the data you collect about me?

League of Legends related data about your summoner profile is stored exactly 15 minutes on our servers. Leaderboard data will be kept updating (almost) forever, as long as you stay in the top ranks (top 250 per region). If you don't want to appear on the leaderboards, read the answer above. Also, we collect data such as your IP and browser, read the Privacy Policy or Imprint for further information.

What are these blue checkmarks

These blue checkmarks are used to show when a user is verified. Verified users have connected their account with their Riot Games Account. Verified users can see their challenge progress per game and much more.
If you don't want to be verified, please unverify yourself using this link: Revoke verification (you might have to login with your Riot Games Account and follow the login flow, then click on "Yes that's me" and finally on "Revoke Verification"). If you don't have access to your Riot Games account anymore, please message me on Twitter (X) @darkintaqt or write me an E-Mail (adress in the imprint).

All about the Challenge Tracker
DarkIntaqt
DarkIntaqt
Published
Edited

©2020 - 2024

DarkIntaqt

DarkIntaqt

HomeAboutBlog