The Dawn of Time – Mud Codebase

Dawn 1.69m released [change log] [src tarball] [patchfile] [win32 binary]

Dawn 1.69m has had some major changes and revamps in terms of the code which loads and saves areas – as can be seen in the size of the patch file (160KB compressed, as compared to 60KB compressed for 1.69l’s patch).  A number of functions for loading mobs, objects and rooms have been consolidated into single functions taking a version number as a parameter.  Resets now load and save a text version of wear locations.  Some significant work has been done to enable dawn to easily  import and convert area files of different formats other than stock rom (which was already supported).  Area files now save with #DAWNAREADATA at the top as compared to #AREADATA.

The who list can now be sorted by level, and grouped with immortals or mortals at the top of the list (supported in gameedit).

Corpses now automatically save over hotreboots.

To aid in MXP client and server development, I wrote an integrated visual debugger – type visual within the game to see more options on it.

A significant amount of MXP has been rewritten… The rewrite has gone beyond pure MXP, and more into how Dawn manages new connections.  Dawn now performs mud client identification before displaying the greeting page to users… this enables the MXP login feature to be completely supported.   The actual detection process is invisible to the user and can currently detect client side support for MSP, MCCP1, MCCP2 and MXP.  If the client supports MXP (including the version tag), the particular version of a mud client can be determined (and can be seen using the immortal charinfo command).

If Dawn detects a buggy/old mxp implementation *cough*zmud*cough*6.16*cough* ;)… it advises them that there are issues with their client (while at the same time working around some of them).  It also recommends they upgrade to the latest version of their client or another client such as the excellent MuClient (which is what I now personally use as my mud client for gaming and development).

There are a number of other changes and improvements, most of which are documented in the change log for this version.  I would recommend looking at all the flag and value options in gameedit by typing showflags and showvalues.