I had the same problem with the soulbinder. I did a script for her, but when you hailed her, she would automatically bind your soul because the trigger for binding your soul was the word "bind". When she gave her trigger for "hail", it picked up the word "bind" in her name.
Same issue is happening with my Illusionist_Mindbender. You hail her and the trigger is "hail" She says what she needs to but then the say command "bend" is triggered because she just talked and she has the word "bend" in her name.
This is why I want to try the $name =~ $name to see if $name is for players only and not npcs. Adding that as to the if statement would allow the script to check to see if it's a player saying the word and not an npc.
However, if that does not work, the alternative would be slightly editing the NPCs name so that the word Mindbender would become MindBender. Thus the case sensitive bend would not be picked up.
