/
lib/banish/
lib/d/
lib/doc/
lib/doc/domains/
lib/doc/efun/
lib/doc/examples/
lib/doc/examples/armour/
lib/doc/examples/contain/
lib/doc/examples/food/
lib/doc/examples/magic/
lib/doc/examples/monster/
lib/doc/examples/room/
lib/doc/examples/weapons/
lib/function/
lib/include/
lib/include/fn_specs/
lib/include/skills/
lib/info/
lib/inherit/base/
lib/log/
lib/manuals/312/
lib/news/
lib/obj/party/
lib/objects/components/
lib/open/
lib/open/library/
lib/open/party/
lib/players/
lib/players/zilanthius/
lib/room/
lib/room/city/arena/
lib/room/city/creator/
lib/room/city/garden/monst/
lib/room/city/obj/
lib/room/city/shop/
lib/room/death/
lib/room/registry/
lib/secure/
lib/secure/UDP_CMD_DIR/
lib/skills/
lib/skills/fighter/
lib/skills/thief/
lib/usr/
lib/usr/creators/
lib/usr/players/
^#^
refresh^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: refresh
        Usuage: refresh
                refresh <player>

   Description: Refresh replaces the player object with a new one.  This
                is useful if any of the player objects have been
                updated, and you do not wish to log out, and back into
                the game.  Only creators of security level SEC5 (50) can
                refresh other player characters.

Related topics: none.
 
^#^
reset^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: reset
        Usuage: reset <item(s)>

   Description: This command allows you to call a reset(1) in any
          item(s).  The reset() function in an item is normally
          called every 2 hours to reset monsters/rooms.  

Related topics: Reset.
 
^#^
Reset^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: Reset
        Usuage: Reset <item(s)>

   Description: This command allows you to call a reset(0) in any
          item(s).  The reset() function in an item is normally
          called every 2 hours to reset monsters/rooms.  In compat
          mode reset(0) will reset the items default startup settings.

Related topics: reset.
 
^#^
review^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: review
        Usuage: review

   Description: This is a review of the creators messages and titles.

Related topics: align, mhome, mclone, minvis, mtrans, mout, mmin, mmout,
                edtitle, review, title, pretitle, mdest.
 
^#^
rlog^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: rlog
        Usuage: rlog

   Description: rlog removes your error log file.

Related topics: log, main, debug.
 
^#^
rm^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: rm
        Usuage: rm <file(s)>

   Description: This command allows you to remove file(s).  Files can
          use the token '*' as a wildcard.  If the destination
          directory/file is not given, the creator's default
          directory is used.  rm will prompt the creator before
          removing the file.

Related topics: Rm, mkdir, rmdir.
 
^#^
Rm^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: Rm
        Usuage: Rm <file(s)>

   Description: This command allows you to remove file(s).  Files can
                use the token '*' as a wildcard.  If the destination
                directory/file is not given, the creator's default
                directory is used.  Rm will not prompt the creator
                before removing the file.

Related topics: rm, mkdir, rmdir.
 
^#^
rmdir^#^
SUBTOPIC-creator^#^
                    -=[ Help ]=-

       command: rmdir
        Usuage: rmdir <directory>

   Description: This removes a directory.  The directory must be empty
                or command fails.  Directory can be any valid path.

Related topics: path.
 
^#^
raise dead^#^
SUBTOPIC-cleric^#^
 ________________________________________________________________
()_______________________________________________________________)
 | Prayer: Raise Dead           Sphere: Necromancy               |
 | Level:  18                     Cost: 18                       |
 | Component: none.              Usage: raise dead who           |
 | Description:                                                  |
 |                                                               |               
 | This prayer will allow the cleric to raise a dead person.     |
 | The ghost or the corpse of the person, must be present. Any   |
 | person raised by a raise dead will not lose as many stats,    |
 | and the cleric gains experience.                              |
 |                                                               |
 |_______________________________________________________________|
()_______________________________________________________________)
^#^
remove curse^#^
SUBTOPIC-cleric^#^
 ________________________________________________________________
()_______________________________________________________________)
 | Prayer: Remove Curse         Sphere: Combat                   |
 | Level:  2                      Cost: 2                        |
 | Component:  None.             Usage: remove curse who         |
 | Description:                                                  |
 |                                                               |               
 | The prayer will remove a curse off the recipient.             |
 |                                                               |
 |                                                               |
 |                                                               |
 |                                                               |
 |_______________________________________________________________|
()_______________________________________________________________)
^#^
resist^#^
SUBTOPIC-cleric^#^
 ________________________________________________________________
