BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
픽 선택을 돕습니다. 잘못된 선택을 피하고, DraftForMe가 초안, 역할, 위험에 맞는 챔피언을 추천합니다
Sachez quoi pick. Évitez les mauvais choix. DraftForMe vous aide à choisir un champion adapté à la draft, au rôle joué et aux risques de la partie.
게임HTML · TypeScriptGitHub @CAIClement온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Un coach de draft pour League of Legends. Indiquez votre rôle et les champions déjà verrouillés en face : DraftForMe propose trois picks classés, et montre pour chacun le détail du calcul.README 전문 보기 ↗
Un coach de draft pour League of Legends. Indiquez votre rôle et les champions déjà verrouillés en face : DraftForMe propose trois picks classés, et montre pour chacun le détail du calcul.
Le moteur de recommandation (src/lib/recommendation/) classe les champions d'un rôle selon trois critères :
| Critère | Ce qu'il mesure |
|---|---|
| Force dans le patch | Le classement du champion à votre poste, d'après son taux de victoire |
| Lecture du matchup | Les counters connus face aux champions déjà pickés en face |
| Votre aisance | Votre pool de champions (à venir) |
Le poids de chaque critère s'adapte à la situation (par exemple, le matchup ne compte qu'une fois un pick adverse connu) et il est affiché à côté du résultat.
Les données portent sur l'EUW, en Emerald et au-dessus. Les statistiques actuelles proviennent d'OP.GG (patch 16.3). Leur remplacement par des statistiques calculées à partir de l'API Riot, sur le patch en cours, est en préparation (spec).
Le dossier ml/ contient deux projets menés pour savoir si un modèle pouvait faire mieux que les règles écrites à la main.
ml/collect/). Des parties classées EUW du patch en cours sont récupérées via l'API officielle de Riot, à parts égales entre les dix rangs, dans une base SQLite reprise automatiquement après une interruption. Objectif : 30 000 parties.ml/win/). Un modèle prédit le vainqueur d'une draft. Il est comparé une seule fois, sur des parties mises de côté, à trois références : le moteur du site, les winrates des parties collectées, et les statistiques publiques seules.Premier résultat, sur un essai de 11 000 parties : les statistiques publiques prédisent le vainqueur aussi bien que tout ce qui a été appris sur les drafts, et le modèle ne les bat pas. Toutes les approches restent proches du pile ou face (log loss d'environ 0,69), ce qui confirme qu'une composition seule en dit peu sur l'issue d'une partie. La conclusion pratique : garder les statistiques du site à jour vaut plus qu'un modèle. Le verdict officiel sera rendu sur les 30 000 parties.
Le détail est dans les specs : collecte et modèle de victoire.
Prérequis : Node.js 22 ou plus, npm, et un projet Supabase (ou supabase start en local). Python 3.11 seulement pour le dossier ml/.
npm install
Créez un fichier .env.local à la racine avec l'URL et la clé publique (anon) de votre projet Supabase :
NEXT_PUBLIC_SUPABASE_URL=https://<projet>.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=<clé anon>
Appliquez le schéma (supabase/migrations/) et les données de départ (supabase/seed.sql). Avec une base Supabase locale (Docker requis), une seule commande fait les deux :
supabase db reset
Pour un projet hébergé, appliquez les migrations avec supabase db push, puis exécutez supabase/seed.sql dans l'éditeur SQL.
Puis lancez le site sur http://localhost:3000 :
npm run dev
| Commande | Rôle |
|---|---|
npm run dev | Serveur de développement |
npm run build puis npm run start | Version de production |
npm test | Tests du site |
npm run lint | Lint |
npm run seed:build | Régénère supabase/seed.sql à partir de data/ |
python -m pytest test/ml -q | Tests du dossier ml/ |
ml/)pip install -r ml/requirements.txt
La collecte demande une clé de l'API Riot, à saisir dans la session sans jamais l'écrire dans un fichier :
$env:RIOT_API_KEY = [Net.NetworkCredential]::new("", (Read-Host "Cle Riot" -AsSecureString)).Password
python -m ml.collect.run --target 30000 --db "$env:LOCALAPPDATA\DraftForMe\matches.sqlite"
L'entraînement et l'évaluation du modèle sont décrits dans ml/README.md.
| Dossier | Contenu |
|---|---|
src/app/ | Pages et routes API (Next.js) |
src/components/ | Composants : page d'accueil, outil de draft, interface |
src/lib/recommendation/ | Le moteur de recommandation |
src/lib/data/, src/lib/supabase/ | Accès aux données |
supabase/ | Migrations et données de départ |
data/, scripts/ | Données sources et génération du seed |
ml/ | Collecte Riot, modèle de victoire, ancien pipeline |
test/ml/ | Tests Python |
docs/superpowers/ | Specs et plans de chaque chantier |
Chaque chantier commence par une spec (docs/superpowers/specs/) et un plan d'implémentation (docs/superpowers/plans/). Ils expliquent les décisions prises et pourquoi.
DraftForMe n'est pas approuvé par Riot Games et ne reflète pas les opinions de Riot Games ni de quiconque officiellement impliqué dans la production ou la gestion des propriétés de Riot Games. Riot Games et toutes les propriétés associées sont des marques commerciales ou déposées de Riot Games, Inc.