Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
complex
Apprentice


Joined: 12 Apr 2004
Posts: 134
Location: USA

PostPosted: Mon Oct 18, 2010 5:24 pm   

Walking bot
 
Currently I am working on a script that relies heavily on a walking bot, however I am running into a real issues with how to approach this correctly, if there is a correct way.

The basic idea here is through various methods of triggers, aliases, and macros feed my agent directions, and I want to control when the agent takes a step based on feedback from the mud. I have gotten a few prototypes to work but nothing works completely.

Fast map movement setting: This is where I have and the best results so far. I can manually enter
Code:
  #STEP 20e20w;#PAUSE
or
Code:
 aPathTest
an alias containing the above step pause combo.
into the command line, and the code I have in place works perfectly, so long as I do not attempt to trigger any additional moves from rooms. When I attempt to call a trigger or a macro from a room script to queue up more directions it fails every time. This includes calling the alias from the room that worked above. When I do try to call the alias from the room trigger I step on room into the path, then the path queue seems to clear. There is nothing reported in the debugger to indicate why the path is no longer present, but attempts to step through it result in nothing. For this process my step routine triggers off the arrival of a pet, as it is the last thing that happens upon entering a room.

Slow map movement setting: This process is much more difficult due to the way that #OK works, so I disabled it and created my own method of verification which like the above also triggers off of my pet entering the room. But #step does not function correctly here at all.

I don’t really know how to approach this problem, but I would be happy to dump the code that I am working with, or if someone could point me in the right direction with some pseudo code, that would work as well, but the basic structure is.

aStep // alias consisting of #step #pause
tVariousTriggers //consisting of reactions to objects in the room, and always result in
aStep

rsRoomScript //calls to aliases or paths that queue further directions based on location, an important thing to note here is that when the agent lands on a room with directions in it his current movement queue will be empty.
_________________
<Clever text here>
Reply with quote
complex
Apprentice


Joined: 12 Apr 2004
Posts: 134
Location: USA

PostPosted: Wed Oct 20, 2010 11:54 pm   
 
Maybe I asked to much Laughing How about some smaller questions about movement handling?

1. How do we have cmud #Step as documented?
The documentation states
Quote:
#STEP n2es
sets "n2es" as the current path, then sends the North command to the MUD as the first step. The next #STEP command would send "east", and so on. "

This is not the case however, #step in every mode dumps every step within the path.

2. How do we add directions to the end of a queued path?
If that is not possible, how can we call a path from a room trigger?
_________________
<Clever text here>
Reply with quote
harley
Apprentice


Joined: 05 Apr 2008
Posts: 121

PostPosted: Thu Oct 21, 2010 12:55 am   
 
not sure if it is the right answer, try to do
#slow .20n20s;#pause

Its worked for me in the past.
then #step
Reply with quote
complex
Apprentice


Joined: 12 Apr 2004
Posts: 134
Location: USA

PostPosted: Thu Oct 21, 2010 4:31 pm   
 
Thank you for the suggestion.

In slow mode on the map:
#slow .20n20s;#pause
The first step is one north, then when #step is sent the second time 2-8 n's are sent to the client before pausing again. Also the map loses me when this happens.

In fast mode on the map:
#slow .20n20s;#pause
The first step is one north, then when #step is sent the rest of the north directions are sent, and then movement is pause, when the next #step command is sent then all of the south directions are sent.

I tested #slow .nnnnnnnnnnnnnnnnnnnnssssssssssssssssssss;#pause Also, since it seemed like the directions were sent in groups of direction. The results were the same as above..
_________________
<Clever text here>
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net