()_______________________________________________________________)
 | Prayer: Resist Spells        Sphere: Protection               |
 | Level:  9                      Cost: 9                        |
 | Component: shield and armour  Usage: resist <type> who        |
 | Description:                                                  |
 |                                                               |            
 | This prayer will allow the cleric to resist spell effects, of |
 | a specific element type.  Element types include: light,       |
 | darkness, death, draining, earth, air, fire, water, cold,     |
 | acid, lightning, poison, disease, fear, and charm. The spell  |
 | lasts for about 1 minute for every two levels of cleric.      |
 |_______________________________________________________________|
()_______________________________________________________________)
^#^
restore^#^
SUBTOPIC-cleric^#^
 _________________________________________________________
()________________________________________________________)
 | Prayer: Restore          Sphere: Necromancy           |
 | Level:  21                 Cost: 21                   |
 | Component:  None.         Usage: restore who          |
 | Description:                                          |
 |                                                       |
 | This prayer will heal the life essence of the prayer's|
 | target. It will restore one level, that has been      |
 | level drained by some dread beast, or spell.          |
 |                                                       |
 |                                                       |
 |_______________________________________________________|
()________________________________________________________)
^#^
resurrect^#^
SUBTOPIC-cleric^#^
 ________________________________________________________________
()_______________________________________________________________)
 | Prayer: Resurrect            Sphere: Necromancy               |
 | Level:  35                     Cost: 35                       |
 | Component: none.              Usage: resurrect who            |
 | Description:                                                  |
 |                                                               |               
 | This prayer will allow the cleric to resurrect a dead         |
 | person. The dead person is brought to the presence of the     |
 | cleric. They will not lose as many stats, be fully healed,    |
 | and the cleric gains experience.                              |
 |                                                               |
 |_______________________________________________________________|
()_______________________________________________________________)
^#^
repair^#^
SUBTOPIC-fighter^#^

  Command: repair <armour name>

  This skills allows you to repair all kinds of armour types. See also
  'help fighter' for more details.

^#^
resist magic^#^
SUBTOPIC-mage^#^
     ______________________________  ______________________________
  __/                              \/                              \__
 | /|                              |:                              |:||
 ||:| Spell:  Resist Magic         |:  Description:                |:||
 ||:| School: Abjuration           |:                              |:||
 ||:| Cost:   18                   |:  This spell gives the caster |:||
 ||:| Level:  18                   |:  a small resistance to magic.|:||
 ||:| Usage:  resist magic         |:                              |:||
 ||:|                              |:                              |:||
 ||:| Related Spells:              |:                              |:||
 ||:| None.                        |:                              |:||
 ||:|                              |:                              |:||
 ||:|_____________________________ |: _____________________________|:||
 ||/______________________________\|:/______________________________\||
 |_______________________________      _______________________________|
                                 '----`
^#^
rope trick^#^
SUBTOPIC-mage^#^
     ______________________________  ______________________________
  __/                              \/                              \__
 | /|                              |:                              |:||
 ||:| Spell:  Rope Trick           |:  Description:                |:||
 ||:| School: Alteration           |:                              |:||
 ||:| Cost:   4                    |:  This spell makes an inter-  |:||
 ||:| Level:  2                    |:  -dimensional space that can |:||
 ||:| Usage:  rope trick           |:  be climbed into. The rope   |:||
 ||:|                              |:  can be raised and lowered to|:||
 ||:| Related Spells:              |:  close the space.            |:||
 ||:| None.                        |:                              |:||
 ||:|                              |:                              |:||
 ||:|_____________________________ |: _____________________________|:||
 ||/______________________________\|:/______________________________\||
 |_______________________________      _______________________________|
                                 '----`
^#^
remove^#^
SUBTOPIC-armour^#^
                    -=[ Help ]=-

       command: remove
        Usuage: remove <item>

   Description: Stop wearing armour or clothing.

Related topics: drop, wear, wield, classes (man).
 
^#^
random^#^
SUBTOPIC-efun^#^
EFUN random()

SYNOPSIS
     int random(int n)

DESCRIPTION
     Return a number in the random range [0 .. n-1].  It will
     fail if the number is zero or a negative number.

EXAMPLE

void do_damage(object ob) {
  ob->hit_player(random(10)); /* do 0 - 9 hit points of damage */
}

SEE ALSO
^#^
read_bytes^#^
SUBTOPIC-efun^#^
EFUN read_bytes()

SYNOPSIS
     string read_bytes(string path, int start, int length);

