Basic Anti-Illusion

By Hathrael

Here I try to explain and show some protection against anti illusion, full-proof doesn't exist, never has, and never will. But it's good to protect yourself from totally getting messed up by serpents. There's many classes that can use illusions, but only the snakes can turn it into a lethal weapon. What my system does, is try to stop a relatively large part of the incoming illusions, but most importantly, it fixes the illusions that got in very fast. Nothing as annoying as getting launched into a loop of eating goldenseal, virtual venomlocks and spamming restoration. Illusions are only dangerous if used by snakes, and snakes are only one class, so I didn't tune my entire system to become protected against illusions, way too messy and too much effort. So here's what I made, relatively simple, but illusions aren't lethal anymore now. What it will do, is stop most snake illusions if you're in snakemode, and fix illusions getting through right away, against any classes. Basically two different parts.

First I'll explain how the below scripts work, then you see the commands to create the script, and last I'll say the minor changes necessary to some triggers you already have.

A button indicating "ilusions" will appear after creating, if you click it once, snakemode will be activated, click it again, and it will get deactivated, if not in snakemode, illusions getting in will get fixed, but the illusions themselve won't get stopped, if you're in snakemode, they will both get fixed and most will be stopped.

If you're in snakemode, only the messages getting preceded by a serpent attack will get accepted, and messages that snakes can't actually use, like aeon, will get ignored. So the attack messages will let the message through, of course snakes thought of that, and illusion the attack message too, but still that's only one message they can illusion at a time, furthermore, the bite message will only get accepted if sileris is down, and the dstab message only when rebounding is down. I don't use multiple line triggers, cause that would force you to double or triple many messages, I want to keep the amount of trigs to a minimum myself. The next part is fixing the illusions that got through, basically all it does is, when you eat a herb or apply a salve, see if doing that cures something, if not, all afflictions relating to that cure get set to 0, illusion fixed.

"PROMPT" {nocr|prompt}
 * 1) TRIGGER {%1h, %2m (*)-} {#if @snakemode=1 {suspicious=1};lastcure}


 * 1) CLASS {PROMPT|anti-illusion} {enable}
 * 2) CLASS 0

@lastcure=bellwort {bellwortoff};#if @lastcure=ginseng {ginsengoff};#if @lastcure=goldenseal {goldensealoff};#if @lastcure=lobelia {lobeliaoff};#if @lastcure=kelp {kelpoff};#if @lastcure=bloodroot {bloodrootoff};#if @lastcure=cohosh {cohoshoff};#if @lastcure=epibody {epibodyoff};#if @lastcure=epihead {epiheadoff};#if @lastcure=kola {kolaoff};#if @lastcure=mendarms {mendarmsoff};#if @lastcure=mendlegs {mendlegsoff};#if @lastcure=mend {mendoff};#if @lastcure=focus {focusoff}};lastcure=none;real=1} {darkshade=0;lethargy=0;scytherus=0;haemophilia=0;euphorbia=0;addiction= {clumsiness=0;sensitivity=0;healthleech=0;asthma=0;vernalius=0}
 * 1) CLASS {PROMPT|anti-illusion|illusion aliases} {enable}
 * 2) ALIAS lastcure {#if @real=0 {#if @lastcure=ash {ashoff};#if
 * 1) ALIAS ashoff {confusion=0}
 * 2) ALIAS lobeliaoff {recklessness=0;masochism=0}
 * 3) ALIAS bloodrootoff {paralysis=0;slickness=0}
 * 4) ALIAS bellwortoff {justice=0;peace=0;lovers=0;generosity=0}
 * 5) ALIAS ginsengoff
 * 1) ALIAS kolaoff {kola=1}
 * 2) ALIAS cohoshoff {insomnia=1}
 * 3) ALIAS goldensealoff {impatience=0;stupidity=0;epilepsy=0}
 * 4) ALIAS mendoff {burning=0}
 * 5) ALIAS epiheadoff {blindness=0;stuttering=0}
 * 6) ALIAS epibodyoff {anorexia=0}
 * 7) ALIAS mendlegsoff {rightleg=0;leftleg=0}
 * 8) ALIAS mendarmsoff {rightarm=0;leftarm=0}
 * 9) ALIAS kelpoff
 * 1) ALIAS focusoff {anorexia=0;stupidity=0;confusion=0;recklessness=0}
 * 2) CLASS 0

@rebounding=0 {#if @shield=0 {suspicious=0}}} (@sileris=0 or @sileris=1) {suspicious=0}} {suspicious=0};ts} {lastcure=mendarms;real=0} {lastcure=epibody;real=0} {lastcure=epihead;real=0} {lastcure=mendlegs;real=0} {lastcure=mend;real=0} {scytherus=1;suspicious=0;herbqueue}
 * 1) CLASS {PROMPT|anti-illusion|illusion triggers} {enable}
 * 2) TRIGGER {%w pricks you twice in rapid succession with %w dirk} {#if
 * 1) TRIGGER {sinks %w fangs into your body and you wince in pain.} {#if
 * 1) TRIGGER {strikes you, gouging a deep and bloody wound} {#if @shield=0
 * 1) TRIGGER {The attack rebounds back onto you!} {suspicious=0}
 * 2) TRIGGER {You take out some salve and quickly rub it on your arms.}
 * 1) TRIGGER {You take out some salve and quickly rub it on your body.}
 * 1) TRIGGER {You take out some salve and quickly rub it on your head.}
 * 1) TRIGGER {You take out some salve and quickly rub it on your legs.}
 * 1) TRIGGER {You take out some salve and quickly rub it on your skin.}
 * 1) TRIGGER {You swoon as you suffer a toxic relapse.}
 * 1) CLASS 0


 * 1) CLASS {PROMPT|anti-illusion|illusion vars} {enable}
 * 2) VAR lastcure {none} {none}
 * 3) VAR real {1} {1}
 * 4) VAR snakemode {0} {0}
 * 5) VAR suspicious {0} {0}
 * 6) CLASS 0

{suspicious=0;snakemode=0;vigilance} {} {1} {} {Size} {60} {25} {Pos} {53} {0} {2} {2} {} {} "BUTTONS" {} {} {snakemode}
 * 1) BUTTON 3 {illusions} {suspicious=1;snakemode=1;vigilance} {illusions}

Now all that's left to do, is adjusting your existant triggers:

All venom messages should get an "if" statement for the variable "suspicious". an example: the pattern = Hmmmm. Why must everything be so difficult to figure out?} the value =


 * 1) if @suspicious=0 {stupidity=1}

Next you add a variable "real=1" to the messages you see when you've cured something: an example: the pattern = You aren't such a complete idiot anymore. the value = stuidity=0;real=1