     __    __ __ ______  __    __    __      __ __ _____    ______ _____ 
    / /   / // // ____/ / /   / /   / /     / // // ___ \  / ____// ___ \
   / /___/ // // /____ / /___/ /   / / __  / // // /__/ / / /_   / /  / /
  / ____  // // //_  // ____  /   / / / / / // // _  __/ / __/  / /  / /
 / /   / // // /__/ // / __/_/__ / /_/ /_/ // // / \ \  / /___ / /__/ /
/_/   /_//_/ \_____//_/ / _____/ \________//_//_/   \_\/_____//______/
       ______ __    __ / /      ________ _____    ______
      / ____// /   / // /      / ____  // ___ \  / ____/
     / /_   /  \  / // /      / /   / // /__/ / / /_
    / __/  / /\ \/ // /      / /   / // _  __/ / __/       
   / /___ / /  \  // /_____ / /___/ // / \ \  / /___    OPEN SOURCE 
  /_____//_/   /_//_______//_______//_/   \_\/_____/    MOO PROJECT 
                                                        =================
                                                        C H A N G E L O G
                                                        =================
September 30, 2001. enCore version 3.2

enCore version 3.2 is a combined update and maintenance release. The update concerns primarily the MOOtcan telnet applet which has been updated to work with the Java 2 based VM in Mac OS X 10.1 which was available on Sept 29 in the U.S. So far, only MacOS X Internet Explorer 5.1 supports applets, but I expect the other browsers will soon follow. 

- Changed value of $xpress_client.java_client_filename to "MOOtcan.class" in order to use Java Archive (JAR) file instead of class files. 

- Modified $xpress_client:init_for_core to reflect new default MOOtcan class name.

- Modified $xpress_client.javascript_functions. Javascript function _MRJAdvise() will now prevent Mac users with old Java 1.0 browsers from connecting. Instead they are directed to the Xpress system requirements page.

- Added back button to web view for all objects except rooms. Thanks to Matthew Beerman for the suggestion. For aesthetical and consistency reasons, I decided to implement it via the Xpress contextual menu instead of adding a form-type button to the page view. New icon, back.gif was created for this purpose. Modified $encore_web_class:make_contextual_menu so that back button icon appears first, and @program $encore_web_utils:get_title to make contextual menu appear on separate line so that back button will always be in the same posision. Does not currently work in Netscape 4.X.

- Added ability to change alignment of descriptions, note texts, multimedia content. Thanks to my good friend John Barber for making this suggestion.

- Matthew Beerman found a security problem with $encore_utils:read. This verb has now been removed and $command_utils:read is used instead. Affected verbs are $note_board:configure and $encore_web_object:@webpref. Both of these verbs have been updated to use $command_utils:read. If anyone is using $encore_utils:read locally, they need to update their code to use $command_utils:read. Do a @grep $encore_utils:read to find any occurrences.