DESCRIPTION
     This function reads  'length'  bytes  beginning  at  byte  #
     'start' in the file named 'path'.  The bytes are returned as
     a string.  Note that (start + length) must not be  past  the
     end of the file or else read_bytes will fail.  If the second
     and  third  arguments  are  omitted,  the  entire  file   is
     returned.

SEE ALSO

/* from help.c */

#define MAX_BYTE_READ 8192 /* string lengths are limited to 8192 char */

/* convert help data files into help data array */

string *load_help_file(string topic_file) {
  string help_data, *tmp_data, *topic_data;
  string subtopic;
  int fp, fp_end;

  for(topic_data = ({}), fp = 0; fp < file_size(topic_file); fp += fp_end) { 
    fp_end = MAX_READ_BYTE;
    if(fp_end + fp > file_size(topic_file)) fp_end = file_size(topic_file)-fp;
    if(!(help_data = read_bytes(topic_file,fp,fp_end))) {
      help_error(READ_ERROR);
      return ({});
    }
#ifdef OLD_EXPLODE
    tmp_data = explode(help_data + DELIMITER, DELIMITER);
#else
    tmp_data = explode(help_data, DELIMITER);
#endif /* OLD_EXPLODE */
    if(sizeof(tmp_data) < 2 && sizeof(topic_data) < 2) {
      help_error(CORRUPT);
      return ({});
    }
    if(sizeof(topic_data) > 1) {
      topic_data = topic_data[0..(sizeof(topic_data)-2)]
                 + ({ topic_data[sizeof(topic_data)-1] + tmp_data[0], });
    }
    if(sizeof(tmp_data) > 1) topic_data += tmp_data[1..(sizeof(tmp_data)-1)];
   
#ifdef MSDOS
#ifdef OLD_EXPLODE
    fp_end += sizeof(explode(help_data +"\n","\n"))-1;
#else
    fp_end += sizeof(explode(help_data,"\n"))-1;
#endif /* OLD_EXPLODE */
#endif /* MSDOS */
  }
  return topic_data;
}

SEE ALSO
     read_file(), write_bytes(), write_file().
^#^
read_file^#^
SUBTOPIC-efun^#^
EFUN read_file()

SYNOPSIS
     string read_file(string file,
                   int start_line,
              int number_of_lines);

DESCRIPTION
     Read a line of text from a file into a string.   The  second
     and  third  arguments are optional.  If only the first argu-
     ment is  specified,  the  entire  file  is  returned  (as  a
     string).

     The start_line is the line number of the line  you  wish  to
     read.   This  routine  will return 0 if you try to read past
     the end of the file, or if you try to read from  a  nonposi-
     tive line.

     NOTE: This function works poorly on MSDOS and it does not
     read control characters too well so I try to avoid using it
     unless necessary.  Try using read_bytes().

EXAMPLE

/* simul efun cat() function */

varargs string cat(string file, int start, int block) {
  string str;

  if(!file) return 0;
  if(!block) block = 45;
  if(!(str = read_file(file,start,block))) {
    str = read_file(file,start);
  }
  if(str) write(str);
  return str;
}


SEE ALSO
     read_bytes(), write_bytes(), write_file(), log_file().
^#^
regexp^#^
SUBTOPIC-efun^#^
EFUN regexp()

SYNOPSIS
     string *regexp(string *lines, string pattern);

DESCRIPTION
     When presented with an array of lines of test and a  regular
     expression,  regexp()  returns  an  array  containing those
     lines which match  the  pattern  specified  by  the  regular
     expression.

REGULAR EXPRESSION SYNTAX
     A regular expression is zero or more branches, separated  by
     `|'.  It matches anything that matches one of the branches.

     A branch is zero or more pieces, concatenated.  It matches a
     match  for  the  first,  followed by a match for the second,
     etc.

     A piece is an atom possibly followed by `*',  `+',  or  `?'.
     An  atom  followed  by  `*'  matches a sequence of 0 or more
     matches of the atom.  An atom  followed  by  `+'  matches  a
     sequence of 1 or more matches of the atom.  An atom followed
     by `?' matches a match of the atom, or the null string.

     An atom is a regular expression in parentheses  (matching  a
     match  for the regular expression), a range (see below), `.'
     (matching any single  character),  `^'  (matching  the  null
     string  at the beginning of the input string), `$' (matching
     the null string at the end of the input string), a `\'  fol-
     lowed  by a single character (matching that character), or a
     single character with no other significance  (matching  that
     character).

     A range is a sequence of characters enclosed  in  `[]'.   It
     normally matches any single character from the sequence.  If
     the sequence begins with `^', it matches any single  charac-
     ter not from the rest of the sequence.  If two characters in
     the sequence are separated by `-', this is shorthand for the
     full  list  of  ASCII  characters between them (e.g. `[0-9]'
     matches any decimal digit).  To include a literal `]' in the
     sequence,  make it the first character (following a possible
     `^').  To include a literal `-', make it the first  or  last
     character.

