|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Tue Feb 04, 2003 4:32 am
Gemstone III Scripts |
I was wondering if any talented Zmud programmers out there could program some sort of thing so that all the wizard scripts that are out there would be useable by zmud. I know you could completely redo it in zmud a billion times better but something to emulate the wizard environment so you could run the ones you've already made.
Or at least some help in figuring out how to only send commands to the mud if you've got the prompt and pausing if you dont... can only type one line ahead thing. |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Tue Feb 04, 2003 4:42 am |
You lost me at talented......
--------
moon.icebound.net:9000 |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Tue Feb 04, 2003 5:11 am |
ok. I didnt explain that well. hmm.. all I really need help with is how to make an alias wait until it see's a < from the output of the mud before it spits out its next command if you were to have say..
e
w
e
go bank
deposit 230
out
out |
|
|
|
Kjata GURU
Joined: 10 Oct 2000 Posts: 4379 Location: USA
|
Posted: Tue Feb 04, 2003 12:48 pm |
Separate your commands. Have the alias execute the first part of the commands and then have a trigger that executes the other part when it sees the "<":
#TRIGGER {<} {e;w;e;go bank;deposit 230;out;out}
Kjata |
|
|
|
Anabasis Wanderer
Joined: 26 Jan 2001 Posts: 74
|
Posted: Tue Feb 04, 2003 3:34 pm |
I believe he is asking for a zMud script that will read his existing Wizard scripts, which are stored as simple text files, but with different extensions.
It would merely be a matter of have zMud open the text file, and execute it on a line by line basis, with a slight delay between each line.
However, it would still require that the Simu user rewrite thier scripts, since you'd have to strip out the Wizard scripting commands anyway.
Ana |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Tue Feb 04, 2003 5:12 pm |
oh, i think i have an idea for the delaying system.
#alias del {
commands = %1
count = 1
#t+ execwait
#cr
}
#class execwait
#tr {<} {#if (@count = (%numitems(@commands)+1)) {#t- execwait} {%item(@commands, @count);#add count 1}}
#class 0
use it like this:
del {e|w|e|go bank|deposit 230|out|out}
--------
moon.icebound.net:9000 |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Wed Feb 05, 2003 2:21 am |
Hmm. I'm not sure if i was clear. I need the < before each and every command issued. And i'm not quite sure how or where I would set up the aforementioned code.
quote:
Separate your commands. Have the alias execute the first part of the commands and then have a trigger that executes the other part when it sees the "<":
#TRIGGER {<} {e;w;e;go bank;deposit 230;out;out}
Kjata
|
|
|
|
Kjata GURU
Joined: 10 Oct 2000 Posts: 4379 Location: USA
|
Posted: Wed Feb 05, 2003 4:37 am |
Ok, set up a list with the commands to perform and have a trigger that performs the first one and removes it:
#TRIGGER {<} {#IF (@commands) {#EXEC %item(@commands, 1;#DELNITEM commands 1)}}
Now, when you want the trigger to do each command and wait for the <, just fill the variable with a list of the commands to execute. Example:
#VAR commands {e|w|e|go bank|deposit 230|out|out}
Kjata |
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4692 Location: Pensacola, FL, USA
|
Posted: Wed Feb 05, 2003 7:03 am |
speaking of GS3, has anyone manages to emulate the thought window?
i tried:
#trigger {You hear the(*) thoughts of (%w) echo in your mind~:;"(*)"} {#cap think %2 ~[%1~]~:;#gag}
problem it that the thought message and the line that triggers it are not on the same line
also having trouble formating my child thought window to display how i want it too
Shalimar |
|
|
|
TonDiening GURU
Joined: 26 Jul 2001 Posts: 1958 Location: Canada
|
Posted: Wed Feb 05, 2003 8:23 am |
Thought window concepts in the beta forum:
here here and others in there.
How did your window formatting look like?
Ton Diening |
|
|
|
shalimar GURU
Joined: 04 Aug 2002 Posts: 4692 Location: Pensacola, FL, USA
|
Posted: Wed Feb 05, 2003 9:07 am |
what i did would only return the line that someone was thinking, the rest of it semmed to have been ignored and the thoughts themselves were still in the main window
Shalimar |
|
|
|
Anabasis Wanderer
Joined: 26 Jan 2001 Posts: 74
|
Posted: Wed Feb 05, 2003 3:27 pm |
Just to be on the safe side, I'd make one change to the triggers, since the > is the normal game prompt on a new line.
#TRIGGER {^<} {#IF (@commands) {#EXEC %item(@commands, 1;#DELNITEM commands 1)}}
Ana |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Wed Feb 05, 2003 11:59 pm |
Hmm. I'm copying what you say and pasting it in the command line and entering it, its still not working quite right for me.
|
|
|
|
Charbal GURU
Joined: 15 Jun 2001 Posts: 654 Location: USA
|
Posted: Thu Feb 06, 2003 12:55 am |
The trigger also has a missing parenthesis. So this might work better for you:
#TRIGGER {^<} {#IF (@commands) {#EXEC %item(@commands, 1);#DELNITEM commands 1)}}
- Charbal |
|
|
|
Kjata GURU
Joined: 10 Oct 2000 Posts: 4379 Location: USA
|
Posted: Thu Feb 06, 2003 2:07 am |
Heh, and don't forget to remove the now dangling closing parenthesis:
#TRIGGER {^<} {#IF (@commands) {#EXEC %item(@commands, 1);#DELNITEM commands 1}}
I think that now, between all of us, we got it right.
Kjata |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Thu Feb 06, 2003 10:25 pm |
#IF (@commands) {#EXEC %item(@commands, 1);#DELNITEM commands 1}
^ syntax error |
|
|
|
Kjata GURU
Joined: 10 Oct 2000 Posts: 4379 Location: USA
|
Posted: Thu Feb 06, 2003 10:28 pm |
Don't see anything wrong with it. Where and how did you enter that command?
Kjata |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Thu Feb 06, 2003 11:00 pm |
simply copied it, and inputed it into the command line.
|
|
|
|
Anabasis Wanderer
Joined: 26 Jan 2001 Posts: 74
|
Posted: Thu Feb 06, 2003 11:01 pm |
Okay, just played with it a little offline. I got the syntax error too, at the %item function in the command. I have no idea why, but the error goes away if you change the #EXEC to a #SEND. So try this...
#TRIGGER {^<} {#IF (@commands) {#SEND %item(@commands, 1);#DELNITEM commands 1}}
Ana |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Thu Feb 06, 2003 11:06 pm |
#exec probably got confused by the space, this works better:
#IF (@commands) {#EXEC {%item(@commands, 1)};#DELNITEM commands 1}
--------
moon.icebound.net:9000 |
|
|
|
Guldar Beginner
Joined: 04 Feb 2003 Posts: 12
|
Posted: Thu Feb 06, 2003 11:30 pm |
mutter. still doesnt work for me. by the way, my prompt is simply >. I changed it in the trigger thing but it still doestn work.
|
|
|
|
Anabasis Wanderer
Joined: 26 Jan 2001 Posts: 74
|
Posted: Fri Feb 07, 2003 3:07 pm |
quote: by the way, my prompt is simply >
Yes, but the ^ character is used to match the beginning of a new line. It keeps the trigger from firing on just any instance of the > character, and also keeps you safe from people trying to spoof your trigger.
Ana |
|
|
|
|
|