The good folks over at Achieve (http://achieve.utoronto.ca:2221), Jason Nolan, Matthew Beerman et. al. have passed along a number of fixes and enhancements. Matthew's explanation of these follows below. Thanks for the contribution, we sure do appreciate it!

$room:_html
- We altered it to use this:obvious_exits() instead of exit.obvious, since some rooms generate the list of exists in a dynamic and varying fashion.

$encore_web_utils:tell_locked
- We modified this so that rooms have the ability to set their own locked messages (that is, if the room defines a property .locked_msg, use it instead).

$encore_web_utils:move_via_web
- Now, the value of "player" is correctly set before the move is done; certain rooms' :exitfunc() and :enterfunc() were depending on player being a valid object, and thus failing.

$encore_web_object:_html
- Several changes here by popular demand: Most players preferred having the descriptions of $notes printed, so we removed that special case. And by overwhelming demand, we added a "Back" button to all objects (except $rooms), which simply returns you to the page you were viewing before. Otherwise, you have to look at the room again to get the description back. (Note: Back button was actually implemented via the Xpress contextual menu in enCore. -Jan)

$xpress_moo_mailer:compose
- We added an explanatory message on the expected format of the To: line, and a warning dialogue that prompts you before discarding a message in progress.

$xpress_object_editor:create_new_object
- This verb had a bug whereby if the user was over quota (around line 31), it would traceback later on because the values of vrb and object were never set. A simple typo we fixed.


	MOOTcan-0.50

	* Rewrote event handling routines in CommandTextField.java and ControlPanel.java to use Java 1.1 event handling instead of Java 1.0. The Java 1.1 TextArea is now used exclusively. This was done to add support for browsers running Java 2 VMs under MacOS X and possibly other platforms. The downside of this change is that older Java 1.0 based versions of Netscape under MacOS 8/9 will no longer be able to run MOOtcan without the MRJ-Plugin installed.

	* Rewrote calls to all deprecated methods throughout the program.
	
	* Removed class Modes.java since new event handling system has been implemented.

	* It is not generally recommended to mix Java 1.0 and Java 1.1 code in a program so I cleaned out as much 1.0 code as I could. The rest will have to wait.

	* Up arrow and down arrow can now be used for history navigation in CommandTextField.java. Should work in all browsers.

	* Removed package statements from all classes. Couldn't see that these serve any purpose in this program.

	* Since we no longer need to worry about Java 1.0 browsers, I'm now using jar to wrap the applet into an archive. The loadtime should improve quite a bit now since the browser no longer has to make several http connections to download all the program classes. 

	* Upped the max character display of UserOutputArea to 25.000 characters. 	

	* Removed some debugging code from various classes.

	* Generated new and updated JavaDoc Documentation.


September 17, 2001. enCore version 3.1

- Wrote new system to allow automatic character creation in Xpress. This is off by default, but administrators can turn it on in the Wizard Module's enCore settings. When on, a button named 'Create Account' will appear on the login screen allowing users to create accounts automatically without having to go through the current screening process. Modifications include changes to $administration_module:core_settings, $administration_module:edit_naming, $Xpress_login:login, $guest:_web_menu, plus new verbs $administration_module:edit_login, and $xpress_login:character_application_html.
Thanks to Claudijo Borovic for suggestions and contribution of code.

- Implemented support for embedded audio content. Users can now connect both audio and visual multi-media content to MOO objects. An option to specify audio content has been added to the Xpress object editor. Audio content is invisible and will play automatically when users look at an object with such associated content. Changed the default sound setting to on, volume low for all players. Players who do not wish to hear audio content may turn sound off using the sound preferences under the Options toolbar button. Modifications affect the following verbs: $xpress_object_editor:edit_url, $encore_web_object:_html, and $encore_web_utils:make_sound. A new property $encore_web_class.audio_url has been added. Updated help text for $encore_help.quick_editing. Thanks to Dene Grigar for suggesting this feature.

- Added MP3 to list of recognized extentions in $httpd.embed_file_suffixes.

- Added HTML comments to the following _html verbs: $encore_web_class:_html and $room:_html.

- Added the ability to run slide shows on $webprojector. New commands added include $webprojector:"start stop reset" and $webprojector:@setdelay. Thanks to Lennie Irvin for suggesting this new feature.

- Fixed a bug in $encore_web_utils:get_icon that broke the system when users asked for objects with no icon property. This fix was previously released unofficially as enCore 3.0.3b1. Thanks to Claudijo Borovic for reporting this bug.

- Removed redundant code from $xpress_login:login. Thanks to beuja@iinet.net.au

- Modified $slide_projector:show to remove redundant empty lines. Thanks to Lennie Irvin for suggestion and Rv for code.

- Modified $note_board:remove to allow the note board's owner to remove posted notes. Thanks to Emily Marcus for suggesting this change.

- Fixed a permissions bug in $note_board:configure.

- Modified Message of the Day alert to not show popup alerts to guests. In MOOs where guest self naming is enabled there has been reports of problems where the MOTD alert would interfere with guests' ability to name themselves. Guests now see the MOTD message in the java applet instead.


August 21, 2001. enCore version 3.0.2

- Fixed a bug in the Xpress web server response header. Content type was not always returned and this caused Xpress to break on some http standards compliant browsers. Modified $httpd:generate_server_response_header and $httpd.checkclient. This version has been tested with Mozilla 0.9.3 and Netscape 6.1 on MacOS 9.1 and Windows 2000.

Thanks to Andreas Bogk for help in troubleshooting this issue.


July 20, 2001. enCore version 3.0.1

- Fixed a problem with Xpress Program Editor in MOO's built prior to the original enCore database. When $server_options.support_numeric_verbname_strings was set to 1, Xpress would erroniously pick the wrong verb. The fix for this include modifications to $xpress_program_editor:edit_verb, $xpress_program_editor:delete_verb and $xpress_program_editor:compiler_html. In addition, I also fixed a potential problem with identically named verbs in $xpress_program_editor:compiler_html. This was done by using verb number instead of verb name as reference. Thanks to Beermann for help with troubleshooting this issue.

- Fixed a performance issue with $xpress_object_editor:editor_html

- Modified $httpd:generate_server_response_header and removed a semi-colon from set cookie instructions to prevent breaking authentication from certain browsers.

- Fixed a display bug in $help_browser:help_contents_html. Thanks to Hervé Collin.

- Fixed typos and grammatical errors in certain help properties.


April 15, 2001. enCore version 3.0

- Redesigned the Xpress Client interface with 361 new icons and toolbar buttons. Implemented support for themes. Users have 10 default themes to choose from. New themes can be added fairly easily.

- Added TITLE tag to icons, so tooltips now work on all platforms.

- Added a web hits counter that will keep track of how many times an object has been accessed. The counter is stored in $encore_web_object.hits. Modified $encore_web_object:_html and added verb $encore_web_object:update_hits

- Wrote new subclass of $encore_web_application named $encore_cgi_application to allow for unauthenticated access to  access to Xpress applications. This allows a wizard to write CGI/PHP type scripts as MOO verbs and use the MOO as a backend database structure. Added property $encore_cgi_application.allow_anonymous_access (0/1) that governs whether or not a cgibin application can receive data from unauthenticated connections. Anonymous access is on by default, but fertile is set to -f to prevent non-wizards from using this class. Modified $httpd:authenticate, and added verb $encore_web_utils:anonymous_access. Removed property $xpress_client.HTTP09_registry.

- Renamed $httpd:execute_http_request to get because the name was too darn long ;-)

- Redesigned the Xpress login pages. Create new $encore_cgi_application named $xpress_login. Moved old :display_login_page to this object and renamed it login. Wrote new verb :login_page which will display two frames, one with the login form, the other with the MOO's custom login screen. This solves the problem of dependency between the two. Made modifications in $httpd:get, $httpd:authenticate, and $xpress_client:initialize_session to accommodate the new system.

- Added DOCTYPE to $encore_web_class.

- Updated the Who Browser. Added column for activity message. Removed search capability since this is already implemented in $search_engine. Added alias @activity to $player:@doing

- Designed new combined verb and property editor named $Xpress_Program_Editor. The new editor can handle all types of properties including lists of lists. The $Xpress_Property_Editor is now defunct and has been removed.

- Modified $xpress_verb_editor:compiler_html and the way prepositions are determined to fix problems with prepositions of more than one word.

- Updated Xpress About ($moo_info:about_html) with information on uptime and last backup time.

- Fixed a potential bug in $xpress_client:initialize_session

- Modified the Xpress bookmark application to allow users to add their own personal bookmarks of rooms they visit frequently. Added property $player.xpress_bookmarks, modified $xpress_navigator:bookmarks_html, added verbs $xpress_navigator:"add_bookmark remove_bookmark", and wrote new help text.

- Added Bookmark, Generics and Message of the Day editors to the Xpress Administration Module.

- Wrote new Message of the Day (MOTD) login-announcement system. Wizards now have a convenient way to display short messages to users when they log in. Added verb $administration_module:edit_motd_html, modified $player:confunc, added $xpress_client:check_motd, modified $xpress_client:Xpress_Confunc. Wrote help text for the MOTD system. 

- Wrote new Generics Management system. Wizards can now easily create new Object Editor generics categories and add or remove generic objects from these categories. Removed old generics storage on Object Editor and replaced it with $xpress_object_editor.generics. Added verbs $administration_module:edit_generics_html, $administration_module:"create_generics update_generics delete_generics", and $xpress_object_editor:init_for_core. Modified verb $xpress_object_editor:classes_html. 

