| 1 | This is the changes file for PennMUSH 1.7.7. Please look it over; each |
|---|
| 2 | version contains new things which might significantly affect the |
|---|
| 3 | function of your server. Changes are reported in reverse |
|---|
| 4 | chronological order (most recent first) |
|---|
| 5 | |
|---|
| 6 | [TN] is Thorvald Natvig, a PennMUSH developer (aka Trivian) |
|---|
| 7 | [TAP] is T. Alexander Popiel, a PennMUSH developer (aka Talek) |
|---|
| 8 | [SW] is Shawn Wagner, a PennMUSH developer (aka Raevnos) |
|---|
| 9 | [EEH] is Ervin Hearn III, a PennMUSH developer (aka Noltar) |
|---|
| 10 | [LdW] is Luuk de Waard, a former PennMUSH developer (aka Halatir) |
|---|
| 11 | [RLM] is Ralph Melton, a former PennMUSH developer |
|---|
| 12 | [NJG] is Nick Gammon, the Win32 porter |
|---|
| 13 | [DW] is Dan Williams, the MacOS porter |
|---|
| 14 | [2.2] refers to code which originated with the TinyMUSH 2.2 developers |
|---|
| 15 | [3] refers to code by (or inspired by) TinyMUSH 3.0 |
|---|
| 16 | [Rhost] refers to code by (or inspired by) RhostMUSH |
|---|
| 17 | |
|---|
| 18 | ========================================================================== |
|---|
| 19 | |
|---|
| 20 | Version 1.7.7 patchlevel 40 December 1, 2004 |
|---|
| 21 | |
|---|
| 22 | Major Changes: |
|---|
| 23 | * Another pass at the chunk allocator! Simpler but effective. |
|---|
| 24 | Folks should, however, greatly reduce their chunk_migrate |
|---|
| 25 | value in mush.cnf -- we suggest '50'. [TAP] |
|---|
| 26 | Commands: |
|---|
| 27 | * @command/alias can alias commands. Patch by Walker@M*U*S*H. |
|---|
| 28 | Functions: |
|---|
| 29 | * zwho() and zmwho(). [EEH] |
|---|
| 30 | Minor Changes: |
|---|
| 31 | * utils/penn-install is no longer part of the PennMUSH distribution |
|---|
| 32 | (it's part of the Debian maintainer's stuff). [EEH] |
|---|
| 33 | * Inheritable @locks are inherited off of ancestor objects. |
|---|
| 34 | Suggested by Zith@Lovarii. [SW] |
|---|
| 35 | Fixes: |
|---|
| 36 | * Infinite recursion in @lock/examine fixed. Report by |
|---|
| 37 | Amy Kou'ai (Amy@ShoujoAi) and Sparta Kerleon (Sparta@ShoujoAi). [TAP] |
|---|
| 38 | * @flag/letter now allows setting a flag's letter to one used by |
|---|
| 39 | another flag that works on different object types. Report by Lenon. |
|---|
| 40 | * Translation corrections by Cheetah@M*U*S*H and [EEH]. |
|---|
| 41 | * Added __USE_POSIX to the cflags for linux, and removed |
|---|
| 42 | checking for -lbind, to help SuSE 9. Report by Ambrosia@M*U*S*H. |
|---|
| 43 | * Fixes to panic db loading logic. [SW] |
|---|
| 44 | * escape() shouldn't double-escape the first character of the |
|---|
| 45 | string when it's a special character. Report by Walker@M*U*S*H. |
|---|
| 46 | |
|---|
| 47 | |
|---|
| 48 | Version 1.7.7 patchlevel 39 October 25, 2004 |
|---|
| 49 | |
|---|
| 50 | Major Changes: |
|---|
| 51 | * Game and chat database formats have been rewritten. They are |
|---|
| 52 | much more human-readable, can be extended with new fields |
|---|
| 53 | without using versioning flags, and provide better detection |
|---|
| 54 | and reporting of malformed databases. [SW] |
|---|
| 55 | * Chunk deref counts for locks are now stored in the database. [SW] |
|---|
| 56 | Commands: |
|---|
| 57 | * New 'buy' command for purchasing items from vendors that can offer |
|---|
| 58 | multiple items at multiple prices. Patch by Walker@M*U*S*H. |
|---|
| 59 | * restrict_command and @command/restrict can now include an |
|---|
| 60 | error message to be sent when the player can't use the command, |
|---|
| 61 | which supercedes more generic errors. Suggested by Philip Mak. |
|---|
| 62 | Patch by Walker@M*U*S*H. |
|---|
| 63 | Functions: |
|---|
| 64 | * lwho() can take an argument to produce the who list from that |
|---|
| 65 | player's viewpoint. Patch by Walker@M*U*S*H. |
|---|
| 66 | Fixes: |
|---|
| 67 | * nattr(obj/attrib) returns 1 when matching a non-wildcarded attrib. |
|---|
| 68 | Report by Impster@M*U*S*H. |
|---|
| 69 | * +chan <msg> is now converted to @chat <chan>=<msg> (with noeval) |
|---|
| 70 | so @chat hooks apply to +chatting too. Patch by Walker@M*U*S*H. |
|---|
| 71 | * You must be able to locate a player to perform elock() on them. |
|---|
| 72 | Report by Ambrosia. |
|---|
| 73 | * Help fixes by Sketch@M*U*S*H. |
|---|
| 74 | * Simplification of @version code. [SW] |
|---|
| 75 | * cemit() restrictions are now based on those of @cemit, instead |
|---|
| 76 | of @emit. Report by BlackPhyr. |
|---|
| 77 | * Setting queue_loss to 0 disables queue_loss. A bad idea, but |
|---|
| 78 | more consistent behavior. Suggested by K Moon. |
|---|
| 79 | * Examining objects always shows their actual number of coins, |
|---|
| 80 | whether or not they're admin or no_pay. |
|---|
| 81 | * Code cleanup in @edit and in char routines. [SW]. |
|---|
| 82 | * Wrong object checked when reporting money as unlimited. Report |
|---|
| 83 | by Nate Barney. [EEH] |
|---|
| 84 | * New hints/freebsd_5.sh. Suggested by James Lang. |
|---|
| 85 | * INFO command once again reports the server as "PennMUSH", |
|---|
| 86 | not just a version number. Report by Mark Hassman. |
|---|
| 87 | * Win32 linting. Builds with NT_TCP should work again (although |
|---|
| 88 | @shutdown/reboot under NT_TCP is still not functional). |
|---|
| 89 | Reorganization of the Win32 services macros. [EEH] |
|---|
| 90 | * Fix to bug with login attempts using literal encrypted strings. |
|---|
| 91 | Reported by Cadar and Mirrador. |
|---|
| 92 | * @ps/all shows the right label on top. Patch by qa'toq@bDv. |
|---|
| 93 | |
|---|
| 94 | |
|---|
| 95 | Version 1.7.7 patchlevel 38 August 25, 2004 |
|---|
| 96 | |
|---|
| 97 | Commands: |
|---|
| 98 | * @boot/silent disconnects without the standard message. |
|---|
| 99 | Suggested by Thor@bDv. |
|---|
| 100 | Fixes: |
|---|
| 101 | * Crash bug in is_objid fixed. Report by Wayne@PDX. |
|---|
| 102 | * God could cause a flag to lose its type status, and then become |
|---|
| 103 | inaccessible. Report by Wayne@PDX. |
|---|
| 104 | |
|---|
| 105 | |
|---|
| 106 | Version 1.7.7 patchlevel 37 August 23, 2004 |
|---|
| 107 | |
|---|
| 108 | Major changes: |
|---|
| 109 | * @adisconnect is triggered on every disconnection, partial or full. |
|---|
| 110 | This mirrors the behavior of @aconnect. Use %1 (the number of |
|---|
| 111 | remaining connections) to distinguish between partial and full |
|---|
| 112 | disconnects in @adisconnect code. |
|---|
| 113 | Minor changes (user-visible): |
|---|
| 114 | * When a player disconnects, their recv(), sent(), and cmds() |
|---|
| 115 | values are passed to triggered @adisconnects as %2, %3, and %4. |
|---|
| 116 | The number of remaining connections is passed as %1. |
|---|
| 117 | Suggested by Jessica Hawthorne and Wayne@PDX. |
|---|
| 118 | * No_Pay players now have their money reported as unlimited by |
|---|
| 119 | examine and score (but money() still returns a useful integer value). |
|---|
| 120 | ex/debug can be used to see the object's Pennies field. |
|---|
| 121 | Suggested by Wayne@PDX. |
|---|
| 122 | Fixes: |
|---|
| 123 | * ex obj/*1 and similar was matching like ex obj/*1*. Reported by |
|---|
| 124 | Math@HavenMUSH. |
|---|
| 125 | * inc() and dec() with out-of-range integers now return a more |
|---|
| 126 | useful error instead of odd behavior. Suggested by Jessica Hawthorne. |
|---|
| 127 | * Win32 bug with renamed temporary database files resolved. |
|---|
| 128 | Reported by AndromedaMU. |
|---|
| 129 | * Help fixes by Mike Griffiths. |
|---|
| 130 | * @mail commands with no message list were not using current folder. |
|---|
| 131 | Report by Jessica Hawthorne. |
|---|
| 132 | |
|---|
| 133 | Version 1.7.7 patchlevel 36 August 9, 2004 |
|---|
| 134 | |
|---|
| 135 | Functions: |
|---|
| 136 | * l/lv/n/nv/x/xvthings() functions by Walker@M*U*S*H. |
|---|
| 137 | * New flag to locate(), 'y', for matching player names like pmatch(), |
|---|
| 138 | without requiring a leading * before the name like the 'p' flag. [SW] |
|---|
| 139 | * lattr()/nattr() works for mortals on non-owned objects, showing |
|---|
| 140 | or counting only attribs they can examine. Suggested by Philip Mak, |
|---|
| 141 | patch by Walker@M*U*S*H. |
|---|
| 142 | Minor changes (user-visible): |
|---|
| 143 | * Mortals can no longer teleport HEAVY admin through exits. |
|---|
| 144 | Suggested by Ambrosia@M*U*S*H. |
|---|
| 145 | Minor changes (internals): |
|---|
| 146 | * win32 directory has subdirectories for msvc6 and msvc.net. [EEH] |
|---|
| 147 | * locate() on dark rooms now works for see_all players. Suggested |
|---|
| 148 | by Wayne@PDX. |
|---|
| 149 | Fixes: |
|---|
| 150 | * @mail subjects are stripped of ansi before being stored (escape |
|---|
| 151 | chars were always smashed on display). Suggested by Wayne@PDX. |
|---|
| 152 | * @command/delete by God of a non-existing command caused a crash. |
|---|
| 153 | Report by Wayne@PDX. |
|---|
| 154 | * Follow works again. Report by Shirow. |
|---|
| 155 | * Fix to digest()'s sha hash on systems without OpenSSL. [SW] |
|---|
| 156 | * @list/command no longer includes duplicates. Report by Relay@M*U*S*H. [EEH] |
|---|
| 157 | * comp() again returns -1/1 instead of -2/2. Report by Jessica Hawthorne. |
|---|
| 158 | * sort() of large floats works again. Report by Jessica Hawthorne. |
|---|
| 159 | * Linting of warnings in funlist.c. Report by Nymeria@M*U*S*H. |
|---|
| 160 | * It was possible for wizards to create circular zone chains that |
|---|
| 161 | would cause an infinite loop. Report by Wayne@PDX. |
|---|
| 162 | * safe_ansi_string was double-prepending starting ansi codes. |
|---|
| 163 | Report by Shirow. |
|---|
| 164 | * Debian packaging improvements. [EEH] |
|---|
| 165 | * Help fixes by Mike Griffiths. |
|---|
| 166 | |
|---|
| 167 | |
|---|
| 168 | Version 1.7.7 patchlevel 35 July 21, 2004 |
|---|
| 169 | |
|---|
| 170 | Attributes: |
|---|
| 171 | * NO_NAME and NO_SPACE attribute flags, when applied to @o-message |
|---|
| 172 | attributes, omit either the enactor's name or the space after it |
|---|
| 173 | when sending the message to others. Patch by Walker@M*U*S*H. [3] |
|---|
| 174 | Commands: |
|---|
| 175 | * @break <expression>=<new command> now runs <new command> |
|---|
| 176 | instead of simply stopping execution when <expression> is true. |
|---|
| 177 | New command @assert breaks and runs new command when <expression> |
|---|
| 178 | is false. Suggested by Philip Mak and Zebranky@M*U*S*H. Patch by |
|---|
| 179 | Walker@M*U*S*H. |
|---|
| 180 | * The new command 'huh_command' is responsible for handling unmatched |
|---|
| 181 | command input. By default, it produces the usual Huh? message, but |
|---|
| 182 | it can be overridden with @hook. Logging of huhs is now controlled |
|---|
| 183 | in restrict.cnf and the log_huhs mush.cnf directive is removed. |
|---|
| 184 | Suggested by T'orA and Walker@M*U*S*H. |
|---|
| 185 | * New @decompile/prefix switch generalizes @decompile/tf. |
|---|
| 186 | Prefixes are now applied even when decompiling multiple attributes, |
|---|
| 187 | and a bug in doing so is corrected. Patch by Walker@M*U*S*H. |
|---|
| 188 | * New @edit/first switch only replaces first occurrence of string. |
|---|
| 189 | Suggested by Kevin@M*U*S*H. |
|---|
| 190 | Functions: |
|---|
| 191 | * malias() function for examining mail aliases. Inspired by |
|---|
| 192 | Kevin@M*U*S*H. |
|---|
| 193 | * llocks()/locks() lists locks on an object. Patch by Walker@M*U*S*H. |
|---|
| 194 | * lset() function works like @lset. Patch by Walker@M*U*S*H. |
|---|
| 195 | * lockflags() and llockflags() show short and long flags set on a lock. |
|---|
| 196 | Patch by Walker@M*U*S*H. |
|---|
| 197 | * lattrp() is lattr() including parent attribs. Patch by Walker@M*U*S*H. |
|---|
| 198 | * nattr(obj/wildcardpattern) is now supported. Patch by Walker@M*U*S*H. |
|---|
| 199 | * nattrp() is nattr() including parent attribs. Patch by Walker@M*U*S*H. |
|---|
| 200 | * xattr(obj/wildcardpattern,start,count) extracts the corresponding |
|---|
| 201 | elements from lattr(). xattrp() is xattr() including parent attribs. |
|---|
| 202 | Patch by Walker@M*U*S*H. |
|---|
| 203 | Minor changes (user-visible): |
|---|
| 204 | * @lset and lock() recognize locks beginning with user:. Patch by |
|---|
| 205 | Walker@M*U*S*H. |
|---|
| 206 | * When a player causes an ambiguous channel match, the error message |
|---|
| 207 | mentions CHAN_USEFIRSTMATCH, which now has a help entry. |
|---|
| 208 | Suggested by Luke@M*U*S*H. |
|---|
| 209 | * New sort options: sorting by dbref name, idle time, connection seconds, |
|---|
| 210 | creation time, owner dbref, and attribute values. sort() and any |
|---|
| 211 | functions that use list2arr() are now ansi-aware. Patch by Walker@M*U*S*H. |
|---|
| 212 | * You can @name yourself to your @alias; this swaps name and alias. |
|---|
| 213 | Suggested by Oriens@Alexandria. Patch by Walker@M*U*S*H. |
|---|
| 214 | Minor changes (internals): |
|---|
| 215 | * Several global variables are now encapsulated in a single structure |
|---|
| 216 | to reduce potential namespace clashes. |
|---|
| 217 | * Reorganization of some filecopy.c code. [SW] |
|---|
| 218 | Fixes: |
|---|
| 219 | * @mail manipulation specifying folder 0 explicitly when the |
|---|
| 220 | current folder is non-zero didn't work right. Report by |
|---|
| 221 | Jess Hawthorne. |
|---|
| 222 | * Buffer overflow in string handling fixed. Report by Ashen-Shugar. |
|---|
| 223 | * @sitelock/name of an already locked name no longer creates extra |
|---|
| 224 | entries. Report by Nymeria@M*U*S*H. |
|---|
| 225 | * make depend no longer produces an unterminated Makefile.SH. |
|---|
| 226 | Reported by Bytor and Cheetah@M*U*S*H. |
|---|
| 227 | * Help fixes by [SW]. |
|---|
| 228 | * Fix to replace_string2 to prevent overflow situations. Report by |
|---|
| 229 | Atuarre. [SW]. |
|---|
| 230 | * Removed non-static shutdownsock prototype in hdrs/mysocket.h. |
|---|
| 231 | Report by Kholnuu@M*U*S*H. |
|---|
| 232 | * SQL code should be much more memory-efficient. [SW] |
|---|
| 233 | * Code cleanup and fixes to some memory leaks with strcoll. [SW] |
|---|
| 234 | |
|---|
| 235 | |
|---|
| 236 | Version 1.7.7 patchlevel 34 June 22, 2004 |
|---|
| 237 | |
|---|
| 238 | Flags and Powers: |
|---|
| 239 | * Debit power allows the giving of negative amounts of money. |
|---|
| 240 | Suggested by Hemlon@SevenStones. |
|---|
| 241 | * The setting and resetting of flags and powers can be logged |
|---|
| 242 | by using the new 'log' restriction. Changes were made in |
|---|
| 243 | flaglocal.dst which you must carry over into flaglocal.c |
|---|
| 244 | (or, if you don't use flaglocal.c, just rm src/flaglocal.c and |
|---|
| 245 | flaglocal.dst will be copied in its place). Suggested by Sholevi@M*U*S*H |
|---|
| 246 | [SW] |
|---|
| 247 | * Setting and resetting @powers are once again logged by default. [SW] |
|---|
| 248 | Locks: |
|---|
| 249 | * @lock/speech can now be set by unprivileged players. @lock/speech |
|---|
| 250 | now applies to all players (it is no longer automatically overridden |
|---|
| 251 | by admin). SPEECH_LOCK`*FAILURE attributes can be used to override |
|---|
| 252 | the default failure messages when @lock/speech fails. |
|---|
| 253 | Commands: |
|---|
| 254 | * ex/parent examines an object and shows attributes that will be |
|---|
| 255 | inherited from its parents (if you are permitted to examine |
|---|
| 256 | the parent as well). Suggested by BladedThoth@M*U*S*H. |
|---|
| 257 | * examine now shows the complete (examinable-by-enactor) chain of |
|---|
| 258 | parent objects, not just the nearest parent. Suggested by Luke@M*U*S*H. |
|---|
| 259 | Functions: |
|---|
| 260 | * mailsend() is a function form of @mail/send. Suggested by Moe@ChicagoMUSH |
|---|
| 261 | * ncon, nvcon, nexits, nvexits, nplayers, nvplayers, nwho, nvwho |
|---|
| 262 | functions to count the number of each thing. Patch by Walker@M*U*S*H. |
|---|
| 263 | * xcon, xvcon, xexits, xvexits, xplayers, xvplayers, xwho, xvwho functions |
|---|
| 264 | to extract slices of potentially long contents, etc. lists. [Rhost,TM] |
|---|
| 265 | Patch by Walker@M*U*S*H. |
|---|
| 266 | Minor changes (user-visible): |
|---|
| 267 | * Players can no longer be set CHOWN_OK. Suggested by Intrevis@M*U*S*H. |
|---|
| 268 | If you have existing CHOWN_OK players, you probably want to unset |
|---|
| 269 | this from them, or the results will be confusing (they'll continue |
|---|
| 270 | to appear to have the flag, even though it won't be testable or |
|---|
| 271 | settable or clearable; this is desired behavior). |
|---|
| 272 | * If you're See_All and Pemit_All, you may now @cemit on any channel. |
|---|
| 273 | Based on a suggestion by Philip Mak. |
|---|
| 274 | * Attempting to give a player more than max_pennies will give them |
|---|
| 275 | enough to get them to max_pennies, instead of being treated as |
|---|
| 276 | an error. Similarly, taking away more pennies than they have will |
|---|
| 277 | take away exactly all their pennies. |
|---|
| 278 | * Improved errors for unprivileged users doing @boot/port. |
|---|
| 279 | Suggested by Intrevis@M*U*S*H. [TAP] |
|---|
| 280 | Minor changes (internals): |
|---|
| 281 | * pre OS X Macintosh OSes are no longer supported. Hints for |
|---|
| 282 | Darwin are improved. [SW] |
|---|
| 283 | * An extra file descriptor only needed on Sun OS boxes was being |
|---|
| 284 | opened on all unix systems. [SW] |
|---|
| 285 | * If no config file name is given on the netmush program's command line, |
|---|
| 286 | it will assume you mean mush.cnf instead of quitting. You should still |
|---|
| 287 | be using the restart script instead of netmush directly, though, as it |
|---|
| 288 | does important things like using the right database... [SW] |
|---|
| 289 | * 'make local-files' will copy all the src/*local.dst files to their |
|---|
| 290 | respective .c counterparts. Suggested by Nymeria@M*U*S*H. [SW] |
|---|
| 291 | Fixes: |
|---|
| 292 | * Configure handles the case where SO_KEEPALIVE works but TCP_KEEPIDLE isn't |
|---|
| 293 | defined. [SW] |
|---|
| 294 | * Win32 portability fixes and mingw hints. [EEH] |
|---|
| 295 | * Raising max_logins from 0 with @config/set wouldn't take existing |
|---|
| 296 | connections into account. [SW] |
|---|
| 297 | * $commands starting with # (that don't look like an @force by dbref) |
|---|
| 298 | will now be matched. Reported by Intrevis@M*U*S*H. |
|---|
| 299 | * version() is verbose again. Reported by Sholevi@M*U*S*H. |
|---|
| 300 | * The double-add of SQL_OK on minimal.db is now really fixed. |
|---|
| 301 | See p33 changes for information. Report by Mordie@M*U*S*H. |
|---|
| 302 | * Help fixes by Kevin@M*U*S*H and Cerekk@bDv. |
|---|
| 303 | * @boot/desc on one's own descriptor is no longer translated to |
|---|
| 304 | @boot/me. [TAP] |
|---|
| 305 | * Overflow of integer argument in giving pennies fixed. Report by |
|---|
| 306 | Sholevi@M*U*S*H. |
|---|
| 307 | * Typo in fun_vcross() fixed. [SW] |
|---|
| 308 | * Configure does better when ssl shared libraries, but not static |
|---|
| 309 | libraries, are available. You can use -D no_openssl to skip SSL checks. |
|---|
| 310 | |
|---|
| 311 | |
|---|
| 312 | Version 1.7.7 patchlevel 33 June 3, 2004 |
|---|
| 313 | |
|---|
| 314 | Minor changes (internals): |
|---|
| 315 | * IsPlayer, etc. macros rewritten for clarity by Luke@M*U*S*H. |
|---|
| 316 | * Use enums in place of some more #defines and magic numbers. [SW] |
|---|
| 317 | * New did_it_with() hc function simplifies passing a dbref as %0 |
|---|
| 318 | to did_it actions. [SW] |
|---|
| 319 | Fixes: |
|---|
| 320 | * The SQL_OK power could get double-added. If this happened to you, |
|---|
| 321 | delete one of them and double-check that all sql-using objects |
|---|
| 322 | still have the power set. Report by Mordie@M*U*S*H. |
|---|
| 323 | * Missing include in game.c fixed. |
|---|
| 324 | * Improper include in bufferq.c fixed. Report by Leona and Walker@M*U*S*H. |
|---|
| 325 | * Obsolete bzero() uses removed. [SW] |
|---|
| 326 | * New win32/pennmush.dsp. |
|---|
| 327 | * Help fix by bleeder@M*U*S*H. |
|---|
| 328 | * Mac OS X linting [SW]. |
|---|
| 329 | |
|---|
| 330 | |
|---|
| 331 | Version 1.7.7 patchlevel 32 May 26, 2004 |
|---|
| 332 | |
|---|
| 333 | Major Changes: |
|---|
| 334 | * SQL support. PennMUSH can now operate as an SQL client and perform |
|---|
| 335 | queries against an SQL server. Currently only the MySQL server is |
|---|
| 336 | supported. This adds the @sql command, the sql() and sqlescape() |
|---|
| 337 | functions, and the Sql_Ok power. See README.SQL for some |
|---|
| 338 | additional information. Mostly based on patches by Hans Engelen. |
|---|
| 339 | * Creating a leaf attribute automatically creates associated branch |
|---|
| 340 | attributes if they are not already present. [TAP] |
|---|
| 341 | * When a $command matches on an object, but the object's use-lock or |
|---|
| 342 | command-lock prevents the command from being run, the object's |
|---|
| 343 | COMMAND_LOCK`FAILURE, COMMAND_LOCK`OFAILURE, and COMMAND_LOCK`AFAILURE |
|---|
| 344 | attributes will be triggered if the $command never successfully |
|---|
| 345 | matched, rather than returning a Huh? to the player. |
|---|
| 346 | * Exits and rooms may now run $commands. Rooms are treated as being |
|---|
| 347 | located in themselves for purposes of location checks. Exits are |
|---|
| 348 | treated as being located in their source room. Suggested by [TAP]. |
|---|
| 349 | Commands: |
|---|
| 350 | * 'empty <object>' attempts to get each item in <object> and put |
|---|
| 351 | it alongside <object> (in <object>'s location). |
|---|
| 352 | * 'give <object> to <player>' syntax added. |
|---|
| 353 | Minor Changes (user-visible): |
|---|
| 354 | * @COST attribute is now evaluated, so you can make costs depend |
|---|
| 355 | on who's paying, a selected item, etc. Suggested by Walker@M*U*S*H. |
|---|
| 356 | Also, the amount given is passed in as %0, so you can code |
|---|
| 357 | vendors that accept any amount. |
|---|
| 358 | * New OBJID^<objid> lock atom. |
|---|
| 359 | * The server now maintains a rolling log of activity (commands issued, |
|---|
| 360 | evaluations parsed, and locks evaluated), that is dumped to the log |
|---|
| 361 | file on panic, or can be seen by God with @uptime. This aids |
|---|
| 362 | debugging code that causes a "clean" panic rather than a crash. |
|---|
| 363 | Suggested by Intrevis@M*U*S*H. |
|---|
| 364 | * When checking a use/command/listen-lock on an object with patterns |
|---|
| 365 | that get matched, we only check the lock once and cache the result, |
|---|
| 366 | to prevent multiple lock evaluations if multiple patterns match. [TAP] |
|---|
| 367 | * @chan/recall now shows nospoof tags for @cemit'd lines. |
|---|
| 368 | Suggested by Sholevi@M*U*S*H. |
|---|
| 369 | * SUSPECT flag can now be applied to any type of object. |
|---|
| 370 | Suggested by Oriens@Alexandria. |
|---|
| 371 | Minor Changes (internals): |
|---|
| 372 | * fun_escape() and fun_secure() use the same list of special characters, |
|---|
| 373 | rather than each having their own copy. [SW] |
|---|
| 374 | * Buffer queue code used by @chan/buffer and the activity log refactored |
|---|
| 375 | into src/bufferq.c and hdrs/bufferq.h. |
|---|
| 376 | * Added mush_panicf(), with printf()-style format and arguments. [SW] |
|---|
| 377 | Fixes: |
|---|
| 378 | * @scan correctly shows attributes on parents again. Report by |
|---|
| 379 | Wayne@PDX. |
|---|
| 380 | * @shutdown/panic and @shutdown/paranoid work again. [SW] |
|---|
| 381 | * A panic DB could be created before the database files were actually read, |
|---|
| 382 | causing problems on the next restart. [SW] |
|---|
| 383 | * Win32 and Debian installer portability fixes. [EEH] |
|---|
| 384 | * Code cleanup around errno. [SW] |
|---|
| 385 | * The locate() function now respects visibility and interactions. |
|---|
| 386 | Report by Jules@M*U*S*H. |
|---|
| 387 | |
|---|
| 388 | |
|---|
| 389 | Version 1.7.7 patchlevel 31 May 11, 2004 |
|---|
| 390 | |
|---|
| 391 | Minor Changes: |
|---|
| 392 | * netmush is now started with only a single argument - the path to |
|---|
| 393 | the configuration file. The error log file (typically game/netmush.log) |
|---|
| 394 | is now configured in mush.cnf. Suggested by Vadiv@M*U*S*H. |
|---|
| 395 | * The restart script now bases its decision about whether the mush |
|---|
| 396 | is already running on the full path to the configuration file, |
|---|
| 397 | which means you can leave mush.cnf named mush.cnf without fear |
|---|
| 398 | of restart problems when multiple mushes are using the same |
|---|
| 399 | host. This also facilitates make update. Suggested by Vadiv@M*U*S*H. |
|---|
| 400 | * The GAMEDIR environment variable can be passed to 'make update' |
|---|
| 401 | to cause it to update *.cnf files in directories other than |
|---|
| 402 | game/ (using the template *.dst files in game/). |
|---|
| 403 | E.g.: make GAMEDIR=/home/othermush/game update |
|---|
| 404 | Commands: |
|---|
| 405 | * @nscemit. Suggested by Mystery8@ST:AW. |
|---|
| 406 | Functions: |
|---|
| 407 | * nscemit(). Suggested by Mystery8@ST:AW. |
|---|
| 408 | Flags: |
|---|
| 409 | * New HEAVY admin flag, prevents an object from being teleported |
|---|
| 410 | by a mortal between two containers they own. Admin without this |
|---|
| 411 | flag can now be teleported. |
|---|
| 412 | Fixes: |
|---|
| 413 | * Help fixes by Anri@AkaneaMUSH and Intrevis@M*U*S*H. |
|---|
| 414 | * mix() now treats empty lists as empty, instead of containing a single |
|---|
| 415 | null element. Report by Luke@M*U*S*H. |
|---|
| 416 | * @power messages no longer reference 'flags'. Report by Nymeria@M*U*S*H. |
|---|
| 417 | * Crash bug with @clone in new power system fixed. |
|---|
| 418 | |
|---|
| 419 | |
|---|
| 420 | Version 1.7.7 patchlevel 30 May 6, 2004 |
|---|
| 421 | |
|---|
| 422 | Major changes: |
|---|
| 423 | * CHAT_SYSTEM option removed. If you don't want to use the chat system, |
|---|
| 424 | use restrict.cnf to disable @channel, @chat, etc. |
|---|
| 425 | * USE_MAILER and MAIL_ALIAS options removed. If you don't want to |
|---|
| 426 | use the @mail or @malias systems, use restrict.cnf to disable |
|---|
| 427 | the associated commands. |
|---|
| 428 | * QUOTA, EMPTY_ATTRS, and FUNCTION_SIDE_EFFECTS options are now |
|---|
| 429 | runtime options, instead of compile-time. |
|---|
| 430 | * SINGLE_LOGFILE option removed, and log filenames are now |
|---|
| 431 | runtime options. You may now give the same name to |
|---|
| 432 | multiple log files and get a more fine-grained version of the |
|---|
| 433 | same effect. Based on ideas by Vadiv@M*U*S*H. |
|---|
| 434 | Minor changes: |
|---|
| 435 | * New IP^ and HOSTNAME^ tests for boolexps. Suggested by Luke@M*U*S*H. |
|---|
| 436 | * ALLOW_NOSUBJECT option removed. We always use the beginning of the |
|---|
| 437 | message as the subject if one is not provided. |
|---|
| 438 | * JURY_OK and UNINSPECTED_FLAG options removed. Use @flag to add |
|---|
| 439 | flags if you need them. ONLINE_REG and VACATION_FLAG options |
|---|
| 440 | removed (default to always defined, add or remove with @flag as |
|---|
| 441 | desired). |
|---|
| 442 | * MEM_CHECK option removed from options.h; it is now a runtime |
|---|
| 443 | option in mush.cnf. |
|---|
| 444 | * @function/restrict can be applied to softcoded @functions, and |
|---|
| 445 | @function/add can accept a list of restrictions as a fifth argument. |
|---|
| 446 | Patch by Luke@M*U*S*H. |
|---|
| 447 | * log_walls run-time configuration option removed. Use the |
|---|
| 448 | logargs option in restrict.cnf instead. |
|---|
| 449 | Fixes: |
|---|
| 450 | * Crash bug in anonymous attributes fixed. Report by Intrevis@M*U*S*H. |
|---|
| 451 | * lplayers() was broken. Report by T'orA@M*U*S*H. |
|---|
| 452 | * Failing to create a player by providing a bad password now gives |
|---|
| 453 | a better error. Suggested by [NJG]. |
|---|
| 454 | * Setting/clearing a chan title on a notitles channel works, but |
|---|
| 455 | reminds you that titles are off. Suggested by Dan@InNomine. |
|---|
| 456 | * haspower_restricted removed from mushcnf.dst to stop spurious |
|---|
| 457 | warning on startup. Report by Nymeria@M*U*S*H. |
|---|
| 458 | |
|---|
| 459 | |
|---|
| 460 | Version 1.7.7 patchlevel 29 April 28, 2004 |
|---|
| 461 | |
|---|
| 462 | Major changes: |
|---|
| 463 | * Anonymous attributes via #lambda. See help anonymous attributes. [SW] |
|---|
| 464 | * Wizards (other than God) and royalty are no longer treated as No_Pay |
|---|
| 465 | unless the No_Pay power is explicitly set on them, although they |
|---|
| 466 | can still give (themselves or others) as many pennies as they wish. |
|---|
| 467 | This helps stop runaway wizards in the queue (they'll run out of cash |
|---|
| 468 | like anyone else). To get the old behavior back, @power your admin |
|---|
| 469 | No_Pay. You probably want to @power any globals that use search(), |
|---|
| 470 | children(), mail*stats(), etc, No_Pay as well. Suggested by Walker@M*U*S*H. |
|---|
| 471 | * game/restrict.cnf, alias.cnf, names.cnf are renamed in the tarball and |
|---|
| 472 | made with make update like mush.cnf. Suggested by Philip Mak. [SW] |
|---|
| 473 | * @powers now operate under the same code as the @flag system, so God |
|---|
| 474 | can add and modify powers in the MUSH with @power/add, etc. |
|---|
| 475 | Commands: |
|---|
| 476 | * @nsemit, @nsoemit, @nslemit, @nsremit, @nszemit and function forms |
|---|
| 477 | of the same. Suggested by Cloud@M*U*S*H. |
|---|
| 478 | Functions: |
|---|
| 479 | * andlpowers(), orlpowers(), andpowers(), orpowers(). |
|---|
| 480 | * align() performs fancy text alignment tricks. Patch by Walker@M*U*S*H. |
|---|
| 481 | * sent() and recv() show more player descriptor data from SESSION. |
|---|
| 482 | Suggested by Ricochet@M*U*S*H. |
|---|
| 483 | * scan() with a single argument assumes the executor's point of |
|---|
| 484 | view. Suggested by Cheetah@M*U*S*H. |
|---|
| 485 | * valid() can also check for syntactically correct passwords, |
|---|
| 486 | command names, and function names. |
|---|
| 487 | Minor changes: |
|---|
| 488 | * No more CRYPT_SYSTEM in options.h. We try everything and we |
|---|
| 489 | always reset passwords to SHS. Patch by Vadiv@M*U*S*H. |
|---|
| 490 | * Wizards and other privileged players can @chan/recall on channels they're |
|---|
| 491 | not on. Suggested by Trispis@M*U*S*H. [SW] |
|---|
| 492 | * A separate ip address to bind the SSL port to can now be specified |
|---|
| 493 | in mush.cnf. |
|---|
| 494 | * @flag/type allows God to change flag types. Suggested by Renee@ShoreSide. |
|---|
| 495 | * After each @startup is enqueued (during startup or @restart/all), |
|---|
| 496 | we immediately run up to 5 queue cycles. This allows, e.g., God's |
|---|
| 497 | @startup to up to five levels of @dol/@tr/@switch/etc and still have |
|---|
| 498 | the queued code run ahead of other startups. This requires that you |
|---|
| 499 | keep God's dbref as #1. Based on comments by Philip Mak and o |
|---|
| 500 | Trispis@M*U*S*H. |
|---|
| 501 | * The message after successful @password is now clearer, to avoid |
|---|
| 502 | confusion in some unusual cases. Report by Kholnuu. |
|---|
| 503 | * Makefile is no longer set executable. Report by Luke@M*U*S*H. |
|---|
| 504 | * Server now handles telnet NOP and AYT commands. Suggested by |
|---|
| 505 | Philip Mak and Liz (author of Muckclient). |
|---|
| 506 | * announce.c is no longer distributed. portmsg.c cleanup. |
|---|
| 507 | Fixes: |
|---|
| 508 | * @undestroy on an invalid (garbage, or !going) object now produces |
|---|
| 509 | an error message. Suggested by T'orA@M*U*S*H. |
|---|
| 510 | * On shutdowns, all queue deposits are now refunded. |
|---|
| 511 | * Ansi behavior on second and later lines of text fixed by Walker@M*U*S*H. |
|---|
| 512 | * Database reading improvements for win32 - ideally, you should now |
|---|
| 513 | be able to read a database written on win32/unix on either system. |
|---|
| 514 | * allof() now evaluates its separator argument. [SW] |
|---|
| 515 | * firstof() doesn't add an extra space before the value it returns. [SW] |
|---|
| 516 | * Slackware portability fixes by Dale @ Wolfpaw.net hosting |
|---|
| 517 | * ]page properly noevals (the right hand side) now. Report by |
|---|
| 518 | Cheetah@M*U*S*H. |
|---|
| 519 | * Partial channel match listings no longer reveal channels the player |
|---|
| 520 | isn't allowed to see. Report by Taz. |
|---|
| 521 | * Help fixes by Trispis@M*U*S*H and Tanaku@M*U*S*H. |
|---|
| 522 | * ssl() and terminfo() don't work on other players unless you're |
|---|
| 523 | See_All, as promised. Based on patch by Tanaku@M*U*S*H. |
|---|
| 524 | * lcon, etc. all do an INTERACT_SEE interaction check now. |
|---|
| 525 | Suggested by Thor@bDv. |
|---|
| 526 | * Code cleanup. [SW] |
|---|
| 527 | * Fixes from 1.7.6p16 |
|---|
| 528 | |
|---|
| 529 | |
|---|
| 530 | Version 1.7.7 patchlevel 28 March 12, 2004 |
|---|
| 531 | |
|---|
| 532 | Major changes: |
|---|
| 533 | * You can add customized configuration parameters to set in mush.cnf |
|---|
| 534 | by adding a couple of new lines into the local_configs() function |
|---|
| 535 | in local.c. (YOU MUST UPDATE YOUR local.c FROM local.dst IN THIS |
|---|
| 536 | PATCHLEVEL). Patch by grapenut@M*U*S*H. |
|---|
| 537 | * Object ids: An object id is the string "#dbref:ctime" |
|---|
| 538 | where #dbref is the object's dbref and ctime is its creation time |
|---|
| 539 | in integer format. The %: substitution returns this |
|---|
| 540 | id for the enactor, and the objid() function returns it for an |
|---|
| 541 | arbitrary object. Object ids can be used in place of softcode that |
|---|
| 542 | stores dbrefs to insure that a recycled dbref isn't used in place |
|---|
| 543 | of the intended one. The matcher code will also match objects by |
|---|
| 544 | id any time it's matching by dbref. |
|---|
| 545 | * @command/add and @command/del. You can add a custom command |
|---|
| 546 | (which will have the same precedence as a standard server command), |
|---|
| 547 | and then @hook it to softcode, effectively promoting the precedence |
|---|
| 548 | of softcoded globals, and letting them take advantage of some |
|---|
| 549 | command parser settings. Patch by Walker@M*U*S*H. |
|---|
| 550 | Functions: |
|---|
| 551 | * tr() accepts ranges of characters like a-z instead of having to |
|---|
| 552 | give each one. [SW] |
|---|
| 553 | * escape() also escapes parens and commas now. Suggested by Philip Mak. [SW] |
|---|
| 554 | * time() can now take a time offset or object argument (in the latter |
|---|
| 555 | case, time offset is read from object's TZ attribute). Patch by |
|---|
| 556 | Walker@M*U*S*H. |
|---|
| 557 | * vcross() performs cross products of vectors. [SW] |
|---|
| 558 | * merge() can now take a list of characters. [SW] |
|---|
| 559 | Minor changes: |
|---|
| 560 | * You can @set multiple flags at once by giving them as a list. |
|---|
| 561 | Suggested by Walker@M*U*S*H and others. |
|---|
| 562 | * Channel names are recognized when surround by <>'s, too. [SW] |
|---|
| 563 | * 'move' is now a command_alias for 'goto' (in alias.cnf), and not |
|---|
| 564 | a separate command. |
|---|
| 565 | * PAGE_LOCK`{,O,A}FAILURE attributes now activated when a page/pemit fails |
|---|
| 566 | due to the victim's @lock/page. Suggested by Sholevi@M*U*S*H. |
|---|
| 567 | * Tweaked game message for failing to provide correct password to |
|---|
| 568 | @password. Suggested by Philip Mak. |
|---|
| 569 | * New command 'warn_on_missing' (defaults to disabled), aliased to the |
|---|
| 570 | '[' character. If enabled, players who attempt to write commands |
|---|
| 571 | starting with functions will get errors. Suggested by [SW] and |
|---|
| 572 | Cheetah@M*U*S*H. |
|---|
| 573 | * Renaming something triggers its ONAME and ANAME attributes, if present. |
|---|
| 574 | The old name is passed as %0; the new as %1. Suggested by Philip Mak. |
|---|
| 575 | * Owner information on ex/br is reported using the usual object_header() |
|---|
| 576 | so dbref and flags appear. Suggested by Eratl@M*U*S*H. |
|---|
| 577 | * Flags that are F_DARK or F_MDARK no longer appear on @flag/list |
|---|
| 578 | by non-admin. Suggested by Philip Mak. |
|---|
| 579 | * Warn players who set themselves SHARED with a weak zone lock. |
|---|
| 580 | Suggested by Philip Mak. [SW] |
|---|
| 581 | * @halt can now take "here". Suggested by Thor@bDv. |
|---|
| 582 | * When parsing eqsplit commands, don't evaluate the left side |
|---|
| 583 | of the equal sign if the command was run with ]. |
|---|
| 584 | Fixes: |
|---|
| 585 | * Fixes to robustify file reading on Windows systems. |
|---|
| 586 | * The 'nofixed' command restriction works as expected now (previously, |
|---|
| 587 | you had to use 'nofix'). |
|---|
| 588 | * Exit movements are now translated into explicit GOTO commands, |
|---|
| 589 | so @hooks and restrictions on GOTO are now applied. Patch by |
|---|
| 590 | Walker@M*U*S*H. |
|---|
| 591 | * The AE/ae accent characters can now be produced (accent(a,e)). |
|---|
| 592 | Patch by Luke@M*U*S*H. |
|---|
| 593 | * @hook/ignore would double-evaluate arguments. Reported by |
|---|
| 594 | Ambrosia@M*U*S*H. [SW] |
|---|
| 595 | * Mingw error in src/Makefile.SH fixed. Report by Thor@bDv. [SW] |
|---|
| 596 | * Help fixes by Cerekk@bDv, Mike Griffiths, Steve Varley, Thor@bDv, [SW], |
|---|
| 597 | Dahan, Jason Stover, and Kyieren@M*U*S*H. |
|---|
| 598 | * cmdlocal.dst now includes flags.h. By Dahan. |
|---|
| 599 | * Win32 portability fixes by Dahan, Nathan Baum, [EEH]. |
|---|
| 600 | * utils/mkcmds.sh is now smarter about choosing temp filenames, so |
|---|
| 601 | parallel make should work. Fixed by Cheetah@M*U*S*H. |
|---|
| 602 | * The Zone: data in examine could be wrong. |
|---|
| 603 | |
|---|
| 604 | |
|---|
| 605 | Version 1.7.7 patchlevel 27 January 25, 2004 |
|---|
| 606 | |
|---|
| 607 | Minor Changes: |
|---|
| 608 | * New etimefmt() formatting codes to make it easier to get nice-looking |
|---|
| 609 | results without 0-valued times. Suggested by ranko_usa@M*U*S*H. [SW] |
|---|
| 610 | * Autodetect existence of /usr/kerberos/include to make compile |
|---|
| 611 | easier for RH9 sufferers. |
|---|
| 612 | * src/Makefile is now autobuilt from src/Makefile.SH. IF you use |
|---|
| 613 | local hacks that require src/Makefile, this is likely to be a problem |
|---|
| 614 | for you. You'll want to start patching Makefile.SH instead. |
|---|
| 615 | * Fewer warning flags are now provided to the compiler by default. |
|---|
| 616 | You can set your own warning flags instead by defining the |
|---|
| 617 | warnings variable in config.over. |
|---|
| 618 | Fixes: |
|---|
| 619 | * The startups option actually does what it's supposed to now. |
|---|
| 620 | * Potential DOS in etimefmt fixed. Report by Ashen-Shugar. [SW] |
|---|
| 621 | * Code cleanup. ok_tag_attribute should work. [SW] |
|---|
| 622 | * Channels are automatically ungagged only on initial connection |
|---|
| 623 | (not reconnection, partial disconnection, etc.). Suggested by |
|---|
| 624 | Mordie@M*U*S*H. |
|---|
| 625 | * notify() calls during startup would crash. Reported by Mordie@M*U*S*H. [SW] |
|---|
| 626 | * Fixes from 1.7.6p15. |
|---|
| 627 | |
|---|
| 628 | |
|---|
| 629 | Version 1.7.7 patchlevel 26 December 15, 2003 |
|---|
| 630 | |
|---|
| 631 | Commands: |
|---|
| 632 | * Add /regexp switch to @switch and @select. Suggested by BladedThoth. [SW] |
|---|
| 633 | * New /spoof switch to @pemit, @remit, @lemit, @oemit, @emit, |
|---|
| 634 | causes the message to appear to be generated by the cause, rather |
|---|
| 635 | than the enactor, which makes globals like $ooc show the right |
|---|
| 636 | NOSPOOF information (instead of the name of the global command object). |
|---|
| 637 | Patch by Philip Mak. |
|---|
| 638 | Functions: |
|---|
| 639 | * hostname(), ipaddr(), and cmds() take a dbref or descriptor number |
|---|
| 640 | of a connected player and return the hostname, ipaddr, and number |
|---|
| 641 | of commands executed. Suggested by Sholevi@M*U*S*H and Renee@ShoreSide, |
|---|
| 642 | code by Sholevi@M*U*S*H. |
|---|
| 643 | * Add reswitch*() functions. Suggested by BladedThoth. [SW] |
|---|
| 644 | * insert() can take a negative position argument to insert from |
|---|
| 645 | the right. Patch by Sholevi@M*U*S*H. |
|---|
| 646 | * New firstof() and allof() functions return the first true value |
|---|
| 647 | or all true values from a set of expressions. Patch by Sholevi@M*U*S*H. |
|---|
| 648 | * tr() works like the Unix utility, translating characters. Patch |
|---|
| 649 | by Walker@M*U*S*H. |
|---|
| 650 | Attributes: |
|---|
| 651 | * Attributes may be set DEBUG to cause their evaluation to be |
|---|
| 652 | debugged selectively. Patch by Pozzo@SWForum. |
|---|
| 653 | * @desc can no longer be gotten remotely without privileges. |
|---|
| 654 | To implement this, a new attribute flag NEARBY was added, |
|---|
| 655 | which prevents visual attributes from being remotely accessed. |
|---|
| 656 | See new configuration directive 'read_remote_desc' if you prefer |
|---|
| 657 | the old behavior. Patch by Philip Mak. |
|---|
| 658 | * @desc on privileged objects can now be evaluated by mortals. |
|---|
| 659 | To implement this, a new attribute flag PUBLIC was added, |
|---|
| 660 | which overrides safer_ufun for that attribute. This flag is dangerous |
|---|
| 661 | and should be avoided unless you are sure you know what you're doing. |
|---|
| 662 | Patch by Philip Mak. |
|---|
| 663 | Minor Changes: |
|---|
| 664 | * "+<channel> <text>" complains if <channel> is ambiguous, and |
|---|
| 665 | displays a list of matching channels. Patch by Luke@M*U*S*H. |
|---|
| 666 | * Code cleanup around @oemit by Philip Mak. |
|---|
| 667 | * If an object has an IDESCFORMAT but no IDESCRIBE, interior viewers |
|---|
| 668 | now see the DESCRIBE formatted by IDESCFORMAT (instead of |
|---|
| 669 | the DESCRIBE formatted by DESCFORMAT). Suggested by Philip Mak. |
|---|
| 670 | * Ported to Win32 with the Mingw development environment. |
|---|
| 671 | See win32/README.mingw for compile instructions. [EEH] |
|---|
| 672 | * null() can now take any number of arguments. Patch by Walker@M*U*S*H. |
|---|
| 673 | * Using @chan/quiet to control the quiet flag on a channel no longer works |
|---|
| 674 | (Actually, it never did). Use @chan/priv instead. [SW] |
|---|
| 675 | * The NO_WARN flag now prevents disconnected room warnings, too. |
|---|
| 676 | Suggested by several people. Patch by Philip Mak. |
|---|
| 677 | * @sitelock/name !name still unlocks a reserved name, but no longer |
|---|
| 678 | removes that name from names.cnf. Suggested by Nymeria. [SW] |
|---|
| 679 | * Some cleanup of fopen() calls. [SW] |
|---|
| 680 | * The reference to channel Creator is now Owner in @chan/decomp. |
|---|
| 681 | Suggested by Howie@NFTrekMUSH. [SW] |
|---|
| 682 | * The name of the channel being tested is passed as %0 in channel locks. |
|---|
| 683 | Suggested by Philip Mak. [SW] |
|---|
| 684 | * help for @chownall mentions the /preserve switch. Warnings from @chown |
|---|
| 685 | and @chownall tell which objects they're for. Suggested by |
|---|
| 686 | Mordie@M*U*S*H. [SW] |
|---|
| 687 | * Home wrecking is allowed again. Suggested by Philip Mak. |
|---|
| 688 | Fixes: |
|---|
| 689 | * Puppets in containers with @listen container=* now hear the |
|---|
| 690 | outside world correctly. Patch by Philip Mak. |
|---|
| 691 | * The email sent on player registration now double-quotes the |
|---|
| 692 | player name in the example connect statement. Suggested by |
|---|
| 693 | David Kali. |
|---|
| 694 | * Two rooms should never be nearby() each other. Fix by Philip Mak. |
|---|
| 695 | * can_look_at() now handles the look/out case, too. Fix by Philip Mak. |
|---|
| 696 | * Help fixes by Viila@M*U*S*H, MetBoy@M*U*S*H, Cheetah@M*U*S*H. |
|---|
| 697 | * @flag/alias or @flag/add without giving an alias no longer crashes |
|---|
| 698 | the MUSH. Report by Wildfire. |
|---|
| 699 | * Correctly retrieve user full name from /etc/passwd fields under |
|---|
| 700 | Linux in Configure. Record it in config.sh. Reported by Vadiv@M*U*S*H. |
|---|
| 701 | * Debian package changes. [EEH] |
|---|
| 702 | * As the help promises, XCH_CMD and SEND attributes don't work |
|---|
| 703 | for non-Wizards. Really. |
|---|
| 704 | |
|---|
| 705 | |
|---|
| 706 | Version 1.7.7 patchlevel 25 October 30, 2003 |
|---|
| 707 | |
|---|
| 708 | Fixes: |
|---|
| 709 | * Crash bug in the interaction between parents and attr trees |
|---|
| 710 | fixed. Report by Walker@M*U*S*H. |
|---|
| 711 | * Improvements to how locks are decompiled. Built-in locks with the |
|---|
| 712 | no_inherit flag cleared are handled better. If the object doing |
|---|
| 713 | the @decompile is referenced in a lock key, it's decompiled as 'me' |
|---|
| 714 | rather than by dbref, to make it easier to port between games. |
|---|
| 715 | Report by Cerekk@bDv. [SW] |
|---|
| 716 | * The error typically logged by info_slave on a mush crash is worded |
|---|
| 717 | better. [SW] |
|---|
| 718 | * panic() renamed mush_panic() as the Mach kernel now has a public |
|---|
| 719 | system call panic(). Report by Jeff Ferrell. |
|---|
| 720 | |
|---|
| 721 | |
|---|
| 722 | Version 1.7.7 patchlevel 24 October 19, 2003 |
|---|
| 723 | |
|---|
| 724 | Minor Changes: |
|---|
| 725 | * The puppet flag can now apply to rooms. Suggested by Philip Mak. |
|---|
| 726 | * @tel/inside allows priv'd players to teleport into another player's |
|---|
| 727 | inventory (instead of to their location). Suggested by Philip Mak. |
|---|
| 728 | Fixes: |
|---|
| 729 | * Startups from a created minimal.db did not properly initialize |
|---|
| 730 | the objdata htab, so subsequent use of that htab (e.g. adding |
|---|
| 731 | players to channels) would crash. Report by [LdW]. |
|---|
| 732 | * Help fixes by BladedThoth@M*U*S*H and Philip Mak. |
|---|
| 733 | * Attempting to clear a branch attribute when it has leaves now |
|---|
| 734 | gives a better message. Also better message for inability to |
|---|
| 735 | write an attribute due to tree issues. Patch by Luke@M*U*S*H. |
|---|
| 736 | * Bug in @debugforwardlist fixed by Luke@M*U*S*H. |
|---|
| 737 | |
|---|
| 738 | |
|---|
| 739 | Version 1.7.7 patchlevel 23 October 10, 2003 |
|---|
| 740 | |
|---|
| 741 | Major Changes: |
|---|
| 742 | * Forking dumps now work with the chunk memory manager. [TAP] |
|---|
| 743 | Minor Changes: |
|---|
| 744 | * Chunk allocator improvements in partial read/writes and for |
|---|
| 745 | Win32. [TAP] |
|---|
| 746 | * Use the SHA0 algorithm from OpenSSL instead of our own when possible. [SW] |
|---|
| 747 | Functions: |
|---|
| 748 | * New digest() function for generating checksums via a variety of |
|---|
| 749 | algorithms. [SW] |
|---|
| 750 | * cowner() returns the dbref of a channel's owner. Suggested by |
|---|
| 751 | Sholevi@M*U*S*H. [SW] |
|---|
| 752 | * Added baseconv(), for converting numbers from one base to another. |
|---|
| 753 | Useful for tweaking things like Myrddin's bboard code. Suggested |
|---|
| 754 | by many people. [SW] |
|---|
| 755 | Fixes: |
|---|
| 756 | * Remove warnings in set.c and pcre.c. Report by Nymeria@M*U*S*H |
|---|
| 757 | * @power messages now show the canonical name of the power. |
|---|
| 758 | Suggested by Cheetah@M*U*S*H. |
|---|
| 759 | * Adding DARK players to channels produced a duplicated message. |
|---|
| 760 | Reported by Mystery8@ST:AW. |
|---|
| 761 | * Players set WIZARD and ROYALTY would get double notification |
|---|
| 762 | of some GAME: messages. Fixed now. [SW] |
|---|
| 763 | * Chatdb corruption possible when admin add players to channels. |
|---|
| 764 | Reported by several folks, diagnosed by Mordie@M*U*S*H. |
|---|
| 765 | |
|---|
| 766 | |
|---|
| 767 | Version 1.7.7 patchlevel 22 September 30, 2003 |
|---|
| 768 | |
|---|
| 769 | Minor Changes: |
|---|
| 770 | * When possible, sockets are now set SO_KEEPALIVE and TCP_KEEPIDLE. |
|---|
| 771 | This may help prevent disconnections of idle players behind |
|---|
| 772 | poorly designed NAT routers and the like, and make the use of |
|---|
| 773 | the IDLE command unnecessary. Patch by Philip Mak. |
|---|
| 774 | * Better failure messages for 'get blah's blah', especially when |
|---|
| 775 | the container or contained object is ambiguous. Suggested by |
|---|
| 776 | Philip Mak. |
|---|
| 777 | Fixes: |
|---|
| 778 | * Attempting to unset attribute flags actually set them. |
|---|
| 779 | Report by Ambrosia@M*U*S*H. [SW] |
|---|
| 780 | |
|---|
| 781 | |
|---|
| 782 | Version 1.7.7 patchlevel 21 September 23, 2003 |
|---|
| 783 | |
|---|
| 784 | Major Changes: |
|---|
| 785 | * Attribute trees. Attributes may now be organized hierarchically |
|---|
| 786 | like files and directories in a filesystem, using the backtick (`) |
|---|
| 787 | character as the branch separator. Attribute access restrictions |
|---|
| 788 | propagate down trees. New wildcard ** is introduced to match |
|---|
| 789 | all attributes at all tree levels. Suggested by Tabbifli. [TAP] |
|---|
| 790 | Locks: |
|---|
| 791 | * New framework for performing lock failure activities in hardcode. |
|---|
| 792 | As a proof-of-concept, the attributes FOLLOW_LOCK`FAILURE, |
|---|
| 793 | FOLLOW_LOCK`OFAILURE, FOLLOW_LOCK`AFAILURE do what you'd expect |
|---|
| 794 | when set on a potential leader. Suggested by Sholevi@M*U*S*H. |
|---|
| 795 | Channels: |
|---|
| 796 | * New per-channel flags NoTitles, NoNames, and NoCemit do what you'd |
|---|
| 797 | expect. Set them with @chan/privs. Based on suggestion by |
|---|
| 798 | Saturn@M3. |
|---|
| 799 | * @chan/recall/quiet omits timestamps. Suggested by Vadiv@M*U*S*H. |
|---|
| 800 | Commands: |
|---|
| 801 | * 'help <wildcard-pattern>' now lists all help topics that match that |
|---|
| 802 | pattern. By popular request. [MUX,SW] |
|---|
| 803 | * @flag/letter can be used to change or clear the one-letter alias for a |
|---|
| 804 | flag. Suggested by Nymeria@M*U*S*H. [SW] |
|---|
| 805 | * @flag/list by God notes disabled flags. Suggested by Nymeria@M*U*S*H. [SW] |
|---|
| 806 | Functions: |
|---|
| 807 | * rand() now comes in a two-argument (low,high) flavor, and randword() |
|---|
| 808 | selects a random word from a list. The latter is aliased to |
|---|
| 809 | pickrand() to match Mux's name. Patch by Luke@M*U*S*H. |
|---|
| 810 | Minor Changes: |
|---|
| 811 | * Although we're Pueblo 2.50 compliant, go back to sending Pueblo 1.10 |
|---|
| 812 | as the server version until everyone upgrades their clients so |
|---|
| 813 | they can handle the 2.50 string. Suggested by Shirow. |
|---|
| 814 | * The locate() function is no longer noisy (no longer notifies |
|---|
| 815 | the executor in addition to returning a value). Suggested by |
|---|
| 816 | Mystery8@ST:AW. |
|---|
| 817 | * @lock/interact now has a higher priority than other interaction |
|---|
| 818 | checks, so it will work for Wizards. Suggested by Viila@M*U*S*H. |
|---|
| 819 | * Tweaks to facilitate a Debian package of PennMUSH. [EEH] |
|---|
| 820 | Fixes: |
|---|
| 821 | * max descriptor could get stomped in some cases. [SW] |
|---|
| 822 | * Removed extra struct def in hdrs/mushtype.h. Suggested by Kyle. |
|---|
| 823 | * Help tweak by Kevin@M*U*S*H. |
|---|
| 824 | * Fix to locks on players messing up their connection failure counts. |
|---|
| 825 | Reported by Luke@M*U*S*H. |
|---|
| 826 | * Fix to @entrances by Luke@M*U*S*H. |
|---|
| 827 | * Fix to Win32 not handling a missing minimal.db by Luke@M*U*S*H. |
|---|
| 828 | * The confirmation message for setting/clearing attribute flags would use |
|---|
| 829 | the flag name given as an argument, not neccessarily the the full name of |
|---|
| 830 | the flag. Reported by Vadiv@M*U*S*H. [SW] |
|---|
| 831 | * Fix a potential memory leak in ident.c [SW] |
|---|
| 832 | |
|---|
| 833 | Version 1.7.7 patchlevel 20 September 4, 2003 |
|---|
| 834 | |
|---|
| 835 | Major Changes: |
|---|
| 836 | * minimal.db is no more. If you start up the server and there's no |
|---|
| 837 | db to be found, it creates a new minimal database in memory |
|---|
| 838 | on the fly. Feel free to delete your coopy of minimal.db. [SW] |
|---|
| 839 | (In related news, the default OSUCC on #0 in minimal.db is gone. |
|---|
| 840 | Suggested by Cheetah@M*U*S*H. So much for the mists.) |
|---|
| 841 | Minor Changes: |
|---|
| 842 | * SSL connections are now ended before the dump when rebooting, |
|---|
| 843 | but their descriptor information sticks around to ensure that |
|---|
| 844 | their @adisconnect is run after the reboot. Based on suggestions |
|---|
| 845 | by Vadiv@M*U*S*H and [TAP]. |
|---|
| 846 | * When _DEBUG is defined in a win32 build, don't copy pennmush.exe |
|---|
| 847 | to pennmush_run.exe. Makes debugging easier. Patch by Luke@M*U*S*H. |
|---|
| 848 | * In pueblo mode, no longer clear past images after each room look. |
|---|
| 849 | Patch by Konstantine Shirow. |
|---|
| 850 | * In pueblo mode, we no longer render ansi attributes or colors with |
|---|
| 851 | HTML tags; we assume the client will correctly handle them as ansi |
|---|
| 852 | intermixed with Pueblo. This solves a variety of problems. |
|---|
| 853 | Based on a discussion with Konstantine Shirow. |
|---|
| 854 | * When matching $commands and ^listens, insure that a matching attribute |
|---|
| 855 | exists before testing locks. This may break some strange locks using |
|---|
| 856 | %c, but hopefully won't. Suggested by Cheetah@M*U*S*H. |
|---|
| 857 | * The @scan command temporarily sets %c to the command to be scanned |
|---|
| 858 | (without "@scan" prefixed) so that it can detect commands that use |
|---|
| 859 | %c-matching. Based on ideas from Cheetah and Walker@M*U*S*H. |
|---|
| 860 | * Added support for Pueblo's md5 checksum. We track it on each |
|---|
| 861 | descriptor, though we don't do anything with it currently. |
|---|
| 862 | * Speed-up to fun_merge. Patch by Walker@M*U*S*H. |
|---|
| 863 | * Internal cleanup of flags in channel_broadcast. |
|---|
| 864 | * Wizards may @name themselves to names forbidden in names.cnf. |
|---|
| 865 | Patch by LeeLaLimaLLama@M*U*S*H. |
|---|
| 866 | * We are now forgiving of stupid non-RFC-compliant telnet clients |
|---|
| 867 | that send CR only even when they claim to be sending CRLF |
|---|
| 868 | (Read: MS Windows XP telnet). MS bug reported first by |
|---|
| 869 | Intrevis@M*U*S*H. |
|---|
| 870 | * Misleading restrict_command on @clone removed from restrict.cnf, |
|---|
| 871 | as @dig/@open/@create permissions already control @clone. |
|---|
| 872 | Suggested by Philip Mak. |
|---|
| 873 | Functions: |
|---|
| 874 | * lstats() and quota() now allow objects to see stats/quota on other |
|---|
| 875 | objects they control (e.g., on their owners, perhaps). Suggested |
|---|
| 876 | by Philip Mak. |
|---|
| 877 | * hastype() can now test for type GARBAGE. Suggested by Tanaku@M*U*S*H. |
|---|
| 878 | Commands: |
|---|
| 879 | * The new ']' command prefix causes the rest of the command-line |
|---|
| 880 | not to be evaluated by the expression parser. Try: ]think [add(1,1)] |
|---|
| 881 | Inspired by Elendor. |
|---|
| 882 | * @hook/ignore. [mux] |
|---|
| 883 | * @hook/override [Rhost, though they don't call it that] |
|---|
| 884 | Attributes: |
|---|
| 885 | * @debugforwardlist forwards DEBUG output to dbrefs on the list. |
|---|
| 886 | Suggested by Balerion@M*U*S*H. |
|---|
| 887 | Tests: |
|---|
| 888 | * A new test harness for developing regression test suites in perl |
|---|
| 889 | for PennMUSH is now included; few test suites are. If you can figure |
|---|
| 890 | out how to use this, write some tests for us! (If you can't, don't |
|---|
| 891 | ask about it, please :) |
|---|
| 892 | Locks: |
|---|
| 893 | * @lock/interact can prevent other players from transmitting any |
|---|
| 894 | normal sound to you (that is, you won't hear them speak, pose, |
|---|
| 895 | emit, etc., like gagging them in a client). It doesn't control |
|---|
| 896 | page (use @lock/page) or @mail (use @lock/mail). You still |
|---|
| 897 | hear 'presence' messages (connects/disconnects/arrivals/leaves) |
|---|
| 898 | so you can have a sense of who can hear you but you can't hear. |
|---|
| 899 | Patch by Philip Mak. |
|---|
| 900 | Fixes: |
|---|
| 901 | * Configure script no longer keeps adding -lssl -lcrypto over and |
|---|
| 902 | over to the Makefile. Report by Sholevi@M*U*S*H. |
|---|
| 903 | * Portability fixes for compiling with MSVC5 by Luke@M*U*S*H. |
|---|
| 904 | * The behavior of spaces inside parentheses that aren't part of a |
|---|
| 905 | function has been improved. Report by Jason Newquist. [TAP] |
|---|
| 906 | * txt/*.html files were being improperly escaped before being |
|---|
| 907 | sent to Pueblo connections. Report by Konstantine Shirow. |
|---|
| 908 | * mushdb.h includes flags.h, as it relies on constants from there. |
|---|
| 909 | Suggested by Philip Mak. |
|---|
| 910 | * Better error reporting on some failure messages in chunk allocator. |
|---|
| 911 | Patch by Philip Mak. |
|---|
| 912 | * @config/set with an invalid option now returns an error. |
|---|
| 913 | Report by Sholevi@M*U*S*H. |
|---|
| 914 | * Fix to interaction checking in notify_anything that could result |
|---|
| 915 | in the wrong check being performed. Report by Philip Mak. |
|---|
| 916 | * Help fixes by LeeLaLimaLLama@M*U*S*H, Sunny@M*U*S*H, Sketch@M*U*S*H. |
|---|
| 917 | |
|---|
| 918 | |
|---|
| 919 | Version 1.7.7 patchlevel 19 August 19, 2003 |
|---|
| 920 | |
|---|
| 921 | Fixes: |
|---|
| 922 | * When SSL connections are dropped on reboot, other players weren't |
|---|
| 923 | seeing disconnect messages. Now they are. |
|---|
| 924 | * Two calls to flaglist_check_long didn't get converted to the new |
|---|
| 925 | abstraction layer, making flag_broadcast not work right. |
|---|
| 926 | Report by Luminar@M*U*S*H. |
|---|
| 927 | |
|---|
| 928 | |
|---|
| 929 | Version 1.7.7 patchlevel 18 August 19, 2003 |
|---|
| 930 | |
|---|
| 931 | Major Changes: |
|---|
| 932 | * The flag handling code has been additionally abstracted to |
|---|
| 933 | allow, in a future patchlevel, @powers to be handled in the |
|---|
| 934 | same way that flags are now. |
|---|
| 935 | Minor Changes: |
|---|
| 936 | * Wrap the OS-dependant code for making sure the mush always has a free |
|---|
| 937 | file descriptor available for use in a pair of functions. [SW] |
|---|
| 938 | Fixes: |
|---|
| 939 | * Linted some ssl-related warnings. Reported by Cheetah@M*U*S*H. |
|---|
| 940 | * Compile failed in timer.c unless USE_MAILER was defined. |
|---|
| 941 | Reported by Sunny@M*U*S*H. |
|---|
| 942 | * Bug allowing players to view internal and mortal_dark attributes |
|---|
| 943 | introduced in p17 has been fixed. [TAP] |
|---|
| 944 | |
|---|
| 945 | |
|---|
| 946 | Version 1.7.7 patchlevel 17 August 11, 2003 |
|---|
| 947 | |
|---|
| 948 | Major changes: |
|---|
| 949 | * SSL support, including server and client authentication as options. |
|---|
| 950 | This should be considered experimental. New ssl() function returns 1 |
|---|
| 951 | if a player/descriptor is using SSL, 0 otherwise. New file README.SSL |
|---|
| 952 | documents how to set up SSL. Two things to note: |
|---|
| 953 | - SSL connections are dropped on @shutdown/reboot, so SSL users may |
|---|
| 954 | wish to write client triggers to reconnect. |
|---|
| 955 | - Output flushing behaves slightly differently for SSL connections. |
|---|
| 956 | * The way lock keys are handled internally has been rewritten to allow |
|---|
| 957 | them to be tracked by the same chunk-management code that handles |
|---|
| 958 | attributes. [SW] |
|---|
| 959 | * @mail message texts are now stored with the chunk-management code. [SW] |
|---|
| 960 | * The new code can no longer read databases created by versions of Penn |
|---|
| 961 | before 1.7.5p0. If you need to do this, load it in 1.7.6, shutdown, |
|---|
| 962 | and use that database. [SW] |
|---|
| 963 | Minor changes: |
|---|
| 964 | * A new minimal.db is distributed (older ones probably won't work, |
|---|
| 965 | and this one probably won't work with older versions). [TAP] |
|---|
| 966 | * Contents/exits lists and functions that use first_visible (like |
|---|
| 967 | lcon, lexits, etc.) are now affected by INTERACT_SEE. Suggested by |
|---|
| 968 | Prospero@Metro. |
|---|
| 969 | * @chan/recall now displays the last 10 lines by default. Use |
|---|
| 970 | @chan/recall <chan>=0 to get the full buffer. Suggested by [TAP]. |
|---|
| 971 | * Various boolexp tweaks. [SW] |
|---|
| 972 | * @power provides more verbose feedback. Suggested by Mordie@M*U*S*H. [SW] |
|---|
| 973 | * Additional chunk tweaks, including limiting migrations to one |
|---|
| 974 | per second. [TAP] |
|---|
| 975 | * PROFILING #define for use when profiling the code (surprise). This |
|---|
| 976 | just disables the CPU timer. |
|---|
| 977 | * When matching $-commands, only call the slower capturing wildcard match |
|---|
| 978 | function when we already know it succeeds, since it won't most of the time. |
|---|
| 979 | The faster non-capturing function is checked first to find a match. [SW] |
|---|
| 980 | * PCRE is initialized once, at startup, rather than testing to see if it has |
|---|
| 981 | to be done before each place regular expressions are used. [SW] |
|---|
| 982 | * The TERSE flag now applies to objects, not just players. Suggested |
|---|
| 983 | by Aur@M*U*S*H. |
|---|
| 984 | * The terminfo() function now returns SSL status as well. |
|---|
| 985 | * help-like commands without arguments now use the command name |
|---|
| 986 | as the argument. E.g. 'news' now looks for topic 'news', instead of |
|---|
| 987 | 'help'. If not found, we fall back on help. Patch by Mike Griffiths. |
|---|
| 988 | * When an object is zoned to an unlocked ZMO, the ZMO is now autolocked |
|---|
| 989 | to =me instead of $me, because it's probably less confusing. |
|---|
| 990 | Suggested by Luke@M*U*S*H. |
|---|
| 991 | * @name now automatically trims leading and trailing spaces from its |
|---|
| 992 | newname argument, to avoid confusing people who use edit() to |
|---|
| 993 | generate new names and leave in spaces. Report by [TAP], patch by [SW]. |
|---|
| 994 | Commands: |
|---|
| 995 | * New 'logargs' and 'logname' restrictions in restrict.cnf allow |
|---|
| 996 | per-command logging. Suggested by Saturn @ M3. |
|---|
| 997 | Functions: |
|---|
| 998 | * The sha1() function has been renamed sha0(), since that's what it |
|---|
| 999 | really does. [TAP] |
|---|
| 1000 | * trimtiny() and trimpenn() work like trim(), but force the TM or |
|---|
| 1001 | Penn argument style. |
|---|
| 1002 | * New 'logargs' and 'logname' restrictions in restrict.cnf allow |
|---|
| 1003 | per-function logging. Suggested by Saturn @ M3. |
|---|
| 1004 | Fixes: |
|---|
| 1005 | * The side-effect version of name() was producing a weird return |
|---|
| 1006 | value. Reported by Saturn@M3. |
|---|
| 1007 | * Problems with restrict_command and restrict_function with multiple |
|---|
| 1008 | restrictions now fixed. Report by Sholevi@M*U*S*H. |
|---|
| 1009 | * stddef.h now included in src/extchat.c. Report by [EEH]. [SW] |
|---|
| 1010 | * INFO output now includes a missing newline. Report by [EEH]. [SW] |
|---|
| 1011 | * help BUILDER updated. Report by Laura Langland-Shula. |
|---|
| 1012 | * down.txt message wasn't being sent. Report by Sholevi@M*U*S*H. [SW] |
|---|
| 1013 | * New Win32 project files that include the chunk code. [EEH] |
|---|
| 1014 | * @chan/what no longer highlights the channel's name, as this is |
|---|
| 1015 | confusing if you use ansified channel names. Suggested by |
|---|
| 1016 | Oriens@Alexandria. |
|---|
| 1017 | * ex/mortal now operates more correctly. Report by Amy Kou'ai. |
|---|
| 1018 | * Fixes from 1.7.6p13. |
|---|
| 1019 | |
|---|
| 1020 | Version 1.7.7 patchlevel 16 June 23, 2003 |
|---|
| 1021 | |
|---|
| 1022 | Commands: |
|---|
| 1023 | * New switch /room for 'with' to run a $command available in a remote |
|---|
| 1024 | location. Suggested by Mike Griffiths. [SW] |
|---|
| 1025 | Functions: |
|---|
| 1026 | * Added the terminfo() function, which returns information about a |
|---|
| 1027 | client's name and capabilities for a particular connection. [SW] |
|---|
| 1028 | * New lports() function. Like lwho() but returns port descriptors. |
|---|
| 1029 | For mux2 compatibility. [SW] |
|---|
| 1030 | * Functions that return information about a connected player now treat |
|---|
| 1031 | integer arguments as a port descriptor to look up, rather than using |
|---|
| 1032 | the least-idle connection of a player. To force a player name to |
|---|
| 1033 | be treated as such even when it's a number, prefix it with a * in |
|---|
| 1034 | softcode. For mux2 compatibility. [SW] |
|---|
| 1035 | * Players can use ports() on themselves and use the descriptors |
|---|
| 1036 | they're connected to as arguments to the information functions. |
|---|
| 1037 | For mux2 compatibility. [SW] |
|---|
| 1038 | Minor Changes: |
|---|
| 1039 | * Compute various chunk stats (total used, total free space, etc.) |
|---|
| 1040 | on demand instead of keeping running totals. [TAP] |
|---|
| 1041 | * @chan/what displays information about a channel's recall buffer, if any. |
|---|
| 1042 | [SW] |
|---|
| 1043 | * @chan/recall'ed lines are more clearly marked as such. Suggested by |
|---|
| 1044 | Oriens@Alexandria. [SW] |
|---|
| 1045 | * Consolidation of a common idiom used to format times throughout the source |
|---|
| 1046 | into a simple function call. [SW] |
|---|
| 1047 | * The time a @mail was sent was stored, unusually, as a string. |
|---|
| 1048 | No longer. Now it's handled the same way as all other times. [SW] |
|---|
| 1049 | Fixes: |
|---|
| 1050 | * Bug in resizing @chan/recall buffers fixed. Reported by Oriens@Alexandria. |
|---|
| 1051 | [SW] |
|---|
| 1052 | * Objects with user-defined locks had problems with finding built-in locks |
|---|
| 1053 | on the object. Reported by Walker@M*U*S*H. [SW] |
|---|
| 1054 | * Unregistered() macro was checking wrong flag name. Report by |
|---|
| 1055 | Matt Kirby. |
|---|
| 1056 | * Help fix by Adu@M*U*S*H. |
|---|
| 1057 | * Potential problem with ambigious names in the information functions fixed. |
|---|
| 1058 | |
|---|
| 1059 | |
|---|
| 1060 | Version 1.7.7 patchlevel 15 June 1, 2003 |
|---|
| 1061 | |
|---|
| 1062 | Fixes: |
|---|
| 1063 | * Problem with checking command flag masks when the number of |
|---|
| 1064 | flags was an even multiple of 8. Reported by Nymeria and |
|---|
| 1065 | Mordie@M*U*S*H. |
|---|
| 1066 | * Tweak to improve efficiency of ancestor checking code and delint |
|---|
| 1067 | warning reported by Cheetah@M*U*S*H. |
|---|
| 1068 | * SESSION output no longer misaligned with 5-digit dbrefs. |
|---|
| 1069 | Reported by Cheetah@M*U*S*H. [TAP]. |
|---|
| 1070 | * Fixes from 1.7.6p11. |
|---|
| 1071 | * game/txt/index-files.pl now uses locale information in the |
|---|
| 1072 | environment to, e.g., correctly lowercase accented characters. |
|---|
| 1073 | Report by Krad@M*U*S*H. |
|---|
| 1074 | * Modified several Makefile.SH targets to prevent Javelin from |
|---|
| 1075 | releasing patches that don't have the autogenerated files |
|---|
| 1076 | up-to-date for Windows folks. |
|---|
| 1077 | * Removed some dependence on typedefs that may or may not be in system |
|---|
| 1078 | header files. [SW] |
|---|
| 1079 | * Patch compiler warnings. [SW,EEH] |
|---|
| 1080 | * Help fixes by Mike Griffiths and Oriens@Alexandria. |
|---|
| 1081 | |
|---|
| 1082 | |
|---|
| 1083 | Version 1.7.7 patchlevel 14 May 22, 2003 |
|---|
| 1084 | |
|---|
| 1085 | Major changes: |
|---|
| 1086 | * Ancestors: an object can be configured to serve as an 'ultimate |
|---|
| 1087 | parent' of every room, exit, thing, or player, and attributes |
|---|
| 1088 | that are not found on an object or any of its parents may be inherited |
|---|
| 1089 | from the ancestor for that object type. The ORPHAN flag prevents |
|---|
| 1090 | ancestors from being used on an object. Patch by Walker@M*U*S*H. |
|---|
| 1091 | * Mail messages now track not only the dbref of the sender but the |
|---|
| 1092 | sender's creation time, so messages from dbrefs that have been |
|---|
| 1093 | nuked and recreated can be distinguished from messages from the |
|---|
| 1094 | original sender. This modifies the maildb and make it not usable |
|---|
| 1095 | with older versions. All existing @mail is grandfathered in, and |
|---|
| 1096 | can't be tracked this way. Suggested by Philip Mak. |
|---|
| 1097 | * New chunk memory allocator can be used to greatly reduce process |
|---|
| 1098 | memory requirements by swapping little-used attribute texts out |
|---|
| 1099 | to disk and caching often-used attribute texts in memory. |
|---|
| 1100 | This is incompatible with forking dumps, so if you use it, |
|---|
| 1101 | you'll do nonforking dumps. Configurable in mush.cnf, see comments |
|---|
| 1102 | there. [TAP] |
|---|
| 1103 | * Hardcode: new interaction type INTERACT_PRESENCE marks the |
|---|
| 1104 | arrival/departure/connection/disconnection/grows ears/loses ears |
|---|
| 1105 | messages. Many message types that used to be considered auditory |
|---|
| 1106 | (like most @verb-style messages) are now marked as visual instead. |
|---|
| 1107 | Functions: |
|---|
| 1108 | * strreplace() works like replace() for strings. [SW] |
|---|
| 1109 | * fraction(), for turning floating-point numbers into fractions. [SW] |
|---|
| 1110 | * root(), for finding roots higher than the square root. [SW] |
|---|
| 1111 | Minor changes: |
|---|
| 1112 | * We now use wrapper functions atr_value and safe_atr_value instead of |
|---|
| 1113 | uncompress(AL_STR(...)) or safe_uncompress(AL_STR(...)), so we |
|---|
| 1114 | can do future work with attribute storage cleanly. [TAP] |
|---|
| 1115 | * @*payment attributes now receive the amount of money paid in |
|---|
| 1116 | as %0. Suggested by Sholevi and Time@M*U*S*H. [SW] |
|---|
| 1117 | * Config options that take times now accept a notation describing what kind |
|---|
| 1118 | of units to use. For example, 3600s, 60m, 30m1800s, and 1h all refer to |
|---|
| 1119 | the same period of time. Suggested by Time@M*U*S*H. [SW] |
|---|
| 1120 | * Doxygen commenting of non-static members is essentially complete! |
|---|
| 1121 | Pennhacks see: http://www.pennmush.org/docs/1.7.7/html/ |
|---|
| 1122 | * The mail() function no longer matches non-player objects by name. |
|---|
| 1123 | * Several additional messages (locks, parents, etc.) are now quieted by |
|---|
| 1124 | the QUIET flag. Patch by [EEH]. |
|---|
| 1125 | * New config option default_home sets the room to send homeless things |
|---|
| 1126 | to. [TAP] |
|---|
| 1127 | * Added visual progress indicators for utils/mkcmds.sh so that slow |
|---|
| 1128 | systems won't think they're hung. Suggested by Cheetah@M*U*S*H. |
|---|
| 1129 | Fixes: |
|---|
| 1130 | * Fixes from 1.7.6p10. |
|---|
| 1131 | * The 'i' sort type was not properly impleme |
|---|