Wonder how it could be done - would be useful for e.g. character separation issues, especially that I use to post my logs and I dont want everyone to know all my chars just by looking at the logs.
I can think of some ways of having different settings for different chars but they're quite imperfect.. so if anyone has a better idea, or an idea how to improve on my ideas, please comment.
So, my ideas are:
1) To have different world/script files for every char - that's the worst one I have.
2) Have an alias to log on: for example, alias scypio to send scypio to mud and set @name to 'scypio', and then have settings depend on @name - the problem with this one is that you have to create a new alias for every char..
3) Have a trigger after the MUD log on message 'Your name?' to catch the input name and save it into a variable.. would be the best one, but I dont know how to trigger on what I input.
So, the question is: do you have any better ideas/comments on these ideas/solution to point 3?
Why is having seperate world files such a problem?
Part two, you dont need to have a seperate alias to set the values, you can use a wildcard, something like this:
set name to *
and then have it set a variable.
Which is extremely similar to your third point, in fact, its exactly what the third would entail. Creating an alias to catch, and then setting a variable as well as sending to the mud.
I dont see the problem with having a seperate world file for each character. If you need to share things between them (triggers, et al) you could use plugins, or include files. It seems ideal, but maybe Im overlooking something.
Wouldn't having different world files mean more complicated alias/trigger changing? As far as I know, only the aliases/triggers in the world file can be changed conveniently (that is using the MUSHclient interface, not in their text form..).. so would either have to change all the world files separately, or add a trigger in that XML (?) form, right?
Yes, But you can do that easily enough by using MCs interface and then copying the trigger/alias/timer/etc and pasting it into the plugin.
What do you really need to edit constantly?
Wouldnt there be a set of core triggers/aliases that are used communally, and then extra ones per each character? Just because you have an alias for casting something, doesnt mean you need it on every character.
If youre still developing that initial plugin, thats one thing. But once you reach that point where youve made triggers an aliases for most common things, you could make a plugin and then have worlds with different triggers/aliases which are specific to those worlds.
Theoretically, it would be like that. But the MUD I play is huge and after 2 years of play I still haven't learned all the quests nor do I have all the travelling aliases/quest aliases etc.. also, new quests are added constantly.. so there's a need to update the aliases (mostly) quite often.. I think..
I just came up with a solution to the part 3, I think.. not a perfect one, but not a bad one too.
Have a trigger on the greeting message from MUD. The trigger would enable an alias *, which would send the wildcard to the MUD and to the variable and disable itself.
That way, I wouldn't have to change my logging in habits:)
Well, I got a new solution.. imperfect, but easy to implement - after I type the name and the password, I get the last command (using GetCommandList(1)).. and since password isnt shown in command history, I get the name.
One problem is that if I'm lagged then it can happen that the password is not recognized correctly as one, which causes it to be shown in command history, which causes the name variably to have the wrong value.. but I don't think it's possible to get around that.
Might add an alias to set the name variable manually, too.. so wouldn't have to relogon in such cases.
You can just use <include> tags in plugin to include files externally, that's what I do to have common aliases/triggers...