- Rewrote the Core Settings/Preference system on Administration Module to use a new menu-based selection system. Added and updated various preference settings.

- Removed ability to save Xpress Notebook and Log to disk. The reason is that browsers on different platforms handles saving differently, and thus we experienced various problems in getting it to work across platforms. Modified $xpress_navigator:notebook and $xpress_navigator:MOO-Log, and removed $xpress_navigator:save_to_disk.

- Rewrote the Object Editor. Quick editing is no longer done in one long form. Editing options are instead defined by new verbs named Xpress_edit on the generic objects. Users now have the option to share objects with others for collaborative editing. A shared object can only be programmed by it's owner, however, and properties that are not available for Xpress editing can only be modifed by the object's owner. A confirmation dialog on recycling was added to prevent accidental recycling of objects. In the new system, several verbs for manipulating properties has been moved from the defunct property editor to the object editor. Fixed an object matching bug in $xpress_object_editor:view_html.

- Added user control of screen size and and screen division. Available screen sizes are 640x480, 800x600, 1024x768 and Full Screen (default). Available divisions between the talk and web areas are 30%/70%, 40%/60%, 50%/50% (default), 60%/40%, 70%/30%. Added administrator system wide control of these settings to Xpress MOO Administration, enCore Settings.

- Fixed a problem with $Xpress_object_editor:recycle_object where recycling of rooms did not clean up and recycle entrances and exits.

- Added confirmation dialogue to deletion of accounts in Xpress account administration. 

- Fixed a bug in $xpress_MOO_Mailer:delete_mail_html. Added quick links to delete mail from main folder contents view, and removed the delete mail button from $xpress_moo_mailer:view_html.

- Wrote a new system for sharing objects through the Xpress Object Editor. Additional owners may now edit properties that are made available through the Object Editor. Shared owners may not edit verbs or other properties, nor cann they recycle objects. Added new verbs $Xpress_object_editor:edit_sharing, $xpress_object_editor:share_object and $xpress_object_editor:permission_to_edit, and property $encore_web_class.shared_owners. Wrote help text on $builder_help.

- New xpress edit function added to contextual menu. Objects that the user can edit now has a small pen icon next to their name. Clicking on the icon opens up the Xpress Object Editor with the selected object ready for editing. 

- Added the LambdaMOO Programmer's Manual to the core distribution. Added new property $xpress_client.texts. Thanks to Pavel Curtis.

- Redefined the size and layout of all enCore web application windows. Made windows resizable by default, except for $xpress_client and $mootcan. If these windows are resized some browsers will crash because java does not handle dynamic resizing of Applets.

- Updated $xpress_object_editor:set_property, and added new verb $news:notify_Xpress_change. Users will now be notified about news items updated through Xpress.

- Fixed a bug in $encore_web_utils:get_text_linebreak. Thanks to Hervé Collin for reporting.

- Changed the data type of exit messages from integer to string so they can now be edited in Xpress. Also fixed $encore_web_utils:move_via_web so that it now uses exit messages if they exist. If not, it defaults to standard movement messages.

- Fixed a problem with the anonymous browse mode on login. It now displays toolbar and location in MSIE

- Changed the Xpress Object layout system from presentational tags to stylesheets. An embedded stylesheet is generated on-the-fly for each object. Alternatively, a MOO administrator can opt to use external stylesheets for greater layout consistency. Cleaned up and removed presentational tags <FONT>, <BGCOLOR> etc from Xpress code. 

- Rewrote the Xpress object appearance scheme. In the new system, the appearance of an object is controlled by the owner of the object. A user can still override these settings and use their own. This option, however, is off by default.

- Renamed $encore_web_application:pre_assemble to :build, and moved it to $encore_web_class

- Installed VASE version 3.0. Thanks to Jason Nolan and Matthew Beermann for updating this excellent application!

- The following verbs on $encore_web_utils have been DEPRECIATED: generate_head, get_page_properties. These verbs have been replaced by make_head, make_body and make_page. The depreciated verbs are still present in the core, but programmers are strongly encouraged to update their code to use the new verbs instead. $encore_web_utils:set_font_properties, and $encore_web_utils:font_size has also been depreciated due to the new stylesheet based layout system.

- The enCore 3.0 update consists of over 12500 lines of code so it's impossible to document every change here. Please see the patch file itself for details.

June 18, 2000. enCore version 2.1.1

- Fixed a missing character substitution in $xpress_navigator:menu_html. Thanks to William Painter for pointing out this problem.
- Fixed an issue with $xpress_client:check_moo_mail that broke login for players.
- To prevent future issues with the above I made $frand_class the default $player_class and rewrote $administration_module:view_html so that all new player objects made with Xpress will be based on $frand_class by default. Thanks to Roy Kennedy and others on the enCore-list for bringing this issue to our attention.

June 9, 2000. enCore version 2.1

- Removed $web_slate. This object is no longer being supported by its developer and does no longer work.
- Modified the locking system so that it works properly with Xpress. This required modifications to several _html verbs.
- Modified the generic classroom so that objects such as recorders placed on tables pick up conversation.
- Added new command @hide that allows players not to be listed in the who listing if they wish. Modification to $player:@who required.
- Fixed a problem with $guest:do_reset that caused guest accounts not to be properly reset.
- Added a fix to #0:"do_out_of_band_command" so MacMOOSE and tkMOO works properly with enCore. Thanks to Stephen Ashley for contributing this fix.
- Modified $xpress_navigator:menu_html to add button for the VASE system.
- Added Jason Nolan's Virtual Assignment Server Environment (VASE). This system consists of three new core objects, $assignment_server, $assignment, and $assignment_help. For more info see http://achieve.forestry.utoronto.ca/vase/. Thanks to Jason Nolan and Matthew Beerman for contributing the VASE system to the enCore project.

April 1, 2000. enCore version 2.0.6

This patch addresses certain compatibility issues with Microsoft Internet Explorer 5.0 for Macintosh which was released on 03/26/00. The fixes in this patch makes Xpress work with this browser. There are, however, a few outstanding issues. See below.

