Zist basic mage bot: Difference between revisions

From RoDpedia
Jump to navigation Jump to search
Blithe (talk | contribs)
Created page with "Originally written by '''Zistrosk''' === Zist basic mage bot === <pre> #CLASS {System|Automapper} #CLASS {System} {enable} #CLASS {System|Keypad} {enable} #CLASS {Autolog} {..."
(No difference)

Revision as of 04:01, 6 July 2023

Originally written by Zistrosk

Zist basic mage bot


#CLASS {System|Automapper}
#CLASS {System} {enable}
#CLASS {System|Keypad} {enable}
#CLASS {Autolog} {enable}
#CLASS {System|AutomapperAll} {enable}
#CLASS {System|Directions} {enable}
#CLASS {System|DirectionsDiag} {enable}
#CLASS {System|KeypadDiag} {enable}
#CLASS {logon}
#CLASS {password}
#CLASS {penter}
#CLASS {brewon}
#CLASS {ticktimer}
#CLASS {prompt}
#CLASS {promptset}
#CLASS {overweight}
#CLASS {handsfull}
#CLASS {bio}
#CLASS {tranceup}
#CLASS {autoreconnect}
#CLASS {you}
#CLASS {needfire}
#CLASS {armorstart}
#CLASS {ticktimerarmorspam}
#CLASS {particular}
#CLASS {portalanyone}
#CLASS {deadlycheck}
#CLASS {Auctiontrigs}
#CLASS 0
#ALIAS brewit {#if (@brewscribe = 1) {hold empty;brew @pot};#if (@brewscribe = 2) {hold blank;scribe @pot};save;#t+ brewon}
#ALIAS ticktimer1 {#alias ticktimer (save;#if (@mana < @manafull) {trance} );#ts 30} "ticktimer"
#ALIAS tranceup {ticktimer1;#if (@mana < @manafull) {#var manadiff @manafull;#math manadiff @manafull-@mana;#math manadiff @manadiff/50;title is trancing be patient;emote is trancing @manadiff times...;#ts 600;#loop 1,@manadiff (trance;save);emote is done trancing;title is ready to cast spells}}
#ALIAS promptset {prompt ~&c~{~&W~%h~&R~/~&g~%H~&Wh~&c~|~&W~%m~&R~/~&g~%M~&Wmp~&c~|~&W~%v~&R~/~&g~%V~&Wmv~&c~|~&p~%g~&Wgp~&c~}~&w} "promptset"
#ALIAS bio1 {bio;~/c;#wait 1000;yourcharname the Magical Spellcaster Bot; ------------------------------------------------------------------------------;Tell me:         (to get spells, tell me the following keyword(s)); armor                                 report (and I'll report!); bag (lvl 50 ext.portal)               refresh; elven (for elven beauty)              sagacity; float                                 scry; fly                                   shield; heat                                  slink; invis                                 spring (for something to drink); kindred (for kindred strength)        trollish (for trollish vigor); light (to get a ball of light)        val (for valiance); portal (cast portal to you)           portal x (cast portal to x); level me (Kindred Str/Trollish Vigor/Elven Beauty/Slink/Sagacity/Dragon Wit); ------------------------------------------------------------------------------;#wait 4000; To use autobrew/autoscribe:; Give me an empty flask or blank scroll; tell me brew spellname or scribe spellname; I will attempt to brew/scribe your request and then hand it back to you.; Tell me cancel to stop brewing/scribing.; Useful Brews : Antimagic Shell, Blazeward, Demonskin, Dragonskin,; Eldritch Sphere, Ethereal Shield, Inner Warmth, Shadowform, True Sight,; Valiance; ------------------------------------------------------------------------------;.;/s;whois yourcharname} "bio"
#ALIAS ticktimer {save;#if (@mana < @manafull) {trance}}
#ALIAS oldbio {bio;~/c;#wait 1000; 1> Any spells inside of [] you see in my bio can be cast upon you by; 2> sending me a TELL. example "tell yourcharname level me"; 3>  ; 4> [level me] to get all leveling spells or get them cast one at a time; 5> [elven] raises cha +3, [sagacity] raises wis +3, [slink] raises dex +3,; 6> [troll] raises con +3, [kindr] raises str +3, [dragon] raises int +3; 7> [spring] creates a spring    [light] get a ball of light; 8> [refresh] restores movement   [val]   valiance; 9> [heat] inner warmth        [bag]   get a lv 50 extradimensional bag;10> [fireshield] [float]      [fly]        [scry];11> [iceshield] [shield]     [armor]      [invis];12>  ;13> I can also brew potions, simply GIVE me an empty flask (you can buy;14> them at Xygian's shop in dh) and tell me which spell you want brewed.;15> For example "tell yourcharname brew antimagic shell". Some good spells to brew;16> are antimagic shell, dragonskin, demonskin, blazeward, shadowform,;17> eldritch sphere, ethereal shield, and true sight. Look at the help;18> files for more info on these and other mage spells. If spell cannot be;19> brewed, flask will be returned. Also by telling me Return, I will;20> return your flask to you.;21> ;22> For a portal tell yourcharname portal . Ie. tell yourcharname portal panda;23>  ;24> yourcharname is run by me, any problems/suggestions send mudmail.} "bio"
#ALIAS ticktimerarmorspam {#alias ticktimer (#10 cast 'armor' @armorspam;trance );#ts 50} "ticktimerarmorspam"
#ALIAS castr {cast 'astral walk'}
#ALIAS cfar {cast 'farsight' '%1'}
#ALIAS brewsomething {tell @person What would you like me to brew? tell me brew ;#var brewscribe 1;save;#noop brewscribe = 1 if brew, 2 if scribe}
#ALIAS deadlycheck {#t+ deadlycheck;whois @person0}
#ALIAS scribesomething {tell @person What would you like me to scribe? tell me scribe ;#var brewscribe 2;save;#noop brewscribe = 1 if brew, 2 if scribe}
#ALIAS returnall {hold sceptre;drop 10 flask;drop 10 blank;drop 10 potion;drop 10 scroll;save}
#VAR manadiff {20}
#VAR health {1003}
#VAR healthfull {1003}
#VAR mana {1382}
#VAR manafull {1382}
#VAR person {nobody}
#VAR temp {10133}
#VAR pot {demonskin}
#VAR brewscribe {1}
#VAR now {24Nov01|11:52:05}
#VAR temp2 {8}
#VAR armorspam {Kathenna}
#VAR portalteller {Osirus}
#VAR portaltarget {charmer} {charmer}
#VAR portaltry {1}
#VAR portaltarget {in} {in} "particular"
#VAR portaltpos {21}
#VAR portalt2 {osirus'}
#VAR portalpos {25}
#VAR person0 {Tiesto}
#VAR action {brewsomething}
#VAR person1 {Tiesto}
#VAR linebefore1 { He is a non-deadly player, and belongs to the Guild of Druids.}
#VAR linebefore2 { He is a male level 50 Human Druid, 773 years of age.}
#VAR resptime {10161}
#VAR hour {2}
#VAR meridian {pm}
#VAR auctime {1}
#VAR auctionit {dragonscale}
#TRIGGER {You disappear into the void.} {save;smile}
#TRIGGER {^By what name are you known} {yourcharname} "logon" {nocr|prompt}
#TRIGGER {^Name:} {yourcharname} "logon" {nocr|prompt}
#TRIGGER {^Password:} {yourpassword;save;time;promptset;ticktimer1;title is ready to cast spells;#name yourcharname;#t- brewon} "password" {nocr|prompt}
#TRIGGER {Press [ENTER] } {save;time;stand} "penter" {prompt}
#TRIGGER {(%w) whispers to you '} {whisper %1 Try using "TELL" to get spells from me}
#TRIGGER {(%w) tells you 'armor'} {cast 'armor' %1;save}
#TRIGGER {(%w) tells you 'elven} {cast 'elven' %1;save}
#TRIGGER {(%w) tells you 'float'} {cast 'float' %1;save}
#TRIGGER {(%w) tells you 'fly'} {cast 'fly' %1;save}
#TRIGGER {(%w) tells you 'heat'} {cast 'inner warmth' %1;save}
#TRIGGER {(%w) tells you 'kindr} {cast 'kindred strength' %1;save}
#TRIGGER {(%w) tells you 'light'} {cast 'continual light';give ball %1;drop ball;sac ball;save}
#TRIGGER {(%w) tells you 'bag'} {cast 'extradimensional portal';give ext %1;drop ext;save}
#TRIGGER {(%w) tells you 'portal'} {#var portalteller %1;#var portaltarget %1;#var portaltry 1;tell @portalteller Trying to open a portal from me to you, just a sec...;cast 'portal' @portaltarget;save}
#TRIGGER {(%w) tells you 'refresh'} {cast 'refresh' %1;save}
#TRIGGER {(%w) tells you 'report'} {report;save}
#TRIGGER {(%w) tells you 'sagacity'} {cast 'sagacity' %1;save}
#TRIGGER {{(%w)} {tells} "you" {nocr|notrig}
#TRIGGER {(%w) tells you 'scry'} {cast 'scry' %1;save}
#TRIGGER {(%w) tells you 'shield'} {cast 'shield' %1;save}
#TRIGGER {(%w) tells you 'slink'} {cast 'slink' %1;save}
#TRIGGER {(%w) tells you 'spring'} {cast 'create spring' %1;save}
#TRIGGER {(%w) tells you 'troll} {#2 cast 'trollish vigor' %1;save}
#TRIGGER {(%w) tells you 'val} {cast 'valiance' %1;save}
#TRIGGER {(%w) tells you 'level me} {cast 'kindred strength' %1;cast 'trollish vigor' %1;cast 'elven beauty' %1;cast 'slink' %1;cast 'sagacity' %1;cast 'dragon wit' %1;save}
#TRIGGER {(%w) gives you an empty flask.} {#var person0 %1;#var person {"nobody"};#var action {"brewsomething"};#t+ deadlycheck;deadlycheck}
#TRIGGER {(%w) tells you 'brew (%w)'} {#if (@person = %1) {#var pot %2;brewit}}
#TRIGGER {(%w) tells you 'brew (%w) (%w)'} {#if (@person = %1) {#var temp %concat(%2," ");#var pot %concat(@temp,%3);brewit}}
#TRIGGER {You brew up a} {remove empty;remove blank;wear sceptre;give flask @person;give blank @person;#2 drop blank;#2 drop empty;drop potion;drop scroll;save;#var person {"nobody"};#t- brewon}
#TRIGGER {You failed} {brewit;save} "brewon"
#TRIGGER {A tickle in your nose} {brewit;save} "brewon"
#TRIGGER {You lost your concentration} {brewit;save} "brewon"
#TRIGGER {I need a fire to brew} {cast 'create fire';save} "needfire"
#TRIGGER {There must be a fire in the room to brew a potion.} {c 'create fire';brewit} "brewon"
#TRIGGER {You cannot brew that spell} {tell @person Sorry that spell cannot be brewed.;save;remove empty;remove blank;wear sceptre;give flask @person;give blank @person;#2 drop blank;#2 drop empty;drop potion;drop scroll;#t- brewon}
#TRIGGER {You don't have enough mana.} {emote is out of Mana. Trancing...;tranceup} "tranceup"
#TRIGGER {^yourcharname is out of Mana.  Trancing...} {tranceup}
#TRIGGER {You have not learned that spell} {tell @person Sorry that spell is not a mage spell or was spelt wrong.;save;remove empty;remove blank;wear sceptre;give flask @person;give blank @person;#2 drop blank;#2 drop empty;drop potion;drop scroll;#t- brewon}
#TRIGGER {^~{(%d)/(%d)h|(%d)/(%d)mp|(%d)/(%d)mv|(%d)gp} {#var health %1;#var healthfull %2;#var mana %3;#var manafull %4;#var resptime %ctime} "prompt" {prompt}
#TRIGGER {(%w) can't carry that much weight.} {#var person %1;tell %1 You can't carry that much weight?;drop empty} "overweight"
#TRIGGER {(%w) has (%w) hands full.} {#var person %1;tell %1 Your hands are full;drop empty} "handsfull"
#TRIGGER {(%w) tells you 'return'} {returnall}
#TRIGGER {(%w) now follows you.} {group all;c minor;c minor;c bless %1;cast 'armor' %1;group disband;save}
#TRIGGER {Something distracts you} {brewit;save} "brewon"
#TRIGGER {(%w) tells you 'cancel'} {#t- brewon;remove empty;give empty @person;remove blank;give blank @person;hold sceptre;save}
#TRIGGER {(%w) gives you a blank scroll} {#var person0 %1;#var person {"nobody"};#var action {"scribesomething"};#t+ deadlycheck;deadlycheck}
#TRIGGER {(%w) tells you 'scribe (%w)'} {#if (@person = %1) {#var pot %2;brewit}}
#TRIGGER {(%w) tells you 'scribe (%w) (%w)'} {#if (@person = %1) {#var temp %concat(%2," ");#var pot %concat(@temp,%3);brewit}}
#TRIGGER {You magically scribe} {remove empty;remove blank;wear sceptre;give potion @person;give scroll @person;#2 drop blank;#2 drop empty;drop potion;drop scroll;save;#var person {"nobody"};#t- brewon}
#TRIGGER {yourcharname is done trancing} {ticktimer1}
#TRIGGER {They aren't here} {drop blank;drop empty;drop potion;drop scroll;ticktimer1;#show SWITCHING TO TICKTIMER1} "tranceup"
#TRIGGER {A twitch in your eye} {brewit;save} "brewon"
#TRIGGER {You get a mental block} {brewit;save} "brewon"
#TRIGGER {(%w) tells you 'portal *'} {#var portalteller %1;#var portaltarget %trigger;#var portalpos %pos("portal",@portaltarget);#math portalpos @portalpos+6;#var portalt2 %remove(%left(@portaltarget,@portalpos),@portaltarget);#var portaltarget %remove("'",@portalt2);#var portaltry 1;tell @portalteller Trying to open a portal from me to @portaltarget, just a sec...;cast 'portal' @portaltarget;save} "portalanyone"
#TRIGGER {(%w) says 'armorspam'} {say Armorspam Activated!!! Please leave this room when you want armorspam to end!!!;#var armorspam %1;ticktimerarmorspam;#wait 5000;ticktimer;save} "armorstart"
#TRIGGER {(%w) has accumulated} {#t- deadlycheck;#var person1 %1;#var linebefore1 %line2;#var linebefore2 %line3;#if (%pos("seat",@linebefore1) > 0) {#var linebefore1 @linebefore2};#if (@person0 = @person1) {#if (%pos("non-deadly",@linebefore1) > 0) {#show NON DEADLY;#var person @person0;@action} {#var brewscribe 0;shake %1;say You are deadly %1 and I cannot help you.;returnit}}} "deadlycheck"
#ALARM "Alarm0" *02:00 {#var temp %ctime;#alarm +5 {#var now %time( ddmmmyy|hh:mm:ss);#var temp2 0;#math temp2 %ctime-@temp;#IF (@temp2 = 0) {#CON;#show RECONNECT AT @now} {#var temp2 0;#math temp2 %ctime-@resptime;#show TIME SINCE LAST MUD RESPONSE - @temp2 seconds;#IF (@temp2 > 120) {#CON;#show RECONNECT DUE TO LAG AT @now} {#show reconnection not necessary at @now;#show connected for %ctime seconds}}}} "autoreconnect"
#TRIGGER {Saved...} {#var resptime %ctime} "autoreconnect"
#TRIGGER {^Auction: (%1) sold} {auc @auctionit;get @auctionit chest;auc @auctionit} "Auctiontrigs"
#TRIGGER {^It is (%d) o'clock (%w)} {#var hour %1;#var meridian %2;#var auctime 0;#if (@hour >= 9) {#if (@hour <= 12) {#if (@meridian = am) {auc;#var auctime 1}}};#if (@hour >= 1) {#if (@hour <= 6) {#if (@meridian = pm) {auc;#var auctime 1}}};#if (@auctime = 0) {put all.@auctionit chest}} "Auctiontrigs"
#ALARM "Alarm455" *05:00 {time} "Auctiontrigs"
#TRIGGER {There is nothing being auctioned right now.  What would you like to auction?} {auc @auctionit;get @auctionit chest;auc @auctionit} "Auctiontrigs"
#TRIGGER {removed from auction.} {#var auctionit {"dragonscale"};auc @auctionit;get @auctionit chest;auc @auctionit} "Auctiontrigs"