* What is the gamedriver? The gamedriver is the program (written in C in the case of LPmud) which provides the lowlevel support that makes a mud possible. The gamedriver does many things including: 0) accepts connections from remote machines (via a communications port) and attaches those connections to the login object (/adm/login.c on TMI). 1) provides a set of external functions (efuns) that may be called from within LPC objects. 2) compiles files into a compact internal tokenized form via the new(filename) (or clone_object(filename)) efun. 3) interprets (executes) objects represented in the tokenized form. The two main ways in which code gets executed are as follows: a) the gamedriver calls functions in objects based on input received from users (via the communications port). The specific functions that get called depend on what associations the objects of the mud have specified between player-typed commands and functions (via the add_action(function_name,command_name) efun). b) objects can cause the gamedriver to execute code in other objects via the call_other(object,function_name,args,...) efun. An alternate form of the call_other efun is object->function_name(args,...). 4) calls functions in LPC objects from within certain efuns.