- Fixed a bug in $Xpress_Navigator:MOO_log that I overlooked in the last patch.
- Fixed an MSIE 5.0 Mac compatibility issue in $xpress_moo_mailer:compose.
- For some strange reason MSIE 5.0 Mac displays Applet ALT tags. Had to modify the Javascript in $xpress_client.javascript_functions, as well as $mootcan:standalone_html to prevent the browser from erroneously showing a message saying that Java must be enabled.
- Removed reference to Netscape Live Audio plug-in in $player:quick_edit.
- Updated the Xpress FAQ with information about MSIE 5.0 Mac.

Outstanding issues with MSIE 5.0 Mac

- MSIE 5 uses the default sans-serif font to override page specified fonts in all forms. This means that in the default setup, ASCII drawings look skewed in the Xpress Editors. I have never encountered this problem in any other browser. Workaround: Use a monospace font such as Courier as default sans-serif font.
- Save to disk in the Notebook and Log applications is broken. MSIE 5 Mac uses a download manager to fetch files and documents. So far I have not been able to find a solution to this problem. Workaround: Save via email instead.

March 25, 2000. enCore version 2.0.5

- Fixed a permission issue with $player.Xpress_Notebook and $player.Xpress_Log. Both properties are now -rc
- Removed the following verbs $encore_web_utils:text_save_options $Xpress_Navigator:log_options and $encore_web_application:generate_plain_text. A revised save to disk system makes these verbs obsolete. The property $httpd.text_mime_types was removed for the same reason. See below.
- Added properties $player.Xpress_Confunc_Msg, $Xpress_Client.MOTD_Msg, $Xpress_Client.MOTD_viewer_list, $Xpress_MOO_Mailer.messages_to_display. The MOTD (Message of the day) properties are not being used right now, but was added in preparation for new features in an upcoming version.
- Added a series of reserved characters and words to $player_db.reserved
- Modified $encore_web_utils:form so that 'simple' forms beginning with only a FORM tag is no longer possible. This was done to ensure that all forms are received as POSTs by Xpress.
- Rewrote $xpress_navigator:MOO-Log to fix problems with lost logs. The new system should prevent loss of data.
- Updated $Xpress_Navigator:Xpress_Notebook to take advantage of new features. See below.
- Wrote a new system that allows the Log and Notebook applications to save data to disk or via email. Contents in these applications can now also be erased. New verb $xpress_Navigator:save_via_email was added.
- Fixed a small issue with $Xpress_MOO_Mailer:sendmail where the subject was included as the first line of the mail message.
- Added new verb $Xpress_client:Xpress_Confunc. This verb is used to generate various login messages when users connect with Xpress. Called from $xpress_client:menu_html.
- Updated $player:reset_xpress_session. This verb now informs players about aborted logs next time they log in.
- Fixed an issue with $encore_web_utils:make_sound that caused certain browser plug-ins to throw exceptions. Thanks to Matthew Beermann for suggesting this fix. 
- Added Matthew Beermann's update to $encore_web_utils:detect_urls. URLs that are already marked up will now be ignored.
- Added a new verb $Xpress_MOO_Mailer:permission_to_read that provides authentication services to Xpress MOO Mailer verbs.
- Rewrote the Xpress Mailer so that only a certain number of messages in a mail box is displayed at any given time. A quick access menu is automatically generated to provide easy access to other messages in the mail box. This update required modifications in $Xpress_MOO_Mailer:contents_html, $Xpress_MOO_Mailer:folders_html, and $xpress_MOO_mailer:view_html.
- Modified $Xpress_property_editor:set_property_html once again. This time I believe the problems related to player names and aliases has been properly adressed through the addition of $Xpress_property_editor:rename and the modification of $player_db:why_bad_name and $encore_web_class:quick_edit.
- Added Matthew Beermann's new version of $encore_web_utils:parse_url that makes it possible for non-$encore_web_applications
to have web-enabled verbs other than :_html, so long as they are +x and end
in _html
- Updated the following help texts to reflect changes in this version: $encore_help.logging, $encore_help.notebook, and $encore_help.quick_editing.

February 13, 2000. enCore version 2.0.4

- Fixed a problem with $xpress_client:character_application_html so that information in the form is preserved in case the chosen name is already taken and the form has to be returned to user.
- Modified $xpress_property_editor:main_html call $encore_web_application:blank_html.
- Fixed a rather serious bug in $xpress_property_editor:set_property_html where player names were not treated as special cases, and thus, were not updated in the $player_db. This led to problems with page @join etc for folks who had changed their names using Xpress. Wrote a small utility verb that fixes current name problems. 
- Fixed an elusive bug in $encore_web_utils:form where forms were not sent with method POST specified. This caused certain clients such as MSIE to truncate long posts. Thanks to Roxanne Mountford and the OldPuebloMOO wiz team for bringing this to our attention. This should also solve the problems Windows users have had with compiling long verbs and saving long texts.
- The bugfix above led to three other problem with $encore_web_utils:parse_multipart_form_data. 1) Had to trim off leading and trailing quote marks added by the sending client. 2) Had to set the verb - d (-debug) to prevent it from throwing a Range Error 3) Had to comment out an if-statement that began to return empty strings as empty lists. My tests have not yet produced any problems after these changes, but since this is such a crucial verb, it is possible that we'll run into situation that cause problems. Will have to keep an eye on this.
- Modified $who_browser:main_html so that the window closes automatically when clicking on a player name in the who-listing.
- Updated copyright notices in $xpress_client:display_login_page, $encore_web_utils:generate_head and #0.license.
- Modified $player:quick_edit so that it won't show encrypted old password. Some folks have claimed that the old way was confusing.
- Modified $quota_utils:bi_create to avoid an obscure bug that causes $builder:_create and $quota_utils:bi_create to start calling each other in a loop only terminated by the Too many verb calls exception. Thanks to Roxanne Mountford and the OldPuebloMOO wiz team for bringing this to my attention.
- Adjusted certain window sizes to make them larger and better looking in Microsoft Windows.

November 28, 1999. enCore version 2.0.3

- Set Xpress Who Browser to use available screen height by default.
- Rewrote $moderated_room. Added verb _html, and modified :announce_question and :look_self. In the new system it's easier to see who is in the panel and who's in the auditorium. Thanks to Traci Gardner and Eric Crump for suggesting this.
- Modified $recorder so folks can make their recording devices private or public as needed. Thanks to Al Rea for this suggestion.
- Fixed a bug in $encore_web_utils:parse_url_encoded_form_data
- Fixed a bug in $who_browser:main_html
- Added verb @beep by Noel Davis. Users can now use system beep to get each other's attention.
- Fixed a bug in $player:check_arrive_and_depart_msgs that printed wrong message. Thanks to Gary Stringer for finding this.
- Fixed a long standing issue with $xpress_verb_editor:edit_html that caused arguments not to be changed correctly. Thanks to Gary Stringer for tracking it down.
- Updated help messages for $recorder and $moderated room to reflect the changes mentioned above.

- Sindre Sørensen has updated the MOOtcan telnet applet to version 0.1.16. Sindre's changelog follows below. The complete source for MOOtcan can be found on Sindre's site at http://cmc.uib.no/~sindre/mootcan/

    MOOtcan-0.1.16
    * fixes modes to not issue a command if nothing in addition to command is
      entered. 
    * first checkbox is always enabled


October 10, 1999. enCore version 2.0.2

- Fixed a bug in $guest:do_reset that prevented guest accounts from being properly reset and freed up for new use. 
- Wrote a small temporary routine that will run through all guest accounts and reset them to their default state. 

The bug addressed in this patch was introduced with version 2.0.1 of enCore, and should only affect MOOs that has been upgraded to that version. If you upgrade your MOO to version 2.0.1 you must also apply the 2.0.2 patch to avoid the problem described above.


October 4, 1999. enCore version 2.0.1

- Updated enCore web site references in the code to point to new enCore home site.
- Changed permissions on $player.recording, $player.Xpress_log, and $player.Xpress_notebook to increase privacy and security.
- Updated $xpress_client:init_for_core
- Sindre Sørensen updated the following enCore httpd verbs to allow trace back type error messages to be included in HTTP 505 responses: $httpd:do_login_command, $httpd:execute_http_request, $httpd:watch, $httpd:log, $httpd:generate_server_response_header, $list_utils:find_insert, $encore_web_application:blank_html, $list_utils:flat_list_of_str. Sindre also wrote the following new verb to accommodate the same system: $httpd:generate_traceback.
- Modified $httpd:display_login_page and $xpress_client:menu_html to include copyright reminders.
- Fixed bugs in $encore_web_utils:make_sound, $encore_web_utils:generate_table, $note_board_html, $encore_web_utils:generate_links, $encore_web_utils:parse_multipart_form_data (Tanks to Matthew Beerman), and $httpd:collect_user_agent_POST (Thanks to Matthew Beerman).
- Made the ASCII generated image of $recording_system narrower in order to fit better in the Xpress MOOtcan frame.
- Modified $moderated_room:enterfunc to prevent code from breaking when used with Xpress.
- Wrote new verb routine to handle cleanup after disconnecting from Xpress. Modifications include new verb $player:reset_xpress_session, and modifications to $player:disfunc, $guest:do_reset, and #0:user_reconnected.
- Fixed a long standing bug with @go and @join whereby folks could enter and leave rooms unnoticed if their oarrive and odepart messages had been deleted. Thanks to Tari Fanderclai for reporting this.
- Fixed a problem with the Xpress Navigator Log so that it now also work with Internet Explorer.
- Fixed misc problems related to certain verbs running out of ticks.
- Updated $readme and $guide text files.

- Sindre Sørensen has updated the MOOtcan telnet applet to version 0.1.12. Sindre's changelog follows below. The complete source for MOOtcan can be found on Sindre's site at http://cmc.uib.no/~sindre/mootcan/

	30 September, 1999. MOOtcan-0.1.12
		* Changelog started
		* new button to allow choosing between normal / talk / emote - modes
		* inputarea: pressing page down will give a new blank line, but keep
	      the old one in history for later usage
		* users will be told when connection can't be made, due to firewalls
		  etc
		* compability with java-1.0.2 is probably good
		* Page Up / Page Down works in all browsers


June 1, 1999, High Wired enCore version 2.0

- Wrote a new Xpress Bookmark manager under $administration_module
- Rewrote $xpress_manager:bookmarks_html to use the new system
- Added user note book and log applications to $xpress_navigator
- Added support for mime types other than "text/html" and wrote verbs for downloading pages to disk.
- Added a try-except construct to $httpd:execute_httpd_request to catch trace backs and present users with an Internal Server Error page instead.
- Fixed a bug in $encore_web_utils:get_icon and $encore_web_object:_html which caused Internet Explorer not to display images and icons properly.
- Rewrote $encore_web_utils:generate_table to include tags for Cell width. This should speed up display of MOO objects with tables quite a bit.
- Fixed a bug in $encore_web_utils:make_sound whiched caused sounds to loop indefintly on some systems.
- Added a link to the enCore home page in the Xpress tool bar.
- Fixed some display issues with Windows browsers.
- Made all windows and frames non-resizable to prevent loss of data due to reloads and Browser crashes due to resizing.
- Wrote new help texts for:
	- $prog_help.Xpress_Verb_Editor
	- $wiz_help.enCore_MOO_administration
	- $wiz_help.enCore_Account_Creation
	- $wiz_help.Xpress_Bookmark_Editor
	- $encore_help.Mailing_Lists
	- $encore_help.Xpress_Navigator
	- $encore_help.NoteBook
	- $encore_help.Logging
	- $encore_help.Bookmarks
- Started a new enCore Xpress FAQ web page linked from the MOO login page.

Thanks to Klaus Schwienhorst and Juli Burk for comments and bug reports.


May 16, 1999, High Wired enCore version 2.0b12

