Système d'expérience discord.py

stockage de données dans une variable

a marqué ce sujet comme résolu.

Bien le bonjour,

je poste ce post car je suis actuellement en train de faire un bot discord pour mon serveur RP SAO. Je viens aussi de débuter, et je ne suis pas très expérimenté… Le problème que je rencontre actuellement, c’est le système d’xp. Si j’explique tout depuis le début, ça ira mieux…

Ce que j’aimerais faire :

  • que le bot détecte quand un message est envoyé
  • qu’il crée un fichier ayant pour nom l’id discord de l’auteur du message
  • qu’il y stocke dans une variable nommé "xp" la quantité d’xp
  • qu’il y ajoute 1 à chaque message envoyé
  • ajouter une commande "xp" pour afficher l’xp que l’utilisateur a

Ce que j’ai réussi à faire:

Dans mon programme, le bot détecte quand un message est envoyé et il crée bien le fichier dans le dossier correspondant. Le seul problème, c’est qu’il n’écrit pas dedans, malgré les instructions que je lui ai donné… Il n’affiche pas non plus la quantité d’xp de la personne ayant effectuée la commande, vu que le fichier censé le contenir…. est vide.

mon code:

xp = 0

@bot.event async def on_message(message): id = message.author.id fichier = open("./xp/%s.txt"%(id),"w") a = "XP= %s" fichier.write(a %(xp)) fichier.close

@bot.command() async def xp(ctx): id = ctx.author.id xp = open("./xp/%s.txt"%(id),"r") await ctx.send(xp)

Pouvez vous m’aider et me corriger?

Tiens , voila un petit script assez simple a comprendre .

xp=0 @bot.event async def on_message(message): author = message.author xp = xp + 1 fic = open("xp.txt","a",encoding="utf-8") fic.write(f"Le nombre d’xp pour le membre {author} est de {str(xp)} if message.content.startswith("¨xp"): await ctx.send(f"Ton xp est de {str(xp)}

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte