Setting up 3.5.0 as trunk

This commit is contained in:
Rumble 2006-12-19 22:56:18 +00:00
parent 0ddbd8b56e
commit 99e3aa4d8b
1336 changed files with 514917 additions and 0 deletions

201
ChangeLog Normal file
View file

@ -0,0 +1,201 @@
CircleMUD 3.5 is currently being developed by The Builder Academy. If you need
any help stop by: builderacademy.net 9091
Unfortunately this changelog is far from complete since TBA has not kept a
record of every change in the last 4 years:
- Updated README, FAQ, news.
- Removed all CIRCLEMUD_VERSION checks.
- Renamed _DEAF to _NOSHOUT.
- Added greetings, ihelp, wizlist, and immlist to tedit.
- Changed all usage of dscr to desc for standardization.
- Increased PLR_DESC_LENGTH from 240 to 512.
- Renamed EXDSCR_LENGTH and CON_EXDESC to PLR_DESC_LENGTH and CON_PLR_DESC.
- Moved lastlist (lists entire last file) to last *.
- Removed edit command.
- Fixed everything so MUD would load error free in mini mode.
- Moved cheat to return. If not in a mob typing return will advance you to the
level specified in do_cheat. IDNUM 1 advanced to IMPL
- Changed OLC to default to off, again.
- Added Ascii Pfiles V3.0.1
- Added pagelength (needs to be moved to toggle).
- Update to list_obj_to_char for object stacking and iedit objects.
- Increased MAX_STRING_LENGTH to 49152.
- Moved poofin/out to set self poofin/out.
- Removed poofs command, poofs can be viewed under stat or score.
- Isname updates.
- Added mob/obj delete.
- Update to delete_room to remove the room from the htree.
- Counts colorcodes now when formatting in the text editor.
- Update to create_new_zone to correct buildwalk issues after a new zone is created.
- Added zpurge, checkload and zcheck Immortal commands.
- Doubled MAX_INPUT_LENGTH to 512.
- Usage: attach { mtr | otr | wtr } { trigger } { name } [ location ]
- Usage: detach [ mob | object | room ] { target } { trigger | 'all' }
- Added show zone <name> option.
- Added look around command.
- Fixed hidden object stacking.
- Added vnum room/trig options to search by name.
- Added hedit, helpcheck and hindex. Plus seperate imm/mort screens.
- Added hidden mobs. medit-l-desc beginnin with a period (.) can only be seen
with holylight.
- Update to zreset and do_links.
- Added paragraph option in the text editor /f 4-8 to make a para lines 4-8.
- Object stacking fix, only stack if they are the same vnum AND short descr.
- Update to do_hit to prevent crash if the player is AFF_CHARM somehow without
a master.
- Added Did you mean? to non-existing helpfile query.
- Added TBA's donated zones to stock.
- DG Scripts 1.0.14.
- Set OLC options #, aedit, hedit, off.
- Updates to parse_object, oedit_disp_perm_menu and oedit_parse to remove the
ability of setting AFF_CHARM as on object perm affect. Setting this on a
player (without having a clearly defined MASTER) causes a crash.
- Added social gossip bug fix in do_gen_comm to give commands priority.
- Did away with the #ifndef STOCK_CIRCLE tags.
- Removed some unused code from cedit_creation.
- Update MAX_STRING_SIZE.
- Update to do_gen_comm to make gemote and gossip behave the same for socials.
- Update to do_gen_comm to remove SYSERRs generated while switched into mobs.
- Update to SPECIAL(shop_keeer) so that MSG_NO_STEAL_HERE is sent TO_ROOM as
well as TO_CHAR.
- Update to zedit_parse.
- Expanded zones to unsigned int. NOWHERE/corpse is now 65535, not -1
- Added PRF_AFK.
- Updated load_zones to fix reported bug with behavior of the 'Set a global
variable' zedit command.
- Replaced calls for ch|vict|obj->in_room to IN_ROOM(ch|vict|obj). Use of
the macro is better.
- Autosave everything except Buildwalk, dig, and rdelete.
- Corrected minor typo in parse_class which is part of stock Circle 3.1.
- Updates to free_room_strings, free_room, and free_srings.
- Change to free_strings() in oasis_delete.c related to freeing extra descs.
- Also made changes to copyover/saved room code for more logical behavior.
- Removed @ as save character in the text editor since it is a color code.
- Update to do_dig.
- Change to remove_unique_id to plug mem leek.
- Changes in dg_comm.c!
- Added look_in_obj fix which was causing conflicts between room keywords and
object keywords.
- Changed to unsigned int to double zones.
- Added some missing dg_scripts related logic to save_char.
- Added do_gemote command which allows you to emote over the gossip channel.
- Changed the color code character from '&' to '@'.
- Fixed color bleeding in all the lists.
- Added IMM command peace to stop all fighting in that room.
- Fix for LOADROOM and copyover conflicts.
- Changed copyover to save room player was in.
- Made an option so shopkeepers never go broke.
- Added Welcor's manual_color update with numerous updates.
- replaced numerous special procedures with triggers (still some to go).
- Removed leftover debug message from dg_mobcmd.c
- Removed duplicate code in zedit.c related to who can do zone edits.
- Corrected logic in object get code which was out of order.
- Fix to read_mobile in db.c, was causing mobs to be assigned triggers twice.
- Fixed /fi to not add two spaces after quoted "text."
- Patched in Oasis 2.0.6
- Set OLC to off on immortal advance
- Changes in enter_player_game to use calls from CONFIG_ defs used by CEDIT.
- Fixes to redit.c for ROOM FLAGS.
- Added objstacking.
- Changed valid_dg_target to allow everyone to trigger except IMPL
- Change to save_char related to problems with the copyover function.
- Fixed buildwalk from continuing into next zone.
- Added Aedit, Astat, and over 100 new socials.
- Replaced all ch->in_room calls with IN_ROOM(ch) for general cleanliness.
- Changed default olc to be -1 not 0.
- Wiznet is now visible in OLC.
- Added hidden objs. oedit-l-desc beginnin with a period (.) can only be seen
with holylight.
- Fixed tilde in room desc crash (and other world files).
- Fixed socials taking precedence over commands and not allowing abbrevs.
- Changed do_simple_move so players couldn't find hidden exits by trying to
walk into them.
- Fixed shopkeepers so they could sell just one item.
- Fixed oedit where it did not recognize any change when modifying just weight
or values.
- Some minor changes to redit in the way it interacts with door flags.
- Added online dictionary. Tell m-w <word>.
- Bugfix for enchant_weapon spell.
- Added LVL_BUILDER.
- Bugfix for locate_object spell.
- Fixed all the OLC crashes from large numbers. Weight, cost, max contain, exp,
gold, and fountain contains to name a few.
- Save room on copyover reboot.
- Dg_scripts update to calls in spell_recall and spell_teleport.
- Fixed mhunt.
- Made all imm commands requiring zone # default to current zone if no arg.
- Add formatting for trigedit. /f indents to make things easier to read.
- Zero level mobs are set to level 1 in db.c.
- Added links command.
- Fixed social bodyparts.
- Added mail saving.
- Fixed Enter spell (0 for none): having 0 spell causes error, should be -1.
- Added /r/n to "gate is closed from the other side" and "cool immortal."
- Fixed variable file not deleting at player deletion.
- Fixed the 2 shopkeepers one room crash.
- Fixed colorcodes preventing capitalization.
- Fixed /f, /fi creating an extra line.
- Made object values reset when type is changed.
- Added vdelete [*].
- Fixed where so players in OLC would be listed.
- The weapon dice check now works.
- All olc files uses the can_edit_zone() function where appropriate.
- Added OLC permissions to attach and detach.
- Made it possible to use one shopkeeper for more than one shop.
- Restore skills and spells on advancement.
- Added context help system, lib/text/contexthelp.
- Fixed sedit crash caused by deleting room that where shops.
- Added don't parse character \, use %% for %.
- Fixed rdelete crash from deleting a room that is linked to itself.
- Fixed exits to default to -1 instead of 0 when just making an edit desc.
- Added a warning if a NOTE has an extra desc.
- Fixed practice to show skills with 0 practices remaining.
- Added file <option> to view logs.
- Added several new names to the xnames file.
- Added copyover.
- Improved the last command.
- Added switched people to the who list.
- Added zedit commands to stat room.
- Added triggers and shops to show stat.
- Added more info to all the vstat options.
- Added invis level at login to prevent greeting imms who are hiding.
- Added delete option to extra desc's. Just /c.
- Added history command to show last 100 comms.
- Added an export command that would QQ and compress a zone.
- Numerous new logs for force, buildwalk, delete, snoop, etc.
- Added vnum and TRIG tags to everything, roomflags toggles it on/off.
- Added keyword seperation when statting extra desc. [desk] [notes papers]
- Added buildwalk and dig.
Release history:
Version 3.5 release: December 2006
Version 3.1 (yes, no beta pl): November 18, 2002
Version 3.00 beta pl22 release: October 4, 2002
Version 3.00 beta pl21 release: April 15, 2002
Version 3.00 beta pl20 release: January 15, 2002
Version 3.00 beta pl19 release: August 14, 2001
Version 3.00 beta pl18 release: March 18, 2001
Version 3.00 beta pl17 release: January 23, 2000
Version 3.00 beta pl16 release: August 30, 1999
Version 3.00 beta pl15 release: March 16, 1999
Version 3.00 beta pl14 release: July 3, 1998
Version 3.00 beta pl13a release: June 4, 1998
Version 3.00 beta pl13 release: June 1, 1998
Version 3.00 beta pl12 release: October 29, 1997
Version 3.00 beta pl11 release: April 14, 1996
Version 3.00 beta pl10 release: March 11, 1996
Version 3.00 beta pl9 release: February 6, 1996
Version 3.00 beta pl8 release: May 23, 1995
Version 3.00 beta pl7 release: March 9, 1995
Version 3.00 beta pl6 release: March 6, 1995
Version 3.00 beta pl5 release: February 23, 1995
Version 3.00 beta pl4 release: September 28, 1994
Version 3.00 beta pl1-3, internal releases for beta-testers.
Version 3.00 alpha: Ran on net for testing. Code not released.
Version 2.20 release: November 17, 1993
Version 2.11 release: September 19, 1993
Version 2.10 release: September 1, 1993
Version 2.02 release: Late August 1993
Version 2.01 release: Early August 1993
Version 2.00 release: July 16, 1993 (Initial public release)

1138
FAQ Normal file

File diff suppressed because it is too large Load diff

130
README Normal file
View file

@ -0,0 +1,130 @@
CircleMUD README File
---------------------
Updated: Dec 2006
Welcome to CircleMUD 3.5! I hope you enjoy your stay.
Current development of CircleMUD is being done by the Builder Academy. All
requests for help or bugs should be reported there: builderacademy.net 9091.
Information about CircleMUD can be found at the CircleMUD Home Page and FTP:
http://www.circlemud.org
ftp://ftp.circlemud.org
Both of these sights are outdated and no longer maintained. Hopefully this will
change soon. Until then the latest information and downloads can be found at
the CWG forums and download section:
http://cwg.lazuras.org/modules.php?name=Forums
Downloading CircleMUD
---------------------
You can find the current version of CircleMUD at the following URL:
http://cwg.lazuras.org/modules.php?name=Downloads
Compiling CircleMUD
-------------------
CircleMUD compiles under a large number of operating systems; instructions
for compiling on each platform is can be found in the file doc/README.<system>
AMIGA - If you are using an Amiga running AmigaDOS. (If you're running
NetBSD or Linux on an Amiga, use README.UNIX instead.)
ARC - If you are using an Acorn running RiscOS.
BORLAND - For those using Borland under Windows.
CYGWIN - If you are using Cygwin shell in Windows (Updated 12/2006).
MSVC# - If you are using MSVC.
OS2 - If you are using OS/2 Warp Connect v3.0 or OS/2 v2.x.
UNIX - If you have any type UNIX system, including Linux, MkLinux, Ultrix,
HP/UX, Solaris, SunOS, IRIX, FreeBSD, OpenBSD, NetBSD, BSDi,
Macintosh OS X, etc.
VMS - If you happen to be on OpenVMS.
WATCOM - If using WATCOM under Windows.
WIN - If you are using Windows.
If you are interested in porting CircleMUD to a new platform, see the
file doc/porting.txt for some tips.
For a small, private MUD, or a MUD used only for testing and development,
about 10 megs of disk space and 16 megs of memory should be sufficient.
For large, public MUDs with a large player base, 30 megs to 50 megs of
disk space and at least 32 megs of memory are recommended. Free memory
is much more important than CPU speed; CircleMUD uses virtually no CPU
time.
Other Documentation
-------------------
If this information isn't enough to get you running, there's a lot more
information available. All documentation (other than this file) is in
the "doc" directory. Most of the files in the /doc directory are old and
have not been updated in years, but they still contain alot of pertinent
information.
"The CircleMUD Administrator's Guide" (admin.pdf)
A good place to start after reading this README file, admin.txt gives
an overall description of how Circle works, how to get it to compile and
run for the first time, information about customizing and configuration
options and command-line arguments, and tips on maintenance and day-to-day
MUD administration.
"The CircleMUD Builder's Manual" (building.pdf)
For the builders in your group, this documents the world-file format
and describes how to create new rooms, objects, and monsters. Also, it
describes how to add new areas to the MUD and gives some tips about game
balance and world-file debugging.
"The CircleMUD Coder's Manual" (coding.pdf)
For the coders in your group, a technical reference describing some of
the more basic coding tasks such as how to add new commands, spells,
skills, socials, and classes. Note that it assumes the reader already has
an excellent knowledge of C; the manual is not a C tutorial.
"The CircleMUD SYSERR List" (syserr.txt, syserr.ps)
A list of SYSERR messages CircleMUD can generate, and a description of what
can cause each problem and how to solve it. An excellent guide for
troubleshooting and area debugging.
Getting Help
------------
If you have strange problems -- and you can't figure out the answer by reading
the documentation -- fear not, there are many other resources available.
http://cwg.lazuras.org/
http://groups.yahoo.com/group/circle-newbies/
http://post.queensu.ca/cgi-bin/listserv/wa?SUBED1=circle&A=1
No matter how you choose to get help, make sure to always include the
following information:
-- The exact version of CircleMUD you're using (e.g., "CircleMUD 3.5",
"CircleMUD 3.0 beta patchlevel 21", etc.).
-- The EXACT text of any error messages, compiler errors, link errors, or any
other errors you're getting.
-- The exact type of hardware, operating system name and version, and
compiler you're using.
-- A description of ANY changes you've made, no matter how small, that might
have contributed to the error.
-- If you are having trouble getting Circle running for the very first time,
also be sure to include the output of 'configure' and the file
'config.log'.
You may also stop by the Builder Academy at anytime. builderacademy.net 9091
--Rumble

174
autorun Executable file
View file

@ -0,0 +1,174 @@
#!/bin/sh
#
# CircleMUD 3.0 autorun script
# Contributions by Fred Merkel, Stuart Lamble, and Jeremy Elson
# New log rotating code contributed by Peter Ajamian
# Copyright (c) 1996 The Trustees of The Johns Hopkins University
# All Rights Reserved
# See license.doc for more information
#
#############################################################################
#
# This script can be used to run CircleMUD over and over again (i.e., have it
# automatically reboot if it crashes). It will run the game, and copy some
# of the more useful information from the system logs to the 'log' directory
# for safe keeping.
#
# You can control the operation of this script by creating and deleting files
# in Circle's root directory, either manually or by using the 'shutdown'
# command from within the MUD.
#
# Creating a file called .fastboot makes the script wait only 5 seconds
# between reboot attempts instead of the usual 60. If you want a quick
# reboot, use the "shutdown reboot" command from within the MUD.
#
# Creating a file called .killscript makes the script terminate (i.e., stop
# rebooting the MUD). If you want to shut down the MUD and make it stay
# shut down, use the "shutdown die" command from within the MUD.
#
# Finally, if a file called pause exists, the script will not reboot the MUD
# again until pause is removed. This is useful if you want to turn the MUD
# off for a couple of minutes and then bring it back up without killing the
# script. Type "shutdown pause" from within the MUD to activate this feature.
#
ulimit -c unlimited
# The port on which to run the MUD
PORT=4000
# Default flags to pass to the MUD server (see admin.txt for a description
# of all flags).
FLAGS='-q'
# Number of syslog.# files to keep in the log directory.
BACKLOGS=6
# Each record in the following variable contains information for one log file.
# The fields are filename:maxlines:pattern where filename is the name of the
# log file, maxlines is the maximum number of lines in the file (0 for
# unlimited) and pattern is a pattern which must be matched for a line to get
# copied from syslog to this log file.
LOGFILES='
delete:0:self-delete
delete:0:PCLEAN
dts:0:death trap
rip:0:killed
restarts:0:Running
levels:0:advanced
rentgone:0:equipment lost
usage:5000:usage
newplayers:0:new player
errors:5000:SYSERR
godcmds:0:(GC)
badpws:0:Bad PW
olc:5000:OLC
help:0:get help on
trigger:5000:trigger
'
# The following is the number of lines in syslog.CRASH. Set to 0 to disable
# crashlogs.
LEN_CRASHLOG=30
#############################################################################
#############
# Functions #
#############
# The proc_syslog function will grep the logs for the various different info
# and rotate the logs in the log directory.
proc_syslog () {
# Return if there's no syslog
if ! [ -s syslog ]; then return; fi
# Create the crashlog
if [ -n "$LEN_CRASHLOG" -a "$LEN_CRASHLOG" -gt 0 ]; then
tail -n $LEN_CRASHLOG syslog > syslog.CRASH
fi
# Append to the specialty logfiles and truncate to maximum length if
# applicable
OLD_IFS=$IFS
IFS='
'
for rec in $LOGFILES; do
name=log/`echo $rec|cut -f 1 -d:`
len=`echo $rec|cut -f 2 -d:`
pattern=`echo $rec|cut -f 3- -d:`
fgrep $pattern syslog >> $name
if [ $len -gt 0 ]; then
temp=`mktemp $name.XXXXXX`
tail -n $len $name > $temp
mv -f $temp $name
fi
done
IFS=$OLD_IFS
# Find the # to set the new log file to.
if [ -s log/syslog.$BACKLOGS ]; then
declare -i newlog=$BACKLOGS+1
else
declare -i newlog=1
while [ -s log/syslog.$newlog ]; do newlog=$newlog+1; done
fi
# Rotate the logs.
declare -i y=2
while [ $y -lt $newlog ]; do
declare -i x=$y-1
mv -f log/syslog.$y log/syslog.$x
y=$y+1
done
mv -f syslog log/syslog.$newlog
}
########
# Main #
########
# Check to see if there is a syslog which would indicate that autorun
# was improperly killed (ie maybe the system was rebooted or ?).
if [ -s syslog ]; then
echo Improper shutdown of autorun detected, rotating syslogs before startup. >> syslog
proc_syslog
fi
# The main loop
while ( : ) do
DATE=`date`
echo "autorun starting game $DATE" > syslog
echo "running bin/circle $FLAGS $PORT" >> syslog
# On Cygwin, you may need to precede this next line with './' for
# './bin/circle' as the command.
nohup bin/circle $FLAGS $PORT >> syslog 2>&1
if [ -r .killscript ]; then
DATE=`date`;
echo "autoscript killed $DATE" >> syslog
rm .killscript
proc_syslog
exit
fi
# if [ ! -r .fastboot ]; then
# sleep 60
# else
# rm .fastboot
# fi
while [ -r pause ]; do
sleep 60
done
if [ -s lib/core ]; then
gdb bin/circle lib/core -command gdb.tmp >lib/backtrace.$(date +%d.%m.%Y.%T)
fi
proc_syslog
sleep 5
done

34
autorun.amiga Executable file
View file

@ -0,0 +1,34 @@
LAB runloop
if exists .killscript then
delete .killscript quiet
SKIP the_end
endif
if exists .fastboot then
wait 3
delete .fastboot quiet
else
wait 5
endif
bin/Circle
search nonum log/syslog "self-delete" >> log/delete
search nonum log/syslog "PCLEAN" >> log/delete
search nonum log/syslog "death trap" >> log/dts
search nonum log/syslog "killed" >> log/rip
search nonum log/syslog "Running" >> log/restarts
search nonum log/syslog "advanced" >> log/levels
search nonum log/syslog "equipment lost" >> log/rentgone
search nonum log/syslog "usage" >> log/usage
search nonum log/syslog "new player" >> log/newplayers
search nonum log/syslog "SYSERR" >> log/errors
search nonum log/syslog "(GC)" >> log/godcmds
search nonum log/syslog "Bad PW" >> log/badpws
delete log/syslog quiet
SKIP runloop BACK
LAB the_end

76
autorun.cmd Executable file
View file

@ -0,0 +1,76 @@
/* REXX */
/* Note: This is an example Autorun REXX Script for use with OS/2 and
CircleMUD 3.0. You may use it as is, or as the basis for your own
script.
April 18, 1996 - David A. Carver */
/* CircleMUD 3.0 autorun script
* Originally by Fred C. Merkel
* Copyright (c) 1993 The Trustees of The Johns Hopkins University
* All Rights Reserved
* See license.doc for more information
*
* If .fastboot exists, the script will sleep for only 5 seconds between
* reboot attempts. If .killscript exists, the script commit suicide (and
* remove .killscript). If pause exists, the script will repeatedly sleep for
* 60 seconds and will not restart the mud until pause is removed.
*/
'echo off'
PORT=4000
FLAGS=''
call RxFuncAdd "SysLoadFuncs", "RexxUtil", "SysLoadFuncs"
call SysLoadFuncs
Do forever
call SysCls
say center('CrapWeasel MUD',79)
say center('AutoRun Procedure',79)
'del syslog'
Say "AutoRun starting game " || DATE()
"set EMXOPT=-h150"
"bin\circle " FLAGS PORT || " >> syslog"
say 'Extracting little log information'
'del log\*.* /n'
'fgrep -w "self-delete" syslog >> log/delete'
'fgrep -w "PCLEAN" syslog >> log/delete'
'fgrep -w "death trap" syslog >> log/dts'
'fgrep -w "killed" syslog >> log/rip'
'fgrep -w "Running" syslog >> log/restarts'
'fgrep -w "advanced" syslog >> log/levels'
'fgrep -w "equipment lost" syslog >> log/rentgone'
'fgrep -w "usage" syslog >> log/usage'
'fgrep -w "olc" syslog >> log/olc'
'fgrep -w "new player" syslog >> log/newplayers'
'fgrep -w "SYSERR" syslog >> log/errors'
'fgrep -w "(GC)" syslog >> log/godcmds'
'fgrep -w "Bad PW" syslog >> log/badpws'
'fgrep -w "has connected" syslog >> log/whocon'
Do while stream("pause","c","query exists")<>""
Say "Pausing..."
Call SysSleep(10)
end
if (stream("fastboot","c","query exists")="") then do
Say "Waiting 40 seconds to reboot"
Call SysSleep(40)
end
else do
"del fastboot"
Say "Waiting 5 seconds to reboot"
Call SysSleep(5)
end
if (stream("killscr","c","query exists")<>"") then do
Say "Exiting autorun"
"echo autoscript killed "DATE() ">> syslog"
"del killscr"
exit
end
end

108
autorun.pl Executable file
View file

@ -0,0 +1,108 @@
#!/usr/bin/perl
# autorun -- maintain a Circle V3.0 mud server
# Copyright (c)1995 Vi'Rage Studios
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
# csh original by Fred C. Merkel, PERL conversion by D. Hall
# .fastboot sleep for only 5 seconds, instead of the default 20
# .killscript script will exit, and mud will not reboot
# .pause pause (sleep 1 minute intervals) until .pause it removed
$port = 4000;
$flags = "-q";
$home = ".";
$bin = "$home/bin";
$lib = "$home/lib";
$log = "$home/log";
chdir $home;
while (1) {
# Open SYSLOG and dup STDERR into SYSLOG
open (SYSLOG, ">> syslog");
open (STDERR, ">& SYSLOG");
print SYSLOG "autoscript starting game ", `date`;
open (SERVER, "bin/circle $flags $port |");
while (<SERVER>) {
print SYSLOG;
}
# First we open everything
open (SYSLOG, "<syslog");
open (DELETE, ">>log/delete");
open (DTRAPS, ">>log/dtraps");
open (DEATHS, ">>log/deaths");
open (REBOOT, ">>log/reboots");
open (LEVELS, ">>log/levels");
open (NORENT, ">>log/norent");
open (USAGE, ">>log/usage");
open (NEWPLR, ">>log/newplrs");
open (SYSERR, ">>log/errors");
open (GODCMD, ">>log/godcmds");
open (BADPWS, ">>log/badpws");
# Then we stash everything
while (<SYSLOG>) {
print DELETE if /self-delete/;
print DELETE if /PCLEAN/;
print DTRAPS if /death trap/;
print DEATHS if /killed/;
print REBOOT if /Running/;
print LEVELS if /advanced/;
print NORENT if /equipment lost/;
print USAGE if /usage/;
print NEWPLR if /new player/;
print SYSERR if /SYSERR/;
print GODCMD if /\(GC\)/;
print BADPWs if /Bad PW/;
}
close (SYSLOG);
# Rotate SYSLOG files
unlink ('log/syslog.6');
rename ('log/syslog.5', 'log/syslog.6');
rename ('log/syslog.4', 'log/syslog.5');
rename ('log/syslog.3', 'log/syslog.4');
rename ('log/syslog.2', 'log/syslog.3');
rename ('log/syslog.1', 'log/syslog.2');
rename ('syslog' , 'log/syslog.1');
# should we stay dead?
if (-r '.killscript') {
unlink '.killscript';
open (SYSLOG, '>> log/syslog.1');
print SYSLOG "autoscript killed ", `date`;
exit;
}
# or just play dead?
while (-r '.pause') {
sleep 60;
}
# or reboot as soon as possible?
if (-r '.fastboot') {
unlink '.fastboot';
sleep 5;
} else {
sleep 20
}
}

97
autorun.sh Executable file
View file

@ -0,0 +1,97 @@
#!/bin/sh
#
# CircleMUD 3.0 autorun script
# Contributions by Fred Merkel, Stuart Lamble, and Jeremy Elson
# Copyright (c) 1996 The Trustees of The Johns Hopkins University
# All Rights Reserved
# See license.doc for more information
#
#############################################################################
#
# This script can be used to run CircleMUD over and over again (i.e., have it
# automatically reboot if it crashes). It will run the game, and copy some
# of the more useful information from the system logs to the 'log' directory
# for safe keeping.
#
# You can control the operation of this script by creating and deleting files
# in Circle's root directory, either manually or by using the 'shutdown'
# command from within the MUD.
#
# Creating a file called .fastboot makes the script wait only 5 seconds
# between reboot attempts instead of the usual 60. If you want a quick
# reboot, use the "shutdown reboot" command from within the MUD.
#
# Creating a file called .killscript makes the script terminate (i.e., stop
# rebooting the MUD). If you want to shut down the MUD and make it stay
# shut down, use the "shutdown die" command from within the MUD.
#
# Finally, if a file called pause exists, the script will not reboot the MUD
# again until pause is removed. This is useful if you want to turn the MUD
# off for a couple of minutes and then bring it back up without killing the
# script. Type "shutdown pause" from within the MUD to activate this feature.
#
ulimit -c unlimited
# The port on which to run the MUD
PORT=9091
# Default flags to pass to the MUD server (see admin.txt for a description
# of all flags).
FLAGS='-q'
#############################################################################
while ( : ) do
DATE=`date`
echo "autorun starting game $DATE" >> syslog
echo "running bin/circle $FLAGS $PORT" >> syslog
bin/circle $FLAGS $PORT >> syslog 2>&1
tail -30 syslog > syslog.CRASH
fgrep "self-delete" syslog >> log/delete
fgrep "PCLEAN" syslog >> log/delete
fgrep "death trap" syslog >> log/dts
fgrep "killed" syslog >> log/rip
fgrep "Running" syslog >> log/restarts
fgrep "advanced" syslog >> log/levels
fgrep "equipment lost" syslog >> log/rentgone
fgrep "usage" syslog >> log/usage
fgrep "new player" syslog >> log/newplayers
fgrep "SYSERR" syslog >> log/errors
fgrep "(GC)" syslog >> log/godcmds
fgrep "Bad PW" syslog >> log/badpws
rm log/syslog.1
mv log/syslog.2 log/syslog.1
mv log/syslog.3 log/syslog.2
mv log/syslog.4 log/syslog.3
mv log/syslog.5 log/syslog.4
mv log/syslog.6 log/syslog.5
mv syslog log/syslog.6
touch syslog
if [ -r .killscript ]; then
DATE=`date`;
echo "autoscript killed $DATE" >> syslog
rm .killscript
exit
fi
if [ ! -r .fastboot ]; then
sleep 60
else
rm .fastboot
sleep 5
fi
while [ -r pause ]; do
sleep 60
done
if [ -s lib/core ]; then
gdb bin/circle lib/core -command gdb.tmp >lib/backtrace.$(date +%d.%m.%Y.%T)
fi
done

17
cnf/acconfig.h Normal file
View file

@ -0,0 +1,17 @@
/* Define if we're compiling CircleMUD under any type of UNIX system. */
#undef CIRCLE_UNIX
/* Define if the system is capable of using crypt() to encrypt. */
#undef CIRCLE_CRYPT
/* Define if we don't have proper support for the system's crypt(). */
#undef HAVE_UNSAFE_CRYPT
/* Define is the system has struct in_addr. */
#undef HAVE_STRUCT_IN_ADDR
/* Define to `int' if <sys/socket.h> doesn't define. */
#undef socklen_t
/* Define to `int' if <sys/types.h> doesn't define. */
#undef ssize_t

77
cnf/aclocal.m4 vendored Normal file
View file

@ -0,0 +1,77 @@
AC_DEFUN(AC_CHECK_PROTO,
[
ac_safe=translit($1, './+-', '__p_');
AC_MSG_CHECKING([if $1 is prototyped])
AC_CACHE_VAL(ac_cv_prototype_$ac_safe, [#
if test $ac_cv_gcc_fnb = yes; then
OLDCFLAGS=$CFLAGS
CFLAGS="$CFLAGS -fno-builtin"
fi
AC_TRY_COMPILE([
#define NO_LIBRARY_PROTOTYPES
#define __COMM_C__
#define __ACT_OTHER_C__
#include "src/sysdep.h"
#ifdef $1
error - already defined!
#endif
void $1(int a, char b, int c, char d, int e, char f, int g, char h);
],dnl
,
eval "ac_cv_prototype_$ac_safe=no",eval "ac_cv_prototype_$ac_safe=yes")
if test $ac_cv_gcc_fnb = yes; then
CFLAGS=$OLDCFLAGS
fi
])
if eval "test \"`echo '$ac_cv_prototype_'$ac_safe`\" = yes"; then
AC_MSG_RESULT(yes)
else
AC_DEFINE(builtin(format, NEED_%s_PROTO, translit($1, 'a-z', 'A-Z')), , Check for a prototype to $1.)
AC_MSG_RESULT(no)
fi
])
dnl @@@t1="MAKE_PROTO_SAFE($1)"; t2="MAKE_PROTO_NAME($t1)"; literals="$literals $t2"@@@])
AC_DEFUN(AC_UNSAFE_CRYPT, [
AC_CACHE_CHECK([whether crypt needs over 10 characters], ac_cv_unsafe_crypt, [
if test ${ac_cv_header_crypt_h-no} = yes; then
use_crypt_header="#include <crypt.h>"
fi
if test ${ac_cv_lib_crypt_crypt-no} = yes; then
ORIGLIBS=$LIBS
LIBS="-lcrypt $LIBS"
fi
AC_TRY_RUN(
changequote(<<, >>)dnl
<<
#define _XOPEN_SOURCE
#include <string.h>
#include <unistd.h>
$use_crypt_header
int main(void)
{
char pwd[11], pwd2[11];
strncpy(pwd, (char *)crypt("FooBar", "BazQux"), 10);
pwd[10] = '\0';
strncpy(pwd2, (char *)crypt("xyzzy", "BazQux"), 10);
pwd2[10] = '\0';
if (strcmp(pwd, pwd2) == 0)
exit(0);
exit(1);
}
>>
changequote([, ])dnl
, ac_cv_unsafe_crypt=yes, ac_cv_unsafe_crypt=no, ac_cv_unsafe_crypt=no)])
if test $ac_cv_unsafe_crypt = yes; then
AC_DEFINE(HAVE_UNSAFE_CRYPT)
fi
if test ${ac_cv_lib_crypt_crypt-no} = yes; then
LIBS=$ORIGLIBS
fi
])

215
cnf/configure.in Normal file
View file

@ -0,0 +1,215 @@
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/act.comm.c)
AC_SUBST(MYFLAGS)
AC_SUBST(NETLIB)
AC_SUBST(CRYPTLIB)
AC_CONFIG_HEADER(src/conf.h)
AC_DEFINE(CIRCLE_UNIX)
dnl Find the 'more' program
AC_CHECK_PROGS(MORE, less most more cat)
dnl Checks for programs.
AC_PROG_CC
dnl If we're using gcc, use gcc options.
dnl If not, test for various common switches to make a 'cc' compiler
dnl compile ANSI C code.
if test $ac_cv_prog_gcc = yes; then
dnl Determine if gcc -Wall causes warnings on isascii(), etc.
AC_CACHE_CHECK(whether ${CC-cc} -Wall also needs -Wno-char-subscripts,
ac_cv_char_warn,
[
OLDCFLAGS=$CFLAGS
CFLAGS="$CFLAGS -Wall -Werror"
AC_TRY_COMPILE([#include <ctype.h>],
[ int i; char c = '0';
i = isascii(c);
i = isdigit(c);
i = isprint(c);
], ac_cv_char_warn=no, ac_cv_char_warn=yes)
CFLAGS=$OLDCFLAGS
])
dnl If Determine if gcc can accept -Wno-char-subscripts
AC_CACHE_CHECK(whether ${CC-cc} accepts -Wno-char-subscripts, ac_cv_gcc_ncs,
[
OLDCFLAGS=$CFLAGS
CFLAGS="$CFLAGS -Wno-char-subscripts"
AC_TRY_COMPILE(, , ac_cv_gcc_ncs=yes, ac_cv_gcc_ncs=no)
CFLAGS=$OLDCFLAGS
])
dnl If Determine if gcc can accept -fno-builtin
AC_CACHE_CHECK(whether ${CC-cc} accepts -fno-builtin, ac_cv_gcc_fnb,
[
OLDCFLAGS=$CFLAGS
CFLAGS="$CFLAGS -fno-builtin"
AC_TRY_COMPILE(, , ac_cv_gcc_fnb=yes, ac_cv_gcc_fnb=no)
CFLAGS=$OLDCFLAGS
])
dnl If gcc -Wall gives no warnings with isascii(), use "-Wall";
dnl Otherwise, if gcc -Wall gives isascii warnings:
dnl If we can use -Wno-char-subscripts, use "-Wall -Wno-char-subscripts"
dnl If can't use -Wno-char-subscripts, use no flags at all.
if test ${ac_cv_char_warn:-ERROR} = no; then
MYFLAGS="-Wall"
else
if test ${ac_cv_gcc_ncs:-ERROR} = yes; then
MYFLAGS="-Wall -Wno-char-subscripts"
else
MYFLAGS=""
fi
fi
else
dnl We aren't using gcc so we can't assume any special flags.
MYFLAGS=""
fi
dnl Checks for libraries. We check for the library only if the function is
dnl not available without the library.
AC_CHECK_FUNC(gethostbyaddr, ,
[AC_CHECK_LIB(nsl, gethostbyaddr, NETLIB="-lnsl $NETLIB")])
AC_CHECK_FUNC(socket, ,
[AC_CHECK_LIB(socket, socket, NETLIB="-lsocket $NETLIB")])
AC_CHECK_FUNC(malloc, ,
[AC_CHECK_LIB(malloc, malloc)])
AC_CHECK_FUNC(crypt, AC_DEFINE(CIRCLE_CRYPT),
[AC_CHECK_LIB(crypt, crypt, AC_DEFINE(CIRCLE_CRYPT) CRYPTLIB="-lcrypt")]
)
dnl Checks for header files.
AC_HEADER_STDC
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(fcntl.h sys/fcntl.h errno.h net/errno.h string.h strings.h)
AC_CHECK_HEADERS(limits.h sys/time.h sys/select.h sys/types.h unistd.h)
AC_CHECK_HEADERS(memory.h crypt.h assert.h arpa/telnet.h arpa/inet.h)
AC_CHECK_HEADERS(sys/stat.h sys/socket.h sys/resource.h netinet/in.h netdb.h)
AC_CHECK_HEADERS(signal.h sys/uio.h mcheck.h)
AC_UNSAFE_CRYPT
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_PID_T
AC_TYPE_SIZE_T
AC_CHECK_TYPE(ssize_t, int)
AC_HEADER_TIME
dnl Check for the 'struct in_addr' definition. Ugly, yes.
if test $ac_cv_header_netinet_in_h = no; then
ac_cv_struct_in_addr = no
else
if test $ac_cv_header_sys_types_h = yes; then
headers=`cat << EOF
#include <sys/types.h>
#include <netinet/in.h>
EOF
`
else
headers="#include <netinet/in.h>"
fi
AC_CACHE_CHECK([for struct in_addr], ac_cv_struct_in_addr,
[ AC_TRY_COMPILE([$headers],[struct in_addr tp; tp.s_addr;], ac_cv_struct_in_addr=yes, ac_cv_struct_in_addr=no)])
if test $ac_cv_struct_in_addr = yes; then
AC_DEFINE(HAVE_STRUCT_IN_ADDR)
fi
fi
dnl Check for the 'typedef socklen_t' definition. Even uglier, yes.
if test $ac_cv_header_sys_socket_h = no; then
ac_cv_socklen_t = no;
else
AC_CACHE_CHECK([for typedef socklen_t], ac_cv_socklen_t,
[ AC_TRY_COMPILE([#include <sys/socket.h>],[socklen_t sl; sl=0;], ac_cv_socklen_t=yes, ac_cv_socklen_t=no)])
fi
if test $ac_cv_socklen_t = no; then
AC_DEFINE(socklen_t, int)
fi
dnl Checks for library functions.
AC_TYPE_SIGNAL
AC_FUNC_VPRINTF
AC_CHECK_FUNCS(gettimeofday select snprintf strcasecmp strdup strerror stricmp strlcpy strncasecmp strnicmp strstr vsnprintf)
dnl Check for functions that parse IP addresses
ORIGLIBS=$LIBS
LIBS="$LIBS $NETLIB"
AC_CHECK_FUNCS(inet_addr inet_aton)
LIBS=$ORIGLIBS
dnl Check for prototypes
AC_CHECK_PROTO(accept)
AC_CHECK_PROTO(atoi)
AC_CHECK_PROTO(atol)
AC_CHECK_PROTO(bind)
AC_CHECK_PROTO(bzero)
AC_CHECK_PROTO(chdir)
AC_CHECK_PROTO(close)
AC_CHECK_PROTO(crypt)
AC_CHECK_PROTO(fclose)
AC_CHECK_PROTO(fcntl)
AC_CHECK_PROTO(fflush)
AC_CHECK_PROTO(fprintf)
AC_CHECK_PROTO(fputc)
AC_CHECK_PROTO(fputs)
AC_CHECK_PROTO(fread)
AC_CHECK_PROTO(fscanf)
AC_CHECK_PROTO(fseek)
AC_CHECK_PROTO(fwrite)
AC_CHECK_PROTO(getpeername)
AC_CHECK_PROTO(getpid)
AC_CHECK_PROTO(getrlimit)
AC_CHECK_PROTO(getsockname)
AC_CHECK_PROTO(gettimeofday)
AC_CHECK_PROTO(htonl)
AC_CHECK_PROTO(htons)
AC_CHECK_PROTO(inet_addr)
AC_CHECK_PROTO(inet_aton)
AC_CHECK_PROTO(inet_ntoa)
AC_CHECK_PROTO(listen)
AC_CHECK_PROTO(ntohl)
AC_CHECK_PROTO(perror)
AC_CHECK_PROTO(printf)
AC_CHECK_PROTO(qsort)
AC_CHECK_PROTO(read)
AC_CHECK_PROTO(remove)
AC_CHECK_PROTO(rewind)
AC_CHECK_PROTO(select)
AC_CHECK_PROTO(setitimer)
AC_CHECK_PROTO(setrlimit)
AC_CHECK_PROTO(setsockopt)
AC_CHECK_PROTO(snprintf)
AC_CHECK_PROTO(socket)
AC_CHECK_PROTO(sprintf)
AC_CHECK_PROTO(sscanf)
AC_CHECK_PROTO(strcasecmp)
AC_CHECK_PROTO(strdup)
AC_CHECK_PROTO(strerror)
AC_CHECK_PROTO(stricmp)
AC_CHECK_PROTO(strlcpy)
AC_CHECK_PROTO(strncasecmp)
AC_CHECK_PROTO(strnicmp)
AC_CHECK_PROTO(system)
AC_CHECK_PROTO(time)
AC_CHECK_PROTO(unlink)
AC_CHECK_PROTO(vsnprintf)
AC_CHECK_PROTO(write)
AC_OUTPUT(src/Makefile src/util/Makefile)
#
echo "Configuration completed. To compile, type: cd src; make"

5879
configure vendored Executable file

File diff suppressed because it is too large Load diff

BIN
doc/FAQ.pdf Normal file

Binary file not shown.

81
doc/README.AMIGA Normal file
View file

@ -0,0 +1,81 @@
Compiling CircleMUD on the Amiga
Written by Damian Jurzysta <boing@amigascne.org>
Compiling CircleMUD on the Amiga is basically the same as compiling it using
UNIX. What you need is:
* AmiTCP, INet225R2 or any other TCP/IP stack working with ixnet.library.
You can get the limited unregistered version of Miami from
http://www.nordicglobal.com. An old demoversion of AmiTCP 4.0 can be found on
AmiNet (ftp://ftp.aminet.org/pub/aminet/comm/tcp/AmiTCP-demo-40.lha).
* An installed and fully functional Geek Gadgets programming environment with
Autoconf installed. I've managed to compile and run CircleMUD using the
971125, 980523 and 990529 snapshots using GCC 2.7.2 and EGCS 1.1b-1.2.
The latest EGCS is always the optimal choice.
This can be found at ftp://ftp.ninemoons.com/pub/geekgadgets.
Installing this is a bit tricky at first, I recommend reading the manual
first. It is located at http://www.ninemoons.com/GG/docs/GG_7.html. That
way you'll know what archives to download and install.
* 6 MB's of RAM, it might work with less but has not been tested.
You can find it at the local computerstore. :)
* A 68020 CPU or better is required, I've not been able to compile it without
specifying the -m68020 flag, therefor it won't run on a 68000 or 68010 CPU.
A1500, A2500, A3000, A4000 and A1200 all come with factoryinstalled 68020-040
CPU's. If you own an unexpanded Amiga not listed above you'll need to expand
it.
Here is how you compile this baby:
1) Open up a shell.
2) CD to the circle30bplXX directory. (where 'XX' is the current patchlevel)
3) Type "sh configure".
4) CD to the src directory.
5) Edit the Makefile file and add -m68020 to MYFLAGS.
6) Edit the config.c file and replace "const char *LOGNAME = NULL;" with
"const char *LOGNAME = "log/syslog";". If you don't do this, logging
won't be working properly.
7) CD to the util directory and repeat step 5.
8) Due to a buggy/non-functional/missing implementation of HAS_RLIMIT in
ixemul.library/Geek Gadgets you need to edit sysdep.h and remove or comment
the definition of HAS_RLIMIT on line 324 saying "#define HAS_RLIMIT".
9) CD back to the src directory.
10) Type "make all".
If you want to optimize the binary executable, change MYFLAGS to correspond
with your current processor (-m68020, -m68030, -m68040 or -m68060) and FPU
(-m68881). The -m68060 option is not included in GCC 2.7.2, only in EGCS 1.1+.
Also add -O3 to MYFLAGS to activate maximum optimization and inlining. I'm not
sure -O3 is working with GCC 2.7.2, if you get compiler errors replace it with
-O2. Finally, remove -g and -O2 from CFLAGS to remove debugging information and
to avoid the above -O3 (or -O2 if you're using GCC 2.7.2) to collide with this
flag.
To run the server all you need to do is follow these five simple steps:
1) Make sure you have a TCP/IP stack running. You don't need to be connected to
the net, just leave it running.
2) Open up a shell.
3) Since the UNIX autorun kept crashing on my machine, I wrote my own autorun
script. If "sh autorun" isn't working for you, type "autorun.amiga".
4) If it says "file is not executable" when you try to run autorun.amiga, type
"protect autorun.amiga +es" and run it again.
5) To connect to it, use a telnet or MUD client and connect to localhost, port
4000. If you don't have one, use the one supplied with Geek Gadgets:
'telnet localhost 4000'. The first person to log in will be made an
implementor (level 34) with all powers.
You may want to read the README.UNIX file since most what is written in it also
complies to the Amiga Geek Gadgets environment.
If someone manages to compile it on a PowerPC processor, please contact me.
I don't own a PowerUP/G3/G4-board myself so I've not been able to test this.
If you have any questions or can't get it working, feel free to email me at
boing@amigascne.org.

88
doc/README.ARC Normal file
View file

@ -0,0 +1,88 @@
Compiling CircleMUD under RiscOS
by Gareth Duncan (garethduncan@argonet.co.uk)
You will need:
The CircleMUD source code.
!GCC, !UnixLib, drlink and make avaliable from Hensa.
Acorns sockets library avaliable form the Acorn ftp site.
A copy of !FreeNet and !FreeTerm.
1) Firstly obtain a copy of !GCC, !UnixLib, drlink, make and Acorns
sockets libary.
2) Place the directory Sockets from the sockets library inside
!UnixLib37.src.clib
3) Unpack the CircleMUD binary and start setting up the directory
structures in the src directory.
4) src
|
----------------------------------
| | | | | |
util act c h o conf
|
---------------
| | |
c h o
5) Place all the files in the correct directories according to their
name remembering to remove the directory information from the
filename.
e.g. ban/c goes in the directory c and is renamed to ban.
act/item/c goes in the directory act then c and is renamed to
item.
6) Set the type of any data files in the src directories to text.
7) Copy the acorn configure file (should be conf/h/arc) into the h
directory and rename it conf.
8) Create an obey file called !Compile in the src containing the
following lines
-- begin (don't linclude this line)
WimpSlot -min 10000K -max 10000K
dir <Obey$Dir>
make -r
-- end (don't linclude this line)
and set the wimpslot to as much memory as you can afford.
9) Place the make program in the src directory and rename the file
Makefile/arc to Makefile removing the old file already called
Makefile.
10) Unpack GCC and Unixlib placing them where you want and then
double click on them. Then run the !Compile file. Everything
should run okay. Make sure that drlink is placed inside GCC in the
bin directory. If you get any error messages check that the code
changes at the bottom of this file are present. If not alter the
code as instructed.
11) Place the module CallASWI from !UnixLib37.src.CallASWI in the bin
directory.
12) Now get a copy of the FreeNet internet stack or a recent version
of Acorns stack and FreeTerm. Make sure the FreeUser start up
script has the line
ifconfig lo0 inet 127.0.0.1 up
Then run the startup script, run FreeTerm and then open a task
window. Run the !Run file (which should be placed in the directory
above src) from the task window by typing in its file name and
then press return, the Mud should load (you should be able to just
shift drag the !Run file onto the window if you are using !Zap).
13) To log onto the mud type localhost and set the port to 4000 in
FreeTerm and then press connect
Please excuse the poor spelling and grammar in this and if you have
any trouble contact garethduncan@argonet.co.uk.
Bye.
-Gareth

66
doc/README.BORLAND Normal file
View file

@ -0,0 +1,66 @@
Compiling CircleMUD
under Microsoft Windows 95 or Windows NT
using Borland C++
Written by Mundi King <kingmundi@yahoo.com>
Here are some instructions on compiling circlemud using Borland C++ 5.01.
These instructions will not work using Turbo C++, or the 4.0 versions of
Borland C++ as those two products were geared twoards DOS and Windows 3.xx.
It will most likely work with versions 5.00, 5.02, and 5.5 of the Borland
C++ compilers.
Boot up your Windows 95 machine.
Unzip your CircleMUD package.
Goto a DOS prompt, and change to the circle \src directory.
(Type) rename conf.h.win conf.h (Enter)
** BORLAND 5.5 **
If you are using Borland C++ 5.5, a couple of extra changes need to be
made at this time. First you have to make sure the bin directory of the
tools is in your path. You can add the following line to your autoexec.bat
to have it automatically added to your path or you can type it at a DOS
prompt:
path = %path%;c:\borland\bcc55\bin
(Type) make -fmakefile.bcc55 (Enter)
** BORLAND 5.1 **
(Type) make -fmakefile.bcc (Enter)
** End Version Specifics **
Something to note here is that these makefile
assume that you have installed Borland C++ 5.x
to the C: drive. If you have installed it to
another drive you will have to open up the correct
Makefile in a text editor and find and replace
all C:\ references to the drive letter it has
been installed to.
(Type) move circle.exe ..\ (Enter)
(Type) cd .. (Enter)
(Type) circle (Enter)
The game should start loading the zones and database. You will no longer be
able to type in this DOS box.
Click on START and then on RUN.
(Type) telnet localhost 4000 (Enter)
The first one to logon becomes the Implentor.
Also remember that you are using Windows95's
built-in telnet program which is very basic.
Pat yourself on the back.
---
Mundi King 1998-07-03
Updated for 5.5: 2000-06-28

80
doc/README.CYGWIN Normal file
View file

@ -0,0 +1,80 @@
The README.Cygwin that comes with CircleMUD is outdated. Below is current and
works as of December 2006.
Compiling CircleMUD
under Microsoft Windows using CygWin
CircleMUD 3.1 compiles under Cygwin without needing any special modifications.
This free pseudo-Unix environment for Windows includes the "bash" shell, "gcc"
family of compilers, and a full set of programs and libraries for Windows users
to compile and run programs from source code intended for Unix. It can be
downloaded from: http://cygwin.com/
Compiling Circle under Cygwin is basically the same as it would be under
another form of Unix:
1) Download from: http://cygwin.com/setup.exe
Select open.
Install from Internet
Select "just me" "dos"
Choose a mirror site.
Leave selected package as default.
Select the following from devel: autoconf, gcc, make, and patchutils
Click Next.
Install, follow prompts.
2) Download and uncompress the latest version of CircleMUD. TBA is now
recommending everyone use CWG (CircleMUD With Goodies) Buddha since it comes
pre-packaged with many important features like OLC and Trigedit. Join the
forum and download Buddha at: http://cwg.lazuras.org/ The forums will
also be a great resource for any problems that come up. Once you download
and uncompress Buddha (I use winRAR) read through the /doc directory.
3) Start the Cygwin "bash" shell by double clicking the Cygwin Icon. This will
open a telnet looking window that mimics a *nix server where you can run the
MUD. Go to the directory where you extracted CircleMUD by using the "cd" change
directory command and "dir" directory listing to find the correct files. For
example "C:\circle". "cd c:/circle" "dir" in the listed files you should see
one called configure. DO NOT go into the SRC directory yet.
4) Run the configure script by typing "./configure". This will automatically
detect what programs and library functions are available, and create the
files "Makefile" and "conf.h" based on the results.
If you get complaints from bash that it will not run the configure script
either because it cannot find it or because it claims the file is not
an executable, you can also try "sh configure", "sh ./configure",
"bash configure" and "bash ./configure" until one of them works.
5) NOW change to the /circle/src directory "cd src", and type "make", and watch
CircleMUD and the additional utilies included in the Circle distribution
automatically being compiled and placed in /circle/bin.
6) Go back to /circle, and run the MUD either directly by typing
"bin/circle", or by using the "./autorun &" script.
7) Start a telnet program. Open a connection to your own machine "localhost"
on port 4000. You should see the MUD's login screen welcoming you. The
first person to login will be promoted to IMP.
If you have problems, read this document again. Most of the questions received
in email or which are posted to USENET newsgroups are answered in this file, or
in other documents included in the CircleMUD distribution. If you are still
having problems and you're *sure* that your question is not answered in this
document or in one of the others files in the /circle/doc directory, try
reading the through the CircleMUD website at: http://www.circlemud.org
It really can not be stressed enough: READ EVERYTHING.
Credit where credit is due:
Some parts of this document have been derived or outright copied from other
files in the CircleMUD distribution by:
Jeremy Elson
David Goldstein
Tony Robbins
George Greer
Rumble
Rumble@@builderacademy.net
The Builder Academy
builderacademy.net 9091

137
doc/README.MSVC4 Normal file
View file

@ -0,0 +1,137 @@
Compiling CircleMUD using Microsoft Visual C++ v4.x
by Jeremy Elson
For help, write to help@circlemud.org
CircleMUD compiles relatively easily under Windows 95 and NT using
the Microsoft Visual C++ compiler version 4.x. These instructions won't
work for any compiler except for MSVC++ 4.0; if you have a different
compiler, take a look at the main README.WIN file for instructions.
Note MSVC++ 4.x is a commercial product and must be bought from your local
software store. It can't be downloaded from any (legal) FTP sites, and I
will not send you a copy, so please don't ask. Use the FREE GNU-Win32
package mentioned in the README.WIN file if you don't want to buy MSVC.
1) Download the latest version of CircleMUD. You can always find the latest
version at the following anonymous FTP sites:
ftp.circlemud.org:/pub/CircleMUD
ftp2.circlemud.org:/pub/CircleMUD
You can also find information at the WWW site:
http://www.circlemud.org/
The latest version will be called something ending in .zip, like
"circle30bplXX.zip". (where 'XX' is the patchlevel)
2) When you unzip the .zip archive, MAKE SURE to use an unzip program that
can handle long filenames. Old versions of pkunzip (e.g. 2.x) do NOT
handle long filenames. WinZip (http://www.winzip.com) can.
3) Open a window with an MS-DOS prompt. Note, this does not mean you are
"compiling under DOS" -- the MS-DOS prompt is just a command-line
interface to Windows 95. This step can be done by going to the Start
menu, going to the Programs submenu, and selecting "MS-DOS prompt". All
the following commands are performed at the MS-DOS prompt.
4) Use the CD command to switch to the main CircleMUD directory. For
example, type "CD \circle30bplXX", where 'XX' is the patchlevel of the
version of Circle you downloaded. Also note that the full path will
depend on where you decided to uncompress it.
5) Go to the src directory and rename conf.h.win to conf.h, and replace
the Makefile with Makefile.msvc. This can be accomplished with the
following commands:
cd src
copy conf.h.win conf.h
del Makefile
copy Makefile.msvc Makefile
6) If you have MSVC++ 4.x installed in C:\MSDEV, skip to the next step.
Otherwise, bring up the Makefile in your favorite text editor (for
example, to use the DOS EDIT command, type "EDIT MAKEFILE".) Find the
two lines that start with "CLFAGS =" and "LIB=", respectively. On BOTH
lines, change the part that says "C:\MSDEV\" to reflect where your copy
of MSVC++ 4.x is installed. Then, save the Makefile and exit the
editor. You should still be in the "src" directory.
7) Make sure that MSVC++ binary directory (i.e., the directory where
the actual programs are kept, such as NMAKE.EXE) is in your PATH. You
can see what your path is by typing PATH. Your MSVC++ binary directory
should be listed (for example, C:\MSDEV\BIN). Add MSVC's binary
directory to your path if it's not already there. If you do not know
how to change your path, contact someone who knows how to use the DOS
command prompt for help, or check the manual to learn how to use the
PATH command.
8) To compile Circle, stay in the src directory and type:
NMAKE
This will invoke Microsoft's make program and should build the entire
CircleMUD server and create a file called 'circle.exe'. If you see the
error message "Bad command or filename", then MSVC++'s binary directory
is not in your path, so your computer can't find MS's NMAKE program.
Go back to step 7.
9) Make sure your TCP/IP stack is installed, correctly configured, and
running. If you are already using TCP/IP applications from your
Windows machine such as Netscape or telnet, then no changes should be
necessary; otherwise go to the Control Panel's "Network" settings,
select "Add Protocol", and add Microsoft's TCP/IP. Consult the
documentation for Windows 95 (do not write me mail) if you have any
additional questions about how to set up TCP/IP under Windows 95.
YOU MUST INSTALL AND CONFIGURE YOUR TCP/IP STACK, EVEN IF YOU ARE NOT
CONNECTED TO THE INTERNET.
10) Go back to Circle's main directory (like in Step 4), and run the server
by typing "src\circle". You should see boot messages appearing on the
screen. Wait until the line "No connections. Going to sleep." appears
at the bottom of the screen -- this means Circle is ready to accept
connections. Go on to step 11 if you see this.
If you see "Winsock Error #10047", your TCP/IP stack is not correctly
configured; go back to Step 9.
If you see "Fatal error changing to data directory: No such file
or directory", that means you are trying to run Circle from the
"src" directory. Your current directory must be Circle's top-level
directory -- the same directory that you were in during Step 4.
11) Start a telnet program (SEE NOTE BELOW). Open a connection to your
own machine ("localhost", or whatever the name of your machine happens
to be) on port 4000. You should see the MUD's login screen welcoming
you and asking for your name.
VERY IMPORTANT NOTE: The standard telnet program that comes free with
Windows 95 and NT does *not* work correctly for connecting to any MUD
because it does not support telnet's line-mode interface (so you can't
see what you are typing). Note that simply turning on the "local echo"
option does not fix the problem; this prevents echo from being turned
off while you're typing your password, and screws up the display if you
try to hit the backspace key too many times.
Do not use Microsoft's telnet applet -- instead, use EWAN, CRT, zMUD, or
any other Winsock telnet application. EWAN and CRT can be downloaded
from any number of sites (for example, www.windows95.com). zMUD is an
excellent MUD client; for more information, see the official home page
at http://www.zuggsoft.com/zmud/zmudinfo.htm .
If you have problems, read this document again. Most of the questions
I receive in email are answered in this README file. If you're still
having problems and you're *sure* that this document doesn't answer
your question, try reading the CircleMUD FAQ at
ftp://ftp.circlemud.org/pub/CircleMUD/FAQ. If all else fails, you can
get help by sending mail to help@circlemud.org. Note, however, that
if you ask a question that is answered in this document, all I'll do
is mail it to you.
Have fun!
Jeremy Elson
(To get help, write to help@circlemud.org)

56
doc/README.MSVC5 Normal file
View file

@ -0,0 +1,56 @@
Compiling CircleMUD under Microsoft Windows 95 or Windows NT
using Microsoft Visual C++ v5.x
The following information is from Rob Baumstark's web page at
http://www.connect.ab.ca/~rbmstrk/. You can contact Rob at
<shirak@connect.ab.ca>.
How to compile using MS Visual C++ 5:
1. Rename conf.h.win to conf.h in the src directory
2. Go to File|New... Create a new workspace called circle. You should
put this in the root of the circle directory, unless you want to move
circle into the workspaces directory later.
3. Go to File|New... Create a new Win32 Console App called circle in
the current workspace
4. If you didn't create this in the circle dir, move the source to the
directory where this project is. Default should be:
C:\Program Files\DevStudio\MyProjects\Circle\Circle
5. Change to file-view.
6. Right-click "Circle files", and click Add Files to Project... Select
all of the .C files
7. Right-click "Circle files", and click New Folder. Rename it to
includes, or headers
8. Right-click the new folder, and click Add Files to Folder... Select
all of the .H files. Note: You could just add the the .H files to the
project with the .C files, but this helps keep it more organized I
think.
9. Right-click "Circle files", and click settings...
10. Choose settings for all configurations, and move to the Link tab
11. Add wsock32.lib to the end of the Object/Library modules list.
12. Change the settings under the General and Debug tabs if you want
to be able to use the internal debugger.
13. SAVE THE WORKSPAVE
14. Choose Build|Build Circle.exe, or hit F7 to build it.
The circle.exe file will be placed in the circle\debug directory, unless
you turned off debug mode, in which case it will be in the circle\release
directory. By compiling in this way, instead of using the GNU Win32
thingy, or embedding the makefile that came with circlemud inside a
project, allows you to use all of MSVC++'s interesting features.

44
doc/README.MSVC6 Normal file
View file

@ -0,0 +1,44 @@
Compiling CircleMUD under Microsoft Windows 95
using Microsoft Visual C++ 6.0 w/SP2
The following information is from Michael Robinson. You can contact Mike at
<chevy67ss@geocities.com>. [1]
Compiling with MS Visual C++ 6.0:
1. In the src directory, rename conf.h.win to conf.h.
2. Go to File|New... Create a new workspace called circle. Put the root
directory path into the location field.
3. Go to File|New... Create a new Win32 Console Application called circle
and click to add it to the current workspace. Chose an empty console.
4. In fileview, right-click circle files, and click Add Files to Project...
Select all of the .c files in the src directory.
5. Expand the plus sign of Circle files, right-click the headers Folder,
and click Add Files to Folder... Select all of the .h files in the src
directory.
5. Right-click "Circle files", click settings..., and change settings to
all configurations.
6. Click the Link tab and add wsock32.lib to end of the Object/Library
modules list.
7. Save the workspace.
8. Choose Build|Build circle.exe.
9. Move the circle.exe file from the circle\debug directory to the root
directory.
=========
[1] - This appears (by 'diff') to be based on the README.MSVC5 document by Rob
Baumstark from http://www.connect.ab.ca/~rbmstrk/. You can contact Rob at his
<shirak@connect.ab.ca> e-mail address.
George Greer

70
doc/README.OS2 Normal file
View file

@ -0,0 +1,70 @@
Compiling CircleMUD
under OS/2 Warp Connect v3.0 or 2.1
by David Carver
To compile CircleMUD under OS/2, you must have the following:
All needed files can be found at the hobbes.nmsu.edu FTP site.
* OS/2 Warp Connect Version 3.0, or OS/2 Version 2.1 with TCP/IP installed.
You should have at least 8 megs of memory. (Circle runs quite well on an
8 meg machine).
* An HPFS formatted drive. CircleMUD needs to be uncompressed on an HPFS
drive because it uses long filenames.
* The EMX09b runtime and compilation systems. These are free and
can be downloaded by anonymous FTP at hobbes.nmsu.edu in os2/unix/emx09b
* The OS/2 port of GNU's GCC compiler. This can also be found at
hobbes.nmsu.edu in os2/unix/emx09b. Please make sure you have the most
recent version of the GCC compiler for OS/2, as files needed by CircleMUD
were not included in earlier versions of GCC for OS/2. The current version
is 2.7.0
* GNU's TAR and GZIP programs to decompress the necessary files. Again
these can be found at hobbes.nmsu.edu in os2/unix.
**** You only need this if you plan on getting some of the various
**** addons for Circle that others have coded.
* A MAKE program. Either the GNU Make, or IBM's NMAKE should work. You
can obtain the NMAKE from either IBM's Developers kit or from
hobbes.nmsu.edu in os2/16dev.
Installation:
*** IMPORTANT
***
*** You must have EMX and GCC installed and the directories in your
*** PATH and LIBPATH statements in your CONFIG.SYS. Please read the
*** EMX installation instructions included with that package for more
*** information on how to install both EMX and GCC.
Download the ZIP archive of Circle and use your favorite UNZip utility
to extract it.
After you have uncompressed the files, switch to the directory that has
the CircleMUD files in it, and then to the SRC subdirectory. Rename
the following files:
Rename 'conf.h.os2' to 'conf.h'.
Delete the old 'makefile', and rename 'makefile.os2' to 'makefile'.
To compile the MUD type the following at an OS/2 command line:
NMAKE /i
CircleMUD will be compiled and the executable will be put in your current
directory. Copy the CIRCLE.EXE file to the circle30\bin directory. Then
follow the CircleMUD instructions in README on how to start up the MUD.
NOTE: General questions about CircleMUD can be addressed to the author,
Jeremy Elson, at jelson@circlemud.org. However, all questions which
specifically deal with the OS/2 port of Circle should go to my address,
listed below.
David Carver
dcarver@cougar.colstate.cc.oh.us
dcarver@iwaynet.net

126
doc/README.UNIX Normal file
View file

@ -0,0 +1,126 @@
Compiling CircleMUD under UNIX
by Jeremy Elson
For help, write to help@circlemud.org
Compiling CircleMUD is easy using almost any variant of UNIX (for
example: Linux/MkLinux, Solaris, SunOS, IRIX, HP/UX, Ultrix, OSF, and
NetBSD/OpenBSD/FreeBSD/BSDI, just to name a few). If you have any type
of UNIX system, these instructions are for you. If not, check the main
README file to get a list of other operating systems that can be used to
compile and run CircleMUD.
Current versions of Circle use the GNU 'autoconf' package to
automatically determine most of the important characteristics of your
system, so chances are good that Circle will compile correctly on any
UNIX system -- even one that we have never seen before. However, if you
do have problems, please drop us a note at help@circlemud.org so that we
can try to make Circle work with every UNIX variant that we can.
1) Download the latest version of CircleMUD. You can always find the
latest version at the following anonymous FTP sites:
ftp.circlemud.org:/pub/CircleMUD/3.x
ftp2.circlemud.org:/pub/CircleMUD/3.x
You can also find information at the WWW site:
http://www.circlemud.org/
The latest version will be called something ending in .tar.gz, like
"circle30bplXX.tar.gz". (where 'XX' is the patchlevel)
2) Unpack the archive. If you have the .tar.gz version, uncompress it
using gzip (GNU unzip) and the tar archiver. (Both of these utilities
can be downloaded from ftp.gnu.ai.mit.edu:/pub/gnu if you don't have
them.) To unpack the archive on a UNIX system, type:
gzip -dc circle30xxxx.tar.gz | tar xvf -
3) Configure CircleMUD for your system. Circle must be configured using
the 'configure' program which attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a 'Makefile' and a header file called 'conf.h'.
From Circle's root directory, type
./configure
If you're using 'csh' on an old version of System V, csh might try to
execute 'configure' itself, giving you a message like "Permission denied"
when you try to run "./configure". If so, type "sh ./configure" instead.
'configure' can take several minutes if you're using a slow computer.
'configure' will attempt to use the 'gcc' compiler if it exists; if not,
it will try 'cc'. If you want to use a different compiler, set the
'CC' environment variable to the name of the compiler you wish to use.
For example, if you want to use the 'xlc' compiler, and your shell is
csh or tcsh:
setenv CC xlc
./configure
Or, if you want to use the 'xlc' compiler, and your shell is sh or bash:
CC=xlc ./configure
This will tell 'configure' to use the 'xlc' compiler instead of 'gcc'.
4) Build the CircleMUD server. This must be done from the 'src' directory.
Type:
cd src; make all
This will build CircleMUD proper as well as its 10 or so ancillary
utilities, which can take anywhere from 5 minutes to an hour depending
on the speed of your computer.
Note that in the future, when you need to recompile Circle as you make
changes to the code, it is NOT necessary to run 'configure' again (it
should only be run once, after the first time you unpack Circle from
its .tar file). If you move the source code to a different computer,
you should reconfigure it by deleting the file 'config.cache' and
running 'configure' again.
The first time you try to compile Circle, you will be asked to read the
CircleMUD license. Please read it!
5) Go back to Circle's root directory (by typing "cd ..") and run the
CircleMUD server. The easiest way to do this the first time is
to use the 'autorun' script, which can be run in the background by
typing:
./autorun &
Make sure to do this in Circle's root directory, not the src directory
that you used for the previous step. A file called 'syslog' will start
growing in the same directory that contains Circle's log messages.
If you're using 'csh' on an old version of System V, csh might try to
execute 'autorun' itself, giving you a message like "Permission denied"
when you try to run "./autorun". If so, type "sh ./autorun &" instead.
6) Wait until the line 'No connections. Going to sleep.' appears in the
syslog. This indicates that the server is ready and waiting for
connections. It shouldn't take more than about 30 seconds for the MUD
to reach this state, though performance will vary depending on how fast
your computer is.
If a file appears called 'syslog.CRASH', the MUD has terminated
(probably abnormally). Check the contents of syslog.CRASH to see
what error was encountered.
7) Type 'telnet localhost 4000' to connect. The first person to log in
will be made an implementor (level 34) with all powers.
Jeremy Elson
(write to help@circlemud.org for help)

81
doc/README.VMS Normal file
View file

@ -0,0 +1,81 @@
This is directions for compiling & linking CircleMUD for OpenVMS.
Additional documentation can be found at.
http://www.ourservers.net/openvms_ports/
I have personally tested this port on both VAX and Alpha with OpenVMS v7.0
and DEC C v7.0 and Multinet TCP/IP using UCX emulation.
To build this, you need the following:
.1) DEC C compiler. I have tested with DEC C v7.0 and can help out
with problems with earlier versions of DEC C. If you don't have
the DEC C compiler I suggest you get a copy through the OpenVMS
Hobbyist program at http://www.montagar.com/hobbyist.
.2) A TCP/IP stack for OpenVMS that supports UCX emulation. I have
personally only tested out Multinet v4.1B and Multinet v4.2.
If you are using a TCP/IP stack that dosen't support UCX
emulation I would suggest getting a copy of Multinet though the
OpenVMS hobbyist program at http://www.montagar.com/hobbyist.
.3) A copy of the CircleMUD distribution file.
This can be found at ftp://ftp.circlemud.org/3.x/
Now, you have everything, do the following...
.1) Unpack the CircleMUD file you got from "www.circlemud.org"
.2) Go to the SRC directory and locate the BUILD_CIRCLEMUD.COM file.
The BUILD_CIRCLEMUD.COM file accepts the following parameters.
P1 ALL Just Build "Everything".
CIRCLE Just Build [.BIN]CIRCLE.EXE.
UTILS Just Build The CircleMUD Utilities.
P2 DEBUG Build CircleMUD With Debugging Information.
NODEBUG Build CircleMUD Without Debugging Information.
The default is "ALL" and "NODEBUG".
The "BUILD_CIRCLEMUD.COM" script checks some filenames to make
sure that they are correct as some of them are unpacked different
between the TAR file distribution and the ZIP file distribution.
It also checks for "CONF.H" and if not found copies "CONF.H_VMS"
to "CONF.H" for you.
So if you just want to build "everything" without debugging
information you could use...
$ @BUILD_CIRCLEMUD ALL NODEBUG
OR
$ @BUILD_CIRCLEMUD
The EXE's will be placed in the CircleMUD BIN directory.
Now, define the logical CIRCLEMUD_BIN to point to the "BIN" directory of
the CircleMUD directory like this...
$ DEFINE/SYSTEM/EXEC CIRCLEMUD_BIN DISK$WORK:[CIRCLE30BPL16.BIN]
To run CircleMUD, just execute the "VMS_AUTORUN.COM" file in the CircleMUD
root directory.
To customize how CircleMUD runs, edit the "VMS_CIRCLEMUD.COM" file in the
BIN directory.
To customize CircleMUD features (like player killing etc) edit the "CONFIG.C"
file in the SRC directory.
To edit the CircleMUD login message, edit the GREETINGS.; file found in the
TEXT directory under the LIB directory.
For the CircleMUD utilities, execute the file VMS_MUD_UTILS.COM in the
BIN directory and it will create the VMS symbols for the utilities.
If you have any problems, questions, comments, feel free to e-mail me at
byer@mail.ourservers.net and I'll try my best to answer them all.

24
doc/README.WATCOM Normal file
View file

@ -0,0 +1,24 @@
Compiling CircleMUD
under Microsoft Windows 95 or Windows NT
using Watcom v.11
The following information is from Joe Osburn <joeos19@idt.net>.
Circle apparently compiles under 95/NT using Watcom's compiler with
the following changes:
1- Copy conf.h.win to conf.h
2- Rename all the act.* files to other names; the IDE in Watcom apparently
doesn't like files that start with act.*
3- In Watcom make a new project that is a Windows 95 character mode
executable; add all of Circle's .c files to it.
4- Remove the line that says "#define chdir _chdir" from sysdep.h
If you have any further information, patches, or more detailed instructions,
please mail them to us at bugs@circlemud.org.

52
doc/README.WIN Normal file
View file

@ -0,0 +1,52 @@
Compiling CircleMUD
under Microsoft Windows 95 and NT
by Jeremy Elson
For help, write to help@circlemud.org
There are a number of different compilers available for Microsoft Windows
95 and NT that can be used to compile CircleMUD. Each compiler works
differently, so each compiler has a different set of instructions.
For up-to-date information on compiling CircleMUD under Windows, check out
Rob Baumstark's page at http://shirak.circlemud.net/
We currently have instructions for using the following compilers:
1. Cygnus CYGWIN (Formerly Cygnus GNU-Win32). This is a FREE
compiler for Microsoft Windows 95 and NT! If you don't own a
compiler, you can just download this one off the net and get
Circle up and running in no time. Read the file README.CYGWIN
(submitted by David Goldstein <goldstei@cs.sunysb.edu>).
Please note however that the CYGWIN system is not recommended
for those unfamiliar with the Unix environment.
2. Microsoft Visual C++ version 4.x -- read the file README.MSVC4
3. Microsoft Visual C++ version 5.x -- read the file README.MSVC5
4. Borland C++ -- read the file README.BORLAND
5. Watcom C++ v.11 -- read the file README.WATCOM
It should be possible to compile CircleMUD using other compilers that are
not listed here, or other versions of these compilers -- as long as they
support long filenames, etc. However, we don't have instructions handy
for those compilers. Rob's page (http://www.connect.ab.ca/~rbmstrk) has
a lot of useful information about compiling under Windows; try looking
there for tips.
However, it not easy (and maybe even impossible) to compile at all
under Windows 3.x or DOS because they lack a number of features that
Circle requires such as the Win32 API and long filenames. It is
theoretically possible to compile under Windows 3.x by finding 3.x API
equivalents to the Win32 API calls, and changing all the filenames in
the entire distribution to fit the 8.3 DOS/Win3.x filenaming standard,
but I will never do this.
Have fun!
Jeremy Elson
(To get help, write to help@circlemud.org)

BIN
doc/act.pdf Normal file

Binary file not shown.

BIN
doc/admin.pdf Normal file

Binary file not shown.

BIN
doc/building.pdf Normal file

Binary file not shown.

BIN
doc/coding.pdf Normal file

Binary file not shown.

BIN
doc/color.pdf Normal file

Binary file not shown.

BIN
doc/files.pdf Normal file

Binary file not shown.

BIN
doc/hacker.pdf Normal file

Binary file not shown.

BIN
doc/license.pdf Normal file

Binary file not shown.

239
doc/license.txt Normal file
View file

@ -0,0 +1,239 @@
/* ************************************************************************
* Copyright (C) 1995 by Jeremy Elson *
* All Rights Reserved *
************************************************************************ */
CircleMUD License
CircleMUD was created by:
Jeremy Elson
Department of Computer Science
Johns Hopkins University
Baltimore, MD 21218 USA
jelson@circlemud.org
CircleMUD is licensed software. This file contains the text of the CircleMUD
license. If you wish to use the CircleMUD system in any way, or use any of
its source code, you must read this license and are legally bound to comply
with it.
CircleMUD is a derivative work based on the DikuMUD system written by Hans
Henrik Staerfeldt, Katja Nyboe, Tom Madsen, Michael Seifert, and Sebastian
Hammer. DikuMUD is also licensed software; you are legally bound to comply
with the original DikuMUD license as well as the CircleMUD license if you
wish to use CircleMUD.
Use of the CircleMUD code in any capacity implies that you have read,
understood, and agreed to abide by the terms and conditions set down by this
license and the DikuMUD license. If you use CircleMUD without complying with
the license, you are breaking the law.
Using CircleMUD legally is easy. In short, the license requires three things:
1) You must not use CircleMUD to make money or be compensated in any way.
2) You must give the authors credit for their work.
3) You must comply with the DikuMUD license.
That's it -- those are the main conditions set down by this license.
Unfortunately, past experience has shown that many people are not willing
to follow the spirit of the license, so the remainder of this document will
clearly define those conditions in an attempt to prevent people from
circumventing them.
The first condition says that you must not use CircleMUD to make money in
any way or be otherwise compensated. CircleMUD was developed in people's
uncompensated spare time and was given to you free of charge, and you must
not use it to make money. CircleMUD must not in any way be used to
facilitate your acceptance of fees, donations, or other compensation.
Examples include, but are not limited to the following:
-- If you run CircleMUD, you must not require any type of fee or donation
in exchange for being able to play CircleMUD. You must not solicit,
offer or accept any kind of donation from your players in exchange for
enhanced status in the game such as increased levels, character stats,
gold, or equipment.
-- You must not solicit or accept money or other donations in exchange for
running CircleMUD. You must not accept money or other donations from
your players for purposes such as hardware upgrades for running
CircleMUD.
-- You must not sell CircleMUD. You must not accept any type of fee in
exchange for distributing or copying CircleMUD.
-- If you are a CircleMUD administrator, You must not accept any type of
reimbursement for money spent out of pocket for running CircleMUD, i.e.,
for equipment expenses or fees incurred from service providers.
The second part of the license states that you must give credit to the
creators of CircleMUD. A great deal of work went into the creation of
CircleMUD, and it was given to you completely free of charge; claiming that
you wrote the MUD yourself is a slap in the face to everyone who worked to
bring you a high quality product while asking for nothing but credit for
their work in return.
Specifically, the following are required:
-- The text in the 'credits' file distributed with CircleMUD must be
preserved. You may add your own credits to the file, but the existing
text must not be removed, abridged, truncated, or changed in any way.
This file must be displayed when the 'credits' command is used from
within the MUD.
-- The "CIRCLEMUD" help entry must be maintained intact and unchanged, and
displayed in its entirety when the 'help circlemud' command is used.
-- The login sequence must contain the names of the DikuMUD and CircleMUD
creators. The 'login sequence' is defined as the text seen by players
between the time they connect to the MUD and when they start to play
the game itself.
-- This license must be distributed AS IS with all copies or portions of
the CircleMUD that you distribute, if any, including works derived from
CircleMUD.
-- You must not remove, change, or modify any notices of copyright,
licensing or authorship found in any CircleMUD source code files.
-- Claims that any of the above requirements are inapplicable to a particular
MUD for reasons such as "our MUD is totally rewritten" or similar are
completely invalid. If you can write a MUD completely from scratch then
you are encouraged to do so by all means, but use of any part of the
CircleMUD or DikuMUD source code requires that their respective licenses
be followed, including the crediting requirements.
The third part of the license simply states that you must comply with the
DikuMUD license. This is required because CircleMUD is a DikuMUD derivative.
The DikuMUD license is included below.
You are allowed to use, modify and redistribute all CircleMUD source code
and documentation as long as such use does not violate any of the rules
set down by this license.
--Jeremy Elson
CircleMUD 3 -- Copyright (C) 1994-2001, The CircleMUD Group
Other portions copyright by authors as noted in ChangeLog and source code.
===========================================================================
Everything below this line is the original, unmodified DikuMUD license.
You must comply with the CircleMUD license above, as well as the DikuMUD
license below.
---------------------------------------------------------------------------
/* ************************************************************************
* Copyright (C) 1990, 1991 *
* All Rights Reserved *
************************************************************************* */
DikuMud License
Program & Concept created by
Sebastian Hammer
Prss. Maries Alle 15, 1
1908 Frb. C.
DENMARK
(email quinn@freja.diku.dk)
Michael Seifert
Nr. Soeg. 37C, 1, doer 3
1370 Copenhagen K.
DENMARK
(email seifert@freja.diku.dk)
Hans Henrik St{rfeldt
Langs} 19
3500 V{rl|se
DENMARK
(email bombman@freja.diku.dk)
Tom Madsen
R|de Mellemvej 94B, 64
2300 Copenhagen S.
DENMARK
(email noop@freja.diku.dk)
Katja Nyboe
Kildeg}rdsvej 2
2900 Hellerup
31 62 82 84
DENMARK
(email katz@freja.diku.dk)
This document contains the rules by which you can use, alter or publish
parts of DikuMud. DikuMud has been created by the above five listed persons
in their spare time, at DIKU (Computer Science Instutute at Copenhagen
University). You are legally bound to follow the rules described in this
document.
Rules:
!! DikuMud is NOT Public Domain, shareware, careware or the like !!
You may under no circumstances make profit on *ANY* part of DikuMud in
any possible way. You may under no circumstances charge money for
distributing any part of dikumud - this includes the usual $5 charge
for "sending the disk" or "just for the disk" etc.
By breaking these rules you violate the agreement between us and the
University, and hence will be sued.
You may not remove any copyright notices from any of the documents or
sources given to you.
This license must *always* be included "as is" if you copy or give
away any part of DikuMud (which is to be done as described in this
document).
If you publish *any* part of dikumud, we as creators must appear in the
article, and the article must be clearly copyrighted subject to this
license. Before publishing you must first send us a message, by
snail-mail or e-mail, and inform us what, where and when you are
publishing (remember to include your address, name etc.)
If you wish to setup a version of DikuMud on any computer system, you
must send us a message , by snail-mail or e-mail, and inform us where
and when you are running the game. (remember to include
your address, name etc.)
Any running version of DikuMud must include our names in the login
sequence. Furthermore the "credits" command shall always cointain
our name, addresses, and a notice which states we have created DikuMud.
You are allowed to alter DikuMud, source and documentation as long as
you do not violate any of the above stated rules.
Regards,
The DikuMud Group
Note:
We hope you will enjoy DikuMud, and encourage you to send us any reports
on bugs (when you find 'it'). Remember that we are all using our spare
time to write and improve DikuMud, bugs, etc. - and changes will take their
time. We have so far put extremely many programming hours into this project.
If you make any major improvements on DikuMud we would be happy to
hear from you. As you will naturally honor the above rules, you will receive
new updates and improvements made to the game.

BIN
doc/porting.pdf Normal file

Binary file not shown.

BIN
doc/release.pdf Normal file

Binary file not shown.

BIN
doc/socials.pdf Normal file

Binary file not shown.

74
doc/syserr.txt Normal file
View file

@ -0,0 +1,74 @@
There are many common errors that can be created by changing things in the
code or having builders try inappropriate things. Here are a few, this is list
will be continually developed, if you have any additions or corrections please
stop by the Builder Academy: builderacademy.net 9091
--Rumble
1. Errant Rooms (show error)
2. SYSERR: Object # (oedit-s-desc) doesn't have drink type as last alias.
3. SYSERR: Mob # both Aggressive and Aggressive_to_Alignment.
4. SYSERR: Object # (oedit-s-desc) has out of range level #.
5. SYSERR: Object # (oedit-s-desc) has negative weight (-2147483644).
SYSERR: Object # (oedit-s-desc) has out of range level #2147483647.
6. SYSERR: Object # (oedit-s-desc) uses 'UNDEFINED' spell #.
7. SYSERR: Object # (oedit-s-desc) contains (5) more than maximum (3).
8. Char is already equipped: (medit-s-desc), (oedit-s-desc)
1: Errant Rooms
------------
1: [ 1233] Rumble's Room
The most common are exits to 0 (the void). This happens when a builder
modifies a room exit but does not include an exit room vnum. These errant
rooms are listed by the command 'show error' The fix is simple, remove the
exit by purge exit in redit exit menu or by using 'dig <direction> -1'
2: SYSERR: Object # (oedit-s-desc) doesn't have drink type as last alias.
Another common error is caused by how shop code handles drink containers
poorly. In order for shops to display a jug as a jug of <drink type> they
must have the drink type as the last alias. It is good practice to put the
drink type as the first and last word of an objects namelist (older verions
of CircleMUD expect it first).
i.e. a shot of whisky should have the namelist: whisky shot whisky
a cup of slime mold juice namelist should be: juice cup slime juice
3: SYSERR: Mob # both Aggressive and Aggressive_to_Alignment.
Another harmless error. If your mob is aggressive there is no need to also
make it aggressive to certain alignments since AGGR means it will attack any
player it can see. Choose to make it aggressive to an alignment or aggressive
to all.
4: SYSERR: Object # (oedit-s-desc) has out of range level #.
A simple one. Limit spell levels to the levels available, on TBA that would
be 1-34.
5: SYSERR: Object # (oedit-s-desc) has negative weight (-2147483644).
SYSERR: Object # (oedit-s-desc) has out of range level #2147483647.
These are really annoying. This happens when you use numbers larger than
necessary. This will actually crash many older versions of CircleMUD. Just do
not do it. Use realistic numbers.
6: SYSERR: Object # (oedit-s-desc) uses 'UNDEFINED' spell #.
There is no spell zero. Either select a spell or put -1 for none.
7: SYSERR: Object # (oedit-s-desc) contains (5) more than maximum (3).
When making a drink container you will set how much it initially contains
on creation and the max it can hold if a player were to fill it. Common sense
tells us that you can not create a container that initially holds more than
the max you set. To simplify the max must always be greater than or equal to
the initial amount.
8: Char is already equipped: (medit-s-desc), (oedit-s-desc)
This happens when someone tries to equip a mob with one or more object in
a single location. HELP ZEDIT-EQUIP for all the possible object equipping
locations. All you have to do to fix this is pick a different equip location
that is not used.

BIN
doc/utils.pdf Normal file

Binary file not shown.

28
lib/README Normal file
View file

@ -0,0 +1,28 @@
Getting To Know Your "lib" Directory
------------------------------------------------------------------------------
etc/ Files maintained by the game which you should not touch while
the game is running.
house/ Crash-save files for player houses.
misc/ Miscellaneous database files such as fight messages, invalid names,
and socials.
plralias/ All of your player's aliases are stored here in the same
three letter encoding scheme as the plrobjs/ directory.
plrfiles/ ASCII player files.
plrobjs/ The hierarchy containing player object files (i.e. crash files,
rent files, cryo-rent files, etc.).
plrvars/ Trigger variables.
text/ Files meant to be directly read by players such as MOTD (message of
the day), help files, and the immortal handbook. You can change
these files while the game is running, and then have the mud re-read
them using the 'reboot' command.
world/ The hierarchy of the world files (mobiles, objects, shops, rooms,
triggers, and zones).

0
lib/etc/badsites Normal file
View file

0
lib/etc/hcontrol Normal file
View file

1
lib/house/README Normal file
View file

@ -0,0 +1 @@
This directory is to save objects in player houses.

0
lib/misc/bugs Normal file
View file

0
lib/misc/ideas Normal file
View file

887
lib/misc/messages Normal file
View file

@ -0,0 +1,887 @@
* Note: all lines between records which start with '*' are comments and
* are ignored. Comments can only be between records, not within them.
*
* This file is where the damage messages go for offensive spells, and
* skills such as kick and backstab. Also, starting with Circle 3.0, these
* messages are used for failed spells, and weapon messages for misses and
* death blows.
*
* All records must start with 'M' in the first column (for 'Message').
* The next line must contain the damage number (defined in spells.h),
* then the messages (one per line):
* Death Message (damager, damagee, onlookers)
* Miss Message (damager, damagee, onlookers)
* Hit message (damager, damagee, onlookers)
* God message (damager, damagee, onlookers)
*
* All messages must be contained in one line. They will be sent through
* act(), meaning that all standard act() codes apply, and each message will
* automatically be wrapped to 79 columns when they are printed. '#' can
* be substituted for a message if none should be printed. Note however
* that, unlike the socials file, all twelve lines must be present for each
* record, regardless of any '#' fields which may be contained in it.
***************************************************************************
* Offensive Spells *
***************************************************************************
* Burning Hands
M
5
You have burned $N to death!
You have been burned to death by $n!
$n has burned $N to death!
You miss $N with your burning hands.
$n reaches for you with burning hands, but misses!
$n tries to burn $N, but $E escapes!
You burn $N with your hot little hands!
You cry out in pain as $n grabs you with burning hands!
$N cries out as $n burns $M!
Your attempt to burn $N nears BLASPHEMY!!!
The pitiful creature before you tries to burn you.
Unaware of the risks, $n tries to burn $N.
* Call Lightning
M
6
Your lightning bolt kills $N!
You are electrocuted to death by a lightning bolt sent by $n!
The dead body of $N sizzles in the heat from a lightning bolt sent by $n!
Your lightning bolt scores the ground in front of $N, a misser!
The ground before you is scored as $n misses you with lightning!
$N jumps backwards in time to avoid lightning sent by $n!
You hit $N with your lightning, bullseye!
You are hit by lightning sent by $n, OUCH!
$N screams in pain as lightning from $n penetrates $M!
$N stops your lightning with a single gesture, BEWARE!!!
You stop $n's lightning with a sure hand, no time for children's games...
$n's lightning disappears as $N makes a simple gesture.
* Chill Touch
M
8
You chill $N, remember to put flowers on $S grave...
You feel chilled by $n and then you feel no more -- R.I.P.
$n touches $N who slumps to the ground as a dead lump, rather chilly isn't it?
The atmosphere turns chilly as you miss $N!
You dodge $n and $s chill touch!
$n tries unsuccesfully to chill $N!
You chill $N!
You feel your life flowing away as $n chills you!
$n chills $N who suddenly seem less lively!
Are you trying to chill $N? -- what a joke!!
$n tries to chill you, what a laugh...
$N starts to laugh as $n turns chilly!
* Color Spray
M
10
YOU KILLED $N!!! -- don't you feel ashamed...
Your head is filled with all the colors of the rainbow before it bursts!
$n makes $N into a colorful corpse!
Your spray of color misses $N -- what a dull world...
$n unsuccesfully tries to add color to your life!
$n splashes color everywhere except $N.
Your own private rainbow hits $N in the face -- WOWIE!!
A sudden burst of colors sends you reeling!
$n throws colors at $N who in vain tries to escape!
Your spray of colors turn into butterflies as $N frowns.
Your frown is enough to turn $n's color spray into little butterflies.
The air is filled with butterflies as $N frowns at $n's color spray.
* Dispel Evil
M
22
$N is dissolved by your goodness.
$n dissolves you, you regret having been so evil, and die...
$n completely dissolves $N!
$N is unaffected by your goodness!
$n thinks that $e is really good, and tries to dispell you.
$N laughs at $n as $e tries to dispell $M!
$N shivers and suffers from $S evilness!
$n makes your soul hurt and suffer!
$n makes $N's evil spirit shiver and suffer!
Did you really expect $M to suffer?
$n unfruitfully tries to dispell you.
$n is stupid...
* Earthquake
M
23
The earth opens beneath $N's feet and swallows $M whole!
The earth opens beneath your feet and swallows you whole!
The earth opens beneath $N's feet and swallows $M whole!
$N desperately tries to keep $S balance as the earth shakes beneath $S feet!
You desperately try to keep your balance as the earth shakes beneath your feet!
$N desperately tries to keep $S balance as the earth shakes beneath $S feet!
$N falls down and hurts $Mself!
You fall down and hurt yourself!
$N falls down and hurts $Mself!
$N gracefully levitates as the earth shifts beneath $S feet under $M.
You gracefully levitate as the earth shifts underneath you.
$N gracefully levitates as the earth shifts beneath $S feet under $M.
* Energy Drain
M
25
$N crumples as you kill $M by draining $S energy!
As $n drains your last energy you look forward to the peace of the graveyard...
$n drains the energy of $N who crumples as a lifeless cocoon!
You need more draining lessons...
Luckily for you $n slept during draining-lessons!
$n fails to drain $N -- what a waste of energy!
You drain $N of some of $S energy!
You feel less energic as $n drains you!
$n drains $N -- what a waste of energy!
You waste energy trying to drain $N!
How amusing -- $n tries to drain you!
$N's eyes twinkle with laughter as $n tries to drain $M.
* Fireball
M
26
Your fireball hits $N with full force, causing an immediate death!
As you burst into flames of death $n grins evilly...
The heat from a fireball from $n turns $N into a charred corpse!
Your fireball blooms few feet before $N who claps $S hands in wonder.
$n aims a fireball at you but it blooms few feet before you; you clap your hands at the show.
A fireball from $n misses $N -- what great fireworks around here!!
You throw a fireball at $N and have the satisfaction of seeing $M enveloped in flames!
You are enveloped in flames from a fireball sent by $n -- OUCH!!
$n smirks as $s fireball explodes into the face of $N!
How shameful to throw fireballs at a GOD!!!
You choose to ignore $n's shameful attempt to fireball you.
$n's fireball is tactfully ignored by $N.
* Harm
M
27
As you finish the incantation of the spell, $N falls dead due to the amount of harm $E takes!
You feel light headed as $n completes a spell which causes you so much harm that you just snuff it.
As $n touches $M, $N takes the full brunt of a harm spell and collapses. Dead.
Swinging out at $N, you miss and your harm spell goes off harmlessly.
You duck out of the way of $n and $s harm spell misses you.
Showing remarkable dexterity, $N avoids $n's reach and subsequent harm spell.
You watch the pained expression on $N's face as you hit $M with your harm spell.
You grimace in pain as $n's harm spell strikes you.
A large grin crosses $n's face as $s harm spell causes $N grievous pain.
Harm a god? Are you serious? Of course $N avoids it casually.
$n tries to harm you. Poor sod.
What a buffoon! $n looks somewhat perturbed as $N ignores the recently cast harm spell.
* Lightning Bolt
M
30
Your lightning bolt shatters $N to pieces!
You feel enlightened by the lightning bolt $n sends, and then all is darkness -- R.I.P.!
$N recieves the full blast of a lightning bolt from $n... and is no more.
Your aim goes from bad to worse, and your lightning bolt misses $N!
$n has bad aim and $s lightning bolt misses you!
$n tries to hit $N with a lightning bolt but only hits the sky!
The lightning bolt hits $N with full impact!
YOU'RE HIT! A lightning bolt from $n has reached its goal!
$N wavers under the impact of the lightning bolt sent by $n!
Your lightning bolt is extinguished as mighty $N moves $S ears!
You move your ears to extinguish $n's lightning bolt.
$N moves $S ears and $n's lightning bolt is extinguished!
* Magic Missile
M
32
The magic missile tears away the remaining life of $N!
You only have time to notice $n uttering strange sounds before everything is dark!
The magic missile sent by $n causes $N to stagger and collaps in a lifeless heap!
The magic missile penetrates the air miles above $N.
You don't even have to duck as $n sends a magic missile way over your head.
$n tries in vain to correct the course of the magic missile meant to hit $N.
You watch with selfpride as your magic missile hits $N!
You stagger as a magic missile from $n hits you!
$n throws a magic missile at $N who staggers under the blow!
Your magic missile makes $N roar with laughter.
You can't help laughing as $n sends a magic missile at you.
$N starts to roar with laughter as $n sends a magic missile at $M.
* Shocking Grasp
M
37
$N dies while looking rather shocked!
$n shocks you. Unfortunately your heart can't stand it...
$n reveals with a shock that $N has left $S body!
$N rather shockingly evades your grasp!
You nimbly dodge a shocking grasp from $n!
$N shockingly evades the grasp of $n!
You get a good hold of the shocked $N!
You get a shock as $n gets too close to you!
$N looks shocked as $n grasps at $M!
You shockingly realize you can't shock $N...
These puny creatures are shocking at times...
The atmosphere gets loaded as $n tries to shock $N!
* Dispel Good
M
46
$N is dissolved by your evil.
$n dissolves you -- the price paid for leading a good life -- you die...
$n completely dissolves $N!
$N is unaffected by your evil!
$n thinks that $e is really evil, and tries to dispell you.
$N laughs at $n as $e tries to dispell $M!
$N shivers and suffers from $S goodness!
$n makes your soul hurt and suffer!
$n makes $N's good spirit shiver and suffer!
Did you really expect $M to suffer?
$n unfruitfully tries to dispell you.
$n is stupid...
***************************************************************************
* Offensive Skills *
***************************************************************************
* Backstab
M
131
$N makes a strange sound but is suddenly very silent as you place $p in $S back.
Suddenly $n stabs you in the back, R.I.P....
$n places $p in the back of $N, resulting in some strange noises, a lot of blood, and a corpse.
$N quickly avoids your backstab and you nearly cut your own finger!
$n tries to backstab you, but you avoid $m!
$n tries to backstab $N but nearly cuts $s own finger!
$N makes a strange sound as you place $p in $S back!
Suddenly $n stabs you in the back!
$n places $p in the back of $N, resulting in some strange noises and some blood!
$N sends you a look that makes you forget all about backstabbing.
$n tries to backstab you, but changes $s mind.
$n tries to backstab $N, but changes $s mind.
* Bash
M
132
$N doesn't recover from your bash! -- $E is dead.
As $n bashes at you, you give up living and die...
$N dies after $n has bashed $M!
As $N avoids your bash, you topple over and fall to the ground!
You dodge a bash from $n who loses $s balance and falls!
$N avoids being bashed by $n who loses $s balance and falls!
Your bash at $N sends $M sprawling!
$n sends you sprawling with a powerful bash!
$n sends $N sprawling with a powerful bash!
Your effort to bash $N sends YOU sprawling on the ground.
$n fruitlessly tries to bash you and is sent sprawling.
$n dares a bash at $N and is sent sprawling without touching $M.
* Kick
M
134
Your kick at $N's kidneys made $M die.
$n kills you by kicking your kidneys in!
$N dies from $n's last kick in $S kidneys!
Your beautiful full-circle kick misses $N by a mile.
$n makes a nice balletstep which plants $s foot a mile above your head.
$n makes a nice balletstep which plants $s foot a mile above $N's head.
Your boots need polishing again -- blood all over them...
$n wipes $s boots in your face!
$n wipes $s boots in the face of $N!
$N makes you kick at a huge stone appearing from nowhere -- OUCH!
You make $n kick a huge stone appearing from nowhere -- *giggle*
$n starts kicking a huge stone which suddenly appears.
M
134
Your kick at $N's face splits $S head open -- yummy!
$n aims a kick at your face which splits your head in two!
$n neatly kicks $N's head into pieces -- YUMMY!
You miss your kick at $N's groin, much to $S relief...
$n misses a kick at your groin, you breathe lighter now...
$n misses a kick at $N's groin, much to $N's relief...
Your kick hits $N in the solar plexus!
You're hit in solar plexus, wow, this is breathtaking!!
$n kicks $N in solar plexus, $N is rendered breathless!
You attempt to kick $N but lose your balance and fall face down in some mud that has suddenly appeared.
When $n tries to kick you, you quickly make him fall in some mud you have created.
$n falls face down in some mud created by $N.
***************************************************************************
* Weapon Attacks *
***************************************************************************
* Hit
M
300
You punch $N's head with a blow that crushes $S skull!
$n punches your head with a blow that crushes your skull!
$n punches $N's head so hard that $S skull cracks open!
You swing your fist at $N, but miss $M!
You barely avoid $n's fist as $e takes a swing at you!
$N barely avoids a blow from $n!
#
#
#
Your fist flops as your body refuses to fight the mighty $N.
$n seems to be having trouble getting $s body to fight you!!
$n's body rebels against $m when $e tries to punch $N.
M
300
You punch $N in $S kidneys resulting in $S immediate death!
You recieve a punch in your kidneys which ends your worldly misery -- R.I.P.!
$n punches $N in the kidneys causing immediate death!
You wildly punch at the air, missing $N.
$n misses a wild punch at you.
$n practices shadow-boxing while $N takes a break.
#
#
#
Instead of letting you punch $M, $N forces you to play Punch and Judy!!!
You convince $n of playing Punch and Judy instead of punching you.
$N convinces $n that no punching is necessary.
M
300
You hit $N with such force that $S neck snaps in two!
$n hits you with such force that your neck snaps in two!
$N's neck is snapped in two by a powerful blow from $n!
You try to hit $N who easily avoids the blow.
$n tries to hit you but you easily avoid the blow.
$n tries to hit $N who easily avoids the blow.
#
#
#
You try to hit $N but hit yourself instead!
$n tries to hit you but you hits $mself instead!
$n tries to hit $N but hits $mself instead!
M
300
You hit $N with a blow that breaks $S spine!
$n hits you with a blow that breaks your spine!
$n hits $N with a blow that breaks $S spine!
$N ducks under your fist as you try to hit $M.
You duck under $n's fist as $e takes a swing at you.
$N ducks under $n's fist as $e takes a swing at $M.
#
#
#
It isn't polite to swing at a GOD!
$n tries to take a swing at you -- how pathetic!
$n pathetically tries to take a swing at $N - ha!
* Sting
M
301
You drive a sting directly into the heart of $N, killing $M!
With a powerful driving force, $n's sting tears right through your chest causing instant death!
$n drives $s sting through $N's chest, killing $M!
You miss $N with your stinging blow!
$n drives $s stinging blow at you, barely missing!
You watch in fright as $n stings at $N, missing by mere inches!
#
#
#
Sting -- God... What are you thinking?
$n tries to sting you, somewhat comical to tell the truth.
$n stings at $N, then looks horrified as $N grins at $m!
M
301
You violently sting $N repeatedly, causing $S death!
You die a horrid death as $n stings you repeatedly all over your body!
As $n stings $N all over the place, $N falls lifeless to the ground.
You sting towards $N, but miss $M!
$n misses you with $s sting!
You watch on as $n stings at $N, but misses!
#
#
#
You sting at $N, and all that happens is that $E slaps himself as if a mosquito bit $M.
Was that a bee you just felt? Oh.. wait, it was just $n.
$N begins to slap at $Mself as $n tries to sting $M.
* Whip
M
302
You whip $N's head right off of $S body!
$n whips your head right off of your body!
$n whips $N's head right off of $S body!
You crack your whip at $N but it hits you in the face!
$n cracks $s whip at you and it hits $m in the face!
$n cracks $s whip at $N but only hits $mself in the face!
#
#
#
You'd better stop before $N whips your butt.
Pathetic little $n is trying to whip you... how cute.
$n tries to whip $N - isn't he cute?
M
302
Your dextrous whip messily tears $N's torso right off!
$n's whip messily tears you right in half!
With an evil grin, $n messily whips $N in half!
You try to whip $N but whip the ground instead!
$n tries to whip you but whips the ground instead!
$n tries to whip $N but whips the ground instead!
#
#
#
Don't try to whip $N.
$n is trying to whip you. Yawn.
$n tries to whip $N - yawn.
* Slash
M
303
You beautifully slash $N into two parts -- both dead.
Your upper body is disconnected from your legs as $n slashes at you -- R.I.P.!
$N is slashed in two by a masterful stroke of $n!
Your desperate slash at $N is easily avoided by $M.
You easily avoid a slash from $n.
$N nimbly avoids $n's slash.
#
#
#
Your cunning slash at $N is fruitless.
You nimbly stop a slash from $n.
$N stops a cunning slash from $n who looks disappointed.
M
303
Your slash at $N results in a pool of blood and $S immediate death!
Blood spurts all over as $n slashes at you. You die...
$n slashes at $N who colors everything red with blood from $S lethal wound.
You miss $N by an inch, curse that brat!
You manage to dodge $n's slash and laugh, HA!
$n's slash misses $N who laughs in sheer delight, HA!
#
#
#
Come on, what makes you think you can slash at a GOD?!
You barely register the puny creature before you...
The great $N seems to ignore $n's slashes.
M
303
$N cries out in agony as you slash $S ribcage open!
Your ribcage is slashed open by $n -- R.I.P.!
$n nicely dissects $N's ribcage with a single slash!
You try to slash $N but miss by a mile.
$n's slash misses you by a mile.
$n's slash at $N misses $M by a mile.
#
#
#
It's rude to try to slash a GOD, you know.
$n tries to slash you -- how rude!
$n tries to slash $N -- how rude!
M
303
Your powerful slash cleanly cuts off $N's head, which rolls away with a look of horror on it.
You briefly feel the sensation of flight as $n slices your head cleanly off!
$n cleanly slices off $N's head which rolls away with a look of horror on it!
$N is cooled by the breeze of your missed slash at $M.
$n cools you with the breeze of $s missed slash at you.
$n cools $N with the breeze of $s missed slash.
#
#
#
Yeah, right.
$n tries to slash you... yeah, right.
$n tries to slash $N... yeah, right.
* Bite
M
304
You sink your teeth deep into $N's neck -- blood sprays everywhere!
$n sinks $s teeth deep into your neck, tearing your jugular vein to bits!
$n sinks $s teeth deep into $N's neck, tearing $S jugular vein to bits!
You snap your teeth at $N but miss him.
$n snaps $s teeth at you fiercly but misses.
$n fiercly snaps $s teeth at $N but misses the mark.
#
#
#
You attempt to bite $N. Ouch! That hurt!
$n tries to bite you, how funny.
$n tries to bite $N - funny, huh?
M
304
You bite $N through $S ribcage and into $S heart -- $e falls to the ground in agony.
$n bites you right through your ribcage and into your heart -- you fall to the ground writhing in agony...
$n's powerful jaw bites through $N's ribcage into $S heart -- $E falls to the ground writhing in agony!
You try to bite $N but bite your tongue instead.
$n tries to bite you but bites $s tongue instead!
$n tries to bite $N but bites $s own tongue instead!
#
#
#
Aren't you trying to bite off more than you can chew?
$n snaps at you but realizes $e is biting off more than $e can chew.
$n stupidly tries to bite off more than $e can chew by snapping at $N.
* Bludgeon
M
305
You forcefully bludgeon $N whose head suddenly cracks open like a walnut!
$n bludgeons your head which cracks open like a walnut!
$n ruthlessly bludgeons $N whose head cracks open like a walnut!
You fruitlessly try to bludgeon $N.
You easily dodge $n's attempt to bludgeon you.
$n tries to bludgeon $N who easily avoids the blow.
#
#
#
Your attempt to bludgeon $N fails, luckily for you $N has a good sense of humor!
Your patience is tried when $n tries to clobber you.
$N restrains $Mself from zapping $n when $e attempts to bludgeon the mighty one.
M
305
Your relentless bludgeoning of $N finally results in $S broken neck!
$n's relentless bludgeoning of you finally results in your broken neck!
$n's relentless bludgeoning of $N finally results in $N's broken neck!
You try to bludgeon $N who simply laughs at you.
$n tries to bludgeon you, but you avoid $m and laugh.
$N laughs at $n's attempt to bludgeon $M.
#
#
#
Your attempt to bludgeon $N fails, luckily for you $N has a good sense of humor!
Your patience is tried when $n tries to clobber you.
$N restrains $Mself from zapping $n when $e attempts to bludgeon the mighty one.
* Crush
M
306
You crush $N right out of existence!
$n crushes you right out of existence!
$n crushes $N right out of existence!
You try to crush $N who jumps out of the way!
$n tries to crush you but you jump out of the way!
$n tries to crush $N who jumps out of the way!
#
#
#
A pox on thee and thy pitiful crush on $N!
$n seems to have a crush on you...
$n seems to have a crush on $N...
M
306
You crush $N's entire body, making a terrible mess!
$n crushes your entire body, making a terrible mess!
$n crushes $N's entire body, making a terrible mess!
You hopelessly try to crush $N.
$n hopelessly tries to crush you.
$n hopelessly tries to crush $N.
#
#
#
A pox on thee and thy pitiful crush on $N!
$n seems to have a crush on you...
$n seems to have a crush on $N...
* Pound
M
307
You pound $N right into the ground!
$n pounds you six feet under.
$n pounds $N mightily on the head, crushing $S entire body!
You pound at the air as $N nimbly steps out of the way!
You jump out of the way in a panic as $n pounds at you!
$n looks perturbed as $s pound misses $N!
#
#
#
You pound $N! And $E thanks you for it? *boggle*
$n gives you a pound. Wonder what the exchange rate is...
$n starts giving pounds to $N who begins to count the money.
M
307
You pound on $N with reckless abandon when you realize that $E is dead.
With $s reckless pounding attacks, you succomb to death.
$N falls under $n's pounding blows, yet $n continues $s attack!
You hear the air whistle as you split the air with your pound!
$n pounds in your direction, causing a whistling sound!
With a loud whistle through the air, $n misses $s pounding attack upon $N!
#
#
#
Who are you trying to kid?
Hmmm... I think you missed the joke that $n was trying to tell you.
$N looks somewhat perplexed as $n tries to pound him!
* Claw
M
308
You claw $N's face right off!
$n claws your face right off!
$n claws $N's face right off!
You try to claw at $N but miss!
$n tries to claw at you but misses by a hair!
$n tries to claw at $N, missing by a hair!
#
#
#
You dummy! Not the claw, the claw!
$n must be crazy - trying to claw at you!
$n must be crazy - trying to claw at $N!
M
308
Your razor-sharp claws rip $N wide open!
$n's razor-sharp claws rip you wide open!
$n's razor-sharp claws rip $N wide open!
You try to claw at $N but almost nick yourself instead!
$n tries to claw at you but nearly nicks $mself instead!
$n tries to claw at $N but nearly nicks $mself instead!
#
#
#
You dummy! Not the claw, the claw!
$n must be crazy - trying to claw at you!
$n must be crazy - trying to claw at $N!
* Maul
M
309
You maul $N across the chest and $E screams in pain as $E falls lifeless to the ground.
As $n mauls you in the chest, you feel a searing pain... then nothing.
With a brutal maul to the chest, $n slaughters $N!
You swing wildly with your maul, almost hitting yourself!
Phew! $n missed you with $s wild maul!
$n mauls at $N, missing wildly!
#
#
#
Mauling a God? What would your poor mother think? Of course, you probably wouldn't hesitate to maul her too.
$n tries to maul you, and as $e fails, looks quite horrified. How pleasant.
$N laughs as $n tries to maul $M. How comical.
* Thrash
M
310
You bring $N within the thrashing of $S life, and then thrash $M one last time, killing $M.
$n thrashes you violently, and you die.
With a horrible thrashing, $N falls lifeless under $n's blows!
You miss your thrash against $N!
What a stroke of luck, $n seems to have missed you with $s thrash!
$n thrashes madly at $N, missing $M!
#
#
#
Thrash a God? More likely that $N would thrash you, don't you think?
What a fool, $n tried to thrash you. *sigh*
Looking rather silly, $n tries to thrash at $N.
* Pierce
M
311
You succesfully pierce $N and $S dead body falls to the ground in a lifeless heap.
$n pierces you. You are no longer a living member of this world -- R.I.P.!
$n pierces $N whose suddenly lifeless body falls to the ground!
You try to pierce $N but pierce the air instead!
$n pierces holes in the air.
$n tries to pierce air instead of fighting $N.
#
#
#
The mighty $N begins to think you a nuisance!!!
Your patience is almost gone when you stare back at $n.
The air is loaded when $N angrily wards off a piercing attack from $n.
M
311
You pierce $N's heart, you heartbreaker you...
$n breaks your heart, goodbye cruel world...
$n pierces the heart of $N who falls to the ground clutching at the wound!
You lunge at $N without managing to pierce $M.
$n tries to pierce you but fails miserably.
$n lunges at $N but can't pierce $M.
#
#
#
The great $N sends you a piercing look, OOPS!
You return $n's pierce with a piercing look, hmmm...
$N returns $n's pierce with a piercing look, hmmm...
* Blast
M
312
You blast $N with all of your might, killing $M!
With $s powerful blast, $n tears your life from your body!
$N falls lifeless as $n's blast rips $M apart!
You blast wildly, missing $N by a mere inch or two!
You skillfully avoid $n's wild blast!
$n misses $N with $s wild blast! What luck $N seems to have!
#
#
#
Are you kidding? What do you expect your feeble blast to do to $N?
$n tried to blast you. Good thing you have blastproof armour.
$n looks afraid of the consequences as $e tries fruitlessly to blast $N.
* Punch
M
313
You punch at $N causing $S face to collapse under the blow, blood everywhere. Doesn't look like $N will recover. Ever.
$n's forceful punch causes you to see red, until you die shortly thereafter.
$n punches $N right in the face! There is blood everywhere, and $N seems to be dead!
You miss $N with your haymaker!
$n throws a haymaker at you which whistles by your ear!
$n just misses $N with a strong punch!
#
#
#
Punch a God? May be smarter to punch a wall for a bit. You might do more damage to it.
Is that a quiet whistling noise you hear as $n is swinging $s fist about?
$n looks like $e would prefer to have punched a wall rather than trying to punch $N.
* Stab
M
314
You stab $N through the heart! Instant death!
$n drives a stab at you, it pierces your heart! RIP!
$n stabs brutally at $N, killing him as $N is impaled by $n!
You stab at $N, missing!
$n misses a particularily nasty stab in your direction!
$n stabs at $N! $e misses!
#
#
#
You stab at $N! Too bad $E's a god, huh?
$n stabs at you! Lucky for you that you are immune to this kind of thing.
You watch in pity as $n stabs towards $N missing in the most futile way possible!
M
314
You stab forth towards $N, hitting $M in the abdomen causing a messy but mortal wound!
$n stabs you in the stomach, and you watch your insides fall out as you die.
Making a mess of $N, $n kills $M with a stab to the midsection.
You stab at $N, barely missing $M!
$n stabs at you, missing by a good mile or so!
$N grins at $n as the stab sent by $n goes wide!
#
#
#
Gods can't be stabbed, did noone ever teach you that? And $N just so happens to be one.
It sure is nice being a god isn't it... especially since $n can't hit you with $s stabs.
$n stabs at $N only to discover $N's immunity to stabbing weapons.
* Suffering
M
399
#
You feel wounded -- too wounded -- you die...
$N lies suffering on the ground until no blood is left in $S body.
#
suffer miss victim - should never see.
suffer miss room - should never see.
#
You lie on the ground suffering from your terrible wounds...
$N lies helplessly on the ground and suffers...
#
Suffer god victim - should never see.
Suffer god room - should never see.
M
399
#
You can only lie still as your last heartbeat ebbs...
$N suffers from bloodlack, and the lack of a beating heart...
#
suffer miss victim - should never see.
suffer miss room - should never see.
#
You lie on the ground suffering from bleeding wounds...
$N lies immobile on the ground, suffering...
#
Suffer god victim -- should never see.
Suffer god room -- should never see.
* Poison
M
33
#
Poison burns intensely in your veins... you shiver... you die.
$N has a few cramps and dies, suffering.
#
suffer miss victim - should never see.
suffer miss room - should never see.
#
You feel burning poison in your blood, and suffer.
$N looks really sick and shivers uncomfortably.
#
You have become poisoned somehow.
$N has somehow become poisioned.
***************************************************************************
* NPC Attacks *
***************************************************************************
* Fire Breath
M
202
$N is killed by fire breath.
You are burned to ash, as $n breathes on you.
$n makes $N to ash.
$N is missed by fire breath.
$n breathes fire at you, but you avoids it.
$N avoids $n's firebreath.
$N is hit by fire breath.
$n burns you.
$N is partly made ash, as $n breaths fire.
$N, being immortal, is just warmed.
$n warms you.
$n warms $N.
* Gas Breath
M
203
$N is killed by gas breath.
You die from the gas $n breathes on you.
$n kills $N with a gas breath.
$N is missed by gas breath.
$n breathes gas at you, but it has no effect.
$N avoids $n's gas.
$N is hit by gas breath.
$n gasses you.
$N is gassed by $n.
$N is immortal, so can't be gassed.
$n wants to gas you, but can't.
$n tries to gas $N, but can't.
* Frost Breath
M
204
$N is killed by frost breath.
You are frozen to ice, as $n breathes on you.
$n makes $N to ice.
$N is missed by frost breath.
$n breathes frost at you, but you avoid it.
$N avoids $n's frost breath.
$N is hit by frost breath.
$n freezes you with $s breath.
$N is partly made ice, as $n breathes frost.
$N is immortal, and thus avoids your frost breath.
$n supplies you with air conditioning.
$n supplies $N with air conditioning.
* Acid Breath
M
205
$N is killed by your acid breath.
You are corroded to nothing, as $n breathes on you.
$n corrodes $N to nothing.
$N is missed by acid.
$n breathes acid at you, but you avoids it.
$N avoids $n's acidbreath.
$N is hit by acid.
$n corrodes you.
$N is corroded as $n breaths acid.
$N is immortal, and thus is immune to acid.
$n helps you clean your hands with a little acid.
$n helps $N cleaning.
* Lightning Breath
M
206
$N is killed by your lightning breath.
You are killed by $n's lightning breath.
$n killes $N with a lightning breath.
$N is missed by your lightning breath.
$n breathes lightning at you, but you avoids it.
$N avoids $n's lightning breath.
$N is hit by your lightning breath.
$n hits you with a lightning breath.
$N is hit by $n's lightning breath.
$N is immortal and immune to lightning breath.
$n tries to breath lightning upon you.
$n tries to breath lightning upon $N.
$

796
lib/misc/socials Normal file
View file