AMBIGUITY
     If a regular expression could match two different  parts  of
     the  input string, it will match the one which begins earli-
     est.  If both begin in the same place  but  match  different
     lengths,  or  match  the same length in different ways, life
     gets messier, as follows.

     In general, the possibilities in a list of branches are con-
     sidered  in  left-to-right order, the possibilities for `*',
     `+', and `?' are considered longest-first, nested constructs
     are  considered from the outermost in, and concatenated con-
     structs are considered leftmost-first.  The match that  will
     be  chosen  is the one that uses the earliest possibility in
     the first choice that has to be made.  If there is more than
     one choice, the next will be made in the same manner (earli-
     est possibility)  subject  to  the  decision  on  the  first
     choice.  And so forth.

     For example, `(ab|a)b*c' could match `abc'  in  one  of  two
     ways.   The first choice is between `ab' and `a'; since `ab'
     is earlier, and does lead to a successful overall match,  it
     is  chosen.   Since  the `b' is already spoken for, the `b*'
     must match its last possibility-the  empty  string-since  it
     must respect the earlier choice.

     In the particular case where no `|'s are present  and  there
     is  only  one  `*',  `+', or `?', the net effect is that the
     longest possible match will be chosen.  So `ab*',  presented
     with  `xabbbby',  will match `abbbb'.  Note that if `ab*' is
     tried against `xabyabbbz', it will  match  `ab'  just  after
     `x', due to the begins-earliest rule.  (In effect, the deci-
     sion on where to start the match is the first choice  to  be
     made,  hence subsequent choices must respect it even if this
     leads them to less-preferred alternatives.)
^#^
remove_call_out^#^
SUBTOPIC-efun^#^
EFUN remove_call_out()

SYNOPSIS
     int remove_call_out(string fun)

DESCRIPTION
     Remove next pending call out for function <fun> in this
     object.  The time left is returned. If -1 is returned 
     there was no call out pending to this function.

EXAMPLE

void adj_time_out(int t) {
  t += remove_call_out("time_out");
  call_out("time_out", t);
}

SEE ALSO
     call_out(), find_call_out().
^#^
restore_object^#^
SUBTOPIC-efun^#^
EFUN  restore_object()

SYNOPSIS
     int restore_object(string name)

DESCRIPTION
     Restore values of variables for this object  from  file
     `name'.  The <name> must NOT be prepended with a "/".

EXAMPLE

string guild_member; /* name of guild member */

status restore_guild_obj() {
  if(guild_member) {
    if(restore_object("players/zilanthius/guild/saves/"+ guild_member)) {
      return 1;
    }
    else {
      write("Your Guild membership has been lost!\n");
    }
  }
  return 0;
}


SEE ALSO
     save_object().

^#^
rtime^#^
SUBTOPIC-efun^#^
EFUN rtime()   

SYNOPSYS
     int rtime(string str)    

DESCRIPTION
     This is a simul-efun function.
     This function converts a ctime() string to a time() int.  
     The ctime() string has the format string,
          "<day> <month> <date> <hour>:<min>:<sec> <year>"

SEE ALSO
     time(), ctime()

^#^
raise_error^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void raise_error(string arg)

DESCRIPTION

	Abort execution. If the current program execution was
	initiated by catch(), that catch expression will return arg as
	error code, else the arg will printed as error message.	 This
	is very similar to throw(), but while throw() is intended to
	be called inside catch(), raise_error() can be called
	anywhere.

SEE ALSO
	catch(E), throw(E)
^#^
referencep^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	int referencep(mixed arg)

DESCRIPTION
	returns true if arg was apssed by refrence to the current
	function, instead of the usual call-by-value.

SEE ALSO
	references(LPC)
^#^
regexplode^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	string *regexplode (string text, string pattern)

DESCRIPTION
	This function is similar to explode but accepts a regular
	expression as delimiter. Every second part of the returned
	array is a delimiter.

SEE ALSO
	explode(E), regexp(E)




^#^
remove_action^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	int remove_action(string verb, object ob)

DESCRIPTION
	Removes the action for the optional object, default is for
	this_player().

