|
The command 'redit' allows the builder to enter redit mode. Syntax redit [create] (vnum) The create flag is only used when creating a new room. By default redit will call the show command, displaying the stats of the room.
|
| Command | Description |
| done | This will leave redit mode |
| walk [direction] | Since north/south/etc is used for exits, this command can be used to walk around |
| olist | This command will list objects in the area this room is in |
| mlist | This command will list mobs in the area this room is in |
| rlist | This command will list rooms in the area this room is in |
| name | This command will change the name of the room |
| desc | This command will put the builder in edit mode for the description of the room |
| format | This command will format the description of the room so it looks nice |
Syntax : [exit] [command]
Example : north door
| Command | Description |
| dig |
Syntax : [exit] dig [vnum] Example : north dig 4001 Will create a new room at [vnum] and make an exit going in that direction, leading to the newly create room. Another exit, leading in the opposite direction from the new room to the room currently being edited will also be created. Example : Standing in room 4000, we type 'north dig 4001', this will result in room 4001 being created if it wasn't already, and an exit going north from room 4000 to room 4001 being created. On top of this, another exit, going south from room 4001 and ending in room 4000 will also be created (thus making it a two-way passage). |
| link |
Syntax : [exit] link [vnum] Example : north link 4001 This command works exactly like the dig command above, with one difference. It does not create the target room if it is not already there, instead it gives an error message. It is wiser to use this command over dig, since you will not accidently create a room you didn't want. Example : Standing in room 4000, we type 'north link 4001', this will result in an exit going north from room 4000 to room 4001 being created. On top of this, another exit, going south from room 4001 and ending in room 4000 will also be created (thus making it a two-way passage). |
| room |
Syntax : [exit] room [vnum] Example : north room 4001 This command will create a one way exit leading from the room being edited, to the room with the given vnum. No exit leading the opposite direction will be created. This is mostly used for mazes, and should be used with caution anywhere else. Example : Standing in room 4000, we type 'north room 4001', this will result in an exit going north from room 4000 to room 4001 being created. Nothing else will happen. |
Such exits can have several flags attached to them, like a door flag, and should there be a door flag, then adding flags like closed and locked makes sense.
| Command | Description |
| delete | '[exit] delete' will delete an exit going in that direction |
| remove | '[exit] remove [key|name|desc]' will remove one of those extras |
| key | '[exit] key [vnum]' will attach the key with the given vnum to the door |
| name | '[exit] name' will change the keyword for the door (default is just north/south/etc) |
| description | '[exit] description' will add the argument given to the description of the exit |
| door/closed/locked/pickproof/no_pass |
These commands will set the door status of an exit Without a door flag, the other flags won't have any affect, and the no_pass flag is used to disable the passdoor spell for that door. |
On Keywords
The keywords is the string that the room program will trigger on, there is one reserved keyword called '>enter<' which is used when a player enters the room. If you just want your program to trigger on one specific keyword, which must be said alone, then just use that keyword without any special tags (this makes sure noone accidently triggers your roomprogram while talking to people in the room). On the other hand, if you wish the roomprogram to trigger if certain words are used in a sentence, or just one or more of a list of words, then you can use a series of tags to create this effect. Here are a few examples to make things easier to understand.
| hello*hi
This will make the roomprogram trigger on ANY sentence that contains
either hello or hi (or even both). notice the '|'
in front of the words, this is what makes sure that only one of the keywords
is needed to trigger the program.
&hello*jobo
This will make the roomprogram trigger on ANY sentence that contains
both hello and jobo. The '& is the special
tag that makes the program require all the keywords listed.
The '*' is the wildcard, which means anything can be typed between the words, allowing the roomprogram to trigger on many different sentences.
Teleport Programs
Syntax : teleport [keyword] [flag] [value]
Syntax : teleport [keyword] [create|delete]
flags : output, choutput, target
output : This is the message given to everyone else in the room
choutput : This is the message given to the player that triggers the teleport
target : This is the vnum of the room which the player is teleport to
Here's an example on creating a new teleport trigger in a room
OLC> teleport hell create OLC> teleport hell output $n vanishes in a burning inferno OLC> teleport hell choutput You are engulfed by hellfire and transported elsewhere OLC> teleport hell target 4001Everyone in the room will see the message '$n vanishes in a burning inferno', where $n is the name of the player that triggers the teleport, and the player himself will get the message 'You are engulfed by hellfire and transported elsewhere'. The player is then transported to room 4001 (which would then be hell). The word that triggers this teleport is 'hell'.
Text Programs
Syntax : texttrig [keyword] output +desc
Syntax : texttrig [keyword] [create|delete|clear]
This is the only program that can use the same keyword as an already existing program, thus allowing it to be used as an add-on to other programs. Just create it, and add the output needed.
Example
OLC> texttrig hello create OLC> texttrig hello output The crowd greets you, and OLC> texttrig hello output a few people come up and shake your hand.Simple little program that will trigger on the keyword 'hello', and send the two lines above to the player.
Portal Programs
Syntax : portal [keyword] [flag] [value]
Syntax : portal [keyword] [create|delete]
flags : output, choutput, target
output : This is the message given to everyone else in the room
choutput : This is the message given to the player that triggers the portal
target : This is the vnum of the room which the portal leads to
Here's an example on creating a new portal trigger in a room
OLC> portal void create OLC> portal void output A shimmering portal appears in front of $n OLC> portal void choutput A shimmering portal appears in front of you. OLC> portal void target 2This simple program will make a portal appear in front of the player, which leads to room 2 (the void), when ever someone says 'void'.
Action Programs
Syntax : action [keyword] [flag] [value]
Syntax : action [keyword] [create|delete]
flags : action and mob
action : This is the action the mob will do.
mob : This is the vnum of the mob.
Here's an example on creating an action trigger in a room
OLC> action hello create OLC> action hello action say Howdy! OLC> action hello mob 6001If someone says 'hello' in this room, while a mob of vnum 6001 stands in the room, then it will reply with 'howdy!'. Any action can be made with action triggers, but beware what you do, it is easy to create very dangerous triggers
NOTE It is possible to get hold of the players name, and using it in the action. If you add '%s' to the action string, then it will be replaced with the players name. I doubt it will work if you use more than one %s, so don't.
Spell Programs
Syntax : spell [keyword] [flag] [value]
Syntax : spell [keyword] [create|delete]
flags : type
type : This is the name of the spell being cast.
Here's an example on creating an action trigger in a room
OLC> spell bless create OLC> spell bless type darkblessingIf someone says 'bless' in this room, they will get a darkblessing spell cast on them.
The Free Program Command
The command 'rprog' can be used to create programs from scratch - but there is no real help on using it, so you'll have to look through the code to see what you can create of programs.
Syntax: ed add [keyword]
Syntax: ed edit [keyword]
Syntax: ed delete [keyword]
Syntax: ed format [keyword]
Syntax: ed type [keyword] [type of trigger]
Syntax: ed action [keyword] [type of action]
Syntax: ed vnum [keyword] [vnum used for room/object/etc]
Syntax: ed buf1 [keyword] [message to player]
Syntax: ed buf2 [keyword] [message to room]
If no type is set, the extra description (ed) will just act as a normal extra description (usually used for signs, plaques, etc). But if one of the following types are set, players can use those commands to activate the action.
Types : pull, press, push, touch, none
Actions : teleport, object, spell, elevator, none
The teleport action will simple teleport the player, and the object action will create an object of type 'vnum' and give it to the player.
An example of creating a lever that can be pulled to transport a player to room 4001 would be something like this (in redit mode)
OLC> ed add 'a rusty lever' (then fill out the description of the lever) OLC> ed type lever pull OLC> ed action lever teleport OLC> ed vnum lever 4001 OLC> ed buf1 lever A trapdoor opens beneath your feet, and you drop into it OLC> ed buf2 lever A trapdoor opens beneath $n's feet, and $e drops into itThis should a player type 'pull lever' in that room, he will get the message 'A trapdoor opens beneath your feet, and you drop into it', and everyone else in the room will get the message 'A trapdoor opens beneath $n's feet, and $e drops into it', where $n is the name of the player, and $e is the sex (he/she/it) of the player.
| Flag | Description |
| Astral | This room is cut of from the rest of the world (do not set) |
| Dark | This room is dark by default |
| No_mob | Mobiles cannot walk into this room |
| Indoors | This room is inside, the sky cannot be reached (certain spells) |
| Private | No more than 2 players can be in this room |
| Safe | This room is safe from combat (do not set) |
| No_recall | It is not possible to recall in this room |
| No_otrans | It is not possible to use transporting devices in this room (not used) |
| No_teleport | The teleport spell will malfunction in this room |
| Total_darkness | This room has drow darkness by default (do not set) |
| Blade_barrier | This room has a blade barrier trap |
| Arena | This is a room in the arena (do not set) |
| Flaming | This room is on fire |
| Silence | It is not possible to use any channels in this room |
| No_command | It is not possible to use any commands in this room (do not set) |