@ -0,0 +1,796 @@
accuse 0 5
Accuse who??
#
You look accusingly at $M.
$n looks accusingly at $N.
$n looks accusingly at you.
Accuse somebody who's not even there??
You accuse yourself.
$n seems to have a bad conscience.
applaud 0 0
Clap, clap, clap.
$n gives a round of applause.
#
beg 0 0
You beg the gods for mercy. (No way you're gonna get it! :-))
The gods fall down laughing at $n's request for mercy.
You desperately try to squeeze a few coins from $M.
$n begs you for money. You gratiously let $m peep at your fortune.
$n begs $N for a dime or two -- or twenty!
Your money-lender seems to be out for the moment.
How? - begging yourself for money doesn't help.
#
bleed 0 0
You bleed profusely, making an awful mess...
$n bleeds profusely, making an awful mess...
#
blush 0 0
Your cheeks are burning.
$n blushes.
#
bounce 0 0
BOIINNNNNNGG!
$n bounces around.
#
bow 0 5
You bow deeply.
$n bows deeply.
You bow before $M.
$n bows before $N.
$n bows before you.
Who's that?
You kiss your toes.
$n folds up like a jacknife and kisses $s own toes.
brb 0 0
Come back soon!
$n will be right back!
#
burp 0 0
You burp loudly.
$n burps loudly.
#
cackle 0 0
You cackle gleefully.
$n throws back $s head and cackles with insane glee!
#
chuckle 0 0
You chuckle politely.
$n chuckles politely.
#
clap 0 0
You clap your small hands together.
$n shows $s approval by clapping $s small hands together.
#
comb 0 0
You comb your hair -- perfect.
$n combs $s hair, what a dashing specimen!
You patiently untangle $N's hair -- what a mess!
$n tries patiently to untangle $N's hair.
$n pulls your hair in an attempt to comb it.
That person is not here.
You pull your hair, but it will not be combed.
$n tries to comb $s tangled hair.
comfort 0 5
Do you feel uncomfortable?
#
You comfort $M.
$n comforts $N.
$n comforts you.
Comfort who?
You make a vain attempt to comfort yourself.
#
cough 0 0
Yuck, try to cover your mouth next time!
$n coughs loudly.
#
cringe 1 0
You cringe in terror.
$n cringes in terror!
You cringe away from $M.
$n cringes away from $N in mortal terror.
$n cringes away from you.
I don't see anyone by that name here.. what are you afraid of?
I beg your pardon?
#
cry 0 5
Waaaaah..
$n bursts into tears.
You cry on $S shoulder.
$n cries on $N's shoulder.
$n cries on your shoulder.
Who's that?
You cry to yourself.
$n sobs quietly to $mself.
cuddle 1 5
Who do you feel like cuddling today?
#
You cuddle $M.
$n cuddles $N.
$n cuddles you.
They aren't here.
You must feel very cuddly indeed. :)
#
curse 0 0
You swear loudly for a long time.
$n swears: #@*"*&^$$%@*&!!!!!!
#
curtsey 0 0
You curtsey to your audience.
$n curtseys gracefully.
#
dance 1 8
Feels silly, doesn't it?
$n tries to dance breakdance but nearly breaks $s neck!
You lead $M to the dancefloor.
$n sends $N across the dancefloor.
$n sends you across the dancefloor.
Eh, WHO?
You skip and dance around by yourself.
$n skips a light Fandango.
daydream 1 0
You dream of better times.
$n looks absent-minded, $s eyes staring into space.
#
drool 1 0
You start to drool.
$n starts to drool.
You drool all over $N.
$n drools all over $N.
$n drools all over you.
Pardon??
Sure, go ahead and drool...yuk!
$n drools on $mself. What a sight.
embrace 0 0
You reach but come away empty. :(
$n reaches out for an embrace, but no one is there.
You embrace $M warmly.
$n embraces $N warmly.
$n embraces you warmly.
Alas, your embracee is not here.
You embrace yourself??
$n wraps his arms around himself for a warm self-embrace.
fart 0 0
Where are your manners?
$n lets off a real rip-roarer!
#
flip 0 0
You flip head over heels.
$n flips head over heels.
#
flirt 1 5
You flirt outrageously.
$n flirts outragously.
You flirt outrageously with $N.
$n flirts outrageously with $N.
$n flirts outrageously with you.
Sorry, your dearly beloved is not around.
You flirt with yourself. Must look stupid.
$n thinks $e is the most wonderful person in the world.
fondle 0 5
Who needs to be fondled?
#
You fondly fondle $M.
$n fondly fondles $N.
$n fondly fondles you.
You fondly try to fondle someone not in the room, but who cares.
You fondly fondle yourself, feels funny doesn't it?
$n fondly fondles $mself -- this is going too far!!
french 0 0
French whom??
#
You give $N a long and passionate kiss, it seems to take forever...
$n kisses $N passionately.
$n gives you a long and passionate kiss, it seems to take forever...
Your heart is filled with despair as that person is not here.
You gather yourself in your arms and try to kiss yourself.
$n makes an attempt at kissing $mself.
frown 0 0
What's bothering you?
$n frowns.
#
fume 1 5
Take it easy now! Count to ten, very slowly.
$n grits $s teeth and fumes with rage.
You stare at $M, fuming.
$n stares at $N, fuming with rage.
$n stares at you, fuming with rage!
Fume away.. they ain't here.
That's right - hate yourself!
$n clenches $s fists and stomps his feet, fuming with anger.
gasp 0 0
You gasp in astonishment.
$n gasps in astonishment.
#
giggle 0 0
You giggle.
$n giggles.
#
glare 0 5
You glare at nothing in particular.
$n glares around $m.
You glare icily at $M.
$n glares at $N.
$n glares icily at you, you feel cold to your bones.
You try to glare at somebody who is not present.
You glare icily at your feet, they are suddenly very cold.
$n glares at $s feet, what is bothering $m?
greet 0 0
Greet Who?
#
You greet $m with a light kiss on his cheek.
$n greets $N with a light kiss on its cheek.
$n greets you with a light kiss on your cheek.
Please -- try someone who is here?
So, you've finally discovered yourself!
$n greets $mself.. $e always was a strange one.
grin 0 0
You grin evilly.
$n grins evilly.
#
groan 0 0
You groan loudly.
$n groans loudly.
#
grope 0 5
Whom do you wish to grope??
#
Well, what sort of noise do you expect here?
$n gropes $N.
$n gropes you.
Try someone who's here.
You grope yourself -- YUCK.
$n gropes $mself -- YUCK.
grovel 1 0
You grovel in the dirt.
$n grovels in the dirt.
You grovel before $M
$n grovels in the dirt before $N.
$n grovels in the dirt before you.
Who?
That seems a little silly to me..
#
growl 0 0
Grrrrrrrrrr...
$n growls.
#
hiccup 0 0
*HIC*
$n hiccups.
#
hug 1 5
Hug who?
#
You hug $M.
$n hugs $N.
$n hugs you.
Sorry, friend, I can't see that person here.
You hug yourself.
$n hugs $mself.
kiss 0 0
Isn't there someone you want to kiss?
#
You kiss $M.
$n kisses $N.
$n kisses you.
Never around when required.
All the lonely people :(
#
laugh 0 0
You fall down laughing.
$n falls down laughing.
#
lick 0 0
You lick your mouth and smile.
$n licks $s mouth and smiles.
You lick $M.
$n licks $N.
$n licks you.
Lick away, nobody's here with that name.
You lick yourself.
$n licks $mself -- YUCK.
love 0 0
You love the whole world.
$n loves everybody in the world.
You tell your true feelings to $N.
$n whispers softly to $N.
$n whispers to you sweet words of love.
Alas, your love is not present...
Well, we already know you love yourself (lucky someone does!)
$n loves $mself, can you believe it?
massage 0 0
Massage what, thin air?
#
You gently massage $N's shoulders.
$n massages $N's shoulders.
$n gently massages your shoulders...ahhhhhhhhhh...
You can only massage someone in the same room as you.
You practise yoga as you try to massage yourself.
$n gives a show on yoga-positions, trying to massage $mself.
moan 0 0
You start to moan.
$n starts moaning.
#
nibble 0 0
Nibble on who?
#
You nibble on $N's ear.
$n nibbles on $N's ear.
$n nibbles on your ear.
Sorry, not here, better go back to dreaming about it.
You nibble on your OWN ear???????????????????
$n nibbles on $s OWN ear (I wonder how it is done!!).
nod 1 0
You nod solemnly.
$n nods solemnly.
#
nudge 0 0
Nudge? Nudge??? The HELL you say!!!!
#
You nudge $M with your elbow.
$n nudges $N suggestively with $s elbow.
$n nudges you suggestively. You two have an understanding.
Eh? That person isn't here, you know.
Well, just nudge yourself, but how do you get your elbow in that position?
$n nudges $mself with $s elbows, making $m look like a large chicken.
nuzzle 1 5
Nuzzle who??
#
You nuzzle $S neck softly.
$n softly nuzzles $N's neck.
$n softly nuzzles your neck.
No.. they aren't here..
I'm sorry, friend, but that's impossible.
#
pat 0 0
Pat who??
#
You pat $N on $S head.
$n pats $N on $S head.
$n pats you on your head.
Who, where, what??
You pat yourself on your head, very reassuring.
$n pats $mself on the head.
peer 1 0
You peer around you, uncertain that what you see is actually true.
$n peers around, looking as if $e has trouble seeing everything clearly.
#
point 1 0
You point whereto?
$n points in all directions, seemingly confused.
You point at $M -- $E DOES look funny.
$n muffles a laugh, pointing at $N.
$n points at you... how rude!
You must have a VERY long index-finger...
You point at yourself. Insinuating something?
$n points at $mself, suggesting that the center of matters is $e.
poke 0 0
Poke who??
#
You poke $M in the ribs.
$n pokes $N in the ribs.
$n pokes you in the ribs.
You can't poke someone who's not here!
You poke yourself in the ribs, feeling very silly.
$n pokes $mself in the ribs, looking very sheepish.
ponder 1 0
You ponder over matters as they appear to you at this moment.
$n sinks deeply into $s own thoughts.
#
pout 0 0
Ah, don't take it so hard.
$n pouts.
#
pray 0 0
You feel righteous, and maybe a little foolish.
$n begs and grovels to the powers that be.
You crawl in the dust before $M.
$n falls down and grovels in the dirt before $N.
$n kisses the dirt at your feet.
No such person around; your prayers vanish into the endless voids.
Talk about narcissism...
$n performs some strange yoga-exercises and mumbles a prayer to $mself.
puke 0 0
You puke.
$n pukes.
You puke on $M.
$n pukes on $N.
$n pukes on your clothes!
Once again?
You puke on yourself.
$n pukes on $s clothes.
punch 0 0
Punch the air? Sure, go ahead, fine by me...
$n starts shadow-boxing.
You punch $M right in the face! Yuck, the BLOOD!
$n punches weakly at $N, missing by miles.
$n tries a punch at you but misses by a good quarter-mile...
Punch who?
You punch yourself in the face resulting in your own nose being bloodied.
$n punches $mself in the face, looking kind of stupid.
purr 0 0
MMMMEEEEEEEEOOOOOOOOOWWWWWWWWWWWW.
$n purrs contentedly.
#
roll 1 0
You roll your eyes in disgust.
$n rolls $s eyes in disgust.
You look at $M and roll your eyes in disgust.
$n looks at $N in contempt and rolls $s eyes with disgust.
$n stares at you and rolls $s eyes in digust.
Um... who?
You roll your eyes, disgusted with your own incompetence.
$n rolls $s eyes, disgusted with $mself.
ruffle 0 0
You've got to ruffle SOMEONE.
#
You ruffle $N's hair playfully.
$n ruffles $N's hair playfully.
$n ruffles your hair playfully.
Might be a bit difficult.
You ruffle your hair, wondering how far you can go before the rest think you're crazy.
$n ruffles $s hair -- weirdo!
scream 0 0
ARRRRRRRRRRGH!!!!!
$n screams loudly!
#
shake 0 5
You shake your head.
$n shakes $s head.
You shake $S hand.
$n shakes $N's hand.
$n shakes your hand.
Sorry good buddy, but that person doesn't seem to be here.
You are shaken by yourself.
$n shakes and quivers like a bowlful of jelly.
shiver 0 0
Brrrrrrrrr.
$n shivers uncomfortably.
#
shrug 0 0
You shrug.
$n shrugs helplessly.
#
sigh 0 0
You sigh.
$n sighs loudly.
#
sing 0 0
You raise your clear (?) voice towards the sky.
SEEK SHELTER AT ONCE! $n has begun to sing.
#
slap 0 0
Normally you slap SOMEBODY.
#
You slap $N.
$n slaps $N.
You are slapped by $n.
How about slapping someone in the same room as you??
You slap yourself, silly you.
$n slaps $mself, really strange...
smile 1 0
You smile happily.
$n smiles happily.
You smile at $M.
$n beams a smile at $N.
$n smiles at you.
There's no one by that name around.
You smile at yourself.
$n smiles at $mself.
smirk 0 0
You smirk.
$n smirks.
#
snap 0 0
PRONTO! You snap your fingers.
$n snaps $s fingers.
#
snarl 0 0
You snarl like a viscious animal.
$n snarls like a cornered, viscious animal.
You snarl at $M angrily. Control yourself!
$n snarls angrily at $N. $e$u seems incapable of controlling $mself.
$n snarls viciously at you. $U$s self-control seems to have gone bananas.
Eh? Who? Not here, my friend.
You snarl at yourself, obviously suffering from schizophrenia.
$n snarls at $mself, and suddenly looks very frightened.
sneeze 0 0
Gesundheit!
$n sneezes.
#
snicker 0 0
You snicker softly.
$n snickers softly.
#
sniff 0 0
You sniff sadly. *SNIFF*
$n sniffs sadly.
#
snore 0 0
Zzzzzzzzzzzzzzzzz.
$n snores loudly.
#
snowball 0 0
Who do you want to throw a snowball at??
#
You throw a snowball in $N's face.
$n conjures a snowball from thin air and throws it at $N.
$n conjures a snowball from thin air and throws it at you.
You stand with the snowball in your hand because your victim is not here.
You conjure a snowball from thin air and throw it at yourself.
$n conjures a snowball out of the thin air and throws it at $mself.
snuggle 1 5
Who?
#
you snuggle $M.
$n snuggles up to $N.
$n snuggles up to you.
They aren't here.
Hmmm...
#
spank 0 8
You spank WHO? Eh? How? Naaah, you'd never.
$n spanks the thin air with a flat hand.
You spank $M vigorously, long and hard. Your hand hurts.
$n spanks $N over $s knee. It hurts to even watch.
$n spanks you long and hard. You feel like a naughty child.
Are you sure about this? I mean, that person isn't even here!
Hmm, not likely.
#
spit 0 0
You spit over your left shoulder.
$n spits over $s left shoulder.
You spit on $M.
$n spits in $N's face.
$n spits in your face.
Can you spit that far?
You drool down your front.
$n drools down $s front.
squeeze 0 0
Where, what, how, WHO???
#
You squeeze $M fondly.
$n squeezes $N fondly.
$n squeezes you fondly.
Where, what, how, WHO???
You squeeze yourself -- try to relax a little!
$n squeezes $mself.
stare 0 5
You stare at the sky.
$n stares at the sky.
You stare dreamily at $N, completely lost in $S eyes..
$n stares dreamily at $N.
$n stares dreamily at you, completely lost in your eyes.
You stare and stare but can't see that person anywhere...
You stare dreamily at yourself - enough narcissism for now.
$n stares dreamily at $mself - NARCISSIST!
steam 0 0
You let out some steam, much to the others' relief (and your own!)
$n lets out a lot of steam, much to your relief.
#
stroke 0 0
Whose thigh would you like to stroke?
#
You gently stroke $S inner thigh.
$n gently strokes $N's inner thigh... hmm...
$n gently strokes your inner thigh with feathery touches.
That person is not within reach.
You are about to do something you would rather not be caught doing.
$n starts to do something disgusting and then stops.
strut 0 0
Strut your stuff.
$n struts proudly.
#
sulk 1 0
You sulk.
$n sulks in the corner.
#
tackle 0 5
You tackle the air. It stands not a chance.
$n starts running around $mself in a desparate attempt to tackle the air.
You ruthlessly tackle $M to the ground.
$n ruthlessly tackles $N, pinning $M to the ground.
$n suddenly lunges at you and tackles you to the ground!
That person isn't here (luck for them, it would seem...)
Tackle yourself? Yeah, right....
$n makes a dextrous move and kicks $s left leg away with $s right.
tango 0 8
With whom would you like to tango?
$n puts a rose between $s teeth, but takes out it since noone joins $m.
You put a rose between your teeth and tango with $M seductively.
$n puts a rose between $s teeth and tangos with $N seductively.
$n puts a rose between $s teeth and tangos with you seductively.
That person isn't around. Better sit this one out.
Feels rather stupid, doesn't it?
$n puts a rose between $s teeth and tries to tango with $mself.
taunt 0 0
You taunt the nothing in front of you.
$n taunts something that seems to be right in front of $m.
You taunt $M, to your own delight.
$n taunts $N rather insultingly. $U$n seems to enjoy it tremendously.
$n taunts you. It really hurts your feelings.
Hmmmmmmm.....nope, no one by that name here.
You taunt yourself, almost making you cry...:(
$n taunts $mself to tears.
thank 0 5
Thank you too.
#
You thank $N heartily.
$n thanks $N heartily.
$n thanks you heartily.
No one answers to that name here.
You thank yourself since nobody else wants to!
$n thanks $mself since you won't.
think 1 0
You think about life, the universe and everything.
$n sinks deeply into thought about the meaning of life.
You think about what purpose $E has in relation to your part of life.
$n stops and thinks about $N, completely lost in thought.
Your ears burn as $n thinks about you.. you wonder what about.
You'd better think harder, if you hope to make contact!
You think about yourself (for once).
$n thinks about $mself for a change.....(?)
tickle 0 0
Who do you want to tickle??
#
You tickle $N.
$n tickles $N.
$n tickles you - hee hee hee.
Who is that??
You tickle yourself, how funny!
$n tickles $mself.
twiddle 0 0
You patiently twiddle your thumbs.
$n patiently twiddles $s thumbs.
#
wave 0 0
You wave.
$n waves happily.
You wave goodbye to $N.
$n waves goodbye to $N.
$n waves goodbye to you. Have a good journey.
They didn't wait for you to wave goodbye.
Are you going on adventures as well??
$n waves goodbye to $mself.
whine 0 0
You whine pitifully.
$n whines pitifully about the whole situation.
#
whistle 0 0
You whistle appreciatively.
$n whistles appreciatively.
#
wiggle 0 0
Your wiggle your bottom.
$n wiggles $s bottom.
#
wink 0 5
Have you got something in your eye?
$n winks suggestively.
You wink suggestively at $N.
$n winks at $N.
$n winks suggestively at you.
No one with that name is present.
You wink at yourself?? -- what are you up to?
$n winks at $mself -- something strange is going on...
worship 0 5
You find yourself head-down in the dirt, worshipping.
$n starts worshipping nothing at all.
You fall to your knees and worship $M deeply.
$n falls to $s knees, worshipping $N with uncanny dedication.
$n kneels before you in solemn worship.
Uh.. who? They're not here, pal.
You seem sure to have found a true deity.....
$n falls to $s knees and humbly worships $mself.
yawn 0 0
Gosh, will you trade those teeth for mine?? -- you get my glasseyes in the bargain too!
$n yawns.
#
yodel 0 0
You start yodelling loudly and rather beautifully in your own ears.
$n starts a yodelling session that goes right to the bone.
#
$

7306
lib/misc/socials.new Normal file

File diff suppressed because it is too large Load diff

0
lib/misc/typos Normal file
View file

24
lib/misc/xnames Normal file
View file

@ -0,0 +1,24 @@
asshole
balls
bastard
basterd
basturd
bitch
cock
crap
cum
cunt
dick
fag
fuck
fuk
lick
orgasm
penis
piss
prick
pussy
shit
suck
twat
whore

1
lib/plralias/A-E/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plralias/F-J/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plralias/K-O/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plralias/P-T/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plralias/U-Z/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plralias/ZZZ/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/A-E/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/F-J/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/K-O/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/P-T/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/U-Z/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrobjs/ZZZ/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

7
lib/plrobjs/purgedir Executable file
View file

@ -0,0 +1,7 @@
#!/bin/sh
echo "Purging $1"
cd $1
date >> deleted
../../../bin/delobjs ../../etc/players *.objs >> ../deleted
cd ..

10
lib/plrobjs/purgeobjs Executable file
View file

@ -0,0 +1,10 @@
#!/bin/sh
echo "Purging old rent files, please wait..."
purgedir A-E
purgedir F-J
purgedir K-O
purgedir P-T
purgedir U-Z
rm -f ZZZ/*
echo "Done."

7
lib/plrobjs/searchfor Executable file
View file

@ -0,0 +1,7 @@
#!/bin/sh
../../bin/listrent A-E/* | fgrep -i $1
../../bin/listrent F-J/* | fgrep -i $1
../../bin/listrent K-O/* | fgrep -i $1
../../bin/listrent P-T/* | fgrep -i $1
../../bin/listrent U-Z/* | fgrep -i $1

1
lib/plrvars/A-E/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrvars/F-J/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrvars/K-O/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrvars/P-T/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

1
lib/plrvars/U-Z/00 Normal file
View file

@ -0,0 +1 @@
This is a placeholder file so the directory will be created

8
lib/text/background Normal file
View file

@ -0,0 +1,8 @@
(lib/text/background)
There once was a guy who played MUDs
But the MUDs that he played were all duds
"I'll write one," said he.
And he brushed off his C.
And soon played his game with his buds.

591
lib/text/contexthelp Normal file
View file

@ -0,0 +1,591 @@
#001 * CONTEXT_OEDIT_MAIN_MENU
*OEDIT-MENU~
#002 * CONTEXT_OEDIT_EDIT_NAMELIST
Enter a list of @ukeywords@n seperated by spaces.
The list may not contain color codes and should not contain small words
like 'an', 'a', 'the' or 'of'.
When making drink containers, do not include the name of the liquid in
this list. It will be added automatically.
Example: axe wood wooden
~
#003 * CONTEXT_OEDIT_SHORTDESC
Enter a @ushort description@n for the object. A short description is
used when the name of the object is put into sentences, or is listed
in inventories, containers etc.
It should contain words like 'a', 'an' or 'the' if needed, but no
capitalization or punctuation.
Example: a wooden axe
When making drink containers, do not include the name of the liquid in
this list. It will be added automatically.
~
#004 * CONTEXT_OEDIT_LONGDESC
Enter a @ulong description@n for the object. The long description is
used when the object is in the room, ie. not in containers.
The long description is never put into lists or sentences, and should
therefore have correct grammar, capitalization and punctuation.
Example: An axe with a wooden shaft has been thrown here.
~
#005 * CONTEXT_OEDIT_ACTDESC
Never shown
~
#006 * CONTEXT_OEDIT_TYPE
Select a type for the object. Depending on the choice of type, the
values have different meaning. The types are:
0) UNDEFINED - not meaningful. Do not use.
1) LIGHT - a lightsource.
2) SCROLL - a scroll with magical spells.
3) WAND - a magical wand; point at target to use.
4) STAFF - a magical staff; hit all in room with spell(s).
5) WEAPON - any kind of damaging weapon.
6) FIRE WEAPON - not implemented. Do not use.
7) MISSILE - not implemented. Do not use.
8) TREASURE - not implemented. Do not use.
9) ARMOR - a piece of armor.
10) POTION - a magical potion. Quaff to use.
11) WORN - worn, but not armor.
12) OTHER - if no other categori applies, use this.
13) TRASH - what it says; taken by scavengers.
14) TRAP - not implemented. Do not use.
15) CONTAINER - something something else can be in.
16) NOTE - can be written on with a PEN.
17) LIQ CONTAINER- for storing liquids.
18) KEY - for opening doors.
19) FOOD - for eating.
20) MONEY - a pile of gold.
21) PEN - can write on NOTEs.
22) BOAT - when carried, one can traverse water.
23) FOUNTAIN - a BIG liquid container. Can fill other liquid conts.
~
#007 * CONTEXT_OEDIT_EXTRAS
Select a set of bits from this list:
1) GLOW Item is glowing (cosmetic).
2) HUM Item is humming (cosmetic).
3) NORENT Item cannot be rented.
4) NODONATE Item cannot be donated.
5) NOINVIS Item cannot be made invisible.
6) INVISIBLE Item is invisible.
7) MAGIC Item has a magical aura and cannot be enchanted.
8) NODROP Item is cursed and cannot be dropped.
9) BLESS Item is blessed (cosmetic).
10) ANTI_GOOD Item cannot be used by good-aligned characters.
11) ANTI_EVIL Item cannot be used by evil-aligned characters.
12) ANTI_NEUTRAL Item cannot be used by neutral align characters.
13) ANTI_MAGIC_USER Item cannot be used by the Mage class.
14) ANTI_CLERIC Item cannot be used by the Cleric class.
15) ANTI_THIEF Item cannot be used by the Thief class.
16) ANTI_WARRIOR Item cannot be used by the Warrior class.
17) NOSELL Shopkeepers will not buy or sell the item.
Use '0' to quit the menu.
Any other number sets or removes the corresponding bit.
~
#008 * CONTEXT_OEDIT_WEAR
A list of possible wear locations from this list:
1) TAKE Item can be taken (picked up off the ground).
2) FINGER Item can be worn on the fingers.
3) NECK Item can be worn around the neck.
4) BODY Item can be worn on the body.
5) HEAD Item can be worn on the head.
6) LEGS Item can be worn on the legs.
7) FEET Item can be worn on the feet.
8) HANDS Item can be worn on the hands.
9) ARMS Item can be worn on the arms.
10) SHIELD Item can be used as a shield.
11) ABOUT Item can be worn about the body.
12) WAIST Item can be worn around the waist.
13) WRIST Item can be worn around the wrist.
14) WIELD Item can be wielded; e.g. weapons.
15) HOLD Item can be held (the "hold" command).
Most items should be 'TAKE' to be able to pick them up.
Use '0' to quit the menu.
Any other number sets or removes the corresponding bit.
~
#009 * CONTEXT_OEDIT_WEIGHT
Enter the weight of the object in pounds. Weapons over 40 pounds are
too heavy to use for most people. Be reasonable.
~
#010 * CONTEXT_OEDIT_COST
Enter the cost in gold pieces for this object. This will be the base
price used when dealing with shopkeepers.
~
#011 * CONTEXT_OEDIT_COSTPERDAY
Enter the rent cost. This is how many gold pieces the object will cost
per day when renting.
~
#012 * CONTEXT_OEDIT_TIMER
You shouldn't have to alter this setting, except when making objects
with otimer triggers attached. This counter will drop by one for each
mud hour that passes. Unless there's a trigger attached, nothing more
will happen.
~
#013 * CONTEXT_OEDIT_VALUE_1
Depending on the @utype@n of the item this value have different meanings;
"Spell level" - the level of the spell cast by the item.
"Modifier to hitroll" - the addition the item has to natural hitroll.
"Apply to AC" - the apply to AC this item has. This is tripled if worn
on body, and doubled on arms and legs.
"Max weight to contain" - the weight this container can contain in pounds.
"Max drink units" - the number of 'drink units' the container can hold.
Note that one drinks some 4-6 drink units per time.
"Hours to fill stomach" - the time this food will satiate you.
"Number of gold coins" - the size of the money pile.
~
#014 * CONTEXT_OEDIT_VALUE_2
Depending on the @utype@n of the item this value have different meanings;
A list of spells - choose one of them to have the item cast the spell.
"Max number of charges" - how many charges does it have when fully recharged ?
"Number of damage dice" - the number of dice to roll to determine the damage
the item causes. This is calculated as xdy
(read: x dice of size y)
Ie. 1d5 would mean you enter '1' at the prompt.
Container flags:
1) CLOSEABLE Container can be closed and locked.
2) PICKPROOF Lock on container cannot be picked.
3) CLOSED Container is closed when created.
4) LOCKED Container is locked when created.
Exit the menu with '0'.
"Initial drink units" - number of drink units in the item when loaded. This
must be equal or less than the max capacity.
~
#015 * CONTEXT_OEDIT_VALUE_3
Depending on the @utype@n of the item this value have different meanings;
A list of spells - choose one of them to have the item cast the spell.
"Number of hours" - how long will the light burn. Use -1 to get infinate
light. These are rare, though.
"Number of charges remaining" - the number of charges in the item when
loaded. This must be less than or equal to the max.
"Size of damage dice" - the size of the dice to roll to determine the damage
the item causes. This is calculated as xdy
(read: x dice of size y)
Ie. 1d5 would mean you enter '5' at the prompt.
"Vnum of key to open container" - if the container is locked, you need to
set a key to open it.
A list of liquid types. Choose one from the list.
~
#016 * CONTEXT_OEDIT_VALUE_4
Depending on the @utype@n of the item this value have different meanings;
A list of spells - choose one of them to have the item cast the spell.
A list of weapon types - choose one to have the weapon attack with the
right sound effects.
Only piercing and stabbing can backstab.
"Poisoned" - anything besides '0' will make the item poisonous.
~
#017 * CONTEXT_OEDIT_APPLY
Select an apply from the list below:
0 NONE No effect - used to quit the menu.
1 STR Apply to strength.
2 DEX Apply to dexterity.
3 INT Apply to intelligence.
4 WIS Apply to wisdom.
5 CON Apply to constitution.
6 CHA Apply to charisma.
7 CLASS DO NOT USE!
8 LEVEL DO NOT USE!
9 AGE Apply to character's MUD age, in MUD-years.
10 CHAR_WEIGHT Apply to weight.
11 CHAR_HEIGHT Apply to height.
12 MANA Apply to MAX mana points.
13 HIT Apply to MAX hit points.
14 MOVE Apply to MAX movement points.
15 GOLD DO NOT USE!
16 EXP DO NOT USE!
17 AC Apply to armor class (AC).
18 HITROLL Apply to hitroll.
19 DAMROLL Apply to damage roll bonus.
20 SAVING_PARA Apply to save throw: paralyze
21 SAVING_ROD Apply to save throw: rods
22 SAVING_PETRI Apply to save throw: petrif
23 SAVING_BREATH Apply to save throw: breath
24 SAVING_SPELL Apply to save throw: spells
~
#018 * CONTEXT_OEDIT_APPLYMOD
Decide how this apply has effect by typing a number.
The number may be negative, and this helps in some situations:
Good when positive:
STR, DEX, INT, WIS, CON, CHA, MANA, HIT, MOVE, HITROLL, DAMROLL
Good when negative:
AGE, AC, SAVING_*
~
#019 * CONTEXT_OEDIT_EXTRADESC_KEY
Enter the keywordlist seperated by spaces, which is needed to see
the description.
Example: table desk
~
#020 * CONTEXT_OEDIT_CONFIRM_SAVEDB
Not used ?
~
#021 * CONTEXT_OEDIT_CONFIRM_SAVESTRING
If you type 'y', the object is saved to disk right away.
'n' will let you quit without saving, while
'a' will abort the quit.
~
#022 * CONTEXT_OEDIT_PROMPT_APPLY
Enter a number from the list to the left to alter one of the applies.
This is how you alter the effect on hitroll, damroll, saving throws, AC,
age, height, weight or stats.
~
#023 * CONTEXT_OEDIT_EXTRADESC_DESCRIPTION
Never shown
~
#024 * CONTEXT_OEDIT_EXTRADESC_MENU
Select an option to the left.
'1' to change the keyword list for this description.
'2' to change the description shown.
'3' to go to next description in this room.
If no such description exists, and this one is used, make a new one.
'0' to leave the menu.
~
#025 * CONTEXT_OEDIT_LEVEL
Enter the minimum level one must be to wield/hold/wear the object.
~
#026 * CONTEXT_OEDIT_PERM
Enter the effects this item has on people using it. These are permanent
bits which are set when the object is worn/wielded/held.
When wearing an object with this flag,
1) BLIND The wearer goes blind
2) INVIS The wearer becomes invisible
3) DET-ALIGN The wearer detects alignments
4) DET-INVIS The wearer sees invisible objects and players.
5) DET-MAGIC The wearer sees magic on objects
6) SENSE-LIFE The wearer sees hidden mobs/players
7) WATWALK The wearer can walk on water
8) SANCT The wearer is protected by sanctuary
9) GROUP DO NOT USE - reserved for internal use
10) CURSE The wearer is influenced by a curse
11) INFRA The wearer sees in the dark
12) POISON The wearer is poisoned
13) PROT-EVIL The wearer is protected from evil
14) PROT-GOOD The wearer is protected from good
15) SLEEP The wearer is magically put to sleep
16) !TRACK The wearer cannot be tracked
17) UNUSED DO NOT USE
18) UNUSED DO NOT USE
19) SNEAK The wearer moves silently
20) HIDE The wearer is hidden - use with caution
21) UNUSED DO NOT USE
22) CHARM DO NOT USE - reserved for internal use
~
/* this line should not give any problems */
#027 * CONTEXT_REDIT_MAIN_MENU
test
~
#028 * CONTEXT_REDIT_NAME
test
~
#029 * CONTEXT_REDIT_DESC
Never shown
~
#030 * CONTEXT_REDIT_FLAGS
test
~
#031 * CONTEXT_REDIT_SECTOR
test
~
#032 * CONTEXT_REDIT_EXIT_MENU
test
~
#033 * CONTEXT_REDIT_CONFIRM_SAVEDB
test
~
#034 * CONTEXT_REDIT_CONFIRM_SAVESTRING
test
~
#035 * CONTEXT_REDIT_EXIT_NUMBER
test
~
#036 * CONTEXT_REDIT_EXIT_DESCRIPTION
Never shown
~
#037 * CONTEXT_REDIT_EXIT_KEYWORD
test
~
#038 * CONTEXT_REDIT_EXIT_KEY
test
~
#039 * CONTEXT_REDIT_EXIT_DOORFLAGS
test
~
#040 * CONTEXT_REDIT_EXTRADESC_MENU
test
~
#041 * CONTEXT_REDIT_EXTRADESC_KEY
test
~
#042 * CONTEXT_REDIT_EXTRADESC_DESCRIPTION
Never shown
~
#043 * CONTEXT_ZEDIT_MAIN_MENU
test
~
#044 * CONTEXT_ZEDIT_DELETE_ENTRY
test
~
#045 * CONTEXT_ZEDIT_NEW_ENTRY
test
~
#046 * CONTEXT_ZEDIT_CHANGE_ENTRY
test
~
#047 * CONTEXT_ZEDIT_COMMAND_TYPE
test
~
#048 * CONTEXT_ZEDIT_IF_FLAG
test
~
#049 * CONTEXT_ZEDIT_ARG1
test
~
#050 * CONTEXT_ZEDIT_ARG2
test
~
#051 * CONTEXT_ZEDIT_ARG3
test
~
#052 * CONTEXT_ZEDIT_ZONE_NAME
test
~
#053 * CONTEXT_ZEDIT_ZONE_LIFE
test
~
#054 * CONTEXT_ZEDIT_ZONE_BOT
test
~
#055 * CONTEXT_ZEDIT_ZONE_TOP
test
~
#056 * CONTEXT_ZEDIT_ZONE_RESET
test
~
#057 * CONTEXT_ZEDIT_CONFIRM_SAVESTRING
test
~
#058 * CONTEXT_ZEDIT_SARG1
test
~
#059 * CONTEXT_ZEDIT_SARG2
test
~
#060 * CONTEXT_MEDIT_MAIN_MENU
test
~
#061 * CONTEXT_MEDIT_ALIAS
test
~
#062 * CONTEXT_MEDIT_S_DESC
test
~
#063 * CONTEXT_MEDIT_L_DESC
test
~
#064 * CONTEXT_MEDIT_D_DESC
Never shown
~
#065 * CONTEXT_MEDIT_NPC_FLAGS
test
~
#066 * CONTEXT_MEDIT_AFF_FLAGS
test
~
#067 * CONTEXT_MEDIT_CONFIRM_SAVESTRING
test
~
#068 * CONTEXT_MEDIT_SEX
test
~
#069 * CONTEXT_MEDIT_HITROLL
test
~
#070 * CONTEXT_MEDIT_DAMROLL
test
~
#071 * CONTEXT_MEDIT_NDD
test
~
#072 * CONTEXT_MEDIT_SDD
test
~
#073 * CONTEXT_MEDIT_NUM_HP_DICE
test
~
#074 * CONTEXT_MEDIT_SIZE_HP_DICE
test
~
#075 * CONTEXT_MEDIT_ADD_HP
test
~
#076 * CONTEXT_MEDIT_AC
test
~
#077 * CONTEXT_MEDIT_EXP
test
~
#078 * CONTEXT_MEDIT_GOLD
test
~
#079 * CONTEXT_MEDIT_POS
test
~
#080 * CONTEXT_MEDIT_DEFAULT_POS
test
~
#081 * CONTEXT_MEDIT_ATTACK
test
~
#082 * CONTEXT_MEDIT_LEVEL
test
~
#083 * CONTEXT_MEDIT_ALIGNMENT
test
~
#084 * CONTEXT_SEDIT_MAIN_MENU
test
~
#085 * CONTEXT_SEDIT_CONFIRM_SAVESTRING
test
~
#086 * CONTEXT_SEDIT_NOITEM1
test
~
#087 * CONTEXT_SEDIT_NOITEM2
test
~
#088 * CONTEXT_SEDIT_NOCASH1
test
~
#089 * CONTEXT_SEDIT_NOCASH2
test
~
#090 * CONTEXT_SEDIT_NOBUY
test
~
#091 * CONTEXT_SEDIT_BUY
test
~
#092 * CONTEXT_SEDIT_SELL
test
~
#093 * CONTEXT_SEDIT_PRODUCTS_MENU
test
~
#094 * CONTEXT_SEDIT_ROOMS_MENU
test
~
#095 * CONTEXT_SEDIT_NAMELIST_MENU
test
~
#096 * CONTEXT_SEDIT_NAMELIST
test
~
#097 * CONTEXT_SEDIT_OPEN1
test
~
#098 * CONTEXT_SEDIT_OPEN2
test
~
#099 * CONTEXT_SEDIT_CLOSE1
test
~
#100 * CONTEXT_SEDIT_CLOSE2
test
~
#101 * CONTEXT_SEDIT_KEEPER
test
~
#102 * CONTEXT_SEDIT_BUY_PROFIT
test
~
#103 * CONTEXT_SEDIT_SELL_PROFIT
test
~
#104 * CONTEXT_SEDIT_TYPE_MENU
test
~
#105 * CONTEXT_SEDIT_DELETE_TYPE
test
~
#106 * CONTEXT_SEDIT_DELETE_PRODUCT
test
~
#107 * CONTEXT_SEDIT_NEW_PRODUCT
test
~
#108 * CONTEXT_SEDIT_DELETE_ROOM
test
~
#109 * CONTEXT_SEDIT_NEW_ROOM
test
~
#110 * CONTEXT_SEDIT_SHOP_FLAGS
test
~
#111 * CONTEXT_SEDIT_NOTRADE
test
~
#112 * CONTEXT_TRIGEDIT_MAIN_MENU
This is the Trigger edit page.
From here you have access to all the options needed to create a script.
The page is divided into two sections;
One describing the triggers' type and arguments,
and one showing the command list (point 6).
~
#113 * CONTEXT_TRIGEDIT_TRIGTYPE
test
~
#114 * CONTEXT_TRIGEDIT_CONFIRM_SAVESTRING
If you type 'y', the trigger is saved to disk right away.
'n' will let you quit without saving, while
'a' will abort the quit
~
#115 * CONTEXT_TRIGEDIT_NAME
This will let you decide on the name of the trigger.
Anything will go, but it is recommended you keep it
short and to the point.
~
#116 * CONTEXT_TRIGEDIT_INTENDED
Here you decide on the type of thing this trigger is made for.
You can attach it to other types later, but this decides which
list of types you will get when you get to that point.
~
#117 * CONTEXT_TRIGEDIT_TYPES
test
~
#118 * CONTEXT_TRIGEDIT_COMMANDS
test
~
#119 * CONTEXT_TRIGEDIT_NARG
test
~
#120 * CONTEXT_TRIGEDIT_ARGUMENT
test
~
#121 * CONTEXT_SCRIPT_MAIN_MENU
test
~
#122 * CONTEXT_SCRIPT_NEW_TRIGGER
test
~
#123 * CONTEXT_SCRIPT_DEL_TRIGGER
~

35
lib/text/credits Normal file
View file

@ -0,0 +1,35 @@
(lib/text/credits)
C I R C L E M U D 3 . 5
CircleMUD was developed from DikuMUD (Gamma 0.0) by Jeremy "Ras" Elson at
Johns Hopkins University's Department of Computer Science. All code unique
to CircleMUD is protected under a copyright by the Trustees of the Johns
Hopkins University. Additional development coordinated by Alex Fletcher,
George Greer, and Daniel Koepke with feedback from CircleMUD mailing list.
CircleMUD is freeware and can be downloaded via anonymous FTP from
ftp.circlemud.org or ftp2.circlemud.org in pub/CircleMUD. Its developers
can be contacted at cdev@@circlemud.org.
Type HELP CIRCLEMUD for more information.
============================================================================
Original game idea, concept, and design:
Katja Nyboe [Superwoman] (katz@@freja.diku.dk)
Tom Madsen [Stormbringer] (noop@@freja.diku.dk)
Hans Henrik Staerfeldt [God] (bombman@@freja.diku.dk)
Michael Seifert [Papi] (seifert@@freja.diku.dk)
Sebastian Hammer [Quinn] (quinn@@freja.diku.dk)
------------------------------------------------------------------------------
Additional contributions from Michael Curran, Bill Wisner, Mads Haar, and
Stephan Dahl.
Originally developed at:
DIKU - The Department of Computer Science at the University of Copenhagen.

11
lib/text/greetings Normal file
View file

@ -0,0 +1,11 @@
Your MUD Name Here
lib/text/greetings
Based on CircleMUD 3.5,
Created by Jeremy Elson
A derivative of DikuMUD (GAMMA 0.0),
created by Hans-Henrik Staerfeldt, Katja Nyboe,
Tom Madsen, Michael Seifert, and Sebastian Hammer
By what name do you wish to be known?

9
lib/text/handbook Normal file
View file

@ -0,0 +1,9 @@
(lib/text/handbook)
This is the immortal handbook and should contain guidelines for immortals.
Right now it doesn't say anything particularly useful -- bug the higher-ups
to write their policies here.
The Builder Academy tutorial zone begins in room 3. @RGOTO 3@n to begin your
training.

1
lib/text/hedit/README Normal file
View file

@ -0,0 +1 @@
This is the new help directory that works with the online help editor.

10960
lib/text/hedit/help.hlp Normal file

File diff suppressed because it is too large Load diff

2
lib/text/hedit/index Normal file
View file

@ -0,0 +1,2 @@
help.hlp
$

View file

@ -0,0 +1,2 @@
help.hlp
$

18
lib/text/hedit/iscreen Normal file
View file

@ -0,0 +1,18 @@
For a list of commands available to you, type: @RCOMMANDS@n
For a list of immortal commands type: @RWIZHELP@n
To learn more about the above, type: @RHELP <COMMAND>@n
New to the game ? @RHANDBOOK@n
@RPOLICY@n
Help with redit ? @RHELP REDIT@n | @RHELP REDIT-MENU@n
Help with oedit ? @RHELP OEDIT@n | @RHELP OEDIT-MENU@n
Help with medit ? @RHELP MEDIT@n | @RHELP MEDIT-MENU@n
Help with zedit ? @RHELP ZEDIT@n | @RHELP ZEDIT-MENU@n
Help with sedit ? @RHELP SEDIT@n | @RHELP SEDIT-MENU@n
Help with trigedit ? @RHELP TRIGEDIT@n | @RHELP TRIGEDIT-MENU@n
Have other unanswered questions ? @RHELP BUILDING@n
Any capital letters in red should be typed for further information.

21
lib/text/hedit/screen Normal file
View file

@ -0,0 +1,21 @@
-------------------------------------------------------------------------------
Movement: | Communication:
NORTH SOUTH EAST WEST UP DOWN | SAY GSAY SHOUT HOLLER TELL ASK WHISPER
LOOK EXITS ENTER LEAVE | MAIL RECEIVE CHECK GOSSIP GRATS AUCTION
SLEEP WAKE REST SIT STAND | NOTELL NOSHOUT NOGOSSIP NOGRATS NOAUCTION
(LOCK UNLOCK OPEN CLOSE) |
-------------------------------------------------------------------------------
Objects: | Information:
GET DROP JUNK DONATE PUT GIVE WEAR | SCORE HELP INFO WHO NEWS TIME WEATHER
GRAB INVENTORY EQUIPMENT REMOVE | WHERE CONSIDER LEVELS WIZLIST IMMLIST
EXAMINE EAT DRINK TASTE SIP POUR | CREDITS TOGGLE FLAGS WIZHELP
-------------------------------------------------------------------------------
Combat: | Utility:
KILL WIELD FLEE ASSIST TRACK | ! BUG IDEA TYPO QUIT SAVE BRIEF COMPACT
(KICK BASH RESCUE BACKSTAB CAST) | TITLE NOSUMMON COMMANDS SOCIALS DISPLAY
-------------------------------------------------------------------------------
Further information available by HELP <keyword>, keyword being a command or
(for example) one of the following:
SOCIAL SHOPS INNS CLERIC WARRIOR THIEF MAGIC SPELLS LINK
-------------------------------------------------------------------------------

2
lib/text/help/README Normal file
View file

@ -0,0 +1,2 @@
These are the stock helpfiles that are no longer used. The new helpfiles are
in the hedit directory.

1426
lib/text/help/commands.hlp Normal file

File diff suppressed because it is too large Load diff

6
lib/text/help/index Normal file
View file

@ -0,0 +1,6 @@
commands.hlp
info.hlp
socials.hlp
spells.hlp
wizhelp.hlp
$

6
lib/text/help/index.mini Normal file
View file

@ -0,0 +1,6 @@
commands.hlp
info.hlp
socials.hlp
spells.hlp
wizhelp.hlp
$

421
lib/text/help/info.hlp Normal file
View file

@ -0,0 +1,421 @@
AC
"AC" is your armor class. It is a number from -10 to 10, roughly
defined as follows:
AC Roughly equivalent to
-----------------------------------------------------------
10 Naked person
0 Very Heavily armored (Plate mail, and "two shields")
-10 Armored battle tank
The score command displays your armor class as a number such as 78/10;
this means 78 on a scale from -100 to 100 (i.e., 7.8 on the scale from
-10 to 10.)
See also: SCORE
#
AREAS
This is a listing of the areas available for exploration on this
CircleMUD.
Limbo -- DikuMud
River Island Of Minos -- Mahatma of HexOynx
God Simplex -- CircleMUD, modified by Taz of Tazmania
The Straight Path -- Steppin of ChicagoMUD
The High Tower Of Magic -- Skylar of SillyMUD*
Midgaard -- DikuMud
The Three Of Swords -- C.A.W.
Miden'Nir -- Copper II, modified by VampLestat of MercMUD*
The Chessboard -- Exxon of SillyMUD
Mount Moria -- Redferne of DikuMud*
The Great Eastern Desert -- Rorschach
The Drow City -- Rorschach
The City Of Thalos -- Rorschach
The Great Pyramid -- Andersen of HexOynx*
New Thalos -- Duke Of SillyMUD*
The Haon-Dor Forest -- Quifael of DikuMud, extended by by Derkhil
of CircleMUD
The Orc Enclave -- C.A.W.
Arachnos -- Mahatma of HexOynx
Rand's Tower -- C.A.W.
The Dwarven Kingdom -- Depeche of DikuMud
The Sewers -- Redferne of DikuMud
Redferne's Residence -- DikuMud, modified by Cyron of VieMud
Rome -- Onivel of JediMUD
King Welmar's Castle -- CircleMUD*
Newbie Zone -- Maynard of StrangeMUD
All those marked with * have been heavily modified by Furry of VieMud
C.A.W. stands for the Curious Areas Workshop. For more information
mail <fletchra@qsilver.queensu.ca>.
See also: CREDITS
#
BOARDS
Bulletin boards are the forum of inter-player communication on the MUD.
There are different bulletin boards for different purposes -- for example,
a standard mortal board, a board for immortals, a board for fun "social"
messages, etc. Naturally, not all players may be allowed to read all
types of boards.
Type "LOOK BOARD" to see the messages already posted on a board. Type
"WRITE <subject>" to post a message to a board; terminate a message with
a '@' as the first character on a line. Type "READ <number>" to read a
post. Type "REMOVE <number>" to remove your own messages.
Example:
> look at board
> write Am I using these boards correctly?
[writes the message; terminates with a '@']
> look at board
> read 6
> remove 6
See also: MAIL, READ, WRITE
#
CLERIC
Clerics have an ancient belief in not carrying sharp weapons. Hence, they can
only wield bludgeoning weapons. This class gives you the wisdom of peace,
blessing and healing, though it is possible to learn more violent spells.
You can improve your spells by using the practice command.
See 'help spells' for a list of spells available.
See also: PRACTICE, SPELLS
#
EXPERIENCE XP
Whenever you kill a monster or a player, you earn experience points. When
enough experience points are earned, you raise a level.
Things you should know about experience points:
* When damaging a monster, you get experience points.
* If you kill a monster of higher level than yourself, you get bonus
experience points. If killing a monster of lower level you'll gain
less experience points
See also: GROUP, SCORE
#
FLAGS
Players sometimes have FLAGS after their names in the WHO list. These
flags are always in parentheses, not brackets or braces.
FLAG MEANING
----------- ---------------------------------------------------------
(KILLER) Player is trying to kill other players. That means you
can try to kill him/her without being flagged.
(THIEF) Player is trying to steal from other players. Fire away.
(invis) Player is invisible; you can see him/her because you are
sensitive to the presence of invisible things.
(writing) Player is writing on the board; do not disturb.
(mailing) Player is writing mail; do not disturb.
(deaf) Player has chosen not to hear shouts.
(notell) Player has chosen not to accept tells.
(quest) Player is participating in a quest currently being run by
the Gods.
See also: NOSHOUT, NOTELL, QUEST, STEAL, VISIBLE
#
GUILD
The Guildhouse is the place where mortals may go to escape the troubles and
perils of a cruel world. Each guild is heavily guarded, so that only members
may enter the building. Guilds are also the places where people come to
learn and practice the skills of their trade.
See also: PRACTICE
#
HOUSES
Houses have been implemented as of CircleMUD 3.0. A house entails two things:
access control and crash protection. Only you and your guests will be allowed
to enter the house. Your house will be crash-saved every five minutes. You
can force your house to save by typing 'save' while standing in your house.
In the event of a crash, the objects in your house as of the last crash-save
will be loaded back into your house when the MUD reboots. Also, if you own
a house, and quit from the game while standing in your house, you will be
loaded into your house next time you enter the game.
Guests of your house can be defined using the HOUSE command. See HOUSE for
more information.
Houses are an alternative to renting. You can simply enter your house and
quit; your objects will drop to the ground and be crash-saved for when you
return. There is currently no limit to the number of objects which can be
stored in your house. Of course, players must expect to pay a much higher
premium for the convenience of houses; contact your local Implementor for
a fee schedule.
See also: HOUSE
#
IMPLEMENTOR
The most powerful being in existence.
#
INN INNS CRYOGENIC CRYO RECEPTION
Inns are places where the weary traveler may rest while the innkeeper looks
after his equipment and treasure.
Specifically, the game will save your equipment while you are logged out.
There is a daily cost for renting, based on your equipment. Each item has
a per diem charge. The per diem charge is calculated to the nearest second,
however -- if you rent at the rate of 2400 coins per day, and you come back
39 hours later, you will be charged 3900 coins.
A CRYOGENIC CENTER will store your items for a one-time charge of four
days rent.
Rent files are deleted if you run out of money to pay the per diem charges
or after 30 days. Cryogenic-rent files are deleted after 60 days.
See also: OFFER, RENT
#
LINK
A lot of players have problems with their links to the game. This can be
very hazardous to your health in the middle of a battle, of course.
I. If your link is broken, you will automatically attempt to flee each
time someone attempts to hit you. If you manage to flee, then you
will be saved by divine forces, and put in a safe place until you
reconnect to the game.
II. If your link jams (freezes), you have a problem. The only solution we
can give is that you break your link as quickly as possible. By
breaking the link you can hope that the above procedure is initiated.
Do not try to get out of a fight by breaking link. You will be not
reimbursed for any experience or equipment if you purposefully
cut your link.
#
"MAGIC USER" WIZARD MAGE
This is the class of powerful and violent magic, but the magic user do not
control the nature, and can therefore not bless and such.
You can improve your spells by using the practice command.
See 'help spells' for a list of spells available.
See also: PRACTICE, SPELLS
#
MANA
Mana is used when casting spells. You must have a certain amount of mana
in order to cast any particular spell. If you do not have enough mana to
cast the spell you must rest until you gain enough points to cast.
See also: SPELLS
#
MIDGAARD MAP
Temple Altar
|
|
Reading -- Temple -- Donations
Room of
Midgaard Post Reception
| Office /
Cleric | | /
Guild----Temple Square----Grunting---Bar
(Fountain) Boar Inn
Magic |
Shop Bakery | Grocer Weaponsmith
| | | | | East
<---West-----+------+----Market----+--------+--------Gate--->
Gate | | Square | | |
| Mage Armory | Pet Warrior Wally's
(Wall Guild | Shop Guild World of Water
Road) |
| | Uncle Juans's
| | |
+-(Poor-Alley)-+----Square----+(Dark-Alley)-------+
| | | | | |
| Grubby | Thieves Levee Warehouse
| Inn | Guild |
(Wall Dump |
Road) Sewers/ |
| |
| Midgaard
<=== [Bridge] =============================== River =============>
|
|
+(Concourse)+------------+-------------+----------+
| | | | |
| + +----Cafe +---Penny |
| | Park--v | | Lane |
| City | +--+--+ | |
| Guard----+----+----+--o--+-----+----+---City |
| HQ | | Hall |
| + +--(Emerald)--+ |
(Concourse) | | (Concourse)
| +------(Park-+-Road)-------+ |
| | | |
| +--(Emerald)-+ +---Elm |
| | | Street |
| + + |
| | | |
+-----------+------(Concourse)---------+----------+
|
Graveyard
Entrance
#
SHOPS
Shops are places where the adventurer may purchase equipment for his quests,
and where he may sell his treasure if he should manage to survive the perils
with his life and sanity intact. Many shops trade only in a specific type of
merchandise. Thus, a baker may well refuse to buy your armor, even if it is
of high quality!
To some people, the prospect of obtaining the entire inventory of a shop by
murdering the keeper may appear tempting - but beware: The shopkeepers are
often rugged, capable men; roughened by years of trading and, indeed, surviving
in a world where the only safe prospect is death in the end.
See also: BUY, SELL, LIST, VALUE
#
SPELL SPELLS
Magic User Cleric
(1) Magic Missile (1) Armor
(1) - (1) Cure Light
(2) Detect Magic (2) Create Water
(2) Detect Invisible (2) Create Food
(3) Chill Touch (3) Detect Poison
(3) Infravision (3) -
(4) Invisibility (4) Cure Blindness
(4) Armor (4) Detect Evil
(4) - (4) Detect Alignment
(5) Burning Hands (5) Bless
(6) Locate Object (6) Blindness
(6) Strength (6) Detect Invisible
(7) Shocking Grasp (7) Infravision
(8) Sleep (8) Protection From Evil
(8) - (8) Poison
(9) Lightning Bolt (9) Cure Critical
(9) Blindness (9) Group Armor
(10) Detect Poison (10) Summon
(10) - (10) Remove Poison
(11) Color Spray (11) -
(12) - (12) Earthquake
(12) - (12) Word of Recall
(13) Energy Drain (13) -
(14) Curse (14) Detect Evil
(14) Poison (14) Detect Good
(14) - (14) Dispel Evil
(14) - (14) Dispel Good
(15) Fireball (15) Call Lightning
(15) - (15) Sanctuary
(16) Charm Person (16) Heal
(17) Sense Life (17) Control Weather
(19) - (19) Harm
(22) - (22) Group Heal
(26) Enchant Weapon (26) Remove Curse
#
THIEF THIEVES
Thieves are known to have very special qualities, that no other class offers.
Their specialty tends to be in the darker, sneakier art. Many of these
qualities can come in handy in many situations, such as picking locks.
You can improve you skills by using the practice command.
Skills available to thieves:
sneak, hide, steal, backstab, pick lock, track
See the help on each skill for more information.
See also: PRACTICE
#
WARRIOR FIGHTER
Warriors are known to have more strength than the average player. This makes
them better at hand-to-hand-combat, as they possess skills of violence and
fighting unequaled by the members of any other class. However, they lack the
ability to use magic of any sort.
You can improve your skills by using the practice command.
Skills available to warriors:
kick, rescue, track, bash
See also: PRACTICE
#
CIRCLE CIRCLEMUD CREDITS
C I R C L E M U D 3 . 0
CircleMUD was developed from DikuMud (Gamma 0.0) by Jeremy "Ras" Elson at
Johns Hopkins University's Department of Computer Science. All code unique
to CircleMUD is protected under a copyright by the Trustees of the Johns
Hopkins University.
Many, many people contributed to CircleMUD in one way or another throughout
the course of its development. Although it's impossible for me to remember
them all, I'd like to extend special thanks to certain people:
-- Jeff Fink and George Greer, for submitting a veritable mountain of
excellent code.
-- Chris Epler and Chris Herringshaw for extensive beta-testing and bug
reporting.
-- Furry (Alex Fletcher), for single-handedly managing Circle's world files.
-- Fred Merkel, Ryan Watkins, Jay Levino, and Sharon Goza, for other
code and area submissions.
-- Jean-Jack Riethoven for porting the code to the Amiga, David Carver
for porting it to OS/2, and Jack Patton and Steffen Haeuser for the
Amiga port.
-- Bill Bogstad and Tim Stearns for allowing Circle to exist at JHU.
-- The DikuMud folk, and the good old WhatMUD implementors Dave & Justin,
for starting the ball rolling.
-- Bryan Jolson, Steven Lacher, Cat Stanton, and Naved Surve, for being
there in the very early days of Circle's development.
-- Sharon, Ben, Erica, Aly, and Josh, for keeping me sane.
-- Jules (hamotek sheli) for being the greatest.
...plus everyone else in the Circle community who has submitted material!
Thanks everyone!
Anonymous FTP: ftp.circlemud.org or ftp2.circlemud.org in pub/CircleMUD
To report bugs: bugs@circlemud.org
To get help: help@circlemud.org
URL: http://www.circlemud.org/
Mailing List: listserv@post.queensu.ca
(write "subscribe circle <first name> <last name>")
--Jeremy Elson (jelson@circlemud.org)
See also: AREAS
#
$

35
lib/text/help/socials.hlp Normal file
View file

@ -0,0 +1,35 @@
FRENCH
Don't you know how they kiss in France?? -- try it!
#
KISS
Well can't you guess?
#
SMILE
Whenever you feel like smiling...
#
SOCIALS
Usage: <social> [<victim>]
Socials are commands used to show your affective state to others. The
actor, victim and bystanders may receive different messages. Generally,
social commands are used only to express emotion and not to take action,
but it is possible that some mobs (or players) will take action based on
the social. (Slap a dragon lately?)
Example:
> shake homer
> applaud marge
> stare
The SOCIALS command generates a canonical listing of all available socials.
> socials
See also: EMOTE
#
$

557
lib/text/help/spells.hlp Normal file
View file

@ -0,0 +1,557 @@
ARMOR
Usage : cast 'armor' [target]
Accumulative: No
Duration : 24 Hours
Level : Mage level 4, Cleric level 1.
The Armor spell will improve your AC by 2.
See also: AC
#
BLESS
Usage : cast 'bless' <victim | object>
Accumulative: No
Duration : 6 Hours, permanent for objects.
Level : Cleric level 5.
Bless on a victim will improve the victims saving throw versus spells
by 1, and furthermore improve the hitroll by 2.
Bless on an item currently has no defined action. It is only possible
to bless non-evil items, and the object blessed may weigh no more
than five pounds per level of caster.
#
BLINDNESS
Usage : cast 'blindness' <victim>
Accumulative: No
Duration : 2 hours.
Level : Mage level 9, Cleric level 6.
Blindness will blind a victim failing its saving throw.
A blinded person will have -4 penalty to both hitroll and AC.
See also: AC
#
"BURNING HANDS"
Usage : cast 'burning hands' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 5.
Save : Versus spell for half damage.
This spell is more powerful than the chill touch spell.
See also: "CHILL TOUCH"
#
"CALL LIGHTNING"
Usage : cast 'call lightning' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 15.
Save : Versus spell for half damage.
This spell will use the "force of nature" to make a lightning
strike the victim. It is therefore only possible to call lightning
outside, and it has to be raining (or worse).
See also: "CONTROL WEATHER", WEATHER
#
CAST
Usage: cast '<spell name>' [target]
For "magical" people. If you want to throw a spell at someone or something.
Example:
> cast 'burning hands' <player>
Note that the name of the spell must be enclosed by "'"s.
See also: help on each individual spell:
Examples:
> help cure ligh
> help ventri
> help energy drain
#
"CHARM PERSON"
Usage : cast 'charm person' <victim>
Accumulative: No
Duration : (432/Intelligence points of person) hours
Level : Mage level 16.
Is is not possible to charm anyone that is already charmed, if
you're charmed yourself, or if the person is higher level than
yourself. The person will get a saving throw versus "paralysation".
A charmed person will follow you, and not be able to attack you, you
can order the charmed person using the order command.
See also: FOLLOW, ORDER
#
"CHILL TOUCH"
Usage : cast 'chill touch' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 3.
Save : Versus spell for half damage.
This spell is more powerful than the magic missile spell.
A victim failing its saving throw will get its strength
reduced by one.
See also: "MAGIC MISSILE"
#
COLORSPRAY "COLOR SPRAY"
Usage : cast 'color spray' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 11.
Save : Versus spell for half damage.
This spell is more powerful than the lightning bolt spell.
See also: "LIGHTNING BOLT"
For help on actual color, see: ANSI
#
"CONTROL WEATHER"
Usage : cast 'control weather' <'better' | 'worse'>
Accumulative: Yes
Duration : -
Level : Cleric level 17.
This spell will change the "course" of the current weather.
Example:
> cast 'control wea' worse
#
"CREATE FOOD"
Usage : cast 'create food'
Accumulative: -
Duration : Instantaneous
Level : Cleric level 2.
This spell instantly creates a fresh waybread. The waybread will be
filling for the next (5+level) hours, up to a maximum of 24 hours.
See also: "CREATE WATER"
#
"CREATE WATER"
Usage : cast 'create water' <drink container>
Accumulative: No
Duration : Instantaneous
Level : Cleric level 2.
Expect disastrous results if cast upon a drink container which contains
another liquid than water. Empty or water containers will be filled
depending on the level of the caster.
Double amount of water will be created if it is raining (or worse).
See also: "CREATE FOOD"
#
"CURE BLIND"
Usage : cast 'cure blind' <victim>
Accumulative: No
Duration : Instantaneous
Level : Cleric level 4.
This spell will cure a person blinded by the "blindness" spell, it
can not remove blindness caused by for example cursed items.
#
"CURE CRITIC"
Usage : cast 'cure critic' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 9.
This spell cures 3d8+3 hitpoints of damage.
#
"CURE LIGHT"
Usage : cast 'cure light' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 1.
Cures minor wounds and scratches.
#
CURSE
Usage : cast 'curse' <victim | object>
Accumulative: Yes
Duration : 7 Days, permanent on objects.
Level : Mage level 14.
Curse cast on a person that fails the saving throw, will reduce their
hitroll and damage roll both by one. It will also reduce the saving
throw versus paralysation by one.
When cast upon an object, the object will become undropable.
#
"DETECT ALIGNMENT"
Usage : cast 'detect alignment'
Accumulative: Yes (Duration)
Duration : 12 hours + level
Level : Cleric level 4.
Allows the caster to detect the alignment of those around them.
Evil will show as a red aura, good in a blue aura.
See also: "DETECT INVISIBILITY"
#
"DETECT INVISIBILITY"
Usage : cast 'detect invisibility' [self]
Accumulative: Yes (Duration)
Duration : 12 hours + level/4
Level : Mage level 2, Cleric level 6.
This spell enables you to see invisible items and players.
#
"DETECT MAGIC"
Usage : cast 'detect magic' [self]
Accumulative: Yes (Duration)
Duration : 12 hours + level
Level : Mage level 2.
This spell will let you see the magical aura surrounding magical
objects.
#
"DETECT POISON"
Usage : cast 'detect poison' <victim | food | drink>
Accumulative: No
Duration : Instantaneous
Level : Mage level 10, Cleric level 3.
Cast on food or drinks (drink containers) you will be able to
sense if it is poisoned.
Cast on a person you will be able to see if that person is
poisoned.
#
"DISPEL EVIL"
Usage : cast 'dispel evil' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 14.
Save : Special
This spell will only affect evil creatures. An evil person of level
equal or less than caster will suffer 100 damage points.
If the victim is higher level than caster, the spell will inflict
(caster_level)d4 damage points, saving throw versus half damage.
See also: DISPEL GOOD
#
"DISPEL GOOD"
Usage : cast 'dispel good' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 14.
Save : Special
This spell will only affect good creatures. A good person of level
equal or less than caster will suffer 100 damage points.
If the victim is higher level than caster, the spell will inflict
(caster_level)d4 damage points, saving throw versus half damage.
See also: DISPEL EVIL
#
EARTHQUAKE
Usage : cast 'earthquake'
Accumulative: -
Duration : Instantaneous
Level : Cleric level 12.
Save : -
This spell will damage everybody except the caster by
1d8+level_of_caster hitpoints.
#
"ENCHANT WEAPON"
Usage : cast 'enchant weapon' <weapon>
Accumulative: No
Duration : Permanent
Level : Mage level 26.
This spell will enchant non-magical (non-modifying) weapons only.
By non-modifying weapons we refer to weapons that might alter any
ability such as for example damage. The only way to know if a weapon
is suitable for enchantment is to fully identify it.
The enchantment will modify the weapon as:
Level Hit Roll Damage
0..17 +1 +1
18..19 +2 +1
20..20+ +2 +2
#
"ENERGY DRAIN"
Usage : cast 'energy drain' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 13.
Save : Versus spell for half damage.
This spell does not give much damage, but victims failing their
saving throws will loose up to 40,000 XP points. You will gain
a quarter of this XP.
Beware that this spell is evil.
#
FIREBALL
Usage : cast 'fireball' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 15.
Save : Versus spell for half damage.
This spell is the most powerful spell a magic user can cast.
See also: "COLOR SPRAY"
#
HARM
Usage : cast 'harm' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 19.
Save : Versus spell for half damage.
This spell removes all but 1d4 hitpoints from the victim. The
maximum number of damage points are 100. It is not possible to
kill using this spell (but almost).
#
HEAL
Usage : cast 'heal' <victim>
Accumulative: No
Duration : Instantaneous
Level : Cleric level 16.
Heal will heal all the hitpoints from a person, except 1d4 points.
Maximum 100 points can be healed. A victim who is blinded will also
be cured by the heal spell.
See also: "CURE BLINDNESS"
#
INFRAVISION
Usage : cast 'infravision'
Accumulative: Yes (Duration)
Duration : 12 hours + level
Level : Mage level 3, Cleric level 7.
Allows the caster to detect the heat given off by objects giving them
the ability to have much better vision in dark conditions.
See also: "DETECT INVISIBILITY"
#
INVISIBILITY
Usage : cast 'invisibility' <victim | object>
Accumulative: Yes (Duration)
Duration : 24 hours, permanent on objects.
Level : Mage level 4.
Makes the target of the spell invisible to everyone except those who have
the "detect invisibility" spell.
Attacking while invisible will immediately break the spell.
See also: "DETECT INVISIBILITY"
#
"LIGHTNING BOLT"
Usage : cast 'lightning bolt' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 9.
Save : Versus spell for half damage.
This spell is more powerful than the shocking grasp spell.
See also: "SHOCKING GRASP"
#
"LOCATE OBJECT"
Usage : cast 'locate object' <object>
Accumulative: -
Duration : Instantaneous
Level : Mage level 6.
If possible you will know exactly where an object is, or the
name of the person using it. If more than one object by the
same name exists, you will get a listing of several objects.
The maximum number of objects you can simultaneously locate is
your level divided by 2.
#
"MAGIC MISSILE"
Usage : cast 'magic missile' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 1.
Save : Versus spell for half damage.
Causes a bolt of magical energy to be thrown from the casters hands at the
victim.
#
POISON
Usage : cast 'poison' <victim | food | drink>
Accumulative: Yes on persons.
Duration : Level hours, or permanent on food and drinks.
Level : Cleric Level 8, Mage level 14.
Casting poison on food or drink (containers) will poison it. Eating
poisoned food/drinks will poison the person eating or drinking.
A person who is poisoned will suffer damage every hour, lose strength, and
gain less points than usual.
See also: "REMOVE POISON", "DETECT POISON"
#
"PROTECTION FROM EVIL"
Usage : cast 'protection from evil' [self]
Accumulative: Yes (Duration)
Duration : 24 hours
Level : Cleric level 8.
The meaning of this spell is not yet fully defined.
#
"REMOVE CURSE"
Usage : cast 'remove curse' <victim | object>
Accumulative: No
Duration : Instantaneous
Level : Cleric level 26.
Will remove a curse on carried objects or any persons in the room.
#
"REMOVE POISON"
Usage : cast 'remove poison' <victim | food | drink>
Accumulative: No
Duration : Instantaneous
Level : Cleric level 10.
Will remove the affects of poison from a victim or an object.
See also: POISON
#
SANCTUARY
Usage : cast 'sanctuary' [self]
Accumulative: Yes (Duration)
Duration : 4 hours
Level : Cleric level 15.
When protected by sanctuary you will only receive 1/2 the normal damage
caused by a particular blow.
See also: ARMOR, BLESS
#
"SHOCKING GRASP"
Usage : cast 'shocking grasp' <victim>
Accumulative: -
Duration : Instantaneous
Level : Mage level 7.
Save : Versus spell for half damage.
This spell is more powerful than the burning hands spell.
See also: "BURNING HANDS"
#
"SENSE LIFE"
Usage : cast 'sense life'
Accumulative: Yes (Duration)
Duration : Level hours.
Level : Cleric level 5, Mage level 17.
Allows the caster to sense the presence of a player or monster in the
room which is hiding. The true identity will remain hidden however.
Invisible persons are also considered hidden.
See also: HIDE
#
STRENGTH
Usage : cast 'strength' <victim>
Accumulative: Yes
Duration : Level/2 + 4
Level : Mage level 6.
A person will gain 1 strength point per spell (2 points if level of
caster is greater than 18). Maximum strength is 18/100.
#
SUMMON
Usage : cast 'summon' <victim>
Accumulative: -
Duration : Instantaneous
Level : Cleric level 10.
Will summon a person of the name spoken. It is not possible to
summon someone of three or more levels above yourself.
If you attempt to summon a monster, it will get a saving throw.
See also: NOSUMMON
#
VENTRILOQUATE
Usage : cast 'ventriloquate' <victim | object> <text>
Accumulative: -
Duration : Instantaneous
Level : Mage level 1.
Save : Versus spell victim only sees attempted cast.
For all people in the same room as the caster that fail a saving throw, the
spell will make the object or victim appear to say the text written.
Example:
> cast 'vent' Mirlen I got 399,823 coins, don't even consider killing me!
#
"WORD OF RECALL"
Usage : cast 'word of recall'
Accumulative: -
Duration : Instantaneous
Level : Cleric level 12.
The caster will be transferred back to his hometown sanctuary (usually the
Temple of Midgaard).
#
$

728
lib/text/help/wizhelp.hlp Normal file
View file

@ -0,0 +1,728 @@
ADVANCE
Usage: advance <victim> <level>
ADVANCE moves a player to a new level. If used to promote a player to an
immortal level, and if you have the autowiz program installed, the wizlist and
immlist will automatically be recreated.
Example:
> advance rasmussen 34
See also: SET
#
WIZAT
Usage: at <room VNUM | item | mob | player name> <command> <arguments>
AT can be used to perform an action in a location other than where you are
standing. The first argument can be a virtual room number or the name of a
character or object. The remainder of the line is passed to the command
interpreter.
Examples:
> at 3001 look
> at fido kill fido
> at 3.corpse get all corpse
> at catje wave catje
See also: GOTO
#
BAN UNBAN
Usage: ban [<all | new | select> <site>]
unban <site>
These commands prevent anyone from a site with a hostname containing the
site substring from logging in to the game. You may ban a site to ALL, NEW
or SELECT players. Banning a site to NEW players prevents any new players
from registering. Banning a site to ALL players disallows ANY connections
from that site. Banning a site SELECTively allows only players with site-ok
flags to log in from that site. Ban with no argument returns a list of
currently banned sites.
Unban removes the ban.
Examples:
> ban all whitehouse.gov
> unban ai.mit.edu
See also: WIZLOCK
#
DATE
Shows the current real time. (Not a social)
#
DC
Usage: dc <descriptor number>
DC (DisConnect) is used to disconnect a socket. If used on a playing socket,
the player will lose his/her link, but, unlike PURGE, will not extract the
player or dump the player's inventory on the ground.
DC is also useful for disconnecting people who have accidentally left
themselves at the main menu, or connections sitting in the "Get name" state.
See also: USERS
#
ECHO GECHO QECHO SEND
Usage: echo <message>
gecho <message>
send <victim> <message>
qecho <message>
ECHO displays a string to everyone in your room.
GECHO displays the string to everyone in the game.
QECHO displays the string to everyone with the QUEST flag.
SEND displays the string to a particular person.
Examples:
> echo Hi, everyone in the room.
> gecho Hi, everyone in the game, isn't this annoying?
> send rasmussen You are being watched.
#
FORCE
Usage: force <victim | all> <command> <arguments>
FORCE forces a character, either monster or player, to perform a certain
action. FORCE ALL forces everyone in the game; FORCE ROOM forces everyone in
your room.
Example:
> force fido drop meat
> force all save
> force room look fido
If you are invisible to the one being forced, the force will be performed
silently.
#
FREEZE THAW
Usage: freeze <victim>
thaw <victim>
FREEZE, originally invented here at CircleMUD (we think), is used to prevent
a player from playing. If frozen, the game will ignore all commands entered
by the player, including QUIT, until the player is unfrozen with THAW.
Obviously, this command should only be used in extreme disciplinary
circumstances.
See also: SET -> FROZEN
#
GOTO TRANS WIZTELEPORT
Usage: goto <location>
trans <victim>
teleport <victim> <location>
These commands are used to transports yourself and others to different rooms.
GOTO allows you to go to other rooms; TRANS transports a person from wherever
they are to the room YOU are in; TELEPORT transports your victim to some other
location.
For both GOTO and TELEPORT, the location specifier can be either a virtual
room number, or the name of a character or object.
Examples:
> goto 3001
> goto rasmussen
> trans fido
> teleport fido 3001
> teleport fido 2.fido
See also: POOFIN, POOFOUT, SET -> ROOM, WIZAT
#
HANDBOOK
Usage: handbook
Guidelines for having an Immortal character -- you should read it.
#
HCONTROL
Usage: hcontrol build <house vnum> <exit dir> <player name>
hcontrol destroy <house vnum>
hcontrol pay <house vnum>
hcontrol show
House control, controls the addition, removal, and payments of houses.
Hcontrol show will show all the houses currently defined in the game
along with their last 'rent' payment date.
See also: HOUSE, HOUSES
#
HOLYLIGHT
Usage: holylight
A toggle which allows you to see:
Invisible people and objects, even if you don't have 'detect invisibility'
Hidden people, even if you don't have 'sense life'
Dark rooms, even if you don't have a light
It is expected most immortals will keep HOLYLIGHT on most of the time;
it exists so that you have the ability to see what mortals see for
debugging purposes.
#
IMOTD
Usage: imotd
Displays the Immortal message of the day. This file usually contains
new information on commands recently added, new features and other
important information that immortals should be aware of.
See also: MOTD
#
INVIS
Usage: invis [level]
INVIS sets your invisibility level. With no argument, invis toggles between
making you fully visible and fully invisible. If you specify a level, only
people at and above the level you specify will be able to see you.
Examples:
> invis
> invis 31
See also: VISIBLE
#
LAST
Usage: last <player_name>
For checking the last time a person logged on, their sitename, and their
ID number.
Example:
> last ras
[ 24] [14 Cl] Ras : somesite.edu : Tue May 16 22:07:09 1995
See also: STAT
#
LOAD
Usage: load <mob | obj> <virtual number>
LOAD is used to create mobiles and objects. The first argument specifies if
you are trying to load a mobile or an object; the second is the virtual
number.
Example:
> load obj 3099
You create a bulletin board.
> load mob 3005
You create the receptionist.
See also: VNUM
#
MUTE
Usage: mute <victim>
MUTE is used to shut a player up. When muted, a player will not be able to
use most communication channels until he/she is unmuted.
See also: FLAGS
#
NOHASSLE
Usage: nohassle
Toggles a flag to prevent aggressive monsters from attacking.
#
NOTITLE
Usage: notitle <vicitim>
Prevent players from being able to set their own titles; i.e., if the
player consistently has an offensive title. The definition of offensive
is left as an exercise for the reader.
See also: TITLE
#
NOWIZ
Usage: nowiz
Allows you to hear or ignore messages coming over the wiznet.
See also: WIZNET
#
OLC
Usage: olc { . | set | show | obj | mob | room} [args]
.: Repeat last modification command
set: Set OLC characteristics
show: Show OLC characteristics
obj: Modify an object
mob: Modify a mob
room: Modify a room
OnLine Creation. A feature which will eventually allow the creation
of areas ONLINE, without having to reboot the system.
See also: SHOW->ZONES, ZRESET
#
PAGE
Usage: page <player | all> <message>
PAGE is used to send a message, along with a beep, to another player. Use
PAGE ALL to send a message and a beep to everyone in the game.
Examples:
> page rasmussen Hey, are you still at the keyboard?
> page all GAME WILL BE SHUTTING DOWN IN 10 MINUTES
Do not abuse this command.
#
PARDON
Usage: pardon <victim>
Removes killer and thief flags from a player.
#
POOFIN POOFOUT
Usage: poofin <message>
poofout <message>
Sets the message seen by players when you use GOTO to move to a different
room. POOFIN with no argument resets your poofin to the default "appears with
an ear-splitting bang"; POOFOUT with no argument defaults to "disappears in
a puff of smoke."
See also: GOTO
#
PURGE
Usage: purge [name]
Purge destroys things. If used with no arguments, it will clear a room of all
mobiles and objects, but will not harm players. If the argument is an object,
that object (and all of its contents, if any) will be destroyed. If the
argument is a mobile, the mobile will be destroyed, leaving its inventory and
equipment lying on the ground.
If the argument is the name of a player, the player's inventory and equipment
will drop on the ground and the player will lose his/her connection. For this
reason, PURGE should only be used on players in disciplinary situations.
Examples:
> purge
> purge Pom
> purge sword
> purge dragon
See also: DC
#
RELOAD
Usage: reload < '*' | all | file >
Reload is used to reload text files such as the MOTD from disk into memory.
reload * reloads all the text files below.
Valid files are:
background (/mud_dir/lib/text/background)
credits (/mud_dir/lib/text/credits)
greetings (/mud_dir/lib/text/greetings)
handbook (/mud_dir/lib/text/handbook)
help (/mud_dir/lib/text/help)
immlist (/mud_dir/lib/text/immlist)
imotd (/mud_dir/lib/text/imotd)
news (/mud_dir/lib/text/news)
motd (/mud_dir/lib/text/motd)
info (/mud_dir/lib/text/info)
policy (/mud_dir/lib/text/policies)
wizlist (/mud_dir/lib/text/wizlist)
xhelp (/mud_dir/lib/text/help/*)
#
REROLL
Usage: reroll <player>
REROLL gives a player new stats (i.e., Str, Int, Wis, Dex, Con, and Cha)
See also: STAT
#
RESTORE
Usage: restore <player | mobile>
RESTORE restores a player or mobile to full hit, mana, and movement points.
If used on immortals, it also sets all skill levels to 100%.
#
RETURN
Usage: return
RETURN returns you to your regular body if you are switched into a mob.
See also: SWITCH
#
ROOMFLAGS
Usage: roomflags
Toggles a flag which causes the virtual room number and room flags, if any,
to be displayed next to room names.
#
SET
Usage: set [ file | player ] <character> <field> <value>
SET is an extremely powerful command, capable of setting dozens of aspects of
characters, both players and mobiles.
SET PLAYER forces set to look for a player and not a mobile; useful for
players with names such as 'guard'.
SET FILE lets you change players who are not logged on. If you use SET FILE
on a player who IS logged on, your change will be lost. If you wish to set
a player who is in the game but is linkless, use set twice -- once with the
FILE argument, and once without -- to make sure that the change takes.
For toggled fields (BINARY), the value must be ON, OFF, YES, or NO.
The following are valid fields:
Field Level Required Who Value Type Decription
-----------------------------------------------------------------------------
age LVL_GRGOD BOTH NUMBER Character's age
brief LVL_GOD PC BINARY Brief mode
invstart LVL_GOD PC BINARY Invisible @ Start
title LVL_GOD PC MISC Player's title
nosummon LVL_GRGOD PC BINARY NOSUMMON flag
maxhit LVL_GRGOD BOTH NUMBER Max HP
maxmana LVL_GRGOD BOTH NUMBER Max mana
maxmove LVL_GRGOD BOTH NUMBER Max movement
hit LVL_GRGOD BOTH NUMBER Current HP
mana LVL_GRGOD BOTH NUMBER Current mana
move LVL_GRGOD BOTH NUMBER Current movement
align LVL_GOD BOTH NUMBER Alignment
str LVL_GRGOD BOTH NUMBER Strength
stradd LVL_GRGOD BOTH NUMBER Additional STR (18/xx)
int LVL_GRGOD BOTH NUMBER Inteligence
wis LVL_GRGOD BOTH NUMBER Wisdom
dex LVL_GRGOD BOTH NUMBER Dexterity
con LVL_GRGOD BOTH NUMBER Constitution
cha LVL_GRGOD BOTH NUMBER Charisma
sex LVL_GRGOD BOTH MISC Sex
ac LVL_GRGOD BOTH NUMBER Armor class
gold LVL_GOD BOTH NUMBER Gold (On hand)
bank LVL_GOD PC NUMBER Gold in bank
exp LVL_GRGOD BOTH NUMBER Experience points
hitroll LVL_GRGOD BOTH NUMBER To-Hit modifier
damroll LVL_GRGOD BOTH NUMBER Damage modifier
invis LVL_IMPL PC NUMBER Invisible (level)
nohassle LVL_GRGOD PC BINARY NOHASSLE flag
frozen LVL_FREEZE PC BINARY FROZEN flag
practices LVL_GRGOD PC NUMBER # of practices
lessons LVL_GRGOD PC NUMBER # of practices
drunk LVL_GRGOD BOTH MISC Drunkeness
hunger LVL_GRGOD BOTH MISC Hrs to hunger
thirst LVL_GRGOD BOTH MISC Hrs to thirst
killer LVL_GOD PC BINARY KILLER flag
thief LVL_GOD PC BINARY THIEF flag
level LVL_IMPL BOTH NUMBER Level
room LVL_IMPL BOTH NUMBER Move to room
roomflag LVL_GRGOD PC BINARY ROOMFLAGS flag
siteok LVL_GRGOD PC BINARY SITEOK flag
deleted LVL_IMPL PC BINARY DELETED flag
class LVL_GRGOD BOTH MISC Class (W/T/C/M)
nowizlist LVL_GOD PC BINARY Not Wizlistable flag
quest LVL_GOD PC BINARY QUESTING flag
loadroom LVL_GRGOD PC MISC Room to load in (#/off)
color LVL_GOD PC BINARY COLOR flag
idnum LVL_IMPL PC NUMBER ID Number
passwd LVL_IMPL PC MISC Player password
nodelete LVL_GOD PC BINARY Undeletable flag
See also: STAT
#
SHOW
Usage: show <mode> [argument]
Valid Modes:
death errors godrooms houses
player rent shops stats
zones
The SHOW command displays information. Some modes of show require additional
information, such as a player name.
death: Shows all death traps in the game.
errors: Shows errant rooms.
godrooms: Shows the rooms in the 'god zone'.
houses: Shows the houses that are currently defined.
player: Shows player summary information, simply provide a player name.
rent: Shows the filename and path to a players rent file.
shops: Shows all the shops in the game and their buy/sell parameters.
stats: Shows game status information including players in game, mobs etc.
zones: Shows all the zones in the game and their current reset status.
An age of -1 means it is in the 'to be reset next' queue.
See also: STAT, ZRESET
#
SHUTDOWN
Usage: shutdown [reboot | die | pause]
SHUTDOWN shuts the MUD down. The SHUTDOWN command works in conjunction with
CircleMUD's 'autorun' script. If you are not using autorun, the arguments are
meaningless. If you are using autorun, the following arguments are available:
REBOOT Pause only 5 seconds instead of the normal 40 before trying to
restart the MUD.
DIE Kill the autorun script; the MUD will not reboot until autorun is
explicitly run again.
PAUSE Create a file called 'paused' in Circle's root directory; do not
try to restart the MUD until 'paused' is removed.
#
SKILLSET
Usage: skillset <name> '<skill>' <value>
Sets the specified skill to the specified value.
See also: SET
#
SLOWNS
Usage: slowns
Toggles whether or not IP addresses are resolved into readable site names.
If slow nameserver is enabled, USERS will show only IP addresses.
(128.123.222.111 etc).
See also: USERS
#
SNOOP
Usage: snoop [player]
Snoop allows you to listen in on another player's session; everything the
player sees or types will be displayed on your terminal preceded by a '%'.
Obviously, there are many ethical considerations to the use of this command;
snoop should be used minimally, and only for disciplinary purposes.
Type snoop <your name> or just snoop to stop snooping.
#
SNOWBALL
Snowball is just a social -- it prints a funny message, and nothing more.
#
STAT
Usage: stat [player | object | mobile | file] <name>
Gives information about players, monsters, and objects in the game. The type
argument is optional.
STAT PLAYER will search only for players; useful for statting people with
names such as Red or Cityguard.
STAT OBJECT will search only for objects.
STAT MOBILE will search only for monsters.
STAT FILE is used to stat players who are not logged in; the information
displayed comes from the playerfile.
Examples:
> stat fido
> stat player red
> stat mobile red
> stat file niandra
> stat object thunderbolt
See also: VSTAT
#
STRING
Usage: string <type> <name> <field> [<string> | <keyword>]
For changing the text-strings associated with objects and characters. The
format is:
Type is either 'obj' or 'char'.
Field is one of the following(the names may be abbreviated):
Name (the call-name of an obj/char - kill giant)
Short (for inventory lists (obj's) and actions (char's))
Long (for when obj/character is seen in room)
Title (for players)
Description (For look at. For obj's, must be followed by a keyword)
Delete-description (only for obj's. Must be followed by keyword)
Where a string is expected as the last argument, a newline will make you enter
a string mode, and the game will prompt you for new lines to the string until
you exceed the maximum length for the string or you end a line with a '@'.
Mobiles and objects currently cannot be strung.
#
SWITCH
Usage: switch <monster>
SWITCH is used to take over the body of mobiles; useful for interactive
adventures. If the monster in which you are switched is killed you will be
returned to your own body.
See also: RETURN
#
SYSLOG
Usage: syslog [off | brief | normal | complete]
The SYSLOG command controls how detailed of an on-line system log you see.
Messages surrounded by '[' and ']' are syslog messages and are in green
if you have color on.
The messages you receive are level dependent.
Examples:
> syslog complete
> syslog off
See also: COLOR
#
UNAFFECT
Usage: unaffect <victim>
Removes all affections (i.e., spell effects) from a player.
See also: STAT
#
UPTIME
Usage: uptime
Displays when the game was booted and calculates how long ago that was.
#
USERS
Usage: users [switches]
USERS gives a list of all sockets (i.e., connections) currently active on the
MUD. The multi-column display shows the socket number (used by DC), class,
level, and name of the player connected, connection state, idle time, and
hostname.
The following switches are available:
-k or -o Show only outlaws (killers and thieves).
-p Show only sockets in the playing sockets.
-d Show only non-playing (deadweight) sockets.
-l min-max Show only sockets whose characters are from level min to max.
-n <name> Show the socket with <name> associated with it.
-h <host> Show all sockets from <host>.
-c list Show only sockets whose characters' classes are in list.
See also: DC, SLOWNS
#
VNUM
Usage: vnum <mob | obj> <name>
Gives a list of the virtual numbers of objects or mobiles which have the
specified name.
Examples:
> vnum obj ring
1. [ 904] a platinum ring
2. [ 2543] a seashell ring
3. [ 2588] a small emerald ring
> vnum mob dragon
1. [ 1] Puff
2. [ 908] the dragon turtle
3. [ 2548] the Master of Illusions
#
VSTAT
Usage: vstat < mob | obj > <virtual number>
Used to stat a prototypical mobile or object by virtual number.
Examples:
> vstat obj 3000
> vstat mob 3001
See also: LOAD, STAT, VNUM
#
WIZHELP
Usage: wizhelp
Gives a list of the special commands available at your level.
#
WIZLOCK
Usage: wizlock [value]
WIZLOCK allows you to restrict the game. WIZLOCK 1 prevents new characters
from being created. WIZLOCK n, 2 <= n <= 34, prevents new characters and
allows only characters level n and above to log on. WIZLOCK with no argument
displays the current WIZLOCK level.
See also: BAN
#
WIZNET ;
The immortal communication channel.
Usage: wiznet [ '@' | '+' | '-' | '#' ] [<text>]
Examples:
>; <text> - just sends text
>; @ - shows all gods that are on and visible to you
- also shows if the gods who are visible to you are writing
This code was provided by Gnort.
See also: NOWIZ
#
ZRESET
Usage: zreset < zone | '*' | '.' >
Used to force a zone to reset. '*' forces all zones to reset. '.' forces
the zone you are in to reset.
See also: SHOW -> ZONES
#
$

9
lib/text/immlist Normal file
View file

@ -0,0 +1,9 @@
*************************************************************************
* The following people have reached immortality on CircleMUD. They are *
* to be treated with respect and awe. Occasional prayers to them are *
* advisable. Annoying them is not recommended. Stealing from them is *
* punishable by immediate death. *
*************************************************************************
Immortals
~~~~~~~~~

11
lib/text/imotd Normal file
View file

@ -0,0 +1,11 @@
(lib/text/imotd)
Welcome to CircleMUD 3.5!
This is the immortal MOTD -- the file that immortals will see when they
log in to the game. You should change it to something more interesting
when you get a chance (as well as most of the other files in lib/text.)
If you need help, find a bug, or wish to contribute please stop by
The Builder Academy at: builderacademy.net 9091

48
lib/text/info Normal file
View file

@ -0,0 +1,48 @@
(lib/text/info)
[Note: Further information can be gained on the capitalized words by using the
HELP-command]
Classes, skills, and guilds:
When you enter the game the first time, you are asked to select a class; either
THIEF, WARRIOR, CLERIC, or MAGIC user. Characters belonging to each of these
classes have their own qualities, abilities, and handicaps.
It is not unusual that people belonging to different classes, by joining
their efforts and combining their skills, find their chances of survival and
progress greatly improved. Indeed, a team consisting of members from all four
classes can be an extremely powerful unit; capable of opening doors without
keys, creating food supplies out of nothing, and destroying an enemy in
several different ways. It is not advisable for a new player to offend the
members of such a group!
In order to learn the tricks of your specific trade, you need to find your
GUILD, which may take a little exploring. However, you can usually find a
guild in any reasonably populated city. Once you've found it, you need to
look up your guildmaster and PRACTICE.
Equipment:
It is never wise to travel without the proper equipment. You may purchase this
in the SHOPS found in any larger city, or you may be lucky and find some left
around, dropped by someone who doesn't need it anymore, for one reason or
another.
About Staying Fit - Eating and Drinking:
At one time or another, you'll see the message "You are hungry". This means
that it's time to find something edible before too long. People don't starve
to death in this world, so have no fear. However, when you are hungry, you do
not build up lost energy, so eventually you'll be unable to do anything but sit
around and feel sorry for yourself, until someone comes by. Then, you can only
hope that it's a benevolent person, rather than a greedy thief or a warrior
lusting for blood.
General hints:
See help on the group command.
See help on the consider command.
See help on resting.
See help on your class (magic user, cleric, warrior or thief).
See Also: HELP

8
lib/text/motd Normal file
View file

@ -0,0 +1,8 @@
(lib/text/motd)
Welcome to
C I R C L E M U D 3 . 5
"We addict players for their own enjoyment."
Created by Jeremy Elson

84
lib/text/news Normal file
View file

@ -0,0 +1,84 @@
(lib/text/news)
THE CIRCLEMUD HERALD
"We addict players for their own enjoyment."
December, 2006
NEW COMMANDS AND NEW MUD BEHAVIOR:
---------------------------------
** You can now use the history command to see the last 100 communications
from all the channels. It clears upon viewing or log off.
** Your mail will now be saved so you will not lose it when you log off.
** You can now use the AFK toggle to let people see you are gone under
who.
** You now have almost 180 stock zones to play.
** You can now interact with rooms, mobs, and objects through triggers.
** Multiple objects will now be stacked and preceeded by a quantity so
your inventory won't be as long. (3) A waybread.
** Over 100 new socials, and the gemote command to use socials over the
gossip channel. Socials can now target bodyparts too, behave.
** You can now use color! @RHELP COLORCODES@n.
** Added new invisible mobs and objects so everything may not be as it
appears (not even visible with detect invis).
** Added an online dictionary. Tell m-w <word>.
** The player description length has been increased so please write a
decent description for yourself.
** You can now set your pagelength with the same command.
** You can now "look around" to see anything of interest in the room. But,
some things may still be hidden and require further investigation.
** You can now use "all" and "all.x" very generally with the get, put,
drop, junk, donate, give, wear and remove commands. Type HELP GET
for more info.
** The "track" function will show you the first step on the shortest
path to anyone in the game.
** You can now remove your own messages from the board. Also, if you
put someone else's name in parentheses in the message header, they
will be able to remove the message too.
** The MIDGAARD MAIL SYSTEM is now complete. The Post Office is north
of the entrance to the Grunting Boar inn. Stamps cost 150 coins.
** Fountains have now been implemented. You can drink from fountains
or fill containers from fountains using the FILL command.
** The SHOUT command, as always, only reaches people in your zone (you
can see who these people are by typing WHERE). The HOLLER command
reaches everyone in the game but costs extra movement points.
** When you are writing a message, you will now not be interrupted
by tells, shouts, emotes, socials, and even people talking in the
same room.
*****************************************************************************
IF YOU LEAVE THE GAME FOR MORE THAN AN HOUR, either by renting or plain
quitting, your hit points, move points, and mana will be fully restored
when you come back! This doesn't work if you're poisoned.
*****************************************************************************
** Use the ASSIST command to engage in mortal combat with someone in the
room who is getting pummeled.
** Use the SPLIT command to split gold among the members of your group
(including yourself) who are in the room. i.e. If you are in a group
with 4 other people who are in the room with you, type "SPLIT 100"
to give each of them 20 coins.
** You can use the VISIBLE command to break a spell of invisibility before
it expires.

8
lib/text/policies Normal file
View file

@ -0,0 +1,8 @@
(lib/text/policies)
This file should list, in no uncertain terms, the policies you must abide
by on this MUD.
Bug the higher-ups to make some policies and write them in this file, lest
a political disaster ensue...

16
lib/text/wizlist Normal file
View file

@ -0,0 +1,16 @@
*************************************************************************
* The following people have reached immortality on CircleMUD. They are *
* to be treated with respect and awe. Occasional prayers to them are *
* advisable. Annoying them is not recommended. Stealing from them is *
* punishable by immediate death. *
*************************************************************************
Implementors
~~~~~~~~~~~~
Greater Gods
~~~~~~~~~~~~
Gods
~~~~

598
lib/world/mob/0.mob Normal file
View file

@ -0,0 +1,598 @@
#0
An undefined string.~
an undefined string.~
An undefined string.~
An undefined string.~
d 0 0 E
0 20 0 0d0+0 0d0+0
0 0
0 0 0
Str: 3
Dex: 3
Int: 3
Wis: 3
E
#1
Puff dragon fractal~
Puff~
Puff the Fractal Dragon is here, contemplating a higher reality.
~
Is that some type of differential curve involving some strange, and unknown
calculus that she seems to be made out of?
~
bdnopqr dkp 1000 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 2
BareHandAttack: 12
E
T 95
#2
cleric healer~
the healer~
A healer in a white luminescent robe is tending to the wounded.
~
Nothing. This beautiful woman at one time used to piously offer her healing
skills to any in need. But times are rough and now she can only afford to help
those that are just starting their adventures. Type 'heal' to see what services
she offers.
~
bdnopr 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 2
E
#3
questmaster~
the questmaster~
The questmaster is waiting for a brave adventurer to step forth.
~
Many adventurers come here to seek glory by attempting to solve the quests
given to them by this old man. The quests are not easy, sometimes nearly
impossible. But they will always be a challenge. The questmaster looks at you
and says, 'help autoquest should show you all you need to know'.
~
bdnopr 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 138
T 139
T 143
#4
healer~
the healer~
A healer in a white luminescent robe is tending to the wounded.
~
This beautiful woman at one time used to piously offer her healing skills to
any in need. But times are rough and now she can only afford to help those that
are just starting their adventures. Type 'heal' to see what services she
offers. Type 'heal <spell>' to buy one of her spells.
~
bdnopqr 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 2
E
#5
jack russell~
Jack Russell~
Jack Russell hunts with his dogs.
~
The Jack Russell takes its name from the Reverend John Russell who bred one
of the finest strains of terriers for working fox in Devonshire, England in the
mid-to-late 1800's. Rev. Russell (1795-1883), apart from his church
activities, had a passion for fox hunting and the breeding of fox hunting dogs
he is also said to be a rather flamboyant character, probably accounting for his
strain of terrier's notability and the name of our terrier today.
~
dg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
E
#6
john russell~
John Russell~
John Russell seems to have lost his dog.
~
John Russell maintained his strain of fox terriers bred strictly for working,
and the terrier we know of today as the Jack Russell is much the same as the
pre-1900's fox terrier. The Jack Russell has survived the changes that have
occured in the modern-day Fox Terrier because it has been preserved by working
terrier enthusiasts in England for more than 100 years.
~
bd 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 1
E
#7
jack russell terrier~
the Jack Russell terrier~
A Jack Russell terrier is following a scent.
~
Jack Russell Terriers are a type, or strain, of working terrier they are not
purebred in the sense that they have a broad genetic make-up, a broad standard,
and do not breed true to type. You will see different "types" of JRTs, from
long-bodied, short, crooked legs to a more proportioned length of body and
longer legs. This is a result of having been bred strictly for hunting since
their beginning in the early 1800's, and their preservation as a working breed
since.
~
bd 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
#8
wishbone~
Wishbone~
Wishbone begins yet another adventure.
~
Wishbone is a Jack Russell Terrier played by a dog named Soccer. This
adorable little actor has his own series on PBS and gets credit for introducing
children to over 40 stories from classic literature. Wishbone became so popular
after his series started in 1994 that he now has his own line of children's
books and plush toys.
~
bd 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 1
E
#9
sick looking dog~
a sick looking dog~
A sick looking dog gags on something in its mouth.
~
The dog is unkept and unhealthy. It does not look like it has been eating
very well.
~
bd 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 1
E
T 95
#10
clone~
the clone~
A boring old clone is standing here.
~
This clone is nothing to look at. No, really, it is quite boring.
~
bdnopr 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
E
#11
zombie undead humanoid~
the zombie~
A strange humanoid is here. How odd, its flesh seems to be falling off!
~
This strange humanoid is moving rather slowly, and appears to be a corpse, a
walking corpse! It must be a zombie or something of the sort.
~
bdnopr 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
BareHandAttack: 7
E
#12
moose eddie~
Moose, the Jack Russel Terrier~
Moose is lounging about enjoying his fame.
~
Moose is the name of the cute little Jack Russell Terrier who became famous
when he landed the role of Eddie in the TV show Frasier. Moose is also a
leading star in the movie My Dog Skip and is known for his performances
throughout the U. S. Currently Moose lives in Los Angeles with two of his
sons, Enzo and Moosie.
~
bd 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 1
E
#13
kind soul~
a kind soul~
A very kind and caring soul is here looking out for those who need it.
~
She immediately reminds you of your mother. Constantly worrying about
everyone and everything. She is always around to help out those who have hit
hard times and need a little boost.
~
bdnopqr 0 0 E
30 10 -8 6d6+300 5d5+5
300 90000
8 8 2
E
T 94
#14
tutorial questmaster~
the tutorial questmaster~
A questmaster is waiting for a brave adventurer to step forth.
~
Many adventurers come here to seek glory by attempting to solve the quests
given to them by this old woman. The quests are not easy, sometimes nearly
impossible. But they will always be a challenge. The questmaster looks at you
and says, 'are you up for a challenge? '
~
bdnopqr 0 0 E
30 10 -8 6d6+300 5d5+5
300 90000
8 8 2
E
T 3
T 1
#15
quest mobile~
a quest mob~
A quest mob wanders around aimlessly waiting to be slaughtered.
~
This mobiles sole purpose is to be hunted down and killed.
~
bd 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
E
T 144
#16
ogre questogre~
a quest ogre~
A huge quest ogre has a pair of wings attached to its back as if he could fly.
~
Though large and intimidating this ogre does not seem to realize that he
would strike fear into the hearts of most mortals. Instead everything seems to
scare it to death. It is as if he has seen the future and he knows he is going
to die. A crude pair of small wings are attached to its back and it seems to be
trying to fly away.
~
bdnopqr 0 0 E
1 20 10 0d0+10 0d0+0
10 100
8 8 1
E
T 2
#17
Socrates~
Socrates~
Socrates patiently waits to help new builders.
~
Socrates (469-399BC), Greek philosopher, who profoundly affected Western
philosophy through his influence on Plato. Born in Athens, the son of
Sophroniscus, a sculptor, and Phaenarete, a midwife, he received the regular
elementary education in literature.
~
bdnopqr dfk 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 196
T 194
T 183
#18
Friedrich Nietzsche~
Friedrich Nietzsche~
Friedrich Nietzsche searches for those wishing to become Overmen.
~
Nietzsche, Friedrich Wilhelm (1844-1900), German philosopher, poet, and
classical philologist, who was one of the most provocative and influential
thinkers of the 19th century. One of Nietzsche's fundamental contentions was
that traditional values had lost their power in the lives of individuals.
Nietzsche maintained that all human behavior is motivated by the will to power.
~
bdnopqr dfk 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 199
#19
aerial servant shape~
the aerial servant~
An amorphous shape is floating in the air.
~
As you stare at this amorphous shape, it begins to appear to take the shape
of a cloud-like humanoid.
~
bdnopr 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
E
#20
elemental~
the elemental~
An elemental is standing patiently here.
~
This creature is the essence of the elements, and appears to be waiting
patiently for something to occur.
~
bdnopr 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
E
#21
Plato~
Plato~
Plato offers advice to any who are in need.
~
Plato (circa 428-347 BC), Greek philosopher, one of the most creative and
influential thinkers in Western philosophy.
~
bdnopqr dfk 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 198
T 184
#22
aristotle~
Aristotle~
Aristotle wanders the hallways constantly in search of more knowledge.
~
Aristotle (384-322 BC), Greek philosopher and scientist, who shares with
Plato and Socrates the distinction of being the most famous of ancient
philosophers.
~
bdnopqr dfk 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 197
T 185
#23
confucius~
Confucius~
Confucius is busy following the way.
~
Confucianism, major system of thought in China, developed from the teachings
of Confucius and his disciples, and concerned with the principles of good
conduct, practical wisdom, and proper social relationships. Confucianism has
influenced the Chinese attitude toward life, set the patterns of living and
standards of social value, and provided the background for Chinese political
theories and institutions.
~
bdnopqr dfk 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 186
#24
gateguard guard~
the gateguard~
The gateguard watches the gate carefully swinging the key around on its chain.
~
He stands his watch carefully eyeing anyone who approaches. Disdain for the
local government and the miserable wages has corrupted most of the gateguards.
A simple bribe of about 10 gold is all it takes to get past them.
~
bdnopqr 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 4
T 5
T 7
T 8
#25
variable questmaster master~
the variable questmaster~
The variable questmaster is waiting to set you.
~
This questmaster will save a variable to your player file to remember wether
or not you have done his quest. This way you can only do this quest once.
~
bdnopqr 0 0 E
0 20 10 1d1+0 1d1+0
0 0
8 8 1
E
T 192
T 191
T 190
#26
protector magic eight ball~
the protector of the magic eight ball~
The protector of the magic eight balls ensures everyone gets an eight ball before they leave.
~
This strange humanoid lacks any distinguishing features. It is dressed in a
white robe cinched about the waist with a white rope. It seems to have a
strange power about it.
~
bdnopqr 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 0
E
T 188
#27
man james bond stockdale admiral~
James Stockdale~
A man beaten to the brink of his life stares up at you with powerful eyes.
~
James Stockdale was shotdown by anti-aircraft fire during Vietnam. He was
held as a POW for seven years. He spent over half of this time in solitary
confinement in leg irons. Even being incapacitated he was still able to lead
the POW underground resistance successfully. For this he was routinely tortured
and beaten resulting in permament disablement from a repeatedly broken leg,
broken back, and shoulders being wrenched from their sockets. When his captors
attempted to use him as televised propaganda he slit his scalp with a razor.
When they covered the cut with a hat he beat himself with a stool until his face
was swollen beyond recognition. As a final attempt he slit his wrists rather
than allow himself to be used or let down his fellow POW's. His captors found
him unconscious and near death. The torture stopped after that and they no
longer attempted to use him. He received the Medal of Honor for his actions.
~
bd 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 187
#28
carl von clausewitz~
Carl Von Clausewitz~
Carl Von Clausewitz is hunkered down in a corner of the cell plotting an escape plan.
~
Carl von Clausewitz was born in Burg bei Magdeburg, Prussia in 1780.
Clausewitz's father was an officer in the Prussian Army Carl entered the
Prussian military service at the age of twelve years, eventually attaining the
rank of Major General. He is most famous for his military treatise Vom Kriege,
translated into English as On War.
~
bd 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 182
#29
epictetus crippled man~
Epictetus~
A crippled man seems content with his life and abysmal surroundings.
~
Epictetus spent his youth as a slave in Rome to Epaphroditos, a very wealthy
freedman of Nero. Even as a slave, Epictetus used his time productively,
studying Stoic Philosophy under Musonius Rufus. He was eventually freed and
lived a relatively hard life in ill health in Rome, during which time he became
a cripple due to a bad knee. He was exiled along with other philosophers by the
emperor Domitian sometime between 89 and 95.
~
bd 0 0 E
34 9 -10 6d6+340 5d5+5
340 115600
8 8 1
E
T 181
#30
spy underground resistance~
the spy for the underground~
A spy from the underground resistance is discreetly looking for some new recruits.
~
The underground resistance has been blamed for most of the crime in the city
and it has been rumoured that many new recruits often end up missing. The few
that do manage to come back are often damaged both physically and mentally.
~
d 0 0 E
6 18 6 1d1+60 1d2+1
60 3600
8 8 2
E
T 174
#31
prison commissar~
the Commissar~
The prison commissar walks with his back straight and his nose held high.
~
The Commissar is the highest ranking official in the prison and is
responsible for all interrogation and the propaganda it produces.
~
bd 0 0 E
10 17 4 2d2+100 1d2+1
100 10000
8 8 1
E
T 173
#32
hired muscle~
the hired muscle~
Some hired muscle is willing to do just about anything for the right price.
~
This grisly mercenary is covered in scars from numerous fights. His eyes
show an intense hatred and a blankness of intelligence that seems to convey the
truth about brawn without brains.
~
d 0 0 E
10 17 4 2d2+100 1d2+1
100 10000
8 8 1
E
#33
Homer Simpson~
Homer Simpson~
Homer Simpson is wandering around aimlessly in a dream like state.
~
The infamous cartoon character has come to life and roams this World spouting
words of wisdom to fellow travellers. He is decked out in his usual blue pants
and food stained white t-shirt.
~
d 0 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 1
E
T 178
#34
chuck norris~
Chuck Norris~
The one, the only, Chuck Norris dominates the World around him.
~
Chuck is a martial arts star, winning numerous martial arts championships
including being a six-time undefeated World Professional MiddleWeight Karate
Champion with a record of 65-5. He is also a renowned teacher in the martial
arts and if you are lucky he may pass on some of his wisdom to you.
~
bdnopqr dkp 0 E
30 10 -8 6d6+300 5d5+5
300 90000
8 8 1
E
T 175
#97
waitress jenny jennifer woman girl maiden~
Jenny the waitress~
The waitress is waiting with a pot of coffee.
~
Although she seems to be a mere maiden, Jennifer is a veteran of the greasy
spoon, and enjoys serving the builders who come here in their overalls after a
hard day laying bricks and writing triggers.
~
bdno 0 10 E
10 10 4 10d10+100 10d10+10
100 10000
8 8 2
E
#98
travelling saleswoman woman~
the travelling saleswoman~
This saleswoman is laden with gagdets and gizmos that are outrageously priced.
~
A combination of good business sense, charming personality, and good looks
has made her a success at pushing useless products on uneducated buyers. Only
on a rare occasion does she sell anything useful.
~
bd 0 0 E
33 9 -9 6d6+330 5d5+5
330 108900
8 8 2
E
T 98
#99
death grim reaper Hookah~
Death~
Death the Grim Reaper is smoking a Hookah.
~
The dark-robed skeletal figure radiates an unendurable coldness. It is
however, his day off, and he is using a water pipe that he picked up in
Istanbul. It smells like he is smoking strawberries.
~
bdelnopqr dfkp 0 E
1 20 9 0d0+10 1d2+0
10 100
8 8 0
E
$

1426
lib/world/mob/1.mob Normal file

File diff suppressed because it is too large Load diff

256
lib/world/mob/100.mob Normal file
View file

@ -0,0 +1,256 @@
#10000
hermit~
the hermit~
A hermit is standing here, oblivious to you and the rest of the world.
~
This recluse has been living outside of the city for too long. He is
disheveled and in depserate need of a bath and clean clothes. He must be strong
and determined to survive out here on his own.
~
cdgl f 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 13
E
#10001
bobcat~
the bobcat~
A bobcat is crouching here, protectively guarding her young.
~
Normally this animal would flee at the first sign of humans, but she has her
young close by and will not leave them. You have heard about how ferocious
animals can become when protecting their young. Now you are about to experience
it first hand.
~
bdgm 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 2
BareHandAttack: 8
E
#10002
chipmunk~
the chipmunk~
A cute little chipmunk scurries around gathering nuts.
~
It's cheeks are puffed out to the max and look like they are ready to
explode. It must be gathering food to stash away for emergencies. It's a small
brown furry critter with black and white strips running from the top of it's
head all the way down to it's tail.
~
dgh 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 4
E
#10003
fox~
the fox~
A red fox sneaks slowly away from you, trying to go unnoticed.
~
It looks more of a brown than red. The fox is extremely alert with it's ears
coming to fine points listening for any sound of danger. It's big bushy tail is
a sure sign of it's good health. It saw you coming a mile away and does not
seem very scared.
~
cdg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 4
E
#10004
coyote~
the coyote~
A skinny grey coyote fades into the trees as you approach.
~
Although the coyote looks a little too skinny it is definitely still in very
good shape. This scavenger has learned to live off the land and has become a
common nuisance to the farmers in the area. Entire packs have been known to
take down a stray cow
~
cdeg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 4
E
#10005
doe~
the doe~
A graceful doe flicks it's white tail at you.
~
The doe stares at you carefully. You see a flash of white from the underside
of it's tail as it warns other deer of your presence. It looks very frightened
of you and could run at any second.
~
dgh 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 2
BareHandAttack: 4
E
#10006
buck~
the buck~
A large buck with a full rack of antlers stares back at you.
~
There must be at least 12 points on the impressive antlers this buck is
wielding. You wonder what it would feel like to be butted with those things.
Maybe you're about to find out.
~
dg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 10
E
#10007
merchant~
the merchant~
A merchant is here travelling between the capital and Dun Maura.
~
This merchant looks like he has been travelling for some time between cities.
He is definitely gifted at the art of selling useless junk that no one really
needs. He looks experienced and you wonder how many times he's had to defend
himself being out in the wilderness like this.
~
bdgl 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
E
#10008
peddler~
the peddler~
A peddler is bringing his wares to the city to sell.
~
This peddler has a bunch of useless junk that he hopes to be able to sell at
a profit to the suckers in the city. He looks very untrustworthy. You hold
your purse a little tighter as you walk by.
~
bdgl 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
E
#10009
possum~
the possum~
A possum is hanging from a tree by it's tail.
~
This odd creature has eyes that look to be made for seeing in the dark.
It's about 2 feet long including a hairless tail. It looks stupid and slow.
~
dg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 4
E
#10010
alligator~
the alligator~
An alligator crawls slowly towards you.
~
This large scaly creature has a set of jaws on it that make you take a few
steps back. It looks extremely tough and you doubt many weapons could penetrate
that thick hide.
~
bdfg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
BareHandAttack: 4
E
#10011
raccoon~
the raccoon~
A raccoon is sitting in a tree just above you.
~
This miniature bandit looks very interested in what you're doing. He watches
you without any sign of fear. It uses it's human like hands to climb around in
the trees. It is grey and black with the unforgettable mask around it's eyes.
~
cdg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 8
E
#10012
skunk~
the skunk~
A skunk waddles slowly past.
~
You freeze in your footsteps as you see the familiar black feline with a
white stripe down it's back and on it's tail. This animal is scared of no one
since only an idiot would attack it and chance being skunked.
~
dg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 2
BareHandAttack: 8
E
#10013
bobcat baby~
the baby bobcat~
A little baby bobcat is playing here.
~
This cute little critter looks like a house pet. Except for those sharp
claws and teeth that it must just be learning how to use. It's tempting to go
ahead and pet the cute little fella.
~
bdg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 8
E
#10014
lynx~
the lynx~
A lynx hisses at you as you walk by.
~
This small and stocky feline has definitely adapted to these forests. It's
ears have small tufts of hair sticking out of the ends. It is about two or
three times the size of any cat you've ever seen. It walks with agility and
purpose.
~
dg 0 0 E
3 19 8 0d0+30 1d2+0
30 900
8 8 1
BareHandAttack: 8
E
#10015
hunter~
the hunter~
A hunter roams these woods in pursuit of a big buck.
~
Clad in hides from his latest kills this veteran of the wilderness stalks his
prey silently. Waiting for the opportunity to strike.
~
dg s 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10016
huntress~
the huntress~
The huntress tracks her prey with skill and determination.
~
Covered in hides and fur from her past killings she looks very experienced
and adept.
~
dg s 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 2
E
$

170
lib/world/mob/101.mob Normal file
View file

@ -0,0 +1,170 @@
#10100
farmer bob~
farmer Bob~
Farmer Bob wanders about looking for his lost cow.
~
He looks very old and tired. A lifetime's worth of hard work on the farm has
aged him beyond his years.
~
dg 0 400 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10101
lost cow~
a lost cow~
A cow roams about aimlessly, munching on any grass it can find.
~
The cow is large and brown, with a short fur coat. It is extremely docile
and friendly. Domesticated to life on a farm. Strange for it to be out roaming
around.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 2
E
#10102
reddish brown weasel~
the reddish brown weasel~
A reddish brown weasel slinks along the road.
~
The weasel is a rodent that can prey on animals larger than itself. It is
very intelligent and resourceful.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 0
E
#10103
cow calf~
the calf~
A newborn cow calf looks for its mother.
~
The calf can barely walk on it's own four feet. It stumbles awkwardly
towards you looking for it's mother.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 0
E
#10104
heifer ~
the heifer~
A heifer looks up at you.
~
The heifer is a young cow that has not yet calfed.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 2
E
#10105
fisherman~
the fisherman~
A fisherman walks between the cities to sell his latest catch.
~
He walks past with a long purposeful stride. On his way to making some
money.
~
dg 0 300 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10106
bandit pillaging~
a pillaging bandit~
A bandit pillages everything in sight.
~
The bandit has a big grin on his face and greets you with a wave. He must
have just made a killing.
~
dg 0 -500 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10107
merchant robbed~
a robbed merchant~
A merchant is here crying at his recent losses.
~
A shame to see a grown man cry, but he has lost alot. He relates to you how
his caravan was looted by bandits. All his accumulated wealth taken away in an
instant.
~
dg 0 400 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10108
clairvoyant gypsy~
a clairvoyant gypsy~
A gypsy brags of her clairvoyant ability and stares at you shocked by your future.
~
She grasps your palm and stares in horror up into your eyes. She says, 'for
a minimal fee I can tell you of yer future. '
~
dg 0 100 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 0
E
#10109
trader greedy~
a greedy trader~
A greedy trader has been mugged recently and has nothing of value.
~
He is upset at his loss, but knows how to get it all back.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
#10110
groundhog~
the groundhog~
A small brown furry groundhog runs towards it's hole as you approach.
~
It is a grizzled thickset marmot. Built low to the ground and about the size
of a small dog.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 0
E
#10111
wanderer~
the wanderer~
The wanderer is out on one her missions.
~
She is clad in only a burlap sack and roams the realm looking for something
or someone only known to her.
~
dg 0 800 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 2
E
#10112
Bubba~
Bubba~
Bubba staggers by, a little tipsy from his moonshine.
~
He reeks of homemade moonshine. Most likely made from corn. He is the
typical hillbilly, and fits his name to a tee.
~
dg 0 0 E
7 18 5 1d1+70 1d2+1
70 4900
8 8 1
E
$

Some files were not shown because too many files have changed in this diff Show more