Circle Mud FAQ File

From: VampLestat (vamp@csulb.edu)
Date: 09/09/94


On Fri, 9 Sep 1994, Mr. Wizard wrote:

> Great!  Excuse my ignorance, but what is 'the ftp site'?  ftp 
> marble.bu.edu?  I'm new to this list, so I am not sure where it would be.

This FAQ probably needs a good bit of updating, but it would probably be 
useful for the new subscribers anyway.  Additions/corrections/updates 
more than welcome.



Archive-name: circle-faq
Last updated: 8 June 1994

Frequently Asked Questions for Circle DIKU Mud
============================================================================

This is the first version of the Circle FAQ for the Circle Mud Mailing list
at circle@marble.bu.edu.  Its rather new, so any contributions and corrections
are more than welcome.  This file is intended to cover common questions
related to the CircleMUD distributon source by Jeremy Elson
<jelson@cs.jhu.edu>, and not general DIKUmud questions.

This FAQ is maintained by Ryan Watkins aka VampLestat <vamp@csulb.edu>.
Please direct corrections to this address.

============================================================================
Contents
============================================================================

Section: 1 Introduction

Subject: 1.1  What is Circle Mud?
Subject: 1.2  What is History of Circle Mud?
Subject: 1.3  Where is the original Circle Mud so I can check it out?

Section: 2 Resources

Subject: 2.1  Where do I find the source code for CircleMUD?
Subject: 2.2  Where do I find areas, etc for CircleMUD?
Subject: 2.3  How do I subscribe/unsubscribe to the Mailing list?
Subject: 2.4  What platforms has CircleMUD been ported to?
Subject: 2.5  Why do I have problems running circle on linux?

Section: 3 Code Changes

Subject: 3.1  How do I fix the bug where people can junk more coins than
              available.?
Subject: 3.2  How do I fix the 'vstat' bug?
Subject: 3.3  How do I fix the 'xnames' bug to lock out character names?
============================================================================
Section 1: Introduction
============================================================================

Subject: 1.1 What is CircleMUD?

CircleMUD is a DIKUmud derivitave, developed by Jeremy Elson
<jelson@cs.jhu.edu>, and is from the Gamma v0.0 of DIKU mud created by Hans
Henrik, Staerfeldt, Katja Nyboe, Tom Madsen, Michael Seifert and Sebastian
Hammer at DIKU (Computer Science Instutute at Copenhagen University)  

Also, note that CircleMUD is a DIKU derivative and its users must follow the
DIKU license agreement  - most notable that it cannot be used to make
money in any way, the original developers names have to be in the login
screen that the 'credits' command always present the same information, etc..

>From the release.doc :

 "CircleMUD is highly developed from the programming side, but highly
  UNdeveloped on the game-playing side.  So, if you're looking for a huge MUD
  with billions of spells, skills, classes, races, and areas, Circle will
  probably disappoint you severely.  Circle still has only the 4 original
  Diku classes, the original spells, the original skills, and about a dozen
  areas.

  On the other hand, if you're looking for a highly stable, well-developed,
  well-organized "blank slate" MUD on which you can put your OWN ideas for
  spells, skills, classes, and areas, then Circle might be just what you're
  looking for.

  The latest version of Circle is 2.20, released on November 17, 1993.
  Version 2.20 supercedes version 2.11, which was released on September 19,
  1993."


Subject: 1.2  What is History of Circle Mud?

Version 2.20:  November 17, 1993
Version 2.11:  September 19, 1993
Version 2.10:  September 1, 1993
Version 2.02:  Early August
Version 2.01:  July 20, 1993
Version 2.00:  July 16, 1993

Version 3.00 is due out "Real Soon Now".  Dont bother posting requests for
it.  It will be out when Jeremy gets it done, and it will be annonced on
the mailing list and the newsgroup rec.games.mud.diku.


Subject: 1.3  Where is the original Circle Mud so I can check it out?

CircleMUD is a public code base, freely distributable, but the author of
Circle don't actually run one personally.  There used to be CircleMUD, and
while Jeremy Elson continues to develop it, there is no original CircleMUD
on the net.  If you want to play Circle, download the source and start your
own.  :)


============================================================================
Section 2: Resources
============================================================================

Subject: 2.1  Where do I find the source code for CircleMUD?

Circle's complete source code and areas are available now for anonymous FTP
at ftp.cs.jhu.edu (128.220.13.50) in the directory pub/CircleMUD.


Subject: 2.2  Where do I find areas, etc for CircleMUD?

A number of Circle-mud based Implementors have submitted areas to the
public and they are archived at the same site as the CircleMUD
source, ftp.cs.jhu.edu (128.220.13.50) but in the directory
/pub/CircleMUD/submissions.  If you have access to a WWW client such as
Mosaic, you can access the DIKU Home Page at
http://gothic.acs.csulb.edu:8080/~vamp/Diku/.


