On Line Creation

And OLC FAQS
UNDER SEMI-HEAVY CONSTRUCTION

Disclaimer - I am still trying to figure all this out myself, The information here my be inaccurate or just plain outright wrong, any help would be appreciated - Shogar

The On Line Creation module is for the use of authorized builders. 

For reference purposes for this page, here are the immortal levels:

In order to build an area, certain steps must take place. Here are the steps and who has to do them. To create objects or mobiles. There are four major commands to tailor an area in OLC. They are: Mudprograms must be done by demi-gods. Once all that is done: AASSIGN FILENAME.ARE - The builder temporarily assigns all rooms, objects and mobiles to the prototype area file. This allows commands like RLIST, OLIST, MLIST, SAVEAREA, RESET AREA and INSTAZONE to affect the area.

AASSIGN NONE - The builder issues this command to save changes permanently to the prototype filename.

ASET BUILDER.ARE FILENAME NEWNAME.ARE - This is issued by the builder an Ancient God, to change the name of the prototype file in preparation for the INSTALLAREA command.

INSTALLAREA BUILDER.ARE - When the area is completed, a Ancient god, from within the prototype area, can issue this command to make the prototype area into a real game area. All prototype flags will be removed. The prototype filename BUILDER.ARE will be moved to the AREA directory and entered into the AREA.LST file. The area will be instantly loaded as a real area and reset .The builder may be assigned new a new vnum range.

FOLDAREA - Issued by a Greater god to save changes to real areas.

UNFOLDAREA - Issued by an Ancient god to load a new area file. Dangerous to use if the area is already loaded or has errors in it.

HELP OLC - Dragon Bane only help which gives a list of OLC related help topics.


OLC FAQ

This section is the beginning of answers to frequently asked OLC question.



How do I remove a prototype flag from a mobile or object in an already installed area?
How do I create the resets for a room or an Area?
How do I place an object under another object?
How do I make an object cast a spell when worn?
OK, now how do I remove the affect?
Now that my area has been installed, when I try to add objects or mobs they disappear after a reboot.
How do I put a LOOK description on an object?
OK, one more time, is negative AC good or bad?
How do I make a container?
How do I import areas from other muds?
What is a prototype?
Why won't my shopkeeper LIST my item?
Where Can I get more information? 


How do I remove a prototype flag from a mobile or object in an already installed area?

How do I create the resets for a room or an Area?



How do I place an object under another object.

How do I make an object cast a spell when worn.

    OSET objectname AFFECT WEARSPELL spellname

    Where the value for spell can be found by typing HELP AFFECTTYPES.  In a stock
    smaug mud, spellname would be the spell number, you would have to know it or look
    it up in skills.dat.

    You can also have a weapon cast a spell with every blow with WEAPONSPELL or
    have an object cast a spell when taken off with REMOVESPELL


OK, now how do I remove the affect.

    This is really different. The command is.

        OSET objectname RMAFFECT affectno.

    Where , when you do an OSTAT objectname, the affectno is the number of the affect
    In the list. For example.

        OSTAT objectname

                BLAH, BLAH, BLAH
                Affects wear spell by blind
                Affects wear spell by poison

    Actually, in Dragon bane, they are numbered for you and would appear as:

                [1]Affect wear spell by blind
                [2]Affect wear spell by poison

    To remove the poison affect, type:

        OSET objectname RMAFFECT 2

            Because its the second affect listed


Now that my area has been installed, when I try to add objects or mobs they disappear after a reboot.

When a prototype area is installed, the last  room, object and mob defined becomes the new upper vnum range. Many builders, if assigned a range of say 100 to 200 would create a room 200 called final room, a mob 200 called final mob, and an object 200 called , yes you guessed it, final object.

If you didn't create final vnums and say your last object was vnum 110, and after install, you create an object (vnum 111), it would work for the session but be discarded on the boot because it wasn't in a defined area vnum range.

A symptom of this would be the object or whatever not showing on an OLIST, MLIST or RLIST even though you can see it right in front of you. ZONES can be used to check the vnum range of the area in question.

The cure for this is to reset the upper vnum range for the area with the ASET command. Which might look like this.

    ASET myarea.are HI_ROOM 150
    ASET myarea.are HI_OBJ 150
    ASET myarea.are HI_MOB 150

Now would probably be a good time to create some final vnums:)

This also affects the ranges shown on the ZONES command.



How do I put a LOOK description on an object?

    OSET objectname ED keyword keyword keyword