SEE ALSO
	add_action(), move_object()
^#^
remove_interactive^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void remove_nteractive(object ob)

DESCRIPTION
	Close the connection to the interactive object ob.

SEE ALSO
	connect(M), lgon(M), disconnect(M)
^#^
rename^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	int rename(string from, string to)

DESCRIPTION

	The efun rename() will move from to the new name to. If from
	is a file, then to may be either a file or a directory. If
	from is a directory, then to has to be a directory. If to
	exists and is a directory, then from will be placed in that
	directory and keep its original name.
	
	You must have write permission for from to rename the file.
	
	It is only possible to change name of a directory within a
	directory on machines running System V, i.e. it is not
	possible to move to another directory. It is not possible to
	move a directory across filesystems on any system.
	
	On successfull completion rename() will return 0. If any error
	occurs 1 is returned.

EXAMPLE
	rename("/players/wizard/obj.c", "/players/wizard/newobj.c");

SEE ALSO
	mkdir(E), rmdir(E), rm(E)
^#^
rename_object^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void rename_object (object ob, string new_name);

DESCRIPTION
	Give the current object a new file_name. Causes a privilege
	violation. The new name must not contain a # character, except
	at the end, to avoid confusion with clone numbers.

SEE ALSO
	creator(E), file_name(E)
^#^
replace_program^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void replace_program(string program)

DESCRIPTION
	Substitutes a program with an inherited one. This is useful if
	you consider the performance and memory consumption of the
	driver. A program which doesn't need any additional variables
	and functions (except during creation) can call
	replace_program() to increase the function-cache hit-rate of
	the driver which decreases with the number of programs in the
	system.	 Rooms are a good example for the application of this
	function, as many rooms just consist of an inherit statement
	and the configure function. Any object can call
	replace_program() but looses all extra variables and functions
	which are not defined by the inherited program.
^#^
rusage^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	int *rusage(void)

DESCRIPTION
	Return an array with current system resource usage statistics,
	as returned by the getrusage(2) of Unix.
	namely: utime, stime, maxrss, rus.ru_ixrss, rus.ru_idrss,
		rus.ru_isrss, rus.ru_minflt, rus.ru_majflt, rus.ru_nswap,
		rus.ru_inblock, rus.ru_oublock, rus.ru_msgsnd,
		rus.ru_msgrcv, rus.ru_nsignals, rus.ru_nvcsw,
		rus.ru_nivcsw

	This function is optional.

SEE ALSO
	sys/resource.h (Unix)
^#^
reactivate_destructed_master^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void reactivate_destructed_master(int flag)

DESCRIPTION
	This function is called in an already destructed master object
	if no new master object could be loaded. flag will be 1 if the
	old master object could be reclaimed form the list of objects
	that were marked for destruction but not yet terminated. If
	flag is 0, all variables of the object have been set to 0 and
	must be re-initialized.

	After this function, inaugurate_master() will be applied again.

SEE ALSO
	destruct(E), inaugurate_master(M), master(M)
^#^
receive_imp^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void receive_imp(string host, string msg)

DESCRIPTION
	Handle a received IMP message.

	This function is called for every message received on the IMP
	port. Usually it is passed on to some object that handles
	inter mud communications.

SEE ALSO
	send_imp(E), query_imp_port(E)
^#^
remove_player^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void remove_player(object ob)

DESCRIPTION
	Remove an interactive user object ob from the system. This
	function is called by the interpreter to expell remaining
	users from the system on shutdown in a polite way. If this
	functions fails to quit/destruct the user, he will be
	destructed the hard way by the interpreter.

	This function must not cause runtime errors.

SEE ALSO
	remove_interactive(E), slow_shut_down(M)
^#^
retrieve_ed_setup^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	int retrieve_ed_setup(object command_giver)

DESCRIPTION
	Should return an integer that gives the ed setup flags for the
	user that is denoted by command_giver.

SEE ALSO
	save_ed_setup(M)
^#^
runtime_error^#^
SUBTOPIC-amylaar^#^
SYNOPSIS
	void runtime_error(string err, string prg, string curobj, int line)

DESCRIPTION
	This function has to announce a runtime error to the active
	user. If the user has enough privileges, it might give him the
	full error message together with the source line. Else it
	should issue a decent message ("Your sensitive mind notices a
	wrongness in the fabric of space").

	Note that prg denotes the program actually executed (which
	might be an inherited one) whereas curobj is just the
	offending object.

SEE ALSO
	log_error(M), heart_beat_error(M), raise_error(E)