Changes in TinyMUCK 2.0 - @prog -- see "forth.ref" and "technical.doc" - MUCKER bit must be set to use the above. - sanity has been updated to just ignore programs when checking. It should eventually be updated to check program owners and such. - m/ directory has been added to distribution --- this directory is used to contain MUF programs. Hence, restart also "backs up" that directory by moving it to m.old before starting. This directory may contain junk. - Changes in look, examine to reflect program changes. - Change to trigger to reflect it. - Change to game.c to test for interactiveness and act accordingly. - Rest of changes concentrated in edit.c, compile.c, interp.c, inst.h - wiz.c changed to update @stat command. - do_get had to be added. - concentrator "added" Note that conc.c has been slightly changed from the original to run on nyquist. Same thing applies to interface3.c (it differs from Robert's original distributions) Especially note that writelog has become #defined to printf. (I don't know where it was originally.) - #ifdefs for MIPS (Dec3100) stations. - TRUENAMES modifications no longer show names when you look at a linkable player. Changes in TinyMUCK 2.0.1 - Countless changes, see RCS log for info. - This is primarily a bug fix release, though it also does several design changes that should be hidden. Changes in TinyMUCK 2.1 - New commands: @boot, @edit, @list, @recycle (with -DRECYCLE), @pcreate (with -DREGISTRATION) - We now have true recycling of objects, courtesy of jmattson@ucsd.edu, adding a new type, TYPE_GARBAGE, which is considered first before @create makes a new object. - Extended WHO list for Wizards. Shows players' numbers, flags, times, IP address, and game location. - Exits may be set DARK by Wizards, to suppress the standard `has arrived.' and `has left.' messages. This should cut down on noise in areas with osucc'ed exits. - interp.c got a major makeover, thanks to jmattson@ucsd.edu and russ@uokmax.ecn.uoknor.edu. Many #ifdefs replaced with a single #def. Thanks much. - Changes in MUF: - Command line arguments from russ@uokmax.ecn.uoknor.edu. Many changes for the exit/action matching algorithm, enabling replacement of system commands as well. - TRIGGER variable. - RMATCH primitive. - OWNER primitive. - Six flag-reading primitives, JUMPP, CHOWNP, LINKP, DARKP, TEMPLEP, and STICKYP. See MUF.manual (formerly forth.ref) for complete details. In the version of MUF used by Muck 2.1, two MUF program words were changed which will make many old MUF programs incompatible. While this is somewhat inconvenient, the changes save a lot of code space and CPU time, and also make the language easier to understand since there is less swapping. We felt that it would be better to make this change now, while there aren't too many MUF programs out there, than to live with MUF being much less efficient than it easily could be. Those changes were: The order of arguments to the "!" word have been reversed. The order of arguments to "explode" have been reversed. The MUF documentation has been updated to reflect the changes. Changes in TinyMUCK 2.2 - New command: @trace. - New feature: environments. Allows global commands and allows builders to create their own theme areas. - Bugs fixed: @boot, a few memory leaks, problems with the COMPRESS option, many more... - Property list strings are now compressed with the COMPRESS option. - Player name and primitive hash tables added for speed. - Wizard WHO list has been changed again. Options are numeric IP addresses and all player flags displayed, or hostnames minus player flags. - Improved logging: logfiles are created in a separate directory and commands are kept separate from important system messages. - Concentrator version 2.0 added. - Another makeover for interp.c, including many speed enhancements. Thanks once again to jmattson@ucsd.edu. - Changes in MUF: - Programs can be triggered via the text fields of objects: the desc, succ, fail, and drop may run programs rather than display text to the user. - Macros may be added by MUCKERs to a global pool usable by all programmers. See edit help; while in the editor type 'h'. - COPYOBJ bug fixed; COPYOBJ now deletes the pointer to actions the new object inherits from the old. - Changed primitives: RMATCH handles players and objects correctly, in addition to matching appropriate exits/actions. The six flag primitives from 2.1.1, JUMPP, CHOWNP, LINKP, DARKP, TEMPLEP, and STICKYP have been replaced by one FLAG? primitive. FLAG? is able to read any flag the MUCK site has been set up with. All other P primitives, for example ROOMP, PLAYERP, have been changed to question marks: ROOM?, PLAYER?. CONTENTS no longer returns a list of things but the dbref of the first thing in the object's contents. This list is then traversed by NEXT. - New primitives: ELSE, OVER, PICK, PUT, ROT, ROTATE, GETLINK, PRONOUN_SUB, STRNCMP, STRCUT, STRLEN, INSTR, RINSTR, OK?, TIME, EXECUTE, EXITS, NEXT. MUF primitives are described in detail in the MUF programmer's reference, MUF.manual. The quick reference should be available on-site as helpfile forth.ref. -- Tinymage version 0.9 - Tons of things added. TONS of things. anyways, it's *mostly* mush compatible. if you find anything that screws up, mail to mtymp01@ux.acs.umn.edu. [ basically, alot of MUSH kludged on top of TinyMUCK 2.2 ] Changes in TinyMAGE 1.1 - Bugs fixed: flags, @halt, @ps, overrun buffer in unparse_boolexp() and pronoun_subtitute(), MUF editor 'v' option, kill, give, and more... - New commands: @aconnect, @aleave, @leave, @oconnect, @odisconnect, @odescribe, @oleave, @switch, @odesc - Improved commands: @find and @owned now take optional additional optional arguments. - New primitives: SYSTIME, STRFTIME, AWAKE?, ONLINE (was USERS in 1.0), SETPROP (was ADDPROP) - Removed primitives: DESC, FAIL, OFAIL, SUCC, OSUCC, DROP, ODROP, SETDESC, SETFAIL, SETOFAIL, SETSUCC, SETOSUCC, SETDROP, SETODROP, ADDPROP. These can all be taken care of with SETPROP now. - New features: alphabetized properties, more informative MUF debugger, player macros - Changed the rules on the MUF moveto primitive - player?, exit?, etc. now return 0 if the object is garbage - Desc, Fail, Succ, Drop, Ofail, Osucc, Odrop all converted to attributes (special properties) - Changed permissions on the moveto primitive - New attributes may only be added by Wizards. Otherwise, they are treated as normal read-only properties. - Changed configuration options in config.h. Added a few to params.h. - Reorganization of flags: CONTROLLER changed to use the ARCHITECT (Abode) flag. ENTER_OK and OPAQUE eliminated. OPAQUE changed to MURKY, good only on rooms and things. - Patched up security holes in 1.0. - Property structure changed back to that of 2.2, except that properties can only hold strings now. (No integer properties.) - Players can be @chowned by wizards. - @pcreate is available to any wizard regardless of registration. - Changed the db format, partly due to the change related to attributes. - Eliminated unused functions, cleaned up the code. - Eliminated the reading of older db formats, except for TinyMUCK 2.2 and TinyMAGE 1.0. - Added documentation lacking in 1.0. Changes in TinyMAGE 1.1.1 - fixed several bugs in interp.c, including the pronoun_eval MUF prim - fixed bug in @find - corrected a coding error in config.h, added some typecasting in game.c and interface.c to supress compiler warnings - added MUF primitives: connections, concount, condbref, conhost, conidle, contime, conboot, stringncmp, prog, depth - made attributes writeable only by wizards - cosmetic changes to the messages returned by @set, @field, @[attr] - corrected some mistakes in the documentation Changes in TinyMAGE 1.1.2 - added new parameter in params.h to allow setting of pennies for newly created players - rooms no longer set Jump_Ok when built - whenever a player creates an object, the player's "It" attribute gets set to the dbref of the new object - added in Chupchup's compile-on-demand patch - added Aconnect on #0 which affects all connecting players - fixed a bug in the MUF primitive getpropval - allow "me" and #<dbref> to be legitimate args to @owned, @find, @stats - allow @link <object>=me - changed parse_up to work with HP Apollo cc :\ - fixed a bug in @set (removing all the properties of an object with @set <object>=: would corrupt the db) - HAVENED flag no longer applies to the built-in pager - allow owners to @force objects they own - took out the call to pronoun_sub in do_pose and do_say. Since all triggered actions already go through pronoun_sub once, it was redundant to call it again. - changed the rules of control (controls() in predicates.c)