Switching between lesserform and dragonform with Mudlet

AnnwylAnnwyl Vancouver, B.C.
There ought to be a simple, one-step way to switch to dragonform and back again, but I don't know what it is. I don't know how anyone else changes forms. Perhaps everyone has to do a number of manual steps?

I'm not a coder, so I imagined doing something very simple.

I separated the triggers and aliases I use into those for Runewarden and those for Dragonform, putting them into separate folders. I thought that I could set up triggers to tell Mudlet to enable or ignore the relevant folders when I change forms, but that doesn't work.

To change to lesserform, I set up a trigger, using "Your race is now that of Human." as a beginning of line substring and then, in the box below: 

disableTrigger("DragonTriggers")
disableAlias("DragonAliases")
enableTrigger("RunewardenTriggers")
enableAlias("RunewardenAliases")

I also put a highlight on the trigger line, and Mudlet does do that, so I know it's at least reading the trigger.

Any ideas?

Thanks.


Comments

  • I've got a gmcp trigger for this. It checks your current race and make chAnges accordingly . (For me it changes my gui picture so I remember what form I'm in). I'll post it once I get back to my computer.
  • TitonusTitonus Youngstown, Ohio
    See, what I did here, since I like all of my alias how they are, I changed  them to be;

    if dragonForm == 1 then
           send("gut "..target)
    else
           send("doublewhirl "..target)
    end

    and things like that.  Same thing for my battlerage stuff.

  • if gmcp.Char.Status.race == "Dragon" then
       send("gut "..target,false)
    else
       send("doublewhirl "..target,false)
    end

    Same thing, without needing extra variables.

  • AnnwylAnnwyl Vancouver, B.C.
    Okay... so, this means having two options for every trigger rather than switching directories? That seems more complicated than what I'd imagined. However, I have only a limited understanding of GMCP and haven't found a complete guide to it anywhere.
  • AnnwylAnnwyl Vancouver, B.C.
    I've just found the Mudlet manual portion about GMCP. I'll work on exegeting it....
  • In mudlet you can use display(gmcp) and add things like display(gmcp.Char) to see specific things.

  • AustereAustere Tennessee
    edited August 2015
    For me personally,  I trigger certain things to check gmcp whether I am dragon or lesser, and enable trigger groups and class groups based on the result.  Login, lesser, dform, gem of transmutation, the "your already a dragon"/"your already a grook", ect.  I recommend one function that checks and multiple triggers to call that function, with an echo when you change something. 

    I do recommend just using the "kill" function that is serverside for hunting, so you only need one of those aliases. I debug three or four classes, so without these checks, I would have to run a separate system for every class. 

    Edit: adding "if dragonform then" checks into every single alias will increase the time it takes to send an alias by a little bit.  Honestly, I doubt many people would notice it, though.  
  • AnnwylAnnwyl Vancouver, B.C.
    edited August 2015
    Am I correct in thinking that, if I have, say, four attacks as a dragon and six as a Runewarden, each of those needs to check which race I am? And the Battlerage attacks also have to determine my race?

    I can add all of that code, I suppose, but it seems to make everything far more complicated than locking off some options, which is what I'd initially thought I should do. Now, that said, I haven't found a way to be able to lock a folder, so my idea may not be doable as code. But I can, and do, do this manually.
  • Just did a quick test, and the disableAlias/disableTrigger functions should do what you need. Not entirely sure why yours isn't working, but I'd check that the spelling, spacing, case, etc. matches between the actual names of your folders and what you have in your code; i.e. "Runewarden triggers" is not the same as "Runewarden Triggers" or "RunewardenTriggers" or "Runewardentriggers".
  • AnnwylAnnwyl Vancouver, B.C.
    @Antonius I'm glad that the disable trigger functions work for you. I've done them many time, re-typed them, triple-checked them, and nothing works for me. There are a few things that Mudlet refuses to do for me but will do for others, so maybe something in my computer is the problem. I'd uninstall and reinstall Mudlet, but the last time I did that, I ended up manually re-writing all the triggers and aliases because I couldn't load any of the backups. My impression has been that the backups are unreliable a lot of the time, anyway.

    Okay, it's good to know that the idea of switching folders on and off is workable even if I can't use it. I'll stay with doing it manually.

    Thanks for your help, everyone.
  • KlendathuKlendathu Eye of the Storm
    For battlerage, there's a free battlerage tracker available here, it is for all classes and colours of dragon, with built in checks so it automatically selects the appropriate abilities. (They're also aliased to rage1 - rage6 for convenienced).

    Tharos, the Announcer of Delos shouts, "It's near the end of the egghunt and I still haven't figured out how to pronounce Clean-dat-hoo."
  • Enabling/disabling groups is by far the easiest. I trigger it on a lot of messages and have a manual alias to switch just in case something fails.

    Some of my stuff tests my race, in places where it's convenient. Examples being a lot of my aliases/macros just run a function in a huge script.


    Current scripts: GoldTracker 1.2, mData 1.1
    Site: https://github.com/trevize-achaea/scripts/releases
    Thread: http://forums.achaea.com/discussion/4064/trevizes-scripts
    Latest update: 9/26/2015 better character name handling in GoldTracker, separation of script and settings, addition of gold report and gold distribute aliases.
  • TitonusTitonus Youngstown, Ohio
    disableTrigger("Runewarden Triggers")

    doesn't work?

Sign In or Register to comment.