- Added new routine, $encore_web_utils:is_HTTP09_accessible, for determining whether web pages from the MOO is to be authenticated or not.
- Fixed bugs in $httpd:execute_http_request and $httpd:authenticate introduced in beta 11.
- Fixed a bug in $who_browser:main_html
- Fixed a bug in $xpress_client:menu_html
- Fixed a bug in $xpress_client.checkClient Javascript
- Rewrote $help_browser:help_contents_html to sort help items alphabetically.
- Fixed bugs in $xpress_moo_mailer:folders_html and contents_html
- Reorganized the text in $xpress_client:display_login_page
- Fixed a bug in $moderated_room:look_self
- Modified the object editor to allow new users to connect their first room to a pre-defined room_connection_point. Valid connection points should be stored in #0.room_connection_points
- Rewrote the MOO administration module to allow for easy multiple account creation.
- Fixed a bug in $xpress_verb_editor:edit_html
- Modified $xpress_property_editor:set_property_html so that it returns the page a user was working on after save.
- Updated help texts $encore_help.macintosh_troubleshooting and $bot.help_msg
- Fixed several outstanding bugs in $administration_module:core_preferences_html
- Modified $player:quick_edit to allow users to specify link, visited link and active link colors.

Thanks to Jill Walker, Dene Grigar and Jason Nolan for bug reports and comments.


April 23, 1999, High Wired enCore version 2.0b11

- Added a check to $wiz:@configure to make sure the Xpress base URL ends with a forward slash. Thanks for Jason Nolan for pointing this out.
- Fixed a bug in the Xpress MOO mailer that caused the mail reader window to be drawn incorrectly
- Fixed bugs in $administration_module that prevented character info to be modified.
- Fixed a bug in the $administration_module core configuration page so certain login properties are set correctly. Thanks to Ken Tompkins.
- Fixed a bug in $guest:do_reset so that the display_drawings property is reset correctly. Thanks to Matthew Campbell for pointing this out.
- Fixed a bug in $xpress_client:java_html so MOOtcan will display different font sizes. Thanks to Sindre Sørensen.
- Reorganized the Login Page to clarify system requirements.
- Reorganized the way icons are set and displayed. Allowed for users to specify custom icons in the object editor.
- Added controls for image/embedded content and icon heights and widths to the object editor.
- Fixed a bug in $recorder:play
- Added new help item, Collaborative Web Browsing
- Made it possible not to display of ascii graphics in Xpress if images are present.
- Added enCore Xpress copyright notice to menubar.


April 15, 1999, High Wired enCore version 2.0b10

- Wrote and installed the new enCore Xpress web server and MOO client system. The system consists of the following new objects:
- $encore_web_class
	- $encore_web_object 
	- $encore_web_application
		- $Xpress_client
		- $MOO_info
		- $encore_help
		- $help_browser
		- $who_browser
		- $Xpress_MOO_mailer
		- $Xpress_property_editor
		- $Xpress_object_editor
		- $Xpress_verb_editor
		- $administration_module
		- $search_engine
		- $options_manager
		- $MOOtcan
		- $Xpress_navigator

- Wrote new set of help texts for $encore_help. Distributed in separate file
- Complete re-write of $httpd to make it HTTP/1.0 compliant
- Wrote several new utility verbs on $encore_web_utilities
- Completely overhauled existing enCore 1.1 web code.
- Designed whole new set of icons and buttons to be used with enCore Xpress
- Sindre Sørensen wrote a new telnet applet for Xpress named MOOtcan

Special thanks to Sindre Sørensen for invaluable contributions to this version of enCore.


October 19, 1998, High Wired enCore version 1.1

- Installed support code for the MCP/2.1 protocol. The following objects were
created and installed: Generic message dispatch object, Generic MCP package,
mcp-negotiate, mcp-cord, MCP 2.1 parser, MCP 2.1 session, MCP package registry,
and MCP 2.1. Thanks to Ken Fox and Andrew Wilson for the contribution of this
code.
- Updated $player:@about with new information on MCP if installed.
- Fixed bugs in $wiz:@configure
- Added new verb $player:@doing and modified $code_utils:show_who_listing to 
include new information in @who listings. $player:"name title" was also updated


April 15, 1998, High Wired enCore version 1.0

- Updated $player_start.core_description
- Updated core welcome screen
- Added property #0.nowhere and moved $character_request_room there
- Initialized properties on enCore web class, and added new prop table width
- Moved property .time from $news_item to $note, and added new property .author_name on note.
- Updated $note:set_text to timestamp notes and record author name
- Fixed bug in $character_request_room:init_for_core
- Updated $player:page to add support for enhanced page and remote emote options as well as quick reply
- Updated $encore_web_utils:generate_head
- Updated $httpd:_html
- Rewrote $encore_web_class:_html
- Rewrote $room:_html to use new table function
- Updated $container:_html
- Fixed missing font and size in $player:_html, and $note:_html
- Added _html verb to $news
- Added _html verb to $recorder
- Added verb insert_line_breaks to $encore_web_utils
- Completely rewrote $encore_web_utils:generate_table to make it more flexible
- Updated $encore_utils:make_table
- Added verb read to $encore_utils
- Wrote new verb $encore_web_class:@webpreferences to make it simple for users to set web preferences for their objects
- Renamed $wiz:@core-setup to @configure-core and updated it with options for new guest name system
- Added Rui Miguel Barbosa Pinto's verb @generic-kids to $prog
- Fixed bug in $channel_fo:@xswitch
- Fixed bug in $webpage:description
- Updated $builder:@create with an easy to use creation menu. Type @create without arguments to use the menu instead of the command line
- Wrote new verb on $note called "copy paste". This verb was written to simplify editing of notes.
- Updated $player:@about
- Wrote and corified new Generic Note Board object. This new note noard will accept real notes that may also be read from the web via the enCore web interface. This new generic replaces the old note board in enCore 1.0.
- Wrote new system that will allow guests to select their own names instead of using the predefined names. System is off by default and must be enabeled with the @configure-core command. 
- For new guest system #0:user_connected and $guest:do_reset was modified, and new verb $guest:set_guest_name was added. The following properties was also added: #0.real_guest_names, #0.guest_name_suffix, $guest.default_name, and $guest.default_aliases
- Renamed $guide to MOOniversity Lite
- Updated the in-MOO homepage ($homepage)
- Updated the High Wired enCore administrator's guide ($readme), and renamed it to enCore Administrators Guide.



