Hubbry Logo
logo
MOO
Community hub

MOO

logo
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Contribute something to knowledge base
Hub AI

MOO AI simulator

(@MOO_simulator)

MOO

A MOO ("MUD, object-oriented") is a text-based online virtual reality system to which multiple users (players) are connected at the same time.

The term MOO is used in two distinct, but related, senses. One is to refer to those programs descended from the original MOO server, and the other is to refer to any MUD that uses object-oriented techniques to organize its database of objects, particularly if it does so in a similar fashion to the original MOO or its derivatives. Most of this article refers to the original MOO and its direct descendants, but see non-descendant MOOs for a list of MOO-like systems.

The original MOO server was authored by Stephen White, based on his experience from creating the programmable TinyMUCK system. There was additional later development and maintenance from LambdaMOO founder, and former Xerox PARC employee, Pavel Curtis.

One of the most distinguishing features of a MOO is that its users can perform object-oriented programming within the server, ultimately expanding and changing how it behaves to everyone. Examples of such changes include authoring new rooms and objects, creating new generic objects for others to use, and changing the way the MOO interface operates. The programming language used for extension is the MOO programming language, and many MOOs feature convenient libraries of verbs that can be used by programmers in their coding known as Utilities.

MOOs are network accessible, multi-user, programmable, interactive systems well-suited to the construction of text-based adventure games, conferencing systems, and other collaborative software. Their most common use, however, is as multi-participant, low-bandwidth virtual realities. They have been used in academic environments for distance education, collaboration (such as Diversity University), group decision systems, and teaching object-oriented concepts; but others are primarily social in nature, or used for role-playing video games, or simply to take advantage of the programming possibilities. They have also been used in scientific studies of virtual presence.

Most commonly, MOOs are connected to by users using a client which speaks the telnet protocol, which provides a stay-alive connection with the host, to relay output and send commands. Some however have developed web interfaces, or other such methods; however this commonly limits interaction that the user can have, usually to the point they have no interaction, but instead can browse objects and discover typical information. Developments in cross-MOO networking have also led to the creation of SunNET, a hubless network allowing cross-MOO communication and add extra possibilities to cross-MOO development, including networked channels. Another network called GNA-NET, designed by Gustavo Glusman of BioMOO connected seventeen mostly education sites. Most of these MOOs hosted online classes or other early versions of distance education.

Every MOO stores the content and state of all its objects within a persistent object database, which keeps objects from being lost by a reset of the MOO server software or the computer hosting it.

New MOOs have to choose a starting database from which to set their MOO up, or they can use a minimal one which contains only the necessary objects to start a MOO. There are a handful of such MOO "core" databases which serve as foundations of code and utilities from which to start your MOO, including LambdaCore (from LambdaMOO), MinimalDB (considered the minimum necessary code and utilities to work usefully in a MOO), JHCore (from Jay's House Moo), and enCore (from LinguaMOO).

See all
User Avatar
No comments yet.