Help with Begging script

by Kaalak

Back to Mechanic's Corner.

Kaalak2007-02-26 09:58:54
So I found this zMud Begging script somewhere on these forums and tested it out. Long story short I get an "influence beg" infinite loop.
Assistance would be appreciated.

Script
------
#CLASS {Influencing}
#VAR {influence} {}
#VAR {target} {}
#VAR {lastinfluence} {}
#ALIAS {influenceon} {influence=1;#ECHO ~}
#ALIAS {influenceoff} {influence=0;#ECHO ~}
#ALIAS {tar} {target=%1;#ECHOP ~}
#TRIGGER {You thrust your hand out to (*) and beg shamlessly.} {lastinfluence=beg}
#TRIGGER {Explaining your abject poverty, you humbly request for a little help from} {lastinfluence=supplication}
#ALIAS {si} {#IF {@influence=1} {#IF {@lastinfluence=beg} {influence @tar with supplication} {influence @tar with begging;#TEMP {You have recovered equilibrium.} {si}}}}
#CLASS 0
-----

Details
--------
Typed 'Influenceon'; 'tar brother'; Then influenced the brother with Wheedling, resulting the the "influence beg" infinite loop displayed on zMud.
Amarok2007-02-26 10:17:10
I may be wrong, but this script does not seem to cater from wheedling, only begging and supplication, so basically the @lastinfluence is null.
thereby the IF statement {#IF {@lastinfluence=beg} {influence @tar with supplication} {influence @tar with begging;} is always reaching the false statement and always trying to Beg. Try this same script starting with either begging or supplication?
Unknown2007-02-26 10:44:28
Well, for one thing there is a ; in that script, which for Zmud wreaks all sorts of heck, it's usually the little things.
CODE
#CLASS {Influencing}
#VAR {influence} {}
#VAR {target} {}
#VAR {lastinfluence} {}
#ALIAS {influenceon} {influence=1;#ECHO ~}
#ALIAS {influenceoff} {influence=0;#ECHO ~}
#ALIAS {tar} {target=%1;#ECHOP ~}
#TRIGGER {You thrust your hand out to (*) and beg shamlessly.} {lastinfluence=beg}
#TRIGGER {Explaining your abject poverty, you humbly request for a little help from} {lastinfluence=supplication}
#ALIAS {si} {#IF {@influence=1} {#IF {@lastinfluence=beg} {influence @tar with supplication} {influence @tar with begging}}}
#TEMP {You have recovered equilibrium.} {si}
#CLASS 0
Try that, and tell me if it works. If not I might have edited out some {{'s or }}'s that I shouldn't have, I think I caught them all though.

Also, Amarok is right, if you want to use wheeding you'll need to add {influence @tar with wheedling} in there, otherwise you'll only be able to use begging and suplication.

To tell you the truth, I don't know why a temporary trigger is being used in this script. dunno.gif Fixing those lines like that should at least solve the looping problem though.
Unknown2007-02-26 12:20:36
The #TEMP belongs inside the alias. It creates a temporary trigger (which I actually wouldn't recommend, but that's another discussion) to continue the influencing when you regain equilibrium. The trigger is gone after it fires once, so you need to create it each time you influence.

Amarok is right, though. You need a trigger and a check for wheedling if that's what you're using to influence the denizens.