Leleck
What Mushroom said is true, if you set
onGuildChat to zero, your bot won't learn from guild chat anymore... Try to turn
debug on and search for this message at your log:
Learn Learning: ...., when you receive a guild chat. If this message appear, means that your bot is learning from that chat, I think it won't show up.
About your lines.txt problem, I really don't know why this is happening... when you do this sequence, is your file lines.txt open all the time?
You can try this:
Open your kadiliman.pl file and search for this part of program:
Code: Select all
sub Reload {
for (my $i = 0; (exists $config{$prefix.$i}); $i++) {
message "Plugin Kadiliman: checking for duplicate lines in ". $config{$prefix.$i."_scriptfile"} ."...", "plugins";
checkForDupes($config{$prefix.$i."_scriptfile"});
message "[Kadiliman] done.\n", "plugins";
$bot{$i} = new Chatbot::Kadiliman {
name => $config{$prefix.$i},
scriptfile => $config{$prefix.$i."_scriptfile"},
learn => $config{$prefix.$i."_learn"},
reply => 1,
};
}
}
And just change it to this:
Code: Select all
sub Reload {
for (my $i = 0; (exists $config{$prefix.$i}); $i++) {
message "Plugin Kadiliman: checking for duplicate lines in ". $config{$prefix.$i."_scriptfile"} ."...", "plugins";
# checkForDupes($config{$prefix.$i."_scriptfile"});
message "[Kadiliman] done.\n", "plugins";
$bot{$i} = new Chatbot::Kadiliman {
name => $config{$prefix.$i},
scriptfile => $config{$prefix.$i."_scriptfile"},
learn => $config{$prefix.$i."_learn"},
reply => 1,
};
}
}
But I don't think this is the problem... this sub function checkForDupes search for duplicate lines at the file and erase them, but it run just when the plugin is reloaded and not when it is started.