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

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD Beta Forum
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Sun Jul 05, 2009 11:19 pm   

Mapper directions with arguments (feature request?)
 
I'm trying a mud which allows arguments to the basic directions, which change how the movement appears to others. For instance, you can send the command: north sauntering casually. This would cause viewers to see something like: Sauntering casually, so-and-so arrives from the north. The problem is that cmud does not appear to recognize this as a movement command, and does not move the location object. I could create aliases that execute the #move command, but this would force movement even if the movement fails. Can anyone think of another way to get the mapper to recognize movements like this? Or does this need to be a feature request?
Reply with quote
Tech
GURU


Joined: 18 Oct 2000
Posts: 2733
Location: Atlanta, USA

PostPosted: Mon Jul 06, 2009 2:13 pm   
 
Unless I'm missing something, sounds like you'd really want a trigger on "so-and-so arrives from the north" and use that the #MOVE command to update the location object for that person.

That's the approach I used to take for pets and familiars, or in the case where I was following a party leader.
_________________
Asati di tempari!
Reply with quote
wrym
Magician


Joined: 06 Jul 2007
Posts: 349
Location: The big palace, My own lil world

PostPosted: Mon Jul 06, 2009 4:26 pm   
 
I think the issue is not other people moving but his own movement.

From the command line I entered "north blah blah blah". The result was I moved north, but the map location object stayed in same location, and the map queue remained empty.

You might try an oninput trigger and #queue to manualy detect the new dirrection, and add it to the mapper queue.
_________________
"To the engineer, all matter in the universe can be placed into one of two categories: (1) things that need to be fixed, and (2) things that will need to be fixed after you've had a few minutes to play with them" - Scott Adams, The Dilbert Principle
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Mon Jul 06, 2009 7:36 pm   
 
Yes, the problem is as Wrym says, 'north blah blah blah' is not recognized as a movement command by the mapper.

Ah, #queue. That might do it. I'll check later. Thanks.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4715
Location: Pensacola, FL, USA

PostPosted: Mon Jul 06, 2009 7:43 pm   
 
Could use an oninput trigger to check and see if the first word of a command is a valid direction....
_________________
Discord: Shalimarwildcat
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Mon Jul 06, 2009 8:27 pm   
 
#queue is actually giving me an error message. But checking the documentation, I don't think it will help anyway. If I did a #queue n, it will simply send another north command, after the mud gets "north blah blah blah".

Quote:
Could use an oninput trigger to check and see if the first word of a command is a valid direction....

Yes, if there's a way to do it, it starts with this. But what do I do then? There's no way to tell the mapper that this is a direction. And I don't think there's a way to add anything to the queue without it trying to actually execute it. I could use #move, but then I lose the ability to match room name and trigger #nodir on movement failure messages. The only thing that seems to work is to strip the "blah blah blah" from the command line before it gets sent to the mud, which loses this interesting mud feature.

I think what we need is either a way to simulate popping a direction from the queue, as if it had already been sent to the mud. Or map direction command matching needs to allow for arguments which it ignores. I would say the latter is preferrable, but if anyone can think to make this work without that, I'll be satisfied.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4715
Location: Pensacola, FL, USA

PostPosted: Mon Jul 06, 2009 8:31 pm   
 
If the command sends you a first person echo similar to the third person echo that others see... trigger and move based off of that.

#TR {You saunter to the (%w).} {#MO %1}
_________________
Discord: Shalimarwildcat
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Mon Jul 06, 2009 8:39 pm   
 
That's a good idea. I do have triggers like that for following, and some other types of movement. Unfortunately, it apparently doesn't make that echo to the mover, it just gives you the new room name and description. I wish it gave an echo like that--it's hard to experiment with it when I can't see what it looks like to others. I may make a suggestion to the mud admins on that.
Reply with quote
wrym
Magician


Joined: 06 Jul 2007
Posts: 349
Location: The big palace, My own lil world

PostPosted: Mon Jul 06, 2009 8:47 pm   
 
Hmmm, I THOUGH I was using #queue in a somewhat similar situation, and I THOUGHT it was working but I was just kludging it all up, and it sorta worked.

I think that it'ld be fairly easy to allow additional arguments to direction commands, I assume it's just and end anchor on a regex.

But having the ability to read & write to the mapper queue would be nice. Perhaps a system variable that references back to the map queue, then %pop %item %push and what not could be used on the map queue fairly easily?
_________________
"To the engineer, all matter in the universe can be placed into one of two categories: (1) things that need to be fixed, and (2) things that will need to be fixed after you've had a few minutes to play with them" - Scott Adams, The Dilbert Principle
Reply with quote
wrym
Magician


Joined: 06 Jul 2007
Posts: 349
Location: The big palace, My own lil world

PostPosted: Mon Jul 06, 2009 8:51 pm   
 
What about an Oninput trigger to detect that you have entered a direction, add it to a custom map que, then when you detect a new room, check if the room name the desired directional matches what you captured, pop the value from the queue and move that direction?
_________________
"To the engineer, all matter in the universe can be placed into one of two categories: (1) things that need to be fixed, and (2) things that will need to be fixed after you've had a few minutes to play with them" - Scott Adams, The Dilbert Principle
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Thu Jul 16, 2009 5:35 am   
 
#QUEUE shouldn't send any commands to the mud. A simple input trigger should handle what you want:
#ONINPUT {^(%t)} {#QUEUE %1}

You say #QUEUE is giving an error, please provide some details.
_________________
The only good questions are the ones we have never answered before.
Search the Forums
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD Beta Forum 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