Skip to content

Instantly share code, notes, and snippets.

@Potherca
Last active August 4, 2019 18:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Potherca/04ada57438d7bd6e84e6fa0f33f89c02 to your computer and use it in GitHub Desktop.
Save Potherca/04ada57438d7bd6e84e6fa0f33f89c02 to your computer and use it in GitHub Desktop.
Hierarchies of derivation among MUD codebases

Family trees/hierarchies of derivation among MUD codebases.

It is based on the information from: https://en.wikipedia.org/wiki/MUD_trees

Solid lines between boxes indicate code relationships, while dotted lines indicate conceptual relationships.

Made using Graphviz (DOT syntax).

@startuml
digraph MudFamilyTree {
#//////////////////////////////// Introduction \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
/*
The MUD trees below depict hierarchies of derivation among MUD codebases.
It is based on the information from: https://en.wikipedia.org/wiki/MUD_trees
Solid lines between boxes indicate code relationships, while dotted lines
indicate conceptual relationships.
*/
#/////////////////////////////// General Styles \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
graph [
label = "MUD Family Tree"
labelloc = t
//dpi = 200
ranksep=0.65
nodesep=0.40
bgcolor="#FFFFDD"
style="filled"
fillcolor="#FFFFFF"
// splines = "ortho"
]
edge [
arrowhead = "empty"
]
node [
labeljust="2"
colorscheme="greys9"
style=filled
fillcolor=1
shape=record
]
#/////////////////////////// Sub Graphs and Clusters \\\\\\\\\\\\\\\\\\\\\\\\\\\
subgraph cluster_AberMUD {
node [colorscheme="blues9", fillcolor=2]
label = "AberMUD family tree"
AberMUD -> {"AberMUD 2" [fillcolor=3]}
"AberMUD 2" -> {"AberMUD 3" [fillcolor=4]}
"AberMUD 3" -> {"AberMUD 4", "AberMUD 5" [fillcolor=5]}
"AberMUD 4" -> {"Dirt" [fillcolor=5]}
"Dirt" -> {"Dyrt", "idirt" [fillcolor=6]}
}
MOO -> {CoolMUD, ColdMUD}
subgraph cluster_TinyMUD {
node [colorscheme="greens9", fillcolor=1]
label = "TinyMUD family tree"
"TinyMUD" -> {"TinyMUD 1.41" [fillcolor=2]}
"TinyMUD 1.41" -> {"TinyMUD 1.52" [fillcolor=3]}
"TinyMUD 1.52" -> {"TinyMUD 1.54", "TinyMUCK 1.2" [fillcolor=4]}
"TinyMUD 1.54" -> {"Islandia", "TinyMUSH 1.0", "SMUG" [fillcolor=5]}
"TinyMUSH 1.0" -> {
node [fillcolor=6]
"PennMUSH"
"TinyMUSH 2.0"
"PernMUSH"
"TinyMage 1.2"
"TinyMUSE 1.8a4"
}
"TinyMUSH 2.0" -> {"TinyMUSH 2.2", "TinyMUX 1.0" [fillcolor=7]}
"TinyMUSH 2.2" -> {"TinyMUSH 3.0" [fillcolor=8]}
"TinyMUX 1.0" -> {"TinyMUX 2.0" [fillcolor=8]}
"TinyMUSE 1.8a4" -> {"TinyMuse 1.9f3", "TinyMUSE 1.98", "TinyMAZE" [fillcolor=7]}
"TinyMUSE 1.98" -> {"deMUSE 2.0" [fillcolor=8]}
"TinyMAZE" -> {"TinyMAZE 2.0" [fillcolor=8]} -> {"TinyMAZE 3.0" [fillcolor=9]}
"TinyMUCK 1.2" -> {"TinyMUCK 2.0" [fillcolor=5]} -> {"TinyMUCK 2.2", "TinyMage 1.2" [fillcolor=6]}
"TinyMUCK 2.2" -> {"TinyMUCK 2.3", "FuzzBall MUCK 5.xx" [fillcolor=7]}
"TinyMUCK 2.3" -> {"TinyMUCK 2.4" [fillcolor=8]}
"FuzzBall MUCK 5.xx" -> {"FuzzBall MUCK 6.0","GlowMUCK" [fillcolor=8]}
}
subgraph cluster_LPMud {
node [colorscheme="oranges9", fillcolor=2]
label = "LPMud family tree"
"LPMud" -> {"LPMud 2.4.5" [fillcolor=3]} -> {
node [fillcolor=4]
"UriMUD"
"LPMud 3.0.0"
"SWLPC"
}
{DGD [fillcolor=3]}
"LPMud 3.0.0" -> {"CD", "LPMud 3.1.2" [fillcolor=4]}
"LPMud 3.1.2" -> {
node [fillcolor=5]
"LPC4"
"LPMud 3.2 (Amylaar)"
"MudOS"
}
"LPMud 3.2 (Amylaar)" -> {"LDMud" [fillcolor=6]}
"MudOS" -> {"FluffOS" [fillcolor=6]}
}
µLPC -> Pike
// AberMUD
subgraph cluster_DikuMUD {
node [colorscheme="purd9", fillcolor=1]
label = "DikuMUD family tree"
DikuMUD -> {
node [fillcolor=2]
SillyMUD
VieMUD
Circle1
"Diku II"
Sequent
Eltanin
Techno
Crimson
}
SillyMUD -> {DaleMUD [fillcolor=3]} -> {SneezyMUD [fillcolor=4]}
Circle1 -> {Circle2 [fillcolor=3]} -> {Archipelago, Circle3, LostLands [fillcolor=4]}
Circle3 -> {tbaMUD [fillcolor=5]}
Sequent -> {Nilgiri, Copper1, Fajita [fillcolor=3]}
Copper1 -> {Merc1, Copper2, Pirate [fillcolor=4]}
Copper2 -> {Copper3 [fillcolor=5]}
Merc1 -> {"Rom1.0", Merc2, Vego [fillcolor=5]}
x [label="", shape="point"]
{
edge [arrowhead="normal"]
"Rom1.0"
Merc2
} -> x -> {
node [fillcolor=6]
"Rom2.3"
"ACK!MUD"
Envy1
SMAUG
GodWars
MrMud
NiMud
}
"Rom2.3" -> {Sunder, "Rom2.4", EmberMud [fillcolor=7]}
"Rom2.4" -> {Anatolia, ROT, Oblivion [fillcolor=8]}
ROT -> {"Dawn of Time" [fillcolor=9]}
"ACK!MUD" -> {ASSAULT [fillcolor=7]}
Envy1 -> {Envy2 [fillcolor=7]} -> {Mythran, UltraEnvy, EOS [fillcolor=8]}
SMAUG -> {AFKMud, SERF [fillcolor=7]}
GodWars -> {Dystopia [fillcolor=7]}
MrMud -> {Emud [fillcolor=7]}
NiMud -> {EmlenMUD [fillcolor=7]}
}
SocketMUD -> {RocketMUD, NakedMUD}
{
edge [style="dashed"]
{MUD1, MIST} -> AberMUD
Lance -> "AberMUD 5"
{Monster, AberMUD} -> TinyMUD
"TinyMUCK 1.2" -> MOO
{TinyMUD, AberMUD} -> LPMud -> DGD
LPC4 -> µLPC
AberMUD -> DikuMUD
Merc1 -> SocketMUD
}
}
@enduml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment