Added public files
Roughly added all public files. Probably missed some, though.
diff --git a/doc/wiz/lupe b/doc/wiz/lupe
new file mode 100644
index 0000000..28e23fe
--- /dev/null
+++ b/doc/wiz/lupe
@@ -0,0 +1,209 @@
+ALLGEMEINES:
+ Die Lupe benutzt einen Stapel (Stack), um Objekte zu bearbeiten.
+ Einige Befehle schieben Objekte auf den Stapel, andere wiederum
+ holen sie wieder vom Stapel herunter und benutzen sie fuer die
+ verschiedensten Zwecke.
+ Man kann in einer Zeile mehrere Kommandos gleichzeitig angeben
+ (durch Leerzeichen getrennt).
+ Eine Zeile wird immer von links nach rechts abgearbeitet.
+
+SCHREIBWEISEN:
+ <arg> - Eine Reihe von Zeichen, die weder Leerzeichen noch Punkte
+ (.) enthaelt. Falls doch Leerzeichen oder Punkte in <arg>
+ auftauchen, muss man die Zeichenkette zwischen "...",
+ '...' oder |...| einschliessen.
+ <nr> - Eine (positive oder negative) ganze Zahl.
+ <filename> - Ein Dateiname. Fuer ihn gilt das Gleiche wie fuer <arg>:
+ Wenn er Punkte enthaelt, muss man ihn zwischen "...",
+ '...' oder |...| einschliessen.
+ Es sind alle Variationen moeglich, die man auch aus der
+ Magiershell kennt: absolute Dateinamen (beginnen mit "/"),
+ Dateinamen relativ zum eigenen Homeverzeichnis ("~/")
+ oder zum Homeverzeichnis eines anderen Magiers ("~name/"),
+ Dateinamen in einer Region ("+region/") und Dateinamen
+ relativ zum aktuellen Verzeichnis (alles andere ;).
+ <func> - Name einer LPC-Funktion.
+ TOS - Das Objekt ganz oben auf dem Stapel (Top Of Stack).
+
+DER STAPEL:
+ Bei dem Stapel handelt es sich um einen LIFO-Stapel (Last In - First
+ Out), d.h. das Objekt, das zuletzt auf den Stapel geschoben wurde,
+ wird als erstes bearbeitet.
+ Bei der Bearbeitung wird der TOS in der Regel vom Stapel entfernt
+ (Ausnahmen: =, stk und #), der Stapel wird also im Laufe der Zeit
+ wieder kleiner.
+ Der Stapel kann maximal zehn Elemente aufnehmen. Dieses Limit wird
+ man bei "normalem Betrieb" allerdings selten erreichen.
+ Sollte es trotzdem einmal eng werden, stehen einem noch zehn
+ Variablen zur Verfuegung, in denen man zusaetzlich Objekte (vom
+ Stapel) ablegen kann.
+
+BEFEHLE:
+ Es gibt drei unterschiedliche Befehlsgruppen:
+ a) Befehle, die ein Objekt auf den Stapel schieben;
+ b) Befehle, die mit Objekten auf dem Stapel arbeiten;
+ c) Befehle, die ohne den Stapel auskommen.
+ Einige Befehle setzen voraus, das der TOS ein Lebewesen oder gar ein
+ Spielerobjekt ist; andere Befehle sind erst ab einem bestimmten
+ Magierlevel zugaenglich. Dies ist bei den entsprechenden Befehlen
+ jeweils vermerkt.
+
+ Diese Befehle schieben ein neues Objekt auf den Stapel:
+ creat <filename> Macht das Gleiche wie 'new', das Objekt wird aller-
+ dings nicht in Dein Inventory gesteckt.
+ here Das Objekt, in dem man gerade steht, auf den Stapel
+ schieben.
+ lv <arg> Schiebt das Lebewesen mit dem living_name <arg> auf
+ den Stapel. ACHTUNG! Das muss dann nicht unbedingt
+ das Lebewesen sein, das man dort eigentlich haben
+ will! Es wird einfach das erste Objekt genommen,
+ dessen living_name passt! Wenn man etwas mit einem
+ NPC vorhat, der im gleichen Raum steht, spricht man
+ ihn besser mit here.name an.
+ me Sich selbst auf den Stapel schieben.
+ new <filename> Cloned das mit <filename> angegebene Objekt und
+ schiebt es auf den Stapel. Anschliessend befindet es
+ sich in Deinem Inventory.
+ ob <filename> Laedt das Objekt, das mit <filename> angegeben ist,
+ und schiebt es auf den Stapel.
+ pl <arg> Schiebt das Spielerobjekt mit dem Namen <arg> auf den
+ Stapel.
+ Es werden auch netztote Spieler berucksichtigt.
+ push <filename> Schiebt das Objekt, das mit <filename> angegeben ist,
+ auf den Stapel.
+ <filename> Macht das gleiche wie 'ob', falls <filename> mit "/"
+ oder "~" beginnt.
+
+ Die naechsten Befehle schalten Optionen der Lupe an/aus/um:
+ desc Die zusaetzliche Angabe der Kurzbeschreibung des
+ aktuellen Objektes wird unterdrueckt.
+ rec Schaltet in den "rekursiv"-Modus um. Dieser Modus
+ wird von folgenden Befehlen genutzt:
+ 'inv', 'cln' und 'clnof'
+ Nach Ausfuehrung eines dieser Befehle wird der
+ "rekursiv"-Modus automatisch wieder abgestellt.
+ norec Stellt den "rekursiv"-Modus "von Hand" ab.
+
+ Diese Befehle schieben ebenfalls ein neues Objekt auf den Stapel. Sie
+ arbeiten dabei allerdings relativ zum TOS. Man muss also schon mindestens
+ ein Objekt auf den Stapel geschoben haben. Der alte TOS wird dabei in der
+ Regel entfernt.
+ .<nr> Schiebt das <nr>te Objekt im Inventory des TOS auf den
+ Stapel.
+ .<arg> Schiebt das Objekt mit der ID <arg> im Inventory des
+ TOS auf den Stapel.
+ <<nr> Schiebt die Variable <nr> auf den Stapel. Als <nr>
+ sind Werte zwischen 0 und 9 moeglich.
+ @<nr> Schiebt das <nr>te Objekt von oben noch einmal auf den
+ Stapel. Der alte TOS hat die Nummer 0. Weder der alte
+ TOS noch das verschobene Objekt werden vom Stapel ent-
+ fernt.
+ @1 ist analog zu 'over'.
+ copy Legt eine Kopie des TOS an (inkl. aller Propertywerte)
+ und schiebt diese Kopie auf den Stapel. Die Kopie
+ befindet sich danach in Deinem Inventory.
+ dup Schiebt den TOS doppelt auf den Stapel.
+ env Schiebt das Objekt, in dem sich der TOS befindet, auf
+ den Stapel.
+ over Schiebt das Objekt, das sich unter dem TOS befindet,
+ nochmal auf den Stapel. Dabei werden weder der alte
+ TOS noch das Objekt unter ihm entfernt.
+ result Wenn in einem Objekt eine Funktion aufgerufen wurde,
+ und diese Funktion wieder ein Objekt zurueckgegeben
+ hat, so wird dieses Objekt auf den Stapel geschoben.
+ swap Tauscht TOS und das darunter liegende Element gegen-
+ einander aus.
+
+ Die naechsten Befehle arbeiten mit den auf dem Stapel liegenden Objekten.
+ Dabei werden die bearbeiteten Objekte in der Regel vom Stapel entfernt.
+ ><nr> Speichert den TOS in der Variablen <nr>. Als <nr>
+ sind Werte zwischen 0 und 9 moeglich.
+ = Zeigt den TOS. Dieser bleibt dabei unveraendert.
+ # Der Stack bleibt ueber das naechste Kommando hinaus
+ erhalten.
+ inv Zeigt das Inventory des TOS. Der TOS bleibt dabei
+ unveraendert.
+ cln Entfernt alle Objekte aus dem Inventory des TOS. Es
+ werden allerdings keine Spieler entfernt.
+ clnof <arg> Entfernt alle Objekte, die auf die ID <arg> anspre-
+ chen, aus dem Inventar des TOS.
+ clr Loescht den gesamten Stack.
+ Dest Der TOS wird zerstoert. Das geht allerdings NICHT,
+ wenn der TOS ein Spielerobjekt oder die Lupe selbst
+ ist.
+ dest Wie Dest, allerdings wird zuerst TOS->remove() auf-
+ gerufen, um dem TOS die Moeglichkeit zu geben, noch
+ hinter sich aufzuraeumen.
+ dinfo Gibt einige GameDriver-interne Informationen wie zB.
+ die Zeit des naechsten reset()-Aufrufs oder die an-
+ gesammelte evalcost des TOS aus.
+ disco Unterbricht die Verbindug des TOS (muss ein aktiver
+ Spieler sein) zum MG (disconnect).
+ hl Zeigt die Historyliste des TOS an (hierbei muss es
+ sich um einen Spieler handeln).
+ Dieser Befehl steht ab ELDER_LVL (50) zur Verfuegung.
+ !!!Fuer die Benutzung gilt das Gleiche wie fuer das
+ Snoopen!!!
+ idle Gibt an, wie lange der TOS schon idlet. (Der TOS
+ sollte dabei natuerlich ein Spieler sein).
+ info Gibt einige Informationen ueber den TOS aus.
+ inherit_list Gibt den Vererbungsbaum des TOS aus (allerdings nicht
+ sehr baumfoermig ;)
+ inv Zeigt das Inventory des TOS an.
+
+ make Fuehrt ein Update des TOS durch. Geht nicht bei
+ Spielern! Dafuer gibt es renew.
+ minfo Gibt einige Informationen ueber den Speicherverbrauch
+ des TOS aus.
+ move, mov, mo Das Objekt, das unter dem TOS steht, wird in den TOS
+ gemoved. Beide Objekte werden dabei vom Stapel ent-
+ fernt.
+ _move, _mov, _mo, _mv
+ Das Objekt, das unter dem TOS steht, wird in den TOS
+ gemoved, ohne dass dort init() aufgerufen wird. Beide
+ Objekte werden dabei vom Stapel entfernt.
+ Dieser Befehl steht ab ARCH_LVL (60) zur Verfuegung.
+ pop Entfernt den TOS.
+ renew Aehnlich wie 'make', der TOS muss allerdings ein
+ Spieler sein. ACHTUNG! Man sollte nicht "einfach so"
+ Spieler 'renew'en, sondern nur dann, wenn es wirklich
+ gerechtfertigt ist!
+ scan, sc Kombiniert 'stat' und finger. Der TOS muss ein Lebe-
+ wesen sein.
+ stat Gibt Informationen ueber Zustand, Ausruestung, ge-
+ loeste Quests etc. des TOS aus. Der TOS muss dabei
+ ein Lebewesen sein.
+ stk Zeigt den gesamten Stack. Dieser bleibt dabei unver-
+ aendert.
+ [<func>] Ruft im TOS die Funktion <func> ohne Parameter auf.
+ Falls diese Funktion ein Objekt zurueckgibt, kann man
+ dieses anschliessend mit result auf den Stapel
+ schieben.
+ [<func> <arg1> ... <argn>]
+ Ruft im TOS die Funktion <func> mit den Parametern
+ <arg1> bis <argn> auf. Die Parameter sind mit Leer-
+ zeichen zu trennen. Enthalten die Parameter selbst
+ Leerzeichen, so sind sie in "...", '...' oder |...|
+ einzuschliessen.
+ Mittels @<nr> kann man auch Objekte, die sich auf dem
+ Stapel befinden, als Argumente angeben.
+
+ Die folgenden Befehle kommen ohne Objekte auf dem Stack aus:
+ call_out Gibt eine Liste aller Objekte mit einem laufenden
+ call_out aus.
+ dump Schreibt die Listen aller Objekte mit aktivem
+ heart_beat und aller Objekte mit laufendem call_out
+ in die Datai LISTS.LUPE in Dein Homeverzeichnis.
+ dumphists Schreibt die Befehlshistory aller momentan einge-
+ loggten Spieler nach /log/ARCH/HD.
+ Dieser Befehl steht erst ab ARCH_LVL (60) zur
+ Verfuegung.
+ heart_beat Gibt eine Liste aller Objekte mit aktivem heart_beat
+ aus.
+ rusage Zeigt einige Infos ueber den Ressourcenge-/-verbrauch
+ des Muds an.
+ swho Zeigt (so gut wie) alle aktiven Snoops.
+ vars Zeigt die belegten Variablen an.
+
+----------------------------------------------------------------------------
+Last modified: Wed Jun 26 14:49:02 1996 by Wargon
\ No newline at end of file