Still Going…

February 15th, 2009

I know I’m long overdue for an update here… sorry! The project definitely isn’t dead, just a little slow at the moment. I’ve had very little spare time over the past year, and getting through the implementation for the new data model has been one of those boring things which has to get done before I feel like I can move forward adding any new features.

On that note, the example data loader is being refreshed with my work in progress on what will eventually become the data.py module. I’ve worked out most of the hiccups with recursive inheritance in data elements (check out the ancestors() and inherited() functions), but I still need to incorporate a short-circuited inheritance descender into the get() function. After that, the save routines need to be assembled, the code needs to be re-flowed and heavily commented, and then I should be ready to incorporate it into a new release without introducing any known regressions in functionality.

Stay tuned!

Improved License

December 4th, 2007

The previous BSD-like mudpy license has been replaced with the one used by the OpenBSD project. It’s modeled after the Internet Software Consortium’s, a two-clause BSD license removing language made unnecessary by the Berne convention. This new license is functionally identical to the old one, just more terse and openly recognized.

While I was at it, I made sure to correct the copyright dates on some of the files in the current release and add a copyright statement to any files previously lacking one.

New ASCII/ANSI Art

November 15th, 2007

I just wanted to drop a quick note in here, letting you know I’ve put together some improved ANSI-color ASCII art for the sample login and main menu in the current source. Check it out if you get a chance!

Maintenance Release

October 7th, 2007

I just fixed a handful of typographical errors in data and embedded text strings… nothing major. I’m still working separately through some of the more significant, architectural updates to the engine and data model, but I won’t be releasing that branch of the code until I have something which actually runs.

Work on Expansion Macros

September 19th, 2007

Today I added a new $(inc:<filename>) expansion macro, which allows injection of file contents into text output. It is a little dangerous at the moment, and could probably stand to be locked to read-only data (but the same goes for the existing eval-based facets as well, so I’ve added this to the to do list).

While I was testing, I exposed and fixed an infinite recursion bug in the macro expansion routine, not to mention noticing a major speed-up by moving a bunch of static assignments out of the search loop (oops!).

Text Wrapping Fixes

August 12th, 2007

The text wrapping routines saw some needed fixes today. The first was for a bug wherein Telnet IAC sequences were counted toward line length (most noticeable following the password prompt at login, when the next block of output gets an echo on sequence prepended). The second corrected an implementation oversight where the CR in a Telnet CR+LF line terminator was counted toward the line length, leading to wrapping one character early if a preterminated line happened to be just as long as the configured wrap width.

Disconnect Idle Users

July 23rd, 2007

I know this should have been implemented sooner, but a check_idle method has been added to the User class to warn and eventually disconnect long-idle sessions. The default wait can be set in the config, and even overridden on a per state basis (active, entering_account_name, et cetera). Without this, the engine essentially exhibits a very slow file descriptor leak, eventually leading to a fatal exception.

To Do List

June 10th, 2007

In the interest of development process transparency (and also as a list of patch requests for anyone interested in pitching in), the mudpy to do list has been added to this site. In it you’ll find a (hopefully) up-to-date, if rather disorganized, list of things that need to be tackled in both the source code and sample data.

Config Writeup

May 13th, 2007

A section for configuration documentation has been added to the site, detailing the common settings to be tweaked under the new data model (note, this will not be usable with the code in the current snapshot, but is helping me to flesh out the changes required). More to come…

Demo Data Loader

April 24th, 2007

After hand-converting the format of the basic configuration/data files from the last mudpy snapshot, a first pass at a rudimentary data loader can be seen here. It doesn’t contain any real error checking or data validation routines yet, and the save routine to go with it still needs to be written, but this is at least a start at some progress…