WebRoom: InterMUD Communications Protocol with Extensions to VRMLize Multiuser Domains

Chan Fang Khoon <cfangs@irdu.nus.sg>
James Seng <jseng@pobox.org.sg>
J. K. Tan <tanjk@irdu.nus.sg>
L. S. Ooi <liangxin@irdu.nus.sg>
Tan Tin Wee <tinwee@irdu.nus.sg>
National University of Singapore
Singapore

Abstract

Internet content on the World Wide Web (WWW) is generally stateless, and thus does not easily support full interactive communications like real-time chat. On the other hand, interactive Internet communication applications such as the MUD (Multiuser Domain/Dimension/Dungeon) provide a ready mechanism for stateful real-time communications in which the powerful hyperlinking concept of the WWW can be incorporated.

Firstly, we have devised a highly efficient generic protocol, InterMUD Communication (IMC) Protocol, to interlink MUD servers so that users can intercommunicate textually and navigate seamlessly across different MUD domains. Using this experimental protocol, more than 30 MUD domains are linked, interconnecting approximately 5,000 MUD users worldwide.

Secondly, the IMC protocol has been extended to allow documents to be transferred between MUD domains. MUD users can now transfer text, graphics, audio, and video files. We have further extended this to include spatial information about the MUD room using virtual reality modeling language (VRML).

We describe an implementation of this extended protocol using a prototype Web-browser MUD client incorporating the interactive characteristics of a MUD session with seamless MUD-to-MUD navigation, WWW document hyperlinking, and VRML 3-D rendering of MUD rooms. Work is being carried out to investigate whether the IMC protocol can be extended to include support for real-time audio-video communications, shared whiteboards, and shared documents.

With VRML support in the IMC protocol, it is now possible for a person on the Internet to navigate from MUD room to MUD room, interacting with other people in the same room through a VRML world. The rooms may be distributed across MUDs, but users will be able to transparently traverse the World Wide Web of InterMUDs. From the users' point of view, there will be one huge network of VRML-InterMUDs.

Contents

1.0 Introduction

In recent years, the World Wide Web (WWW) has come to dominate the information arena of the Internet. It has not only changed the way information is linked to people [1], it has also created a new information format on the Internet through hyperlinking documents, multimedia content, and virtual reality. However, the current lack of communication among Web users has raised concern about the virtual worlds aspect of the Internet. Many feel that Internet development should be focusing on bringing people together [1] through building virtual worlds.

The concept of virtual worlds has always been closely linked with the Internet. It is a strong unifying metaphor for various forms of Netwalk, Netchat and an Internet-based virtual presence [2]. One excellent virtual world, Multiuser Domain/Dungeon (MUD), existed long before the WWW was invented. Although it is commonly known for its interactive role-playing games, MUD software is in no way limited to that purpose. Its virtual "place" characteristic has created an environment in which people can meet and collaborate on various projects. The objective of our project is to add this stateful and persistent application into current Web resources.

1.1 The stateless web

The WWW architecture [3] consists of a HyperText Transfer Protocol (HTTP) server that accepts standard socket connections on a single port. It accepts a URL query from the connected client, outputs the data associated with the given URL to the client, and closes the socket connections. The cycle of connect-get-data-disconnect is repeated for every Web request. Figure 1.0 shows the basic model of the Web.

The above model provides a very efficient means of serving multiple clients because the server responds only on demand. However, the side effect of this model is that it does not keep information regarding what the client is reading and where the data the client are reading comes from. In other words, the model is stateless and this makes the implementation of real-time communication difficult.

1.2 The interactive multiuser domain

Object Oriented Multiuser Domain (MOO-MUD Object Oriented) software [4] are network-based applications first developed for online role-playing games in which players interact with each other, the "virtual room", "objects," and other contents. It is also used as an educational tool, creating a "virtual classroom" in which students participate in sophisticated interactive experiments and other learning aids. For example, the BioMOO from Weizmann Institute [5] allows a user to speak to biologists and to interact with biological objects. Figure 1.1 shows the standard MUD model.

The MUD server manipulates the database of objects in the virtual world, is programmable in a language (e.g., perl) that allows one to extend the set of objects, and accepts network connections from clients. The client's primary task is to send and receive the I/O between the server and the user. The most important aspect of MUD is that it imposes a spatial metaphor on the participants, so that one may talk and interact easily with people in the same virtual room, and may use other means to communicate with people in other locations.

2.0 Integrating the Web and MUD

We believe that integration of the two most popular Internet applications will occur in a future generation of the Internet. When this happens, the millions of megabytes of information available via the Web will also include the highly interactive information that originates in MUDs. The powerful configurability and interactivity provided by MUDs/MOOs will no longer be restricted to text-only and will be free to use the full hypertext capabilities that come with the Web.

2.1 The WebRoom concept

The WebRoom is a concept we derived from the integration of the Web and MUD. The ideal WebRoom is a virtual place where users can meet online. Different WebRooms will be connected together through a highly efficient generic protocol so that users can intercommunicate textually and navigate seamlessly across different domains. This protocol should allow documents to be transferred across different domains and resources like Whiteboard to be shared. Adding 3-D virtual reality features to the WebRoom allows for information exchange and provides the most natural way to describe virtual organizations and societies.

3.0 Implementation details

Using the WebRoom as a model, we have built a prototype VR-InterMUD whereby users can navigate the MUDs through the a normal Web browser. With the use of Virtual Reality Modeling Language (VRML) [6] we generate the MUD rooms and objects into 3-D objects, creating a virtual-reality-like environment. Figure 2.0 shows our VR-InterMUD model.

3.1 InterMUD Communication (IMC) Protocol

