Discworld Documentation:

LPC for Dummies

Documents written by Drakkos Wyrmstalker

N.B - This is a work in progress... a living document if you like. If it appears to be dead when you view it, don't worry. It's most likely just playing possum.


The intention behind this set of documents is to provide an introduction to some of the fundamental concepts you'll need to understand as a creator on Discworld. We won't go into details of the way LPC works as a programming language, but will instead focus on how to get started creating simple rooms and NPCs, before moving on to more advanced subjects.

Note: you can also look at the old version of LPC for Dummies, which focuses more on LPC as a language. Please note, however, that the mudlib has been updated significantly since this old version was written, and it is not a good instruction for those wanting to create on Discworld anymore (although it may or may not prepare you for working with the downloadable mudlib, which is similarly ancient).

Table Of Contents

Coding Guides

LPC4D Part One: Learnville [source code for LPC4D Part One]:
Starting from the basics, this tutorial guides you through the development of rooms, areas, NPCs, items, and then goes further into explaining key programming concepts such as functions, arrays, loop structures and mappings.

LPC4D Part Two: Betterville [source code for LPC4D Part Two]:
Assuming you have mastered the concepts of the first book, this second book in the series goes into more advanced topics: inheritance, giving players commands, writing quests and achievements, spells and more!

Guides to High-Quality Project Development

Being a Better Creator:
This book goes into the things you should understand to be a good developer: concepts such as how to design areas, NPCs or quests, feature density, and much more. Included in this are the ten commandments of room descriptions, which are also separately available.

Working With Others:
This book goes into some of the social rules on how to write good code that others can work with. Topics such as stylistic guidelines on code formatting (e.g., indent, line length and bracket positioning), how the systems for collaborative projects are used, and how to refactor, as well as the systems for revision control, autodoc and the error handler.