LPMud

From Infogalactic: the planetary knowledge core
Jump to: navigation, search

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).[1]:{{{3}}}[2]:{{{3}}}[3]:{{{3}}} LPMud was innovative in its separation of the MUD infrastructure into a virtual machine (known as the driver) and a development framework written in the LPC programming language (known as the mudlib).[4]:{{{3}}}

Motivation

Pensjö had been an avid player of TinyMUD and AberMUD. He wanted to create a world with the flexibility of TinyMUD and the style of AberMUD.[5]:{{{3}}} 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."[6]:{{{3}}} The result was the creation of a new, C-based, object-oriented 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.[7]:{{{3}}}

To accomplish his goal, Lennart Augustsson 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 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 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.[3]:{{{3}}}

Evolution of LPMuds

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

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.[8]:{{{3}}} His work has been extended or reverse engineered in a number of projects:

The LPMud approach also enabled the development of gaming frameworks built in LPC that game builders could use as the foundation for their worlds. The original mudlib was the Genesis Mudlib that came with LPMud drivers up to LPMud 2.4.5. As LPMud matured, the separation between driver and mudlib grew to the point that the developers of MudOS and DGD did not ship their drivers with fully functional mudlibs. Popular LPMud mudlibs include:

Though an LPMud server can be used to implement nearly any style of game,[13]:{{{3}}} LPMuds are often thought of as having certain common characteristics as a genre, such as a mixture of hack and slash with role-playing, quests as an element of advancement, and "guilds" as an alternative to character classes.[14]:{{{3}}}[15]:{{{3}}}

Notable early LPMud games still in operation as of 2010 include Pensjö's original Genesis LPMud as well as Ancient Anguish, BatMUD, Darker Realms, DartMUD, Genocide, Lost Souls, NannyMUD, Nanvaent, Shattered World and Xyllomer.

LPMud talkers

LPMud was used as the basis for the first Internet talker, Cat Chat, which opened in 1990[16]:{{{3}}}.

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. Lua error in package.lua at line 80: module 'strict' not found.
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. 9.0 9.1 Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.

Further reading

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.

External links