The ED stands for Extra Description. The keywords are the word that you want the description to display for the LOOK command. This command will throw you into the normal description editor.

It can be removed by:

    OSET objectname RMED keyword.

Note: Extra Descriptions are picky about whether the description was created when the object had the prototype flag on. If the prototype flag was on when you created it, It must be on when you remove it.
If prototype was off when you created it, it must be off to remove it.

You can have multiple EDs with different keywords giving different descriptions.

For instance:

    KEYWORDS                       DESCRIPTION
    knife dagger                        An 8 inch dagger with a ruby in it's pummel
    pummel                                Intricately carved wood handle with a ruby in it
    ruby                                      Wow, its a beaut
    blade                                    8 inches of death with little jaggy things on it's edges



OK, one more time, is negative AC good or bad?

The lower the total AC, the better. So MSETing a mob's AC to a negative armorclass makes it tougher than setting it to a positive AC.

If you are setting an Apply Affect AC, the same is true. The value of the Affect is added to the total AC. So negative is good once more.

The opposite is true of an item's AC. The AC of an item is subtracted from the total AC. So positive is better. As to the reason for this? My only guesses are job security or one of those "Ooops, well, too late to change it now".

Note for the Realists: Making an item's AC negative is paramount to making a cursed item. It's just not making a weak item, it's canceling out other armor.

If the item's wear location is body, the value is multiplied by 3 before it is subtracted from the total AC.

If the item's wear location is legs, arms or about, the value is multiplied by 2 before it is subtracted from the total AC.

All other wear locations subtract the value you set for the object.



How do I make a container?

First off you set the object item type to container.

             OSET objname TYPE CONTAINER

Then you have to set the item values for the container.

The values for containers are:
V0                     V1              V2                V3
capacity             flags           keyvnum     condition

capacity is the weight the container can hold, not the number of items.

container flags uses the same flags as doors, see HELP EXITTYPES. I added the keywords DOOR DOORS CONTAINERFLAGS  to help EXITTYPES, so my builders had something more intuitive to remember.

            OSET objname V1 7

would make a container that is closed and locked.

keyvnum is the vnum of another object that the player has to have in their inventory to lock or unlock the container.

condition is the number of times that the  container can be damaged. The default is 0 which means it will be turned to scraps the first time it is damaged. The container is scrapped if it is damaged and V3 <= 0. otherwise V3 is decremented by 1.



How do I import areas from other muds?

There are several problems with importing areas from other muds. Even if the mud is related to smaug, like merc.

The flags on items, mobs and rooms  may be different.  The power level of the mud might be different, the spell numbers and spell slot numbers will probably be different. Smaug (1.02a) doesn't understand OR fields, by that I
mean ORed values in merc area files. Its a shorthand for hand editing, it looks like:  4|8|32|128

You best bet is to use MZF and ORB, goto RESOURCES  to get these tools. Use MZF to convert the
area into merc. Then use ORB to convert the merc area to smaug. You still have a lot of work to do. Unless
you have coded the load module to adjust level hitpoints, hitdamsize, etc, object costing for your economy and anything else you can think of, I.E. code a builder:) You will have to look at every mob, room and object to see if any adjustments are neccessary.



What is a prototype?

A prototype is the original item or mob that the builder created. All mobs and items that a player encounters in the game are a copy of the original prototype. When modifiying a mob or item, you have two choices. You can modify the copy or modify the prototype. If the mob/item's prototype flags is on, you are modifying the prototype, if it's off you are modifiying a single copy of the mob/item. Items that have the prototype flag on will be preceeded with "(PROTO)" if you are an immortal.

The prototype flag is toggled on and off with the command: MSET/OSET <name> FLAGS PROTOTYPE.

If you modify the prototype, you will change every mob/item in the mud. If you modify the copy, you will have one
mob/item that differs from the rest of the copies.

If the prototype flag is left on the following will happen.

The next logical question is why would I modify just the copy. Lets say you want to personlize an item. You could take a copy of a sword, and change the short and long names to something reflecting the player's name or the player's clan.

Changing a copy of mob is strictly temporary. Until the mob dies or the mud is rebooted. The same goes for items
that are not in a players inventory  or stored in a vault room. If the copy is in a vault or in a player's inventory, then the changes to the copy are saved.



Why won't my shopkeeper LIST my item?

This is usually one of three reasons.



Where Can I get more information?

Try the RESOURCES on the Builder/Coder Page

You can also post your on question on The Smaug Posting Board