MUSHclient auto-sipper/system help

by Unknown

Back to Mechanic's Corner.

Unknown2008-11-17 21:53:28
I've been playing Lusternia for a while, and was using the site's Java client.

I recently moved to MUSHclient, and got myself a free system from this very forum. I've been working on learning the scripting and such, having absolutely no experience or knowledge of how to, I've been sorta hobbling along.

My problem is, my auto-sipper had been working for a while, but has suddenly stopped working. Here's the thingy itself:

CODE
Trigger: ^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p (.*?)\\-
  
   Send: if (%2 <= @maxmana*.65) then
   send "drink mana"
   enabletrigger "HealReflex", "0"
   enabletimer "HealReset", "1"
   resettimer "HealReset"
   elseif (%1 <= @maxhealth*.65) then
   send "drink health"
   enabletrigger "HealReflex", "0"
   enabletimer "HealReset", "1"
   resettimer "HealReset"
   elseif (%3 <= @maxego*.65) then
   send "drink bromide"
   enabletrigger "HealReflex", "0"
   enabletimer "HealReset", "1"
   resettimer "HealReset"
   else
   call deepwounds (a, b, c)
   end if
  
   Enabled
   Keep evaluating
   Regular expression
   Repeat on same line
   Expand variables
  
   Send to Script
   Lable: HealReflex
   Group: *Script

I Score/Oldscore it, and it picks up my maxhealth/mana/ego, but refuses to fire.

Ask me questions if you need, I'll do my best to answer. I have my prompt configured to stats.

Like I said, I don't know much about scripting and whatnot, I just would like to stop dying before I have a chance to think..
Unknown2008-11-17 21:56:21
Where'd you get that? The scripting looks like a hybrid of a couple languages...

For future reference, you can use the Copy button on the Triggers/Aliases dialog to grab the XML and just paste that here. Conversely, if you see MUSHclient XML code posted on the forum, you can copy that and paste it into those dialogs to create new settings.
Unknown2008-11-17 22:01:10
Like I said, I got it from this forum, one of the stickied free things at the top of Mech's Corner. I have no idea what it is, how it works, I was just wondering if someone could help me fix it. Also, sorry about the odd posting style.

I told you I have no knowledge about any of this, didn't I? T.T D'you want me to try to copy the xml stuff?


custom_colour="3"
enabled="y"
expand_variables="y"
group="*Script"
keep_evaluating="y"
match="^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p (.*?)\\-"
name="HealReflex"
regexp="y"
repeat="y"
send_to="12"
sequence="100"
>
if (%2 <= @maxmana*.65) then
send "drink mana"
enabletrigger "HealReflex", "0"
enabletimer "HealReset", "1"
resettimer "HealReset"
elseif (%1 <= @maxhealth*.65) then
send "drink health"
enabletrigger "HealReflex", "0"
enabletimer "HealReset", "1"
resettimer "HealReset"
elseif (%3 <= @maxego*.65) then
send "drink bromide"
enabletrigger "HealReflex", "0"
enabletimer "HealReset", "1"
resettimer "HealReset"
else
call deepwounds (a, b, c)
end if







That's what it did >.>


Edit: I think the system is that Ethelon system or however it's spelled.
Unknown2008-11-17 22:07:52
Looks like Ethelon's old system, which is months and months outdated now. In theory, the autosipper might still work, but you should be looking for something better, anyway. (Being a complete novice to MUSHclient, I can't in good conscience recommend my own code to you, though it is freely available.)

In order to diagnose the problem, you'll need to do some digging through the code. Figure out of the HealReflex trigger got turned off and not re-enabled. Does your prompt in the game look like it'll match this pattern (health, mana, ego, power, flags)? Did you change anything that might upset the delicate balance? I'm afraid it's probably not as simple as one might think, so you can't just get a solution by saying "it stopped working, and here's the alias." Sorry...
Unknown2008-11-17 22:25:08
The trigger looks like it matches the prompt, though I don't understand the trigger. I'll check the HealReflex trigger. Also, I figured out that I had the prompt set to full, and it ignored it, though now I have it back to just stats, and it looks like it's picking up the prompt, but still not firing.

I know the code is old, but I can't find/build/afford another.

If I understood how (\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p translated into %1, %2, and %3, I might have had better luck. I'm on the client as I type, so I'll look up the HealReflex trigger, seeing if it's off or on.

*After checking all the Reflexes*
According to what I see, the HealReflex is enabled. The prompt is responding to the trigger, but the healing part of the trigger doesn't fire.

*goes into a test battle, and see's something*
I think I've had an epiphany. You said check for anything that changes the delicate balance of the trigger, and look to see if the prompt matches the trigger.

Lashing out with its small feet, a cheuped drives a well placed kick into your
mid-section.
936h, 1116m, 1065e, 10p, 1mo ex-

I'm a monk! I recieve, in my prompt, a status of my momentum. I need to find a way to make my trigger ignore that. I watched, staying hurt, as my momentum dropped. I set my auto heal higher, and my sipper fired at no momentum, when the *mo left.

Thanks for your help, now I need to figure out how to compensate for the 1-5mo that appears.
Unknown2008-11-17 22:47:57
I tried setting it up as follows: ^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p\\, (.*?)mo (.*?)\\-

but now it won't activate if I have no momentum.

Does anyone have a suggestion?

As ^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p (.*?)\\- it'll fire without momentum

As ^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p\\, (.*?)mo (.*?)\\- it'll only fire with momentum

Is there a way to fix this?
Unknown2008-11-17 22:52:35
Try changing your pattern to this:

CODE
^(\\d+)h\\, (\\d+)m\\, (\\d+)e\\, (\\d+)p(?:\\, \\d+mo)? (.*?)\\-
Unknown2008-11-17 23:00:26
That did it, it's working as it should. Thank you for all your help. I think I'm starting to understand this just a little bit better. ^.^
Desitrus2008-11-17 23:03:35
Explosive white box signature is explosive.