The easiest way I can think of to be completely customisable, but to allow for ease of configuration woud be to have a main Plugins directory under the Mushclient directory, then have PLugins directories under each world.
By doing this, you could just relocate the plugin and make it available across all worlds or confined to a specific one without much of anything in the way of configuration. The user, no matter their experience level, would simply download a script file and drop it where it would do the most good.
In my opinion, all the script files should be executed using the same scope, so they could share each others' subroutines, functions, classes, etc. Even if MUSHclient has to simply load them, concatenate them internally, and then execute the resulting script file.
Ideally, it should support multiple languages (active server pages manages this) because there may be many script authors in many languages. I have no idea of this would be compatible with the above idea of sharing scope (though active server pages does again manage this: Perl and java and vbscripts can make use of each others' subroutines)
Hey, I may not get my whole wish, but if I put all my ideas out front, I'll get more of it than I otherwise would :) |