MOO-cows Mailing List Archive


Re: Portable source form of MOO database

On Mon, 27 Nov 1995, Larry Mulcahy wrote:

>     @create $room called train station,Innsmouth train station
>     drop train station
>     @move me to train station

This method should work in theory, but the train station you dropped will 
be in the room you're in.  This is not good if you're doing this in many
rooms, because you get into recursive movement problems.  Try just @dig 
'room name' and then @go <object number> 

>     @describe here as "Inside a dilapidated train station.  The tracks are to the west.  The front door is to the east."
>     @dig e,east|w,west to "Train Station Steps"
>     e
>     @describe here as "Front door of the Innsmouth Train Station.  Up a short stairway to the west is the front door leading into the train station.  To the east are the streets of Innsmouth."
>     @dig e,east|w,west to "Bank Street/Place of Hawks intersection"
>     e
>     @describe here as "The intersection of the N/S Place of Hawks and E/W Bank Street.  To the immediate north, Place of Hawks crosses a bridge over the Manuxet River.  The Innsmouth Train station lies directly west of here."

>     >@verb misc:objnamed

Well, this code won't work with very large DBs... it will take too long.
(even if not, it will run out of ticks)

>     @dig n,north|s,south to objnamed("Train Station Steps")

Just get (AND REMEMBER) the object number of the 'train station steps'. 
It gives you the number when you first create the room.  If you want to
connect to an already existing room, enter the number.  Also, as you have
read in the programmer's manual... the FIRST word in a line of text is the
VERB.  NOTHING ELSE.  Only the first.  Therefore, you cannot invoke verbs
like you're trying to from above.  You're mixing the code parser with the
command parser (perhaps you can explain this better, Pavel) To find out
object numbers of objects you've forgotten, type '@audit [<player>]'

> Hovever, my efforts to come up with something that could be evaluated,
> would take a place name as input and return an object were fruitless.
> The verb seems to be the closest thing I can find to a user defined
> function in the programmer's manual.

Okay, a brief summary that should make this easier...
Commands go:   <verb>[[ <dobj>][ <prep>[ <iobj>]]]
CODE does just about everything else..  (Keep in mind that 
<function>(<args>) and <OBJ>:<VERB>(<args>) are in code, not commands.)

I did not read the Programmer's Manual until I was very good at MOO 
coding, and even reading it now, it is not suprising that people will 
confuse code from commands...  It would be great if you could be more 
clear on this in the 1.7.9 manual, Pavel.

- Kipp and his .02

Follow-Ups: References:

Home | Subject Index | Thread Index