February 7, 1998, High Wired enCore BETA 4

- Updated the MOO User Guide ($guide), the Administrators Guide ($readme) and the MOO homepage ($homepage).
- Created new utilities packages, $encore_utils and $encore_web_utils.
- Created new class $encore_web_class for web related verbs and properties
- Inserted a call to $command_utils:suspend_if_needed in $object_utils:decendents to prevent it from running out of ticks
- Added new utility verbs @mvprop and @renprop on $wiz. Thanks to Rui Miguel Barbosa Pinto (a.k.a. Dominus@Atlantis)
- Rewrote the enCore web inteface to v 2.0 to add more functionality such as completely user-customizable HTML layout of objects, support for sound, streamed audio and video, graphics, animations,  java, page header and footer, object icons and more. Web interface specific changes:
   - Chparented $player, $room, $thing, and $exit to $enCore_web_class
   - Moved property #1.url_address to $encore_web_class
   - Moved _html, view, display and connect from #1 to $encore_web_class
   - Added a number of layout properties to $encore_web_class, $room, and
     $httpd. Please see @display $encore_web_class., @d $room., and 
     @d $httpd. for details.  
   - Renamed $httpd:get to generate_html
   - Rewrote all _html verbs on $encore_web_class, $thing, $room, $note,
     $container, $webpage for new functionality and flexibility.
   - Wrote several new verbs web utility verbs on $enCore_web_utils:
     Please see @d $encore_web_utils: for details
- Installed SR Porter v 4.6 (MOO code porting feature) by Michael Thompson
  Corified at $SR_porter
- Installed IRC-style in-MOO chat channel features. Corified as $channel and 
  $channel_FO. Wrote help for both objects. Thanks to Mark Blanchard for code
  contribution.
- Installed Generic Gopher Slate, Generic Web Slate, and Webslate Utilities,
  corified as $gopher_slate, $web_slate, and $webslate_utils. Thanks to Nils 
  McCarthy
- Updated $recorder:stop_recorder to take advantage of the new auto HTML markup
  features in the enCore web interface.
- Wrote and installed new verb @preferences on $player. This verb will make it
  easier for users to set all their preferences at once with an easy to use 
  interface.
- Rewrote @core-setup on $wiz to allow users to change core settings after it
  has been customized.
- Renamed $player:time to "time date" and added time zone information
- Updated $classroom:look_self to show drawings properly
- Updated $player:@uptime to include checkpoint information
- Wrote new verb on $wiz @make-mail-list to make creation of in-MOO mailing
  lists easier to handle.
- Wrote new command $player:@about that display vital server and database
  information.
- Wrote new user account administration feature for wizards. $account_admin_FO
- Wrote and installed $public_writable_note, which will let anybody write on
  it. Authors can be anonymous or identified.
- Added call to $command_utils:suspend_if_needed() in $room:announce,
  $room:announce_all, and $room:announce_all_but to prevent them from
  running out of ticks when there are many people in a room.
- Wrote and installed Generic Room Directory, corified as $room_directory
- Renamed $stage_talk:to to "`* to". Dash, -, no longer works for directed
  speech.
- Renamed $player:page to "page -* '* +*". This was done to add quickpage -
  and ', and remote emote +.
- Added verb $time_utils:short format
- Changed $player:titlec to tell if a player is asleep or how long he or she
  has been idle.
- Wrote new verbs $player:"@kn*ock @inv*ite @busy"
- Added $builder:@histogram, verb for graphical display of quota usage.
  Thanks to Jorge Barrios for code contribution.
- Added $lag_meter, $census_FO, $SR_porter, $account_adm_FO as default features 
  for $wiz
- Added init_for_core verbs to the following objects: $wiz, $lag_meter, 
  $census_FO, $account_admin_FO, $SR_porter, $gopher_slate, $web_slate,
  $public_writable_note, $room_directory, $channel, and $channel_FO.


December 17, 1997, High Wired enCore BETA 3C

- Added verb $biglist:_call
- Updated $biglist:find_ord
- Updated $biglist:_find_ord
- Updated $biglist:_skill

November 4, 1997. High Wired enCore BETA 3B

- Added alias who to $player:@who
- Added calls to $room:tell_exits in $moderated_room and $classroom. All
generic rooms will now report exits if the property tell_exits on the room is
set to 1 which it is by default.
- Fixed bug in $frand_class:@go
- Fixed a bug that caused trace backs from $moderated_room:tell_contents
- Changed default player class to $frand_class
- Updated $wiz:@core-setup to ask for personal info and force the player to set
a password for #2
- Modified $classroom:`* to accept the verbs `*, -*, and to
- Removed $stage_talk:` and renamed it to $stage_talk:"`* -* to". This was done
in order to avoid confusion among users with regard to output.


October 26, 1997. High Wired enCore BETA 3A

Note: Version BETA 3A is identical to version BETA 3, with the exception
that the BioGate System is no longer included in the core.

- Wrote new @core-setup verb that will guide new administrators through
the initialization of the MOO database.
- Added properties, core_version, core_name, core_copyright, and core_
homepage to #0.
- Removed $frand_class:@join
- Renamed @htmlview verb on $player to @htmlcode
- Updated $room:_html
- Modified $player:@set-note-text.
- Added new verb @email to $wiz. Will let administrators send $note objects
as email from the MOO.
- Modified $network:return_address_for to return real name and email address
if !$anonymous_users
- Added verb @code to $prog. Will list verb code without line numbers
- Added verb @properties to $prog. List all properties on an object
- Fixed a bug in $build_options:"parse_dig_room parse_dig_exit"
- Fixed a bug in $frand_class:@go. Thanks to Craig Struble
- Added $stage_talk:to
- Added $stage_talk:bb
- Added $stage_talk:think
- Fixed bug in $wiz:@make-guest
- Installed Outsput Suspension and Delimiter system by John Towell and
Gustavo Glusman. By adding the following verbs #0:do_command, $player:>>
$code_utils:queued_tasks_matching, $player:"say emote", and $player:@delimiter
and by modifying $player:notify
- Modified $player:@version
- Added lag meter as feature object
- Added Gustavo Glusman's Census Feature
- Added Juli Burk's Aloha/Lei verbs to $soc_verbs
- Added and corified Box of Educational Tools, useful for storing edu tools in.
- Added new $guest:@request system with $guest_request_list and $guest_
request_room.
- Added init_for_core verbs to the following objects: $tool_box, $news, $news_
item, $readme, $guide, $recording_system, $intercom, $moderated_room, $bot,
$classroom, $slide_projector, $camera, $vcr, $tv, $tape, $tape_library,
$prog_tutorial, $recitable_note, $lecture, $webpage, $homepage, $recoder,
$web_projector, $note_board, $guest_request_list, and $guest_request_room.
- Updated the High Wired ReadMe file and Beginners Guide to MOOing.


