LPMud: Difference between revisions
imported>MikeVitale |
imported>MrOllie rm mention of fork without secondary sourcing |
||
| Line 13: | Line 13: | ||
Pensjö's work has been extended or reverse engineered in a number of projects: | Pensjö's work has been extended or reverse engineered in a number of projects: | ||
* {{Anchor|Amylaar}}LPMud 3.2, better known as the Amylaar driver, after its lead developer, Jörn "Amylaar" Rennecke{{R|ywwr2|reese-amylaar}} | * {{Anchor|Amylaar}}LPMud 3.2, better known as the Amylaar driver, after its lead developer, Jörn "Amylaar" Rennecke{{R|ywwr2|reese-amylaar}}, later renamed to LDMud when Lars "Mateese" Düning took over development. | ||
* [[MudOS]]{{R|ywwr2}} | * [[MudOS]]{{R|ywwr2}} | ||
* [[Dworkin's Game Driver|DGD, Dworkin's Game Driver]], a conceptual rather than code derivative of LPMud developed by [[Felix Croes|Felix "Dworkin" Croes]]{{R|shahromine-dgd}} | * [[Dworkin's Game Driver|DGD, Dworkin's Game Driver]], a conceptual rather than code derivative of LPMud developed by [[Felix Croes|Felix "Dworkin" Croes]]{{R|shahromine-dgd}} | ||
| Line 28: | Line 28: | ||
TMI implemented the first [[InterMUD]] communications network, when [[MudOS]] added network socket support in 1992.<ref name="dog"/> | TMI implemented the first [[InterMUD]] communications network, when [[MudOS]] added network socket support in 1992.<ref name="dog"/> | ||
In 1992, MIRE, a multi-user information system producing customised newspapers<ref>Electronic Publishing Group at the MIT Media Lab. [http://web.media.mit.edu/~walter/ep.html 25+ Years of the Electronic Publishing Group] "MIRE--news in a MUD"</ref> was built based on a modified TMI driver.<ref name="Takacs"/> | In 1992, MIRE, a multi-user information system producing customised newspapers<ref>Electronic Publishing Group at the MIT Media Lab. [http://web.media.mit.edu/~walter/ep.html 25+ Years of the Electronic Publishing Group] {{Webarchive|url=https://web.archive.org/web/20051229145409/http://web.media.mit.edu/~walter/ep.html |date=December 29, 2005 }} "MIRE--news in a MUD"</ref> was built based on a modified TMI driver.<ref name="Takacs"/> | ||
In 1993, the TMI-2 mudlib was used to create ''PangaeaMud'', an academic research project designed as an interactive geologic database tool.<ref>{{cite thesis | In 1993, the TMI-2 mudlib was used to create ''PangaeaMud'', an academic research project designed as an interactive geologic database tool.<ref>{{cite thesis | ||
| last = Boring | first = Erich | | last = Boring | ||
| first = Erich | |||
| url = http://sc.lib.muohio.edu/bitstream/handle/2374.MIA/248/fulltext.pdf?sequence=1 | | url = http://sc.lib.muohio.edu/bitstream/handle/2374.MIA/248/fulltext.pdf?sequence=1 | ||
| title = PangaeaMud: An Online, Object-oriented Multiple User Interactive Geologic Database Tool | | title = PangaeaMud: An Online, Object-oriented Multiple User Interactive Geologic Database Tool | ||
| Line 38: | Line 39: | ||
| date = December 3, 1993 | | date = December 3, 1993 | ||
| access-date = May 3, 2010 | | access-date = May 3, 2010 | ||
}}</ref> | | archive-date = July 20, 2011 | ||
| archive-url = https://web.archive.org/web/20110720011312/http://sc.lib.muohio.edu/bitstream/handle/2374.MIA/248/fulltext.pdf?sequence=1 | |||
| url-status = dead | |||
}}</ref> | |||
Notable MUDs based on TMI-derived mudlibs include ''[[The Two Towers (MUD)|The Two Towers]]''{{R|english}}{{R|smith-bebak}}{{R|jones}}{{R|ber}}{{R|Ekman-ttt}}<ref>{{cite web |url=http://www.mudconnect.com/mud-bin/adv_search.cgi?Mode=MUD&mud=The+Two+Towers |title=The MUD Connector: The Two Towers |publisher=[[The MUD Connector]] |quote=Highly customized TMI-2 1.1.1 mudlib on MudOS v22 (May 4, 2007) |access-date=July 6, 2010 |archive-date=July 17, 2012 |archive-url=https://web.archive.org/web/20120717014932/http://www.mudconnect.com/mud-bin/adv_search.cgi?Mode=MUD&mud=The+Two+Towers |url-status=dead }}</ref> set in [[Tolkien]]’s universe{{R|english}} and ''Threshold''. | Notable MUDs based on TMI-derived mudlibs include ''[[The Two Towers (MUD)|The Two Towers]]''{{R|english}}{{R|smith-bebak}}{{R|jones}}{{R|ber}}{{R|Ekman-ttt}}<ref>{{cite web |url=http://www.mudconnect.com/mud-bin/adv_search.cgi?Mode=MUD&mud=The+Two+Towers |title=The MUD Connector: The Two Towers |publisher=[[The MUD Connector]] |quote=Highly customized TMI-2 1.1.1 mudlib on MudOS v22 (May 4, 2007) |access-date=July 6, 2010 |archive-date=July 17, 2012 |archive-url=https://web.archive.org/web/20120717014932/http://www.mudconnect.com/mud-bin/adv_search.cgi?Mode=MUD&mud=The+Two+Towers |url-status=dead }}</ref> set in [[Tolkien]]’s universe{{R|english}} and ''Threshold''. | ||
== Server software == | == Server software == | ||
'''LDMud''' is the direct successor of the original LPMud driver. "LP" was renamed to "LD" starting with version 3.2.2 in 1997.<ref name="lp-to-ld" /> | |||
'''MudOS''' is a major family of LPMud server software, implementing its own variant of the LPC (programming language).<ref name="ywwr" /><ref name="busey-mudos" /> It first came into being on February 18, 1992.<ref name="reese-mudos" /> It pioneered important technical innovations in MUDs, including the network socket support that made [[InterMUD]] communications possible<ref name="dog" /><ref name="shahromine" /> and LPC-to-C compilation.<ref name="reese-beek" /> | '''MudOS''' is a major family of LPMud server software, implementing its own variant of the LPC (programming language).<ref name="ywwr" /><ref name="busey-mudos" /> It first came into being on February 18, 1992.<ref name="reese-mudos" /> It pioneered important technical innovations in MUDs, including the network socket support that made [[InterMUD]] communications possible<ref name="dog" /><ref name="shahromine" /> and LPC-to-C compilation.<ref name="reese-beek" /> | ||
''[[Genocide (MUD)|Genocide]]'' was an important development testbed for MudOS from 1992 to 1994, but switched back to the main LPMud branch, citing speed concerns.<ref name="reese-geno-mudos" /><ref name="reese-geno-lpmud" /> | ''[[Genocide (MUD)|Genocide]]'' was an important development testbed for MudOS from 1992 to 1994, but switched back to the main LPMud branch, citing speed concerns.<ref name="reese-geno-mudos" /><ref name="reese-geno-lpmud" /> | ||
| Line 147: | Line 151: | ||
| access-date = June 25, 2009 | | access-date = June 25, 2009 | ||
| quote = Amylaar is a person, not an LPMud. He is the primary author and torch bearer of the LPMud name. Given the generic sound of the term "LPMud" these days, people often refer to LPMud 3.2 as the Amylaar driver. | | quote = Amylaar is a person, not an LPMud. He is the primary author and torch bearer of the LPMud name. Given the generic sound of the term "LPMud" these days, people often refer to LPMud 3.2 as the Amylaar driver. | ||
}}</ref> | |||
<ref name="lp-to-ld">{{cite web | |||
| url = https://www.ldmud.eu/history.html | |||
| title = LDMud History | |||
| access-date = July 10, 2025 | |||
}}</ref> | }}</ref> | ||
<ref name="shahromine-dgd">{{cite book | <ref name="shahromine-dgd">{{cite book | ||
| Line 361: | Line 370: | ||
| quote = ''Genesis'' lays claim to being the first LPMUD. | | quote = ''Genesis'' lays claim to being the first LPMUD. | ||
| url = https://archive.org/details/netgamesyourguid00malo/page/78 | | url = https://archive.org/details/netgamesyourguid00malo/page/78 | ||
}}</ref> | }}</ref> | ||
}} | }} | ||
| Line 393: | Line 398: | ||
* [http://ldmud.eu/ LDMud Website] | * [http://ldmud.eu/ LDMud Website] | ||
* [http://lpmuds.net/ LPMuds.net] - A resource for MUDs that use LPC. | * [http://lpmuds.net/ LPMuds.net] - A resource for MUDs that use LPC. | ||
* [http://lpmuds.net/downloads.html The LPmuds.net downloads page] has a driver-bundled version of TMI-2 that's "easy-ish" to install. | * [http://lpmuds.net/downloads.html The LPmuds.net downloads page] has a driver-bundled version of TMI-2 that's "easy-ish" to install. | ||
{{MUDs}} | {{MUDs}} | ||
Latest revision as of 16:32, 13 September 2025
Template:Short description Template:Use mdy dates LPMud, abbreviated LP, is a family of multi-user dungeon (MUD) server software. Its first instance, the original LPMud game driver, was developed in 1989 by Lars Pensjö (the LP in LPMud).Template:R LPMud was innovative in its separation of the MUD infrastructure into a virtual machine (termed the driver) and a development framework written in the programming language LPC (termed the mudlib).Template:R
Development
Lars Pensjö had been an avid player of TinyMUD and AberMUD. He had wanted to create a world with the flexibility of TinyMUD and the style of AberMUDTemplate:R but 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."Template:R 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.Template:R
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.Template:R
Pensjö created Genesis in April 1989 as the first implementation of the LPC language, and therefore the first LPMud, in which the developer (commonly known as a wizard within the MUD) could code their own objects.Template:R
Pensjö's work has been extended or reverse engineered in a number of projects:
- Script error: No such module "anchor".LPMud 3.2, better known as the Amylaar driver, after its lead developer, Jörn "Amylaar" RenneckeTemplate:R, later renamed to LDMud when Lars "Mateese" Düning took over development.
- MudOSTemplate:R
- DGD, Dworkin's Game Driver, a conceptual rather than code derivative of LPMud developed by Felix "Dworkin" CroesTemplate:R
- SWLPC, Shattered World's fork of LPMud 2.4.5Template:R
Though an LPMud server can be used to implement nearly any style of game,Template:R 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.Template:R
LPMud talkers
LPMud was used as the basis for the first Internet talker, Cat Chat, which opened in 1990Template:R.
TMI Mudlib
The TMI Mudlib from The Mud Institute[1] 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 communications network, when MudOS added network socket support in 1992.[2]
In 1992, MIRE, a multi-user information system producing customised newspapers[3] was built based on a modified TMI driver.[1]
In 1993, the TMI-2 mudlib was used to create PangaeaMud, an academic research project designed as an interactive geologic database tool.[4]
Notable MUDs based on TMI-derived mudlibs include The Two TowersTemplate:RTemplate:RTemplate:RTemplate:RTemplate:R[5] set in Tolkien’s universeTemplate:R and Threshold.
Server software
LDMud is the direct successor of the original LPMud driver. "LP" was renamed to "LD" starting with version 3.2.2 in 1997.[6]
MudOS is a major family of LPMud server software, implementing its own variant of the LPC (programming language).[7][8] It first came into being on February 18, 1992.[9] It pioneered important technical innovations in MUDs, including the network socket support that made InterMUD communications possible[2][10] and LPC-to-C compilation.[11]
Genocide was an important development testbed for MudOS from 1992 to 1994, but switched back to the main LPMud branch, citing speed concerns.[12][13]
References
<templatestyles src="Reflist/styles.css" />
- ↑ a b Script error: No such module "Citation/CS1".
- ↑ a b Script error: No such module "citation/CS1".
- ↑ Electronic Publishing Group at the MIT Media Lab. 25+ Years of the Electronic Publishing Group Template:Webarchive "MIRE--news in a MUD"
- ↑ Template:Cite thesis
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
- ↑ Script error: No such module "citation/CS1".
Cite error: <ref> tag with name "bartle-lars" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "shahromine-mudlib" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "pike" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "bartle-mudlib" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "bartle-lpmud" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "bartle-genesis" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "giuliano" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "ywwr2" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "reese-amylaar" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "shahromine-dgd" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "reese-sw" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "hahn" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "internetculture" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "ywwr1" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "netlingo" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "english" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "smith-bebak" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "jones" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "ber" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "Ekman-ttt" defined in <references> is not used in prior text.
Cite error: <ref> tag with name "reese-genesis" defined in <references> is not used in prior text.
<ref> tag with name "netgames1" defined in <references> is not used in prior text.Script error: No such module "Check for unknown parameters".
Further reading
- Script error: No such module "citation/CS1".
- Script error: No such module "citation/CS1".
External links
- LPMud FAQ
- LPMud Timeline
- LDMud Website
- LPMuds.net - A resource for MUDs that use LPC.
- The LPmuds.net downloads page has a driver-bundled version of TMI-2 that's "easy-ish" to install.