1.2. Architecture

LPC is a programming language. It is executed by the mud driver and is used to define the mudlib and the world that you're creating.

The architecture of many LP Muds looks something like this:


        WORLD CODE
    ------------------
    MUDLIB LIBRARY/API
    ------------------
         DRIVER
    ------------------
     OPERATING SYSTEM

Let's start on the bottom. The operating system is the software that runs on the computer that runs applications and handles the hardware (this is a gross description of things). Common operating systems include: Mac OSX, Windows XP, Ubuntu Linux, ...

The driver is an application that is run on that operating system. There are many drivers that run LP Muds: MudOS, DGD, LPMud, ... The driver manages network connections and interprets the LPC code that defines the behavior and world on your mud.

The mudlib library/api is a layer of code that implements security, the object hierarchy (rooms, players, monsters, objects, containers, armor, weapons, ...), and provides functions for common use (string manipulation functions, array functions, mapping functions, ...).

The world code is any code that defines specific rooms, areas, monsters, quests, and things like that.