The InterMUD Communication (IMC) Protocol [7] has been developed to interlink the various MUD servers so that users can intercommunicate textually and navigate across the different MUD domains. Basically, the logical network of MUDs is organized into a set of fully connected "routers," each acting as a "hub" for arbitrary set of MUDs. A MUD will have a preferred router but will be told and will record information about all existing routers. Through these fully connected routers, messages and information can be sent across different domains.

Using this experimental protocol, more than 30 MUD domains are presently linked, interconnecting approximately 5,000 MUD users worldwide. Due to the generic nature of the IMC protocol architecture, these IMC-supported MUD servers have been extended to allow documents to be transferred between MUD domains. MUD users can now transfer text, graphics, audio, and video files, in addition to messages.

3.2 Accessing MUDs through the Web via plug-in

To properly incorporate MUD technologies into the Web, we have to overcome communications asynchronicity and statelessness that by default define the Web. Unfortunately, there is no simple and direct method, and these are the various models that we considered before building our VR-InterMUD model.

The standard CGI gateway

The following are several aspects of VR-InterMUD that we may wish to serve via the Web:

This can be accomplished through the use of CGI calls, as shown in Figure 2.1.

First, the WWW server accepts URLs from users and runs a CGI script. The script then connects to the MUD Server along with login names and password specified as part of the user's URL. Upon successful login, the CGI script returns the MUD server's object description/topology information to the WWW user and disconnects from the MUD server.

This is the simplest solution for integrating MUD and the Web. The configuration provides access to MUD object and topology information but does not allow interaction with other users. It can be implemented by means of a form "filled out" by the user and submitted to the WWW server to request more information. Although this mechanism is highly useful as a tool for getting information in order to tailor a response, it does not provide real interactivity. For instance, it still requires you to initiate every transaction. This implementation can be widely seen in many Webchat applications. It is still connectionless or stateless.

The complex solution

The other solution that we have considered is to keep all the connections alive, as shown in Figure 2.2.

According to the above model, long-lived connections can only be supported by modifying the server, client, and probably HTML itself. The final result is no longer the standard WWW service. The situation would be very similar if accessing MUD via Telnet. Due to the complexity involved, it is unsuitable for our purpose.

The plug-in approach

This model makes use of the short-lived connection of the CGI gateway in getting objects and topology information from the MUD server while at the same time getting interactive information via a Telnet plug-in [8]. Thus, by using a Telnet plug-in, we have covered three important VR-InterMUD aspects.

The user will see two sections on their Web client (see Figure 2.0). The first section is the VRML plug-in, which renders objects or room information based on the data sent by the IMC MUD server. The second section is the Telnet plug-in, which functions the same as any other Telnet sessions. Within the Telnet plug-in, it is further divided into two regions: the lower and smaller part is for the user to type messages or chat; this is sent directly to the MUD server. The upper part is for incoming messages from the MUD Server.

The user logs in to the MUD server via the Web (see "The Standard CGI Gateway") and the Telnet plug-in starts upon successful login. Topology information like Exits, Directions and Objects will be sent via the CGI through a standard HTML page. Through use of the Web's HTML, the VR-InterMUD can easily makes use of images, Web links, and many font styles and sizes. For example, we can add URLs to topology information and allow various formats (VRML, JPEG, WAV, AU) of objects for viewing.

4.0 Future work

The VR-InterMUD represents a very basic model of the WebRoom concept. We plan several possible avenues for future growth, one being the use of JavaScript as a replacement for the old CGI to accommodate more dynamic features. Although we have integrated the MUD and the Web, there are many areas that require fine tuning, such as the synchronization of the loading of a VRML world with the text-based Telnet sessions and sharing of resources. In addition, the current VR-InterMUD only supports VRML 1.0 and we would like to incorporate the features of the VRML 2.0 version (e.g., Behavior, Animation, etc.) into our prototype.

Internet technology is expanding very quickly, and more advanced technologies that support multiuser real-time communications through a virtual reality world will appear in the near future. Although the current implementation model may no longer be suitable when these technologies arrive, the concept of the WebRoom will remain basic to these technologies.

5.0 Conclusion

Our VR-InterMUD is a successful prototype of our WebRoom concept. Up until now, the hyperlink paradigm of HTTP had been restricted to document retrieval. With VRML, navigation from one virtual world to another became achievable. With VR-InterMUDs, the paradigm is further extended at a more fundamental level to allow communications, virtual presence, navigation between virtual worlds, and multimedia information retrieval to be blended into a seamless whole.

References

  1. "The Future of the Net," Interview with Paul Saffo, Director of Institute of Future.
    http://www.cnet.com/Content/Features/Dlife/Future/Visionaries/Interviews/int.saffo.htm
  2. Paul Tarau and Koen De Bosschere, "Virtual World Brokerage with BinProlog and Netscape,"
    http://clement.info.umoncton.ca/~lpnet/lp-internet/lpnet10/art.html.
  3. "Overview of the Web," http://www.w3.org/default.html.
  4. R. Bartle, "Interactive Multi-User Computer Games," 1990, ftp://ftp.ccs.neu.edu//pub/mud/docs/papers/mudreport.ps.gz.
  5. Peter Murray-Rust, "MOOs and MUDs, especially BioMOO,"http://seqnet.dl.ac.uk:8000/vsns-post/technology/biomoo.html.
  6. "VRML," http://livedv.com/Whitepapers/VRML.html.
  7. James Seng, "InterMUD Communication Protocol," Technical Report, National University of Singapore, 1994.
  8. Kevin Mok, "Telnet Plugin." Technical Report, Internet R&D Unit, National University of Singapore, 1996.