Skip to content

Mudlet Scripting

1356718

Comments

  • Yeah, on one of my profiles, around antioch and the coliseum go blank(and yes I did update the xml)...but so far after making a new profile, it hasn't done it around antioch...haven't been in the coliseum yet though.

  • Same here. Coliseum, Ederith, Inner Shaahri, I'm thinking any place he's made significant changes to recently is going to be like that. Not sure why, but hopefully a solution will pop up soon, or it'll just magically start working or something.
    image
  • edited July 2013
    The Imperian.xml has had significant changes in its format as well. Unlikely that it could break any decent parser, just mentioning it. Has anyone reported a bug?

    The part of it working on a new profile but no in an older one sounds interesting as well.
  • So, a few questions. Trying to match Tree tattoo without a 3P message showing after it. I thought about matching Tree message then prompt, but there are regular cases where something else pops up before the prompt. Is there a more graceful way to do it than a multiline/AND trigger like the following?
    ^(\w+) touches a tree tattoo.$
    ^(?!\w+ looks relieved as \w+ skin loses its reddish hue.)(?!\w+'s colour returns to \w+ face.)(?!\w+'s skin color returns to normal and \w+ sweating subsides.)(?!\w+ appears haunted as the tattoo fails to cure \w+ body.).*$

    Next question: Is there any way to modify the max scrollback size? It's miserably small at the moment.

    Last question: Is there any way to close the scrollback from a key command? I got used to the way scrollback works in Cmud(page-up and page-down work with follow screen at once, instead of scrolling x lines, scrollback goes to bottom of output and requires you page-downing again before it closes scrollback, that way you could lock something in scrollback without looking or otherwise filling a full screen with text and then scrolling up, alt+Z closed scrollback without page-downing all the way back down), and I really hate Mudlet's default scrollback functionality. Anything that I can do to make it work more like Cmud does would make me very happy.
    image
  • IniarIniar Australia
    edited July 2013
    1. Not sure.

    2. http://www.achaea.com/forum/mudlet-tip-set-yourself-a-huge-buffer : setConsoleBufferSize("main", 5000000, 1000)

    3. http://www.mudlet.org/asciidoc/manual.html : A click on the middle mouse button will close the split screen immediately as well as pressing control+return on the keyboard.
    wit beyond measure is a Sidhe's greatest treasure
  • Control+Return has never worked for me, not sure why. No middle mouse button since I play on a laptop. I'll be setting the buffer to stupid sizes promptly, thanks. Also, might look through the API for other console functions, might find a way to duct-tape my way to Cmud scrollback goodness, without the stupid ridiculous Cmud lag!
    image
  • Dicene said:
    Control+Return has never worked for me, not sure why. No middle mouse button since I play on a laptop. I'll be setting the buffer to stupid sizes promptly, thanks. Also, might look through the API for other console functions, might find a way to duct-tape my way to Cmud scrollback goodness, without the stupid ridiculous Cmud lag!
    Are you on OS X? I occasionally do that and I'm pretty sure it's Cmd-return there.
  • Nope, Windows 7.
    image
  • Dicene said:
    So, a few questions. Trying to match Tree tattoo without a 3P message showing after it. I thought about matching Tree message then prompt, but there are regular cases where something else pops up before the prompt. Is there a more graceful way to do it than a multiline/AND trigger like the following?
    ^(\w+) touches a tree tattoo.$
    ^(?!\w+ looks relieved as \w+ skin loses its reddish hue.)(?!\w+'s colour returns to \w+ face.)(?!\w+'s skin color returns to normal and \w+ sweating subsides.)(?!\w+ appears haunted as the tattoo fails to cure \w+ body.).*$

    Next question: Is there any way to modify the max scrollback size? It's miserably small at the moment.

    Last question: Is there any way to close the scrollback from a key command? I got used to the way scrollback works in Cmud(page-up and page-down work with follow screen at once, instead of scrolling x lines, scrollback goes to bottom of output and requires you page-downing again before it closes scrollback, that way you could lock something in scrollback without looking or otherwise filling a full screen with text and then scrolling up, alt+Z closed scrollback without page-downing all the way back down), and I really hate Mudlet's default scrollback functionality. Anything that I can do to make it work more like Cmud does would make me very happy.

    if you use a multi-line trigger for "you touch tree" and the prompt it will only fire, if the prompt is directly after the tree message. And if there is a 3P message in between you should be triggering off that instead of the tree message anyway...

    As far as the scrollback is concerned, if you have a mouse wheel you can click that down and it'll close the scrollback.

  • Laptop, so probably using a touchpad. That means no wheel at all.
  • edited July 2013
    Thing is, I'm trying to capture Tree's without 3p, but not have issues when other things pop up between tree and prompt(which happens). I'm watching for Tree/3P because I'm trying to log as much information as I can, including what each tree cures specifically. Got stuff in mind that requires that information. I guess ugly NOT regex is my best option.

    Oh, and yeah. Laptop = no mouse wheel.
    image
  • Capture tree and the next line. If the next line is in a table of cure messages, you cured something. If it isn't, ignore it.
    I am the righteous one... 
    the claims are stated - it's the world I've created 
  • well, for the laptop scrollback issue, I'd ask over the IRC or on their forums.

  • That sounds too easy. Hrm. I might just give it a try though.
    image
  • Whenever I enter into a Guildhall using Mudlet Mapper, the map just simply disappears from my screen. Is there a way I can map the Guildhall so that if I use the secret exit, the map won't disappear?
  • edited July 2013
    Iluv said:

    Whenever I enter into a Guildhall using Mudlet Mapper, the map just simply disappears from my screen. Is there a way I can map the Guildhall so that if I use the secret exit, the map won't disappear?

    The map.xml doesn't include guildhalls. If you map it manually, the mapper should find it using the gmcp information as soon as you enter. Check the aliases in the maper filler to figure out how to turn in and use automapping.
    I am the righteous one... 
    the claims are stated - it's the world I've created 
  • I did this before, but it gets cleared every time you download a new map since they added the guildhall s to mapped areas.
  • Found it here under mapping new areas.


    My wormhole list gets cleared every time I update the mapper too :(
  • I'm sure those special exits are stored somewhere sane. Find the table and export it before/as you're reloading
    I am the righteous one... 
    the claims are stated - it's the world I've created 
  • If someone else hasn't worked it out before I get off work, I'll write out something to save wormholes seperately and reload them after you update your map.
    image
  • FeuFeu England!
    One word will fix all these issues. (And some).

    It's called crowdsourcing. It would be great if somebody would be willing to work on this.
    HTML Logging site: http://www.logsty.net
    Systems & Coding Support: support@pharanyx.com
    Saracen Combat & Utility system: (All IRE games): saracen@pharanyx.com
  • Yeah, only took a summary glance, but it seems like the map stores the wormhole data in the data with each individual room, rather than somewhere seperate. This means I'd probably just iterate through the roomlist and copy any needed wormhole info into a table, save it, do the map update, then iterate through the saved wormhole list and add each one to the correct room individually. If I'm right on how they're stored and vnums don't get changed randomly, should be pretty easy.
    image
  • I might be off the mark, but after checking several months of imperian.xml downloads, I can almost assure that unless destroyed, a room will keep its designated id. During the recent map fixing done by @Jeremy, he just moved around existing rooms, changing exits or removing them altogether as needed for a better layout.
  • Room numbers never change.

  • I don't know where to post about this but I'm having some trouble with Mudlet Mapper's mconfig lockwormholes function. It just doesn't seem to work any more but it has in the past. Can't figure out what the problem is either.
  • Sorry for the double post but I sort of figured out the problem. It seems like if your map has some problems with rooms and their mudlet mapper area settings then you will need to add that room back to the proper area via room area <area>. Then the special exits in that room can be recognized to be locked.
  • edited September 2013

    Use this an alias to make buttons for every universe exit.


    send("fling universe at ground")



    cecho("\n<navajo_white> (")

    echoLink("NORTHERN CELIDON", [[send("touch ncelidon")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("WESTERN CELIDON", [[send("touch wcelidon")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("\n<navajo_white> (")

    echoLink("CAANAE", [[send("touch caane")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("HEARTLANDS", [[send("touch heartlands")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("GRAYTREM HILLS", [[send("touch graytrem")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("\n<navajo_white> (")

    echoLink("SHAARI DESERT", [[send("touch shaari")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("ANTIOCH", [[send("touch antioch")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("STAVENN", [[send("touch stavenn")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("\n<navajo_white> (")

    echoLink("KINSARMAR", [[send("touch kinsarmar")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("ITHAQUA", [[send("touch ithaqua")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("KHANDAVA", [[send("touch khandava")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("\n<navajo_white> (")

    echoLink("SEVEN LAKE BASIN", [[send("touch seven lake basin")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("REATE", [[send("touch reate")]], "CLICK ME!")

    cecho("<navajo_white>)")


    cecho("<navajo_white> (")

    echoLink("AREISH", [[send("touch areish")]], "CLICK ME!")

    cecho("<navajo_white>)")

  • MathiausMathiaus Pennsylvania
    edited October 2013
    So far, I've learned doing:

    for k,v in ipairs(toxList) do something end

    Will loop through the list in numerical order, checking both the key and value. I'm trying to go off an idea where I have the list marked as:

    "Aconite" = aff
    "Bromine" = posaff
    "Cyanide" = notaff

    Etc, where it checks if the var is afflicted, possibly afflicted, or not afflicted, and puts notaff at the top of the new table and posaff after those.

    Then, I'd simply envenom based om the list in numerical order using some thing like:

    Send("dsl "..target.." "..ev_toxin[1].." "..ev_toxin[2])

    Right now, Im struggling with figuring out how to make sure I set toxins from the new table.
    image
  • edited October 2013
    ipairs only returns items indexed by numbers. Your example above is indexed by strings, so ipairs will not return those entries. The pairs function returns all key/value pairs, but items in an associative array (an array indexed by non-integer indexes) are not guaranteed to keep their order:

    mylist = {a="123", b="234", c="345", d="456"}
    for k,v in pairs(mylist) do print(k.." "..v) end

    prints
    a 123
    d 456
    c 345
    b 234


    If you have a table indexed numerically, and want to take items from it, you can just index it numerically. newlist[1], newlist[2], etc
    I am the righteous one... 
    the claims are stated - it's the world I've created 
  • IniarIniar Australia
    There is a workaround that acts like php tables that keeps the order of non-integer indexes, but I don't pretend to understand it (nor do I use it)
    wit beyond measure is a Sidhe's greatest treasure
Sign In or Register to comment.