[TCL] Motus (version actuelle : 3.355)
escuse moi crazy mais dans motus.tcl je ne vois pas la ligne

tcl
variable define_words "0"




j'ai moi aussi le eggdrop qui crash une fois que quelqu'un a donner la bonne réponse au motus j'attends de voir un MAJ merci
Répondre Avertir
Je quote et je rends plus lisible pour ceux qui ne lisent pas jusqu'au bout.
CrazyCat a écrit :mais pour avoir le motus fonctionnel sans plantage (d'ici la correction), il suffit de ne pas afficher les définitions:
tcl
variable define_words "0"


dans le fichier de config.
Répondre
pour être plus précis allez dans le dossier motus puis le dossier config ensuite éditer default.cfg et la ligne 170 tu trouvera

tcl
variable define_words "1"


que tu met

tcl
variable define_words "0"




Cordialement
Répondre Avertir
merki un amis viens de me dire que le scripts marcher parfaitement avec le version eggdrop1.0.19
Répondre Avertir
J'ai le même soucis que mes camarades, merci CrazyCat. Vivement la 3.0
Répondre Avertir
J'ai bien peur que l'erreur ne vienne pas de Motus mais de la version 1.6.20 d'eggdrop.
Répondre
Après avoir approfondi le problème de crash qui touche les utilisateurs du Motus avec eggdrop v1.6.20, il ressort qu'il s'agit d'un bug d'eggdrop (problème d'allocation mémoire).

Les développeurs sont au courant de ce problème et travaillent dessus, mais il n'est pas garanti qu'un correctif sortira pour la version 1.6.20 étant donné que la version 1.8 est en cours de développement.

Je ne peux donc malheureusement rien faire de mon côté pour résoudre le problème vu qu'il ne s'agit pas d'un bug du Motus, et la seule solution viable est d'utiliser la version 1.6.19 en attendant qu'un correctif ou une nouvelle version d'eggdrop sorte.

La v3.0 de Motus que je vais sortir très prochainement ne résoudra donc pas ce problème mais j'essaierai néanmoins de m'arranger pour que le crash, qui semble se produire à endroit fixe selon la longueur du code, soit détourné dans une zone inutilisée de celui-ci (je ne sais pas encore si c'est vraiment réalisable, mais je verrai).
Répondre Avertir
imho, ce n'est pas la longueur du code qui fait ça, car j'ai pu voir hier 3 définitions s'afficher avant un crash. Alors que d'autres fois, ça plante à la première.
Mais ce n'est pas de notre ressort, que ce soit le package http ou eggdrop. Enfin, pas du mien Smile
Répondre
Ué enfin je me comprends.
J'ai pu observer qu'en ajoutant ou en supprimant des lignes de code (même inertes), j'influe sur l'endroit du crash.
Répondre Avertir
menza je tien a te signaler que le motus avec la version eggdrop1.6.20 ne crash que lorsque le motus donne une définition je sais pas si quelqu'un la déjà dit mais moi c'étais mon problème et je suis passer a la 1.6.19 et tous fonctionne je tenais a te le dire au cas ou cela pourrez d'être utile
Répondre Avertir
Du nouveau concernant le crash de type SEGMENT VIOLATION avec les eggdrops v1.6.20, j'ai résolu le problème par une bidouille simple.

Le crash se produisait au retour de la proc de vérification des propositions de mots juste après l'affichage d'une définition.

Dans la proc motus::gagne, il suffit de remplacer la ligne :
tcl
if { $motus::define_words == 1 } { motus::dico $motus::motchoisi_raw }


par :
tcl
if { $motus::define_words == 1 } { after 0 [list motus::dico $motus::motchoisi_raw] }


et la magie opère.

Ceci étant résolu, attendez-vous à voir paraître la v3.0 dans le courant de la soirée ou demain.
Répondre Avertir
d'accord merci MenzAgitat je préfère attendre la dernier version si tu pense la publier aujourd'hui ou demain on sais jamais tu y ajouteras peut être une nouveauté Mad =)
Répondre Avertir
Nouvelle version disponible : v3.0

changelog v3.0 :

Citation :
  • Le graphique d'activité inclus dans le template HTML de la page de statistiques affiche maintenant certaines informations en infobulle :
    • en passant la flèche de votre souris sur une barre du graphique, vous pouvez voir le score d'activité (total des scores de tous les joueurs pour la période)
    • en passant la flèche de votre souris sur le n° de la semaine, vous affichez la fourchette de temps que représente la période.
      Notez qu'avec les réglages par défaut du Motus, une période = une semaine.
      Notez aussi que si vous mettez manuellement les scores à 0 au moyen de la commande !clearscores, une nouvelle période commence automatiquement.
      De nouvelles variables sont par conséquent disponibles pour la création de templates HTML. (voir le fichier variables_html.txt)
  • Le graphique d'activité inclus dans le template HTML de la page de statistiques correspond maintenant à la somme des valeurs absolues des scores pour une période donnée (au lieu de la somme tout court).
    Un score négatif représente quand même une activité et cela évite des problèmes en cas de cumul négatif.
  • Correction d'un bug dans la génération des stats HTML : les pseudos contenant le caractère "^" provoquaient une erreur.
  • Correction du template HTML par défaut : sous Internet Explorer 6, les barres d'activité faisant moins de 2 pixels de haut s'affichent désormais correctement.
  • Le template HTML de la page de statistiques évolue en XHTML 1.1
  • Il n'est plus nécessaire de mettre des é et autres codes barbares à la place des accents dans le template HTML.
  • Amélioration du design du template HTML par défaut.
  • Les fichiers champ_count.stats et finder_count.stats ont été fusionnés dans un fichier unique nommé players.stats.
    Les statistiques dans ce fichier ont la structure suivante : pseudo,mots_trouvés,nbr_fois_champion,scoreglobal,nbr_mots_proposés,échecs,lettres_bien_placées,lettres_mal_placées,meilleur_temps
  • Les variables token créées par l'utilisation du package http sont correctement nettoyées après utilisation.
  • Réécriture complète de la gestion des statistiques (plus cohérent, plus évolutif, plus rapide).
  • Ajout de nouvelles statistiques individuelles pour les joueurs :
    • score global (cumul de tous les scores du joueur)
    • nombre total de mots proposés
    • nombre total d'erreurs (mots inexistants, mots déjà proposés)
    • nombre total de lettres bien placées
    • nombre total de lettres mal placées
    • meilleur temps du joueur
    Remarque : étant donné que ces statistiques n'existaient pas auparavant, elles démarrent à 0.
    Rappel : vous pouvez afficher les statistiques d'un joueur au moyen de la commande !stat [nom du joueur]
  • La prise en compte des changements de nick des joueurs (reconsidération ou fusion des scores/stats) intervient maintenant dès que le joueur s'étant renommé fait une proposition de mot valide (bonne longueur) et non plus quand il marque un point.
  • Correction d'un bug concernant le timeout lors de l'affichage des définitions, j'avais confondu les millisecondes avec des secondes et 5000 secondes c'était vraiment trop long...
    Si le site duquel le jeu récupère les définitions des mots est injoignable, le bot ne devrait désormais plus faire de ping timeout. (merci T4z et Merwin)
  • Lorsque la définition d'un mot est introuvable sur le dictionnaire en ligne, le jeu ne fait plus de suggestions orthographiques.
  • Le jeu n'annonce désormais plus le mot en cours en notice aux nouveaux arrivants sur le chan si ils arrivent entre deux rounds.
  • Ajout d'une option pour avertir ou non en partyline et dans les logs lorsqu'une fusion entre 2 scores ou 2 profils statistiques de joueur est effectuée par le jeu (après un changement de nick par exemple).
    Remarque : pour pouvoir détecter d'éventuelles tentatives de vol de score ou de stats entre joueurs, il est recommandé de laisser cette option activée.
  • Ajout d'une option pour voicer ou non les ops/halfops (si l'option pour voicer les joueurs qui trouvent un mot est activée).
  • Un débogueur a été intégré afin de fournir automatiquement un rapport détaillé en partyline et dans les logs en cas d'erreur.
  • Suppression de la dépendance aux commandes utimerexists et timerexists de alltools.tcl.
  • La procédure tinyurl a été corrigée (le site www.tinyurl.com ayant changé le payload de ses pages, la résolution des tinyurl ne fonctionnait plus).
  • Correction de la commande !config qui devrait désormais être pleinement fonctionnelle.
  • Les autorisations admin sont maintenant correctement détectées pour les commandes "!motus on/off" et "!motus compile", et il n'est plus possible de contourner les autorisations de la commande !motus (pour lancer une partie) en tapant "!motus on" si on n'est pas admin.
  • Correction d'un bug sur la précision du delta entre un nouveau record de rapidité et l'ancien.
  • Correction d'un bug qui empêchait le fonctionnement de l'arrêt automatique du jeu en cas de déconnection du bot du serveur.
  • Ajout d'une option pour choisir le mode de distribution automatique d'indices, choix entre 2 possibilités :
    • indice supplémentaire si aucun mot n'est proposé pendant n secondes
    • indice supplémentaire si aucune lettre n'est bien placée pendant n secondes
  • Ajout d'une option pour autoriser ou non l'octroi d'un indice supplémentaire s'il ne reste plus qu'une lettre à trouver.
  • Lorsqu'un joueur propose un mot qui a déjà été dit, le jeu signale le nom du joueur qui a proposé le mot le premier.
  • Ajout d'options permettant de régler la fréquence à laquelle seront proposés les mots en fonction de leur longueur.
    Par exemple, vous pourrez décider que le jeu a 20% de chances de proposer un mot de 6 lettres, 3% de chances de proposer un mot de 7 lettres, etc...
  • Ajout d'un système de backup quotidien des scores et statistiques.
    Remarque : un backup est également effectué en cas d'utilisation de !clearscores ou de !resetstats.
  • Ajout d'un système de hauts faits (les joueurs de WoW comprendront) : Le jeu annonce lorsqu'un joueur accomplit un fait remarquable, comme par exemple de gagner 1000 rounds, de totaliser 10000 points, etc...
    Les hauts faits rapportent des "points de hauts faits" qui s'afficheront dans les statistiques personnelles du joueur (commande !stat).
    Une option permet d'activer ou non le système de hauts faits.
  • La commande !fusion permet non seulement de fusionner les scores mais aussi les statistiques personnelles de deux entrées différentes d'un même joueur.
  • Correction d'un bug qui faisait que les commandes !fusion, !stat, !score et !place ne fonctionnaient pas avec les pseudos contenant certains caractères spéciaux.
  • Ajout d'une commande !rename permettant de renommer un joueur dans les scores / statistiques personnelles.
  • Les fichiers obsolètes sont maintenant renommés en xxx.old plutôt qu'en xxx.bak afin d'éviter la confusion avec les backups effectués par le système de sauvegarde quotidien.
  • Les commandes peuvent maintenant être tapées en couleur/gras/...
  • Ajout de la variable %randnick% (le nick d'un joueur présent sur le chan choisi au hasard) à utiliser dans les annonces.
  • Le mode monochrome s'active automatiquement (et en temps réel) si le mode +c est détecté sur le chan.
  • Correction d'un bug crashant le script dans le cas (improbable) où la variable $errorInfo n'existait pas au moment du chargement du script.
  • La précision du temps affiché lorsque quelqu'un trouve un mot a été réduite à 2 décimales au lieu de 3.
  • Ajout d'une option pour adapter la compatibilité du Motus selon la version d'eggdrop que vous utilisez (1.6.19 ou 1.6.20)
  • Ajout d'un certain nombre de nouvelles annonces.
  • Nombreuses corrections/optimisations diverses.
  • Modification de la commande !motus_report en !motus report (utilisée pour générer un rapport de débogage).
  • Correction (contournement) d'un crash du bot qui se produisait juste après l'affichage des définitions avec les eggdrops v1.6.20.

Téléchargement : ici
Répondre Avertir
Salut,
juste pour donner certaines précisions concernant le crash avec eggdrop 1.6.20 dont certains ont pu être victime, avoir entendu parler, avoir vu dans la FAQ ou le changelog, etc.

Après reproduction du crash et envoie d'un coredump aux devs d'eggdrop, on a fini par me dire que c'était visiblement un bug connu.
Comme vous le savez surement déjà, la gestion par eggdrop de l'eventloop de TCL à été réécrite dans la version 1.6.20. D'ailleurs, c'est pour ça que vwait et fileevent fonctionnent maintenant correctement.
Le problème c'est que cela semble aussi causer un certain bug à cause d'une fonctionnalité de TCL.. qui fait alors crasher l'eggdrop

D'après ce que j'ai pu comprendre, MenzAgitat à fait le néccessaire en bidouillant le script pour que le crash n'arrive pas.
Si pour une raison quelquonque le bug arrive toujours, il y a un moyen de s'en débarrasser, en remplacant dans src/config.h "#define HAVE_TCL_SETNOTIFIER 1" par "#undef HAVE_TCL_SETNOTIFIER" [edit: il faut évidamment recompiler le bot]
mais il devrait surement être corrigé dans la prochaine version d'eggdrop (j'en profite pour dire que la version 1.6.20 était la dernière .6, la prochaine sera la 1.8 )

A ma connaissance le bug n'a pas encore été résolu (c'est un truc un peu bizarre enant correctement.
Le problème c'est que cela semble aussi causer un certain bug à cause d'une fonctionnalité de TCL.. qui fait alors crasher l'eggdrop.

D'après ce que j'ai pu comprendre, MenzAgitat à fait le néccessaire en bidouillant le script pour que le crash n'arrive pas.



Ha et sinon, ca fait un moment que j'ai pu essayer le nouveau motus sur #motus@EpiKnet et il est vraiment bien/mieux/bien mieux :p
Répondre Avertir
Bonjour,

Merci de cette nouvelle version 3.0 du Motus.
Le passage de l'ancienne version motus à la nouvelle version n'a posé aucun problème (sous eggdrop 1.6.19).

Je rejoins Artix en reprenant : bien/mieux/bien mieux.
Merci MenzAgitat de ce très bon jeu.
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté