just thought i'd put some of my suggestions all together.
First, I agree with Mrs. Teacup about the frames, that would certainly improve the user interface.
I would also consider a way to link plugins, so that different plugins could share variables, aliases, triggers, etc... For example, I have several plugins that all require a prompt trigger, and for efficiency, although not ease of use, I have combined them into one large plugin with only 1 prompt trigger. It would be nice to be able to keep them separate.
I was also wondering Nick, why you decided not to create a MC specific scripting language, as many other clients have? This would appear to be faster for parsing.
In addition, MC does not let you create an alias with a duplicate match, but it allows you paste one in. Perhaps you could find a way to make this optional? For instance, if I have 100 aliases I want to paste into an existing world, but 50 are duplicates, I simply don't know which ones; it would be nice to paste them, and then not have to go through and delete the 50 duplicates. Another possible solution is to make the world preferences box non-modal, so that I could open the preferences boxes for two worlds side by side, and compare aliases. Thanks.
You can currently do the plugin thing.
Use callplugin, getpluginvariable, and the like.
Create a master plugin, which calls the secondary modules with the info.
He uses standard scripting languages because theyre standard and extensible. You can use them to do anything they can do (such as com objects and such), and they don't require people to learn some new pseudolanguage.
I think the alias pasting thing is a bug. However, you can give them labels and they will collide and not be pasted (because of duplicate labels).
If you need to compare worlds, open them in a text editor.
Or, open two instances of Mushclient and do it that way.
Yes indeed. Plugins *can* communicate with each other with CallPlugin, or more recently people have been sending things from one plugin to another by simply making one plugin send an alias that another plugin catches.
As for the scripting language, I *was* thinking of that a while back, but now with things like Jscript, VBscript, Pythin, Perl, TCL and so on, it seems that most "sorts" of script language you might want are catered for, and will continue to be updated and have bugs fixed without any effort on my part. I don't know if the parsing would necessarily be faster, by now language like VBscript or JScript should have their parsers fairly well optimised.
If you want speed, put your scripts into a script file, as MUSHclient calls the script parsing engine once (when the file is loaded or modified) rather than for each script call. Using "send to script" is more convenient, but the scripts have to be parsed each time.
By the way, how can one use include files for his plugin? Which one is possible, using an XML include so the MC parser includes it, using a language "include" statement so that the language does, or both?
I for one would like to see PHP support for MC. Being an avid php coder, and using mushclient for making NPCs that handle stuff that are not currently handled by normal game features in the online graphical mmpog I play, PHP support would greatly add to my bots capabilities. It would allow me to more easily manipulate data and store things to my mysql DB that is hosted on my webhost's server for later display on a website. Thus if the bot was offline, people could still view their stats without my computer having to be left plugged into my cable modem all the time since I am planning on doing away with my desktop since it is broken and plan on going with a laptop....anyways, that is my 2 cents for what it is worth.
I'm not quite sure why you need PHP to do that. Jscript has a similar C-like syntax. There are examples on the site here under the plugins area that show opening a datatbase from a script, you could use a variation on that to store information about your bots.
JavaScript is horrid. I refuse to code anything with it, but on the flip side, I love coding in Java. Plus JavaScript's MySQL functions aren't nearly as well organized as PHP's. Also PHP is much more versital then JavaScript could ever hope to be. Atleast that's my oppinion on all of it. Anyways, just an idea, either it's added or it isn't, no biggy, I'll still use MC cause I despise ZMud, MudMaster, and just about all other mud clients.