Tarn GURU
Joined: 10 Oct 2000 Posts: 873 Location: USA
|
Posted: Wed Jun 23, 2004 8:39 am
Achaea - Asterisks |
For a long time now, Achaea has sometimes mangled an affliction message with asterisks to prevent triggering.
Fictitious example:
"Real" trigger text - "Roses are red, violets are blue"
Mud output - "R*ses are red, vi*lets *re blue"
That was easy enough to trigger by several means, including some reverse matching methods and a sequence of OR patterns.
Recently, they have added the possibility that an asterisk represents more than one character.
"Roses are r*d, v*lets are b*e"
This makes many of the traditional solutions more complicated and/or less efficient and accurate. Several people have requested a help with the problem.
The exact solution depends on how you trigger afflictions, but the following IF may give people a head start (I don't think it has appeared recently in the forums).
#IF ("Never look a gift horse in the mouth" =~ "Never lo*k a gift horse in the m*th") {#show Found One} {#show False Alarm}
In practice, the real string (the first one) would be hardcoded and the second would be matched by a variable, probably any line that has an asterisk in it and meets certain other criteria (so that "*" and other trivial variations don't match, and to include some of the usual anti-illusion checks).
#IF ("Never look a gift horse in the mouth" =~ @teststring) {#show Found One} {#show False Alarm}
To make the system more strict, you could do search and replace on what the mud sends you to apply more specific wildcards than "*"
Some quick offline checks done with 7.05
If they want to make triggering hard, then they shouldn't give us the text in the exact form we need to do the check with [}:)]
-Tarn |
|