CircleMUD is one of the best of the DIKU MUD derivatives out there. It has the popular features of DIKU, as well as many new features. It's organization and structure have been greatly improved over the years, and it has been made into an extremely easy MUD to enhance. Jeremy Elson, the creator of CircleMUD, has organized the code, and provided many useful features in the code. Unlike code bases like SMAUG, which are very featureful right out of the box, CircleMUD relies on its implementor to add in new features. Unfortunately, with lazy implementors and first time administrators, many stock CircleMUD's have been put up with little to no originality, leading to the stigma that all CircleMUD's are stock.
One of the purposes of this page is to collect all the information on coding and implementing new code on CircleMUD's to help both intermediate and advanced coders. I do not have information for first time coders for one reason. I personally believe that first time coders should refrain from trying to make a MUD themselves, and help out on existing MUD's until they feel that they have attained a high enough proficiency that they can add in almost any new feature (not just code snippets, but original code) with little to no help. Also, I do not believe that a MUD is the best way to learn to program in C. This was how I did it, and it casued me no end of grief until I sat down and taught myself C. I do not recommend teaching yourself C either, I just happen to be experienced in many programming languages similar to C, so it was not too hard for me.
Many pages on the internet have information and resources for CircleMUD programmers. One of the best is George's site. He has many bug fixes, enhancements, and other features for CircleMUD on his page. Many of us in the CircleMUD world think of him as 'Jeremy's little helper' because of all the things he does to help out Jeremy Elson with CircleMUD. In fact, George is usally the one who moves things from the incoming folder on the CircleMUD FTP site. His page also has a pretty good list of other sites with CircleMUD information. And of course, no CircleMUD resource page would be complete without the a link to the CircleMUD home page.
If you are looking for code snippets for CircleMUD, there are several pages. Alex, the administrator of the CircleMUD mailing list, maintains a good page of snippets collected from the mailing list here. There is also a mirror to Alex's snippet site located here. Also, if you want to join the list, or read the FAQ, you can do so here. The popularity of CircleMUD is quite far reaching. We even have an infomation page by Leus that is in Spanish! Also, to help get a feel for both the CircleMUD information pages, and the MUD's that are created with CircleMUD, a webring was set up to link all sites dealing with CircleMUD. Many of these sites are the home pages for MUD's created from the CircleMUD code base. Information on the webring can be found at the bottom of the page (as this page is a member of the ring). Another well known programmer of CircleMUD is Sammy, the creator of obuild. He maintains a site here. Another programmer known on the list, Chris Powell, has a code snippet site here. Another coder, Akuma, has a page with some interesting snippets here. If you are trying to compile CircleMUD on Windows machine, you will need all the help you can get, and can find a lot of it here at Shirak's site.
Death's Gate MUD was a wonderfully designed CircleMUD that implemented in many advanced features. Two of these features were the Events and the Triggers. The event system allowed for an event to happen a certain time after it was called. A good example is a spell. The casting begins, and then a short time later, the spell is actually finished casting and released. This allowed for more realistically timed things to occur. The other feature was the scripting capabilities. The triggers were a sort of built in programming language that allowed for any kind of trigger. The triggers could be triggered by actions, commands, or various responses. For example, a mob may greet any player that enters the room. The triggers are very similar to the mob programs available on the CircleMUD FTP site, however, the Death's Gate Scripting system has more triggers, is much more expandable, and can be assigned to room, mobs or objects. All in all, it is a much more robust and featureful language as well. The MobProgs are simply a set of automated responses to a specific action, the DG Triggers can actually reply to various circumstances.
Shortly after the Death's Gate MUD closed up shop, the code was released to
the public. The source code can be found here. One of the unique features of
the code was that it had been partially converted to C++. In an effort to further
CircleMUD, both the Death's Gate Triggers, and Death's Gate Event System have
been converted to standard ANSI C. To help out, I have added two separate pages
for information of these systems. The DG
Triggers page has information on the triggers, new triggers, online documentation,
sample triggers, and various other resources, including a link to the home page
of the person who converted the DG Triggers, Mark Heilpern. The DG Events page has information about
the events system, an online documentation, as well as a few sample events to
get the ball rolling. Eric Green, the main implementor of the Death's Gate MUD
has a page with some information on other projects he is working with here.
|
Gator.net MUD Hosting Services |
|