Skip to content

Commandes gaming

Integration avec les API Riot Games pour le suivi des statistiques TFT et Valorant, ainsi qu'un chatbot IA.

Riot Games (TFT)

Lie un compte Riot Games au profil Discord via l'API Account-V1 (recuperation du PUUID).

ParametreTypeRequisDescription
gameNameTexteOuiNom de jeu Riot
taglineTexteOuiTag 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.

ParametreTypeRequisDefaut
@userUtilisateurNonL'auteur de la commande

Les donnees sont recuperees via trois appels API :

  1. Account-V1 : resolution du PUUID
  2. TFT-Summoner-V1 : donnees du joueur
  3. 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.

ParametreTypeRequisDescription
riotIdTexteOuiRiot 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.

ParametreTypeRequisDefaut
@userUtilisateurNonL'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.