Building on Silver Seas MOO

One person’s well-intended advice.

 

Overview

 

·          Step 1.  Have a goal in mind. What function will this MOO space perform?

 

·          Step 2.  Sketch or map your MOO space on paper, or otherwise have an excellent idea of how you will proceed. You need a vision.

 

·          Step 3.  Once on the MOO, map out your spaces and exits without much detail, just to establish the relationships between the rooms and how exits will function.

 

·          Step 4.  Once the skeleton is in place, detail your spaces and exits and objects to whatever degree pleases you.

 

·          Step 5.  Take a run-through to make sure it looks and feels good. Make corrections.

 

·          Step 6.  There is no… step 6.

 

 

Step 1. Have a goal in mind. What function will this MOO space perform?

 

Examples:

·          Students will get an idea of the sheer immense size of a dinosaur.

·          Students will get the general feel and experience of wandering through a Gypsy camp.

·          Students will explore the mystery of Jack the Ripper along with historically famous detectives.

·          Students will follow the narrative of Harriet Tubman’s life.

 

 

Step 2. Sketch or map your MOO space on paper, or otherwise have an excellent idea of how you will proceed. You need a vision.

 

Importantly, rooms aren’t literally rooms, in all cases. Your virtual space will be blocked out, divided into, expressed as a combination of room-spaces, objects of different types, exits, verbs, and so on. As you design, you pick what class of MOO object best fits for your goal.

 

In my case, I wanted to highlight a particular tree in a clearing of trees, beneath which can be found a mysterious relic. I could have made the tree a container object, inside of which you might find the relic. I could have made the tree an activity (action or verb) inside the forest clearing: “explore tree” or “climb tree” for example. But, instead, I decided to break the tree out into its own room. This allows me to give it a different kind of emphasis. I decided the relic would make most sense as an object. I could have gone another direction if I thought it would be effective. Here’s my sketch of the space:

 

 

 

Step 3.  Once on the MOO, map out your spaces and exits without much detail, just to establish the relationships between the rooms and how exits will function.

 

 

 

In the following examples, the command instructions will be in blue.  The explanation of the command will be in black. What I really typed will be in red.  What the MOO said to me after I hit “return” will be in green.

 

 

 

@dig “[The Name Of Your Space]”

This carves a blank physical space into the nothingness. Note database number for reference.

 

@dig “Green Abode”

Green Abode (#2132) created.

 

 

@teleport me to #[The Database Number of Your Space]

This will put you inside your blank physical space, so you can stop using the database number as a reference.

 

@teleport me to #2132

You view Green Abode...

 [Web Window Populates]

Moved.

 

@describe here as [A Full Text Description of Your Space]

Notice you can say ‘here’ instead of the database number, since you are located “in” your physical space. Later, you will click ‘Options’ and populate each menu item as you see fit.  I sometimes used text commands, as below, rather than using the Silver Sea graphic interface.

 

@describe here as A cool, green space sheltered by overhanging branches. Sunlight shifts across the moss-covered ground. Everywhere, the sound of wind. In the distance, mist collects in shadows, where the sun can not reach and the wind will not stir. A grey tree lives there, leaning away from the sunlight, shrouded in the strange motionless fog.

Description set.

 

 

@dig “[The Name of An Exit, Alias, Alias, Alias]” to “[The Name of Your New Adjacent Space]”

This carves a blank physical space into the nothingness, and simultaneously creates an exit (like a link) that can be used to move into that space. The exit has a visible name “The Name of an Exit” plus some special keywords which work to trigger the exit, called aliases. You want to use quotation marks in order to protect reserved words. If your exit name is “Go To Sleep” you will generate an error without double-quotes, because the word “to” is also part of the command itself.

 

@dig “Approach the Tree, Tree, Approach” to “The Tree”

Exit from Green Abode (#2132) to The Tree (#2068) via {"Approach the Tree”, “Tree”, “Approach"} created with id #2141.

 

If you ‘look’ after every command you enter, you will be able to get your new bearings. You’ll see that your new exit exists.

 

You view Green Abode...

[Web Window Populates]

Obvious exits: [Approach the Tree] to The Tree

 

Take your exit to go into your new room.

 

tree

You view The Tree...

[Web Window Populates]

 

Now create an exit from this room to your original room. Use the database number to avoid ambiguity errors, which look like this:

 

"Word" is ambiguous.

Matches: Room With Word In It and Other Room With Word In It

 

So the command you type should look like this:

 

@dig “Out, Back, Exit, Leave” to  #2132

Exit from The Tree (#2068) to Green Abode (#2132) via {"Out”, Back”, Exit”, “Leave"} created with id #2060.

 

Now you have two rooms, and exits joining them together.  Let’s add an object.

 

@create $thing named “[Name Of Your Object]”

This creates an object with default attributes inherited from its parent class, in this case $thing.

 

A “class” is a group of attributes or methods (referred to as ‘Obvious Verbs’) that belong to a generic parent object and which will be inherited automatically by any objects created as a child of that parent. Silver Seas MOO may import classes from other MOOs, and/or invent and implement classes of their own.  So far, they have a wide variety. For example, I can create, among other things, a $note or a $container. It will have all the unique qualities I grant it, but by default it will already have all the methods belonging to the generic “note” or “container” class. For the note class, those methods would include ‘read’ and ‘write’ – things you can do for any note. Your note, however, may also have ‘smell’ associated with it, because yours is daubed with perfume. For container, methods might include ‘open’, ‘put’, and ‘close’. Yours might also have ‘turn crank’ as it is a Jack in the Box. In this case, I didn’t need to use anything fancier than the ‘thing’ class.

 

@create $thing named “Old Relic”

You now have Old Relic with object number #243 and parent generic thing (#5).

 

 

Step 4.  Once the skeleton is in place, detail your spaces and exits and objects to whatever degree pleases you.

 

Now that you’ve created everything you want to create, it’s time to flesh everything out. This is the fun part. Silver Seas MOO makes this easy. Just click on the big button called OBJECTS and then click the button MY OBJECTS. You will see everything you’ve made appear in a list down the right-hand side. Start anywhere you like. Click on the item you are interested in adding detail to, and follow the web form item by item.

 

I could walk you through every single field. But I’m not sure that will be as helpful to you as this advice: If you aren’t sure what a particular field is responsible for, try filling it out with something radical or noticeable, then go experience the item again by handling it, walking through it, or looking at it.  What did your change seem to do?

 

Remember, the more of the web form you can fill in, the more fleshed out your object, exit, or space will be. Experiment!

 

 

Step 5.  Take a run-through to make sure it looks and feels good. Make corrections.

 

Just when you think you’re finished, you close your eyes, leave your space, and come back to it to look at it again from scratch… and realize how many tweaks and changes can be made.

 

Some of my thoughts during Step 5:

 

·         One of the biggest challenges for me was working with the limitations of the web panel on the right. Pictures can only be so large. Colors can only be customized to a certain extent. And so on. There are ways around this, however. For example, you can use the class $webpage instead of $room, although that changes the emphasis and meaning that you’re giving your space.

·         I was also unhappy if I saw any generic icons at all, which made me spend a great deal of time looking for little pictures to go with my space.

·          I found that the web portion really took my attention away from the text portion, so I abandoned describing exits, thinking that most people would just click on links. But then it occurred to me that being able to look in a direction was probably crucial to having a “complete” space, and I decided I might want to go back and fill those in after all.

 

You won’t know how effective your space is until you take a total stranger through it. See if they can figure out how to navigate what you’ve built. See if they get the point. After some feedback and experimentation, your space will finally come together nicely.

 

 

Step 6.  There is no… step 6.

 

Good luck!