LPMud, abbreviated LP, is a family of
MUD
A MUD (; originally multi-user dungeon, with later variants multi-user dimension and multi-user domain) is a Multiplayer video game, multiplayer Time-keeping systems in games#Real-time, real-time virtual world, usually Text-based game, text-bas ...
server software. Its first instance, the original LPMud game driver, was developed in 1989 by
Lars Pensjö Lars Pensjö of Sweden is the original author of the LPMud MUD engine and the LPC (programming language), LPC programming language, and is one of the founders of ''Genesis LPMud'', notable for their part in the History of massively multiplayer onlin ...
(hence the LP in LPMud). LPMud was innovative in its separation of the MUD infrastructure into a
virtual machine
In computing, a virtual machine (VM) is the virtualization/emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized hardw ...
(known as the driver) and a development framework written in the LPC programming language (known as the
mudlib).
Motivation
Pensjö had been an avid player of
TinyMUD
A MUD (; originally multi-user dungeon, with later variants multi-user dimension and multi-user domain) is a Multiplayer video game, multiplayer Time-keeping systems in games#Real-time, real-time virtual world, usually Text-based game, text-bas ...
and
AberMUD. He wanted to create a world with the flexibility of TinyMUD and the style of AberMUD. Furthermore, he did not want to have sole responsibility for creating and maintaining the game world. He once said, "I didn't think I would be able to design a good adventure. By allowing
wizards coding rights, I thought others could help me with this." The result was the creation of a new,
C-based,
object-oriented
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pro ...
programming language, LPC, that made it simple for people with minimal programming skills to add elements like rooms, weapons, and monsters to a virtual world.
To accomplish his goal,
Lennart Augustsson
Lennart Augustsson is a Swedish computer scientist. He was previously a lecturer at the Computing Science Department at Chalmers University of Technology. His research field is functional programming and implementations of functional languages.
A ...
convinced Pensjö to write what today would be called a virtual machine, the LPMud driver. The driver managed the interpretation of LPC code as well as providing basic
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common services for computer programs.
Time-sharing operating systems schedule tasks for efficient use of the system and may also in ...
services to the LPC code. By virtue of this design, Pensjö made it more difficult for common programming errors like
infinite loops and
infinite recursion
In computer programming, an infinite loop (or endless loop) is a sequence of instructions that, as written, will continue endlessly, unless an external intervention occurs ("pull the plug"). It may be intentional.
Overview
This differs from:
* ...
made by content builders to harm the overall stability of the server. His choice of an
OO approach made it easy for new programmers to concentrate on the task of "building a room" rather than programming logic.
Evolution of LPMuds
Pensjö's interest in LPMuds eventually waned in the early 1990s, but by that time LPMud had become one of the most popular forms of MUD. His work has been extended or reverse engineered in a number of projects:
* LPMud 3.2, better known as the Amylaar driver, after its lead developer, Jörn "Amylaar" Rennecke
*
MudOS
*
DGD, Dworkin's Game Driver, a conceptual rather than code derivative of LPMud developed by
Felix "Dworkin" Croes
*
SWLPC,
Shattered World
Shattered may refer to:
Books
* ''Shattered'' (Casey book), a 2010 non-fiction book: true-crime account of pregnant mother's murder
* ''Shattered'' (Francis novel), a 2000 novel by Dick Francis: glassblower seeks videotape following death of j ...
's
fork of LPMud 2.4.5
Though an LPMud server can be used to implement nearly any style of game, LPMuds are often thought of as having certain common characteristics as a genre, such as a mixture of
hack and slash
Hack and slash, also known as hack and slay (H&S or HnS) or slash 'em up, refers to a type of gameplay that emphasizes combat with melee-based weapons (such as swords or blades). They may also feature projectile-based weapons as well (such as ...
with
role-playing,
quests as an element of advancement, and "guilds" as an alternative to
character classes.
LPMud talkers
LPMud was used as the basis for the first
Internet
The Internet (or internet) is the global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a '' network of networks'' that consists of private, pub ...
talker, ''
Cat Chat
A talker is a chat system that people use to talk to each other over the Internet. Dating back to the 1980s, they were a predecessor of instant messaging.
A talker is a communication system precursor to MMORPGs and other virtual worlds such as ''S ...
'', which opened in 1990.
TMI Mudlib
The TMI Mudlib from
The Mud Institute
''The'' () is a grammatical article in English, denoting persons or things already mentioned, under discussion, implied or otherwise presumed familiar to listeners, readers, or speakers. It is the definite article in English. ''The'' is the m ...
was an attempt to create a framework driven
mudlib for the
MudOS LPMud driver. It consisted of many contributors to MudOS as well as people who became influential in the LPMud community. When TMI began work in 1992, a mudlib was generally packaged with both an LPMud driver and a complete world built on top of the mudlib. As a framework-driven mudlib, the goal of the TMI mudlib was to provide only examples for world objects and place the burden of building a working world on the game developers using TMI.
TMI implemented the first
InterMUD
LPMud, abbreviated LP, is a family of MUD server software. Its first instance, the original LPMud game driver, was developed in 1989 by Lars Pensjö (hence the LP in LPMud). LPMud was innovative in its separation of the MUD infrastructure into a ...
communications network, when
MudOS added network socket support in 1992.
TMI never realized its vision and shut down. It was quickly followed, however, by TMI-2. Unlike TMI, TMI-2 was somewhat independent of the driver team. It leveraged elements of the original TMI mudlib and eventually released a somewhat workable product. Though it never achieved the success of its sibling the
Nightmare Mudlib
A nightmare, also known as a bad dream, Retrieved 11 July 2016. is an unpleasant dream that can cause a strong emotional response from the mind, typically fear but also despair, anxiety or great sadness. The dream may contain situations of d ...
(also based on the original TMI mudlib), it did influence many developers, and the lessons learned with TMI-2 led to the successes of the
Lima Mudlib.
In 1992, MIRE, a multi-user information system producing customised newspapers was built based on a modified TMI driver.
In 1993, the TMI-2 mudlib was used to create ''PangaeaMud'', an academic research project designed as an interactive geologic database tool.
Though Lima took lessons from TMI-2, Lima is a completely independent codebase.
TMI-2 is still available, and often used as a learning tool, but not typically used today for new LPMud development.
Notable MUDs based on TMI-derived mudlibs include ''
The Two Towers''
set in
Tolkien
John Ronald Reuel Tolkien (, ; 3 January 1892 – 2 September 1973) was an English writer and philologist. He was the author of the high fantasy works ''The Hobbit'' and ''The Lord of the Rings''.
From 1925 to 1945, Tolkien was the Rawlins ...
’s universe and ''Threshold''.
Server software
MudOS is a major family of LPMud server software, implementing its own variant of the LPC (programming language).
It first came into being on February 18, 1992.
It pioneered important technical innovations in MUDs, including the network socket support that made
InterMUD
LPMud, abbreviated LP, is a family of MUD server software. Its first instance, the original LPMud game driver, was developed in 1989 by Lars Pensjö (hence the LP in LPMud). LPMud was innovative in its separation of the MUD infrastructure into a ...
communications possible
and LPC-to-C compilation.
Its name reflects its focus on
separation of concerns between game driver and
mudlib.
''
Genocide
Genocide is the intentional destruction of a people—usually defined as an ethnic, national, racial, or religious group—in whole or in part. Raphael Lemkin coined the term in 1944, combining the Greek word (, "race, people") with the Latin ...
'' was an important development testbed for MudOS from 1992 to 1994, but switched back to the main LPMud branch, citing speed concerns.
FluffOS
FluffOS is originally forked by Wodan from
Discworld MUD, released as a roll-up patch to support
Discworld MUD. Wodan continues to maintain FluffOS up to version 2.27, and has since FluffOS been maintained by Yucong Sun. FluffOS right now has release version 2017 and version 2019 in development. The FluffOS codebase contains source release of MudOS all the way up to mudos-0.8.14, and has largely maintained backward compatibility for LPMUD code written for MudOS v22, with many more modern features.
FluffOS v2019 uses c++ 17, has a modern cmake build system, and able to compile and run on latest Ubuntu and Mac OS X;Native windows support is still under development.
FluffOS is already being deployed in production with a lot of Chinese LPMUDs, with an active community.
See also
*
Chronology of MUDs
References
Further reading
*
*
External links
LPMud FAQLDMud WebsiteLPMuds.net- A resource for MUDs that use LPC.
MUDseek- A Google custom search engine for MUDs.
has a driver-bundled version of TMI-2 that's "easy-ish" to install.
*
{{MUDs
1989 video games
MUD servers
Freeware games