Subject: 2.3  How do I subscribe/unsubscribe to the Mailing list?

To subscribe to the mailing list send a message to
circle-request@marble.bu.edu with the word 'subscribe' as the subject line,
and a brief message asking to be added to the list.  To unsubscribe from
the list send a message to circle-request@marble.bu.edu with the word
'unsubscribe' as th subject line.  DO NOT send subscription/unsubscription
requests to the list in general.  There are currently almost a hundered
people on the list, and it will only irritate a ton of people who have no
power to remove you from the list.


Subject: 2.4  What platforms has CircleMUD been ported to?

Jeremy Elson has personally compiled CircleMUD under: Ultrix 4.0, IRIX
4.0.1, 4.0.4, 4.0.5, SunOS 4.1.1, 4.1.3, AIX 3.2, Linux 0.99.11, ConvexOS
V10.2.  It is also known to compile with minor modifications under:
NeXTStep 2.1 and 3.0

If you have a BSD-compatible system, chances of getting Circle to compile
easily are pretty good.  Non-BSD systems will probably have trouble with
certain functions; getting Circle to compile for the first time on such
systems may be difficult and time-consuming.  SVR4 compatibility is on the
horizon; many functions have already been converted to be SVR4 compatible,
but the code has not yet been fully ported.

CircleMUD was ported to the Amiga by Jean-Jack Riethoven
<J.J.M.Riethoven@ab.agro.nl> and is available at ftp.cs.jhu.edu in
/pub/CircleMUD/amiga/.  Questions about the Amiga source should be directed
to Jean-Jack Riethoven <J.J.M.Riethoven@ab.agro.nl>, not Jeremy Elson.


Subject: 2.5  Why do I have problems running circle on linux?

> I've just recently set up a linux system and compiled circle mud 2.20 on 
> it. Unfortunately (ie. I have no clue what I'm doing..) Circle keeps 
> refusing to put the mud online.
> This is where it errors out:
> 
>   Mon Aug 8 16:56:48  :: Opening mother connection.
>   gethostbyname: Connection refused

This error is because you have to install the Linux networking package
(package N if you're using Slackware).  Consult the comp.os.linux.* FAQs
for more details on how to set up Linux networking.  (jelson@cs.jhu.edu)


============================================================================
Section: 3 Code Changes
============================================================================

Subject: 3.1 How do I fix the bug where people can junk more coins than
             available.?

Apprently in Circle 2.2, you can drop any amount of coins, and then be
rewarded with more coins than you had in the first place.  Here is the fix
from jelson@cs.jhu.edu

Around line 480 of act.obj1.c, you will find the code:

         if (!str_cmp("coins", arg) || !str_cmp("coin", arg))
            perform_drop_gold(ch, amount, mode, RDR);
         else {
            /* code to drop multiple items.  anyone want to write it? -je */
            send_to_char("Sorry, you can't do that (yet)...\n\r", ch);
   -->      return;
         }
      } else {
   ....

It should be changed to:

         if (!str_cmp("coins", arg) || !str_cmp("coin", arg))
            perform_drop_gold(ch, amount, mode, RDR);
         else {
            /* code to drop multiple items.  anyone want to write it? -je */
            send_to_char("Sorry, you can't do that (yet)...\n\r", ch);
         }
   -->   return;
      } else {
   ....


Subject: 3.2  How do I fix the 'vstat' bug?

To the fix for the vstat bug, from jelson@cs.jhu.edu:

In the file act.wizard.c, in the function do_vstat, in the mobile section
of the switch (around line 1150), you'll find the code:

    mob = read_mobile(r_num, REAL);
    do_stat_character(ch, mob);
    extract_char(mob);

Add the line char_to_room(mob, 0) before extract_char(), like this:

    mob = read_mobile(r_num, REAL);
    do_stat_character(ch, mob);
    char_to_room(mob, 0);
    extract_char(mob);


Subject: 3.3  How do I fix the 'xnames' bug to lock out character names?

The following lines are what the end of the function at the end of ban.c
(it's called Read_Invalid_List or something like that) _should_ look like:

   CREATE(invalid_list, namestring, num_invalid);

   while (!feof(fp)) {
      fscanf(fp, "%s", invalid_list[i++]);
   }

   /* make sure there are no nulls in there */
>>>   for (i = 0; (i < num_invalid) && *invalid_list[i]; i++);
>>>      if (!(*invalid_list[i])) num_invalid = i;

   fclose(fp);

Not the two lines that were changed.

============================================================================


_O_ Ryan L. Watkins                   e-mail: vamp@csulb.edu
 |  Academic Computing Services       url   : http://www.acs.csulb.edu/~vamp/
 |  CSU Long Beach - Network Support  pgpkey: finger vamp@gothic.acs.csulb.edu







This archive was generated by hypermail 2b30 : 12/07/00 PST