
You should have a good idea of what your claim is going to be like before you begin. Where are you going to set it? On a coast somewhere, a desert, a narrow gully, a cliff? How many rooms will you need? The area should have at least three rooms; five are usually enough to make getting to the crystal interesting, but sometimes one or two more are called for. Read through Puzzles and Pitfalls and decide if you want to use any of them on your claim, and if so, where they will go. Draw a map before you begin building.
Once your idea is in place and you are ready to build, head for the Claim Nexus (off the OOC Room). This room groups all of the exits to claims that are already in progress and claims that are available for building. An exit called "Unlinked <#>" (i.e., "Unlinked 165") indicates an available exit. If there are no available exits try sending +mail to Aria, the wizard in charge of building. If there are a lot of backlogged claims to be finished new building may be stopped, but if not she will usually set something up for you.
Each time you add a room or exit, you will use up building credits. To find out how many building credits you have, type sc. If you run out of building credits, page or +mail Brandy. She will give you more.
Read through this page in full before you begin building. The structure on claims is slightly different than that of normal rooms.
Assuming there is an exit available in the Claim Nexus, create the first room on your claim using the @dig command:
@dig <room name>
Start with the room you plan to set up as the landing site. The name of the room can consist of multiple words, but each word should begin with a capital letter. For example, suppose your landing site will be in a room called "High Ledge". You would enter:
@dig High Ledge
You would then get a message that looks something like this:
High Ledge created with room number <room number>
If you place a # sign in front of the room number that appears, you have the dbref of the room. Make a note of the dbref, because you will need it to link your exit to it from the Claim Nexus.
Once you have dug a room and made a note of its dbref, @link one of the available exits from the Claim Nexus to the room:
@link <exit name> = <room dbref>
where <exit name> is the name of the exit in the Claim Nexus, and <room dbref> is the dbref of the room to which you are linking. For example, if you want to link exit "Unlinked 165" to the room "Big Cliff", you would type:
@link Unlinked 165 = #9476
Once you have linked the room, rename the exit in the Claim Nexus using the @name command. Only the first exit name will be displayed in the Obvious exits list for the Claim Nexus, but you may want to add a short alias or two so you don't have to type the full name to go through the exit to your claim. For example:
@name Unlinked 165 = Claim 165 (Inanna);165;nan
will rename the exit "Unlinked 165" to "Claim 165 (Inanna)", but you could also pass through the exit by typing "165" or "nan". It is important to keep the number of the exit in its name or aliases, because Aria needs to track it.
Once you've dug the first room on your claim, linked to it, and renamed the link in the Claim Nexus, it's time to create your master claim object. The master claim object handles all of the commands Singers issue when they land on a claim to stake it, hide their sleds, check who the builder is so they know who to scream at later while they are recovering in the infirmary, etc. It also handles the structure of claim room descriptions, which are different from those of normal rooms.
Each of the rooms in your claim will inherit this code from your master claim object. Inheritance means they will handle the same commands as the master claim object, but the code isn't actually located on the room object. The object that the code is inherited from is often referred to as the parent. Even your master claim object will inherit most of its code from another object parent.
To create the master claim object, @clone the claim object parent (#354) with the /parent switch:
@clone/parent #354
Your master claim object will be created with its own dbref. (It is not created in your inventory, you have to pick it up using the 'get' command.) By using the /parent switch, your claim object clone handles the claim code described above, but only a few basic attributes are shown on the cloned object itself. (You can view the code on the master claim object, or any other object that you own, using the 'ex' command.) This is important, because you won't want to wade through all that other code to locate the attributes you care about -- and, more importantly, neither does Aria! (If you forget to use the /parent switch, she will make you fix it.) If you really want to look at the master claim code, type ex #354 (it is set to visual so you can view it).
In order for each of the rooms on your claim to inherit all of this code, @parent them to your master claim object:
@parent <room> = <master>
where <master> is the dbref of your master claim object (not #354). Every room on your claim must be parented to your claim master.
The master claim object handles a rather complicated description structure that is inherited by all the rooms on your claim. The description of each room is split into two parts, the basic description and the local description.
The basic description describes the claim as a whole. Each room will show this in the first paragraph of its description. The basic description is set up in the &basic_desc attribute on your master claim object. For example, on a gully claim:
&basic_desc <master> = Arid and desolate, this is truly a forgotten place. Gullies and narrow canyons spread across the landscape like veins in the jagged, red rock, and dust seems to cover everything. The arroyo where you finally decide to land seems only barely more hospitable than the rest you've seen.
The local description describes the specific room. Each room will show this in the second paragraph of its description. This is set in the &local_desc attribute on the room. For example, for the first room on the gully claim:
&local_desc <room> = The arroyo widens here from an extremely narrow gap at the west end to a gorge barely wide enough to land a sled in. Steep escarpments to the north and south reach up a good 40 or 50 metres, and when you look up you can see only a jagged sliver of sky. No trace remains of the river that must have carved this fissure in the planet's surface; the floor of the gully is barren and dusty.
This is how the description of the room would appear to anyone who walked into it:
Arid and desolate, this is truly a forgotten place. Gullies and narrow canyons spread across the landscape like veins in the jagged, red rock, and dust seems to cover everything. The arroyo where you finally decide to land seems only barely more hospitable than the rest you've seen.
The arroyo widens here from an extremely narrow gap at the west end to a gorge barely wide enough to land a sled in. Steep escarpments to the north and south reach up a good 40 or 50 metres, and when you look up you can see only a jagged sliver of sky. No trace remains of the river that must have carved this fissure in the planet's surface; the floor of the gully is barren and dusty.
There are a number of other things you can do to spice up your descriptions, such as having parts (or all) of them change according to the time of day, season, or, in the case of a coastal claim, the tides. These are described in detail in Room Guidelines.
There are a few extra attributes you should put on your master claim object. Some of these are required, some just make Aria's life easier when she inspects your claim.
| &room-list | A list of all room dbrefs in your claim. It should contain a list of dbrefs only, separated by spaces. Save notes for the ¬e attribute. |
| &exit-list | A list of all exit dbrefs in your claim. It should contain a list of dbrefs only, separated by spaces. Save notes for the ¬e attribute. |
| &other | A list of dbrefs of all other objects used by the claim that are not rooms or exits. It should contain a list of dbrefs only, separated by spaces. Save notes for the ¬e attribute. If you don't have any other objects, leave this blank (don't put "none" in it, this messes up some of the inspection tools). |
| &wiz | A list of all dbrefs that will need to be owned by a wizard (injury code, cutter disabled code, etc). It should contain a list of dbrefs only, separated by spaces. Save notes for the ¬e attribute. If none of your dbrefs need to be wiz-owned, leave this blank. |
| &landing_site | The dbref of the room the sled should land in. |
| &vein_site | The dbref of the room the crystal vein should be put in. |
| ¬e | This attribute should document everything that we should know about your claim: special code, in what cases someone can be injured, whether something needs to be reset when the claim is reused, etc. |
| &sled_desc | A one or two sentence description of what someone flying in a sled sees when they pass above this claim site. |
| &builder | Your name, so credit can be given. |
| &reset | If your claim has code that needs to be reset each time the claim is reused (for example, an exit that needs to be set dark again), the code belongs here. The code statements are separated by semi-colons. If there is no reset code, leave this blank. |
| &hint | If you've created a particularly tricky claim and you think an OOC hint is in order, this is the place for it. If there is no need for a hint, leave this blank. |
This is how these registers were set on the master claim object for the gully claim example above:
&room-list <master> = #7546 #8588 #8220 #6709 #6363
&exit-list <master> = #8689 #7519 #7221 #7981 #7215 #8357 #8148 #7622 #8685 #7206 #6362 #6686 #6361
&wiz <master> = #8689
&landing_site <master> = #7546
&vein_site <master> = #6363
¬e <master> = ***** Exit #8689 has a 50/50 chance of causing an injury. ***** Room #6363 requires a lamp in order to see.
&sled_desc <master> = The ground below you is a honeycomb of narrow canyons and gullies, almost all too treacherous-looking to land in.
&builder <master> = Inanna
For more information on setting the &reset attribute on the master claim object, refer to "Locking an Exit to a Command" in the Exit Guidelines.
The @dig command allows you to specify an exit list to and from a new room when you create the room, so you don't have to do it separately. This will save you a lot of time. The syntax for this command is:
@dig <room name> = <exit list to room>, <exit list from room>
where <room name> is the name of the room, and <exit list to room> and <exit list from room> are the names and aliases for the exits (refer to Exit Guidelines), separated by semi-colons. For example, if you were in the room High Ledge and wanted to dig and link to the room Big Cliff:
@dig Big Cliff = Big Cliff;bc;up;u, High Ledge;hl;down;d
would create an exit "Big Cliff" (though typing "bc", "up" or "u" could also be used to go through the exit) from the room High Ledge to the room Big Cliff, and an exit from the room Big Cliff called "High Ledge" (though typing "hl", "down" or "d" would also work) that leads back to the room High Ledge.
For more information on @dig, @link, @name, and @open (which opens an exit from an existing room to another existing room), use the MUSH 'help' command. Type help, a space, and then the name of the command. For example:
help @dig
will give you the help file on the @dig command.
Introduction | Getting Started | Room Guidelines | Exit Guidelines | Puzzles and Pitfalls | Finishing Up