From The Fairy Garden MUSH
Jump to navigation Jump to search

Version 1.8.4 patchlevel 5 - Jun 19, 2011

Major Changes:

  • The experimental --enable-ssl_slave option for configure allows persistant SSL connections that won't get booted when the mush restarts. Requires libevent v2.X.
  • info_slave, the sub-process used for resolving hostnames, now uses libevent if available.
  • Rewrite of large portions of notify.c. The main public function there, notify_anything(), now takes different arguments. notify_format() and notify() are unchanged. Should be largely unnoticable for players.


  • @edit/quiet edits attributes, but doesn't spam you with the modified values, just gives you a count of modified attributes.
  • You can now have more than one command (with the action list enclosed in {curly braces}) in the rhs arg of @force/noeval.
  • @ps/debug <pid> will display extra information about a queue entry's evaluation environment.
  • @pemit now acts as if /silent was given when the executor and target are the same object, for consistency with other sound-producing commands and to fix an issue with @pemit/spoof.
  • @command now shows the failure message that can be set with restrict_command or @command/restrict.
  • @message now takes a /remit or /oemit switch, to make it work like those commands instead of @pemit. Also takes a /nospoof switch to make it like the @ns*emit versions.
  • @pemit/list/noisy now shows a confirmation message.


  • can_dark power lets non-wizard players set themselves dark.

Minor Changes:

  • ansi_string has been rewritten to be much faster for non-marked up strings, to take up considerably less memory, and has received general all-around improvements in speed. Rewrite is in preparation for 256 color and 24 bit color ansi.
  • ansi_string no longer optimizes markup. In some pathological cases, buffer_len will be hit much earlier than it used to be. Use ansi() with wisdom!
    • Alara - (The above two have been revoked in 1.8.4p6 due to Win32 errors.)
  • @edit no longer shows the full value of attributes which aren't edited, it just shows that they are unchanged.
  • @mail now shows the dbref of the sender for mail from non-players.
  • Fix a potential buffer overflow in prefix table code.
  • "enter <exit>" now works the same as "goto".
  • Tweaks to the system queue introduced in the last patchlevel.
  • @pemit now uses the same nospoof header as other commands.
  • When creating a minimal db, the MUSH now respects the read_remote_desc option, and may set @descs "nearby".
  • Exits now show accented names (via @nameaccent) in "look".
  • @enter/@oenter/@aenter, @leave/@oleave/@aleave and @move/@omove/@oxmove/@amove get passed the moving object's original and/or new location as appropriate.


  • Crashbug when players are in and homed to a room that is owned by a player being @nuked fixed.
  • qregs, %0-%9 and $0-$9 would occasionally smash each other.
  • No_Pay was implicit if executor is #1, but was _not_ implicit if Owner(executor) was #1. Caused some obscure queue cost bugs.
  • %$-subs didn't work inside @switch's default case.
  • %0-9 were being overridden when using /inline/localize.
  • You couldn't @chat on open channels.
  • Win32 compile fixes.
  • The Open_Anywhere power didn't fully work as intended.
  • regrab*() functions removed ansi.
  • munge() didn't play nice with ansi.
  • @shutdown/reboot would hang unencrypted sockets for players with both SSL and normal connections.
  • @chatformat sometimes received the player's name without accents by mistake.
  • Bug in @wipe fixed.
  • Objects couldn't be @tel'd to exits which weren't in their current location.
  • Fixed an obscure bug in "say" when sound is propagated.
  • Various help fixes.
  • Prevent persistant 'Attempt to write to error log before it was started!' error in netmush.log
  • Rooms could not locate objects by name.
  • Players using Pueblo who are not set ANSI will no longer see colors.
  • The <inside> arg to tel() didn't work.
  • 'make clean' in game/txt no longer deletes the configure-generated compose.sh file.
  • The new q-register code wasn't passing registers on to new commands queued by @wait, @verb and @mapsql.
  • Crash bug in unused code to reset hash tables fixed.


  • Restrictions for the beep() function can now be modified with @function.
  • Functions that take #lambda anonymous attributes also understand a new #apply/<function name> shorthand for calling a single function.
  • ldelete() now takes an osep.
  • allof()/strallof() can now have mutli-char output separators, and null oseps.
  • benchmark() warns when results are thrown off by hitting the FIL.
  • New render() function which returns a string rendered as html, without markup, etc. Useful for bots or storing data in SQL.