August 18, 1997. High Wired enCore-BETA 2

- Renamed the following core properties: $sysobj.tape-library to 
tape_library $sysobj.news-item to news_item, and $sysobj.prog-tutorial 
to prog_tutorial.
- Removed the verbs $builtin_function_help:init_for_core and
$server_options:www
- Modified $login:init_for_core so that automatic character creation is
now disabled.
- Added social verbs feature to $guest
- Installed the High Wired Beginner's Guide to MOOing, corified as $guide
- Updated the enCore readme file
- Updated the in-MOO homepage
- Added room database and fixed @go to work with room names.
- Wrote and installed @boot command on $wiz.
- Added new look_self verb on guest that tells people where the guest is
logging in from
- Updated $wiz_utils:do_register to include real name information.
- Rewrote $wiz_utils:send_new_player_mail to include more information,
and to have the Beginner's Guide to MOOing ($guide) sent to
all new players along with their username and password.
- Installed @find-name command on $player. Will let you search for people's
real names.
- Added verb start_server to $httpd. (This verb was formerly
$server_options:www)
 Thanks to Matthew Campbell for his suggestion to move this verb.
- Updated $httpd:index to include a hits counter on the $homepage.
- Wrote and installed the following init_for_core verbs: $guest:init_for_core,
$httpd:init_for_core, $guide:init_for_core, $room_db:init_for_core,
$recording_system:init_for_core, $intercom:init_for_core,
$moderated_room:init_for_core, $recorder:init_for_core, and
$note_board:init_for_core 
- Installed the following verbs written by Matthew Campbell:
$object_utils:"fertile_objects fertile_objects_suspended",
$root_class:init_for_core, $player:init_for_core, $login:init_for_core,
$building_utils:init_for_core, $new_prog_log:init_for_core,
$quota_log:init_for_core, $mail_recipient_class:init_for_core,
$feature:init_for_core, $frand_class:init_for_core, #0:server_started,
$news:init_for_core, $vcr:init_for_core, $tv:init_for_core,
$tape_library:init_for_core, $login_watcher:init_for_core,
$soc_verbs:init_for_core, and $readme:init_for_core.


August 10, 1997. High Wired enCore-BETA 1

- Fixed problem with the help system. (Thanks to Kristian Fuglevik for 
pointing this out)
- Fixed problem with features on $player
- Moved High Wired enCore Readme to $news
- Wrote new welcome screen
- Updated and expanded the MOO homepage ($homepage)


July 31, 1997. Changed name from eduCore to High Wired enCore.


July 25, 1997. High Wired enCore-BETA. First Public Release

- The High Wired enCore is built on the Feb 02 version of LambdaCore
- Wrote new core login screen
- Added #0:checkpoint_started and #0:checkpoint_finished
- Removed Mr. Spell (#32) and replaced it with the WWW System Object
- Added _html verbs to #1, $note, $container, $room, and $player
- Added the verb www to $server_options
- Installed Generic Web Page and added the verb @html to $player so 
that s/he can toggle between  html source code view and normal view.
- Wrote and installed MOO home page. Corified as $homepage
- Updated #0:server_started to call $server_options:www
- Installed and moved to container-based News system
- Added verb $room:tell_exits, and updated $room:look_self so that 
exits show up in room descriptions
- Updated $builder:@recycle to better protect against accidental 
recycling of objects
- Added $player:"@join join" and $player:"@time time"
- Installed Generic Recording System with Intercom Device
- Installed Generic Moderated Room (Auditorium)
- Installed Generic Classroom
- Installed Generic Bot
- Installed Generic Slide Projector
- Installed Generic Camera, VCR, TV, Tape, Tape Library and Ken's 
Programming Tutorial Part 1
- Installed Generic Recitable Note
- Installed Generic Lecture Device
- Installed Login Watching Feature
- Installed Amy Bruckman's MacMOOSE_utils version 1.0b1MOO 
- Installed Generic Web Projector
- Installed Support for Ken Schweller's Surf and Turf Java-based MOO 
client. 
- Modified #1:description to integrate Surf and Turf with the MOO's Web
interface.
- Wrote $player:"@research @interests" verb
- Modified $wiz_utils:make_player to record real name information if given
- Added property anonymous_users to #0 to allow administrators to choose
whether users in the MOO should be anonymous or not. In non-anonymous mode
users can use the verbs finger, @whois, or @info to get information on other
users.
- Changed the use of the word player to name and person in the @who and @@who
listings.
- Installed Social Verbs Feature and Login Watcher and made these features
along with Stage Talk and Pasting Feature default for all new characters
- Modified #1:look_self to allow for ascii maps and drawings to be stored in
a separate property, #1.drawing.
- Added time-stamping of verbs.
- Wrote and installed recording and playback device.
- Wrote and implemented new command @search on $player.
- Wrote and installed simple Generic Note Board.
- Wrote enCore-README file with installation instructions and other info.
- Added manners properties to $help.

===========================================================================
Jan Rune Holmevik                                            Cynthia Haynes
Dept. of Humanistic Informatics               School of Arts and Humanities
University of Bergen                          University of Texas at Dallas
Sydnesplass 7 HF-bygget                                  PO.Box 830688-JO31
N-5007 Bergen, Norway                             Richardson, TX 75083-0688
Email: jan.holmevik@hedb.uib.no                Email: cynthiah@utdallas.edu
===========================================================================

