WINDOWS APP · FREE · BETA

The best options from your pool, and why.

During champion select, DRAFT ranks the champions you play against the enemy composition, highlights the best fits and explains how to play each one. It never picks, bans or locks in a champion for you: the decision stays yours.

5 rolesYour data on your PC0 decisions made for you
DRAFT main window: the five enemy champions on the left, Twisted Fate ranked first in the center with Kog'Maw as alternative, game plan on the right
DRAFT 2.16 beta interface on a simulated draft (the app is in French).
YOUR CHAMPIONS, YOUR CALLEVERY OPTION EXPLAINEDNO DECISIONS MADE FOR YOU
01 / THE PROBLEM

A few seconds to decide, five opponents to read.

In champion select you watch the enemy team come together, but you have little time to work out which of your champions handles it best. DRAFT does that reading with you, using explicit rules, and lets you decide.

01Read

Engage, divers, crowd control, squishy targets: the enemy team profile at a glance.

02Compare

Every champion in your pool is ranked, with an alternative and what separates them.

03Understand

A game plan for each phase and tips matched to your level, so you learn while playing.

02 / FEATURES

What DRAFT does, with real screenshots.

Screenshots of the DRAFT 2.16 beta interface, with a simulated draft and fictitious data. Each feature shows its maturity level. The app is currently in French.

03 / HOW IT WORKS

Four steps, and the decision stays yours.

01

Launch DRAFT

An icon appears next to the Windows clock. No account and no key are needed.

02

Set up your pool

In settings, add the champions you play for each role. They are saved on your PC.

03

Enter the enemy picks

Type each enemy champion once it is locked in, or enable optional client reading to add them for you. Their guessed role can be corrected in one click.

04

Compare, then pick

Your ranked pool, the reasons and a game plan. You select and lock in yourself, in the client.

04 / VIDEO

The full tutorial, in four minutes.

Launch, profiles, entering enemy picks, reading the ranking, panels, tabs and Riot import. The video only plays when you click it.

Silent video with on-screen descriptions in French; English subtitles shown at the top. Simulated draft and fictitious data.
05 / RIOT GAMES API

What DRAFT asks Riot for, and why.

The core ranking works without any request to Riot. The official API powers three optional features, always started by the user from the settings or the tray icon menu. They are described as they work in version 2.16 beta.

1 · PERSONAL HISTORY

Import your ranked games

The user enters one or more Riot IDs, a region and how many games to read (100, 200 or 500 per import). The tool is meant for the user's own accounts; in the beta, nothing verifies ownership (see Riot Sign On below).

  • ACCOUNT-V1 /riot/account/v1/accounts/by-riot-id/{gameName}/{tagLine}
  • MATCH-V5 /lol/match/v5/matches/by-puuid/{puuid}/ids?queue=420
  • MATCH-V5 /lol/match/v5/matches/{matchId}

Kept on the PC until deleted: the Riot ID entered; for each ranked solo/duo game longer than 5 minutes, its ID, date, patch, duration, champion, position, result, K/D/A and the enemy champions. No name or identifier of any other player.

Shown: most played champions and records in the Games tab.

2 · ROLES PER CHAMPION

Aggregated statistics

To guess the enemy champions' roles, especially mid, DRAFT counts positions played over about 1,000 recent ranked games (last 14 days). It takes about 40 minutes.

  • LEAGUE-EXP-V4 /lol/league-exp/v4/entries/RANKED_SOLO_5x5/{tier}/II?page=1 — Silver to Emerald, starting point
  • MATCH-V5 match lists (5 games per player) and match details

Kept: champion × position counters per patch, the IDs of matches already read and a few compositions (champions only) used to measure how accurate the guesses are. Starting players stay in memory and are never saved.

3 · POOL MATCHUPS

Records against the direct opponent

For the "direct matchup" criterion, DRAFT measures how the pool's champions fare against their same-position opponent over the last 30 days. It starts from the same lists, then follows, in memory, players who play those champions. At most 3,000 requests, about 65 minutes.

  • LEAGUE-EXP-V4 same starting point as above
  • MATCH-V5 ranked solo/duo match lists and details

Kept: wins and games per pool champion and per opponent, per patch, and the IDs of matches read. Below 30 games for a matchup, the record is not used and the hand-written table remains the reference.

Key never exposed

In the beta, each user enters their own development key. It is masked on entry, sent only to Riot in the X-Riot-Token header, never in a URL, and is neither stored nor logged.

Rate limits respected

At most one request every 1.3 seconds, below a personal key's limit (100 requests per 2 minutes). On a 429 response, DRAFT waits for the Retry-After delay. On 401 or 403, it stops.

No duplicates

Matches already read are never requested again. A recent role computation (under 3 days) is not rerun, and the next import resumes where the previous one stopped.

NOT THE RIOT DEVELOPER API

Client reading (LCU) Experimental · off by default

The League client's local API runs on the player's PC: it is not the public Riot Developer API, and Riot states it is not officially supported for third-party applications. If the user enables it, DRAFT only sends read requests (GET) to two local endpoints: /lol-gameflow/v1/gameflow-phase and /lol-champ-select/v1/session. It keeps the phase, enemy champions already locked in and the player's assigned position. It ignores names, identifiers, hovers, allied picks and bans. This use will be declared in the registration request to Riot.

STATIC DATA

Data Dragon

Champion artwork and the version list are loaded from ddragon.leagueoflegends.com, Riot's static content service. No key is needed.

PLANNED ARCHITECTURE WITH A PRODUCTION KEY · NOT BUILT YET

A production key cannot be embedded in a distributed app. The project therefore plans a DRAFT server that would keep the key, compute aggregated statistics (roles and matchups) once and distribute them as anonymous counters. The app would no longer need any key, and the total number of requests sent to Riot would drop sharply. Personal history import would go through Riot Sign On, so that each player only imports their own accounts.

06 / RULES AND PRIVACY

An assistant, not a bot.

DRAFT is designed to follow Riot Games' policies for third-party tools: it highlights several options and their reasons, without deciding for the player. It is not yet registered with or approved by Riot.

DRAFT's data stays on the user's PC. There is no DRAFT account, no DRAFT server, no ads and no telemetry.

Privacy policy ↗
COMMITMENTS
01
No automationNo picking, banning, locking in, or in-game actions
02
No hidden game informationOnly what the player already sees in champion select, plus general per-champion statistics
03
No player profilingNo other player is displayed, stored or ranked, no MMR
04
Optional client readingOff by default, read requests only
05
FreeNo paid features, no ads
07 / STATUS

A working app. Still in beta.

Version 2.16.0 is available as a public beta on GitHub. It includes role profiles, assigned-position suggestions and signed in-app updates. Automated tests pass, but real champion-select tests and tests on other PCs are still needed. Educational tips are being reviewed; client reading and automatic panel opening remain experimental. Version 2.16.0 can be downloaded from GitHub.

● BETA

Windows 10 and 11
C# · WebView2
Independent project

Source code on GitHub ↗
CONTACT

A question, a bug, an idea?

Email lucas.mettetal2@gmail.com, or open a discussion on GitHub. Never send your Riot key.