Introducing Mudlet

by Vadi

Back to Mechanic's Corner.

Vashner2009-06-27 00:53:35
QUOTE (Deschain @ Jun 27 2009, 12:41 AM) <{POST_SNAPBACK}>
Does anyone else, on the windows version, have an issue where it reprints a line or lines to the screen?

Like, if I do "ql"

It will echo "ql" twice, as well as what I saw twice. But, they have the exact same timestamp (so I know the command isn't actually going through). It will also do this on other things, like if someone says something, or does an action, it will print twice. Not all the time, but sometimes.

I'm not sure if this is some local issue I'm having or a bug with the client.


I haven't noticed anything like this on 10 pre 8.
Vadi2009-06-27 19:05:03
It seems the Mudlet binary itself wasn't included in the v12 version - someone else reported it too.

13 will out tomorrow fixing some small issues that were discovered, and I'll let the person who does the mac installers to keep an eye out for this too. Sorry about that!

edit: the double-line bug seems to only happen with mbcore users. apparently the core doesn't send it's line all too proper or something. this'll be fixed at any rate
Unknown2009-06-27 19:25:27
QUOTE (Vadi @ Jun 27 2009, 03:05 PM) <{POST_SNAPBACK}>
It seems the Mudlet binary itself wasn't included in the v12 version - someone else reported it too.

13 will out tomorrow fixing some small issues that were discovered, and I'll let the person who does the mac installers to keep an eye out for this too. Sorry about that!

edit: the double-line bug seems to only happen with mbcore users. apparently the core doesn't send it's line all too proper or something. this'll be fixed at any rate


Hrm, at work I don't connect through mbcore, just directly to the mud.
Janalon2009-06-28 03:24:21
QUOTE (Vadi @ Jun 27 2009, 03:05 PM) <{POST_SNAPBACK}>
It seems the Mudlet binary itself wasn't included in the v12 version - someone else reported it too.

13 will out tomorrow fixing some small issues that were discovered, and I'll let the person who does the mac installers to keep an eye out for this too. Sorry about that!


I can't wait!
Vadi2009-06-28 13:55:30
Oh! no need to wait. the installer was fixed - I've reuploaded it. Also, an "upgrade only" installer with mudlet and no qt is available too (it is significantly smaller). It's for those that already installed mudlet once and don't need to download the extra stuffs mudlet needs.
Janalon2009-06-28 15:20:49
QUOTE (Vadi @ Jun 28 2009, 09:55 AM) <{POST_SNAPBACK}>
Oh! no need to wait. the installer was fixed - I've reuploaded it. Also, an "upgrade only" installer with mudlet and no qt is available too (it is significantly smaller). It's for those that already installed mudlet once and don't need to download the extra stuffs mudlet needs.


Did the update only, and it installed very quickly! Like the new features and the improved display. Can't believe how differently the Triggers window looks! Do you plan to update your Trigger tutorial video as well?
Vadi2009-06-28 17:08:54
I already have! They are all available here now: http://drop.io/mudlet_videos# links to online versions are there too.
Janalon2009-06-29 02:24:30
QUOTE (Vadi @ Jun 28 2009, 01:08 PM) <{POST_SNAPBACK}>
I already have! They are all available here now: http://drop.io/mudlet_videos# links to online versions are there too.


Any chance of putting the latest two online?
Vadi2009-06-29 11:17:51
http://blip.tv/file/2288760/ ?

The alias-making part remains the same
Janalon2009-07-02 15:10:31
QUOTE (Vadi @ Jun 29 2009, 07:17 AM) <{POST_SNAPBACK}>
http://blip.tv/file/2288760/ ?

The alias-making part remains the same


THANK YOU! The videos make the whole process incredibly clear. I now have echoes, simple triggers, and one-line aliases. I do have a next-step question.

I'd like to make an alias that gives an output of two or more lines. For example, "get coat from pack" then "wear coat" to give a simple example.

So, I would name the endeavor "Coat" and then do the "^coat&" as my input. How do I get that two line output to work? I tried this with no effect. Something like:

CODE
send ("get coat from pack')
send ("wear coat")


Any suggestions?
Isuka2009-07-02 15:18:57
QUOTE (Janalon @ Jul 2 2009, 08:10 AM) <{POST_SNAPBACK}>
THANK YOU! The videos make the whole process incredibly clear. I now have echoes, simple triggers, and one-line aliases. I do have a next-step question.

I'd like to make an alias that gives an output of two or more lines. For example, "get coat from pack" then "wear coat" to give a simple example.

So, I would name the endeavor "Coat" and then do the "^coat&" as my input. How do I get that two line output to work? I tried this with no effect. Something like:

CODE
send ("get coat from pack')
send ("wear coat")


Any suggestions?

CODE
Two problems:
^coat&
needs to be
^coat$

and
send ("get coat from pack')
needs to be
send ("get coat from pack")
Janalon2009-07-02 16:50:47
QUOTE (Isuka @ Jul 2 2009, 11:18 AM) <{POST_SNAPBACK}>
CODE
Two problems:
^coat&
needs to be
^coat$

and
send ("get coat from pack')
needs to be
send ("get coat from pack")


Sorry, they were typos on the boards, and not on Mudlet...

Isuka, would that be...

CODE
send ("get coat from pack")
send ("wear coat")


Because that is what I am using, and it doesn't seem to work.

EDIT: Doh, nevermind. THANKS!
Vadi2009-07-02 17:22:40
Got it working?

Also for a bit of training in capturing wildcards (ie input), you can make it accept a number.

pattern:
QUOTE
^coat(\\d+)$


script:
QUOTE
send ("get coat" .. matches .. " from pack")
send ("wear coat" .. matches .. "")


and doing coat1234 will work.
Vadi2009-07-03 01:11:28
beta 12b is up for ubuntu and macs (windows will be up there today-tomorrow): http://www.mudlet.org/download/

QUOTE
* Fix: empty lines were skipped
* Fix: under special circumstances some lines were doubled
* GUI preferences dialog update patch: Vadim Peretokin (vadi)
Janalon2009-07-07 01:39:20
Ack. Was inputting some new triggers. Mudlet pinwheels, crashes. I loose all of my triggers upon return. Next time I will export periodically until it gets to be more stable. I will also report this bug. ANYWAY... now that I have to rewrite my triggers...

I want to trigger an echo to show balance. In this particular example, I have three variations on the same theme:

You feel the Id channel open again.
You feel the Superstratus channel open again.
You feel the Substratus channel open again.


First, I want to wildcard Id/Superstratus/Substratus in the input so I don't have to write three triggers; how do I make that wildcard reappear in the echo?

Secondly, how do I make the echo appear on a new line rather than beside the trigger input?

Finally, how do I add color to the echo?
Vadi2009-07-07 12:39:32
For getting your stuff back, you can select a different profile date to load when you're connecting. Mudlet saves 'snapshots', so in reality you should never "lose it all". But of course would be great to know a reproducible method for the crash smile.gif

I've posted a #wait to mudlet tut thing here: http://mudlet.sourceforge.net/phpBB3/viewt...p?f=8&t=199

Also, mac people who downloaded the 12b updater only will need to download it again. Sorry, but I mislinked and what you downloaded again was 12. It's fixed now.

QUOTE (Janalon @ Jul 7 2009, 02:39 AM) <{POST_SNAPBACK}>
I want to trigger an echo to show balance. In this particular example, I have three variations on the same theme:

You feel the Id channel open again.
You feel the Superstratus channel open again.
You feel the Substratus channel open again.


First, I want to wildcard Id/Superstratus/Substratus in the input so I don't have to write three triggers; how do I make that wildcard reappear in the echo?


nexus {w} (\\w+) in mudlet, with the regex matching.

So:

QUOTE
^You feel the (\\w+) channel open again\\.$


Will do it.

In a script, use matches to make the first wildcard appear (matches will give you the whole line the trigger matched).

QUOTE (Janalon @ Jul 7 2009, 02:39 AM) <{POST_SNAPBACK}>
Secondly, how do I make the echo appear on a new line rather than beside the trigger input?


Add a \\n character before it, like:

QUOTE
echo ("\\nblah")


QUOTE (Janalon @ Jul 7 2009, 02:39 AM) <{POST_SNAPBACK}>
Finally, how do I add color to the echo?


Hm... those aren't as fun to do as in Nexus suspicious.gif here it's easier. You add the fg and bg functions before the text you'd like colored.

like:

QUOTE
fg ("red") echo ("this ") fg ("blue") echo ("is ") fg ("green") echo ("Sparta!")


or to be more readable:

CODE
fg ("red")
    echo ("this ")
fg ("blue")
    echo ("is ")
fg ("green")
    echo ("Sparta!")


and you get:

this is Sparta!
Janalon2009-07-07 22:12:29
QUOTE (Vadi @ Jul 7 2009, 08:39 AM) <{POST_SNAPBACK}>
For getting your stuff back, you can select a different profile date to load when you're connecting. Mudlet saves 'snapshots', so in reality you should never "lose it all". But of course would be great to know a reproducible method for the crash smile.gif


THANK YOU! I was able to retrieve all of my aliases / triggers from the "void." Not certain if profile histories are common on Zmud and Mush, but here it proved invaluable. Already I would rate this feature of Mudlet 11 on a 10 point scale.

At this point, I am almost ready to depart from Nexus entirely and solely rely on Mudlet. I'd like to encourage others to do so... especially those Mac users who don't want to go the way of Wine / Mush. It would be nice to start a Mudlet community here. From Vadi & co.'s response to my questions, I have a real good feeling...
Janalon2009-07-08 02:39:25
Anyway, here are the Nexus lines...

CODE
stance head
ka deflect left
#wait 7000
insomnia
stealth bracing
#wait 7000
grip
#wait 7000
shadowdance garb
#wait 7000
stealth agility
#wait 7000
stealth whisper
#wait 7000
invoke red
#wait 7000
sneak
#wait 7000
parry all
#wait 9000
ka scorpiontail
introspection


Converted to Mudlet.

CODE
Send ("stance head")
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.7, ])
TempTimer (0.9, ])
Send ("introspection")


So, I am getting this to fire correctly. The alias is added, activated, saved, and I also saved the profile. Also double checked my pattern of ^ninja$ to initiate the script. I can see the command is inputted, yet there is no output.
Unknown2009-07-08 10:53:17
You probably need to use Send vs send. You also probably need to use additive time values (0.7, 1.4, 2.1, etc) to get them to fire in a sequence.

You should really work on making a proper action queue that fires as you regain balance/equilibrium. Timers are not the best way to do things like this.
Vadi2009-07-08 11:52:49
Lua is case-sensitive, so to have the commands work, should be this:

QUOTE
send ("stance head")
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.7, ])
tempTimer (0.9, ])
send ("introspection")


Also, remember what I said about timers being absolute from when you call them, not relative like waits. You'll see that it'll try to do all those commands at once. So something like:

QUOTE
send ("stance head")
tempTimer (0.7, ])
tempTimer (1.4, ])
tempTimer (2.1, ])
tempTimer (2.8, ])


Although of course a proper queue with a trigger that goes when you get balance back is better wink.gif