| 1 | |
|---|
| 2 | This is the most current changes file for PennMUSH. Please look it |
|---|
| 3 | over; each version contains new things which might significantly affect |
|---|
| 4 | the function of your server. Changes are reported in reverse |
|---|
| 5 | chronological order (most recent first) |
|---|
| 6 | |
|---|
| 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 | [3] refers to code by (or inspired by) TinyMUSH 3.0 |
|---|
| 11 | [MUX] refers to code by (or inspired by) TinyMUX 2.x |
|---|
| 12 | [Rhost] refers to code by (or inspired by) RhostMUSH |
|---|
| 13 | |
|---|
| 14 | ========================================================================== |
|---|
| 15 | |
|---|
| 16 | Version 1.8.1 patchlevel 4 December 6, 2005 |
|---|
| 17 | |
|---|
| 18 | Major Changes: |
|---|
| 19 | * Errors in matching switches to commands are ignored when the |
|---|
| 20 | command is hook/ignored or hook/overriden, so you can override |
|---|
| 21 | a built-in command and provide your own switches. Suggested by |
|---|
| 22 | Trinsec@M*U*S*H. |
|---|
| 23 | Mail: |
|---|
| 24 | * @mailfilter attribute causes incoming mail to be be automatically |
|---|
| 25 | filed to a folder if it evaluates to a folder name/number. |
|---|
| 26 | Patch by Sketch@M*U*S*H. |
|---|
| 27 | Commands: |
|---|
| 28 | * @prompt/@nsprompt work like @pemit/list, but add a telnet GOAHEAD |
|---|
| 29 | at the end of the message when emitting to players; players whose |
|---|
| 30 | clients handle GOAHEAD (e.g. tf) will get the message displayed |
|---|
| 31 | as a prompt in the input window. Suggested by Trinsec@M*U*S*H. |
|---|
| 32 | * The PROMPT_NEWLINES socket command can be used to add a newline |
|---|
| 33 | after the GOAHEAD in a prompt, for clients that mix up prompt |
|---|
| 34 | lines with other output. |
|---|
| 35 | Functions: |
|---|
| 36 | * namegrab() and namegraball(). Patch by Walker@M*U*S*H. |
|---|
| 37 | * prompt() and nsprompt() (the function equivalents of @prompt/@nsprompt). |
|---|
| 38 | * textentries(). Suggested by Trinsec@M*U*S*H. |
|---|
| 39 | * cdesc(), cusers(), cmsgs(), cbuffer(), cstatus(), clflags() |
|---|
| 40 | functions. Suggested by d'Ark@M*U*S*H. |
|---|
| 41 | * numversion() returns Penn version as an integer (1008001004) |
|---|
| 42 | for softcode use. |
|---|
| 43 | Minor changes: |
|---|
| 44 | * @chan/list works better for people who increase CHAN_NAME_LEN. |
|---|
| 45 | Suggested by Trinsec@M*U*S*H. |
|---|
| 46 | * Help fixes by Trinsec@M*U*S*H, Chili@M*U*S*H. |
|---|
| 47 | * Several powers (tport_anything, tport_anywhere, no_money, no_quota, |
|---|
| 48 | debit, sql_ok) are now aliased to TinyMUSH/TinyMUX equivalents |
|---|
| 49 | as well, for better code portability. [3,MUX] |
|---|
| 50 | Fixes: |
|---|
| 51 | * center() behaves better when given a fourth argument but |
|---|
| 52 | not a third one. Also fixes to cases where the right fill |
|---|
| 53 | string is one longer than the left. Report by Ian@M*U*S*H |
|---|
| 54 | * Fixes from 1.8.0p9. |
|---|
| 55 | |
|---|
| 56 | |
|---|
| 57 | Version 1.8.1 patchlevel 3 September 15, 2005 |
|---|
| 58 | |
|---|
| 59 | Fixes |
|---|
| 60 | * Bugfixes from 1.8.0p8 applied. |
|---|
| 61 | |
|---|
| 62 | |
|---|
| 63 | Version 1.8.1 patchlevel 2 September 5, 2005 |
|---|
| 64 | |
|---|
| 65 | Commands: |
|---|
| 66 | * @edit/check shows the results of an @edit without actually doing |
|---|
| 67 | it, to avoid inadvertent overediting. Patch by Walker@M*U*S*H. |
|---|
| 68 | Functions: |
|---|
| 69 | * sortkey() sorts a list by mapping each list element through a |
|---|
| 70 | function and applying a standard sort type. Patch by Walker@M*U*S*H. |
|---|
| 71 | Minor changes: |
|---|
| 72 | * "% " (percent-space) is now parsed to a literal percent-space, |
|---|
| 73 | making it easier to type things like "I'm 50% happy". And |
|---|
| 74 | % at end of line is parsed to a literal %. Patch by Sketch@M*U*S*H. |
|---|
| 75 | * @nameformat now receives the default-formatted name as %1 |
|---|
| 76 | so you can edit from that if you prefer. Suggested by Talvo@M*U*S*H. |
|---|
| 77 | * Added netbsd hints. Suggested by Tyr@M*U*S*H. |
|---|
| 78 | * hastype() can take a list of types to check for, not just one. [SW] |
|---|
| 79 | * Add @function/preserve, which does the same thing as the localize |
|---|
| 80 | restriction. [MUX] [SW] |
|---|
| 81 | * Leaving out the <filler> argument to align() defaults it to a |
|---|
| 82 | space. Suggested by Tyr@M*U*S*H, patch by Walker@M*U*S*H. |
|---|
| 83 | * Improved error message for setq() with odd arguments. |
|---|
| 84 | Report by Malix@8bit. |
|---|
| 85 | * When variable exits fail due to invalid/not permitted destination, |
|---|
| 86 | the enactor is told what the attempted destination was. |
|---|
| 87 | Suggested by Nathan Baum. |
|---|
| 88 | * Rooms may now @search/search() their owners. Suggested by Kali@M*U*S*H. |
|---|
| 89 | Fixes: |
|---|
| 90 | * @function/restrict mentioned in help. [SW] |
|---|
| 91 | * Clearer help on parallel setq. Suggested by Trinsec@M*U*S*H. [TAP] |
|---|
| 92 | * lsearch() didn't refund pennies when it failed because of lack of |
|---|
| 93 | permissions or invalid search criteria. Reported by Nathan Baum. [SW] |
|---|
| 94 | * lsearch() could return garbage objects. Report by Nathan Baum. [SW] |
|---|
| 95 | * %+ now only records argument count from last ufun, not from other |
|---|
| 96 | (builtin) functions. Report by Cheetah@M*U*S*H. |
|---|
| 97 | * Some linting of float comparisons. Report by Cheetah@M*U*S*H. |
|---|
| 98 | * page <player>= now pages the player with a blank line instead of |
|---|
| 99 | repaging the last paged player with "<player>". Report by Cheetah@M*U*S*H. |
|---|
| 100 | |
|---|
| 101 | |
|---|
| 102 | Version 1.8.1 patchlevel 1 June 27, 2005 |
|---|
| 103 | |
|---|
| 104 | Fixes: |
|---|
| 105 | * Players could set the 'internal' attribute flag, which causes |
|---|
| 106 | confusion. Report by Cooee@PDX. |
|---|
| 107 | * Setting attribute flags by character alias did not work |
|---|
| 108 | properly. |
|---|
| 109 | |
|---|
| 110 | |
|---|
| 111 | Version 1.8.1 patchlevel 0 June 25, 2005 |
|---|
| 112 | |
|---|
| 113 | Major Changes: |
|---|
| 114 | * Players may have multiple aliases, by specifying a semicolon-separated |
|---|
| 115 | list to @alias. Players may list their usual @name as one of their |
|---|
| 116 | aliases, and the @name command may be used to switch to any alias. |
|---|
| 117 | The maximum number of aliases per non-Wizard player may be limited by the |
|---|
| 118 | max_aliases config directive. Suggested by Nymeria@M*U*S*H. [3] |
|---|
| 119 | * 'home' is now a standard command, with no special precedence. |
|---|
| 120 | It can be @command/disabled and/or @hook'd. Suggested by |
|---|
| 121 | several people. If 'home' is disabled, 'goto home' will no longer |
|---|
| 122 | work (but @tel to home is still allowed). |
|---|
| 123 | Flags: |
|---|
| 124 | * A player with the TRACK_MONEY flag set gets a message any time |
|---|
| 125 | their objects spend or lose money. Patch by Walker@M*U*S*H. |
|---|
| 126 | * New Pueblo_Send power allows use of xch_cmd and send tags. |
|---|
| 127 | Mail: |
|---|
| 128 | * The @MAILFORWARDLIST attribute can be set to a list of dbrefs or |
|---|
| 129 | objids to which any @mail received should be forwarded. Your own |
|---|
| 130 | dbref may be listed if you wish to retain a copy |
|---|
| 131 | of the message as well. You must pass the @lock/mailforward of |
|---|
| 132 | any player listed in your @MAILFORWARDLIST. Suggested by T'orA@M*U*S*H. |
|---|
| 133 | Functions: |
|---|
| 134 | * setq()/setr() can set multiple registers in parallel. Suggested by |
|---|
| 135 | Nathan Baum. [SW] |
|---|
| 136 | * center() can now take multi-character fills, and can have different |
|---|
| 137 | left and right fills. Suggested by Boris@M*U*S*H. |
|---|
| 138 | * attrib_set() is a version of set() for setting attributes that |
|---|
| 139 | has a more comfortable syntax and that can clear attributes |
|---|
| 140 | without wiping whole attribute trees like wipe(). Suggested by |
|---|
| 141 | Kevin@M*U*S*H. [TAP] |
|---|
| 142 | * extract()'s second and third arguments are now optional, and default |
|---|
| 143 | to 1. Suggested by Philip Mak. |
|---|
| 144 | * lsearch() can now take more than one class/restriction pair, and |
|---|
| 145 | will require them all to be met. New "mindb" and "maxdb" classes |
|---|
| 146 | specify low and high dbrefs, and replace the old <low>,<high> |
|---|
| 147 | parameters, which are now deprecated. Suggested by qa'toq@bDv. |
|---|
| 148 | * alias() and fullalias() functions. [EEH] |
|---|
| 149 | * New function restriction "localize" causes q-registers to be |
|---|
| 150 | saved and restored around the function as if localize() or |
|---|
| 151 | ulocal() were used; handy for @functions. Patch by grapenut. |
|---|
| 152 | * flip() and reverse() no longer require escaping of commas. |
|---|
| 153 | Suggested by Yar Kramer. |
|---|
| 154 | Channels: |
|---|
| 155 | * Channels, by default, now ignore interaction rules defined in |
|---|
| 156 | local.c, so they can be used as "OOC" communication between |
|---|
| 157 | players who wouldn't be able to interact "IC"ly. A new per-channel |
|---|
| 158 | permission, "interact", changes this behavior back to enforcing |
|---|
| 159 | interaction rules on the channel. @lock/interact always applies, |
|---|
| 160 | however. Suggested by Shamash. |
|---|
| 161 | * New channel_flags config directive sets default permissions |
|---|
| 162 | for newly-created channels. |
|---|
| 163 | Minor changes: |
|---|
| 164 | * The %+ substitution returns the number of arguments passed to |
|---|
| 165 | a function and is useful in ufuns and @functions. |
|---|
| 166 | Suggested by Nathan Baum. |
|---|
| 167 | * The rules for valid command and functions names (e.g. for @command/add) |
|---|
| 168 | have been relaxed to allow @foo, +blah, and others with punctuation. |
|---|
| 169 | Suggested by Mike Griffiths. |
|---|
| 170 | * @hook/list <command> lists hooks on a command. Suggested by Nathan Baum. |
|---|
| 171 | * @INVFORMAT works like @CONFORMAT for the inventory command. |
|---|
| 172 | * Help for mail and chat functions moves to pennmail.hlp and |
|---|
| 173 | pennchat.hlp, respectively. Suggested by Kevin@M*U*S*H. |
|---|
| 174 | * Settings and resetting multiple attribute flags at once is now |
|---|
| 175 | supported more flexibly. Suggested by Sholevi@M*U*S*H. |
|---|
| 176 | * The restart script handles mush.cnf files with Windows-style |
|---|
| 177 | line endings more gracefully. Reported by CBeilby@M*U*S*H. |
|---|
| 178 | * @attribute/access now understands the privilege 'none' to mean |
|---|
| 179 | 'no associated attribute flags'. Report by Tyson Cochrane. |
|---|
| 180 | * @flag/alias flag=!alias removes a flag alias. Suggested by |
|---|
| 181 | Relay@MatrixMUSH. |
|---|
| 182 | * @search now refers to things as things instead of objects. |
|---|
| 183 | Suggested by Zebranky@M*U*S*H. |
|---|
| 184 | * Suggested restrictions to disable hardcoded chat and mail |
|---|
| 185 | are in restrictcnf.dst for those who want to do that. |
|---|
| 186 | Patch by Kevin@M*U*S*H. |
|---|
| 187 | * TZ attribute is now visual by default, since time() gets it anyway. |
|---|
| 188 | Suggested by Mike Griffiths. |
|---|
| 189 | Fixes: |
|---|
| 190 | * Fixes include from versions up to 1.8.0p6. |
|---|