Geas MUD, enter the Aventure!
Geas Home | Play the Game

[Top] [Contents] [Index] [ ? ]

Table of Contents

Copying Conditions
i - Acknowledgments
ii - Tutorial Setup
iii - History of LPC
iv - Gamedriver/Mudlib
v - Administrative Setup
vi - Writing code
1. LPC basics
1.1 Basic programming concepts
1.1.1 What is programming?
1.1.2 Compiled/Interpreted code
1.1.3 Programs
1.1.4 Objects
1.1.5 Object makeup
1.2 Basic LPC
1.2.2 Data types
1.2.3 Variable declarations
1.2.4 Function declarations
1.2.5 Statements and Expressions Statements Expressions The block statement The ; statement
1.2.6 Scope and prototypes
1.2.7 Operator expressions Miscellaneous operators Arithmetic operators Boolean operators Conditional (logical) operators Comparative operators
1.2.8 Prefix allocation
1.2.9 Conditionals The if/else statement The switch statement The ?: expression
1.2.10 Precedence and Order of evalutaion
1.2.11 Loop statements The for statement The while statement
1.2.12 The break and continue statement
1.2.13 Arrays and Mappings How to declare and use arrays How to declare and use Mappings
1.3 The preprocessor
1.3.1 The #include statement
1.3.2 The #define statement
1.3.3 The #if, #ifdef, #ifndef, #else and #elseif statements
2. Essential LPC and Mudlib
2.1 Peeking at things to come
2.2 LPC revisited
2.2.1 Function calls Making object-internal function calls Making single object-external function calls Making multiple object-external function calls
2.2.2 Inheriting object classes
2.2.3 Masking functions in runtime, part 1
2.2.4 Type identification
2.2.5 Type qualifiers The static variable qualifier The static function qualifier The private function/variable qualifier The nomask function/variable qualifier The public function/variable qualifier The varargs function qualifier
2.2.6 The function data type, part 2
2.2.7 switch/case part 2
2.2.8 catch/throw: Error handling in runtime
2.2.9 Array & Mapping references
2.3 LPC/Mudlib interafce
2.3.1 Definition of standard and library objects The base object class, /std/object.c Standard object classes Standard library objects
2.3.2 How to obtain object references Object references relative to the current object Creating objects Finding references relative to another object Object references to interactive objects Destroying objects
2.3.3 Object-inherent command handling
2.3.4 Alarms: Asynchronous function execution
2.3.5 The inventory and the environment
2.3.6 String functions
2.3.7 Bit functions
2.3.8 Time functions
2.3.9 Array/string conversion
2.3.10 Array functions
2.3.11 Mapping functions
2.3.12 Type conversion
2.3.13 Math functions
2.3.14 File handling
2.3.15 Directory handling
2.3.16 Screen input/output
2.4 Some mud commands
2.4.1 Compile and load an object into gamedriver memory
2.4.2 Compile, load and clone an object to the game
2.4.3 Destroy a cloned object
2.4.4 Update a loaded object
2.5 The Tracer tool
2.5.1 Perform a command in the environment of a player
2.5.2 Call a function in an object
2.5.3 Cat the file associated with an object
2.5.4 Destroy all non-interactive objects in an object
2.5.5 Destruct a specific object
2.5.6 Print information about an object
2.5.7 Ed the file associated with an object
2.5.8 Enter the inventory of an object
2.5.9 Perform a command in another object
2.5.10 More the file associated with an object
2.5.11 Move an object to a destination
2.5.12 Set a tracer variable
2.5.13 Update, load, clone and replace an object
2.5.14 Tail the file associated with an object
3. Advanced LPC and Mudlib
3.1 Function data type, part 3
3.1.1 The basics of the function type
3.1.2 Partial argument lists
3.1.3 Complex function applications
3.2 How to parse player commands
3.3 Masking functions in runtime, part 2
3.4 Writing efficient code
3.4.1 Efficient loops
3.4.2 Abusing defines
3.5 Traps and pitfalls
3.6 Mapping/Array security
3.7 Alarm loops
3.8 Internal documentation
LPC Index
Efun/Sfun Index
Lfun/Macro Index
Type Index
Command Index

This document was generated by Ronny Wikh on July, 8 2003 using texi2html