pabstblueribbon
03-25-2007, 12:03 PM
ok, i like zmud. So if there's anyone else out there thats got an autohunter working for zmud i'd like to have your thoughts on this script. At the moment, it will follow its path and kill the rats, gather the arrows, etc. But its really unelegant. I resorted to #TEMP triggers and enabling and disabling of class folders to bypass the mud eating any commands sent to fast. IE more than one line at a time. Main problem is the temp trigger.. not sure if there's a way i can pass a command into a queue and have it trigger on the prompt... but i digress..
And before you say, zmud sucks!! the reason i want this, is so that I can do things like this
#TRIGGER {%1 does blah..} {#MATH wait %random( 5, 10);#ALARM {+@wait} {#CASE %random {nod %1} {bow %1} {sayto 1% howdy there stranger!} {greet %1}};#di} "Old|afk"
Which upon the first brace would pick a random number between 5 and 10, wait for that number, then randomly respond. Pretty cool to use just for random shit if you go afk a bit.. can also make it so that you walk a bit randomly, with random pauses between rooms.
Anyways.. here it is... just ask and i'll explain whats going on if you cant figure it out. Oh and snagging the gsl codes straight from the game ROCKS! no more looking or typing EXP to see if yer minds fried, (also doesnt give away the fact that you're scripting, AND if a GM looks at your FE type its OTHER.. they dont know if yer runnin a script or not)
#CLASS {Old}
#TRIGGER {That'll be five silvers entrance fee} {give guard 5;#step}
#TRIGGER {~[&%*room~]$} {#COLOR %eval( %color( bright)+%color( white));@monster = 0;@people = ""}
#TRIGGER {{Also here|Also in the room}: &%*people} {}
#CLASS 0
#CLASS {Old|autohunter}
#ALIAS resumelaunch {#echo Resuming Launch;#resume l1;#resume l2;#resume l3;#resume l4;#resume l5;#resume l6}
#ALIAS abortlaunch {#echo Aborting Launch;#suspend sleepy;#suspend l1;#suspend l2;#suspend l3;#suspend l4;#suspend l5;#suspend l6}
#ALIAS gathering {gather arrow}
#TRIGGER {It carried a * &%wchest on it!} {get @chest} "" {disable}
#TRIGGER {Get what?} {stance defensive;#t- find;#t+ walk;#t+ retreatpoint;#t- startpoint;#t- loot;#ALARM +.5 {look;#Resume a1}}
#TRIGGER "kill" {You have regained your physical balance.} {#temp firey {You remove} {fire @autotarget};get 1 arrow from my quiver} "" {disable}
#TRIGGER "aimcheck" {I could not find what you} {put arrow inside arrow in my quiver;#unt firey;#t- loot;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}} "" {disable}
#TRIGGER {You have slain} {#T- kill;#t- aimcheck;#T+ rest;#t+ loot}
#TRIGGER "loot" {You have regained your physical balance.} {#alarm +.5 {search @autotarget};#t- loot;#t+ gather;#alarm +1 {gathering}} "" {disable}
#TRIGGER {{ground and dies.|final squeal}} {#T- kill;#t- aimcheck;#T+ rest;#t+ loot}
#TRIGGER {Roundtime: &%droundtime sec.} {#add roundtime .5;#alarm +@roundtime {#Echo You have regained your physical balance.};#var roundtime2 %1}
#TRIGGER {A * is quite dead already.} {search @autotarget;#t- loot;#temp {^~>} {gathering}}
#TRIGGER {You pick up a} {put @chest in my longcoat}
#CLASS 0
#CLASS {Old|autohunter|find}
#ALIAS attacker {#if (@targetter = 1) {#t- walk;#suspend a1;#T+ kill;#t+ aimcheck;#T- find;#t- gather;#temp {You sling a composite bow off} {get 1 arrow from my quiver};#temp {You remove a single} {fire @target};remove bow;#va autotarget thyril;#va targetter 0} {#va targetter 0}}
#TRIGGER {{a giant rat|a giant rat,}} {#va autotarget rat;#va monster 1}
#TRIGGER {^Obvious {paths|exits}:} {#IF (@monster = 1 and @people == "") {#t- walk;#suspend a1;#T+ kill;#t+ aimcheck;#T- find;#t- gather;get 1 arrow from my quiver;#alarm +.5 {fire @autotarget}} {#noop}}
#CLASS 0
#CLASS {Old|autohunter|walk}
#TRIGGER {{Obvious paths:|Obvious exits:}} {#ALARM "a1" +.5 {#STEP;#PAUSE}} "" {notrig}
#CLASS 0
#CLASS {Old|autohunter|RetreatPoint}
#TRIGGER {~[Frozen Garden, Path~]} {#slow fromhunt}
#CLASS 0
#CLASS {Old|autohunter|StartPoint}
#TRIGGER "autohunt" {~[Frozen Garden, Path~]} {#echo Starting;exp;#T- kill;#T+ find;#T+ autohunt;#t+ walk;#alarm "l1" +1 {#cr;#echo 4 minutes remaining};#alarm "l2" +2 {cast;#cr;#echo 3 minutes remaining and checking if we are hungry...};#alarm "l3" +3 {say hmm};#alarm "l4" +4 {#cr;#echo 2 minutes remaining};#alarm "l5" +5 {#cr;#echo 1 minute remaining};stance neutral;#alarm "l6" +6 {#cr;#echo Starting;#slow lookrats;#pause}}
#CLASS 0
#CLASS {Old|autohunter|Gather}
#TRIGGER {You gather * %w arrows} {#var arrow 0;put arrow inside arrow in my quiver}
#TRIGGER {You pick up the * arrow, but} {#var arrow 0;put arrow inside arrow in my quiver}
#TRIGGER {The arrow is out of your reach.} {gather arrow}
#TRIGGER {You add a * arrow} {#t- gather;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}}
#TRIGGER {You bundle} {#t- gather;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}}
#CLASS 0
And before you say, zmud sucks!! the reason i want this, is so that I can do things like this
#TRIGGER {%1 does blah..} {#MATH wait %random( 5, 10);#ALARM {+@wait} {#CASE %random {nod %1} {bow %1} {sayto 1% howdy there stranger!} {greet %1}};#di} "Old|afk"
Which upon the first brace would pick a random number between 5 and 10, wait for that number, then randomly respond. Pretty cool to use just for random shit if you go afk a bit.. can also make it so that you walk a bit randomly, with random pauses between rooms.
Anyways.. here it is... just ask and i'll explain whats going on if you cant figure it out. Oh and snagging the gsl codes straight from the game ROCKS! no more looking or typing EXP to see if yer minds fried, (also doesnt give away the fact that you're scripting, AND if a GM looks at your FE type its OTHER.. they dont know if yer runnin a script or not)
#CLASS {Old}
#TRIGGER {That'll be five silvers entrance fee} {give guard 5;#step}
#TRIGGER {~[&%*room~]$} {#COLOR %eval( %color( bright)+%color( white));@monster = 0;@people = ""}
#TRIGGER {{Also here|Also in the room}: &%*people} {}
#CLASS 0
#CLASS {Old|autohunter}
#ALIAS resumelaunch {#echo Resuming Launch;#resume l1;#resume l2;#resume l3;#resume l4;#resume l5;#resume l6}
#ALIAS abortlaunch {#echo Aborting Launch;#suspend sleepy;#suspend l1;#suspend l2;#suspend l3;#suspend l4;#suspend l5;#suspend l6}
#ALIAS gathering {gather arrow}
#TRIGGER {It carried a * &%wchest on it!} {get @chest} "" {disable}
#TRIGGER {Get what?} {stance defensive;#t- find;#t+ walk;#t+ retreatpoint;#t- startpoint;#t- loot;#ALARM +.5 {look;#Resume a1}}
#TRIGGER "kill" {You have regained your physical balance.} {#temp firey {You remove} {fire @autotarget};get 1 arrow from my quiver} "" {disable}
#TRIGGER "aimcheck" {I could not find what you} {put arrow inside arrow in my quiver;#unt firey;#t- loot;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}} "" {disable}
#TRIGGER {You have slain} {#T- kill;#t- aimcheck;#T+ rest;#t+ loot}
#TRIGGER "loot" {You have regained your physical balance.} {#alarm +.5 {search @autotarget};#t- loot;#t+ gather;#alarm +1 {gathering}} "" {disable}
#TRIGGER {{ground and dies.|final squeal}} {#T- kill;#t- aimcheck;#T+ rest;#t+ loot}
#TRIGGER {Roundtime: &%droundtime sec.} {#add roundtime .5;#alarm +@roundtime {#Echo You have regained your physical balance.};#var roundtime2 %1}
#TRIGGER {A * is quite dead already.} {search @autotarget;#t- loot;#temp {^~>} {gathering}}
#TRIGGER {You pick up a} {put @chest in my longcoat}
#CLASS 0
#CLASS {Old|autohunter|find}
#ALIAS attacker {#if (@targetter = 1) {#t- walk;#suspend a1;#T+ kill;#t+ aimcheck;#T- find;#t- gather;#temp {You sling a composite bow off} {get 1 arrow from my quiver};#temp {You remove a single} {fire @target};remove bow;#va autotarget thyril;#va targetter 0} {#va targetter 0}}
#TRIGGER {{a giant rat|a giant rat,}} {#va autotarget rat;#va monster 1}
#TRIGGER {^Obvious {paths|exits}:} {#IF (@monster = 1 and @people == "") {#t- walk;#suspend a1;#T+ kill;#t+ aimcheck;#T- find;#t- gather;get 1 arrow from my quiver;#alarm +.5 {fire @autotarget}} {#noop}}
#CLASS 0
#CLASS {Old|autohunter|walk}
#TRIGGER {{Obvious paths:|Obvious exits:}} {#ALARM "a1" +.5 {#STEP;#PAUSE}} "" {notrig}
#CLASS 0
#CLASS {Old|autohunter|RetreatPoint}
#TRIGGER {~[Frozen Garden, Path~]} {#slow fromhunt}
#CLASS 0
#CLASS {Old|autohunter|StartPoint}
#TRIGGER "autohunt" {~[Frozen Garden, Path~]} {#echo Starting;exp;#T- kill;#T+ find;#T+ autohunt;#t+ walk;#alarm "l1" +1 {#cr;#echo 4 minutes remaining};#alarm "l2" +2 {cast;#cr;#echo 3 minutes remaining and checking if we are hungry...};#alarm "l3" +3 {say hmm};#alarm "l4" +4 {#cr;#echo 2 minutes remaining};#alarm "l5" +5 {#cr;#echo 1 minute remaining};stance neutral;#alarm "l6" +6 {#cr;#echo Starting;#slow lookrats;#pause}}
#CLASS 0
#CLASS {Old|autohunter|Gather}
#TRIGGER {You gather * %w arrows} {#var arrow 0;put arrow inside arrow in my quiver}
#TRIGGER {You pick up the * arrow, but} {#var arrow 0;put arrow inside arrow in my quiver}
#TRIGGER {The arrow is out of your reach.} {gather arrow}
#TRIGGER {You add a * arrow} {#t- gather;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}}
#TRIGGER {You bundle} {#t- gather;#t+ find;#t+ walk;#ALARM +.5 {look;#Resume a1}}
#CLASS 0