Commandes gaming
Integration avec les API Riot Games pour le suivi des statistiques TFT et Valorant, ainsi qu'un chatbot IA.
Riot Games (TFT)
/riot link <gameName> <tagline>
Lie un compte Riot Games au profil Discord via l'API Account-V1 (recuperation du PUUID).
| Parametre | Type | Requis | Description |
|---|---|---|---|
gameName | Texte | Oui | Nom de jeu Riot |
tagline | Texte | Oui | Tag Riot (ex: EUW) |
Le compte est enregistre dans la table GameAccountLink avec le provider riot.
/riot profile
Affiche le compte Riot lie au profil Discord de l'utilisateur.
/riot stats [@user]
Affiche les statistiques TFT ranked en temps reel.
| Parametre | Type | Requis | Defaut |
|---|---|---|---|
@user | Utilisateur | Non | L'auteur de la commande |
Les donnees sont recuperees via trois appels API :
- Account-V1 : resolution du PUUID
- TFT-Summoner-V1 : donnees du joueur
- TFT-League-V1 : rang et statistiques ranked
Valorant
Prerequis
Le module Valorant est desactive par defaut. Pour l'activer, configurer ENABLE_VALORANT_TRACKER=true et HENRIK_API_KEY dans le .env.
/valorant set-id <riotId>
Enregistre le Riot ID Valorant du membre.
| Parametre | Type | Requis | Description |
|---|---|---|---|
riotId | Texte | Oui | Riot ID au format Pseudo#TAG |
Le format est valide par une expression reguliere. Exemples valides : Ancaris#5555, Player#EUW.
/valorant stats [@user]
Affiche un embed complet avec les statistiques Valorant du membre.
| Parametre | Type | Requis | Defaut |
|---|---|---|---|
@user | Utilisateur | Non | L'auteur de la commande |
Contenu de l'embed :
- Icone de rank (image depuis valorant-api.com)
- Rank actuel avec RR (Rating Points)
- Peak rank (meilleur rang atteint)
- K/D/A avec ratio K/D
- ACS (Average Combat Score par round)
- ADR (Average Damage per Round)
- HS% (pourcentage de headshots)
- Bilan saison : W/L avec barre visuelle (carres verts/rouges)
- Agent principal : nom, matchs joues, winrate, K/D, image de l'agent
Roast automatique : si les stats sont mauvaises, le bot genere un commentaire moqueur via l'IA (Groq). Les conditions de declenchement :
- K/D inferieur a 0.8
- Winrate inferieur a 45% (avec plus de 5 matchs)
- HS% inferieur a 15% (avec plus de 5 matchs)
- Rank Iron ou Bronze
Apres l'affichage, les stats channels sont automatiquement rafraichis en arriere-plan.
@Nekobot (chat IA)
Mentionner le bot (@Nekobot) dans n'importe quel salon declenche une reponse de l'IA.
- Modele : Llama 3.3 70B via Groq
- Personnalite : trash talk, vulgaire, aucun filtre (serveur prive entre amis)
- Memoire : 10 derniers messages par salon, stockes en memoire (reinitialise au redemarrage)
- Limite : 300 tokens max par reponse, timeout de 10 secondes
Si le message ne contient que la mention (sans texte), le bot repond avec un message de fallback. Si l'API Groq est injoignable, un message de secours est envoye.
Desactiver le chat
Pour desactiver le chatbot, il suffit de retirer la variable GROQ_API_KEY du .env.
