Mise en forme de code: pensez à utiliser les balises [ tcl ] et [ /tcl ] (sans les espaces bien sûr) autour de vos codes tcl afin d'avoir un meilleur rendu et une coloration syntaxique. x


Megahal sur plusieurs eggdrops
#1
Hello ici !

Je teste MegaHal (et l'interface de MenzAgitat) et je me posais la question suivante:
Puis-je lancer le module sur plusieurs eggdrop (une seule compil, multiples .conf) sans souci, et surtout le "cerveau" sera-t-il commun ?

Merci d'avance.

P.S.: si personne n'a la réponse, je ferai des tests moi-même, au pire je perdrais quelques jours d'apprentissage.
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#2
Ca devrait pouvoir fonctionner avec un cerveau commun si tu évites les collisions lors de la lecture ou de l'écriture du brain.

En cas de collision le bot se verra refuser l'accès au fichier et fera une erreur au chargement ou à la sauvegarde du brain.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
#3
Merci pour ta réponse.
Tu penses qu'il y a un moyen de se protéger des collisions ?
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away
#4
En fait il y a un autre problème.
Si tu partages un seul brain, tu vas devoir n'activer l'apprentissage que sur un seul bot sans quoi il va se produire une désynchronisation du brain. Dans le cas contraire, chaque bot apprenant séparément va écrire son brain à intervalles réguliers, mais ce faisant il ne le relit pas et donc n'est pas au courant des modifications faites par les autres eggs.
En gros, chaque egg écrivant le brain écrasera ce que les autres eggs ont appris juste avant.
Tu dois donc avoir un seul egg en mode apprentissage et tous en mode réponse.

En ce qui concerne les collisions, tu dois juste t'assurer que les eggs ne démarrent pas en même temps et n'accèderont pas au même moment au fichier pour le lire. Ca ne se produit qu'une seule fois au démarrage de l'egg et l'opération se termine en une fraction de seconde. Il est donc peu probable d'avoir une collision mais ça peut quand même arriver.

La solution serait de rajouter un test d'accessibilité du fichier brain (pardon DES fichiers brain, n'oublie pas le .PHR et le .DIC) juste avant de le lire, et de répéter l'opération quelques secondes après si celle-ci échoue.
Toute l'actualité de mes scripts ici     (dernière mise à jour le 22/04/2020)

Tout programme comporte au moins un bug et pourrait être raccourci d'au moins une instruction, de quoi l'on peut déduire que tout programme peut être réduit à une seule instruction qui ne fonctionne pas.
#5
Ah, je note pour l'apprentissage et désactive ma bétise :)
irc.zeolia.net - Offrez-moi un café
Merci de ne pas demander d'aide en MP
Away


Possibly Related Threads…
Thread Author Replies Views Last Post
  plusieurs question en 1 tedcampa 7 5,340 22/03/2011, 11:45
Last Post: djkenny

Forum Jump:


Users browsing this thread: 1 Guest(s)