Gesammelte Update von autogenerierter Doku.

Change-Id: If453f1dd933c092c12ca0b5b2667dbd64ca246f8
diff --git a/doc/efun-mg.index b/doc/efun-mg.index
index 103deb9..05c5223 100644
--- a/doc/efun-mg.index
+++ b/doc/efun-mg.index
@@ -1,4 +1,3 @@
-
 MG-Manpages fuer efuns
 **********************
 
diff --git a/doc/efun-mg/add_action b/doc/efun-mg/add_action
index 73555fe..ee3ca20 100644
--- a/doc/efun-mg/add_action
+++ b/doc/efun-mg/add_action
@@ -1,4 +1,3 @@
-
 add_action(E)
 *************
 
@@ -44,10 +43,10 @@
               return 0;
             }
 
-      2. Kommandoblockierer: frueher beliebt um Spieler
-         lahmzulegen, da es _alle_ Kommandos triggert. Heute jedoch
-         dafuer eher P_DISABLE_COMMANDS verwenden. *Achtung*: siehe
-         Implikation von (4) oben.
+      2. Kommandoblockierer: frueher beliebt um Spieler lahmzulegen,
+         da es _alle_ Kommandos triggert. Heute jedoch dafuer eher
+         P_DISABLE_COMMANDS verwenden. *Achtung*: siehe Implikation
+         von (4) oben.
 
             add_action("action_nothing", "",1 );
             ...
diff --git a/doc/efun-mg/all_inventory b/doc/efun-mg/all_inventory
index 49f8dfa..6d0baa5 100644
--- a/doc/efun-mg/all_inventory
+++ b/doc/efun-mg/all_inventory
@@ -1,4 +1,3 @@
-
 all_inventory
 *************
 
diff --git a/doc/efun-mg/call_out b/doc/efun-mg/call_out
index 5266f65..9c178a7 100644
--- a/doc/efun-mg/call_out
+++ b/doc/efun-mg/call_out
@@ -1,4 +1,3 @@
-
 call_out
 ********
 
diff --git a/doc/efun-mg/count_bits b/doc/efun-mg/count_bits
index 3d163ab..a92f7ba 100644
--- a/doc/efun-mg/count_bits
+++ b/doc/efun-mg/count_bits
@@ -1,4 +1,3 @@
-
 count_bits
 **********
 
diff --git a/doc/efun-mg/environment b/doc/efun-mg/environment
index be6b524..a531774 100644
--- a/doc/efun-mg/environment
+++ b/doc/efun-mg/environment
@@ -1,4 +1,3 @@
-
 environment
 ***********
 
diff --git a/doc/efun-mg/file_size b/doc/efun-mg/file_size
index 754b7fd..2ff4b58 100644
--- a/doc/efun-mg/file_size
+++ b/doc/efun-mg/file_size
@@ -1,4 +1,3 @@
-
 file_size
 *********
 
diff --git a/doc/efun-mg/filter b/doc/efun-mg/filter
index c7227be..4a18714 100644
--- a/doc/efun-mg/filter
+++ b/doc/efun-mg/filter
@@ -1,4 +1,3 @@
-
 filter
 ******
 
@@ -6,10 +5,9 @@
 BEMERKUNGEN
 ===========
 
-   1. Achtung, die Elemente in 'arr' werden nicht tief kopiert,
-      sind sie also selbst Arrays oder Mappings, so fuehrt eine
-      spaetere Aenderung im Rueckgabe-Arrays zur Aenderung im
-      Ursprungsarray:
+   1. Achtung, die Elemente in 'arr' werden nicht tief kopiert, sind
+      sie also selbst Arrays oder Mappings, so fuehrt eine spaetere
+      Aenderung im Rueckgabe-Arrays zur Aenderung im Ursprungsarray:
 
          int *i, *j;
          i=({({1,2,3}),({4,5,6})});
@@ -18,10 +16,10 @@
 
       fuehrt zu: i==j==({({8,2,3}),({4,5,6})});
 
-   2. Das Kopieren in das Rueckgabemapping erfolgt fuer jedes
-      Element nach Ausfuehrung der Filtermethode. Aenderungen der
-      Werte im Array in dieser Methode (globale Variable/Uebergabe als
-      Referenz an filter) schlagen sich also im Rueckgabearray nieder.
+   2. Das Kopieren in das Rueckgabemapping erfolgt fuer jedes Element
+      nach Ausfuehrung der Filtermethode. Aenderungen der Werte im
+      Array in dieser Methode (globale Variable/Uebergabe als Referenz
+      an filter) schlagen sich also im Rueckgabearray nieder.
 
    3. Fuer Arrays wirkt filter() wie filter_array(), fuer Mappings
       stellt filter() eine Verallgemeinerung von filter_indices() dar.
diff --git a/doc/efun-mg/filter_objects b/doc/efun-mg/filter_objects
index c13d46e..5b7d5d8 100644
--- a/doc/efun-mg/filter_objects
+++ b/doc/efun-mg/filter_objects
@@ -1,4 +1,3 @@
-
 filter_objects
 **************
 
diff --git a/doc/efun-mg/find_call_out b/doc/efun-mg/find_call_out
index 610095d..72a3a48 100644
--- a/doc/efun-mg/find_call_out
+++ b/doc/efun-mg/find_call_out
@@ -1,4 +1,3 @@
-
 find_call_out
 *************
 
diff --git a/doc/efun-mg/get_eval_cost b/doc/efun-mg/get_eval_cost
index 2f65c28..3949f60 100644
--- a/doc/efun-mg/get_eval_cost
+++ b/doc/efun-mg/get_eval_cost
@@ -1,4 +1,3 @@
-
 get_eval_cost
 *************
 
diff --git a/doc/efun-mg/lambda b/doc/efun-mg/lambda
index 22a8630..8bf947f 100644
--- a/doc/efun-mg/lambda
+++ b/doc/efun-mg/lambda
@@ -1,4 +1,3 @@
-
 lambda
 ******
 
diff --git a/doc/efun-mg/limited b/doc/efun-mg/limited
index 9465d71..d97efb9 100644
--- a/doc/efun-mg/limited
+++ b/doc/efun-mg/limited
@@ -1,4 +1,3 @@
-
 limited
 *******
 
diff --git a/doc/efun-mg/map_objects b/doc/efun-mg/map_objects
index e9e0f48..1ee6b19 100644
--- a/doc/efun-mg/map_objects
+++ b/doc/efun-mg/map_objects
@@ -1,4 +1,3 @@
-
 map_objects
 ***********
 
diff --git a/doc/efun-mg/raise_error b/doc/efun-mg/raise_error
index 562cc84..4f40787 100644
--- a/doc/efun-mg/raise_error
+++ b/doc/efun-mg/raise_error
@@ -1,4 +1,3 @@
-
 raise_error
 ***********
 
diff --git a/doc/efun-mg/random b/doc/efun-mg/random
index a6077dd..5199d38 100644
--- a/doc/efun-mg/random
+++ b/doc/efun-mg/random
@@ -1,4 +1,3 @@
-
 BEISPIELE
 *********
 
diff --git a/doc/efun-mg/replace_program b/doc/efun-mg/replace_program
index f715e67..3ddaa9d 100644
--- a/doc/efun-mg/replace_program
+++ b/doc/efun-mg/replace_program
@@ -1,4 +1,3 @@
-
 replace_program
 ***************
 
diff --git a/doc/efun-mg/save_object b/doc/efun-mg/save_object
index 1674836..60ad54c 100644
--- a/doc/efun-mg/save_object
+++ b/doc/efun-mg/save_object
@@ -1,4 +1,3 @@
-
 save_object
 ***********
 
diff --git a/doc/efun-mg/say b/doc/efun-mg/say
index 8a50af4..a60a88a 100644
--- a/doc/efun-mg/say
+++ b/doc/efun-mg/say
@@ -1,4 +1,3 @@
-
 say
 ***
 
diff --git a/doc/efun-mg/set_next_reset b/doc/efun-mg/set_next_reset
index 129be10..c10f038 100644
--- a/doc/efun-mg/set_next_reset
+++ b/doc/efun-mg/set_next_reset
@@ -1,4 +1,3 @@
-
 set_next_reset
 **************
 
diff --git a/doc/efun-mg/sort_array b/doc/efun-mg/sort_array
index 0a5ddd8..290cba2 100644
--- a/doc/efun-mg/sort_array
+++ b/doc/efun-mg/sort_array
@@ -1,4 +1,3 @@
-
 sort_array
 **********
 
diff --git a/doc/efun-mg/tell_room b/doc/efun-mg/tell_room
index aebb16f..27534cc 100644
--- a/doc/efun-mg/tell_room
+++ b/doc/efun-mg/tell_room
@@ -1,4 +1,3 @@
-
 tell_room
 *********
 
diff --git a/doc/efun-mg/walk_mapping b/doc/efun-mg/walk_mapping
index 87f5106..825dff8 100644
--- a/doc/efun-mg/walk_mapping
+++ b/doc/efun-mg/walk_mapping
@@ -1,4 +1,3 @@
-
 walk_mapping
 ************
 
diff --git a/doc/index b/doc/index
index ffb46ab..28d2088 100644
--- a/doc/index
+++ b/doc/index
@@ -1,4 +1,3 @@
-
 Willkommen bei der Morgengrauen-Mudlib - Dokumentation!
 *******************************************************
 
diff --git a/doc/lfun-liste b/doc/lfun-liste
index ea3c7f3..154a43f 100644
--- a/doc/lfun-liste
+++ b/doc/lfun-liste
@@ -1,4 +1,3 @@
-
 Verzeichnis der dokumentierten lfuns
 ************************************
 
@@ -74,6 +73,8 @@
 
 * AddToMenu()
 
+* AddToProp()
+
 * AddTouchDetail()
 
 * AddVItem()
@@ -528,6 +529,14 @@
 
 * ReceiveMsg()
 
+* ReceiveMultisense()
+
+* ReceiveNotify()
+
+* ReceiveSay()
+
+* ReceiveTeilemit()
+
 * RegisterEvent()
 
 * RegisterHelperNPC()
@@ -656,6 +665,8 @@
 
 * StopHuntText()
 
+* SubFromProp()
+
 * SuggestArticle()
 
 * SwapRows()
diff --git a/doc/lfun.index b/doc/lfun.index
index 3d28c1b..df60a3a 100644
--- a/doc/lfun.index
+++ b/doc/lfun.index
@@ -1,4 +1,3 @@
-
 lfuns
 *****
 
diff --git a/doc/lfun/AddAction b/doc/lfun/AddAction
index 967a01b..fd0bfb7 100644
--- a/doc/lfun/AddAction
+++ b/doc/lfun/AddAction
@@ -1,4 +1,3 @@
-
 AddAction()
 ***********
 
@@ -63,8 +62,8 @@
    * es gibt _noch_ kein RemoveAction! Per Hand in P_LOCALCMDS
      editieren kann zu ernsten Fehlern fuehren.
 
-   * echte Spielerkommandos kann man damit _nicht_ ueberschreiben,
-     ein AddAction(...,"sag",1,0); funktioniert nicht
+   * echte Spielerkommandos kann man damit _nicht_ ueberschreiben, ein
+     AddAction(...,"sag",1,0); funktioniert nicht
 
    * ein generelles AddAction(...,"",1,0); geht nicht
 
diff --git a/doc/lfun/AddAdjective b/doc/lfun/AddAdjective
index a96a5e5..b2dd263 100644
--- a/doc/lfun/AddAdjective
+++ b/doc/lfun/AddAdjective
@@ -1,4 +1,3 @@
-
 AddAdjective()
 **************
 
diff --git a/doc/lfun/AddAmount b/doc/lfun/AddAmount
index 6edb374..e08631b 100644
--- a/doc/lfun/AddAmount
+++ b/doc/lfun/AddAmount
@@ -1,4 +1,3 @@
-
 AddAmount()
 ***********
 
diff --git a/doc/lfun/AddClass b/doc/lfun/AddClass
index fee72e3..42cfc8e 100644
--- a/doc/lfun/AddClass
+++ b/doc/lfun/AddClass
@@ -1,4 +1,3 @@
-
 AddClass()
 **********
 
diff --git a/doc/lfun/AddCmd b/doc/lfun/AddCmd
index ae02194..f2e1f99 100644
--- a/doc/lfun/AddCmd
+++ b/doc/lfun/AddCmd
@@ -1,4 +1,3 @@
-
 AddCmd()
 ********
 
@@ -53,9 +52,9 @@
      zurueckgeben (sonst werden evtl. weitere Funktionen mit diesem
      Kommandoverb gerufen)
 
-   * innerhalb der Funktionen koennen Fehlermeldungen fuer den
-     totalen Misserfolg des Kommandos mit notify_fail gesetzt werden
-     (anstatt "Wie bitte?")
+   * innerhalb der Funktionen koennen Fehlermeldungen fuer den totalen
+     Misserfolg des Kommandos mit notify_fail gesetzt werden (anstatt
+     "Wie bitte?")
 
    AddCmd ist ein dynamischer Ersatz fuer add_action - im Gegensatz zu
    add_action koennen auch ohne erneuten Aufruf der init() neue
@@ -178,8 +177,8 @@
    * Methoden der put_and_get (nimm/nehme) sollten so nicht versucht
      werden zu ueberschreiben - dazu sind invis Container da
 
-   * benutzt man fuer <function> eine Closure, kann man die Fkt.
-     auch protected oder private deklarieren _und_ sie kann in einem
+   * benutzt man fuer <function> eine Closure, kann man die Fkt. auch
+     protected oder private deklarieren _und_ sie kann in einem
      anderen Objekt sein
 
    * bei Regeln wird an die ggf. gerufene Methode als zweiter
diff --git a/doc/lfun/AddCmd_bsp b/doc/lfun/AddCmd_bsp
index 4f382c8..f3d5e03 100644
--- a/doc/lfun/AddCmd_bsp
+++ b/doc/lfun/AddCmd_bsp
@@ -1,4 +1,3 @@
-
 ADDCMD() - BEISPIELE
 ********************
 
@@ -58,8 +57,7 @@
           #'action_huepfe,
           "Willst du von etwas @verben?|Von wo willst du @verben?");
 
-5. SCHLECHT: eine unscharfe Regel - sie sollten eine Ausnahme sein
-   (!)
+5. SCHLECHT: eine unscharfe Regel - sie sollten eine Ausnahme sein (!)
 
    AddCmd("kletter","fun_klettern",1);
 
diff --git a/doc/lfun/AddDefender b/doc/lfun/AddDefender
index f0e2c22..556f2e8 100644
--- a/doc/lfun/AddDefender
+++ b/doc/lfun/AddDefender
@@ -1,4 +1,3 @@
-
 AddDefender()
 *************
 
@@ -39,7 +38,7 @@
 ==========
 
    RemoveDefender(), QueryDefenders(), QueryPresentDefenders(),
-   QueryNearDefenders(), InformDefend(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   QueryNearDefenders(), InformDefend(), DefendOther(), P_DEFENDERS,
+   /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/lfun/AddDetail b/doc/lfun/AddDetail
index 5236703..3ce78d9 100644
--- a/doc/lfun/AddDetail
+++ b/doc/lfun/AddDetail
@@ -1,4 +1,3 @@
-
 AddDetail()
 ***********
 
diff --git a/doc/lfun/AddExit b/doc/lfun/AddExit
index 384975f..ca0af0e 100644
--- a/doc/lfun/AddExit
+++ b/doc/lfun/AddExit
@@ -1,4 +1,3 @@
-
 AddExit()
 *********
 
diff --git a/doc/lfun/AddExp b/doc/lfun/AddExp
index a8bf488..1f70770 100644
--- a/doc/lfun/AddExp
+++ b/doc/lfun/AddExp
@@ -1,4 +1,3 @@
-
 AddExp()
 ********
 
diff --git a/doc/lfun/AddExtraLook b/doc/lfun/AddExtraLook
index c283ba5..906bc4e 100644
--- a/doc/lfun/AddExtraLook
+++ b/doc/lfun/AddExtraLook
@@ -1,4 +1,3 @@
-
 AddExtraLook()
 **************
 
@@ -21,8 +20,8 @@
 
    string look:
 
-      * String, der in der Langbeschreibung des Lebewesens
-        zusaetzlich ausgegeben wird.
+      * String, der in der Langbeschreibung des Lebewesens zusaetzlich
+        ausgegeben wird.
 
       * zu rufender Funktionsname, wenn 'ob' angegeben ist
 
@@ -78,9 +77,9 @@
 BEMERKUNGEN
 ===========
 
-   * Die Endemeldung wird nicht genau mit Ablauf der angegebenen
-     Zeit ausgegeben, sondern beim ersten Abruf der Langbeschreibung
-     *nach* Ablauf der Zeit.
+   * Die Endemeldung wird nicht genau mit Ablauf der angegebenen Zeit
+     ausgegeben, sondern beim ersten Abruf der Langbeschreibung *nach*
+     Ablauf der Zeit.
 
    * Im Fall von permanenten Eintraegen muss das uebergbene Objekt
      eine Blueprint sein, da Clones irgendwann (spaetestens mit
diff --git a/doc/lfun/AddFixedObject b/doc/lfun/AddFixedObject
index 5875ee2..36ed550 100644
--- a/doc/lfun/AddFixedObject
+++ b/doc/lfun/AddFixedObject
@@ -1,4 +1,3 @@
-
 AddFixedObject()
 ****************
 
diff --git a/doc/lfun/AddFuel b/doc/lfun/AddFuel
index cd0b25e..6ed1df1 100644
--- a/doc/lfun/AddFuel
+++ b/doc/lfun/AddFuel
@@ -1,4 +1,3 @@
-
 AddFuel()
 *********
 
diff --git a/doc/lfun/AddFun b/doc/lfun/AddFun
index 4a56755..a3efbe4 100644
--- a/doc/lfun/AddFun
+++ b/doc/lfun/AddFun
@@ -1,4 +1,3 @@
-
 AddFun()
 ********
 
diff --git a/doc/lfun/AddId b/doc/lfun/AddId
index 8c2aa4e..8e7b9f7 100644
--- a/doc/lfun/AddId
+++ b/doc/lfun/AddId
@@ -1,4 +1,3 @@
-
 AddId()
 *******
 
diff --git a/doc/lfun/AddInfo b/doc/lfun/AddInfo
index 730c26f..0d22b50 100644
--- a/doc/lfun/AddInfo
+++ b/doc/lfun/AddInfo
@@ -1,4 +1,3 @@
-
 AddInfo()
 *********
 
diff --git a/doc/lfun/AddItem b/doc/lfun/AddItem
index 97bd0a8..275f4df 100644
--- a/doc/lfun/AddItem
+++ b/doc/lfun/AddItem
@@ -1,4 +1,3 @@
-
 AddItem()
 *********
 
diff --git a/doc/lfun/AddKnownPotion b/doc/lfun/AddKnownPotion
index 874e55c..30d46bd 100644
--- a/doc/lfun/AddKnownPotion
+++ b/doc/lfun/AddKnownPotion
@@ -1,4 +1,3 @@
-
 AddKnownPotion()
 ****************
 
diff --git a/doc/lfun/AddMiniQuest b/doc/lfun/AddMiniQuest
index 787e718..8ddf1ef 100644
--- a/doc/lfun/AddMiniQuest
+++ b/doc/lfun/AddMiniQuest
@@ -1,4 +1,3 @@
-
 AddMiniQuest()
 **************
 
diff --git a/doc/lfun/AddMoney b/doc/lfun/AddMoney
index 6518215..1b0b903 100644
--- a/doc/lfun/AddMoney
+++ b/doc/lfun/AddMoney
@@ -1,4 +1,3 @@
-
 AddMoney()
 **********
 
diff --git a/doc/lfun/AddMsg b/doc/lfun/AddMsg
index 9faad47..2805918 100644
--- a/doc/lfun/AddMsg
+++ b/doc/lfun/AddMsg
@@ -1,4 +1,3 @@
-
 AddMsg()
 ********
 
diff --git a/doc/lfun/AddPlant b/doc/lfun/AddPlant
index ae2df8b..9af4c88 100644
--- a/doc/lfun/AddPlant
+++ b/doc/lfun/AddPlant
@@ -1,4 +1,3 @@
-
 AddPlant()
 **********
 
diff --git a/doc/lfun/AddPluralId b/doc/lfun/AddPluralId
index 8d6d249..4edca8b 100644
--- a/doc/lfun/AddPluralId
+++ b/doc/lfun/AddPluralId
@@ -1,4 +1,3 @@
-
 AddPluralId()
 *************
 
diff --git a/doc/lfun/AddPursuer b/doc/lfun/AddPursuer
index 5e8b2f8..8a2d63e 100644
--- a/doc/lfun/AddPursuer
+++ b/doc/lfun/AddPursuer
@@ -1,4 +1,3 @@
-
 AddPursuer()
 ************
 
diff --git a/doc/lfun/AddReadDetail b/doc/lfun/AddReadDetail
index 7f36aa4..9304908 100644
--- a/doc/lfun/AddReadDetail
+++ b/doc/lfun/AddReadDetail
@@ -1,4 +1,3 @@
-
 AddReadDetail()
 ***************
 
diff --git a/doc/lfun/AddResistanceModifier b/doc/lfun/AddResistanceModifier
index b8a5ad8..aea81c4 100644
--- a/doc/lfun/AddResistanceModifier
+++ b/doc/lfun/AddResistanceModifier
@@ -1,4 +1,3 @@
-
 AddResistanceModifier()
 ***********************
 
diff --git a/doc/lfun/AddRoomMessage b/doc/lfun/AddRoomMessage
index 47e2b60..4fc2a2b 100644
--- a/doc/lfun/AddRoomMessage
+++ b/doc/lfun/AddRoomMessage
@@ -1,4 +1,3 @@
-
 AddRoomMessage()
 ****************
 
@@ -55,18 +54,18 @@
 
    * falls time < 15 Sekunden ist, wird auf 15 Sekunden aufgerundet
 
-   * der Praefix Add... taeuscht hier. Ein Aufruf von
-     AddRoomMessage() ueberschreibt alle vorherigen Werte
+   * der Praefix Add... taeuscht hier. Ein Aufruf von AddRoomMessage()
+     ueberschreibt alle vorherigen Werte
 
    * this_player() NICHT VERWENDEN!
 
    * Abschalten der Raumnachrichten:
 
-     * passiert automatisch nur, wenn alle Spieler den Raum
-       verlassen haben
+     * passiert automatisch nur, wenn alle Spieler den Raum verlassen
+       haben
 
-     * ist manuell nur ueber Loeschen der Nachrichten umsetzbar,
-       also mit "AddRoomMessage(0, 0, 0);"
+     * ist manuell nur ueber Loeschen der Nachrichten umsetzbar, also
+       mit "AddRoomMessage(0, 0, 0);"
 
    In Funktionen, die durch AddRoomMessage() ausgeloest werden, darf
    this_player() nicht verwendet werden, da die call_out()-Kette den
diff --git a/doc/lfun/AddRoute b/doc/lfun/AddRoute
index 265fa8a..46f2ed0 100644
--- a/doc/lfun/AddRoute
+++ b/doc/lfun/AddRoute
@@ -1,4 +1,3 @@
-
 AddRoute()
 **********
 
diff --git a/doc/lfun/AddSingularId b/doc/lfun/AddSingularId
index c45199e..1c4d8db 100644
--- a/doc/lfun/AddSingularId
+++ b/doc/lfun/AddSingularId
@@ -1,4 +1,3 @@
-
 AddSingularId()
 ***************
 
diff --git a/doc/lfun/AddSmells b/doc/lfun/AddSmells
index 2623f98..66094fe 100644
--- a/doc/lfun/AddSmells
+++ b/doc/lfun/AddSmells
@@ -1,4 +1,3 @@
-
 AddSmells()
 ***********
 
diff --git a/doc/lfun/AddSounds b/doc/lfun/AddSounds
index b14b976..501da94 100644
--- a/doc/lfun/AddSounds
+++ b/doc/lfun/AddSounds
@@ -1,4 +1,3 @@
-
 AddSounds()
 ***********
 
diff --git a/doc/lfun/AddSpecialDetail b/doc/lfun/AddSpecialDetail
index 3405eec..2d3e698 100644
--- a/doc/lfun/AddSpecialDetail
+++ b/doc/lfun/AddSpecialDetail
@@ -1,4 +1,3 @@
-
 AddSpecialDetail()
 ******************
 
diff --git a/doc/lfun/AddSpecialExit b/doc/lfun/AddSpecialExit
index 2f16c17..7b458a5 100644
--- a/doc/lfun/AddSpecialExit
+++ b/doc/lfun/AddSpecialExit
@@ -1,4 +1,3 @@
-
 AddSpecialExit()
 ****************
 
diff --git a/doc/lfun/AddSpecialInfo b/doc/lfun/AddSpecialInfo
index 3c164fd..2ade5b4 100644
--- a/doc/lfun/AddSpecialInfo
+++ b/doc/lfun/AddSpecialInfo
@@ -1,4 +1,3 @@
-
 AddSpecialInfo()
 ****************
 
diff --git a/doc/lfun/AddSpell b/doc/lfun/AddSpell
index a8623e0..bb9fd15 100644
--- a/doc/lfun/AddSpell
+++ b/doc/lfun/AddSpell
@@ -1,4 +1,3 @@
-
 AddSpell()
 **********
 
@@ -70,8 +69,8 @@
 
    1. Die Texte werden an die Beteiligten ausgegeben.
 
-   2. Es wird ggf. SpellDefend gerufen (wenn kein
-      SP_PHYSICAL_ATTACK). Abbruch bei Schutz.
+   2. Es wird ggf. SpellDefend gerufen (wenn kein SP_PHYSICAL_ATTACK).
+      Abbruch bei Schutz.
 
    3. Im Opfer wird Defend() mit den angegebenen Werten aufgerufen.
       Abbruch bei Tod/Zerstoerung des Opfers.
diff --git a/doc/lfun/AddToMenu b/doc/lfun/AddToMenu
index 01d0364..0f48d7c 100644
--- a/doc/lfun/AddToMenu
+++ b/doc/lfun/AddToMenu
@@ -1,4 +1,3 @@
-
 AddToMenu()
 ***********
 
diff --git a/doc/lfun/AddToProp b/doc/lfun/AddToProp
new file mode 100644
index 0000000..2137fdb
--- /dev/null
+++ b/doc/lfun/AddToProp
@@ -0,0 +1,60 @@
+AddToProp()
+***********
+
+
+FUNKTION
+========
+
+public varargs int AddToProp(string propname,
+<int|float|string|mixed*|mapping|bytes> summand)
+
+
+DEFINIERT IN
+============
+
+   /std/thing/properties.c /sys/thing/properties.h (Prototyp)
+
+
+ARGUMENTE
+=========
+
+   * propname: Die Property, die veraendert wird
+
+   * summand: Was auf den aktuellen Wert "aufaddiert" werden soll
+
+
+BESCHREIBUNG
+============
+
+   Die Funktion ruft den aktuellen Wert der Property mittels
+   QueryProp() ab, addiert <summand> drauf und setzt den neuen Wert
+   mit SetProp() wieder. Damit ist sie einfach eine Abkuerzung fuer
+   SetProp(pname, QueryProp(pname)+ summand).
+
+   Erlaubte Typen fuer <summand> sind nur solche, mit denen += etwas
+   anfangen kann und welche zum aktuellen Wert der Property passen.
+   Alles andere loest ggf. einen (Laufzeit-)Fehler auf.
+
+
+RUeCKGABEWERT
+=============
+
+   Der Wert der Property nach der Aenderung.
+
+
+BEISPIELE
+=========
+
+   // einen Int aufaddieren AddToProp(P_WC, 42); // ein Element an ein
+   Array in der Property anhaengen AddToProp(P_WAITFOR,
+   ({"zesstra"})); // Ein Mappingkey in ein Mapping in einer Property
+   anhaengen (sollte der Key bereits existieren, wird dessen Wert
+   damit ueberschrieben) AddToProp(P_M_HEALTH_MOD, ([P_HP:5]))
+
+
+SIEHE AUCH
+==========
+
+   QueryProp(), SetProp() Konzept: properties, /std/thing/properties.c
+
+19.06.2025, Zesstra
diff --git a/doc/lfun/AddTouchDetail b/doc/lfun/AddTouchDetail
index 6ca61e8..104c0cd 100644
--- a/doc/lfun/AddTouchDetail
+++ b/doc/lfun/AddTouchDetail
@@ -1,4 +1,3 @@
-
 AddTouchDetail()
 ****************
 
diff --git a/doc/lfun/AddVItem b/doc/lfun/AddVItem
index 6128e24..16bacf5 100644
--- a/doc/lfun/AddVItem
+++ b/doc/lfun/AddVItem
@@ -1,4 +1,3 @@
-
 AddVItem()
 **********
 
@@ -112,9 +111,9 @@
      haben. Es bringt nichts, jedes Detail gegen ein vItem zu
      ersetzen.
 
-   * Es kann aber praktisch sein, komplexe Detailbaeume an einem
-     vItem zu verankern, wenn man diesen Detailbaum ein- oder
-     ausblenden will.
+   * Es kann aber praktisch sein, komplexe Detailbaeume an einem vItem
+     zu verankern, wenn man diesen Detailbaum ein- oder ausblenden
+     will.
 
 
 BEISPIELE
diff --git a/doc/lfun/AllGroups b/doc/lfun/AllGroups
index 6511189..47891ba 100644
--- a/doc/lfun/AllGroups
+++ b/doc/lfun/AllGroups
@@ -1,4 +1,3 @@
-
 AllGroups()
 ***********
 
diff --git a/doc/lfun/AllMaterials b/doc/lfun/AllMaterials
index 57d1f6d..cd8855d 100644
--- a/doc/lfun/AllMaterials
+++ b/doc/lfun/AllMaterials
@@ -1,4 +1,3 @@
-
 AllMaterials()
 **************
 
diff --git a/doc/lfun/AssocMember b/doc/lfun/AssocMember
index 139a670..7c9c43b 100644
--- a/doc/lfun/AssocMember
+++ b/doc/lfun/AssocMember
@@ -1,4 +1,3 @@
-
 AssocMember()
 *************
 
diff --git a/doc/lfun/Attack b/doc/lfun/Attack
index 1e958de..94fa471 100644
--- a/doc/lfun/Attack
+++ b/doc/lfun/Attack
@@ -1,4 +1,3 @@
-
 Attack()
 ********
 
diff --git a/doc/lfun/AutoAttack b/doc/lfun/AutoAttack
index 2e94201..5f89294 100644
--- a/doc/lfun/AutoAttack
+++ b/doc/lfun/AutoAttack
@@ -1,4 +1,3 @@
-
 AutoAttack()
 ************
 
diff --git a/doc/lfun/BecomesNetAlive b/doc/lfun/BecomesNetAlive
index a64f328..1febaab 100644
--- a/doc/lfun/BecomesNetAlive
+++ b/doc/lfun/BecomesNetAlive
@@ -1,4 +1,3 @@
-
 BecomesNetAlive()
 *****************
 
diff --git a/doc/lfun/BecomesNetDead b/doc/lfun/BecomesNetDead
index 8938d13..aa59a4b 100644
--- a/doc/lfun/BecomesNetDead
+++ b/doc/lfun/BecomesNetDead
@@ -1,4 +1,3 @@
-
 BecomesNetDead()
 ****************
 
diff --git a/doc/lfun/CannotSee b/doc/lfun/CannotSee
index 50c43eb..04685af 100644
--- a/doc/lfun/CannotSee
+++ b/doc/lfun/CannotSee
@@ -1,4 +1,3 @@
-
 CannotSee()
 ***********
 
diff --git a/doc/lfun/ChangeMiniQuest b/doc/lfun/ChangeMiniQuest
index 507bd68..3a6d4d8 100644
--- a/doc/lfun/ChangeMiniQuest
+++ b/doc/lfun/ChangeMiniQuest
@@ -1,4 +1,3 @@
-
 ChangeMiniQuest()
 *****************
 
diff --git a/doc/lfun/ChangeReputation b/doc/lfun/ChangeReputation
index c3d010e..068e46a 100644
--- a/doc/lfun/ChangeReputation
+++ b/doc/lfun/ChangeReputation
@@ -1,4 +1,3 @@
-
 ChangeReputation()
 ******************
 
diff --git a/doc/lfun/CheckFindRestrictions b/doc/lfun/CheckFindRestrictions
index a021a58..a2555df 100644
--- a/doc/lfun/CheckFindRestrictions
+++ b/doc/lfun/CheckFindRestrictions
@@ -1,4 +1,3 @@
-
 CheckFindRestrictions()
 ***********************
 
diff --git a/doc/lfun/CheckLightType b/doc/lfun/CheckLightType
index 2296ab8..91caa68 100644
--- a/doc/lfun/CheckLightType
+++ b/doc/lfun/CheckLightType
@@ -1,4 +1,3 @@
-
 CheckLightType()
 ****************
 
diff --git a/doc/lfun/CheckResistance b/doc/lfun/CheckResistance
index 52bfe23..bd7284b 100644
--- a/doc/lfun/CheckResistance
+++ b/doc/lfun/CheckResistance
@@ -1,4 +1,3 @@
-
 CheckResistance()
 *****************
 
diff --git a/doc/lfun/CheckSensitiveAttack b/doc/lfun/CheckSensitiveAttack
index 74f6220..44d2bd6 100644
--- a/doc/lfun/CheckSensitiveAttack
+++ b/doc/lfun/CheckSensitiveAttack
@@ -1,4 +1,3 @@
-
 CheckSensitiveAttack()
 **********************
 
diff --git a/doc/lfun/CheckSpellFatigue b/doc/lfun/CheckSpellFatigue
index ac9d3fe..729ef2b 100644
--- a/doc/lfun/CheckSpellFatigue
+++ b/doc/lfun/CheckSpellFatigue
@@ -1,4 +1,3 @@
-
 CheckSpellFatigue()
 *******************
 
diff --git a/doc/lfun/ClearRingBuffer b/doc/lfun/ClearRingBuffer
index 869d298..738cc96 100644
--- a/doc/lfun/ClearRingBuffer
+++ b/doc/lfun/ClearRingBuffer
@@ -1,4 +1,3 @@
-
 ClearRingBuffer()
 *****************
 
diff --git a/doc/lfun/Configure b/doc/lfun/Configure
index 5a919ce..a3b52bc 100644
--- a/doc/lfun/Configure
+++ b/doc/lfun/Configure
@@ -1,4 +1,3 @@
-
 Configure()
 ***********
 
diff --git a/doc/lfun/ConvMaterialList b/doc/lfun/ConvMaterialList
index 874753b..fed2d7c 100644
--- a/doc/lfun/ConvMaterialList
+++ b/doc/lfun/ConvMaterialList
@@ -1,4 +1,3 @@
-
 ConvMaterialList()
 ******************
 
diff --git a/doc/lfun/CreateRingBuffer b/doc/lfun/CreateRingBuffer
index e10b671..11709af 100644
--- a/doc/lfun/CreateRingBuffer
+++ b/doc/lfun/CreateRingBuffer
@@ -1,4 +1,3 @@
-
 CreateRingBuffer()
 ******************
 
diff --git a/doc/lfun/CustomizeObject b/doc/lfun/CustomizeObject
index 2c7736a..198f000 100644
--- a/doc/lfun/CustomizeObject
+++ b/doc/lfun/CustomizeObject
@@ -1,4 +1,3 @@
-
 CustomizeObject()
 *****************
 
diff --git a/doc/lfun/Damage b/doc/lfun/Damage
index b36061b..43f7a4d 100644
--- a/doc/lfun/Damage
+++ b/doc/lfun/Damage
@@ -1,4 +1,3 @@
-
 Damage()
 ********
 
diff --git a/doc/lfun/DeAssocMember b/doc/lfun/DeAssocMember
index f47d548..cdaa303 100644
--- a/doc/lfun/DeAssocMember
+++ b/doc/lfun/DeAssocMember
@@ -1,4 +1,3 @@
-
 DeAssocMember()
 ***************
 
diff --git a/doc/lfun/DeclAdj b/doc/lfun/DeclAdj
index b5ae10b..5cab60b 100644
--- a/doc/lfun/DeclAdj
+++ b/doc/lfun/DeclAdj
@@ -1,4 +1,3 @@
-
 DeclAdj()
 *********
 
diff --git a/doc/lfun/Defend b/doc/lfun/Defend
index 83f493b..d145605 100644
--- a/doc/lfun/Defend
+++ b/doc/lfun/Defend
@@ -1,4 +1,3 @@
-
 Defend()
 ********
 
@@ -61,45 +60,42 @@
    new_skills.h enthalten). Nichtangabe eines Flags gilt als 0.
 
    * SP_PHYSICAL_ATTACK (int)
-
         1, wenn es ein physischer Angriff ist, d.h. Ruestungen wirken
         sollen, 0 sonst. Dies entspricht dem alten !spell (wenn Spell
         kein Mapping ist).
 
    * SP_NO_ENEMY (int)
-
         1, falls der Angriff nicht toedlich ist, es also keinen echten
         Gegner gibt. Es wird dann reduce_hit_points() gerufen statt
         do_damage()
 
    * SP_NO_ACTIVE_DEFENSE (int)
-
         1, falls aktive Abwehren (wie zurueckschlagende Amulette,
         Karateabwehren oder Ausweichmanoever) unterbleiben sollen, zB
         bei Kratzen durch Dornen oder Fall aus grosser Hoehe ist
         aktive Abwehr oder Ausweichen unlogisch
 
    * SP_RECURSIVE (int)
-
         1, falls der Spell aus einem Defend gerufen wurde (oder einer
         DefendFunc). Dies ist sehr wichtig, um unendliche Rekursionen
         zu vermeiden, wenn zwei zurueckschlagende Verteidigungen
         zusammentreffen.
 
    * SP_NAME (string)
-
         Name des Spells
 
    * SP_GLOBAL_ATTACK (int)
-
         1 bei Flaechenspells (die mehrere Ziele treffen koennen)
 
    * SP_REDUCE_ARMOUR (mapping) ------------
-
-        Mapping: keys AT_X/P_BODY, values int>=0 Die Schutzwirkung
-        durch P_AC/Magie einer Ruestung wird typabhaengig reduziert.
-        Als Keys sind P_BODY und die AT_* erlaubt, die Werte muessen
-        ints > 0 sein. Aufbau eines Mappings im Beispiel:
+        Mapping: keys AT_X/P_BODY/P_PARRY_WEAPON, values int>=0 Die
+        Schutzwirkung durch P_AC/Magie einer Ruestung wird
+        typabhaengig reduziert. Als Keys sind P_BODY, P_PARRY_WEAPON
+        und die AT_* erlaubt, die Werte muessen ints >= 0 sein. Mit
+        AT_DEFAULT_REDUCE laesst sich ein Standardwert fuer alle nicht
+        gesetzten Eintraege setzen. Diese wirken dann nicht normal,
+        sondern mit der hier angegebenen Staerke. Aufbau eines
+        Mappings im Beispiel:
 
            ([AT_BOOTS: 0,  // Stiefel schuetzen gar nicht
              P_BODY:  50,  // Koerper zu 50%
@@ -108,7 +104,6 @@
            -> alle 'fehlenden' Eintraege wirken normal
 
    * SP_SHOW_DAMAGE (int or Array von Array)
-
         0 fuer keine Treffermeldung, 1 fuer Standardtreffermeldungen.
         Falls individuelle Treffermeldungen geschwuenscht sind,
         koennen aber auch in einem Array Ersatz-Treffermeldungen
@@ -135,7 +130,6 @@
            @WER2/@WESSEN2/@WEM2/@WEN2 - name(casus) des Feindes (enemy)
 
    * EINFO_DEFEND (mapping)
-
         Dieses Mapping liefert erweiterte Informationen zu dem
         bisherigen Ablauf des aktiven Attacks. Die verfuegbaren
         Informationen sind in der Manpage zu DefendInfo festgehalten.
@@ -227,4 +221,4 @@
       CheckSensitiveAttack(), InternalModifyDefend(),
       normalize_defend_args(), UseSkill(), DefendInfo()
 
-Letzte Aenderung: 20.01.2019, Zesstra
+Letzte Aenderung: 08.07.2025, Bugfix
diff --git a/doc/lfun/DefendFunc b/doc/lfun/DefendFunc
index 00bfc91..40171ab 100644
--- a/doc/lfun/DefendFunc
+++ b/doc/lfun/DefendFunc
@@ -1,4 +1,3 @@
-
 DefendFunc()
 ************
 
diff --git a/doc/lfun/DefendInfo b/doc/lfun/DefendInfo
index 21d41ac..6c4381f 100644
--- a/doc/lfun/DefendInfo
+++ b/doc/lfun/DefendInfo
@@ -1,4 +1,3 @@
-
 DefendInfo()
 ************
 
diff --git a/doc/lfun/DefendOther b/doc/lfun/DefendOther
index feefcc1..4739fd5 100644
--- a/doc/lfun/DefendOther
+++ b/doc/lfun/DefendOther
@@ -1,4 +1,3 @@
-
 DefendOther()
 *************
 
diff --git a/doc/lfun/Defend_bsp b/doc/lfun/Defend_bsp
index e3e4261..5b411ab 100644
--- a/doc/lfun/Defend_bsp
+++ b/doc/lfun/Defend_bsp
@@ -1,4 +1,3 @@
-
 Defend_bsp()
 ************
 
diff --git a/doc/lfun/DeleteSpellFatigue b/doc/lfun/DeleteSpellFatigue
index f01755b..67bc7cc 100644
--- a/doc/lfun/DeleteSpellFatigue
+++ b/doc/lfun/DeleteSpellFatigue
@@ -1,4 +1,3 @@
-
 DeleteSpellFatigue()
 ********************
 
diff --git a/doc/lfun/DeleteTimedAttrModifier b/doc/lfun/DeleteTimedAttrModifier
index 2d1bd1e..99f5a78 100644
--- a/doc/lfun/DeleteTimedAttrModifier
+++ b/doc/lfun/DeleteTimedAttrModifier
@@ -1,4 +1,3 @@
-
 DeleteTimedAttrModifier()
 *************************
 
diff --git a/doc/lfun/DiscoverDoor b/doc/lfun/DiscoverDoor
index 9046a0e..404fbfd 100644
--- a/doc/lfun/DiscoverDoor
+++ b/doc/lfun/DiscoverDoor
@@ -1,4 +1,3 @@
-
 DiscoverDoor()
 **************
 
diff --git a/doc/lfun/DistributeExp b/doc/lfun/DistributeExp
index e29427d..7d8269b 100644
--- a/doc/lfun/DistributeExp
+++ b/doc/lfun/DistributeExp
@@ -1,4 +1,3 @@
-
 DistributeExp()
 ***************
 
diff --git a/doc/lfun/DoDecay b/doc/lfun/DoDecay
index 695856a..6ffbe5d 100644
--- a/doc/lfun/DoDecay
+++ b/doc/lfun/DoDecay
@@ -1,4 +1,3 @@
-
 DoDecay()
 *********
 
diff --git a/doc/lfun/DoDecayMessage b/doc/lfun/DoDecayMessage
index 671f9c7..727a7ca 100644
--- a/doc/lfun/DoDecayMessage
+++ b/doc/lfun/DoDecayMessage
@@ -1,4 +1,3 @@
-
 DoDecayMessage()
 ****************
 
diff --git a/doc/lfun/DoUnwear b/doc/lfun/DoUnwear
index 56e53d3..60c959d 100644
--- a/doc/lfun/DoUnwear
+++ b/doc/lfun/DoUnwear
@@ -1,4 +1,3 @@
-
 DoUnwear()
 **********
 
diff --git a/doc/lfun/DoUnwield b/doc/lfun/DoUnwield
index d003bfc..b70f51a 100644
--- a/doc/lfun/DoUnwield
+++ b/doc/lfun/DoUnwield
@@ -1,4 +1,3 @@
-
 DoUnwield()
 ***********
 
diff --git a/doc/lfun/DoWear b/doc/lfun/DoWear
index e253290..e675c4e 100644
--- a/doc/lfun/DoWear
+++ b/doc/lfun/DoWear
@@ -1,4 +1,3 @@
-
 DoWear()
 ********
 
diff --git a/doc/lfun/DoWield b/doc/lfun/DoWield
index 6e6c06c..a6d1e62 100644
--- a/doc/lfun/DoWield
+++ b/doc/lfun/DoWield
@@ -1,4 +1,3 @@
-
 DoWield()
 *********
 
diff --git a/doc/lfun/DoorIsKnown b/doc/lfun/DoorIsKnown
index b799698..3a48c6e 100644
--- a/doc/lfun/DoorIsKnown
+++ b/doc/lfun/DoorIsKnown
@@ -1,4 +1,3 @@
-
 DoorIsKnown()
 *************
 
diff --git a/doc/lfun/Dump b/doc/lfun/Dump
index 9d8d7e0..bd0e1dc 100644
--- a/doc/lfun/Dump
+++ b/doc/lfun/Dump
@@ -1,4 +1,3 @@
-
 Dump()
 ******
 
diff --git a/doc/lfun/EnemyPresent b/doc/lfun/EnemyPresent
index bf3853c..0d7fa02 100644
--- a/doc/lfun/EnemyPresent
+++ b/doc/lfun/EnemyPresent
@@ -1,4 +1,3 @@
-
 EnemyPresent()
 **************
 
diff --git a/doc/lfun/Enter b/doc/lfun/Enter
index 0ebc7f0..452facd 100644
--- a/doc/lfun/Enter
+++ b/doc/lfun/Enter
@@ -1,4 +1,3 @@
-
 Enter()
 *******
 
diff --git a/doc/lfun/EvalArmour b/doc/lfun/EvalArmour
index 7daf07c..30b5aae 100644
--- a/doc/lfun/EvalArmour
+++ b/doc/lfun/EvalArmour
@@ -1,4 +1,3 @@
-
 EvalArmour()
 ************
 
diff --git a/doc/lfun/EvalWeapon b/doc/lfun/EvalWeapon
index 395a0a1..42f64bc 100644
--- a/doc/lfun/EvalWeapon
+++ b/doc/lfun/EvalWeapon
@@ -1,4 +1,3 @@
-
 EvalWeapon()
 ************
 
diff --git a/doc/lfun/ExtraAttack b/doc/lfun/ExtraAttack
index cc0b109..e89a590 100644
--- a/doc/lfun/ExtraAttack
+++ b/doc/lfun/ExtraAttack
@@ -1,4 +1,3 @@
-
 ExtraAttack()
 *************
 
diff --git a/doc/lfun/FilterArmours b/doc/lfun/FilterArmours
index 32a7f2b..09643f2 100644
--- a/doc/lfun/FilterArmours
+++ b/doc/lfun/FilterArmours
@@ -1,4 +1,3 @@
-
 FilterArmours()
 ***************
 
diff --git a/doc/lfun/FilterClothing b/doc/lfun/FilterClothing
index a7e1d01..f23ea38 100644
--- a/doc/lfun/FilterClothing
+++ b/doc/lfun/FilterClothing
@@ -1,4 +1,3 @@
-
 FilterClothing()
 ****************
 
diff --git a/doc/lfun/FindBestArmours b/doc/lfun/FindBestArmours
index 10a5d80..4642c53 100644
--- a/doc/lfun/FindBestArmours
+++ b/doc/lfun/FindBestArmours
@@ -1,4 +1,3 @@
-
 FindBestArmours()
 *****************
 
diff --git a/doc/lfun/FindBestWeapon b/doc/lfun/FindBestWeapon
index 1aaeb0d..a3935f5 100644
--- a/doc/lfun/FindBestWeapon
+++ b/doc/lfun/FindBestWeapon
@@ -1,4 +1,3 @@
-
 FindBestWeapon()
 ****************
 
diff --git a/doc/lfun/FindDistantEnemyVictim b/doc/lfun/FindDistantEnemyVictim
index 5ea712d..7022d0c 100644
--- a/doc/lfun/FindDistantEnemyVictim
+++ b/doc/lfun/FindDistantEnemyVictim
@@ -1,4 +1,3 @@
-
 FindDistantEnemyVictim()
 ************************
 
diff --git a/doc/lfun/FindDistantGroup b/doc/lfun/FindDistantGroup
index b94e048..926bca6 100644
--- a/doc/lfun/FindDistantGroup
+++ b/doc/lfun/FindDistantGroup
@@ -1,4 +1,3 @@
-
 FindDistantGroup()
 ******************
 
diff --git a/doc/lfun/FindDistantGroups b/doc/lfun/FindDistantGroups
index efb3354..75d571d 100644
--- a/doc/lfun/FindDistantGroups
+++ b/doc/lfun/FindDistantGroups
@@ -1,4 +1,3 @@
-
 FindDistantGroups()
 *******************
 
diff --git a/doc/lfun/FindEnemyVictim b/doc/lfun/FindEnemyVictim
index c5a81a6..5391655 100644
--- a/doc/lfun/FindEnemyVictim
+++ b/doc/lfun/FindEnemyVictim
@@ -1,4 +1,3 @@
-
 FindEnemyVictim()
 *****************
 
diff --git a/doc/lfun/FindFarEnemyVictim b/doc/lfun/FindFarEnemyVictim
index 455cf89..29315b0 100644
--- a/doc/lfun/FindFarEnemyVictim
+++ b/doc/lfun/FindFarEnemyVictim
@@ -1,4 +1,3 @@
-
 FindFarEnemyVictim()
 ********************
 
diff --git a/doc/lfun/FindGroup b/doc/lfun/FindGroup
index 112c76f..19cabea 100644
--- a/doc/lfun/FindGroup
+++ b/doc/lfun/FindGroup
@@ -1,4 +1,3 @@
-
 FindGroup()
 ***********
 
diff --git a/doc/lfun/FindGroupN b/doc/lfun/FindGroupN
index b0104ee..56555be 100644
--- a/doc/lfun/FindGroupN
+++ b/doc/lfun/FindGroupN
@@ -1,4 +1,3 @@
-
 FindGroupN()
 ************
 
diff --git a/doc/lfun/FindGroupP b/doc/lfun/FindGroupP
index e4c297b..6a7311e 100644
--- a/doc/lfun/FindGroupP
+++ b/doc/lfun/FindGroupP
@@ -1,4 +1,3 @@
-
 FindGroupP()
 ************
 
diff --git a/doc/lfun/FindLivingVictim b/doc/lfun/FindLivingVictim
index b4b2de9..c110545 100644
--- a/doc/lfun/FindLivingVictim
+++ b/doc/lfun/FindLivingVictim
@@ -1,4 +1,3 @@
-
 FindLivingVictim()
 ******************
 
diff --git a/doc/lfun/FindNearEnemyVictim b/doc/lfun/FindNearEnemyVictim
index 4bd0458..f8fbd51 100644
--- a/doc/lfun/FindNearEnemyVictim
+++ b/doc/lfun/FindNearEnemyVictim
@@ -1,4 +1,3 @@
-
 FindNearEnemyVictim()
 *********************
 
diff --git a/doc/lfun/FindPotion b/doc/lfun/FindPotion
index 41647da..d63d953 100644
--- a/doc/lfun/FindPotion
+++ b/doc/lfun/FindPotion
@@ -1,4 +1,3 @@
-
 FindPotion()
 ************
 
diff --git a/doc/lfun/FindRangedTarget b/doc/lfun/FindRangedTarget
index 5fa6776..580d9de 100644
--- a/doc/lfun/FindRangedTarget
+++ b/doc/lfun/FindRangedTarget
@@ -1,4 +1,3 @@
-
 FindRangedTarget()
 ******************
 
diff --git a/doc/lfun/FindVictim b/doc/lfun/FindVictim
index ecfa80a..4f6ca5f 100644
--- a/doc/lfun/FindVictim
+++ b/doc/lfun/FindVictim
@@ -1,4 +1,3 @@
-
 FindVictim()
 ************
 
diff --git a/doc/lfun/Flee b/doc/lfun/Flee
index 995cf26..d209923 100644
--- a/doc/lfun/Flee
+++ b/doc/lfun/Flee
@@ -1,4 +1,3 @@
-
 Flee()
 ******
 
diff --git a/doc/lfun/FreeHands b/doc/lfun/FreeHands
index c876b21..a9e27b6 100644
--- a/doc/lfun/FreeHands
+++ b/doc/lfun/FreeHands
@@ -1,4 +1,3 @@
-
 FreeHands()
 ***********
 
diff --git a/doc/lfun/GetAquarium b/doc/lfun/GetAquarium
index 3896ac5..b8d3403 100644
--- a/doc/lfun/GetAquarium
+++ b/doc/lfun/GetAquarium
@@ -1,4 +1,3 @@
-
 GetAquarium()
 *************
 
diff --git a/doc/lfun/GetDetail b/doc/lfun/GetDetail
index 4a2bd71..fdb1e1e 100644
--- a/doc/lfun/GetDetail
+++ b/doc/lfun/GetDetail
@@ -1,4 +1,3 @@
-
 GetDetail()
 ***********
 
diff --git a/doc/lfun/GetDoorsMapping b/doc/lfun/GetDoorsMapping
index 68beb0d..031b44f 100644
--- a/doc/lfun/GetDoorsMapping
+++ b/doc/lfun/GetDoorsMapping
@@ -1,4 +1,3 @@
-
 GetDoorsMapping()
 *****************
 
diff --git a/doc/lfun/GetEnemies b/doc/lfun/GetEnemies
index e288250..b4f5daa 100644
--- a/doc/lfun/GetEnemies
+++ b/doc/lfun/GetEnemies
@@ -1,4 +1,3 @@
-
 GetEnemies()
 ************
 
diff --git a/doc/lfun/GetExits b/doc/lfun/GetExits
index a235b1f..3588a9c 100644
--- a/doc/lfun/GetExits
+++ b/doc/lfun/GetExits
@@ -1,4 +1,3 @@
-
 GetExits()
 **********
 
diff --git a/doc/lfun/GetFValue b/doc/lfun/GetFValue
index 30db195..5d60fe4 100644
--- a/doc/lfun/GetFValue
+++ b/doc/lfun/GetFValue
@@ -1,4 +1,3 @@
-
 GetFValue()
 ***********
 
diff --git a/doc/lfun/GetFValueO b/doc/lfun/GetFValueO
index 25650fb..226c128 100644
--- a/doc/lfun/GetFValueO
+++ b/doc/lfun/GetFValueO
@@ -1,4 +1,3 @@
-
 GetFValueO()
 ************
 
diff --git a/doc/lfun/GetFactor b/doc/lfun/GetFactor
index adc6a19..8a5d2e5 100644
--- a/doc/lfun/GetFactor
+++ b/doc/lfun/GetFactor
@@ -1,4 +1,3 @@
-
 GetFactor()
 ***********
 
diff --git a/doc/lfun/GetGroupMembers b/doc/lfun/GetGroupMembers
index 8c765d7..b3ab25a 100644
--- a/doc/lfun/GetGroupMembers
+++ b/doc/lfun/GetGroupMembers
@@ -1,4 +1,3 @@
-
 GetGroupMembers()
 *****************
 
diff --git a/doc/lfun/GetHelperObject b/doc/lfun/GetHelperObject
index 87b1b8a..360ebcc 100644
--- a/doc/lfun/GetHelperObject
+++ b/doc/lfun/GetHelperObject
@@ -1,4 +1,3 @@
-
 GetHelperObject()
 *****************
 
diff --git a/doc/lfun/GetInfoArr b/doc/lfun/GetInfoArr
index ba6c4c4..71f50bd 100644
--- a/doc/lfun/GetInfoArr
+++ b/doc/lfun/GetInfoArr
@@ -1,4 +1,3 @@
-
 GetInfoArr()
 ************
 
diff --git a/doc/lfun/GetMatMembership b/doc/lfun/GetMatMembership
index e25e991..dc04680 100644
--- a/doc/lfun/GetMatMembership
+++ b/doc/lfun/GetMatMembership
@@ -1,4 +1,3 @@
-
 GetMatMembership()
 ******************
 
diff --git a/doc/lfun/GetOffset b/doc/lfun/GetOffset
index ee982b7..6bb2f60 100644
--- a/doc/lfun/GetOffset
+++ b/doc/lfun/GetOffset
@@ -1,4 +1,3 @@
-
 GetOffset()
 ***********
 
diff --git a/doc/lfun/GetOwner b/doc/lfun/GetOwner
index 92543f0..cd54792 100644
--- a/doc/lfun/GetOwner
+++ b/doc/lfun/GetOwner
@@ -1,4 +1,3 @@
-
 GetOwner()
 **********
 
diff --git a/doc/lfun/GetPhiolenInfos b/doc/lfun/GetPhiolenInfos
index ccd0f68..6211b34 100644
--- a/doc/lfun/GetPhiolenInfos
+++ b/doc/lfun/GetPhiolenInfos
@@ -1,4 +1,3 @@
-
 GetPhiolenInfos()
 *****************
 
diff --git a/doc/lfun/GetReputation b/doc/lfun/GetReputation
index b27d053..1b95310 100644
--- a/doc/lfun/GetReputation
+++ b/doc/lfun/GetReputation
@@ -1,4 +1,3 @@
-
 GetReputation()
 ***************
 
diff --git a/doc/lfun/GetReputations b/doc/lfun/GetReputations
index 134bd2c..23bb4b8 100644
--- a/doc/lfun/GetReputations
+++ b/doc/lfun/GetReputations
@@ -1,4 +1,3 @@
-
 GetReputations()
 ****************
 
diff --git a/doc/lfun/GetShopItems b/doc/lfun/GetShopItems
index 1b8cfa5..b4d3ea6 100644
--- a/doc/lfun/GetShopItems
+++ b/doc/lfun/GetShopItems
@@ -1,4 +1,3 @@
-
 GetShopItems()
 **************
 
diff --git a/doc/lfun/GetVItemClones b/doc/lfun/GetVItemClones
index f483ef8..809c8ff 100644
--- a/doc/lfun/GetVItemClones
+++ b/doc/lfun/GetVItemClones
@@ -1,4 +1,3 @@
-
 GetVItemClones()
 ****************
 
diff --git a/doc/lfun/GetValue b/doc/lfun/GetValue
index 29eea03..a174d6d 100644
--- a/doc/lfun/GetValue
+++ b/doc/lfun/GetValue
@@ -1,4 +1,3 @@
-
 GetValue()
 **********
 
diff --git a/doc/lfun/GetValueO b/doc/lfun/GetValueO
index e9a7522..a50c3b5 100644
--- a/doc/lfun/GetValueO
+++ b/doc/lfun/GetValueO
@@ -1,4 +1,3 @@
-
 GetValueO()
 ***********
 
diff --git a/doc/lfun/Gildenproperties b/doc/lfun/Gildenproperties
index dd5676f..30449d1 100644
--- a/doc/lfun/Gildenproperties
+++ b/doc/lfun/Gildenproperties
@@ -1,4 +1,3 @@
-
 Gildenproperties()
 ******************
 
diff --git a/doc/lfun/GiveMiniQuest b/doc/lfun/GiveMiniQuest
index 7daaef6..1e0d1a0 100644
--- a/doc/lfun/GiveMiniQuest
+++ b/doc/lfun/GiveMiniQuest
@@ -1,4 +1,3 @@
-
 GiveMiniQuest()
 ***************
 
diff --git a/doc/lfun/GiveQuest b/doc/lfun/GiveQuest
index daedc6c..e193b96 100644
--- a/doc/lfun/GiveQuest
+++ b/doc/lfun/GiveQuest
@@ -1,4 +1,3 @@
-
 GiveQuest()
 ***********
 
diff --git a/doc/lfun/GroupName b/doc/lfun/GroupName
index 7b819be..83d063c 100644
--- a/doc/lfun/GroupName
+++ b/doc/lfun/GroupName
@@ -1,4 +1,3 @@
-
 GroupName()
 ***********
 
diff --git a/doc/lfun/GuardExit b/doc/lfun/GuardExit
index 88da3c9..ead144c 100644
--- a/doc/lfun/GuardExit
+++ b/doc/lfun/GuardExit
@@ -1,4 +1,3 @@
-
 GuardExit()
 ***********
 
diff --git a/doc/lfun/GuildName b/doc/lfun/GuildName
index 080fcf9..e51460e 100644
--- a/doc/lfun/GuildName
+++ b/doc/lfun/GuildName
@@ -1,4 +1,3 @@
-
 GuildName()
 ***********
 
diff --git a/doc/lfun/HIsHookConsumer b/doc/lfun/HIsHookConsumer
index b45b816..704ae71 100644
--- a/doc/lfun/HIsHookConsumer
+++ b/doc/lfun/HIsHookConsumer
@@ -1,4 +1,3 @@
-
 HIsHookConsumer()
 *****************
 
diff --git a/doc/lfun/HListHooks b/doc/lfun/HListHooks
index 6578c94..24541c0 100644
--- a/doc/lfun/HListHooks
+++ b/doc/lfun/HListHooks
@@ -1,4 +1,3 @@
-
 HListHooks()
 ************
 
diff --git a/doc/lfun/HRegisterToHook b/doc/lfun/HRegisterToHook
index 7864d62..3ab3320 100644
--- a/doc/lfun/HRegisterToHook
+++ b/doc/lfun/HRegisterToHook
@@ -1,4 +1,3 @@
-
 HRegisterToHook()
 *****************
 
diff --git a/doc/lfun/HUnregisterFromHook b/doc/lfun/HUnregisterFromHook
index 7933312..2a92618 100644
--- a/doc/lfun/HUnregisterFromHook
+++ b/doc/lfun/HUnregisterFromHook
@@ -1,4 +1,3 @@
-
 HUnregisterFromHook()
 *********************
 
diff --git a/doc/lfun/Halt b/doc/lfun/Halt
index 2fb45e8..6dcc989 100644
--- a/doc/lfun/Halt
+++ b/doc/lfun/Halt
@@ -1,4 +1,3 @@
-
 Halt()
 ******
 
diff --git a/doc/lfun/HasAutoloader b/doc/lfun/HasAutoloader
index 0a58f2d..1770564 100644
--- a/doc/lfun/HasAutoloader
+++ b/doc/lfun/HasAutoloader
@@ -1,4 +1,3 @@
-
 HasAutoloader()
 ***************
 
diff --git a/doc/lfun/HasExtraLook b/doc/lfun/HasExtraLook
index 3d52f5a..1592f9f 100644
--- a/doc/lfun/HasExtraLook
+++ b/doc/lfun/HasExtraLook
@@ -1,4 +1,3 @@
-
 HasExtraLook()
 **************
 
diff --git a/doc/lfun/HasMiniQuest b/doc/lfun/HasMiniQuest
index a557bee..0003a4e 100644
--- a/doc/lfun/HasMiniQuest
+++ b/doc/lfun/HasMiniQuest
@@ -1,4 +1,3 @@
-
 HasMiniQuest()
 **************
 
diff --git a/doc/lfun/HitFunc b/doc/lfun/HitFunc
index 2fb9b79..e18fe68 100644
--- a/doc/lfun/HitFunc
+++ b/doc/lfun/HitFunc
@@ -1,4 +1,3 @@
-
 HitFunc()
 *********
 
diff --git a/doc/lfun/HookCallback b/doc/lfun/HookCallback
index b6204b6..953add1 100644
--- a/doc/lfun/HookCallback
+++ b/doc/lfun/HookCallback
@@ -1,4 +1,3 @@
-
 HookCallback()
 **************
 
diff --git a/doc/lfun/Identify b/doc/lfun/Identify
index 9f55541..5722fa1 100644
--- a/doc/lfun/Identify
+++ b/doc/lfun/Identify
@@ -1,4 +1,3 @@
-
 Identify()
 **********
 
diff --git a/doc/lfun/InFight b/doc/lfun/InFight
index df311ce..7df7492 100644
--- a/doc/lfun/InFight
+++ b/doc/lfun/InFight
@@ -1,4 +1,3 @@
-
 InFight()
 *********
 
diff --git a/doc/lfun/InList b/doc/lfun/InList
index 82de3c9..00a280b 100644
--- a/doc/lfun/InList
+++ b/doc/lfun/InList
@@ -1,4 +1,3 @@
-
 InList()
 ********
 
diff --git a/doc/lfun/InformAlcoholEffect b/doc/lfun/InformAlcoholEffect
index 4967510..3db985e 100644
--- a/doc/lfun/InformAlcoholEffect
+++ b/doc/lfun/InformAlcoholEffect
@@ -1,4 +1,3 @@
-
 InformAlcoholEffect()
 *********************
 
diff --git a/doc/lfun/InformDefend b/doc/lfun/InformDefend
index 7fa975d..3b725f8 100644
--- a/doc/lfun/InformDefend
+++ b/doc/lfun/InformDefend
@@ -1,4 +1,3 @@
-
 InformDefend()
 **************
 
@@ -88,6 +87,6 @@
 
    AddDefender(), RemoveDefender(), QueryDefenders(),
    QueryPresentDefenders(), QueryNearDefenders(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   P_DEFENDERS, /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/lfun/InformRowChange b/doc/lfun/InformRowChange
index 7e7b804..113f365 100644
--- a/doc/lfun/InformRowChange
+++ b/doc/lfun/InformRowChange
@@ -1,4 +1,3 @@
-
 InformRowChange()
 *****************
 
diff --git a/doc/lfun/InformUnwear b/doc/lfun/InformUnwear
index 01e9886..0b39829 100644
--- a/doc/lfun/InformUnwear
+++ b/doc/lfun/InformUnwear
@@ -1,4 +1,3 @@
-
 InformUnwear()
 **************
 
diff --git a/doc/lfun/InformUnwield b/doc/lfun/InformUnwield
index 1f10e72..1ab1314 100644
--- a/doc/lfun/InformUnwield
+++ b/doc/lfun/InformUnwield
@@ -1,4 +1,3 @@
-
 InformUnwield()
 ***************
 
diff --git a/doc/lfun/InformWear b/doc/lfun/InformWear
index 6860633..4312ba5 100644
--- a/doc/lfun/InformWear
+++ b/doc/lfun/InformWear
@@ -1,4 +1,3 @@
-
 InformWear()
 ************
 
diff --git a/doc/lfun/InformWield b/doc/lfun/InformWield
index 0c14c2a..692673a 100644
--- a/doc/lfun/InformWield
+++ b/doc/lfun/InformWield
@@ -1,4 +1,3 @@
-
 InformWield()
 *************
 
diff --git a/doc/lfun/InsertEnemy b/doc/lfun/InsertEnemy
index 84885db..a15e52d 100644
--- a/doc/lfun/InsertEnemy
+++ b/doc/lfun/InsertEnemy
@@ -1,4 +1,3 @@
-
 InsertEnemy()
 *************
 
diff --git a/doc/lfun/InsertEnemyTeam b/doc/lfun/InsertEnemyTeam
index b25843d..b264c7c 100644
--- a/doc/lfun/InsertEnemyTeam
+++ b/doc/lfun/InsertEnemyTeam
@@ -1,4 +1,3 @@
-
 InsertEnemyTeam()
 *****************
 
diff --git a/doc/lfun/InsertSensitiveObject b/doc/lfun/InsertSensitiveObject
index 534db19..e71bb19 100644
--- a/doc/lfun/InsertSensitiveObject
+++ b/doc/lfun/InsertSensitiveObject
@@ -1,4 +1,3 @@
-
 InsertSensitiveObject()
 ***********************
 
diff --git a/doc/lfun/InternalModifyAttack b/doc/lfun/InternalModifyAttack
index 2d9f3eb..d286c97 100644
--- a/doc/lfun/InternalModifyAttack
+++ b/doc/lfun/InternalModifyAttack
@@ -1,4 +1,3 @@
-
 InternalModifyAttack()
 **********************
 
diff --git a/doc/lfun/InternalModifyDefend b/doc/lfun/InternalModifyDefend
index 7fbfae5..0ab6f8c 100644
--- a/doc/lfun/InternalModifyDefend
+++ b/doc/lfun/InternalModifyDefend
@@ -1,4 +1,3 @@
-
 InternalModifyDefend()
 **********************
 
diff --git a/doc/lfun/IsArmour b/doc/lfun/IsArmour
index a7e5daf..796fb57 100644
--- a/doc/lfun/IsArmour
+++ b/doc/lfun/IsArmour
@@ -1,4 +1,3 @@
-
 IsArmour()
 **********
 
diff --git a/doc/lfun/IsBottle b/doc/lfun/IsBottle
index 08f0125..90f65c9 100644
--- a/doc/lfun/IsBottle
+++ b/doc/lfun/IsBottle
@@ -1,4 +1,3 @@
-
 IsBottle()
 **********
 
diff --git a/doc/lfun/IsClothing b/doc/lfun/IsClothing
index c51f3f6..5e245c7 100644
--- a/doc/lfun/IsClothing
+++ b/doc/lfun/IsClothing
@@ -1,4 +1,3 @@
-
 IsClothing()
 ************
 
diff --git a/doc/lfun/IsEnemy b/doc/lfun/IsEnemy
index 45fb1fc..4c856dc 100644
--- a/doc/lfun/IsEnemy
+++ b/doc/lfun/IsEnemy
@@ -1,4 +1,3 @@
-
 IsEnemy()
 *********
 
diff --git a/doc/lfun/IsEqual b/doc/lfun/IsEqual
index 34d142f..41aa8e0 100644
--- a/doc/lfun/IsEqual
+++ b/doc/lfun/IsEqual
@@ -1,4 +1,3 @@
-
 IsEqual()
 *********
 
diff --git a/doc/lfun/IsGuildMember b/doc/lfun/IsGuildMember
index 20074d9..d57d7fd 100644
--- a/doc/lfun/IsGuildMember
+++ b/doc/lfun/IsGuildMember
@@ -1,4 +1,3 @@
-
 IsGuildMember()
 ***************
 
diff --git a/doc/lfun/IsPlayerCorpse b/doc/lfun/IsPlayerCorpse
index 3cccc05..0e01d80 100644
--- a/doc/lfun/IsPlayerCorpse
+++ b/doc/lfun/IsPlayerCorpse
@@ -1,4 +1,3 @@
-
 IsPlayerCorpse()
 ****************
 
diff --git a/doc/lfun/IsRoom b/doc/lfun/IsRoom
index 61ce904..d5ad48c 100644
--- a/doc/lfun/IsRoom
+++ b/doc/lfun/IsRoom
@@ -1,4 +1,3 @@
-
 IsRoom()
 ********
 
diff --git a/doc/lfun/IsTeamLeader b/doc/lfun/IsTeamLeader
index 1880cc9..74248b9 100644
--- a/doc/lfun/IsTeamLeader
+++ b/doc/lfun/IsTeamLeader
@@ -1,4 +1,3 @@
-
 IsTeamLeader()
 **************
 
diff --git a/doc/lfun/IsTeamMove b/doc/lfun/IsTeamMove
index 584dc13..620eeec 100644
--- a/doc/lfun/IsTeamMove
+++ b/doc/lfun/IsTeamMove
@@ -1,4 +1,3 @@
-
 IsTeamMove()
 ************
 
diff --git a/doc/lfun/IsUnit b/doc/lfun/IsUnit
index 230f09e..38a6d94 100644
--- a/doc/lfun/IsUnit
+++ b/doc/lfun/IsUnit
@@ -1,4 +1,3 @@
-
 IsUnit()
 ********
 
diff --git a/doc/lfun/Kill b/doc/lfun/Kill
index 1125345..7d5c7c9 100644
--- a/doc/lfun/Kill
+++ b/doc/lfun/Kill
@@ -1,4 +1,3 @@
-
 Kill()
 ******
 
diff --git a/doc/lfun/LearnSkill b/doc/lfun/LearnSkill
index caab276..5916918 100644
--- a/doc/lfun/LearnSkill
+++ b/doc/lfun/LearnSkill
@@ -1,4 +1,3 @@
-
 LearnSkill()
 ************
 
diff --git a/doc/lfun/Leave b/doc/lfun/Leave
index fef5e6f..1c9800c 100644
--- a/doc/lfun/Leave
+++ b/doc/lfun/Leave
@@ -1,4 +1,3 @@
-
 Leave()
 *******
 
diff --git a/doc/lfun/LimitAbility b/doc/lfun/LimitAbility
index 6c31eed..1edb51a 100644
--- a/doc/lfun/LimitAbility
+++ b/doc/lfun/LimitAbility
@@ -1,4 +1,3 @@
-
 LimitAbility()
 **************
 
diff --git a/doc/lfun/MaterialGroup b/doc/lfun/MaterialGroup
index 1b4e61e..4152587 100644
--- a/doc/lfun/MaterialGroup
+++ b/doc/lfun/MaterialGroup
@@ -1,4 +1,3 @@
-
 MaterialGroup()
 ***************
 
diff --git a/doc/lfun/MaterialList b/doc/lfun/MaterialList
index 228f7a8..74e5170 100644
--- a/doc/lfun/MaterialList
+++ b/doc/lfun/MaterialList
@@ -1,4 +1,3 @@
-
 MaterialList()
 **************
 
diff --git a/doc/lfun/MaterialName b/doc/lfun/MaterialName
index 782a9f7..91cb2bd 100644
--- a/doc/lfun/MaterialName
+++ b/doc/lfun/MaterialName
@@ -1,4 +1,3 @@
-
 MaterialName()
 **************
 
diff --git a/doc/lfun/MayAddObject b/doc/lfun/MayAddObject
index 1df06ea..5ce6833 100644
--- a/doc/lfun/MayAddObject
+++ b/doc/lfun/MayAddObject
@@ -1,4 +1,3 @@
-
 MayAddObject()
 **************
 
diff --git a/doc/lfun/MayAddWeight b/doc/lfun/MayAddWeight
index bc8e06d..6ca4681 100644
--- a/doc/lfun/MayAddWeight
+++ b/doc/lfun/MayAddWeight
@@ -1,4 +1,3 @@
-
 MayAddWeight()
 **************
 
diff --git a/doc/lfun/Message b/doc/lfun/Message
index bee1d46..ebb89dd 100644
--- a/doc/lfun/Message
+++ b/doc/lfun/Message
@@ -1,4 +1,3 @@
-
 Message()
 *********
 
diff --git a/doc/lfun/ModifyQuestTime b/doc/lfun/ModifyQuestTime
index 432a362..3d4e90c 100644
--- a/doc/lfun/ModifyQuestTime
+++ b/doc/lfun/ModifyQuestTime
@@ -1,4 +1,3 @@
-
 ModifyQuestTime()
 *****************
 
diff --git a/doc/lfun/ModifySkill b/doc/lfun/ModifySkill
index 70c33ba..5575b28 100644
--- a/doc/lfun/ModifySkill
+++ b/doc/lfun/ModifySkill
@@ -1,4 +1,3 @@
-
 ModifySkill()
 *************
 
diff --git a/doc/lfun/ModifySkillAttribute b/doc/lfun/ModifySkillAttribute
index 1b4fe40..ec19054 100644
--- a/doc/lfun/ModifySkillAttribute
+++ b/doc/lfun/ModifySkillAttribute
@@ -1,4 +1,3 @@
-
 ModifySkillAttribute()
 **********************
 
diff --git a/doc/lfun/More b/doc/lfun/More
index c504209..93d2692 100644
--- a/doc/lfun/More
+++ b/doc/lfun/More
@@ -1,4 +1,3 @@
-
 More()
 ******
 
diff --git a/doc/lfun/NPC_Killed_by b/doc/lfun/NPC_Killed_by
index 3b8801d..5a8c06d 100644
--- a/doc/lfun/NPC_Killed_by
+++ b/doc/lfun/NPC_Killed_by
@@ -1,4 +1,3 @@
-
 NPC_Killed_by()
 ***************
 
diff --git a/doc/lfun/NewDoor b/doc/lfun/NewDoor
index 6048d53..603a226 100644
--- a/doc/lfun/NewDoor
+++ b/doc/lfun/NewDoor
@@ -1,4 +1,3 @@
-
 NewDoor()
 *********
 
diff --git a/doc/lfun/NoParaObjects b/doc/lfun/NoParaObjects
index 4b6013a..94d8cdf 100644
--- a/doc/lfun/NoParaObjects
+++ b/doc/lfun/NoParaObjects
@@ -1,4 +1,3 @@
-
 NoParaObjects()
 ***************
 
diff --git a/doc/lfun/NotifyDestruct b/doc/lfun/NotifyDestruct
index 31e02e9..a73288a 100644
--- a/doc/lfun/NotifyDestruct
+++ b/doc/lfun/NotifyDestruct
@@ -1,4 +1,3 @@
-
 NotifyDestruct()
 ****************
 
diff --git a/doc/lfun/NotifyInsert b/doc/lfun/NotifyInsert
index 5ae2070..59fe355 100644
--- a/doc/lfun/NotifyInsert
+++ b/doc/lfun/NotifyInsert
@@ -1,4 +1,3 @@
-
 NotifyInsert()
 **************
 
diff --git a/doc/lfun/NotifyLeave b/doc/lfun/NotifyLeave
index fbfc1c3..e1875e6 100644
--- a/doc/lfun/NotifyLeave
+++ b/doc/lfun/NotifyLeave
@@ -1,4 +1,3 @@
-
 NotifyLeave()
 *************
 
diff --git a/doc/lfun/NotifyMove b/doc/lfun/NotifyMove
index 18261f8..0090c3c 100644
--- a/doc/lfun/NotifyMove
+++ b/doc/lfun/NotifyMove
@@ -1,4 +1,3 @@
-
 NotifyMove()
 ************
 
diff --git a/doc/lfun/NotifyPlayerDeath b/doc/lfun/NotifyPlayerDeath
index 4cf3af0..439a67e 100644
--- a/doc/lfun/NotifyPlayerDeath
+++ b/doc/lfun/NotifyPlayerDeath
@@ -1,4 +1,3 @@
-
 NotifyPlayerDeath()
 *******************
 
diff --git a/doc/lfun/NotifyRemove b/doc/lfun/NotifyRemove
index 2604b77..6509042 100644
--- a/doc/lfun/NotifyRemove
+++ b/doc/lfun/NotifyRemove
@@ -1,4 +1,3 @@
-
 NotifyRemove()
 **************
 
diff --git a/doc/lfun/NotifyTimedAttrModExpired b/doc/lfun/NotifyTimedAttrModExpired
index 09dc168..0d0b449 100644
--- a/doc/lfun/NotifyTimedAttrModExpired
+++ b/doc/lfun/NotifyTimedAttrModExpired
@@ -1,4 +1,3 @@
-
 NotifyTimedAttrModExpired()
 ***************************
 
diff --git a/doc/lfun/NotifyXMAttrModLimitViolation b/doc/lfun/NotifyXMAttrModLimitViolation
index f3c54a4..7c9881b 100644
--- a/doc/lfun/NotifyXMAttrModLimitViolation
+++ b/doc/lfun/NotifyXMAttrModLimitViolation
@@ -1,4 +1,3 @@
-
 NotifyXMAttrModLimitViolation()
 *******************************
 
diff --git a/doc/lfun/Pacify b/doc/lfun/Pacify
index 8b94854..6296c4f 100644
--- a/doc/lfun/Pacify
+++ b/doc/lfun/Pacify
@@ -1,4 +1,3 @@
-
 Pacify()
 ********
 
diff --git a/doc/lfun/PayIn b/doc/lfun/PayIn
index 35616de..be7e3a4 100644
--- a/doc/lfun/PayIn
+++ b/doc/lfun/PayIn
@@ -1,4 +1,3 @@
-
 PayIn()
 *******
 
diff --git a/doc/lfun/PlayerQuit b/doc/lfun/PlayerQuit
index 0eb8fbf..e690c2a 100644
--- a/doc/lfun/PlayerQuit
+++ b/doc/lfun/PlayerQuit
@@ -1,4 +1,3 @@
-
 PlayerQuit()
 ************
 
diff --git a/doc/lfun/PresentEnemies b/doc/lfun/PresentEnemies
index d306a78..cd5029f 100644
--- a/doc/lfun/PresentEnemies
+++ b/doc/lfun/PresentEnemies
@@ -1,4 +1,3 @@
-
 PresentEnemies()
 ****************
 
diff --git a/doc/lfun/PresentEnemyRows b/doc/lfun/PresentEnemyRows
index 003d6c3..2f3e36f 100644
--- a/doc/lfun/PresentEnemyRows
+++ b/doc/lfun/PresentEnemyRows
@@ -1,4 +1,3 @@
-
 PresentEnemyRows()
 ******************
 
diff --git a/doc/lfun/PresentPosition b/doc/lfun/PresentPosition
index c94d129..df38df4 100644
--- a/doc/lfun/PresentPosition
+++ b/doc/lfun/PresentPosition
@@ -1,4 +1,3 @@
-
 PresentPosition()
 *****************
 
diff --git a/doc/lfun/PresentTeamPositions b/doc/lfun/PresentTeamPositions
index 3af354b..ef13404 100644
--- a/doc/lfun/PresentTeamPositions
+++ b/doc/lfun/PresentTeamPositions
@@ -1,4 +1,3 @@
-
 PresentTeamPositions()
 **********************
 
diff --git a/doc/lfun/PresentTeamRows b/doc/lfun/PresentTeamRows
index 7875918..c598645 100644
--- a/doc/lfun/PresentTeamRows
+++ b/doc/lfun/PresentTeamRows
@@ -1,4 +1,3 @@
-
 PresentTeamRows()
 *****************
 
diff --git a/doc/lfun/PreventFollow b/doc/lfun/PreventFollow
index f8b0343..2092e0c 100644
--- a/doc/lfun/PreventFollow
+++ b/doc/lfun/PreventFollow
@@ -1,4 +1,3 @@
-
 PreventFollow()
 ***************
 
diff --git a/doc/lfun/PreventInsert b/doc/lfun/PreventInsert
index e58e827..5d639fe 100644
--- a/doc/lfun/PreventInsert
+++ b/doc/lfun/PreventInsert
@@ -1,4 +1,3 @@
-
 PreventInsert()
 ***************
 
diff --git a/doc/lfun/PreventInsertLiving b/doc/lfun/PreventInsertLiving
index fbde29f..1c262b8 100644
--- a/doc/lfun/PreventInsertLiving
+++ b/doc/lfun/PreventInsertLiving
@@ -1,4 +1,3 @@
-
 PreventInsertLiving()
 *********************
 
diff --git a/doc/lfun/PreventLeave b/doc/lfun/PreventLeave
index 24c33d2..36a621e 100644
--- a/doc/lfun/PreventLeave
+++ b/doc/lfun/PreventLeave
@@ -1,4 +1,3 @@
-
 PreventLeave()
 **************
 
diff --git a/doc/lfun/PreventLeaveLiving b/doc/lfun/PreventLeaveLiving
index 20a5844..64f614f 100644
--- a/doc/lfun/PreventLeaveLiving
+++ b/doc/lfun/PreventLeaveLiving
@@ -1,4 +1,3 @@
-
 PreventLeaveLiving()
 ********************
 
diff --git a/doc/lfun/PreventMove b/doc/lfun/PreventMove
index ec8c1da..e6092f0 100644
--- a/doc/lfun/PreventMove
+++ b/doc/lfun/PreventMove
@@ -1,4 +1,3 @@
-
 PreventMove()
 *************
 
diff --git a/doc/lfun/PrintList b/doc/lfun/PrintList
index d4caffc..0bf93d2 100644
--- a/doc/lfun/PrintList
+++ b/doc/lfun/PrintList
@@ -1,4 +1,3 @@
-
 PrintList()
 ***********
 
diff --git a/doc/lfun/Query b/doc/lfun/Query
index 27c2d9e..88eb459 100644
--- a/doc/lfun/Query
+++ b/doc/lfun/Query
@@ -1,4 +1,3 @@
-
 Query()
 *******
 
@@ -6,7 +5,7 @@
 FUNKTION
 ========
 
-   public varargs mixed Query(string name, int Type);
+   public mixed Query(string name, int Type = F_VALUE);
 
 
 DEFINIERT IN
diff --git a/doc/lfun/QueryAllDoors b/doc/lfun/QueryAllDoors
index cdf7140..f8b9b03 100644
--- a/doc/lfun/QueryAllDoors
+++ b/doc/lfun/QueryAllDoors
@@ -1,4 +1,3 @@
-
 QueryAllDoors()
 ***************
 
diff --git a/doc/lfun/QueryArmourByType b/doc/lfun/QueryArmourByType
index 5c9da6f..b1c9057 100644
--- a/doc/lfun/QueryArmourByType
+++ b/doc/lfun/QueryArmourByType
@@ -1,4 +1,3 @@
-
 QueryArmourByType()
 *******************
 
diff --git a/doc/lfun/QueryArrived b/doc/lfun/QueryArrived
index 9c4de60..492d88b 100644
--- a/doc/lfun/QueryArrived
+++ b/doc/lfun/QueryArrived
@@ -1,4 +1,3 @@
-
 QueryArrived()
 **************
 
diff --git a/doc/lfun/QueryArticle b/doc/lfun/QueryArticle
index 17a06ff..cd1e73e 100644
--- a/doc/lfun/QueryArticle
+++ b/doc/lfun/QueryArticle
@@ -1,4 +1,3 @@
-
 QueryArticle()
 **************
 
diff --git a/doc/lfun/QueryAttribute b/doc/lfun/QueryAttribute
index 978c6c0..8a2362e 100644
--- a/doc/lfun/QueryAttribute
+++ b/doc/lfun/QueryAttribute
@@ -1,4 +1,3 @@
-
 QueryAttribute()
 ****************
 
diff --git a/doc/lfun/QueryAttributeOffset b/doc/lfun/QueryAttributeOffset
index b16d10c..2197d21 100644
--- a/doc/lfun/QueryAttributeOffset
+++ b/doc/lfun/QueryAttributeOffset
@@ -1,4 +1,3 @@
-
 QueryAttributeOffset()
 **********************
 
diff --git a/doc/lfun/QueryBuyFact b/doc/lfun/QueryBuyFact
index 3f728c3..65c5b37 100644
--- a/doc/lfun/QueryBuyFact
+++ b/doc/lfun/QueryBuyFact
@@ -1,4 +1,3 @@
-
 QueryBuyFact()
 **************
 
diff --git a/doc/lfun/QueryBuyValue b/doc/lfun/QueryBuyValue
index cecc57c..0ef0612 100644
--- a/doc/lfun/QueryBuyValue
+++ b/doc/lfun/QueryBuyValue
@@ -1,4 +1,3 @@
-
 QueryBuyValue()
 ***************
 
diff --git a/doc/lfun/QueryCoinsPerUnits b/doc/lfun/QueryCoinsPerUnits
index 7261758..1a30735 100644
--- a/doc/lfun/QueryCoinsPerUnits
+++ b/doc/lfun/QueryCoinsPerUnits
@@ -1,4 +1,3 @@
-
 QueryCoinsPerUnits()
 ********************
 
diff --git a/doc/lfun/QueryDamage b/doc/lfun/QueryDamage
index 812636a..bcb566e 100644
--- a/doc/lfun/QueryDamage
+++ b/doc/lfun/QueryDamage
@@ -1,4 +1,3 @@
-
 QueryDamage()
 *************
 
diff --git a/doc/lfun/QueryDefaultHome b/doc/lfun/QueryDefaultHome
index aee35e8..63d87ea 100644
--- a/doc/lfun/QueryDefaultHome
+++ b/doc/lfun/QueryDefaultHome
@@ -1,4 +1,3 @@
-
 QueryDefaultHome()
 ******************
 
diff --git a/doc/lfun/QueryDefend b/doc/lfun/QueryDefend
index fa3fb11..5a7b981 100644
--- a/doc/lfun/QueryDefend
+++ b/doc/lfun/QueryDefend
@@ -1,4 +1,3 @@
-
 QueryDefend()
 *************
 
diff --git a/doc/lfun/QueryDefenders b/doc/lfun/QueryDefenders
index 1c1bae8..11bede8 100644
--- a/doc/lfun/QueryDefenders
+++ b/doc/lfun/QueryDefenders
@@ -1,4 +1,3 @@
-
 QueryDefenders()
 ****************
 
@@ -32,7 +31,7 @@
 ==========
 
    AddDefender(), RemoveDefender(), QueryPresentDefenders(),
-   QueryNearDefenders(), InformDefend(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   QueryNearDefenders(), InformDefend(), DefendOther(), P_DEFENDERS,
+   /std/living/combat.c
 
 Letzte Aenderung: 29.10.2022, Bugfix
diff --git a/doc/lfun/QueryDisguise b/doc/lfun/QueryDisguise
index 3cf4b8d..413579b 100644
--- a/doc/lfun/QueryDisguise
+++ b/doc/lfun/QueryDisguise
@@ -1,4 +1,3 @@
-
 QueryDisguise()
 ***************
 
diff --git a/doc/lfun/QueryDoorKey b/doc/lfun/QueryDoorKey
index f606c52..3362923 100644
--- a/doc/lfun/QueryDoorKey
+++ b/doc/lfun/QueryDoorKey
@@ -1,4 +1,3 @@
-
 QueryDoorKey()
 **************
 
diff --git a/doc/lfun/QueryDoorStatus b/doc/lfun/QueryDoorStatus
index 74f7034..40de3a2 100644
--- a/doc/lfun/QueryDoorStatus
+++ b/doc/lfun/QueryDoorStatus
@@ -1,4 +1,3 @@
-
 QueryDoorStatus()
 *****************
 
diff --git a/doc/lfun/QueryDu b/doc/lfun/QueryDu
index aa184cc..149ba98 100644
--- a/doc/lfun/QueryDu
+++ b/doc/lfun/QueryDu
@@ -1,4 +1,3 @@
-
 QueryDu()
 *********
 
diff --git a/doc/lfun/QueryEnemies b/doc/lfun/QueryEnemies
index fc00c0e..23f0778 100644
--- a/doc/lfun/QueryEnemies
+++ b/doc/lfun/QueryEnemies
@@ -1,4 +1,3 @@
-
 QueryEnemies()
 **************
 
diff --git a/doc/lfun/QueryFlaw b/doc/lfun/QueryFlaw
index e12a119..185b974 100644
--- a/doc/lfun/QueryFlaw
+++ b/doc/lfun/QueryFlaw
@@ -1,4 +1,3 @@
-
 QueryFlaw()
 ***********
 
diff --git a/doc/lfun/QueryGenderString b/doc/lfun/QueryGenderString
index 845758f..771d9e5 100644
--- a/doc/lfun/QueryGenderString
+++ b/doc/lfun/QueryGenderString
@@ -1,4 +1,3 @@
-
 QueryGenderString()
 *******************
 
diff --git a/doc/lfun/QueryGramsPerUnits b/doc/lfun/QueryGramsPerUnits
index 62d5580..776d767 100644
--- a/doc/lfun/QueryGramsPerUnits
+++ b/doc/lfun/QueryGramsPerUnits
@@ -1,4 +1,3 @@
-
 QueryGramsPerUnits()
 ********************
 
diff --git a/doc/lfun/QueryGroupedKeys b/doc/lfun/QueryGroupedKeys
index 5101e8d..9451c30 100644
--- a/doc/lfun/QueryGroupedKeys
+++ b/doc/lfun/QueryGroupedKeys
@@ -1,4 +1,3 @@
-
 QueryGroupedKeys()
 ******************
 
diff --git a/doc/lfun/QueryGuest b/doc/lfun/QueryGuest
index 61cfb04..188a23c 100644
--- a/doc/lfun/QueryGuest
+++ b/doc/lfun/QueryGuest
@@ -1,4 +1,3 @@
-
 QueryGuest()
 ************
 
diff --git a/doc/lfun/QueryHealInfo b/doc/lfun/QueryHealInfo
index cc42fbc..958b2a2 100644
--- a/doc/lfun/QueryHealInfo
+++ b/doc/lfun/QueryHealInfo
@@ -1,4 +1,3 @@
-
 QueryHealInfo()
 ***************
 
diff --git a/doc/lfun/QueryMaterial b/doc/lfun/QueryMaterial
index 94a5367..e1016dc 100644
--- a/doc/lfun/QueryMaterial
+++ b/doc/lfun/QueryMaterial
@@ -1,4 +1,3 @@
-
 QueryMaterial()
 ***************
 
diff --git a/doc/lfun/QueryMaterialGroup b/doc/lfun/QueryMaterialGroup
index 3365f73..5eb3b80 100644
--- a/doc/lfun/QueryMaterialGroup
+++ b/doc/lfun/QueryMaterialGroup
@@ -1,4 +1,3 @@
-
 QueryMaterialGroup()
 ********************
 
diff --git a/doc/lfun/QueryMaxQP b/doc/lfun/QueryMaxQP
index 7b5aba2..0e66805 100644
--- a/doc/lfun/QueryMaxQP
+++ b/doc/lfun/QueryMaxQP
@@ -1,4 +1,3 @@
-
 QueryMaxQP()
 ************
 
diff --git a/doc/lfun/QueryMoney b/doc/lfun/QueryMoney
index b0b4aa8..aa4b378 100644
--- a/doc/lfun/QueryMoney
+++ b/doc/lfun/QueryMoney
@@ -1,4 +1,3 @@
-
 QueryMoney()
 ************
 
diff --git a/doc/lfun/QueryName b/doc/lfun/QueryName
index 71e65e3..0678a01 100644
--- a/doc/lfun/QueryName
+++ b/doc/lfun/QueryName
@@ -1,4 +1,3 @@
-
 QueryName()
 ***********
 
diff --git a/doc/lfun/QueryNearDefenders b/doc/lfun/QueryNearDefenders
index 2526ebd..31a343e 100644
--- a/doc/lfun/QueryNearDefenders
+++ b/doc/lfun/QueryNearDefenders
@@ -1,4 +1,3 @@
-
 QueryNearDefenders()
 ********************
 
@@ -43,6 +42,6 @@
 
    AddDefender(), RemoveDefender(), QueryDefenders(),
    QueryPresentDefenders(), InformDefend(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   P_DEFENDERS, /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/lfun/QueryOpenMiniQuestsForPlayer b/doc/lfun/QueryOpenMiniQuestsForPlayer
index f43d7cc..3b17d2b 100644
--- a/doc/lfun/QueryOpenMiniQuestsForPlayer
+++ b/doc/lfun/QueryOpenMiniQuestsForPlayer
@@ -1,4 +1,3 @@
-
 QueryOpenMiniQuestsForPlayer()
 ******************************
 
diff --git a/doc/lfun/QueryOwn b/doc/lfun/QueryOwn
index 6179f38..3225260 100644
--- a/doc/lfun/QueryOwn
+++ b/doc/lfun/QueryOwn
@@ -1,4 +1,3 @@
-
 QueryOwn()
 **********
 
diff --git a/doc/lfun/QueryPassengers b/doc/lfun/QueryPassengers
index d6f9331..021b2b4 100644
--- a/doc/lfun/QueryPassengers
+++ b/doc/lfun/QueryPassengers
@@ -1,4 +1,3 @@
-
 QueryPassengers()
 *****************
 
diff --git a/doc/lfun/QueryPosition b/doc/lfun/QueryPosition
index 08af6fe..4460b53 100644
--- a/doc/lfun/QueryPosition
+++ b/doc/lfun/QueryPosition
@@ -1,4 +1,3 @@
-
 QueryPosition()
 ***************
 
diff --git a/doc/lfun/QueryPossPronoun b/doc/lfun/QueryPossPronoun
index 90af78a..7a69a1b 100644
--- a/doc/lfun/QueryPossPronoun
+++ b/doc/lfun/QueryPossPronoun
@@ -1,4 +1,3 @@
-
 QueryPossPronoun()
 ******************
 
diff --git a/doc/lfun/QueryPrayRoom b/doc/lfun/QueryPrayRoom
index b783174..65cca23 100644
--- a/doc/lfun/QueryPrayRoom
+++ b/doc/lfun/QueryPrayRoom
@@ -1,4 +1,3 @@
-
 QueryPrayRoom()
 ***************
 
diff --git a/doc/lfun/QueryPreferedEnemy b/doc/lfun/QueryPreferedEnemy
index 10a8ae0..5e2e6b2 100644
--- a/doc/lfun/QueryPreferedEnemy
+++ b/doc/lfun/QueryPreferedEnemy
@@ -1,4 +1,3 @@
-
 QueryPreferedEnemy()
 ********************
 
diff --git a/doc/lfun/QueryPresentDefenders b/doc/lfun/QueryPresentDefenders
index 37e0d6c..1be3550 100644
--- a/doc/lfun/QueryPresentDefenders
+++ b/doc/lfun/QueryPresentDefenders
@@ -1,4 +1,3 @@
-
 QueryPresentDefenders()
 ***********************
 
@@ -42,7 +41,7 @@
 ==========
 
    AddDefender(), RemoveDefender(), QueryDefenders(),
-   QueryNearDefenders(), InformDefend(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   QueryNearDefenders(), InformDefend(), DefendOther(), P_DEFENDERS,
+   /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/lfun/QueryPronoun b/doc/lfun/QueryPronoun
index 39088f9..e23ea3b 100644
--- a/doc/lfun/QueryPronoun
+++ b/doc/lfun/QueryPronoun
@@ -1,4 +1,3 @@
-
 QueryPronoun()
 **************
 
diff --git a/doc/lfun/QueryProp b/doc/lfun/QueryProp
index 71c4fdf..1ce4ff6 100644
--- a/doc/lfun/QueryProp
+++ b/doc/lfun/QueryProp
@@ -1,4 +1,3 @@
-
 QueryProp()
 ***********
 
diff --git a/doc/lfun/QueryProperties b/doc/lfun/QueryProperties
index 6949e0f..ea34a8b 100644
--- a/doc/lfun/QueryProperties
+++ b/doc/lfun/QueryProperties
@@ -1,4 +1,3 @@
-
 QueryProperties()
 *****************
 
diff --git a/doc/lfun/QueryQuest b/doc/lfun/QueryQuest
index 496af27..ae80c68 100644
--- a/doc/lfun/QueryQuest
+++ b/doc/lfun/QueryQuest
@@ -1,4 +1,3 @@
-
 QueryQuest()
 ************
 
diff --git a/doc/lfun/QueryQuestTime b/doc/lfun/QueryQuestTime
index 9b93c8d..ceae037 100644
--- a/doc/lfun/QueryQuestTime
+++ b/doc/lfun/QueryQuestTime
@@ -1,4 +1,3 @@
-
 QueryQuestTime()
 ****************
 
diff --git a/doc/lfun/QueryRealAttribute b/doc/lfun/QueryRealAttribute
index 246008f..5e64ea4 100644
--- a/doc/lfun/QueryRealAttribute
+++ b/doc/lfun/QueryRealAttribute
@@ -1,4 +1,3 @@
-
 QueryRealAttribute()
 ********************
 
diff --git a/doc/lfun/QuerySellValue b/doc/lfun/QuerySellValue
index 4d5a518..99059c6 100644
--- a/doc/lfun/QuerySellValue
+++ b/doc/lfun/QuerySellValue
@@ -1,4 +1,3 @@
-
 QuerySellValue()
 ****************
 
diff --git a/doc/lfun/QuerySkill b/doc/lfun/QuerySkill
index 0978df1..9606872 100644
--- a/doc/lfun/QuerySkill
+++ b/doc/lfun/QuerySkill
@@ -1,4 +1,3 @@
-
 QuerySkill()
 ************
 
diff --git a/doc/lfun/QuerySkillAbility b/doc/lfun/QuerySkillAbility
index fd8666f..9785f0e 100644
--- a/doc/lfun/QuerySkillAbility
+++ b/doc/lfun/QuerySkillAbility
@@ -1,4 +1,3 @@
-
 QuerySkillAbility()
 *******************
 
diff --git a/doc/lfun/QuerySkillAttribute b/doc/lfun/QuerySkillAttribute
index 1b3a71e..57c75ef 100644
--- a/doc/lfun/QuerySkillAttribute
+++ b/doc/lfun/QuerySkillAttribute
@@ -1,4 +1,3 @@
-
 QuerySkillAttribute()
 *********************
 
diff --git a/doc/lfun/QuerySkillAttributeModifier b/doc/lfun/QuerySkillAttributeModifier
index 055815e..05edc06 100644
--- a/doc/lfun/QuerySkillAttributeModifier
+++ b/doc/lfun/QuerySkillAttributeModifier
@@ -1,4 +1,3 @@
-
 QuerySkillAttributeModifier()
 *****************************
 
diff --git a/doc/lfun/QuerySkillBonus b/doc/lfun/QuerySkillBonus
index 1cb82e8..939a314 100644
--- a/doc/lfun/QuerySkillBonus
+++ b/doc/lfun/QuerySkillBonus
@@ -1,4 +1,3 @@
-
 QuerySkillBonus()
 *****************
 
diff --git a/doc/lfun/QueryStorageRoom b/doc/lfun/QueryStorageRoom
index 4442237..085053e 100644
--- a/doc/lfun/QueryStorageRoom
+++ b/doc/lfun/QueryStorageRoom
@@ -1,4 +1,3 @@
-
 QueryStorageRoom()
 ******************
 
diff --git a/doc/lfun/QueryTimedAttrModifier b/doc/lfun/QueryTimedAttrModifier
index 4d858a8..5abdfba 100644
--- a/doc/lfun/QueryTimedAttrModifier
+++ b/doc/lfun/QueryTimedAttrModifier
@@ -1,4 +1,3 @@
-
 QueryTimedAttrModifier()
 ************************
 
diff --git a/doc/lfun/QueryTotalQP b/doc/lfun/QueryTotalQP
index 1471010..7acc775 100644
--- a/doc/lfun/QueryTotalQP
+++ b/doc/lfun/QueryTotalQP
@@ -1,4 +1,3 @@
-
 QueryTotalQP()
 **************
 
diff --git a/doc/lfun/QueryUser b/doc/lfun/QueryUser
index ad1e4fa..2e6303c 100644
--- a/doc/lfun/QueryUser
+++ b/doc/lfun/QueryUser
@@ -1,4 +1,3 @@
-
 QueryUser()
 ***********
 
diff --git a/doc/lfun/QueryValidObject b/doc/lfun/QueryValidObject
index 649a0b2..ee0aed2 100644
--- a/doc/lfun/QueryValidObject
+++ b/doc/lfun/QueryValidObject
@@ -1,4 +1,3 @@
-
 QueryValidObject()
 ******************
 
diff --git a/doc/lfun/ReceiveMsg b/doc/lfun/ReceiveMsg
index 96d01a6..33a51ea 100644
--- a/doc/lfun/ReceiveMsg
+++ b/doc/lfun/ReceiveMsg
@@ -1,4 +1,3 @@
-
 ReceiveMsg()
 ************
 
@@ -49,6 +48,8 @@
       MT_LOOK nur an Nichtblinde
       MT_LISTEN nur an Nichttaube
       MT_DEBUG nur an Magier/Testspieler
+      Bei gesetztem MSG_ALL_SENSES muessen alle fuer die angegebenen Typen
+      relevanten Sinne des Empfaengers benutzbar sein, nicht nur einer.
    2) Pruefen auf Ignorieren von
       - Aktion ('msg_action')
         - mit 'msg_action' || query_verb()
@@ -59,11 +60,17 @@
    4) Speicherung im Kobold (Typ MT_COMM + aktiver Kobold)
    5) Umbrechen unter Beruecksichtigung von indent, 'msg_typ'-Flags
       fuer Umbruch und P_PREPEND_BS
+   6) Ersetzen von Farbtags entsprechendes Terminaltyps des Clients.
 
    Raeume definieren standardmaessig ebenfalls ein ReceiveMsg(), welches in
    jedem Objekt im Raum ReceiveMsg() mit den uebergebenen Argumenten aufruft.
-   In diesem Fall ist der Rueckgabe der kleinste von allen gerufenen
-   ReceiveMsg() zurueckgelieferte Wert.
+   In diesem Fall ist der Rueckgabe 'void'. Ein einfacher 'int' waere hier
+   nicht hilfreich und einen komplexer Rueckgabewert wuerde niemand auswerten
+   wollen.
+
+   Zur einfacheren Verwendung gibt es einige Wrapper-Funktionen, siehe
+   :doc:`ReceiveMultisense`, :doc:`ReceiveNotify`, :doc:`ReceiveSay` und
+   :doc:`ReceiveTeilemit`, :doc:`ReceiveWave`.
 
 
 RUeCKGABEWERT
@@ -225,6 +232,10 @@
      MSG_DONT_STORE  Nachricht darf nicht in die Comm-History
      MSG_DONT_WRAP   Nachricht nicht per break_string umbrechen
      MSG_DONT_IGNORE Nachricht kann nicht ignoriert werden
+     MSG_ALL_TYPES   alle relevanten Sinne fuer die angegebenen Nachrichten-
+                     typen muessen benutzbar sein (UND statt ODER).
+     MSG_ALERT       Nachricht loest eine vom Spieler konfigurierte
+                     Benachrichtigung aus (z.B. Piepston)
 
      MSG_BS_LEAVE_LFS    wie BS_LEAVE_MY_LFS fuer break_string()
      MSG_BS_SINGLE_SPACE wie BS_SINGLE_SPACE fuer break_string()
@@ -269,9 +280,10 @@
 SIEHE AUCH
 ==========
 
+   Wrapper-Funktionen: :doc:`ReceiveMultisense`, :doc:`ReceiveNotify`, :doc:`ReceiveSay`, :doc:`ReceiveTeilemit`
    Verwandt: send_room(SE)
    Lfuns:    TestIgnore(L)
    Efuns:    tell_object(E), catch_tell(L), catch_msg(L)
              query_verb(E), query_once_interactive(E), break_string(SE)
 
-13.03.2016, Zesstra
+Letzte Aenderung: 22.01.2022
diff --git a/doc/lfun/ReceiveMultisense b/doc/lfun/ReceiveMultisense
new file mode 100644
index 0000000..db97f64
--- /dev/null
+++ b/doc/lfun/ReceiveMultisense
@@ -0,0 +1,109 @@
+ReceiveMultisense()
+*******************
+
+
+FUNKTION
+========
+
+   public void ReceiveMultisense(struct wave_s* msgs, string action =
+   0, int commontypes = 0)
+
+
+DEFINIERT IN
+============
+
+   /std/living/comm.c /std/room/comm.c
+
+
+ARGUMENTE
+=========
+
+   struct wave_s* msgs
+      Die auszugebenden Nachrichten mit Zusatzinformationen. (s.u.)
+
+   string action
+      action wird als <action> an ReceiveMsg() weitergegeben.
+
+   int commontypes
+      Muss einen oder mehrere veroderte messagetypes aus ReceiveMsg()
+      enthalten. Diese werden bei jedem Aufruf von ReceiveMsg() mit
+      dem jeweiligen Messagetyp aus <msgs> verodert.
+
+
+BESCHREIBUNG
+============
+
+   Versucht, eine der in <msgs> angegebenen Nachrichten an den
+   Empfaenger zuzustellen.
+
+   Das Array <msgs> wird der Reihe nach abgearbeitet, bis eine
+   Nachricht zugestellt werden konnte, das Ende von <msgs> erreicht
+   wurde oder eine Nachricht *aus anderen Gruenden* als einem
+   blockierten Sinn abgelehnt wurde. Der Grund fuer letzteres ist,
+   dass andere Fehler von ReceiveMsg() (fast) immer auch bei allen
+   (weiteren) Alternativen auftreten werden.
+
+   <msgs> ist ein Array von struct wave_s. Diese ist in
+   /secure/simul_efun/comm.c definiert (und steht allen Programmen
+   automatisch zur Verfuegung). Sie hat die Eintraege string msg, int
+   type, string prefix. wave_s.msg wird vor der Ausgabe von
+   replace_personal() verarbeitet. Als erstes Objekt wird das
+   aufrufende Objekt uebergeben, als zweites this_player(), sofern
+   vorhanden. wave_s.msg wird automatisch auf 78 Zeichen umgebrochen,
+   vorhandene Zeilenumbrueche werden dabei beibehalten. Fuer
+   wave_s.prefix findet keine Ersetzung statt.
+
+
+RUECKGABEWERT
+=============
+
+
+in Lebewesen
+------------
+
+   Der Rueckgabe ist der Rueckgabewert von ReceiveMsg() fuer die
+   zuletzt versuchte Meldung.
+
+   Wenn dies einen Erfolg (MSG_DELIVERED, MSG_BUFFERED) darstellt,
+   wurde irgendeine Meldung erfolgreich zugestellt. Falls es
+   MSG_SENSE_BLOCK ist, sind alle versuchten Sinne blockiert und keine
+   Nachricht wurde zugestellt. Ist es ein anderer Fehler ist, wurde
+   keine Nachricht zugestellt (und ggf. nicht alle versucht).
+
+
+in Containern/Raeumen
+---------------------
+
+   Die Funktion hat keinen Rueckgabewert. Der Grund hierfuer ist, dass
+   dieser ein ggf. tief verschachteltes Mapping waere, was keiner mehr
+   prueft.
+
+
+BEISPIEL
+========
+
+   this_player().ReceiveMultisense(
+      ({
+         (<wave_s>
+            msg: "Ein Drache landet neben Dir.", type: MT_LOOK),
+
+         (<wave_s>
+            message: "Du hoerst ein Rumpeln, als waere gerade etwas
+            Grosses "
+               "neben Dir eingeschlagen.",
+
+            type: MT_LISTEN),
+
+         (<wave_s>
+            msg: "Du spuerst einen heftigen Luftzug.", type:
+            MT_FEEL)})
+
+      MA_MOVE_IN);
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg(), replace_personal()
+
+Letzte Aenderung: 21.09.2022, Zesstra
diff --git a/doc/lfun/ReceiveNotify b/doc/lfun/ReceiveNotify
new file mode 100644
index 0000000..a904af8
--- /dev/null
+++ b/doc/lfun/ReceiveNotify
@@ -0,0 +1,64 @@
+ReceiveNotify()
+***************
+
+
+FUNKTION
+========
+
+   public int ReceiveNotify(string msg, string action = 0)
+
+
+DEFINIERT IN
+============
+
+   /std/living/comm.c /sys/living/comm.h
+
+
+ARGUMENTE
+=========
+
+   string msg
+      Die auszugebende Meldung. Sie wird automatisch auf 78 Zeichen
+      umgebrochen, vorhandene Zeilenumbrueche werden dabei
+      beibehalten.
+
+   string action
+      action wird als action an ReceiveMsg() weitergegeben.
+
+
+BESCHREIBUNG
+============
+
+   Sendet msg via ReceiveMsg() mit MT_NOTIFICATION | MSG_BS_LEAVE_LFS
+   und den uebergebenen bzw. voreingestellten Werten fuer prefix und
+   action an den Empfaenger.
+
+
+BEMERKUNGEN
+===========
+
+   Bitte beachten: MT_NOTIFICATION ist fuer Kommandobestaetigungen,
+   Statusmeldungen o.ae., d.h. out-of-character Meldungen vorgesehen.
+   Es soll nicht als Sammeltyp fuer nicht-ignorierbare Meldungen
+   verwendet werden, dafuer gibt es MSG_DONT_IGNORE in Kombination mit
+   den anderen Typen.
+
+
+RUECKGABEWERT
+=============
+
+   Der Rueckgabewert von ReceiveMsg().
+
+
+BEISPIEL
+========
+
+   this_player().ReceiveNotify("Dazu reicht dein Level nicht aus.");
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg()
+
+Letzte Aenderung: 07.10.2021, Bugfix
diff --git a/doc/lfun/ReceiveSay b/doc/lfun/ReceiveSay
new file mode 100644
index 0000000..41eee81
--- /dev/null
+++ b/doc/lfun/ReceiveSay
@@ -0,0 +1,118 @@
+ReceiveSay()
+************
+
+
+FUNKTION
+========
+
+   public void ReceiveSay(string msg, string prefix =
+   previous_object().Name(WER, 1) + " sagt: ",
+      struct msg_s sense_blocked =
+         ({(<wave_s>
+            msg: "@WER1 bewegt die Lippen, Du hoerst jedoch nichts.",
+            type: MT_LOOK)}))
+
+
+DEFINIERT IN
+============
+
+   /std/living/comm.c /std/room/comm.c
+
+
+ARGUMENTE
+=========
+
+   string msg
+      Die auszugebende Meldung.
+
+   string prefix
+      prefix wird als prefix an ReceiveMsg() weitergegeben. Wird kein
+      Wert uebergeben, wird "previous_object().Name(WER, 1) + " sagt:
+      "" verwendet.
+
+   struct wave_s *alt
+      Ersatzmeldungen, falls das Lebewesen die Meldung aufgrund eines
+      blockierten Sinns nicht wahrnehmen kann. Details siehe unten.
+
+
+BESCHREIBUNG
+============
+
+   Sendet msg per ReceiveMsg() mit den ueblichen Argumenten von "sage"
+   an den Empfaenger, d.h.: "MT_LISTEN", "MA_SAY", "Name(WER, 1) + "
+   sagt: "". Hierzu muss das aufrufende Objekt *Name* definiert haben
+   und dort etwas sinnvolles zurueckgeben. Falls ein anderer Praefix
+   gewaehlt wurde, wird dieser statt "Name(WER, 1)  " sagt: ""
+   verwendet.
+
+   <msg> wird vor der Ausgabe an replace_personal() uebergeben, als
+   erstes Objekt wird das aufrufende Objekt uebergeben, als zweites
+   this_player(), sofern vorhanden. msg wird automatisch auf 78
+   Zeichen umgebrochen, vorhandene Zeilenumbrueche werden dabei
+   beibehalten.
+
+   Falls der Empfaenger eine Nachricht aufgrund eines blockierten
+   Sinns nicht empfangen kann (und **nur** dann), wird versucht,
+   alternative Nachrichten aus dem Array <alt> zuzustellen. Dieses
+   Array enthaelt structs vom Typ wave_s. Das Array wird von vorne
+   nach hinten abgearbeitet, bis eine Nachricht erfolgreich zugestellt
+   werden konnte, das Ende erreicht ist oder eine Nachricht *aus
+   anderen Gruenden* als einem blockierten Sinn abgelehnt wurde. Der
+   Grund fuer letzteres ist, dass andere Fehler von ReceiveMsg()
+   (fast) immer auch bei allen (weiteren) Alternativen auftreten
+   werden. wave_s ist in /secure/simul_efun/comm.c definiert und
+   enthaelt die Eintraege string msg, int type, string prefix. In
+   <alt> ist der Default fuer wave_s.prefix 0! Auch hier findet fuer
+   wave_s.msg eine Ersetzung mittels replace_personal() statt, fuer
+   wave_s.prefix nicht.
+
+
+RUECKGABEWERT
+=============
+
+
+in Lebewesen
+------------
+
+   Der Rueckgabe ist der Rueckgabewert von ReceiveMsg() fuer die
+   zuletzt versuchte Meldung.
+
+   Wenn dies einen Erfolg (MSG_DELIVERED, MSG_BUFFERED) darstellt,
+   wurde irgendeine Meldung erfolgreich zugestellt. Falls es
+   MSG_SENSE_BLOCK ist, sind alle versuchten Sinne blockiert und keine
+   Nachricht wurde zugestellt. Ist es ein anderer Fehler ist, wurde
+   keine Nachricht zugestellt (und ggf. nicht alle aus <alt>
+   versucht).
+
+
+in Containern/Raeumen
+---------------------
+
+   Die Funktion hat keinen Rueckgabewert. Der Grund hierfuer ist, dass
+   dieser ein ggf. tief verschachteltes Mapping waere, was keiner mehr
+   prueft.
+
+
+BEISPIEL
+========
+
+   SetProp(P_NAME, "Questgeber"); SetProp(P_GENDER, MALE);
+   this_player().ReceiveSay(
+
+      "Das hast Du prima gemacht, @WER2!", Name(WER, 1) + " lobt Dich:
+      ", ({
+
+         (<wave_s>
+            msg: "@WER1 nickt Dir laechelnd zu.", type: MT_LOOK),
+
+         (<wave_s>
+            msg: "Jemand klopft Dir lobend auf die Schulter.", type:
+            MT_FEEL)}));
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg(), replace_personal(), *Name*
+
+Letzte Aenderung: 21.09.2022, Zesstra
diff --git a/doc/lfun/ReceiveTeilemit b/doc/lfun/ReceiveTeilemit
new file mode 100644
index 0000000..3f37373
--- /dev/null
+++ b/doc/lfun/ReceiveTeilemit
@@ -0,0 +1,59 @@
+ReceiveTeilemit()
+*****************
+
+
+FUNKTION
+========
+
+   public int ReceiveTeilemit(string msg)
+
+
+DEFINIERT IN
+============
+
+   /std/living/comm.c
+
+
+ARGUMENTE
+=========
+
+   string msg
+      Die auszugebende Meldung. Sie wird vor der Ausgabe an
+      replace_personal() uebergeben, als erstes Objekt wird das
+      aufrufende Objekt uebergeben, als zweites this_player(), sofern
+      vorhanden. msg wird automatisch auf 78 Zeichen umgebrochen,
+      vorhandene Zeilenumbrueche werden dabei beibehalten.
+
+
+BESCHREIBUNG
+============
+
+   Sendet msg per ReceiveMsg() mit den ueblichen Argumenten von "teile
+   mit" an pl. D.h.: MT_COMM | MT_FAR, MA_TELL, Name(WER, 1) + " teilt
+   Dir mit: ". Hierzu muss das aufrufende Objekt name() definiert
+   haben und dort etwas sinnvolles zurueckgeben. Der einzige
+   Unterschied zum normalen "teile mit" ist, dass zusaetzlich
+   MSG_DONT_STORE uebergeben wird. Da es sich hier ueblicherweise
+   nicht um Kommunikation zwischen Spielern handelt, muss die
+   Nachricht nicht in die tmhist.
+
+
+RUECKGABEWERT
+=============
+
+   Der Rueckgabewert von ReceiveMsg().
+
+
+BEISPIEL
+========
+
+   SetProp(P_NAME, "Questgeber"); SetProp(P_GENDER, MALE);
+   this_player().ReceiveTeilemit("Das hast Du prima gemacht, @WER2!");
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg(), replace_personal(), name()
+
+Letzte Aenderung: 07.10.2021, Bugfix
diff --git a/doc/lfun/RegisterEvent b/doc/lfun/RegisterEvent
index a664b3b..c7157ae 100644
--- a/doc/lfun/RegisterEvent
+++ b/doc/lfun/RegisterEvent
@@ -1,4 +1,3 @@
-
 RegisterEvent()
 ***************
 
diff --git a/doc/lfun/RegisterHelperNPC b/doc/lfun/RegisterHelperNPC
index f8b6a2e..f93828d 100644
--- a/doc/lfun/RegisterHelperNPC
+++ b/doc/lfun/RegisterHelperNPC
@@ -1,4 +1,3 @@
-
 RegisterHelperNPC()
 *******************
 
diff --git a/doc/lfun/RegisterHelperObject b/doc/lfun/RegisterHelperObject
index 21b75f4..df5c01b 100644
--- a/doc/lfun/RegisterHelperObject
+++ b/doc/lfun/RegisterHelperObject
@@ -1,4 +1,3 @@
-
 RegisterHelperObject()
 **********************
 
diff --git a/doc/lfun/RemoveAdjective b/doc/lfun/RemoveAdjective
index bd1796f..0ff3a26 100644
--- a/doc/lfun/RemoveAdjective
+++ b/doc/lfun/RemoveAdjective
@@ -1,4 +1,3 @@
-
 RemoveAdjective()
 *****************
 
diff --git a/doc/lfun/RemoveClass b/doc/lfun/RemoveClass
index 26b0b79..dfaf29e 100644
--- a/doc/lfun/RemoveClass
+++ b/doc/lfun/RemoveClass
@@ -1,4 +1,3 @@
-
 RemoveClass()
 *************
 
diff --git a/doc/lfun/RemoveCmd b/doc/lfun/RemoveCmd
index 6adffbf..a2707a6 100644
--- a/doc/lfun/RemoveCmd
+++ b/doc/lfun/RemoveCmd
@@ -1,4 +1,3 @@
-
 RemoveCmd()
 ***********
 
diff --git a/doc/lfun/RemoveDefender b/doc/lfun/RemoveDefender
index a8b6863..3ba4193 100644
--- a/doc/lfun/RemoveDefender
+++ b/doc/lfun/RemoveDefender
@@ -1,4 +1,3 @@
-
 RemoveDefender()
 ****************
 
@@ -42,7 +41,7 @@
 ==========
 
    AddDefender(), QueryDefenders(), QueryPresentDefenders(),
-   QueryNearDefenders(), InformDefend(), DefendOther(),
-   *../props/P_DEFENDER*, /std/living/combat.c
+   QueryNearDefenders(), InformDefend(), DefendOther(), P_DEFENDERS,
+   /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/lfun/RemoveDetail b/doc/lfun/RemoveDetail
index 48a0330..76f7b5a 100644
--- a/doc/lfun/RemoveDetail
+++ b/doc/lfun/RemoveDetail
@@ -1,4 +1,3 @@
-
 RemoveDetail()
 **************
 
diff --git a/doc/lfun/RemoveExit b/doc/lfun/RemoveExit
index 6854229..22ea81d 100644
--- a/doc/lfun/RemoveExit
+++ b/doc/lfun/RemoveExit
@@ -1,4 +1,3 @@
-
 RemoveExit()
 ************
 
diff --git a/doc/lfun/RemoveExtraLook b/doc/lfun/RemoveExtraLook
index 617e0b4..42cf363 100644
--- a/doc/lfun/RemoveExtraLook
+++ b/doc/lfun/RemoveExtraLook
@@ -1,4 +1,3 @@
-
 RemoveExtraLook()
 *****************
 
@@ -18,8 +17,8 @@
 ARGUMENTE
 =========
 
-   * string key: Schluessel, unter dem der Extralook registriert
-     wurde ODER Objektname des registrierenden Objektes
+   * string key: Schluessel, unter dem der Extralook registriert wurde
+     ODER Objektname des registrierenden Objektes
 
 
 BESCHREIBUNG
diff --git a/doc/lfun/RemoveFixedObject b/doc/lfun/RemoveFixedObject
index 22179de..c187fcd 100644
--- a/doc/lfun/RemoveFixedObject
+++ b/doc/lfun/RemoveFixedObject
@@ -1,4 +1,3 @@
-
 RemoveFixedObject()
 *******************
 
diff --git a/doc/lfun/RemoveFromMenu b/doc/lfun/RemoveFromMenu
index fdcb916..d3412a6 100644
--- a/doc/lfun/RemoveFromMenu
+++ b/doc/lfun/RemoveFromMenu
@@ -1,4 +1,3 @@
-
 RemoveFromMenu()
 ****************
 
diff --git a/doc/lfun/RemoveFunc b/doc/lfun/RemoveFunc
index bf01ae9..64e156b 100644
--- a/doc/lfun/RemoveFunc
+++ b/doc/lfun/RemoveFunc
@@ -1,4 +1,3 @@
-
 RemoveFunc()
 ************
 
diff --git a/doc/lfun/RemoveId b/doc/lfun/RemoveId
index efd709d..ed9cc4e 100644
--- a/doc/lfun/RemoveId
+++ b/doc/lfun/RemoveId
@@ -1,4 +1,3 @@
-
 RemoveId()
 **********
 
diff --git a/doc/lfun/RemoveInfo b/doc/lfun/RemoveInfo
index 75485c6..c7ee81e 100644
--- a/doc/lfun/RemoveInfo
+++ b/doc/lfun/RemoveInfo
@@ -1,4 +1,3 @@
-
 RemoveInfo()
 ************
 
diff --git a/doc/lfun/RemoveItem b/doc/lfun/RemoveItem
index 6efa9e6..525e457 100644
--- a/doc/lfun/RemoveItem
+++ b/doc/lfun/RemoveItem
@@ -1,4 +1,3 @@
-
 RemoveItem()
 ************
 
diff --git a/doc/lfun/RemoveKnownPotion b/doc/lfun/RemoveKnownPotion
index f7af610..b82fd3b 100644
--- a/doc/lfun/RemoveKnownPotion
+++ b/doc/lfun/RemoveKnownPotion
@@ -1,4 +1,3 @@
-
 RemoveKnownPotion()
 *******************
 
diff --git a/doc/lfun/RemovePluralId b/doc/lfun/RemovePluralId
index 23f394a..71b644f 100644
--- a/doc/lfun/RemovePluralId
+++ b/doc/lfun/RemovePluralId
@@ -1,4 +1,3 @@
-
 RemovePluralId()
 ****************
 
diff --git a/doc/lfun/RemovePursuer b/doc/lfun/RemovePursuer
index e371096..849c790 100644
--- a/doc/lfun/RemovePursuer
+++ b/doc/lfun/RemovePursuer
@@ -1,4 +1,3 @@
-
 RemovePursuer()
 ***************
 
diff --git a/doc/lfun/RemoveReadDetail b/doc/lfun/RemoveReadDetail
index 495dfe3..f367d2b 100644
--- a/doc/lfun/RemoveReadDetail
+++ b/doc/lfun/RemoveReadDetail
@@ -1,4 +1,3 @@
-
 RemoveReadDetail()
 ******************
 
diff --git a/doc/lfun/RemoveResistanceModifier b/doc/lfun/RemoveResistanceModifier
index ca14c74..b8d1e76 100644
--- a/doc/lfun/RemoveResistanceModifier
+++ b/doc/lfun/RemoveResistanceModifier
@@ -1,4 +1,3 @@
-
 RemoveResistanceModifier()
 **************************
 
diff --git a/doc/lfun/RemoveRoute b/doc/lfun/RemoveRoute
index 61fb082..f3d1d00 100644
--- a/doc/lfun/RemoveRoute
+++ b/doc/lfun/RemoveRoute
@@ -1,4 +1,3 @@
-
 RemoveRoute()
 *************
 
diff --git a/doc/lfun/RemoveSensitiveObject b/doc/lfun/RemoveSensitiveObject
index 0678e70..e26456d 100644
--- a/doc/lfun/RemoveSensitiveObject
+++ b/doc/lfun/RemoveSensitiveObject
@@ -1,4 +1,3 @@
-
 RemoveSensitiveObject()
 ***********************
 
diff --git a/doc/lfun/RemoveSingularId b/doc/lfun/RemoveSingularId
index fcf0c3d..b50a25e 100644
--- a/doc/lfun/RemoveSingularId
+++ b/doc/lfun/RemoveSingularId
@@ -1,4 +1,3 @@
-
 RemoveSingularId()
 ******************
 
diff --git a/doc/lfun/RemoveSkillAttributeModifier b/doc/lfun/RemoveSkillAttributeModifier
index 5fa69b2..4e661fb 100644
--- a/doc/lfun/RemoveSkillAttributeModifier
+++ b/doc/lfun/RemoveSkillAttributeModifier
@@ -1,4 +1,3 @@
-
 RemoveSkillAttributeModifier()
 ******************************
 
diff --git a/doc/lfun/RemoveSmells b/doc/lfun/RemoveSmells
index b56fe27..2b0d724 100644
--- a/doc/lfun/RemoveSmells
+++ b/doc/lfun/RemoveSmells
@@ -1,4 +1,3 @@
-
 RemoveSmells()
 **************
 
diff --git a/doc/lfun/RemoveSounds b/doc/lfun/RemoveSounds
index 4ef4263..e8824a2 100644
--- a/doc/lfun/RemoveSounds
+++ b/doc/lfun/RemoveSounds
@@ -1,4 +1,3 @@
-
 RemoveSounds()
 **************
 
diff --git a/doc/lfun/RemoveSpecialDetail b/doc/lfun/RemoveSpecialDetail
index 96a7a39..3395b6a 100644
--- a/doc/lfun/RemoveSpecialDetail
+++ b/doc/lfun/RemoveSpecialDetail
@@ -1,4 +1,3 @@
-
 RemoveSpecialDetail()
 *********************
 
diff --git a/doc/lfun/RemoveSpecialExit b/doc/lfun/RemoveSpecialExit
index ee2e8e8..f267565 100644
--- a/doc/lfun/RemoveSpecialExit
+++ b/doc/lfun/RemoveSpecialExit
@@ -1,4 +1,3 @@
-
 RemoveSpecialExit()
 *******************
 
diff --git a/doc/lfun/RemoveTouchDetail b/doc/lfun/RemoveTouchDetail
index 4f6ace3..2537be2 100644
--- a/doc/lfun/RemoveTouchDetail
+++ b/doc/lfun/RemoveTouchDetail
@@ -1,4 +1,3 @@
-
 RemoveTouchDetail()
 *******************
 
diff --git a/doc/lfun/RemoveVItem b/doc/lfun/RemoveVItem
index c1f7c10..b1f9a18 100644
--- a/doc/lfun/RemoveVItem
+++ b/doc/lfun/RemoveVItem
@@ -1,4 +1,3 @@
-
 RemoveVItem()
 *************
 
diff --git a/doc/lfun/ResizeRingBuffer b/doc/lfun/ResizeRingBuffer
index 17c3332..d623973 100644
--- a/doc/lfun/ResizeRingBuffer
+++ b/doc/lfun/ResizeRingBuffer
@@ -1,4 +1,3 @@
-
 ResizeRingBuffer()
 ******************
 
diff --git a/doc/lfun/RingBufferGet b/doc/lfun/RingBufferGet
index 128807f..e6a528f 100644
--- a/doc/lfun/RingBufferGet
+++ b/doc/lfun/RingBufferGet
@@ -1,4 +1,3 @@
-
 RingBufferGet()
 ***************
 
diff --git a/doc/lfun/RingBufferPut b/doc/lfun/RingBufferPut
index 00c046c..e89b7fb 100644
--- a/doc/lfun/RingBufferPut
+++ b/doc/lfun/RingBufferPut
@@ -1,4 +1,3 @@
-
 RingBufferPut()
 ***************
 
diff --git a/doc/lfun/SearchPath b/doc/lfun/SearchPath
index ec15b5f..cbf359e 100644
--- a/doc/lfun/SearchPath
+++ b/doc/lfun/SearchPath
@@ -1,4 +1,3 @@
-
 SearchPath()
 ************
 
diff --git a/doc/lfun/SelectEnemy b/doc/lfun/SelectEnemy
index 5a05eab..5e55cb3 100644
--- a/doc/lfun/SelectEnemy
+++ b/doc/lfun/SelectEnemy
@@ -1,4 +1,3 @@
-
 SelectEnemy()
 *************
 
diff --git a/doc/lfun/SelectFarEnemy b/doc/lfun/SelectFarEnemy
index c390d42..066fa08 100644
--- a/doc/lfun/SelectFarEnemy
+++ b/doc/lfun/SelectFarEnemy
@@ -1,4 +1,3 @@
-
 SelectFarEnemy()
 ****************
 
diff --git a/doc/lfun/SelectNearEnemy b/doc/lfun/SelectNearEnemy
index 43ba033..b9a6e55 100644
--- a/doc/lfun/SelectNearEnemy
+++ b/doc/lfun/SelectNearEnemy
@@ -1,4 +1,3 @@
-
 SelectNearEnemy()
 *****************
 
diff --git a/doc/lfun/Set b/doc/lfun/Set
index bef7161..7667eba 100644
--- a/doc/lfun/Set
+++ b/doc/lfun/Set
@@ -1,4 +1,3 @@
-
 Set()
 *****
 
@@ -6,7 +5,8 @@
 FUNKTION
 ========
 
-   public varargs mixed Set(string name, mixed Value, int Type, int extern);
+   public mixed Set(string name, mixed Value,
+               int Type = F_VALUE, int drop_priv = extern_call())
 
 
 DEFINIERT IN
@@ -19,11 +19,11 @@
 ARGUMENTE
 =========
 
-    name - Property, die manipuliert werden soll
-    Value - der zu setzende/aendernde Wert
-    Type - die Eigenschaft der Property, die manipuliert werden soll
-    extern - Interne Verwendung:
-   Wurde Set ueber SetProp von aussen gerufen.
+   name - Property, die manipuliert werden soll
+   Value - der zu setzende/aendernde Wert
+   Type - die Eigenschaft der Property, die manipuliert werden soll
+   drop_priv - Interne Verwendung, wenn Aufrufer Privilegien abgibt,
+               z.B. objekt-interner Aufruf extern zaehlen soll.
 
 
 BESCHREIBUNG
@@ -67,29 +67,14 @@
 
          Property nicht mehr ueber SetProp() aenderbar
          (damit entfallen auch SET_METHOD, _set_'name')
-
-       SETMAPPED
-
-         Die Set-Methode speichert den Werte nicht selber, sondern gibt
-         ihn zurueck, das Property-System speichert ihn dann.
-         WARNUNG: Dieses Flag nicht per Hand manipulieren.
-  
    F_SET_METHOD
      Aendert den Eintrag fuer eine SetMethod - eine Closure, die anstatt
      des Setzens der Property beim Aufruf von SetProp mit 'Value'
      aufgerufen wird.
-   F_SET_MAPPER
-     Setzt wie F_SET_METHOD eine Set-Methode (Closure), welche aber den Wert
-     der Property beim Aufruf nicht selber (durch Aufruf von Set()) setzt,
-     sondern den Wert zurueckgeben muss, der gesetzt werden soll.
-     Bsp. #'copy um vor dem Speichern eine Kopie zu erstellen
    F_QUERY_METHOD
      Aendert den Eintrag fuer eine QueryMethod - eine Closure, die anstatt
      des Lesens der Property beim Aufruf von QueryProp aufgerufen wird.
-     Diese bekommt den gespeicherten Wert der Property uebergeben und muss
-     den an den Aufrufer von QueryProp() zurueckzugebenden Wert
-     zurueckgeben.
-     Bsp: #'copy, um eine Kopie des gespeicherten Wertes zurueckzugeben
+
 
 RUeCKGABEWERT
 =============
@@ -142,7 +127,9 @@
    // Loeschen des SAVE-Flags
    Set(P_XYZ, SAVE, F_MODE_AD);
 
-   // Negieren (Umschalten) des bisherigen SAVE-Flags
+
+
+   // Negieren des bisherigen SAVE-Flags
    Set(P_XYZ, SAVE, F_MODE);
    // Hinweis: das Setzen des Flags funktioniert mittels F_MODE nur dann,
    // wenn sichergestellt ist, dass es vorher nicht gesetzt war. Die
@@ -170,12 +157,6 @@
    other->Set(P_XYZ, #'bar, F_QUERY_METHOD);
    ...
 
-   // Setzen/Nutzen eines Mappers (F_SET_MAPPER) zum Skalieren
-   int scale(int val) {return val * 100;}
-   Set(P_XYZ, #'scale, F_SET_MAPPER);
-   int unscale(int val) {return val / 100;}
-   Set(P_XYZ, #'unscale, F_QUERY_METHOD);
-
    // Der Vollstaendigkeit halber sei das Aendern einer Property unter
    // Umgehung von Set-Methoden angegeben. Es ist aber aus o.g. Gruenden
    // zu empfehlen, diese Variante nicht zu verwenden.
@@ -190,4 +171,4 @@
    Konzept:  properties, /std/thing/properties.c
    Sonstiges:  P_AUTOLOADOBJ
 
-6. Jan 2008 Arathorn
+8.9.2021, Zesstra
diff --git a/doc/lfun/SetAttackChats b/doc/lfun/SetAttackChats
index d796171..2e7f575 100644
--- a/doc/lfun/SetAttackChats
+++ b/doc/lfun/SetAttackChats
@@ -1,4 +1,3 @@
-
 SetAttackChats()
 ****************
 
@@ -68,8 +67,7 @@
      NPC voruebergehend 'stillzulegen', kann man P_CHAT_CHANCE auf 0
      setzen
 
-   * Spieler koennen P_CHAT_CHANCE temporaer auf 0 setzen
-     ('stillen')
+   * Spieler koennen P_CHAT_CHANCE temporaer auf 0 setzen ('stillen')
 
    * NPC haben bei Abwesenheit von Spielern in der Regel keinen
      Heartbeat, weswegen dann auch die Chats ausgeschaltet sind
diff --git a/doc/lfun/SetAttr b/doc/lfun/SetAttr
index fe5d97b..ca92239 100644
--- a/doc/lfun/SetAttr
+++ b/doc/lfun/SetAttr
@@ -1,4 +1,3 @@
-
 SetAttr()
 *********
 
diff --git a/doc/lfun/SetAttribute b/doc/lfun/SetAttribute
index 139fc99..5c25a68 100644
--- a/doc/lfun/SetAttribute
+++ b/doc/lfun/SetAttribute
@@ -1,4 +1,3 @@
-
 SetAttribute()
 **************
 
diff --git a/doc/lfun/SetBuyFact b/doc/lfun/SetBuyFact
index 8994bd3..95f799e 100644
--- a/doc/lfun/SetBuyFact
+++ b/doc/lfun/SetBuyFact
@@ -1,4 +1,3 @@
-
 SetBuyFact()
 ************
 
diff --git a/doc/lfun/SetChats b/doc/lfun/SetChats
index c4fe633..5e92c4a 100644
--- a/doc/lfun/SetChats
+++ b/doc/lfun/SetChats
@@ -1,4 +1,3 @@
-
 SetChats()
 **********
 
@@ -42,9 +41,9 @@
 
       * Strings
 
-      * Closures, deren Rueckgabe ausgegeben wird und die
-        zusaetzlich einen aenderbaren und in send_room() verwendeten
-        'msg_typ' per Referenz uebergeben bekommen
+      * Closures, deren Rueckgabe ausgegeben wird und die zusaetzlich
+        einen aenderbaren und in send_room() verwendeten 'msg_typ' per
+        Referenz uebergeben bekommen
 
       * Arrays mit der Struktur *({<string|closure msg >, <int
         msg_typ>})*, fuer die obige Regeln auf 'msg' angewendet werden
@@ -72,8 +71,7 @@
      NPC voruebergehend 'stillzulegen', kann man P_CHAT_CHANCE auf 0
      setzen
 
-   * Spieler koennen P_CHAT_CHANCE temporaer auf 0 setzen
-     ('stillen')
+   * Spieler koennen P_CHAT_CHANCE temporaer auf 0 setzen ('stillen')
 
    * NPC haben bei Abwesenheit von Spielern in der Regel keinen
      Heartbeat, weswegen dann auch die Chats ausgeschaltet sind
diff --git a/doc/lfun/SetCoinsPerUnits b/doc/lfun/SetCoinsPerUnits
index 0533275..85d61dc 100644
--- a/doc/lfun/SetCoinsPerUnits
+++ b/doc/lfun/SetCoinsPerUnits
@@ -1,4 +1,3 @@
-
 SetCoinsPerUnits()
 ******************
 
diff --git a/doc/lfun/SetDefaultHome b/doc/lfun/SetDefaultHome
index 2b9de88..a39dab6 100644
--- a/doc/lfun/SetDefaultHome
+++ b/doc/lfun/SetDefaultHome
@@ -1,4 +1,3 @@
-
 SetDefaultHome()
 ****************
 
diff --git a/doc/lfun/SetDoorStatus b/doc/lfun/SetDoorStatus
index c433c40..332ccc4 100644
--- a/doc/lfun/SetDoorStatus
+++ b/doc/lfun/SetDoorStatus
@@ -1,4 +1,3 @@
-
 SetDoorStatus()
 ***************
 
diff --git a/doc/lfun/SetEnemies b/doc/lfun/SetEnemies
index 2c92035..58faa06 100644
--- a/doc/lfun/SetEnemies
+++ b/doc/lfun/SetEnemies
@@ -1,4 +1,3 @@
-
 SetEnemies()
 ************
 
diff --git a/doc/lfun/SetGramsPerUnits b/doc/lfun/SetGramsPerUnits
index 66c1934..bd7ce21 100644
--- a/doc/lfun/SetGramsPerUnits
+++ b/doc/lfun/SetGramsPerUnits
@@ -1,4 +1,3 @@
-
 SetGramsPerUnits()
 ******************
 
diff --git a/doc/lfun/SetProp b/doc/lfun/SetProp
index 9664be8..8958f62 100644
--- a/doc/lfun/SetProp
+++ b/doc/lfun/SetProp
@@ -1,4 +1,3 @@
-
 SetProp()
 *********
 
@@ -6,7 +5,8 @@
 FUNKTION
 ========
 
-   public mixed SetProp(string name, mixed Value);
+   public mixed SetProp(string name, mixed Value,
+                        int drop_priv = extern_call());
 
 
 DEFINIERT IN
@@ -21,6 +21,8 @@
 
    name       - Property, deren Wert veraendert werden soll.
    Value      - Wert, auf den der Inhalt der Property gesetzt werden soll
+   drop_priv  - Interne Verwendung, wenn Aufrufer Privilegien abgibt,
+                z.B. objekt-interner Aufruf extern zaehlen soll.
 
 
 BESCHREIBUNG
diff --git a/doc/lfun/SetProperties b/doc/lfun/SetProperties
index a4ac72a..6203f00 100644
--- a/doc/lfun/SetProperties
+++ b/doc/lfun/SetProperties
@@ -1,4 +1,3 @@
-
 SetProperties()
 ***************
 
diff --git a/doc/lfun/SetRealAttribute b/doc/lfun/SetRealAttribute
index fc72d9b..3db5f6a 100644
--- a/doc/lfun/SetRealAttribute
+++ b/doc/lfun/SetRealAttribute
@@ -1,4 +1,3 @@
-
 SetRealAttribute()
 ******************
 
diff --git a/doc/lfun/SetSpellFatigue b/doc/lfun/SetSpellFatigue
index f2c5861..67c7165 100644
--- a/doc/lfun/SetSpellFatigue
+++ b/doc/lfun/SetSpellFatigue
@@ -1,4 +1,3 @@
-
 SetSpellFatigue()
 *****************
 
diff --git a/doc/lfun/SetStorageRoom b/doc/lfun/SetStorageRoom
index f1d66a5..6636b14 100644
--- a/doc/lfun/SetStorageRoom
+++ b/doc/lfun/SetStorageRoom
@@ -1,4 +1,3 @@
-
 SetStorageRoom()
 ****************
 
diff --git a/doc/lfun/SetTimedAttrModifier b/doc/lfun/SetTimedAttrModifier
index 5ab39dd..b8c4062 100644
--- a/doc/lfun/SetTimedAttrModifier
+++ b/doc/lfun/SetTimedAttrModifier
@@ -1,4 +1,3 @@
-
 SetTimedAttrModifier()
 **********************
 
diff --git a/doc/lfun/ShowDoors b/doc/lfun/ShowDoors
index c315632..1bb0b50 100644
--- a/doc/lfun/ShowDoors
+++ b/doc/lfun/ShowDoors
@@ -1,4 +1,3 @@
-
 ShowDoors()
 ***********
 
diff --git a/doc/lfun/ShowPropList b/doc/lfun/ShowPropList
index 41599d7..d3d0241 100644
--- a/doc/lfun/ShowPropList
+++ b/doc/lfun/ShowPropList
@@ -1,4 +1,3 @@
-
 ShowPropList()
 **************
 
diff --git a/doc/lfun/SkillResTransfer b/doc/lfun/SkillResTransfer
index 128cea7..471be36 100644
--- a/doc/lfun/SkillResTransfer
+++ b/doc/lfun/SkillResTransfer
@@ -1,4 +1,3 @@
-
 SkillResTransfer()
 ******************
 
diff --git a/doc/lfun/SpellAttack b/doc/lfun/SpellAttack
index ba00347..dfb6d08 100644
--- a/doc/lfun/SpellAttack
+++ b/doc/lfun/SpellAttack
@@ -1,4 +1,3 @@
-
 SpellAttack()
 *************
 
diff --git a/doc/lfun/SpellDefend b/doc/lfun/SpellDefend
index 22b038c..a8eb8df 100644
--- a/doc/lfun/SpellDefend
+++ b/doc/lfun/SpellDefend
@@ -1,4 +1,3 @@
-
 SpellDefend()
 *************
 
diff --git a/doc/lfun/SpellInform b/doc/lfun/SpellInform
index ce8fdbd..ac62262 100644
--- a/doc/lfun/SpellInform
+++ b/doc/lfun/SpellInform
@@ -1,4 +1,3 @@
-
 SpellInform()
 *************
 
diff --git a/doc/lfun/Start b/doc/lfun/Start
index e0b1070..ca5b23c 100644
--- a/doc/lfun/Start
+++ b/doc/lfun/Start
@@ -1,4 +1,3 @@
-
 Start()
 *******
 
diff --git a/doc/lfun/StopHuntFor b/doc/lfun/StopHuntFor
index e09d9fa..358baf4 100644
--- a/doc/lfun/StopHuntFor
+++ b/doc/lfun/StopHuntFor
@@ -1,4 +1,3 @@
-
 StopHuntFor()
 *************
 
diff --git a/doc/lfun/StopHuntText b/doc/lfun/StopHuntText
index fca271b..6c17aee 100644
--- a/doc/lfun/StopHuntText
+++ b/doc/lfun/StopHuntText
@@ -1,4 +1,3 @@
-
 StopHuntText()
 **************
 
diff --git a/doc/lfun/SubFromProp b/doc/lfun/SubFromProp
new file mode 100644
index 0000000..82d2fc8
--- /dev/null
+++ b/doc/lfun/SubFromProp
@@ -0,0 +1,60 @@
+SubFromProp()
+*************
+
+
+FUNKTION
+========
+
+public varargs int SubFromProp(string propname,
+<int|float|string|mixed*|mapping|bytes> subtrahend)
+
+
+DEFINIERT IN
+============
+
+   /std/thing/properties.c /sys/thing/properties.h (Prototyp)
+
+
+ARGUMENTE
+=========
+
+   * propname: Die Property, die veraendert wird
+
+   * subtrahend: Was auf den aktuellen Wert "substrahiert" werden soll
+
+
+BESCHREIBUNG
+============
+
+   Die Funktion ruft den aktuellen Wert der Property mittels
+   QueryProp() ab, "subtrahiert" <subtrahend> davon und setzt den
+   neuen Wert mit SetProp() wieder. Damit ist sie einfach eine
+   Abkuerzung fuer SetProp(pname, QueryProp(pname) - subtrahend).
+
+   Erlaubte Typen fuer <subtrahend> sind nur solche, mit denen +-
+   etwas anfangen kann und welche zum aktuellen Wert der Property
+   passen. Alles andere loest ggf. einen (Laufzeit-)Fehler auf.
+
+
+RUeCKGABEWERT
+=============
+
+   Der Wert der Property nach der Aenderung.
+
+
+BEISPIELE
+=========
+
+   // einen Int subtrahieren SubFromProp(P_WC, 42); // alle
+   entsprechenden Elemente aus einem Array in der Property loeschen //
+   Achtung: erzeugt ein neues Array! SubFromProp(P_WAITFOR,
+   ({"zesstra"})); // Ein Mappingkey aus einem Mapping in einer
+   Property loeschen SubFromProp(P_M_HEALTH_MOD, ([P_HP]))
+
+
+SIEHE AUCH
+==========
+
+   QueryProp(), *AddProp* Konzept: properties, /std/thing/properties.c
+
+19.06.2025, Zesstra
diff --git a/doc/lfun/SuggestArticle b/doc/lfun/SuggestArticle
index c9311b6..10cc344 100644
--- a/doc/lfun/SuggestArticle
+++ b/doc/lfun/SuggestArticle
@@ -1,4 +1,3 @@
-
 SuggestArticle()
 ****************
 
diff --git a/doc/lfun/SwapRows b/doc/lfun/SwapRows
index aa18364..fc08b5c 100644
--- a/doc/lfun/SwapRows
+++ b/doc/lfun/SwapRows
@@ -1,4 +1,3 @@
-
 SwapRows()
 **********
 
diff --git a/doc/lfun/TakeFlaw b/doc/lfun/TakeFlaw
index 594c164..498519b 100644
--- a/doc/lfun/TakeFlaw
+++ b/doc/lfun/TakeFlaw
@@ -1,4 +1,3 @@
-
 TakeFlaw()
 **********
 
diff --git a/doc/lfun/TeamFlee b/doc/lfun/TeamFlee
index 216fbbf..6ab3600 100644
--- a/doc/lfun/TeamFlee
+++ b/doc/lfun/TeamFlee
@@ -1,4 +1,3 @@
-
 TeamFlee()
 **********
 
diff --git a/doc/lfun/TeamMembers b/doc/lfun/TeamMembers
index 5971bfb..baa446c 100644
--- a/doc/lfun/TeamMembers
+++ b/doc/lfun/TeamMembers
@@ -1,4 +1,3 @@
-
 TeamMembers()
 *************
 
diff --git a/doc/lfun/TeamPrefix b/doc/lfun/TeamPrefix
index 2cf1582..ea18731 100644
--- a/doc/lfun/TeamPrefix
+++ b/doc/lfun/TeamPrefix
@@ -1,4 +1,3 @@
-
 TeamPrefix()
 ************
 
diff --git a/doc/lfun/Teleport b/doc/lfun/Teleport
index ddddb89..c7674f2 100644
--- a/doc/lfun/Teleport
+++ b/doc/lfun/Teleport
@@ -1,4 +1,3 @@
-
 Teleport()
 **********
 
diff --git a/doc/lfun/TestIgnore b/doc/lfun/TestIgnore
index d1d2b95..ab3f39f 100644
--- a/doc/lfun/TestIgnore
+++ b/doc/lfun/TestIgnore
@@ -1,4 +1,3 @@
-
 TestIgnore()
 ************
 
diff --git a/doc/lfun/TestIgnoreSimple b/doc/lfun/TestIgnoreSimple
index c0ec76e..211b872 100644
--- a/doc/lfun/TestIgnoreSimple
+++ b/doc/lfun/TestIgnoreSimple
@@ -1,4 +1,3 @@
-
 TestIgnoreSimple()
 ******************
 
diff --git a/doc/lfun/TestLimitViolation b/doc/lfun/TestLimitViolation
index df9f7b2..0d75f31 100644
--- a/doc/lfun/TestLimitViolation
+++ b/doc/lfun/TestLimitViolation
@@ -1,4 +1,3 @@
-
 TestLimitViolation()
 ********************
 
diff --git a/doc/lfun/TriggerEvent b/doc/lfun/TriggerEvent
index 44dd2e4..e6ec976 100644
--- a/doc/lfun/TriggerEvent
+++ b/doc/lfun/TriggerEvent
@@ -1,4 +1,3 @@
-
 TriggerEvent()
 **************
 
diff --git a/doc/lfun/UnregisterEvent b/doc/lfun/UnregisterEvent
index 6d9bfb7..0917d1c 100644
--- a/doc/lfun/UnregisterEvent
+++ b/doc/lfun/UnregisterEvent
@@ -1,4 +1,3 @@
-
 UnregisterEvent()
 *****************
 
diff --git a/doc/lfun/UnregisterHelperNPC b/doc/lfun/UnregisterHelperNPC
index 79c18f6..bf61df3 100644
--- a/doc/lfun/UnregisterHelperNPC
+++ b/doc/lfun/UnregisterHelperNPC
@@ -1,4 +1,3 @@
-
 UnregisterHelperNPC()
 *********************
 
diff --git a/doc/lfun/UnregisterHelperObject b/doc/lfun/UnregisterHelperObject
index d6242c9..f65afbc 100644
--- a/doc/lfun/UnregisterHelperObject
+++ b/doc/lfun/UnregisterHelperObject
@@ -1,4 +1,3 @@
-
 UnregisterHelperObject()
 ************************
 
diff --git a/doc/lfun/Unwear b/doc/lfun/Unwear
index 0ef0a2a..99fe4e0 100644
--- a/doc/lfun/Unwear
+++ b/doc/lfun/Unwear
@@ -1,4 +1,3 @@
-
 Unwear()
 ********
 
diff --git a/doc/lfun/UnwearArmour b/doc/lfun/UnwearArmour
index b3c7d77..9e4fbc4 100644
--- a/doc/lfun/UnwearArmour
+++ b/doc/lfun/UnwearArmour
@@ -1,4 +1,3 @@
-
 UnwearArmour()
 **************
 
diff --git a/doc/lfun/UnwearClothing b/doc/lfun/UnwearClothing
index fe0372b..dfd2453 100644
--- a/doc/lfun/UnwearClothing
+++ b/doc/lfun/UnwearClothing
@@ -1,4 +1,3 @@
-
 UnwearClothing()
 ****************
 
diff --git a/doc/lfun/UnwieldFunc b/doc/lfun/UnwieldFunc
index 0301182..74530af 100644
--- a/doc/lfun/UnwieldFunc
+++ b/doc/lfun/UnwieldFunc
@@ -1,4 +1,3 @@
-
 UnwieldFunc()
 *************
 
diff --git a/doc/lfun/UpdateAttributes b/doc/lfun/UpdateAttributes
index cdebaa7..f3e7595 100644
--- a/doc/lfun/UpdateAttributes
+++ b/doc/lfun/UpdateAttributes
@@ -1,4 +1,3 @@
-
 UpdateAttributes()
 ******************
 
diff --git a/doc/lfun/UpdateResistanceStrengths b/doc/lfun/UpdateResistanceStrengths
index 8ae9198..f64d6e7 100644
--- a/doc/lfun/UpdateResistanceStrengths
+++ b/doc/lfun/UpdateResistanceStrengths
@@ -1,4 +1,3 @@
-
 UpdateResistanceStrengths()
 ***************************
 
diff --git a/doc/lfun/UseHands b/doc/lfun/UseHands
index d11723c..39772d4 100644
--- a/doc/lfun/UseHands
+++ b/doc/lfun/UseHands
@@ -1,4 +1,3 @@
-
 UseHands()
 **********
 
diff --git a/doc/lfun/UseSkill b/doc/lfun/UseSkill
index 4f3398d..2c279ed 100644
--- a/doc/lfun/UseSkill
+++ b/doc/lfun/UseSkill
@@ -1,4 +1,3 @@
-
 UseSkill()
 **********
 
diff --git a/doc/lfun/UseSpell b/doc/lfun/UseSpell
index b5cfbf7..12060f0 100644
--- a/doc/lfun/UseSpell
+++ b/doc/lfun/UseSpell
@@ -1,4 +1,3 @@
-
 UseSpell()
 **********
 
diff --git a/doc/lfun/Validate b/doc/lfun/Validate
index ddfceef..5f15d96 100644
--- a/doc/lfun/Validate
+++ b/doc/lfun/Validate
@@ -1,4 +1,3 @@
-
 Validate()
 **********
 
diff --git a/doc/lfun/Wear b/doc/lfun/Wear
index 6a46903..934f632 100644
--- a/doc/lfun/Wear
+++ b/doc/lfun/Wear
@@ -1,4 +1,3 @@
-
 Wear()
 ******
 
diff --git a/doc/lfun/WearArmour b/doc/lfun/WearArmour
index a6961b2..6892120 100644
--- a/doc/lfun/WearArmour
+++ b/doc/lfun/WearArmour
@@ -1,4 +1,3 @@
-
 WearArmour()
 ************
 
diff --git a/doc/lfun/WearClothing b/doc/lfun/WearClothing
index 51cc015..0f1be24 100644
--- a/doc/lfun/WearClothing
+++ b/doc/lfun/WearClothing
@@ -1,4 +1,3 @@
-
 WearClothing()
 **************
 
diff --git a/doc/lfun/WearFunc b/doc/lfun/WearFunc
index d1d0121..01789dc 100644
--- a/doc/lfun/WearFunc
+++ b/doc/lfun/WearFunc
@@ -1,4 +1,3 @@
-
 WearFunc()
 **********
 
diff --git a/doc/lfun/WieldFunc b/doc/lfun/WieldFunc
index 7c607e4..5a013a2 100644
--- a/doc/lfun/WieldFunc
+++ b/doc/lfun/WieldFunc
@@ -1,4 +1,3 @@
-
 WieldFunc()
 ***********
 
diff --git a/doc/lfun/WithDraw b/doc/lfun/WithDraw
index 1bff547..0967f7b 100644
--- a/doc/lfun/WithDraw
+++ b/doc/lfun/WithDraw
@@ -1,4 +1,3 @@
-
 WithDraw()
 **********
 
diff --git a/doc/lfun/__INIT b/doc/lfun/__INIT
index 3ba4793..d5f5212 100644
--- a/doc/lfun/__INIT
+++ b/doc/lfun/__INIT
@@ -1,4 +1,3 @@
-
 __INIT()
 ********
 
diff --git a/doc/lfun/_query_current_money b/doc/lfun/_query_current_money
index db3663f..19d480d 100644
--- a/doc/lfun/_query_current_money
+++ b/doc/lfun/_query_current_money
@@ -1,4 +1,3 @@
-
 _query_current_money()
 **********************
 
diff --git a/doc/lfun/_unparsed_args b/doc/lfun/_unparsed_args
index caf3653..51d18ee 100644
--- a/doc/lfun/_unparsed_args
+++ b/doc/lfun/_unparsed_args
@@ -1,4 +1,3 @@
-
 _unparsed_args()
 ****************
 
diff --git a/doc/lfun/access_rights b/doc/lfun/access_rights
index 7a99a99..2c9d232 100644
--- a/doc/lfun/access_rights
+++ b/doc/lfun/access_rights
@@ -1,4 +1,3 @@
-
 access_rights()
 ***************
 
diff --git a/doc/lfun/buffer_hp b/doc/lfun/buffer_hp
index db9ba79..90be49b 100644
--- a/doc/lfun/buffer_hp
+++ b/doc/lfun/buffer_hp
@@ -1,4 +1,3 @@
-
 buffer_hp()
 ***********
 
diff --git a/doc/lfun/buffer_sp b/doc/lfun/buffer_sp
index 09cad72..687a698 100644
--- a/doc/lfun/buffer_sp
+++ b/doc/lfun/buffer_sp
@@ -1,4 +1,3 @@
-
 buffer_sp()
 ***********
 
diff --git a/doc/lfun/buy_obj b/doc/lfun/buy_obj
index 0f0b965..2e53ab2 100644
--- a/doc/lfun/buy_obj
+++ b/doc/lfun/buy_obj
@@ -1,4 +1,3 @@
-
 buy_obj()
 *********
 
diff --git a/doc/lfun/catch_msg b/doc/lfun/catch_msg
index 42d1950..9b5df2e 100644
--- a/doc/lfun/catch_msg
+++ b/doc/lfun/catch_msg
@@ -1,4 +1,3 @@
-
 catch_msg()
 ***********
 
diff --git a/doc/lfun/catch_tell b/doc/lfun/catch_tell
index ff4e030..a45d0af 100644
--- a/doc/lfun/catch_tell
+++ b/doc/lfun/catch_tell
@@ -1,4 +1,3 @@
-
 catch_tell()
 ************
 
diff --git a/doc/lfun/check_and_update_timed_key b/doc/lfun/check_and_update_timed_key
index aa96667..4996bc0 100644
--- a/doc/lfun/check_and_update_timed_key
+++ b/doc/lfun/check_and_update_timed_key
@@ -1,4 +1,3 @@
-
 check_and_update_timed_key()
 ****************************
 
diff --git a/doc/lfun/check_restrictions b/doc/lfun/check_restrictions
index 3fa432b..11a43bc 100644
--- a/doc/lfun/check_restrictions
+++ b/doc/lfun/check_restrictions
@@ -1,4 +1,3 @@
-
 check_restrictions()
 ********************
 
diff --git a/doc/lfun/check_timed_key b/doc/lfun/check_timed_key
index 58c70ab..37a0ace 100644
--- a/doc/lfun/check_timed_key
+++ b/doc/lfun/check_timed_key
@@ -1,4 +1,3 @@
-
 check_timed_key()
 *****************
 
diff --git a/doc/lfun/clean_up b/doc/lfun/clean_up
index c1bf14e..c3d8feb 100644
--- a/doc/lfun/clean_up
+++ b/doc/lfun/clean_up
@@ -1,4 +1,3 @@
-
 clean_up()
 **********
 
diff --git a/doc/lfun/cmd_shoot b/doc/lfun/cmd_shoot
index 9cbc9b9..77611a5 100644
--- a/doc/lfun/cmd_shoot
+++ b/doc/lfun/cmd_shoot
@@ -1,4 +1,3 @@
-
 cmd_shoot()
 ***********
 
diff --git a/doc/lfun/command_me b/doc/lfun/command_me
index 00100f4..a5fbb9f 100644
--- a/doc/lfun/command_me
+++ b/doc/lfun/command_me
@@ -1,4 +1,3 @@
-
 command_me()
 ************
 
diff --git a/doc/lfun/consume b/doc/lfun/consume
index 48926d8..7e122fd 100644
--- a/doc/lfun/consume
+++ b/doc/lfun/consume
@@ -1,4 +1,3 @@
-
 consume()
 *********
 
diff --git a/doc/lfun/create b/doc/lfun/create
index 066ee55..fb74764 100644
--- a/doc/lfun/create
+++ b/doc/lfun/create
@@ -1,4 +1,3 @@
-
 create()
 ********
 
diff --git a/doc/lfun/create_default_npc b/doc/lfun/create_default_npc
index f2294ed..b3d3fe5 100644
--- a/doc/lfun/create_default_npc
+++ b/doc/lfun/create_default_npc
@@ -1,4 +1,3 @@
-
 create_default_npc()
 ********************
 
diff --git a/doc/lfun/create_super b/doc/lfun/create_super
index 101531f..8bb7775 100644
--- a/doc/lfun/create_super
+++ b/doc/lfun/create_super
@@ -1,4 +1,3 @@
-
 create_super()
 **************
 
diff --git a/doc/lfun/defuel_drink b/doc/lfun/defuel_drink
index 266907e..90fec8e 100644
--- a/doc/lfun/defuel_drink
+++ b/doc/lfun/defuel_drink
@@ -1,4 +1,3 @@
-
 defuel_drink()
 **************
 
diff --git a/doc/lfun/defuel_food b/doc/lfun/defuel_food
index 380c2bc..1100e7c 100644
--- a/doc/lfun/defuel_food
+++ b/doc/lfun/defuel_food
@@ -1,4 +1,3 @@
-
 defuel_food()
 *************
 
diff --git a/doc/lfun/depointer_adj b/doc/lfun/depointer_adj
index a95ec12..68f4609 100644
--- a/doc/lfun/depointer_adj
+++ b/doc/lfun/depointer_adj
@@ -1,4 +1,3 @@
-
 depointer_adj()
 ***************
 
diff --git a/doc/lfun/deregister_modifier b/doc/lfun/deregister_modifier
index eb0c160..2503ed7 100644
--- a/doc/lfun/deregister_modifier
+++ b/doc/lfun/deregister_modifier
@@ -1,4 +1,3 @@
-
 deregister_modifier()
 *********************
 
diff --git a/doc/lfun/die b/doc/lfun/die
index b8ee872..859a316 100644
--- a/doc/lfun/die
+++ b/doc/lfun/die
@@ -1,4 +1,3 @@
-
 die()
 *****
 
diff --git a/doc/lfun/doUnwearMessage b/doc/lfun/doUnwearMessage
index b6128ce..a1dd113 100644
--- a/doc/lfun/doUnwearMessage
+++ b/doc/lfun/doUnwearMessage
@@ -1,4 +1,3 @@
-
 doUnwearMessage()
 *****************
 
diff --git a/doc/lfun/doUnwieldMessage b/doc/lfun/doUnwieldMessage
index f2245b6..6baf32a 100644
--- a/doc/lfun/doUnwieldMessage
+++ b/doc/lfun/doUnwieldMessage
@@ -1,4 +1,3 @@
-
 doUnwieldMessage()
 ******************
 
diff --git a/doc/lfun/doWearMessage b/doc/lfun/doWearMessage
index 6770180..2c44021 100644
--- a/doc/lfun/doWearMessage
+++ b/doc/lfun/doWearMessage
@@ -1,4 +1,3 @@
-
 doWearMessage()
 ***************
 
diff --git a/doc/lfun/doWieldMessage b/doc/lfun/doWieldMessage
index a3b737f..e425aa0 100644
--- a/doc/lfun/doWieldMessage
+++ b/doc/lfun/doWieldMessage
@@ -1,4 +1,3 @@
-
 doWieldMessage()
 ****************
 
diff --git a/doc/lfun/do_damage b/doc/lfun/do_damage
index 91c6bc8..6b3841b 100644
--- a/doc/lfun/do_damage
+++ b/doc/lfun/do_damage
@@ -1,4 +1,3 @@
-
 do_damage()
 ***********
 
diff --git a/doc/lfun/do_frage b/doc/lfun/do_frage
index 6c848b8..f5d6478 100644
--- a/doc/lfun/do_frage
+++ b/doc/lfun/do_frage
@@ -1,4 +1,3 @@
-
 do_frage()
 **********
 
diff --git a/doc/lfun/do_unwear b/doc/lfun/do_unwear
index dd91478..cc62c28 100644
--- a/doc/lfun/do_unwear
+++ b/doc/lfun/do_unwear
@@ -1,4 +1,3 @@
-
 do_unwear()
 ***********
 
diff --git a/doc/lfun/do_wear b/doc/lfun/do_wear
index abf7051..9164f19 100644
--- a/doc/lfun/do_wear
+++ b/doc/lfun/do_wear
@@ -1,4 +1,3 @@
-
 do_wear()
 *********
 
diff --git a/doc/lfun/drink_alcohol b/doc/lfun/drink_alcohol
index 01d0a77..0674593 100644
--- a/doc/lfun/drink_alcohol
+++ b/doc/lfun/drink_alcohol
@@ -1,4 +1,3 @@
-
 drink_alcohol()
 ***************
 
diff --git a/doc/lfun/drink_soft b/doc/lfun/drink_soft
index 0f030f6..a7e3bd7 100644
--- a/doc/lfun/drink_soft
+++ b/doc/lfun/drink_soft
@@ -1,4 +1,3 @@
-
 drink_soft()
 ************
 
diff --git a/doc/lfun/drop b/doc/lfun/drop
index cdd372b..76fb52b 100644
--- a/doc/lfun/drop
+++ b/doc/lfun/drop
@@ -1,4 +1,3 @@
-
 drop()
 ******
 
diff --git a/doc/lfun/drop_obj b/doc/lfun/drop_obj
index 3e1057f..3b711ec 100644
--- a/doc/lfun/drop_obj
+++ b/doc/lfun/drop_obj
@@ -1,4 +1,3 @@
-
 drop_obj()
 **********
 
diff --git a/doc/lfun/drop_objects b/doc/lfun/drop_objects
index 93cbee5..8e8d36f 100644
--- a/doc/lfun/drop_objects
+++ b/doc/lfun/drop_objects
@@ -1,4 +1,3 @@
-
 drop_objects()
 **************
 
diff --git a/doc/lfun/eat_food b/doc/lfun/eat_food
index 9cf54b3..196d9ed 100644
--- a/doc/lfun/eat_food
+++ b/doc/lfun/eat_food
@@ -1,4 +1,3 @@
-
 eat_food()
 **********
 
diff --git a/doc/lfun/execute_anything b/doc/lfun/execute_anything
index 39ec45a..7a101fe 100644
--- a/doc/lfun/execute_anything
+++ b/doc/lfun/execute_anything
@@ -1,4 +1,3 @@
-
 execute_anything()
 ******************
 
diff --git a/doc/lfun/exit b/doc/lfun/exit
index f2d0b00..6528a4a 100644
--- a/doc/lfun/exit
+++ b/doc/lfun/exit
@@ -1,4 +1,3 @@
-
 exit()
 ******
 
diff --git a/doc/lfun/find_obs b/doc/lfun/find_obs
index 994ac6f..a0ec8ab 100644
--- a/doc/lfun/find_obs
+++ b/doc/lfun/find_obs
@@ -1,4 +1,3 @@
-
 find_obs()
 **********
 
diff --git a/doc/lfun/get_killing_player b/doc/lfun/get_killing_player
index 3500be1..374f1b9 100644
--- a/doc/lfun/get_killing_player
+++ b/doc/lfun/get_killing_player
@@ -1,4 +1,3 @@
-
 get_killing_player()
 ********************
 
diff --git a/doc/lfun/gilde/AddSkill b/doc/lfun/gilde/AddSkill
index 6be310b..fb6cfc3 100644
--- a/doc/lfun/gilde/AddSkill
+++ b/doc/lfun/gilde/AddSkill
@@ -1,4 +1,3 @@
-
 AddSkill()
 **********
 
diff --git a/doc/lfun/gilde/AddSpell b/doc/lfun/gilde/AddSpell
index 027b4d6..30a56f9 100644
--- a/doc/lfun/gilde/AddSpell
+++ b/doc/lfun/gilde/AddSpell
@@ -1,4 +1,3 @@
-
 AddSpell()
 **********
 
diff --git a/doc/lfun/gilde/GuildRating b/doc/lfun/gilde/GuildRating
index ca4ec1b..48c5dd5 100644
--- a/doc/lfun/gilde/GuildRating
+++ b/doc/lfun/gilde/GuildRating
@@ -1,4 +1,3 @@
-
 GuildRating()
 *************
 
diff --git a/doc/lfun/gilde/InitialSkillAbility b/doc/lfun/gilde/InitialSkillAbility
index afea3e9..d0e258b 100644
--- a/doc/lfun/gilde/InitialSkillAbility
+++ b/doc/lfun/gilde/InitialSkillAbility
@@ -1,4 +1,3 @@
-
 InitialSkillAbility()
 *********************
 
diff --git a/doc/lfun/gilde/LearnSkill b/doc/lfun/gilde/LearnSkill
index 07a4dc9..17cacd3 100644
--- a/doc/lfun/gilde/LearnSkill
+++ b/doc/lfun/gilde/LearnSkill
@@ -1,4 +1,3 @@
-
 LearnSkill()
 ************
 
diff --git a/doc/lfun/gilde/LearnSpell b/doc/lfun/gilde/LearnSpell
index 385da3e..c078661 100644
--- a/doc/lfun/gilde/LearnSpell
+++ b/doc/lfun/gilde/LearnSpell
@@ -1,4 +1,3 @@
-
 LearnSpell()
 ************
 
diff --git a/doc/lfun/gilde/QuerySkill b/doc/lfun/gilde/QuerySkill
index ee3e68a..f455330 100644
--- a/doc/lfun/gilde/QuerySkill
+++ b/doc/lfun/gilde/QuerySkill
@@ -1,4 +1,3 @@
-
 QuerySkill()
 ************
 
diff --git a/doc/lfun/gilde/QuerySpell b/doc/lfun/gilde/QuerySpell
index 32eff3a..795f1fe 100644
--- a/doc/lfun/gilde/QuerySpell
+++ b/doc/lfun/gilde/QuerySpell
@@ -1,4 +1,3 @@
-
 QuerySpell()
 ************
 
diff --git a/doc/lfun/gilde/SkillListe b/doc/lfun/gilde/SkillListe
index 200650b..57f2c45 100644
--- a/doc/lfun/gilde/SkillListe
+++ b/doc/lfun/gilde/SkillListe
@@ -1,4 +1,3 @@
-
 SkillListe()
 ************
 
diff --git a/doc/lfun/gilde/UseSpell b/doc/lfun/gilde/UseSpell
index 4f3724c..3cc380c 100644
--- a/doc/lfun/gilde/UseSpell
+++ b/doc/lfun/gilde/UseSpell
@@ -1,4 +1,3 @@
-
 UseSpell()
 **********
 
diff --git a/doc/lfun/gilde/austreten b/doc/lfun/gilde/austreten
index cde77e2..f827f69 100644
--- a/doc/lfun/gilde/austreten
+++ b/doc/lfun/gilde/austreten
@@ -1,4 +1,3 @@
-
 austreten()
 ***********
 
diff --git a/doc/lfun/gilde/bei_oder_aus_treten b/doc/lfun/gilde/bei_oder_aus_treten
index abed024..27dacdc 100644
--- a/doc/lfun/gilde/bei_oder_aus_treten
+++ b/doc/lfun/gilde/bei_oder_aus_treten
@@ -1,4 +1,3 @@
-
 bei_oder_aus_treten()
 *********************
 
diff --git a/doc/lfun/gilde/beitreten b/doc/lfun/gilde/beitreten
index 6e5a957..1457cd2 100644
--- a/doc/lfun/gilde/beitreten
+++ b/doc/lfun/gilde/beitreten
@@ -1,4 +1,3 @@
-
 beitreten()
 ***********
 
diff --git a/doc/lfun/give b/doc/lfun/give
index 866c1e3..2c7547e 100644
--- a/doc/lfun/give
+++ b/doc/lfun/give
@@ -1,4 +1,3 @@
-
 give()
 ******
 
diff --git a/doc/lfun/give_notify b/doc/lfun/give_notify
index ef316cb..822fdec 100644
--- a/doc/lfun/give_notify
+++ b/doc/lfun/give_notify
@@ -1,4 +1,3 @@
-
 give_notify()
 *************
 
diff --git a/doc/lfun/give_obj b/doc/lfun/give_obj
index 753fd09..4ac60b2 100644
--- a/doc/lfun/give_obj
+++ b/doc/lfun/give_obj
@@ -1,4 +1,3 @@
-
 give_obj()
 **********
 
diff --git a/doc/lfun/heal_self b/doc/lfun/heal_self
index aeaf461..6093cd8 100644
--- a/doc/lfun/heal_self
+++ b/doc/lfun/heal_self
@@ -1,4 +1,3 @@
-
 heal_self()
 ***********
 
diff --git a/doc/lfun/heart_beat b/doc/lfun/heart_beat
index 475a781..cfa5feb 100644
--- a/doc/lfun/heart_beat
+++ b/doc/lfun/heart_beat
@@ -1,4 +1,3 @@
-
 heart_beat()
 ************
 
diff --git a/doc/lfun/id b/doc/lfun/id
index 4921395..c88a021 100644
--- a/doc/lfun/id
+++ b/doc/lfun/id
@@ -1,4 +1,3 @@
-
 id()
 ****
 
diff --git a/doc/lfun/init b/doc/lfun/init
index 8a2688f..1e0e6e3 100644
--- a/doc/lfun/init
+++ b/doc/lfun/init
@@ -1,4 +1,3 @@
-
 init()
 ******
 
@@ -43,8 +42,8 @@
 
    Der Ablauf der init()-Kette ist wie folgt:
 
-      1. Ist das Objekt X, welches ins Zielobjekt D bewegt wurde,
-         ein Lebewesen, so wird in D init() aufgerufen, wobei
+      1. Ist das Objekt X, welches ins Zielobjekt D bewegt wurde, ein
+         Lebewesen, so wird in D init() aufgerufen, wobei
          this_player() auf X gesetzt ist.
 
       2. Dann wird fuer jedes Objekt C in D folgendes ausgefuehrt:
@@ -71,13 +70,12 @@
 BEMERKUNGEN
 ===========
 
-   * Wenn man init() ueberschreibt und vergisst, in etwaigen
-     geerbten Programmen das init() zu rufen, resultiert das in
-     schweren Bugs
+   * Wenn man init() ueberschreibt und vergisst, in etwaigen geerbten
+     Programmen das init() zu rufen, resultiert das in schweren Bugs
 
-   * Das Argument <origin> gab es frueher nicht und es ist
-     weitgehend optional. Die Standardlib uebergibt es, aber nicht
-     alle (speziell) aeltere Programme uebergeben es weiter an ihre
+   * Das Argument <origin> gab es frueher nicht und es ist weitgehend
+     optional. Die Standardlib uebergibt es, aber nicht alle
+     (speziell) aeltere Programme uebergeben es weiter an ihre
      geerbten init().
 
 
diff --git a/doc/lfun/insert_sensitive_inv b/doc/lfun/insert_sensitive_inv
index 513632a..1edeb6d 100644
--- a/doc/lfun/insert_sensitive_inv
+++ b/doc/lfun/insert_sensitive_inv
@@ -1,4 +1,3 @@
-
 insert_sensitive_inv()
 **********************
 
diff --git a/doc/lfun/insert_sensitive_inv_trigger b/doc/lfun/insert_sensitive_inv_trigger
index edb78f8..09b122e 100644
--- a/doc/lfun/insert_sensitive_inv_trigger
+++ b/doc/lfun/insert_sensitive_inv_trigger
@@ -1,4 +1,3 @@
-
 insert_sensitive_inv_trigger()
 ******************************
 
diff --git a/doc/lfun/int_long b/doc/lfun/int_long
index 931e132..b3d2b43 100644
--- a/doc/lfun/int_long
+++ b/doc/lfun/int_long
@@ -1,4 +1,3 @@
-
 int_long()
 **********
 
diff --git a/doc/lfun/int_short b/doc/lfun/int_short
index aabd547..e1342fa 100644
--- a/doc/lfun/int_short
+++ b/doc/lfun/int_short
@@ -1,4 +1,3 @@
-
 int_short()
 ***********
 
diff --git a/doc/lfun/is_class_member b/doc/lfun/is_class_member
index 1018e71..19ec741 100644
--- a/doc/lfun/is_class_member
+++ b/doc/lfun/is_class_member
@@ -1,4 +1,3 @@
-
 is_class_member()
 *****************
 
diff --git a/doc/lfun/lfun b/doc/lfun/lfun
index 6e35081..b565171 100644
--- a/doc/lfun/lfun
+++ b/doc/lfun/lfun
@@ -1,4 +1,3 @@
-
 lfun()
 ******
 
diff --git a/doc/lfun/list b/doc/lfun/list
index 4148dc0..ff100e1 100644
--- a/doc/lfun/list
+++ b/doc/lfun/list
@@ -1,4 +1,3 @@
-
 list()
 ******
 
diff --git a/doc/lfun/locate_objects b/doc/lfun/locate_objects
index 5854980..5cc956c 100644
--- a/doc/lfun/locate_objects
+++ b/doc/lfun/locate_objects
@@ -1,4 +1,3 @@
-
 locate_objects()
 ****************
 
diff --git a/doc/lfun/logon b/doc/lfun/logon
index 4fb7117..e1a81e4 100644
--- a/doc/lfun/logon
+++ b/doc/lfun/logon
@@ -1,4 +1,3 @@
-
 logon()
 *******
 
diff --git a/doc/lfun/long b/doc/lfun/long
index a186cf9..b994b35 100644
--- a/doc/lfun/long
+++ b/doc/lfun/long
@@ -1,4 +1,3 @@
-
 long()
 ******
 
diff --git a/doc/lfun/make_immortal b/doc/lfun/make_immortal
index 9d0f402..9602221 100644
--- a/doc/lfun/make_immortal
+++ b/doc/lfun/make_immortal
@@ -1,4 +1,3 @@
-
 make_immortal()
 ***************
 
diff --git a/doc/lfun/make_invlist b/doc/lfun/make_invlist
index 379b47c..77b5dc1 100644
--- a/doc/lfun/make_invlist
+++ b/doc/lfun/make_invlist
@@ -1,4 +1,3 @@
-
 make_invlist()
 **************
 
diff --git a/doc/lfun/master/AddWizardForUID b/doc/lfun/master/AddWizardForUID
index 249e27c..e68b2fc 100644
--- a/doc/lfun/master/AddWizardForUID
+++ b/doc/lfun/master/AddWizardForUID
@@ -1,4 +1,3 @@
-
 AddWizardForUID()
 *****************
 
diff --git a/doc/lfun/master/QueryUIDAlias b/doc/lfun/master/QueryUIDAlias
index 8f58509..a5e0493 100644
--- a/doc/lfun/master/QueryUIDAlias
+++ b/doc/lfun/master/QueryUIDAlias
@@ -1,4 +1,3 @@
-
 QueryUIDAlias()
 ***************
 
diff --git a/doc/lfun/master/QueryUIDsForWizard b/doc/lfun/master/QueryUIDsForWizard
index e0d5816..88c8dda 100644
--- a/doc/lfun/master/QueryUIDsForWizard
+++ b/doc/lfun/master/QueryUIDsForWizard
@@ -1,4 +1,3 @@
-
 QueryUIDsForWizard()
 ********************
 
diff --git a/doc/lfun/master/QueryWizardsForUID b/doc/lfun/master/QueryWizardsForUID
index 6ddbdc3..2ea7022 100644
--- a/doc/lfun/master/QueryWizardsForUID
+++ b/doc/lfun/master/QueryWizardsForUID
@@ -1,4 +1,3 @@
-
 QueryWizardsForUID()
 ********************
 
diff --git a/doc/lfun/master/RemoveWizardFromUID b/doc/lfun/master/RemoveWizardFromUID
index 1fdeba5..1d68524 100644
--- a/doc/lfun/master/RemoveWizardFromUID
+++ b/doc/lfun/master/RemoveWizardFromUID
@@ -1,4 +1,3 @@
-
 RemoveWizardFromUID()
 *********************
 
diff --git a/doc/lfun/master/find_userinfo b/doc/lfun/master/find_userinfo
index 0a61400..77897bf 100644
--- a/doc/lfun/master/find_userinfo
+++ b/doc/lfun/master/find_userinfo
@@ -1,4 +1,3 @@
-
 find_userinfo()
 ***************
 
diff --git a/doc/lfun/match_ids b/doc/lfun/match_ids
index 48f368f..09fe451 100644
--- a/doc/lfun/match_ids
+++ b/doc/lfun/match_ids
@@ -1,4 +1,3 @@
-
 match_ids()
 ***********
 
diff --git a/doc/lfun/move b/doc/lfun/move
index 53593f8..f6e18a2 100644
--- a/doc/lfun/move
+++ b/doc/lfun/move
@@ -1,4 +1,3 @@
-
 move()
 ******
 
diff --git a/doc/lfun/moved_objects b/doc/lfun/moved_objects
index 8a5b536..a30ef26 100644
--- a/doc/lfun/moved_objects
+++ b/doc/lfun/moved_objects
@@ -1,4 +1,3 @@
-
 moved_objects()
 ***************
 
diff --git a/doc/lfun/moved_where b/doc/lfun/moved_where
index 640acae..2005876 100644
--- a/doc/lfun/moved_where
+++ b/doc/lfun/moved_where
@@ -1,4 +1,3 @@
-
 moved_where()
 *************
 
diff --git a/doc/lfun/muster b/doc/lfun/muster
index aa7279c..3766506 100644
--- a/doc/lfun/muster
+++ b/doc/lfun/muster
@@ -1,4 +1,3 @@
-
 muster()
 ********
 
diff --git a/doc/lfun/name b/doc/lfun/name
index 3509366..6fa7d83 100644
--- a/doc/lfun/name
+++ b/doc/lfun/name
@@ -1,4 +1,3 @@
-
 name()
 ******
 
diff --git a/doc/lfun/normalize_defend_args b/doc/lfun/normalize_defend_args
index a2db6fd..ce651b9 100644
--- a/doc/lfun/normalize_defend_args
+++ b/doc/lfun/normalize_defend_args
@@ -1,4 +1,3 @@
-
 normalize_defend_args()
 ***********************
 
diff --git a/doc/lfun/notify_player_change b/doc/lfun/notify_player_change
index 34c4024..4738ae3 100644
--- a/doc/lfun/notify_player_change
+++ b/doc/lfun/notify_player_change
@@ -1,4 +1,3 @@
-
 notify_player_change()
 **********************
 
diff --git a/doc/lfun/obsolete/AddDrink b/doc/lfun/obsolete/AddDrink
index 6f84377..de308c6 100644
--- a/doc/lfun/obsolete/AddDrink
+++ b/doc/lfun/obsolete/AddDrink
@@ -1,4 +1,3 @@
-
 AddDrink()
 **********
 
diff --git a/doc/lfun/obsolete/AddFood b/doc/lfun/obsolete/AddFood
index c972c86..8618d93 100644
--- a/doc/lfun/obsolete/AddFood
+++ b/doc/lfun/obsolete/AddFood
@@ -1,4 +1,3 @@
-
 AddFood()
 *********
 
diff --git a/doc/lfun/obsolete/AddHpHook b/doc/lfun/obsolete/AddHpHook
index 5a2adce..b33a65b 100644
--- a/doc/lfun/obsolete/AddHpHook
+++ b/doc/lfun/obsolete/AddHpHook
@@ -1,4 +1,3 @@
-
 AddHpHook()
 ***********
 
diff --git a/doc/lfun/obsolete/AddInsertHook b/doc/lfun/obsolete/AddInsertHook
index 8f49361..2eb148a 100644
--- a/doc/lfun/obsolete/AddInsertHook
+++ b/doc/lfun/obsolete/AddInsertHook
@@ -1,4 +1,3 @@
-
 AddInsertHook()
 ***************
 
diff --git a/doc/lfun/obsolete/AddRoomCmd b/doc/lfun/obsolete/AddRoomCmd
index f4aeb68..6288f4d 100644
--- a/doc/lfun/obsolete/AddRoomCmd
+++ b/doc/lfun/obsolete/AddRoomCmd
@@ -1,4 +1,3 @@
-
 AddRoomCmd()
 ************
 
diff --git a/doc/lfun/obsolete/DoList b/doc/lfun/obsolete/DoList
index 2119f05..84ddc7b 100644
--- a/doc/lfun/obsolete/DoList
+++ b/doc/lfun/obsolete/DoList
@@ -1,4 +1,3 @@
-
 DoList()
 ********
 
diff --git a/doc/lfun/obsolete/GetList b/doc/lfun/obsolete/GetList
index e066273..26b2f72 100644
--- a/doc/lfun/obsolete/GetList
+++ b/doc/lfun/obsolete/GetList
@@ -1,4 +1,3 @@
-
 GetList()
 *********
 
diff --git a/doc/lfun/obsolete/ModifySkillAttributeOld b/doc/lfun/obsolete/ModifySkillAttributeOld
index b0b81ab..fa1ac3a 100644
--- a/doc/lfun/obsolete/ModifySkillAttributeOld
+++ b/doc/lfun/obsolete/ModifySkillAttributeOld
@@ -1,4 +1,3 @@
-
 ModifySkillAttributeOld()
 *************************
 
diff --git a/doc/lfun/obsolete/NotifyGiveQuest b/doc/lfun/obsolete/NotifyGiveQuest
index 220942b..04c2b22 100644
--- a/doc/lfun/obsolete/NotifyGiveQuest
+++ b/doc/lfun/obsolete/NotifyGiveQuest
@@ -1,4 +1,3 @@
-
 NotifyGiveQuest()
 *****************
 
diff --git a/doc/lfun/obsolete/NotifyHpChange b/doc/lfun/obsolete/NotifyHpChange
index 3c96222..5ff5043 100644
--- a/doc/lfun/obsolete/NotifyHpChange
+++ b/doc/lfun/obsolete/NotifyHpChange
@@ -1,4 +1,3 @@
-
 NotifyHpChange()
 ****************
 
diff --git a/doc/lfun/obsolete/QueryEnemy b/doc/lfun/obsolete/QueryEnemy
index 2613f53..3c0ae0d 100644
--- a/doc/lfun/obsolete/QueryEnemy
+++ b/doc/lfun/obsolete/QueryEnemy
@@ -1,4 +1,3 @@
-
 QueryEnemy()
 ************
 
diff --git a/doc/lfun/obsolete/QueryInsertHooks b/doc/lfun/obsolete/QueryInsertHooks
index e69e46d..f178981 100644
--- a/doc/lfun/obsolete/QueryInsertHooks
+++ b/doc/lfun/obsolete/QueryInsertHooks
@@ -1,4 +1,3 @@
-
 QueryInsertHooks()
 ******************
 
diff --git a/doc/lfun/obsolete/QueryOptQP b/doc/lfun/obsolete/QueryOptQP
index 77404ad..49f8c00 100644
--- a/doc/lfun/obsolete/QueryOptQP
+++ b/doc/lfun/obsolete/QueryOptQP
@@ -1,4 +1,3 @@
-
 QueryOptQP()
 ************
 
diff --git a/doc/lfun/obsolete/RemoveHpHook b/doc/lfun/obsolete/RemoveHpHook
index 54c93ec..f18d790 100644
--- a/doc/lfun/obsolete/RemoveHpHook
+++ b/doc/lfun/obsolete/RemoveHpHook
@@ -1,4 +1,3 @@
-
 RemoveHpHook()
 **************
 
diff --git a/doc/lfun/obsolete/RemoveInsertHook b/doc/lfun/obsolete/RemoveInsertHook
index d0eeac1..9840be0 100644
--- a/doc/lfun/obsolete/RemoveInsertHook
+++ b/doc/lfun/obsolete/RemoveInsertHook
@@ -1,4 +1,3 @@
-
 RemoveInsertHook()
 ******************
 
diff --git a/doc/lfun/obsolete/TestAttributeLock b/doc/lfun/obsolete/TestAttributeLock
index 3d5d54d..814b08e 100644
--- a/doc/lfun/obsolete/TestAttributeLock
+++ b/doc/lfun/obsolete/TestAttributeLock
@@ -1,4 +1,3 @@
-
 TestAttributeLock()
 *******************
 
diff --git a/doc/lfun/obsolete/extra_look b/doc/lfun/obsolete/extra_look
index 9d1ac15..08acfce 100644
--- a/doc/lfun/obsolete/extra_look
+++ b/doc/lfun/obsolete/extra_look
@@ -1,4 +1,3 @@
-
 extra_look()
 ************
 
diff --git a/doc/lfun/obsolete/paramove b/doc/lfun/obsolete/paramove
index 25ce252..38aaf89 100644
--- a/doc/lfun/obsolete/paramove
+++ b/doc/lfun/obsolete/paramove
@@ -1,4 +1,3 @@
-
 paramove()
 **********
 
diff --git a/doc/lfun/pick b/doc/lfun/pick
index 5063ee6..c9b1df0 100644
--- a/doc/lfun/pick
+++ b/doc/lfun/pick
@@ -1,4 +1,3 @@
-
 pick()
 ******
 
diff --git a/doc/lfun/pick_obj b/doc/lfun/pick_obj
index 6557cee..135135b 100644
--- a/doc/lfun/pick_obj
+++ b/doc/lfun/pick_obj
@@ -1,4 +1,3 @@
-
 pick_obj()
 **********
 
diff --git a/doc/lfun/pick_objects b/doc/lfun/pick_objects
index ac70415..4037c46 100644
--- a/doc/lfun/pick_objects
+++ b/doc/lfun/pick_objects
@@ -1,4 +1,3 @@
-
 pick_objects()
 **************
 
diff --git a/doc/lfun/present_objects b/doc/lfun/present_objects
index 77f31fa..2a4f8a4 100644
--- a/doc/lfun/present_objects
+++ b/doc/lfun/present_objects
@@ -1,4 +1,3 @@
-
 present_objects()
 *****************
 
diff --git a/doc/lfun/present_vitem b/doc/lfun/present_vitem
index e2c1c4f..45f8b21 100644
--- a/doc/lfun/present_vitem
+++ b/doc/lfun/present_vitem
@@ -1,4 +1,3 @@
-
 present_vitem()
 ***************
 
diff --git a/doc/lfun/put b/doc/lfun/put
index 9b1d5eb..3d19e04 100644
--- a/doc/lfun/put
+++ b/doc/lfun/put
@@ -1,4 +1,3 @@
-
 put()
 *****
 
diff --git a/doc/lfun/put_obj b/doc/lfun/put_obj
index ff4dd91..ad4fa75 100644
--- a/doc/lfun/put_obj
+++ b/doc/lfun/put_obj
@@ -1,4 +1,3 @@
-
 put_obj()
 *********
 
diff --git a/doc/lfun/query_prevent_shadow b/doc/lfun/query_prevent_shadow
index 2c8d2f3..0124238 100644
--- a/doc/lfun/query_prevent_shadow
+++ b/doc/lfun/query_prevent_shadow
@@ -1,4 +1,3 @@
-
 query_prevent_shadow()
 **********************
 
diff --git a/doc/lfun/query_real_name b/doc/lfun/query_real_name
index 1ebc69f..36ba904 100644
--- a/doc/lfun/query_real_name
+++ b/doc/lfun/query_real_name
@@ -1,4 +1,3 @@
-
 query_real_name()
 *****************
 
diff --git a/doc/lfun/query_userlist b/doc/lfun/query_userlist
index 1dceab0..6bc1ce6 100644
--- a/doc/lfun/query_userlist
+++ b/doc/lfun/query_userlist
@@ -1,4 +1,3 @@
-
 query_userlist()
 ****************
 
diff --git a/doc/lfun/query_weight_contents b/doc/lfun/query_weight_contents
index bd644f5..66c3468 100644
--- a/doc/lfun/query_weight_contents
+++ b/doc/lfun/query_weight_contents
@@ -1,4 +1,3 @@
-
 query_weight_contents()
 ***********************
 
diff --git a/doc/lfun/reduce_hit_points b/doc/lfun/reduce_hit_points
index f82674f..7e4d39d 100644
--- a/doc/lfun/reduce_hit_points
+++ b/doc/lfun/reduce_hit_points
@@ -1,4 +1,3 @@
-
 reduce_hit_points()
 *******************
 
diff --git a/doc/lfun/reduce_spell_points b/doc/lfun/reduce_spell_points
index cddb7da..5c7e0dd 100644
--- a/doc/lfun/reduce_spell_points
+++ b/doc/lfun/reduce_spell_points
@@ -1,4 +1,3 @@
-
 reduce_spell_points()
 *********************
 
diff --git a/doc/lfun/register_modifier b/doc/lfun/register_modifier
index afe086c..b040877 100644
--- a/doc/lfun/register_modifier
+++ b/doc/lfun/register_modifier
@@ -1,4 +1,3 @@
-
 register_modifier()
 *******************
 
diff --git a/doc/lfun/remove b/doc/lfun/remove
index ea982b1..ed4bd69 100644
--- a/doc/lfun/remove
+++ b/doc/lfun/remove
@@ -1,4 +1,3 @@
-
 remove()
 ********
 
diff --git a/doc/lfun/remove_multiple b/doc/lfun/remove_multiple
index 9e60d55..4789483 100644
--- a/doc/lfun/remove_multiple
+++ b/doc/lfun/remove_multiple
@@ -1,4 +1,3 @@
-
 remove_multiple()
 *****************
 
diff --git a/doc/lfun/reset b/doc/lfun/reset
index 5959b3f..7e07245 100644
--- a/doc/lfun/reset
+++ b/doc/lfun/reset
@@ -1,4 +1,3 @@
-
 reset()
 *******
 
diff --git a/doc/lfun/restore_hit_points b/doc/lfun/restore_hit_points
index b4917cf..fccbe4a 100644
--- a/doc/lfun/restore_hit_points
+++ b/doc/lfun/restore_hit_points
@@ -1,4 +1,3 @@
-
 restore_hit_points()
 ********************
 
diff --git a/doc/lfun/restore_spell_points b/doc/lfun/restore_spell_points
index 2c8e42c..01b832a 100644
--- a/doc/lfun/restore_spell_points
+++ b/doc/lfun/restore_spell_points
@@ -1,4 +1,3 @@
-
 restore_spell_points()
 **********************
 
diff --git a/doc/lfun/save_me b/doc/lfun/save_me
index cbce90a..7c19034 100644
--- a/doc/lfun/save_me
+++ b/doc/lfun/save_me
@@ -1,4 +1,3 @@
-
 save_me()
 *********
 
diff --git a/doc/lfun/second_life b/doc/lfun/second_life
index 1ab849f..8249e79 100644
--- a/doc/lfun/second_life
+++ b/doc/lfun/second_life
@@ -1,4 +1,3 @@
-
 second_life()
 *************
 
diff --git a/doc/lfun/sell_obj b/doc/lfun/sell_obj
index 580fd87..bf2e5d8 100644
--- a/doc/lfun/sell_obj
+++ b/doc/lfun/sell_obj
@@ -1,4 +1,3 @@
-
 sell_obj()
 **********
 
diff --git a/doc/lfun/set_object_next_reset b/doc/lfun/set_object_next_reset
index 9b77a9e..7d874d3 100644
--- a/doc/lfun/set_object_next_reset
+++ b/doc/lfun/set_object_next_reset
@@ -1,4 +1,3 @@
-
 set_object_next_reset()
 ***********************
 
diff --git a/doc/lfun/shoot_dam b/doc/lfun/shoot_dam
index f66be19..407a0cf 100644
--- a/doc/lfun/shoot_dam
+++ b/doc/lfun/shoot_dam
@@ -1,4 +1,3 @@
-
 shoot_dam()
 ***********
 
diff --git a/doc/lfun/short b/doc/lfun/short
index 5da9b46..cc4a235 100644
--- a/doc/lfun/short
+++ b/doc/lfun/short
@@ -1,4 +1,3 @@
-
 short()
 *******
 
diff --git a/doc/lfun/show_notify b/doc/lfun/show_notify
index e69e5ac..695ccea 100644
--- a/doc/lfun/show_notify
+++ b/doc/lfun/show_notify
@@ -1,4 +1,3 @@
-
 show_notify()
 *************
 
diff --git a/doc/lfun/spellbook/AddSpell b/doc/lfun/spellbook/AddSpell
index 65f0df8..c9ba735 100644
--- a/doc/lfun/spellbook/AddSpell
+++ b/doc/lfun/spellbook/AddSpell
@@ -1,4 +1,3 @@
-
 AddSpell()
 **********
 
diff --git a/doc/lfun/spellbook/Erfolg b/doc/lfun/spellbook/Erfolg
index 6338e6d..b67e64d 100644
--- a/doc/lfun/spellbook/Erfolg
+++ b/doc/lfun/spellbook/Erfolg
@@ -1,4 +1,3 @@
-
 Erfolg()
 ********
 
diff --git a/doc/lfun/spellbook/Learn b/doc/lfun/spellbook/Learn
index 8de112e..7e11e98 100644
--- a/doc/lfun/spellbook/Learn
+++ b/doc/lfun/spellbook/Learn
@@ -1,4 +1,3 @@
-
 Learn()
 *******
 
diff --git a/doc/lfun/spellbook/Misserfolg b/doc/lfun/spellbook/Misserfolg
index 5ffe8de..aef67eb 100644
--- a/doc/lfun/spellbook/Misserfolg
+++ b/doc/lfun/spellbook/Misserfolg
@@ -1,4 +1,3 @@
-
 Misserfolg()
 ************
 
diff --git a/doc/lfun/spellbook/QuerySpell b/doc/lfun/spellbook/QuerySpell
index 963d30c..d40b976 100644
--- a/doc/lfun/spellbook/QuerySpell
+++ b/doc/lfun/spellbook/QuerySpell
@@ -1,4 +1,3 @@
-
 QuerySpell()
 ************
 
diff --git a/doc/lfun/spellbook/SpellSuccess b/doc/lfun/spellbook/SpellSuccess
index 564c948..8d2f7e7 100644
--- a/doc/lfun/spellbook/SpellSuccess
+++ b/doc/lfun/spellbook/SpellSuccess
@@ -1,4 +1,3 @@
-
 SpellSuccess()
 **************
 
diff --git a/doc/lfun/spellbook/TryAttackSpell b/doc/lfun/spellbook/TryAttackSpell
index d66684e..0fc8236 100644
--- a/doc/lfun/spellbook/TryAttackSpell
+++ b/doc/lfun/spellbook/TryAttackSpell
@@ -1,4 +1,3 @@
-
 TryAttackSpell()
 ****************
 
diff --git a/doc/lfun/trigger_sensitive_attack b/doc/lfun/trigger_sensitive_attack
index f290fc8..22539d9 100644
--- a/doc/lfun/trigger_sensitive_attack
+++ b/doc/lfun/trigger_sensitive_attack
@@ -1,4 +1,3 @@
-
 trigger_sensitive_attack()
 **************************
 
diff --git a/doc/lfun/trigger_sensitive_inv b/doc/lfun/trigger_sensitive_inv
index 27e26fb..7900f16 100644
--- a/doc/lfun/trigger_sensitive_inv
+++ b/doc/lfun/trigger_sensitive_inv
@@ -1,4 +1,3 @@
-
 trigger_sensitive_inv()
 ***********************
 
diff --git a/doc/lfun/wield_me b/doc/lfun/wield_me
index d1aa842..a3e94e7 100644
--- a/doc/lfun/wield_me
+++ b/doc/lfun/wield_me
@@ -1,4 +1,3 @@
-
 wield_me()
 **********
 
diff --git a/doc/lfuns-gilde b/doc/lfuns-gilde
index 3a2969b..c699dfc 100644
--- a/doc/lfuns-gilde
+++ b/doc/lfuns-gilde
@@ -1,4 +1,3 @@
-
 Verzeichnis der lfuns speziell in/fuer Gilden
 *********************************************
 
diff --git a/doc/lfuns-master b/doc/lfuns-master
index 228a762..0a0f665 100644
--- a/doc/lfuns-master
+++ b/doc/lfuns-master
@@ -1,4 +1,3 @@
-
 Verzeichnis der lfuns in master()
 *********************************
 
diff --git a/doc/lfuns-obsolet b/doc/lfuns-obsolet
index d4927a6..fe398ed 100644
--- a/doc/lfuns-obsolet
+++ b/doc/lfuns-obsolet
@@ -1,4 +1,3 @@
-
 Verzeichnis der veralteten lfuns
 ********************************
 
diff --git a/doc/lfuns-spellbook b/doc/lfuns-spellbook
index 48cf9c6..3755150 100644
--- a/doc/lfuns-spellbook
+++ b/doc/lfuns-spellbook
@@ -1,4 +1,3 @@
-
 Verzeichnis der lfuns speziell in/fuer Spellbooks
 *************************************************
 
diff --git a/doc/props-gilden b/doc/props-gilden
index df0782d..190da43 100644
--- a/doc/props-gilden
+++ b/doc/props-gilden
@@ -1,4 +1,3 @@
-
 Verzeichnis der Gilden-Properties
 *********************************
 
diff --git a/doc/props-liste b/doc/props-liste
index 2785ba3..f52beaa 100644
--- a/doc/props-liste
+++ b/doc/props-liste
@@ -1,4 +1,3 @@
-
 Propertyliste
 *************
 
@@ -32,6 +31,8 @@
 
 * P_ALC_FULL_MSG
 
+* P_ALERT
+
 * P_ALIGN
 
 * P_ALLOWED_SHADOW
@@ -884,8 +885,6 @@
 
 * P_VISIBLE_SUBGUILD_TITLE
 
-* P_VISUALBELL
-
 * P_VULNERABILITY
 
 * P_WAITFOR
diff --git a/doc/props-obsolet b/doc/props-obsolet
index a7e8edd..129424e 100644
--- a/doc/props-obsolet
+++ b/doc/props-obsolet
@@ -1,4 +1,3 @@
-
 Verzeichnis der obsoleten Properties
 ************************************
 
@@ -27,3 +26,5 @@
 * P_TMP_DIE_HOOK
 
 * P_TMP_MOVE_HOOK
+
+* P_VISUALBELL
diff --git a/doc/props.index b/doc/props.index
index 938833b..c36d8e9 100644
--- a/doc/props.index
+++ b/doc/props.index
@@ -1,4 +1,3 @@
-
 Properties
 **********
 
@@ -59,17 +58,16 @@
 
    Aus dem Schema laesst sich Folgendes erkennen
 
-   * beim Setzen und Abfragen wird der Wert einer Methode
-     uebergeben, die den Wert zurueckgibt oder ggf. die Aenderungen
-     vornimmt
+   * beim Setzen und Abfragen wird der Wert einer Methode uebergeben,
+     die den Wert zurueckgibt oder ggf. die Aenderungen vornimmt
 
    * ein direkter Zugriff auf den Wert der ist ebenfalls moeglich,
      sollte aber nicht der Normalfall sein, da die Methoden
      Nebeneffekte erzeugen
 
-   * in bestimmten Faellen kann man den aeusserlich aendernden
-     Zugriff vollkommen unterbinden (NOSETMETHOD, PROTECT) (VORSICHT
-     bei mappings/arrays, diese werden bei QueryProp() als Referenz
+   * in bestimmten Faellen kann man den aeusserlich aendernden Zugriff
+     vollkommen unterbinden (NOSETMETHOD, PROTECT) (VORSICHT bei
+     mappings/arrays, diese werden bei QueryProp() als Referenz
      zurueckgegeben, sind also so aenderbar)
 
 
@@ -88,8 +86,8 @@
 
    * Direkter Zugriff
 
-     * "mixed Set(<name>, <wert>, <interpretation>)" wird genutzt,
-       um eines der folgenden zu setzen:
+     * "mixed Set(<name>, <wert>, <interpretation>)" wird genutzt, um
+       eines der folgenden zu setzen:
 
           * den normalen Wert (aber fast immer besser: SetProp()
             verwenden!)
@@ -98,8 +96,8 @@
 
           * ein Flag/Modus: Speicherstatus/Zugriffsschutz
 
-     * "mixed Query(<name>, <interpretation>)" fragt fuer <name>
-       einen <wert> ab
+     * "mixed Query(<name>, <interpretation>)" fragt fuer <name> einen
+       <wert> ab
 
        * den normalen Wert (aber fast immer besser: QueryProp()
          verwenden!)
@@ -120,8 +118,8 @@
 
    * Vorteile
 
-        * so kann man Daten, die schnell verfuegbar sein muessen,
-          (bei denen also Effizienz gegen SetProp/QueryProp spricht)
+        * so kann man Daten, die schnell verfuegbar sein muessen, (bei
+          denen also Effizienz gegen SetProp/QueryProp spricht)
           trotzdem nach aussen einheitlich zugreifbar machen
 
    * Nachteile
@@ -133,9 +131,9 @@
         * Set/Query gehen wie auch bei Methoden an _set_*/_query_*
           vorbei
 
-        * dieses Verhalten sollte der Mudlib vorbehalten bleiben,
-          fuer eigene Prueffunktionen (wird etwas gesetzt/abgefragt)
-          bzw. Aenderungen sollte man Methoden
+        * dieses Verhalten sollte der Mudlib vorbehalten bleiben, fuer
+          eigene Prueffunktionen (wird etwas gesetzt/abgefragt) bzw.
+          Aenderungen sollte man Methoden
           (F_SET_METHOD/F_QUERY_METHOD) benutzen
 
 
diff --git a/doc/props/P_ABILITIES b/doc/props/P_ABILITIES
index b852bdf..b6bf407 100644
--- a/doc/props/P_ABILITIES
+++ b/doc/props/P_ABILITIES
@@ -1,4 +1,3 @@
-
 P_ABILITIES
 ***********
 
diff --git a/doc/props/P_AC b/doc/props/P_AC
index e9eda47..02b52cb 100644
--- a/doc/props/P_AC
+++ b/doc/props/P_AC
@@ -1,4 +1,3 @@
-
 P_AC
 ****
 
diff --git a/doc/props/P_ACCEPT_PEACE b/doc/props/P_ACCEPT_PEACE
index 214dc06..5f72c5f 100644
--- a/doc/props/P_ACCEPT_PEACE
+++ b/doc/props/P_ACCEPT_PEACE
@@ -1,4 +1,3 @@
-
 P_ACCEPT_PEACE
 **************
 
diff --git a/doc/props/P_ACHATS b/doc/props/P_ACHATS
index e37808f..c672968 100644
--- a/doc/props/P_ACHATS
+++ b/doc/props/P_ACHATS
@@ -1,4 +1,3 @@
-
 P_ACHATS
 ********
 
diff --git a/doc/props/P_ACHAT_CHANCE b/doc/props/P_ACHAT_CHANCE
index 40b84c9..b098bd9 100644
--- a/doc/props/P_ACHAT_CHANCE
+++ b/doc/props/P_ACHAT_CHANCE
@@ -1,4 +1,3 @@
-
 P_ACHAT_CHANCE
 **************
 
diff --git a/doc/props/P_ACTUAL_NOTIFY_FAIL b/doc/props/P_ACTUAL_NOTIFY_FAIL
index 0c9acd1..ca42822 100644
--- a/doc/props/P_ACTUAL_NOTIFY_FAIL
+++ b/doc/props/P_ACTUAL_NOTIFY_FAIL
@@ -1,4 +1,3 @@
-
 P_ACTUAL_NOTIFY_FAIL
 ********************
 
diff --git a/doc/props/P_ADJECTIVES b/doc/props/P_ADJECTIVES
index 1c8ccb6..ee2881f 100644
--- a/doc/props/P_ADJECTIVES
+++ b/doc/props/P_ADJECTIVES
@@ -1,4 +1,3 @@
-
 P_ADJECTIVES
 ************
 
diff --git a/doc/props/P_AERIAL_HELPERS b/doc/props/P_AERIAL_HELPERS
index 5d9b030..314d739 100644
--- a/doc/props/P_AERIAL_HELPERS
+++ b/doc/props/P_AERIAL_HELPERS
@@ -1,4 +1,3 @@
-
 P_AERIAL_HELPERS
 ****************
 
diff --git a/doc/props/P_AGE b/doc/props/P_AGE
index e35473c..eee7b3d 100644
--- a/doc/props/P_AGE
+++ b/doc/props/P_AGE
@@ -1,4 +1,3 @@
-
 P_AGE
 *****
 
diff --git a/doc/props/P_AGGRESSIVE b/doc/props/P_AGGRESSIVE
index 8cff142..012905a 100644
--- a/doc/props/P_AGGRESSIVE
+++ b/doc/props/P_AGGRESSIVE
@@ -1,4 +1,3 @@
-
 P_AGGRESSIVE
 ************
 
diff --git a/doc/props/P_ALCOHOL b/doc/props/P_ALCOHOL
index 11e86ab..db5f3c6 100644
--- a/doc/props/P_ALCOHOL
+++ b/doc/props/P_ALCOHOL
@@ -1,4 +1,3 @@
-
 P_ALCOHOL
 *********
 
diff --git a/doc/props/P_ALCOHOL_DELAY b/doc/props/P_ALCOHOL_DELAY
index 6ea0513..6b254a3 100644
--- a/doc/props/P_ALCOHOL_DELAY
+++ b/doc/props/P_ALCOHOL_DELAY
@@ -1,4 +1,3 @@
-
 P_ALCOHOL_DELAY
 ***************
 
diff --git a/doc/props/P_ALC_FULL_MSG b/doc/props/P_ALC_FULL_MSG
index 5df4b65..9042b4b 100644
--- a/doc/props/P_ALC_FULL_MSG
+++ b/doc/props/P_ALC_FULL_MSG
@@ -1,4 +1,3 @@
-
 P_ALC_FULL_MSG
 **************
 
diff --git a/doc/props/P_ALERT b/doc/props/P_ALERT
new file mode 100644
index 0000000..cd44fd4
--- /dev/null
+++ b/doc/props/P_ALERT
@@ -0,0 +1,65 @@
+P_ALERT
+*******
+
+
+NAME
+====
+
+   P_ALERT    "visualbell"
+
+
+DEFINIERT IN
+============
+
+   /sys/player/comm.h
+
+
+BESCHREIBUNG
+============
+
+   Enthaelt ein Bitfeld, in welchem konfiguriert ist, bei welchen
+   Arten von Ereignissen ein Spieler welche Art von Benachrichtigung
+   erhalten moechte.
+
+   Das Verhalten kann vom Spieler durch unterschiedliche Befehle
+   beeinflusst werden, aktuell sind dies ton und klingelton.
+
+   Aktuell gibt es folgende Moeglichkeiten:
+
+   AL_NO_SOUND
+      Keine Pieptoene empfangen
+
+   MB_SAY
+      Alert bei Messages mit MA_SAY
+
+   MB_TELL
+      Alert bei Messages mit MA_TELL (tm)
+
+   MB_CHANNEL
+      Alert bei Ebenennachrichten
+
+   MB_SHOUT
+      Alert bei Rufen
+
+   MB_MISC
+      Alert bei sonstigen Aktionen (ohne eigenen Filter)
+
+
+BEMERKUNGEN
+===========
+
+   Bitte verwendet ReceiveMsg() mit MSG_ALERT, anstatt P_ALERT selbst
+   auszuwerten.
+
+   Das historische Standardverhalten war 0, hierbei wurden alle Toene
+   empfangen. Der Klingelton fuer Kommunikation wurde nur ausgegeben,
+   wenn P_MESSAGE_BEEP zusaetzlich > 0 war. Dieses Verhalten
+   entspricht am ehesten P_ALERT == MB_MISC.
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg(), P_MESSAGE_BEEP
+
+Letzte Aenderung: 30.06.2025, Bugfix
diff --git a/doc/props/P_ALIGN b/doc/props/P_ALIGN
index d4ca76c..0d9c52d 100644
--- a/doc/props/P_ALIGN
+++ b/doc/props/P_ALIGN
@@ -1,4 +1,3 @@
-
 P_ALIGN
 *******
 
diff --git a/doc/props/P_ALLOWED_SHADOW b/doc/props/P_ALLOWED_SHADOW
index 5d849b7..1344ae2 100644
--- a/doc/props/P_ALLOWED_SHADOW
+++ b/doc/props/P_ALLOWED_SHADOW
@@ -1,4 +1,3 @@
-
 P_ALLOWED_SHADOW
 ****************
 
diff --git a/doc/props/P_AMMUNITION b/doc/props/P_AMMUNITION
index cbe7f56..1c80860 100644
--- a/doc/props/P_AMMUNITION
+++ b/doc/props/P_AMMUNITION
@@ -1,4 +1,3 @@
-
 P_AMMUNITION
 ************
 
diff --git a/doc/props/P_AMOUNT b/doc/props/P_AMOUNT
index 503ec87..baed149 100644
--- a/doc/props/P_AMOUNT
+++ b/doc/props/P_AMOUNT
@@ -1,4 +1,3 @@
-
 P_AMOUNT
 ********
 
diff --git a/doc/props/P_AQUATIC_HELPERS b/doc/props/P_AQUATIC_HELPERS
index b1bab50..d1847e5 100644
--- a/doc/props/P_AQUATIC_HELPERS
+++ b/doc/props/P_AQUATIC_HELPERS
@@ -1,4 +1,3 @@
-
 P_AQUATIC_HELPERS
 *****************
 
diff --git a/doc/props/P_ARMOURS b/doc/props/P_ARMOURS
index e0d6a0c..998c9ce 100644
--- a/doc/props/P_ARMOURS
+++ b/doc/props/P_ARMOURS
@@ -1,4 +1,3 @@
-
 P_ARMOURS
 *********
 
diff --git a/doc/props/P_ARMOUR_TYPE b/doc/props/P_ARMOUR_TYPE
index 19e6812..300dddb 100644
--- a/doc/props/P_ARMOUR_TYPE
+++ b/doc/props/P_ARMOUR_TYPE
@@ -1,4 +1,3 @@
-
 P_ARMOUR_TYPE
 *************
 
diff --git a/doc/props/P_ARRIVEMSG b/doc/props/P_ARRIVEMSG
index e5e1a59..ed45e5b 100644
--- a/doc/props/P_ARRIVEMSG
+++ b/doc/props/P_ARRIVEMSG
@@ -1,4 +1,3 @@
-
 P_ARRIVEMSG
 ***********
 
@@ -20,12 +19,19 @@
 
    Die Property enthaelt die Meldungen, die beim Erreichen eines
    Haltepunktes an die Reisenden und an den Haltepunkt-Raum ausgegeben
-   werden. Sie muss ein String-Array mit zwei Elementen enthalten.
+   werden. Sie muss ein String-Array mit zwei Elementen enthalten, von
+   denen die erste an den Reisenden, die zweite an den Haltepunkt
+   gesendet werden.
 
-   Fuer den Umbruch muss der Nutzer selbst Sorge tragen.
+   Der Platzhalter @WO kann verwendet werden, um die Bezeichnung des
+   aktuellen Haltepunktes (Rueckgabewert von QueryArrived()) einfuegen
+   zu lassen. Es werden alle Vorkommen des Platzhalters ersetzt.
+
+   Die Meldungen werden mit BS_LEAVE_MY_LFS umbrochen, d.h. man kann bei
+   Bedarf eigene Umbrueche einfuegen.
 
 
 LETZTE AENDERUNG
 ================
 
-   2020-09-01 Arathorn
+   2020-09-06 Arathorn
diff --git a/doc/props/P_ARTICLE b/doc/props/P_ARTICLE
index 2bf2c54..be6acff 100644
--- a/doc/props/P_ARTICLE
+++ b/doc/props/P_ARTICLE
@@ -1,4 +1,3 @@
-
 P_ARTICLE
 *********
 
diff --git a/doc/props/P_ATTACK_BUSY b/doc/props/P_ATTACK_BUSY
index dfc8ba6..5a3bfb0 100644
--- a/doc/props/P_ATTACK_BUSY
+++ b/doc/props/P_ATTACK_BUSY
@@ -1,4 +1,3 @@
-
 P_ATTACK_BUSY
 *************
 
diff --git a/doc/props/P_ATTRIBUTES b/doc/props/P_ATTRIBUTES
index ed5dd1c..f465b32 100644
--- a/doc/props/P_ATTRIBUTES
+++ b/doc/props/P_ATTRIBUTES
@@ -1,4 +1,3 @@
-
 P_ATTRIBUTES
 ************
 
diff --git a/doc/props/P_ATTRIBUTES_MODIFIER b/doc/props/P_ATTRIBUTES_MODIFIER
index ab9f24d..5f4b34b 100644
--- a/doc/props/P_ATTRIBUTES_MODIFIER
+++ b/doc/props/P_ATTRIBUTES_MODIFIER
@@ -1,4 +1,3 @@
-
 P_ATTRIBUTES_MODIFIER
 *********************
 
diff --git a/doc/props/P_ATTRIBUTES_OFFSETS b/doc/props/P_ATTRIBUTES_OFFSETS
index dfcbb8c..935b036 100644
--- a/doc/props/P_ATTRIBUTES_OFFSETS
+++ b/doc/props/P_ATTRIBUTES_OFFSETS
@@ -1,4 +1,3 @@
-
 P_ATTRIBUTES_OFFSETS
 ********************
 
diff --git a/doc/props/P_AUTH_INFO b/doc/props/P_AUTH_INFO
index 953b519..4d1c7ea 100644
--- a/doc/props/P_AUTH_INFO
+++ b/doc/props/P_AUTH_INFO
@@ -1,4 +1,3 @@
-
 P_AUTH_INFO
 ***********
 
diff --git a/doc/props/P_AUTOLOAD b/doc/props/P_AUTOLOAD
index 5e623bb..5d87437 100644
--- a/doc/props/P_AUTOLOAD
+++ b/doc/props/P_AUTOLOAD
@@ -1,4 +1,3 @@
-
 P_AUTOLOAD
 **********
 
diff --git a/doc/props/P_AUTOLOADOBJ b/doc/props/P_AUTOLOADOBJ
index 3184fff..3aea0a1 100644
--- a/doc/props/P_AUTOLOADOBJ
+++ b/doc/props/P_AUTOLOADOBJ
@@ -1,4 +1,3 @@
-
 P_AUTOLOADOBJ
 *************
 
diff --git a/doc/props/P_AVATAR_URI b/doc/props/P_AVATAR_URI
index 0a2437c..46301ab 100644
--- a/doc/props/P_AVATAR_URI
+++ b/doc/props/P_AVATAR_URI
@@ -1,4 +1,3 @@
-
 P_AVATAR_URI
 ************
 
diff --git a/doc/props/P_AVERAGE_SIZE b/doc/props/P_AVERAGE_SIZE
index 0208ef4..e67b262 100644
--- a/doc/props/P_AVERAGE_SIZE
+++ b/doc/props/P_AVERAGE_SIZE
@@ -1,4 +1,3 @@
-
 P_AVERAGE_SIZE
 **************
 
diff --git a/doc/props/P_AVERAGE_WEIGHT b/doc/props/P_AVERAGE_WEIGHT
index d71c53b..57f6bd8 100644
--- a/doc/props/P_AVERAGE_WEIGHT
+++ b/doc/props/P_AVERAGE_WEIGHT
@@ -1,4 +1,3 @@
-
 P_AVERAGE_WEIGHT
 ****************
 
diff --git a/doc/props/P_AWAY b/doc/props/P_AWAY
index 5678440..364c9e1 100644
--- a/doc/props/P_AWAY
+++ b/doc/props/P_AWAY
@@ -1,4 +1,3 @@
-
 P_AWAY
 ******
 
diff --git a/doc/props/P_BAD_MSG b/doc/props/P_BAD_MSG
index 7015a9c..2906a7c 100644
--- a/doc/props/P_BAD_MSG
+++ b/doc/props/P_BAD_MSG
@@ -1,4 +1,3 @@
-
 P_BAD_MSG
 *********
 
diff --git a/doc/props/P_BLIND b/doc/props/P_BLIND
index da86624..5ef8b86 100644
--- a/doc/props/P_BLIND
+++ b/doc/props/P_BLIND
@@ -1,4 +1,3 @@
-
 P_BLIND
 *******
 
diff --git a/doc/props/P_BODY b/doc/props/P_BODY
index 5871adb..f8ad4cb 100644
--- a/doc/props/P_BODY
+++ b/doc/props/P_BODY
@@ -1,4 +1,3 @@
-
 P_BODY
 ******
 
diff --git a/doc/props/P_BRIEF b/doc/props/P_BRIEF
index 34ba0aa..c156aaf 100644
--- a/doc/props/P_BRIEF
+++ b/doc/props/P_BRIEF
@@ -1,4 +1,3 @@
-
 P_BRIEF
 *******
 
diff --git a/doc/props/P_BUFFER b/doc/props/P_BUFFER
index 699f91c..db5d272 100644
--- a/doc/props/P_BUFFER
+++ b/doc/props/P_BUFFER
@@ -1,4 +1,3 @@
-
 P_BUFFER
 ********
 
diff --git a/doc/props/P_BUY_ONLY_PLANTS b/doc/props/P_BUY_ONLY_PLANTS
index 0d15a94..116a87a 100644
--- a/doc/props/P_BUY_ONLY_PLANTS
+++ b/doc/props/P_BUY_ONLY_PLANTS
@@ -1,4 +1,3 @@
-
 P_BUY_ONLY_PLANTS
 *****************
 
diff --git a/doc/props/P_CALLED_FROM_IP b/doc/props/P_CALLED_FROM_IP
index 306241c..3d0eedf 100644
--- a/doc/props/P_CALLED_FROM_IP
+++ b/doc/props/P_CALLED_FROM_IP
@@ -1,4 +1,3 @@
-
 P_CALLED_FROM_IP
 ****************
 
diff --git a/doc/props/P_CAN_FLAGS b/doc/props/P_CAN_FLAGS
index 01814fb..4345f78 100644
--- a/doc/props/P_CAN_FLAGS
+++ b/doc/props/P_CAN_FLAGS
@@ -1,4 +1,3 @@
-
 P_CAN_FLAGS
 ***********
 
diff --git a/doc/props/P_CAP_NAME b/doc/props/P_CAP_NAME
index 0069948..5e8d343 100644
--- a/doc/props/P_CAP_NAME
+++ b/doc/props/P_CAP_NAME
@@ -1,4 +1,3 @@
-
 P_CAP_NAME
 **********
 
diff --git a/doc/props/P_CARRIED_VALUE b/doc/props/P_CARRIED_VALUE
index 8792664..a2e1f25 100644
--- a/doc/props/P_CARRIED_VALUE
+++ b/doc/props/P_CARRIED_VALUE
@@ -1,4 +1,3 @@
-
 P_CARRIED_VALUE
 ***************
 
diff --git a/doc/props/P_CHATS b/doc/props/P_CHATS
index 4b04b1d..b1dc819 100644
--- a/doc/props/P_CHATS
+++ b/doc/props/P_CHATS
@@ -1,4 +1,3 @@
-
 P_CHATS
 *******
 
diff --git a/doc/props/P_CHAT_CHANCE b/doc/props/P_CHAT_CHANCE
index 76c26b6..1a59def 100644
--- a/doc/props/P_CHAT_CHANCE
+++ b/doc/props/P_CHAT_CHANCE
@@ -1,4 +1,3 @@
-
 P_CHAT_CHANCE
 *************
 
diff --git a/doc/props/P_CLASS b/doc/props/P_CLASS
index 80017cc..0903e1a 100644
--- a/doc/props/P_CLASS
+++ b/doc/props/P_CLASS
@@ -1,4 +1,3 @@
-
 P_CLASS
 *******
 
diff --git a/doc/props/P_CLOCKMSG b/doc/props/P_CLOCKMSG
index 6f85b56..86e51ee 100644
--- a/doc/props/P_CLOCKMSG
+++ b/doc/props/P_CLOCKMSG
@@ -1,4 +1,3 @@
-
 P_CLOCKMSG
 **********
 
diff --git a/doc/props/P_CLONER b/doc/props/P_CLONER
index 75e9d02..95a6a45 100644
--- a/doc/props/P_CLONER
+++ b/doc/props/P_CLONER
@@ -1,4 +1,3 @@
-
 P_CLONER
 ********
 
diff --git a/doc/props/P_CLONE_MSG b/doc/props/P_CLONE_MSG
index d16f42e..86c6ef9 100644
--- a/doc/props/P_CLONE_MSG
+++ b/doc/props/P_CLONE_MSG
@@ -1,4 +1,3 @@
-
 P_CLONE_MSG
 ***********
 
diff --git a/doc/props/P_CLONE_TIME b/doc/props/P_CLONE_TIME
index fb7c3e5..d6ac97c 100644
--- a/doc/props/P_CLONE_TIME
+++ b/doc/props/P_CLONE_TIME
@@ -1,4 +1,3 @@
-
 P_CLONE_TIME
 ************
 
diff --git a/doc/props/P_CLOTHING b/doc/props/P_CLOTHING
index 3458058..97eef47 100644
--- a/doc/props/P_CLOTHING
+++ b/doc/props/P_CLOTHING
@@ -1,4 +1,3 @@
-
 P_CLOTHING
 **********
 
diff --git a/doc/props/P_CMSG b/doc/props/P_CMSG
index e38f085..393bfc0 100644
--- a/doc/props/P_CMSG
+++ b/doc/props/P_CMSG
@@ -1,4 +1,3 @@
-
 P_CMSG
 ******
 
diff --git a/doc/props/P_CNT_STATUS b/doc/props/P_CNT_STATUS
index 5bcc584..3cb14e3 100644
--- a/doc/props/P_CNT_STATUS
+++ b/doc/props/P_CNT_STATUS
@@ -1,4 +1,3 @@
-
 P_CNT_STATUS
 ************
 
diff --git a/doc/props/P_COMBATCMDS b/doc/props/P_COMBATCMDS
index e82336a..fec7ae1 100644
--- a/doc/props/P_COMBATCMDS
+++ b/doc/props/P_COMBATCMDS
@@ -1,4 +1,3 @@
-
 P_COMBATCMDS
 ************
 
diff --git a/doc/props/P_COMMANDS b/doc/props/P_COMMANDS
index 5812b35..dba4422 100644
--- a/doc/props/P_COMMANDS
+++ b/doc/props/P_COMMANDS
@@ -1,4 +1,3 @@
-
 P_COMMANDS
 **********
 
diff --git a/doc/props/P_COMPILER_PATH b/doc/props/P_COMPILER_PATH
index e67d01f..5b5f0ec 100644
--- a/doc/props/P_COMPILER_PATH
+++ b/doc/props/P_COMPILER_PATH
@@ -1,4 +1,3 @@
-
 P_COMPILER_PATH
 ***************
 
diff --git a/doc/props/P_CONSUME_MSG b/doc/props/P_CONSUME_MSG
index 0300037..89db61d 100644
--- a/doc/props/P_CONSUME_MSG
+++ b/doc/props/P_CONSUME_MSG
@@ -1,4 +1,3 @@
-
 P_CONSUME_MSG
 *************
 
diff --git a/doc/props/P_CONTAINER b/doc/props/P_CONTAINER
index 019ff81..64b429e 100644
--- a/doc/props/P_CONTAINER
+++ b/doc/props/P_CONTAINER
@@ -1,4 +1,3 @@
-
 P_CONTAINER
 ***********
 
diff --git a/doc/props/P_CONTENTS b/doc/props/P_CONTENTS
index fc9f20e..7d623b1 100644
--- a/doc/props/P_CONTENTS
+++ b/doc/props/P_CONTENTS
@@ -1,4 +1,3 @@
-
 P_CONTENTS
 **********
 
diff --git a/doc/props/P_CORPSE b/doc/props/P_CORPSE
index 762f03c..b47a164 100644
--- a/doc/props/P_CORPSE
+++ b/doc/props/P_CORPSE
@@ -1,4 +1,3 @@
-
 P_CORPSE
 ********
 
diff --git a/doc/props/P_CURRENTDIR b/doc/props/P_CURRENTDIR
index b1dc2a4..c040966 100644
--- a/doc/props/P_CURRENTDIR
+++ b/doc/props/P_CURRENTDIR
@@ -1,4 +1,3 @@
-
 P_CURRENTDIR
 ************
 
diff --git a/doc/props/P_CURSED b/doc/props/P_CURSED
index c3a9061..11cd9c4 100644
--- a/doc/props/P_CURSED
+++ b/doc/props/P_CURSED
@@ -1,4 +1,3 @@
-
 P_CURSED
 ********
 
diff --git a/doc/props/P_DAMAGED b/doc/props/P_DAMAGED
index 91d5324..15a7458 100644
--- a/doc/props/P_DAMAGED
+++ b/doc/props/P_DAMAGED
@@ -1,4 +1,3 @@
-
 P_DAMAGED
 *********
 
diff --git a/doc/props/P_DAMAGE_MSG b/doc/props/P_DAMAGE_MSG
index e9c71a8..34c9169 100644
--- a/doc/props/P_DAMAGE_MSG
+++ b/doc/props/P_DAMAGE_MSG
@@ -1,4 +1,3 @@
-
 P_DAMAGE_MSG
 ************
 
diff --git a/doc/props/P_DAM_DESC b/doc/props/P_DAM_DESC
index 151f555..ff5e22d 100644
--- a/doc/props/P_DAM_DESC
+++ b/doc/props/P_DAM_DESC
@@ -1,4 +1,3 @@
-
 P_DAM_DESC
 **********
 
diff --git a/doc/props/P_DAM_TYPE b/doc/props/P_DAM_TYPE
index e5088d2..93e9e13 100644
--- a/doc/props/P_DAM_TYPE
+++ b/doc/props/P_DAM_TYPE
@@ -1,4 +1,3 @@
-
 P_DAM_TYPE
 **********
 
diff --git a/doc/props/P_DEADS b/doc/props/P_DEADS
index 03f0c07..3952505 100644
--- a/doc/props/P_DEADS
+++ b/doc/props/P_DEADS
@@ -1,4 +1,3 @@
-
 P_DEADS
 *******
 
diff --git a/doc/props/P_DEAF b/doc/props/P_DEAF
index 570ac06..40bdf2d 100644
--- a/doc/props/P_DEAF
+++ b/doc/props/P_DEAF
@@ -1,4 +1,3 @@
-
 P_DEAF
 ******
 
diff --git a/doc/props/P_DEATH_MSG b/doc/props/P_DEATH_MSG
index d5de007..5a1f5b6 100644
--- a/doc/props/P_DEATH_MSG
+++ b/doc/props/P_DEATH_MSG
@@ -1,4 +1,3 @@
-
 P_DEATH_MSG
 ***********
 
diff --git a/doc/props/P_DEATH_SPONSORED_BY b/doc/props/P_DEATH_SPONSORED_BY
index cae8532..4b42555 100644
--- a/doc/props/P_DEATH_SPONSORED_BY
+++ b/doc/props/P_DEATH_SPONSORED_BY
@@ -1,4 +1,3 @@
-
 P_DEATH_SPONSORED_BY
 ********************
 
diff --git a/doc/props/P_DEFAULT_GUILD b/doc/props/P_DEFAULT_GUILD
index 55abd50..1e5e515 100644
--- a/doc/props/P_DEFAULT_GUILD
+++ b/doc/props/P_DEFAULT_GUILD
@@ -1,4 +1,3 @@
-
 P_DEFAULT_GUILD
 ***************
 
diff --git a/doc/props/P_DEFAULT_NOTIFY_FAIL b/doc/props/P_DEFAULT_NOTIFY_FAIL
index 351c96c..ad59583 100644
--- a/doc/props/P_DEFAULT_NOTIFY_FAIL
+++ b/doc/props/P_DEFAULT_NOTIFY_FAIL
@@ -1,4 +1,3 @@
-
 P_DEFAULT_NOTIFY_FAIL
 *********************
 
diff --git a/doc/props/P_DEFENDERS b/doc/props/P_DEFENDERS
index 6820004..b5a8c7c 100644
--- a/doc/props/P_DEFENDERS
+++ b/doc/props/P_DEFENDERS
@@ -1,4 +1,3 @@
-
 P_DEFENDERS
 ***********
 
@@ -38,8 +37,8 @@
 SIEHE AUCH
 ==========
 
-   *AddDefender*, *RemoveDefender*, *QueryDefenders*,
-   *QueryPresentDefenders*, *QueryNearDefenders*, *InformDefend*,
-   *DefendOther*, /std/living/combat.c
+   AddDefender(), RemoveDefender(), QueryDefenders(),
+   QueryPresentDefenders(), QueryNearDefenders(), InformDefend(),
+   DefendOther(),  /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/props/P_DEFEND_FUNC b/doc/props/P_DEFEND_FUNC
index a9939e1..04b68a0 100644
--- a/doc/props/P_DEFEND_FUNC
+++ b/doc/props/P_DEFEND_FUNC
@@ -1,4 +1,3 @@
-
 P_DEFEND_FUNC
 *************
 
diff --git a/doc/props/P_DEFUEL_AMOUNT_DRINK b/doc/props/P_DEFUEL_AMOUNT_DRINK
index 79dcfa5..adfdfbf 100644
--- a/doc/props/P_DEFUEL_AMOUNT_DRINK
+++ b/doc/props/P_DEFUEL_AMOUNT_DRINK
@@ -1,4 +1,3 @@
-
 P_DEFUEL_AMOUNT_DRINK
 *********************
 
diff --git a/doc/props/P_DEFUEL_AMOUNT_FOOD b/doc/props/P_DEFUEL_AMOUNT_FOOD
index f61a23e..bd6ae4a 100644
--- a/doc/props/P_DEFUEL_AMOUNT_FOOD
+++ b/doc/props/P_DEFUEL_AMOUNT_FOOD
@@ -1,4 +1,3 @@
-
 P_DEFUEL_AMOUNT_FOOD
 ********************
 
diff --git a/doc/props/P_DEFUEL_LIMIT_DRINK b/doc/props/P_DEFUEL_LIMIT_DRINK
index d3a2c3c..45fff9e 100644
--- a/doc/props/P_DEFUEL_LIMIT_DRINK
+++ b/doc/props/P_DEFUEL_LIMIT_DRINK
@@ -1,4 +1,3 @@
-
 P_DEFUEL_LIMIT_DRINK
 ********************
 
diff --git a/doc/props/P_DEFUEL_LIMIT_FOOD b/doc/props/P_DEFUEL_LIMIT_FOOD
index bb012a3..c03cdde 100644
--- a/doc/props/P_DEFUEL_LIMIT_FOOD
+++ b/doc/props/P_DEFUEL_LIMIT_FOOD
@@ -1,4 +1,3 @@
-
 P_DEFUEL_LIMIT_FOOD
 *******************
 
diff --git a/doc/props/P_DEFUEL_TIME_DRINK b/doc/props/P_DEFUEL_TIME_DRINK
index 3ff3b74..dcee450 100644
--- a/doc/props/P_DEFUEL_TIME_DRINK
+++ b/doc/props/P_DEFUEL_TIME_DRINK
@@ -1,4 +1,3 @@
-
 P_DEFUEL_TIME_DRINK
 *******************
 
diff --git a/doc/props/P_DEFUEL_TIME_FOOD b/doc/props/P_DEFUEL_TIME_FOOD
index fcd80d0..2c3c162 100644
--- a/doc/props/P_DEFUEL_TIME_FOOD
+++ b/doc/props/P_DEFUEL_TIME_FOOD
@@ -1,4 +1,3 @@
-
 P_DEFUEL_TIME_FOOD
 ******************
 
diff --git a/doc/props/P_DEPARTMSG b/doc/props/P_DEPARTMSG
index 48c67e3..57643d3 100644
--- a/doc/props/P_DEPARTMSG
+++ b/doc/props/P_DEPARTMSG
@@ -1,4 +1,3 @@
-
 P_DEPARTMSG
 ***********
 
@@ -20,12 +19,19 @@
 
    Die Property enthaelt die Meldungen, die beim Verlassen eines
    Haltepunktes an die Reisenden und an den Haltepunkt-Raum ausgegeben
-   werden. Sie muss ein String-Array mit zwei Elementen enthalten.
+   werden. Sie muss ein String-Array mit zwei Elementen enthalten, von
+   denen die erste an den Reisenden, die zweite an den Haltepunkt
+   gesendet werden.
 
-   Fuer den Umbruch muss der Nutzer selbst Sorge tragen.
+   Der Platzhalter @WO kann verwendet werden, um die Bezeichnung des
+   aktuellen Haltepunktes (Rueckgabewert von QueryArrived()) einfuegen
+   zu lassen. Es werden alle Vorkommen des Platzhalters ersetzt.
+
+   Die Meldungen werden mit BS_LEAVE_MY_LFS umbrochen, d.h. man kann bei
+   Bedarf eigene Umbrueche einfuegen.
 
 
 LETZTE AENDERUNG
 ================
 
-   2020-09-01 Arathorn
+   2020-09-06 Arathorn
diff --git a/doc/props/P_DESCRIPTION b/doc/props/P_DESCRIPTION
index 4d32999..f6bd981 100644
--- a/doc/props/P_DESCRIPTION
+++ b/doc/props/P_DESCRIPTION
@@ -1,4 +1,3 @@
-
 P_DESCRIPTION
 *************
 
diff --git a/doc/props/P_DESTROY_BAD b/doc/props/P_DESTROY_BAD
index 94f00e5..b2992ff 100644
--- a/doc/props/P_DESTROY_BAD
+++ b/doc/props/P_DESTROY_BAD
@@ -1,4 +1,3 @@
-
 P_DESTROY_BAD
 *************
 
diff --git a/doc/props/P_DESTRUCT_MSG b/doc/props/P_DESTRUCT_MSG
index 334c374..119bee5 100644
--- a/doc/props/P_DESTRUCT_MSG
+++ b/doc/props/P_DESTRUCT_MSG
@@ -1,4 +1,3 @@
-
 P_DESTRUCT_MSG
 **************
 
diff --git a/doc/props/P_DETAILS b/doc/props/P_DETAILS
index e14c15c..83c3600 100644
--- a/doc/props/P_DETAILS
+++ b/doc/props/P_DETAILS
@@ -1,4 +1,3 @@
-
 P_DETAILS
 *********
 
diff --git a/doc/props/P_DIE_MSG b/doc/props/P_DIE_MSG
index 0bd5d17..e07e742 100644
--- a/doc/props/P_DIE_MSG
+++ b/doc/props/P_DIE_MSG
@@ -1,4 +1,3 @@
-
 P_DIE_MSG
 *********
 
diff --git a/doc/props/P_DISABLE_ATTACK b/doc/props/P_DISABLE_ATTACK
index 37544ae..9acf8f4 100644
--- a/doc/props/P_DISABLE_ATTACK
+++ b/doc/props/P_DISABLE_ATTACK
@@ -1,4 +1,3 @@
-
 P_DISABLE_ATTACK
 ****************
 
diff --git a/doc/props/P_DISABLE_COMMANDS b/doc/props/P_DISABLE_COMMANDS
index e66910a..bf6fc9a 100644
--- a/doc/props/P_DISABLE_COMMANDS
+++ b/doc/props/P_DISABLE_COMMANDS
@@ -1,4 +1,3 @@
-
 P_DISABLE_COMMANDS
 ******************
 
diff --git a/doc/props/P_DISTRIBUTION b/doc/props/P_DISTRIBUTION
index 51140ae..863bb73 100644
--- a/doc/props/P_DISTRIBUTION
+++ b/doc/props/P_DISTRIBUTION
@@ -1,4 +1,3 @@
-
 P_DISTRIBUTION
 **************
 
diff --git a/doc/props/P_DMSG b/doc/props/P_DMSG
index 40af065..d0bdd53 100644
--- a/doc/props/P_DMSG
+++ b/doc/props/P_DMSG
@@ -1,4 +1,3 @@
-
 P_DMSG
 ******
 
diff --git a/doc/props/P_DOMAIN b/doc/props/P_DOMAIN
index aad5288..c157442 100644
--- a/doc/props/P_DOMAIN
+++ b/doc/props/P_DOMAIN
@@ -1,4 +1,3 @@
-
 P_DOMAIN
 ********
 
diff --git a/doc/props/P_DOOR_INFOS b/doc/props/P_DOOR_INFOS
index a432ed0..9833475 100644
--- a/doc/props/P_DOOR_INFOS
+++ b/doc/props/P_DOOR_INFOS
@@ -1,4 +1,3 @@
-
 P_DOOR_INFOS
 ************
 
diff --git a/doc/props/P_DO_DESTRUCT b/doc/props/P_DO_DESTRUCT
index 6aa9384..cab322b 100644
--- a/doc/props/P_DO_DESTRUCT
+++ b/doc/props/P_DO_DESTRUCT
@@ -1,4 +1,3 @@
-
 P_DO_DESTRUCT
 *************
 
diff --git a/doc/props/P_DRINK b/doc/props/P_DRINK
index e3bab0b..4010660 100644
--- a/doc/props/P_DRINK
+++ b/doc/props/P_DRINK
@@ -1,4 +1,3 @@
-
 P_DRINK
 *******
 
diff --git a/doc/props/P_DRINK_DELAY b/doc/props/P_DRINK_DELAY
index 1617b47..a9e1339 100644
--- a/doc/props/P_DRINK_DELAY
+++ b/doc/props/P_DRINK_DELAY
@@ -1,4 +1,3 @@
-
 P_DRINK_DELAY
 *************
 
diff --git a/doc/props/P_DRINK_FULL_MSG b/doc/props/P_DRINK_FULL_MSG
index 1e5c2ce..73d6e45 100644
--- a/doc/props/P_DRINK_FULL_MSG
+++ b/doc/props/P_DRINK_FULL_MSG
@@ -1,4 +1,3 @@
-
 P_DRINK_FULL_MSG
 ****************
 
diff --git a/doc/props/P_DROP_MSG b/doc/props/P_DROP_MSG
index 9ccb875..86473bb 100644
--- a/doc/props/P_DROP_MSG
+++ b/doc/props/P_DROP_MSG
@@ -1,4 +1,3 @@
-
 P_DROP_MSG
 **********
 
diff --git a/doc/props/P_EARMUFFS b/doc/props/P_EARMUFFS
index e5b4bbb..43b2b7d 100644
--- a/doc/props/P_EARMUFFS
+++ b/doc/props/P_EARMUFFS
@@ -1,4 +1,3 @@
-
 P_EARMUFFS
 **********
 
diff --git a/doc/props/P_EATER_MSG b/doc/props/P_EATER_MSG
index 132469d..22df504 100644
--- a/doc/props/P_EATER_MSG
+++ b/doc/props/P_EATER_MSG
@@ -1,4 +1,3 @@
-
 P_EATER_MSG
 ***********
 
diff --git a/doc/props/P_EFFECTIVE_AC b/doc/props/P_EFFECTIVE_AC
index 5473d5d..5be3cce 100644
--- a/doc/props/P_EFFECTIVE_AC
+++ b/doc/props/P_EFFECTIVE_AC
@@ -1,4 +1,3 @@
-
 P_EFFECTIVE_AC
 **************
 
diff --git a/doc/props/P_EFFECTIVE_WC b/doc/props/P_EFFECTIVE_WC
index aa16980..30b7c98 100644
--- a/doc/props/P_EFFECTIVE_WC
+++ b/doc/props/P_EFFECTIVE_WC
@@ -1,4 +1,3 @@
-
 P_EFFECTIVE_WC
 **************
 
diff --git a/doc/props/P_EMPTY_MSG b/doc/props/P_EMPTY_MSG
index e91d622..627fcc7 100644
--- a/doc/props/P_EMPTY_MSG
+++ b/doc/props/P_EMPTY_MSG
@@ -1,4 +1,3 @@
-
 P_EMPTY_MSG
 ***********
 
diff --git a/doc/props/P_EMPTY_PROPS b/doc/props/P_EMPTY_PROPS
index 6f5c126..b8e3f28 100644
--- a/doc/props/P_EMPTY_PROPS
+++ b/doc/props/P_EMPTY_PROPS
@@ -1,4 +1,3 @@
-
 P_EMPTY_PROPS
 *************
 
diff --git a/doc/props/P_ENABLE_IN_ATTACK_OUT b/doc/props/P_ENABLE_IN_ATTACK_OUT
index 0a64c74..a004109 100644
--- a/doc/props/P_ENABLE_IN_ATTACK_OUT
+++ b/doc/props/P_ENABLE_IN_ATTACK_OUT
@@ -1,4 +1,3 @@
-
 P_ENABLE_IN_ATTACK_OUT
 **********************
 
diff --git a/doc/props/P_ENEMY_DAMAGE b/doc/props/P_ENEMY_DAMAGE
index bad9c99..f68465c 100644
--- a/doc/props/P_ENEMY_DAMAGE
+++ b/doc/props/P_ENEMY_DAMAGE
@@ -1,4 +1,3 @@
-
 P_ENEMY_DAMAGE
 **************
 
diff --git a/doc/props/P_ENEMY_DEATH_SEQUENCE b/doc/props/P_ENEMY_DEATH_SEQUENCE
index 03b2bec..31dc8ad 100644
--- a/doc/props/P_ENEMY_DEATH_SEQUENCE
+++ b/doc/props/P_ENEMY_DEATH_SEQUENCE
@@ -1,4 +1,3 @@
-
 P_ENEMY_DEATH_SEQUENCE
 **********************
 
diff --git a/doc/props/P_ENTERCMDS b/doc/props/P_ENTERCMDS
index fc6f72f..f15989c 100644
--- a/doc/props/P_ENTERCMDS
+++ b/doc/props/P_ENTERCMDS
@@ -1,4 +1,3 @@
-
 P_ENTERCMDS
 ***********
 
diff --git a/doc/props/P_ENTERFAIL b/doc/props/P_ENTERFAIL
index 1fe14ba..369003e 100644
--- a/doc/props/P_ENTERFAIL
+++ b/doc/props/P_ENTERFAIL
@@ -1,4 +1,3 @@
-
 P_ENTERFAIL
 ***********
 
diff --git a/doc/props/P_ENTERMSG b/doc/props/P_ENTERMSG
index d8d3535..58d1562 100644
--- a/doc/props/P_ENTERMSG
+++ b/doc/props/P_ENTERMSG
@@ -1,4 +1,3 @@
-
 P_ENTERMSG
 **********
 
diff --git a/doc/props/P_ENV_MSG b/doc/props/P_ENV_MSG
index e969399..dbfdfbf 100644
--- a/doc/props/P_ENV_MSG
+++ b/doc/props/P_ENV_MSG
@@ -1,4 +1,3 @@
-
 P_ENV_MSG
 *********
 
diff --git a/doc/props/P_ENV_TOO_HEAVY_MSG b/doc/props/P_ENV_TOO_HEAVY_MSG
index 23c1d6c..16f32a4 100644
--- a/doc/props/P_ENV_TOO_HEAVY_MSG
+++ b/doc/props/P_ENV_TOO_HEAVY_MSG
@@ -1,4 +1,3 @@
-
 P_ENV_TOO_HEAVY_MSG
 *******************
 
diff --git a/doc/props/P_EQUIP_TIME b/doc/props/P_EQUIP_TIME
index ee0d07f..adf8909 100644
--- a/doc/props/P_EQUIP_TIME
+++ b/doc/props/P_EQUIP_TIME
@@ -1,4 +1,3 @@
-
 P_EQUIP_TIME
 ************
 
diff --git a/doc/props/P_EVAL_FACTORS b/doc/props/P_EVAL_FACTORS
index ed83d4e..86da84c 100644
--- a/doc/props/P_EVAL_FACTORS
+++ b/doc/props/P_EVAL_FACTORS
@@ -1,4 +1,3 @@
-
 P_EVAL_FACTORS
 **************
 
diff --git a/doc/props/P_EVAL_OFFSETS b/doc/props/P_EVAL_OFFSETS
index e571f51..a5b5171 100644
--- a/doc/props/P_EVAL_OFFSETS
+++ b/doc/props/P_EVAL_OFFSETS
@@ -1,4 +1,3 @@
-
 P_EVAL_OFFSETS
 **************
 
diff --git a/doc/props/P_EXITS b/doc/props/P_EXITS
index c31bac3..a28a258 100644
--- a/doc/props/P_EXITS
+++ b/doc/props/P_EXITS
@@ -1,4 +1,3 @@
-
 P_EXITS
 *******
 
diff --git a/doc/props/P_EXTRA_LOOK b/doc/props/P_EXTRA_LOOK
index 1d8e03f..942f90b 100644
--- a/doc/props/P_EXTRA_LOOK
+++ b/doc/props/P_EXTRA_LOOK
@@ -1,4 +1,3 @@
-
 P_EXTRA_LOOK
 ************
 
@@ -35,10 +34,12 @@
    Objekt im Spieler benoetigt, ansonsten **immer** AddExtraLook()
    verwenden.
 
-   Bemerkung: Der Extralook taucht an einem Lebewesen nur auf, wenn
-     dieser schon existiert, wenn das Objekt in das Lebewesen bewegt
-     wird (oder im Fall von F_QUERY_METHOD-Methoden: diese bereits
-     gesetzt ist.)
+   Bemerkung:
+
+     Der Extralook taucht an einem Lebewesen nur auf, wenn dieser
+     schon existiert, wenn das Objekt in das Lebewesen bewegt wird
+     (oder im Fall von F_QUERY_METHOD-Methoden: diese bereits gesetzt
+     ist.)
 
 
 BEISPIEL
diff --git a/doc/props/P_EXTRA_LOOK_OBS b/doc/props/P_EXTRA_LOOK_OBS
index b1a5e4e..98f9bdc 100644
--- a/doc/props/P_EXTRA_LOOK_OBS
+++ b/doc/props/P_EXTRA_LOOK_OBS
@@ -1,4 +1,3 @@
-
 P_EXTRA_LOOK_OBS
 ****************
 
diff --git a/doc/props/P_FAO b/doc/props/P_FAO
index 33f673e..e9c2e17 100644
--- a/doc/props/P_FAO
+++ b/doc/props/P_FAO
@@ -1,4 +1,3 @@
-
 P_FAO
 *****
 
diff --git a/doc/props/P_FAO_PORTALS b/doc/props/P_FAO_PORTALS
index 5d80c90..3291554 100644
--- a/doc/props/P_FAO_PORTALS
+++ b/doc/props/P_FAO_PORTALS
@@ -1,4 +1,3 @@
-
 P_FAO_PORTALS
 *************
 
diff --git a/doc/props/P_FISH b/doc/props/P_FISH
index d11bf01..4667fd3 100644
--- a/doc/props/P_FISH
+++ b/doc/props/P_FISH
@@ -1,4 +1,3 @@
-
 P_FISH
 ******
 
diff --git a/doc/props/P_FLAGS b/doc/props/P_FLAGS
index 3962aed..d17c387 100644
--- a/doc/props/P_FLAGS
+++ b/doc/props/P_FLAGS
@@ -1,4 +1,3 @@
-
 P_FLAGS
 *******
 
diff --git a/doc/props/P_FOLLOW_SILENT b/doc/props/P_FOLLOW_SILENT
index 6dd07b3..05da55d 100644
--- a/doc/props/P_FOLLOW_SILENT
+++ b/doc/props/P_FOLLOW_SILENT
@@ -1,4 +1,3 @@
-
 P_FOLLOW_SILENT
 ***************
 
diff --git a/doc/props/P_FOOD b/doc/props/P_FOOD
index ffcf464..db6f97b 100644
--- a/doc/props/P_FOOD
+++ b/doc/props/P_FOOD
@@ -1,4 +1,3 @@
-
 P_FOOD
 ******
 
diff --git a/doc/props/P_FOOD_DELAY b/doc/props/P_FOOD_DELAY
index f4eb2df..665194b 100644
--- a/doc/props/P_FOOD_DELAY
+++ b/doc/props/P_FOOD_DELAY
@@ -1,4 +1,3 @@
-
 P_FOOD_DELAY
 ************
 
diff --git a/doc/props/P_FOOD_FULL_MSG b/doc/props/P_FOOD_FULL_MSG
index f5c1bce..9cd5bd4 100644
--- a/doc/props/P_FOOD_FULL_MSG
+++ b/doc/props/P_FOOD_FULL_MSG
@@ -1,4 +1,3 @@
-
 P_FOOD_FULL_MSG
 ***************
 
diff --git a/doc/props/P_FORCE_MURDER_MSG b/doc/props/P_FORCE_MURDER_MSG
index 709ef4e..20010b7 100644
--- a/doc/props/P_FORCE_MURDER_MSG
+++ b/doc/props/P_FORCE_MURDER_MSG
@@ -1,4 +1,3 @@
-
 P_FORCE_MURDER_MSG
 ******************
 
diff --git a/doc/props/P_FREE_HANDS b/doc/props/P_FREE_HANDS
index c8311cc..9c917e9 100644
--- a/doc/props/P_FREE_HANDS
+++ b/doc/props/P_FREE_HANDS
@@ -1,4 +1,3 @@
-
 P_FREE_HANDS
 ************
 
diff --git a/doc/props/P_FRIEND b/doc/props/P_FRIEND
index b22203b..aea11f7 100644
--- a/doc/props/P_FRIEND
+++ b/doc/props/P_FRIEND
@@ -1,4 +1,3 @@
-
 P_FRIEND
 ********
 
diff --git a/doc/props/P_FROG b/doc/props/P_FROG
index 71badbe..c6bc806 100644
--- a/doc/props/P_FROG
+++ b/doc/props/P_FROG
@@ -1,4 +1,3 @@
-
 P_FROG
 ******
 
diff --git a/doc/props/P_FUEL b/doc/props/P_FUEL
index 79f8515..c1946b7 100644
--- a/doc/props/P_FUEL
+++ b/doc/props/P_FUEL
@@ -1,4 +1,3 @@
-
 P_FUEL
 ******
 
diff --git a/doc/props/P_FUNC_MSG b/doc/props/P_FUNC_MSG
index 811e71c..bbc6709 100644
--- a/doc/props/P_FUNC_MSG
+++ b/doc/props/P_FUNC_MSG
@@ -1,4 +1,3 @@
-
 P_FUNC_MSG
 **********
 
diff --git a/doc/props/P_FW_ALWAYS_READABLE b/doc/props/P_FW_ALWAYS_READABLE
index 850f7ae..c783ae3 100644
--- a/doc/props/P_FW_ALWAYS_READABLE
+++ b/doc/props/P_FW_ALWAYS_READABLE
@@ -1,4 +1,3 @@
-
 P_FW_ALWAYS_READABLE
 ********************
 
diff --git a/doc/props/P_FW_UNDERSTAND b/doc/props/P_FW_UNDERSTAND
index 737d59e..7bb977a 100644
--- a/doc/props/P_FW_UNDERSTAND
+++ b/doc/props/P_FW_UNDERSTAND
@@ -1,4 +1,3 @@
-
 P_FW_UNDERSTAND
 ***************
 
diff --git a/doc/props/P_GENDER b/doc/props/P_GENDER
index c2a3f77..2c9b8c2 100644
--- a/doc/props/P_GENDER
+++ b/doc/props/P_GENDER
@@ -1,4 +1,3 @@
-
 P_GENDER
 ********
 
diff --git a/doc/props/P_GHOST b/doc/props/P_GHOST
index 31c9f2d..1e9dbec 100644
--- a/doc/props/P_GHOST
+++ b/doc/props/P_GHOST
@@ -1,4 +1,3 @@
-
 P_GHOST
 *******
 
diff --git a/doc/props/P_GIVE_MSG b/doc/props/P_GIVE_MSG
index e21dbad..dc4c4ff 100644
--- a/doc/props/P_GIVE_MSG
+++ b/doc/props/P_GIVE_MSG
@@ -1,4 +1,3 @@
-
 P_GIVE_MSG
 **********
 
diff --git a/doc/props/P_GLOBAL_SKILLPROPS b/doc/props/P_GLOBAL_SKILLPROPS
index c43c820..82d58b5 100644
--- a/doc/props/P_GLOBAL_SKILLPROPS
+++ b/doc/props/P_GLOBAL_SKILLPROPS
@@ -1,4 +1,3 @@
-
 P_GLOBAL_SKILLPROPS
 *******************
 
diff --git a/doc/props/P_GUARD b/doc/props/P_GUARD
index 7128df6..cd6123b 100644
--- a/doc/props/P_GUARD
+++ b/doc/props/P_GUARD
@@ -1,4 +1,3 @@
-
 P_GUARD
 *******
 
diff --git a/doc/props/P_GUILD b/doc/props/P_GUILD
index c3c13cb..b98f1e7 100644
--- a/doc/props/P_GUILD
+++ b/doc/props/P_GUILD
@@ -1,4 +1,3 @@
-
 P_GUILD
 *******
 
diff --git a/doc/props/P_GUILD_DEACTIVATE_SKILLS b/doc/props/P_GUILD_DEACTIVATE_SKILLS
index a53d6ce..784a4f2 100644
--- a/doc/props/P_GUILD_DEACTIVATE_SKILLS
+++ b/doc/props/P_GUILD_DEACTIVATE_SKILLS
@@ -1,4 +1,3 @@
-
 P_GUILD_DEACTIVATE_SKILLS
 *************************
 
diff --git a/doc/props/P_GUILD_DEFAULT_SPELLBOOK b/doc/props/P_GUILD_DEFAULT_SPELLBOOK
index 4d6bbd0..e5a99eb 100644
--- a/doc/props/P_GUILD_DEFAULT_SPELLBOOK
+++ b/doc/props/P_GUILD_DEFAULT_SPELLBOOK
@@ -1,4 +1,3 @@
-
 P_GUILD_DEFAULT_SPELLBOOK
 *************************
 
diff --git a/doc/props/P_GUILD_FEMALE_TITLES b/doc/props/P_GUILD_FEMALE_TITLES
index c06947d..aefd02d 100644
--- a/doc/props/P_GUILD_FEMALE_TITLES
+++ b/doc/props/P_GUILD_FEMALE_TITLES
@@ -1,4 +1,3 @@
-
 P_GUILD_FEMALE_TITLES
 *********************
 
diff --git a/doc/props/P_GUILD_LEVEL b/doc/props/P_GUILD_LEVEL
index f38701c..6650602 100644
--- a/doc/props/P_GUILD_LEVEL
+++ b/doc/props/P_GUILD_LEVEL
@@ -1,4 +1,3 @@
-
 P_GUILD_LEVEL
 *************
 
diff --git a/doc/props/P_GUILD_LEVELS b/doc/props/P_GUILD_LEVELS
index 9b9b80d..8ca5452 100644
--- a/doc/props/P_GUILD_LEVELS
+++ b/doc/props/P_GUILD_LEVELS
@@ -1,4 +1,3 @@
-
 P_GUILD_LEVELS
 **************
 
diff --git a/doc/props/P_GUILD_MALE_TITLES b/doc/props/P_GUILD_MALE_TITLES
index 41cb773..90a3d72 100644
--- a/doc/props/P_GUILD_MALE_TITLES
+++ b/doc/props/P_GUILD_MALE_TITLES
@@ -1,4 +1,3 @@
-
 P_GUILD_MALE_TITLES
 *******************
 
diff --git a/doc/props/P_GUILD_PREPAREBLOCK b/doc/props/P_GUILD_PREPAREBLOCK
index ee1c361..21dab26 100644
--- a/doc/props/P_GUILD_PREPAREBLOCK
+++ b/doc/props/P_GUILD_PREPAREBLOCK
@@ -1,4 +1,3 @@
-
 P_GUILD_PREPAREBLOCK
 ********************
 
diff --git a/doc/props/P_GUILD_RATING b/doc/props/P_GUILD_RATING
index 8fb181e..55852d0 100644
--- a/doc/props/P_GUILD_RATING
+++ b/doc/props/P_GUILD_RATING
@@ -1,4 +1,3 @@
-
 P_GUILD_RATING
 **************
 
diff --git a/doc/props/P_GUILD_RESTRICTIONS b/doc/props/P_GUILD_RESTRICTIONS
index c94ccf3..156027c 100644
--- a/doc/props/P_GUILD_RESTRICTIONS
+++ b/doc/props/P_GUILD_RESTRICTIONS
@@ -1,4 +1,3 @@
-
 P_GUILD_RESTRICTIONS
 ********************
 
diff --git a/doc/props/P_GUILD_SKILLS b/doc/props/P_GUILD_SKILLS
index 232a5cf..c787a60 100644
--- a/doc/props/P_GUILD_SKILLS
+++ b/doc/props/P_GUILD_SKILLS
@@ -1,4 +1,3 @@
-
 P_GUILD_SKILLS
 **************
 
diff --git a/doc/props/P_GUILD_TITLE b/doc/props/P_GUILD_TITLE
index d3a49b3..b9cb1af 100644
--- a/doc/props/P_GUILD_TITLE
+++ b/doc/props/P_GUILD_TITLE
@@ -1,4 +1,3 @@
-
 P_GUILD_TITLE
 *************
 
diff --git a/doc/props/P_HANDS b/doc/props/P_HANDS
index 859b4eb..f8923da 100644
--- a/doc/props/P_HANDS
+++ b/doc/props/P_HANDS
@@ -1,4 +1,3 @@
-
 P_HANDS
 *******
 
diff --git a/doc/props/P_HANDS_USED_BY b/doc/props/P_HANDS_USED_BY
index f0d5165..b35708a 100644
--- a/doc/props/P_HANDS_USED_BY
+++ b/doc/props/P_HANDS_USED_BY
@@ -1,4 +1,3 @@
-
 P_HANDS_USED_BY
 ***************
 
diff --git a/doc/props/P_HARBOUR b/doc/props/P_HARBOUR
index 5b79d9b..4f21c92 100644
--- a/doc/props/P_HARBOUR
+++ b/doc/props/P_HARBOUR
@@ -1,4 +1,3 @@
-
 P_HARBOUR
 *********
 
diff --git a/doc/props/P_HAUS_ERLAUBT b/doc/props/P_HAUS_ERLAUBT
index ffd5c8f..60da881 100644
--- a/doc/props/P_HAUS_ERLAUBT
+++ b/doc/props/P_HAUS_ERLAUBT
@@ -1,4 +1,3 @@
-
 P_HAUS_ERLAUBT
 **************
 
diff --git a/doc/props/P_HB b/doc/props/P_HB
index bdaf9f1..aa8a98e 100644
--- a/doc/props/P_HB
+++ b/doc/props/P_HB
@@ -1,4 +1,3 @@
-
 P_HB
 ****
 
diff --git a/doc/props/P_HEAL b/doc/props/P_HEAL
index 83d4991..96f6f78 100644
--- a/doc/props/P_HEAL
+++ b/doc/props/P_HEAL
@@ -1,4 +1,3 @@
-
 P_HEAL
 ******
 
diff --git a/doc/props/P_HELPER_NPC b/doc/props/P_HELPER_NPC
index af8bfef..089c572 100644
--- a/doc/props/P_HELPER_NPC
+++ b/doc/props/P_HELPER_NPC
@@ -1,4 +1,3 @@
-
 P_HELPER_NPC
 ************
 
diff --git a/doc/props/P_HELPER_OBJECTS b/doc/props/P_HELPER_OBJECTS
index 94990c4..51d1aa0 100644
--- a/doc/props/P_HELPER_OBJECTS
+++ b/doc/props/P_HELPER_OBJECTS
@@ -1,4 +1,3 @@
-
 P_HELPER_OBJECTS
 ****************
 
diff --git a/doc/props/P_HIDE_EXITS b/doc/props/P_HIDE_EXITS
index c9aa2e5..629859e 100644
--- a/doc/props/P_HIDE_EXITS
+++ b/doc/props/P_HIDE_EXITS
@@ -1,4 +1,3 @@
-
 P_HIDE_EXITS
 ************
 
diff --git a/doc/props/P_HISTMIN b/doc/props/P_HISTMIN
index ca35504..176d90e 100644
--- a/doc/props/P_HISTMIN
+++ b/doc/props/P_HISTMIN
@@ -1,4 +1,3 @@
-
 P_HISTMIN
 *********
 
diff --git a/doc/props/P_HIT_FUNC b/doc/props/P_HIT_FUNC
index 9bcc328..45ddacd 100644
--- a/doc/props/P_HIT_FUNC
+++ b/doc/props/P_HIT_FUNC
@@ -1,4 +1,3 @@
-
 P_HIT_FUNC
 **********
 
diff --git a/doc/props/P_HOMEPAGE b/doc/props/P_HOMEPAGE
index 5cf6bec..57992de 100644
--- a/doc/props/P_HOMEPAGE
+++ b/doc/props/P_HOMEPAGE
@@ -1,4 +1,3 @@
-
 P_HOMEPAGE
 **********
 
diff --git a/doc/props/P_HP b/doc/props/P_HP
index b7ded4a..b8d7277 100644
--- a/doc/props/P_HP
+++ b/doc/props/P_HP
@@ -1,4 +1,3 @@
-
 P_HP
 ****
 
diff --git a/doc/props/P_HP_DELAY b/doc/props/P_HP_DELAY
index f15f748..134db36 100644
--- a/doc/props/P_HP_DELAY
+++ b/doc/props/P_HP_DELAY
@@ -1,4 +1,3 @@
-
 P_HP_DELAY
 **********
 
diff --git a/doc/props/P_HP_HOOKS b/doc/props/P_HP_HOOKS
index 7bb48bf..398bb30 100644
--- a/doc/props/P_HP_HOOKS
+++ b/doc/props/P_HP_HOOKS
@@ -1,4 +1,3 @@
-
 P_HP_HOOKS
 **********
 
diff --git a/doc/props/P_HUNTTIME b/doc/props/P_HUNTTIME
index e712a49..3ccd183 100644
--- a/doc/props/P_HUNTTIME
+++ b/doc/props/P_HUNTTIME
@@ -1,4 +1,3 @@
-
 P_HUNTTIME
 **********
 
diff --git a/doc/props/P_IDS b/doc/props/P_IDS
index dee9a74..29913fb 100644
--- a/doc/props/P_IDS
+++ b/doc/props/P_IDS
@@ -1,4 +1,3 @@
-
 P_IDS
 *****
 
diff --git a/doc/props/P_IGNORE b/doc/props/P_IGNORE
index 3436a09..d59e78a 100644
--- a/doc/props/P_IGNORE
+++ b/doc/props/P_IGNORE
@@ -1,4 +1,3 @@
-
 P_IGNORE
 ********
 
diff --git a/doc/props/P_INDOORS b/doc/props/P_INDOORS
index 4483d10..45a8177 100644
--- a/doc/props/P_INDOORS
+++ b/doc/props/P_INDOORS
@@ -1,4 +1,3 @@
-
 P_INDOORS
 *********
 
diff --git a/doc/props/P_INFO b/doc/props/P_INFO
index c18cd97..a729850 100644
--- a/doc/props/P_INFO
+++ b/doc/props/P_INFO
@@ -1,4 +1,3 @@
-
 P_INFO
 ******
 
diff --git a/doc/props/P_INFORMME b/doc/props/P_INFORMME
index c6dd0ed..4b38557 100644
--- a/doc/props/P_INFORMME
+++ b/doc/props/P_INFORMME
@@ -1,4 +1,3 @@
-
 P_INFORMME
 **********
 
diff --git a/doc/props/P_INPC_HOME b/doc/props/P_INPC_HOME
index 1eafd4d..efe1234 100644
--- a/doc/props/P_INPC_HOME
+++ b/doc/props/P_INPC_HOME
@@ -1,4 +1,3 @@
-
 P_INPC_HOME
 ***********
 
diff --git a/doc/props/P_INPC_LAST_ENVIRONMENT b/doc/props/P_INPC_LAST_ENVIRONMENT
index 8f7cb68..b16d07a 100644
--- a/doc/props/P_INPC_LAST_ENVIRONMENT
+++ b/doc/props/P_INPC_LAST_ENVIRONMENT
@@ -1,4 +1,3 @@
-
 P_INPC_LAST_ENVIRONMENT
 ***********************
 
diff --git a/doc/props/P_INPC_LAST_PLAYER_CONTACT b/doc/props/P_INPC_LAST_PLAYER_CONTACT
index 14f8730..c49d4cd 100644
--- a/doc/props/P_INPC_LAST_PLAYER_CONTACT
+++ b/doc/props/P_INPC_LAST_PLAYER_CONTACT
@@ -1,4 +1,3 @@
-
 P_INPC_LAST_PLAYER_CONTACT
 **************************
 
diff --git a/doc/props/P_INPC_WALK_AREA b/doc/props/P_INPC_WALK_AREA
index 9554d27..1a98cba 100644
--- a/doc/props/P_INPC_WALK_AREA
+++ b/doc/props/P_INPC_WALK_AREA
@@ -1,4 +1,3 @@
-
 P_INPC_WALK_AREA
 ****************
 
diff --git a/doc/props/P_INPC_WALK_DELAYS b/doc/props/P_INPC_WALK_DELAYS
index e59deea..9d3b1ba 100644
--- a/doc/props/P_INPC_WALK_DELAYS
+++ b/doc/props/P_INPC_WALK_DELAYS
@@ -1,4 +1,3 @@
-
 P_INPC_WALK_DELAYS
 ******************
 
diff --git a/doc/props/P_INPC_WALK_FLAGS b/doc/props/P_INPC_WALK_FLAGS
index 86c4835..9946e4b 100644
--- a/doc/props/P_INPC_WALK_FLAGS
+++ b/doc/props/P_INPC_WALK_FLAGS
@@ -1,4 +1,3 @@
-
 P_INPC_WALK_FLAGS
 *****************
 
diff --git a/doc/props/P_INPC_WALK_MODE b/doc/props/P_INPC_WALK_MODE
index 134bb50..65c06a0 100644
--- a/doc/props/P_INPC_WALK_MODE
+++ b/doc/props/P_INPC_WALK_MODE
@@ -1,4 +1,3 @@
-
 P_INPC_WALK_MODE
 ****************
 
diff --git a/doc/props/P_INPC_WALK_ROUTE b/doc/props/P_INPC_WALK_ROUTE
index 762408d..ccbbb8b 100644
--- a/doc/props/P_INPC_WALK_ROUTE
+++ b/doc/props/P_INPC_WALK_ROUTE
@@ -1,4 +1,3 @@
-
 P_INPC_WALK_ROUTE
 *****************
 
diff --git a/doc/props/P_INTERMUD b/doc/props/P_INTERMUD
index 8019998..c0d2979 100644
--- a/doc/props/P_INTERMUD
+++ b/doc/props/P_INTERMUD
@@ -1,4 +1,3 @@
-
 P_INTERMUD
 **********
 
diff --git a/doc/props/P_INTERNAL_EXTRA_LOOK b/doc/props/P_INTERNAL_EXTRA_LOOK
index 337e74a..39522a1 100644
--- a/doc/props/P_INTERNAL_EXTRA_LOOK
+++ b/doc/props/P_INTERNAL_EXTRA_LOOK
@@ -1,4 +1,3 @@
-
 P_INTERNAL_EXTRA_LOOK
 *********************
 
@@ -33,8 +32,8 @@
 
    * "xllook": String, der im Extralook des Living angezeigt wird.
 
-   * "xlduration": Zeitstempel (int), der angibt, wie lang der
-     Eintrag gueltig ist.
+   * "xlduration": Zeitstempel (int), der angibt, wie lang der Eintrag
+     gueltig ist.
 
      * 0  ewig gueltig
 
@@ -45,8 +44,8 @@
    * "xlende": String, der nach Ablaufen an das Living ausgegeben
      wird.
 
-   * "xlfun": Funktion, die gerufen wird und den String
-     zurueckliefern muss, der ausgegeben werden soll.
+   * "xlfun": Funktion, die gerufen wird und den String zurueckliefern
+     muss, der ausgegeben werden soll.
 
    * "xlendefun": Funktion, die gerufen wird, wenn der Eintrag
      abgelaufen ist und den String zurueckliefern muss, der dann ans
@@ -59,12 +58,15 @@
 BEMERKUNGEN:
 ============
 
-   Warnung: Keine echte Property. Die Methode
-     _query_internal_extralook() in /std/living/description.c stellt
-     die Daten zusammen.
+   Warnung:
 
-   Warnung: ACHTUNG: Bitte nur die bereitgestellten Methoden zur
-     Manipulation benutzen! Setzen als Property hat keinen Effekt.
+     Keine echte Property. Die Methode _query_internal_extralook() in
+     /std/living/description.c stellt die Daten zusammen.
+
+   Warnung:
+
+     ACHTUNG: Bitte nur die bereitgestellten Methoden zur Manipulation
+     benutzen! Setzen als Property hat keinen Effekt.
 
 
 SIEHE AUCH
diff --git a/doc/props/P_INT_LIGHT b/doc/props/P_INT_LIGHT
index dcf59b6..cc95c22 100644
--- a/doc/props/P_INT_LIGHT
+++ b/doc/props/P_INT_LIGHT
@@ -1,4 +1,3 @@
-
 P_INT_LIGHT
 ***********
 
diff --git a/doc/props/P_INT_LONG b/doc/props/P_INT_LONG
index 741e511..7ab5bb4 100644
--- a/doc/props/P_INT_LONG
+++ b/doc/props/P_INT_LONG
@@ -1,4 +1,3 @@
-
 P_INT_LONG
 **********
 
diff --git a/doc/props/P_INT_SHORT b/doc/props/P_INT_SHORT
index ac3c31d..ba9abc7 100644
--- a/doc/props/P_INT_SHORT
+++ b/doc/props/P_INT_SHORT
@@ -1,4 +1,3 @@
-
 P_INT_SHORT
 ***********
 
diff --git a/doc/props/P_INVIS b/doc/props/P_INVIS
index 5609c84..12d87f7 100644
--- a/doc/props/P_INVIS
+++ b/doc/props/P_INVIS
@@ -1,4 +1,3 @@
-
 P_INVIS
 *******
 
diff --git a/doc/props/P_IP_NAME b/doc/props/P_IP_NAME
index 6003c80..48bd197 100644
--- a/doc/props/P_IP_NAME
+++ b/doc/props/P_IP_NAME
@@ -1,4 +1,3 @@
-
 P_IP_NAME
 *********
 
diff --git a/doc/props/P_IS_ARTILLERY b/doc/props/P_IS_ARTILLERY
index 2afcd60..ef60f02 100644
--- a/doc/props/P_IS_ARTILLERY
+++ b/doc/props/P_IS_ARTILLERY
@@ -1,4 +1,3 @@
-
 P_IS_ARTILLERY
 **************
 
diff --git a/doc/props/P_ITEMS b/doc/props/P_ITEMS
index 1fcafc5..971b22f 100644
--- a/doc/props/P_ITEMS
+++ b/doc/props/P_ITEMS
@@ -1,4 +1,3 @@
-
 P_ITEMS
 *******
 
@@ -12,11 +11,40 @@
 DEFINIERT IN
 ============
 
-   /sys/properties.h
+   /sys/container.h
 
 
 BESCHREIBUNG
 ============
 
-   Definition von Gegenstaenden, die in dem Raum liegen sollen.
-   Erklaerung in einem Extrafile.
+   P_ITEM enthaelt eine Datenstruktur vom Typ <
+   <object|<string|string*>|int|mapping>* >*. Jedes Unterarray
+   enthaelt die Daten zu einem per AddItem() hinzugefuegten Objekt.
+   Der Aufbau ist wie folgt:
+
+   * RITEM_OBJECT (object) Das erzeugte Objekt
+
+   * RITEM_FILE (string|string*) Die Dateinamen
+
+   * RITEM_REFRESH (int) Refresh Flags, Konstanten aus rooms.h und
+     npc.h
+
+   * RITEM_PROPS (mapping|int) Properties oder unique Flag
+
+   Fuer Details zu den jeweiligen Eintraegen siehe AddItem() , die
+   Konstanten sind in rooms.h definiert.
+
+
+BEMERKUNGEN
+===========
+
+   Diese Property keinesfalls von Hand setzen! Benutzt die
+   Zugriffsfunktionen AddItem()  und RemoveItem().
+
+
+SIEHE AUCH
+==========
+
+   AddItem(), RemoveItem()
+
+Letzte Aenderung: 03.07.2025, Bugfix
diff --git a/doc/props/P_I_HATE_ALCOHOL b/doc/props/P_I_HATE_ALCOHOL
index 0a0eefc..1344b4b 100644
--- a/doc/props/P_I_HATE_ALCOHOL
+++ b/doc/props/P_I_HATE_ALCOHOL
@@ -1,4 +1,3 @@
-
 P_I_HATE_ALCOHOL
 ****************
 
diff --git a/doc/props/P_KEEPER b/doc/props/P_KEEPER
index 63185c8..cce2550 100644
--- a/doc/props/P_KEEPER
+++ b/doc/props/P_KEEPER
@@ -1,4 +1,3 @@
-
 P_KEEPER
 ********
 
diff --git a/doc/props/P_KEEP_ON_SELL b/doc/props/P_KEEP_ON_SELL
index b0e694c..89a83d0 100644
--- a/doc/props/P_KEEP_ON_SELL
+++ b/doc/props/P_KEEP_ON_SELL
@@ -1,4 +1,3 @@
-
 P_KEEP_ON_SELL
 **************
 
diff --git a/doc/props/P_KILLER b/doc/props/P_KILLER
index 01bb0d1..62f791d 100644
--- a/doc/props/P_KILLER
+++ b/doc/props/P_KILLER
@@ -1,4 +1,3 @@
-
 P_KILLER
 ********
 
diff --git a/doc/props/P_KILLS b/doc/props/P_KILLS
index 7ec3dac..71df036 100644
--- a/doc/props/P_KILLS
+++ b/doc/props/P_KILLS
@@ -1,4 +1,3 @@
-
 P_KILLS
 *******
 
diff --git a/doc/props/P_KILL_MSG b/doc/props/P_KILL_MSG
index 9437975..af25fbb 100644
--- a/doc/props/P_KILL_MSG
+++ b/doc/props/P_KILL_MSG
@@ -1,4 +1,3 @@
-
 P_KILL_MSG
 **********
 
diff --git a/doc/props/P_KILL_NAME b/doc/props/P_KILL_NAME
index 0504066..93420e6 100644
--- a/doc/props/P_KILL_NAME
+++ b/doc/props/P_KILL_NAME
@@ -1,4 +1,3 @@
-
 P_KILL_NAME
 ***********
 
diff --git a/doc/props/P_KNOWN_POTIONROOMS b/doc/props/P_KNOWN_POTIONROOMS
index 29e17d3..789fed8 100644
--- a/doc/props/P_KNOWN_POTIONROOMS
+++ b/doc/props/P_KNOWN_POTIONROOMS
@@ -1,4 +1,3 @@
-
 P_KNOWN_POTIONROOMS
 *******************
 
diff --git a/doc/props/P_LASTDIR b/doc/props/P_LASTDIR
index 2695f06..7d0b561 100644
--- a/doc/props/P_LASTDIR
+++ b/doc/props/P_LASTDIR
@@ -1,4 +1,3 @@
-
 P_LASTDIR
 *********
 
diff --git a/doc/props/P_LAST_COMBAT_TIME b/doc/props/P_LAST_COMBAT_TIME
index 941ec1e..8383c86 100644
--- a/doc/props/P_LAST_COMBAT_TIME
+++ b/doc/props/P_LAST_COMBAT_TIME
@@ -1,4 +1,3 @@
-
 P_LAST_COMBAT_TIME
 ******************
 
diff --git a/doc/props/P_LAST_COMMAND_ENV b/doc/props/P_LAST_COMMAND_ENV
index 40bd6a0..b6336e8 100644
--- a/doc/props/P_LAST_COMMAND_ENV
+++ b/doc/props/P_LAST_COMMAND_ENV
@@ -1,4 +1,3 @@
-
 P_LAST_COMMAND_ENV
 ******************
 
diff --git a/doc/props/P_LAST_CONTENT_CHANGE b/doc/props/P_LAST_CONTENT_CHANGE
index f128774..0c7f709 100644
--- a/doc/props/P_LAST_CONTENT_CHANGE
+++ b/doc/props/P_LAST_CONTENT_CHANGE
@@ -1,4 +1,3 @@
-
 P_LAST_CONTENT_CHANGE
 *********************
 
diff --git a/doc/props/P_LAST_DAMAGE b/doc/props/P_LAST_DAMAGE
index 66388b7..cfa206e 100644
--- a/doc/props/P_LAST_DAMAGE
+++ b/doc/props/P_LAST_DAMAGE
@@ -1,4 +1,3 @@
-
 P_LAST_DAMAGE
 *************
 
diff --git a/doc/props/P_LAST_DAMTIME b/doc/props/P_LAST_DAMTIME
index 7e6d0ea..2d2db5d 100644
--- a/doc/props/P_LAST_DAMTIME
+++ b/doc/props/P_LAST_DAMTIME
@@ -1,4 +1,3 @@
-
 P_LAST_DAMTIME
 **************
 
diff --git a/doc/props/P_LAST_DAMTYPES b/doc/props/P_LAST_DAMTYPES
index ecdf571..b9b0d66 100644
--- a/doc/props/P_LAST_DAMTYPES
+++ b/doc/props/P_LAST_DAMTYPES
@@ -1,4 +1,3 @@
-
 P_LAST_DAMTYPES
 ***************
 
diff --git a/doc/props/P_LAST_DEATH_PROPS b/doc/props/P_LAST_DEATH_PROPS
index 7249dad..ce09dc4 100644
--- a/doc/props/P_LAST_DEATH_PROPS
+++ b/doc/props/P_LAST_DEATH_PROPS
@@ -1,4 +1,3 @@
-
 P_LAST_DEATH_PROPS
 ******************
 
diff --git a/doc/props/P_LAST_DEATH_TIME b/doc/props/P_LAST_DEATH_TIME
index 669e7a1..db88d79 100644
--- a/doc/props/P_LAST_DEATH_TIME
+++ b/doc/props/P_LAST_DEATH_TIME
@@ -1,4 +1,3 @@
-
 P_LAST_DEATH_TIME
 *****************
 
diff --git a/doc/props/P_LAST_LOGIN b/doc/props/P_LAST_LOGIN
index 4ad7360..abe1fcf 100644
--- a/doc/props/P_LAST_LOGIN
+++ b/doc/props/P_LAST_LOGIN
@@ -1,4 +1,3 @@
-
 P_LAST_LOGIN
 ************
 
diff --git a/doc/props/P_LAST_LOGOUT b/doc/props/P_LAST_LOGOUT
index e94e89e..4fbe8f4 100644
--- a/doc/props/P_LAST_LOGOUT
+++ b/doc/props/P_LAST_LOGOUT
@@ -1,4 +1,3 @@
-
 P_LAST_LOGOUT
 *************
 
diff --git a/doc/props/P_LAST_MOVE b/doc/props/P_LAST_MOVE
index f6c974a..bee92ba 100644
--- a/doc/props/P_LAST_MOVE
+++ b/doc/props/P_LAST_MOVE
@@ -1,4 +1,3 @@
-
 P_LAST_MOVE
 ***********
 
diff --git a/doc/props/P_LAST_USE b/doc/props/P_LAST_USE
index 57519c9..4381746 100644
--- a/doc/props/P_LAST_USE
+++ b/doc/props/P_LAST_USE
@@ -1,4 +1,3 @@
-
 P_LAST_USE
 **********
 
diff --git a/doc/props/P_LAST_WEAR_ACTION b/doc/props/P_LAST_WEAR_ACTION
index 5531955..0e89137 100644
--- a/doc/props/P_LAST_WEAR_ACTION
+++ b/doc/props/P_LAST_WEAR_ACTION
@@ -1,4 +1,3 @@
-
 P_LAST_WEAR_ACTION
 ******************
 
diff --git a/doc/props/P_LAST_XP b/doc/props/P_LAST_XP
index c31a8b4..2a749ca 100644
--- a/doc/props/P_LAST_XP
+++ b/doc/props/P_LAST_XP
@@ -1,4 +1,3 @@
-
 P_LAST_XP
 *********
 
diff --git a/doc/props/P_LEAVECMDS b/doc/props/P_LEAVECMDS
index 5b0e03c..d60aa76 100644
--- a/doc/props/P_LEAVECMDS
+++ b/doc/props/P_LEAVECMDS
@@ -1,4 +1,3 @@
-
 P_LEAVECMDS
 ***********
 
diff --git a/doc/props/P_LEAVEFAIL b/doc/props/P_LEAVEFAIL
index d18fccd..ab45c5a 100644
--- a/doc/props/P_LEAVEFAIL
+++ b/doc/props/P_LEAVEFAIL
@@ -1,4 +1,3 @@
-
 P_LEAVEFAIL
 ***********
 
diff --git a/doc/props/P_LEAVEMSG b/doc/props/P_LEAVEMSG
index 09359e6..efe1fd4 100644
--- a/doc/props/P_LEAVEMSG
+++ b/doc/props/P_LEAVEMSG
@@ -1,4 +1,3 @@
-
 P_LEAVEMSG
 **********
 
diff --git a/doc/props/P_LEP b/doc/props/P_LEP
index dbcea68..4bdcb92 100644
--- a/doc/props/P_LEP
+++ b/doc/props/P_LEP
@@ -1,4 +1,3 @@
-
 P_LEP
 *****
 
diff --git a/doc/props/P_LEVEL b/doc/props/P_LEVEL
index 709576d..6b85b18 100644
--- a/doc/props/P_LEVEL
+++ b/doc/props/P_LEVEL
@@ -1,4 +1,3 @@
-
 P_LEVEL
 *******
 
diff --git a/doc/props/P_LIFETIME b/doc/props/P_LIFETIME
index 4c76f14..d377ad2 100644
--- a/doc/props/P_LIFETIME
+++ b/doc/props/P_LIFETIME
@@ -1,4 +1,3 @@
-
 P_LIFETIME
 **********
 
diff --git a/doc/props/P_LIGHT b/doc/props/P_LIGHT
index a9c317f..145527f 100644
--- a/doc/props/P_LIGHT
+++ b/doc/props/P_LIGHT
@@ -1,4 +1,3 @@
-
 P_LIGHT
 *******
 
diff --git a/doc/props/P_LIGHTDESC b/doc/props/P_LIGHTDESC
index e8c52d1..ed0d07b 100644
--- a/doc/props/P_LIGHTDESC
+++ b/doc/props/P_LIGHTDESC
@@ -1,4 +1,3 @@
-
 P_LIGHTDESC
 ***********
 
diff --git a/doc/props/P_LIGHTED b/doc/props/P_LIGHTED
index 31d7709..af124bb 100644
--- a/doc/props/P_LIGHTED
+++ b/doc/props/P_LIGHTED
@@ -1,4 +1,3 @@
-
 P_LIGHTED
 *********
 
diff --git a/doc/props/P_LIGHT_ABSORPTION b/doc/props/P_LIGHT_ABSORPTION
index 4443a98..d400120 100644
--- a/doc/props/P_LIGHT_ABSORPTION
+++ b/doc/props/P_LIGHT_ABSORPTION
@@ -1,4 +1,3 @@
-
 P_LIGHT_ABSORPTION
 ******************
 
diff --git a/doc/props/P_LIGHT_MODIFIER b/doc/props/P_LIGHT_MODIFIER
index c7741ee..1b48180 100644
--- a/doc/props/P_LIGHT_MODIFIER
+++ b/doc/props/P_LIGHT_MODIFIER
@@ -1,4 +1,3 @@
-
 P_LIGHT_MODIFIER
 ****************
 
diff --git a/doc/props/P_LIGHT_TRANSPARENCY b/doc/props/P_LIGHT_TRANSPARENCY
index 42d0d13..5dca2c4 100644
--- a/doc/props/P_LIGHT_TRANSPARENCY
+++ b/doc/props/P_LIGHT_TRANSPARENCY
@@ -1,4 +1,3 @@
-
 P_LIGHT_TRANSPARENCY
 ********************
 
diff --git a/doc/props/P_LIGHT_TYPE b/doc/props/P_LIGHT_TYPE
index 120cbc4..aa3723b 100644
--- a/doc/props/P_LIGHT_TYPE
+++ b/doc/props/P_LIGHT_TYPE
@@ -1,4 +1,3 @@
-
 P_LIGHT_TYPE
 ************
 
diff --git a/doc/props/P_LIQUID b/doc/props/P_LIQUID
index 55672bb..73cda9b 100644
--- a/doc/props/P_LIQUID
+++ b/doc/props/P_LIQUID
@@ -1,4 +1,3 @@
-
 P_LIQUID
 ********
 
diff --git a/doc/props/P_LOCALCMDS b/doc/props/P_LOCALCMDS
index 02a3c2a..f0e24b5 100644
--- a/doc/props/P_LOCALCMDS
+++ b/doc/props/P_LOCALCMDS
@@ -1,4 +1,3 @@
-
 P_LOCALCMDS
 ***********
 
diff --git a/doc/props/P_LOCATION b/doc/props/P_LOCATION
index cf2ed6c..814af57 100644
--- a/doc/props/P_LOCATION
+++ b/doc/props/P_LOCATION
@@ -1,4 +1,3 @@
-
 P_LOCATION
 **********
 
diff --git a/doc/props/P_LOG_INFO b/doc/props/P_LOG_INFO
index 0ed186d..9a17107 100644
--- a/doc/props/P_LOG_INFO
+++ b/doc/props/P_LOG_INFO
@@ -1,4 +1,3 @@
-
 P_LOG_INFO
 **********
 
diff --git a/doc/props/P_LONG b/doc/props/P_LONG
index bad7968..c687595 100644
--- a/doc/props/P_LONG
+++ b/doc/props/P_LONG
@@ -1,4 +1,3 @@
-
 P_LONG
 ******
 
diff --git a/doc/props/P_LONG_EMPTY b/doc/props/P_LONG_EMPTY
index cac74e0..006f9af 100644
--- a/doc/props/P_LONG_EMPTY
+++ b/doc/props/P_LONG_EMPTY
@@ -1,4 +1,3 @@
-
 P_LONG_EMPTY
 ************
 
diff --git a/doc/props/P_LONG_FULL b/doc/props/P_LONG_FULL
index 7de6081..cb8a670 100644
--- a/doc/props/P_LONG_FULL
+++ b/doc/props/P_LONG_FULL
@@ -1,4 +1,3 @@
-
 P_LONG_FULL
 ***********
 
diff --git a/doc/props/P_MAGIC b/doc/props/P_MAGIC
index 8994533..db11dc7 100644
--- a/doc/props/P_MAGIC
+++ b/doc/props/P_MAGIC
@@ -1,4 +1,3 @@
-
 P_MAGIC
 *******
 
diff --git a/doc/props/P_MAGIC_RESISTANCE_OFFSET b/doc/props/P_MAGIC_RESISTANCE_OFFSET
index 111b94e..ae21e4f 100644
--- a/doc/props/P_MAGIC_RESISTANCE_OFFSET
+++ b/doc/props/P_MAGIC_RESISTANCE_OFFSET
@@ -1,4 +1,3 @@
-
 P_MAGIC_RESISTANCE_OFFSET
 *************************
 
diff --git a/doc/props/P_MAILADDR b/doc/props/P_MAILADDR
index 32556a7..bf26f3d 100644
--- a/doc/props/P_MAILADDR
+++ b/doc/props/P_MAILADDR
@@ -1,4 +1,3 @@
-
 P_MAILADDR
 **********
 
diff --git a/doc/props/P_MAP_RESTRICTIONS b/doc/props/P_MAP_RESTRICTIONS
index ee9e620..5eb5565 100644
--- a/doc/props/P_MAP_RESTRICTIONS
+++ b/doc/props/P_MAP_RESTRICTIONS
@@ -1,4 +1,3 @@
-
 P_MAP_RESTRICTIONS
 ******************
 
diff --git a/doc/props/P_MARRIED b/doc/props/P_MARRIED
index 7cafa6f..521d02f 100644
--- a/doc/props/P_MARRIED
+++ b/doc/props/P_MARRIED
@@ -1,4 +1,3 @@
-
 P_MARRIED
 *********
 
diff --git a/doc/props/P_MATERIAL b/doc/props/P_MATERIAL
index 4ea4032..9a5358a 100644
--- a/doc/props/P_MATERIAL
+++ b/doc/props/P_MATERIAL
@@ -1,4 +1,3 @@
-
 P_MATERIAL
 **********
 
diff --git a/doc/props/P_MATERIAL_KNOWLEDGE b/doc/props/P_MATERIAL_KNOWLEDGE
index 0694fef..366da3b 100644
--- a/doc/props/P_MATERIAL_KNOWLEDGE
+++ b/doc/props/P_MATERIAL_KNOWLEDGE
@@ -1,4 +1,3 @@
-
 P_MATERIAL_KNOWLEDGE
 ********************
 
diff --git a/doc/props/P_MAX_ALCOHOL b/doc/props/P_MAX_ALCOHOL
index 2c0f17c..2338927 100644
--- a/doc/props/P_MAX_ALCOHOL
+++ b/doc/props/P_MAX_ALCOHOL
@@ -1,4 +1,3 @@
-
 P_MAX_ALCOHOL
 *************
 
diff --git a/doc/props/P_MAX_DRINK b/doc/props/P_MAX_DRINK
index 0c5b05d..ff51add 100644
--- a/doc/props/P_MAX_DRINK
+++ b/doc/props/P_MAX_DRINK
@@ -1,4 +1,3 @@
-
 P_MAX_DRINK
 ***********
 
diff --git a/doc/props/P_MAX_FOOD b/doc/props/P_MAX_FOOD
index 2643b42..dd64639 100644
--- a/doc/props/P_MAX_FOOD
+++ b/doc/props/P_MAX_FOOD
@@ -1,4 +1,3 @@
-
 P_MAX_FOOD
 **********
 
diff --git a/doc/props/P_MAX_HANDS b/doc/props/P_MAX_HANDS
index 4c65afa..c3956b5 100644
--- a/doc/props/P_MAX_HANDS
+++ b/doc/props/P_MAX_HANDS
@@ -1,4 +1,3 @@
-
 P_MAX_HANDS
 ***********
 
diff --git a/doc/props/P_MAX_HP b/doc/props/P_MAX_HP
index 6534adb..00f7522 100644
--- a/doc/props/P_MAX_HP
+++ b/doc/props/P_MAX_HP
@@ -1,4 +1,3 @@
-
 P_MAX_HP
 ********
 
diff --git a/doc/props/P_MAX_OBJECTS b/doc/props/P_MAX_OBJECTS
index 68c008f..4c7d0a8 100644
--- a/doc/props/P_MAX_OBJECTS
+++ b/doc/props/P_MAX_OBJECTS
@@ -1,4 +1,3 @@
-
 P_MAX_OBJECTS
 *************
 
diff --git a/doc/props/P_MAX_PASSENGERS b/doc/props/P_MAX_PASSENGERS
index 32e5f27..77735c8 100644
--- a/doc/props/P_MAX_PASSENGERS
+++ b/doc/props/P_MAX_PASSENGERS
@@ -1,4 +1,3 @@
-
 P_MAX_PASSENGERS
 ****************
 
diff --git a/doc/props/P_MAX_POISON b/doc/props/P_MAX_POISON
index 17302c3..827625a 100644
--- a/doc/props/P_MAX_POISON
+++ b/doc/props/P_MAX_POISON
@@ -1,4 +1,3 @@
-
 P_MAX_POISON
 ************
 
diff --git a/doc/props/P_MAX_SP b/doc/props/P_MAX_SP
index 84f788c..01fd223 100644
--- a/doc/props/P_MAX_SP
+++ b/doc/props/P_MAX_SP
@@ -1,4 +1,3 @@
-
 P_MAX_SP
 ********
 
diff --git a/doc/props/P_MAX_WEIGHT b/doc/props/P_MAX_WEIGHT
index abd0942..b2fba43 100644
--- a/doc/props/P_MAX_WEIGHT
+++ b/doc/props/P_MAX_WEIGHT
@@ -1,4 +1,3 @@
-
 P_MAX_WEIGHT
 ************
 
diff --git a/doc/props/P_MESSAGE_BEEP b/doc/props/P_MESSAGE_BEEP
index 6ecf718..583650c 100644
--- a/doc/props/P_MESSAGE_BEEP
+++ b/doc/props/P_MESSAGE_BEEP
@@ -1,4 +1,3 @@
-
 P_MESSAGE_BEEP
 **************
 
@@ -18,21 +17,19 @@
 BESCHREIBUNG
 ============
 
-   Wertebereich: int=0..3600 (Sekunden)
-   Wenn gesetzt wird in der Kommunikation des Spielers in den angegebenen
-   Zeitraeumen ein Signalton ausgegeben. Wird in player/comm.c in comm_beep()
-   verarbeitet.
-   Ausgabe erfolgt nur, wenn P_VISUALBELL nicht gesetzt ist.
-   Wird im Spielerobjekt gespeichert!
+   Wertebereich: int=0..3600 (Sekunden) Wenn gesetzt wird in der
+   Kommunikation des Spielers in den angegebenen Zeitraeumen ein
+   Signalton ausgegeben. Wird in player/comm.c in comm_beep()
+   verarbeitet. Ausgabe erfolgt in Abhaengigkeit der Konfiguration in
+   P_ALERT.
+
+   Wird im Spielerobjekt gespeichert und mittels des Kommandos
+   klingelton modifiziert.
 
 
 SIEHE AUCH
 ==========
 
-   klingelton, ton, P_VISUALBELL, P_MESSAGE_LAST_BEEP
+   klingelton, ton, P_ALERT
 
-
-LETZTE AENDERUNG
-================
-
-   16. Mai 2007  Ennox
+Letzte Aenderung: 22.01.2022, Bugfix
diff --git a/doc/props/P_MESSAGE_PREPEND b/doc/props/P_MESSAGE_PREPEND
index be54d65..7a3f67d 100644
--- a/doc/props/P_MESSAGE_PREPEND
+++ b/doc/props/P_MESSAGE_PREPEND
@@ -1,4 +1,3 @@
-
 P_MESSAGE_PREPEND
 *****************
 
diff --git a/doc/props/P_MIN_STOCK b/doc/props/P_MIN_STOCK
index 3be8d4e..7dc4b42 100644
--- a/doc/props/P_MIN_STOCK
+++ b/doc/props/P_MIN_STOCK
@@ -1,4 +1,3 @@
-
 P_MIN_STOCK
 ***********
 
diff --git a/doc/props/P_MMSGIN b/doc/props/P_MMSGIN
index ceb4317..2edbb76 100644
--- a/doc/props/P_MMSGIN
+++ b/doc/props/P_MMSGIN
@@ -1,4 +1,3 @@
-
 P_MMSGIN
 ********
 
diff --git a/doc/props/P_MMSGOUT b/doc/props/P_MMSGOUT
index d603e18..4095416 100644
--- a/doc/props/P_MMSGOUT
+++ b/doc/props/P_MMSGOUT
@@ -1,4 +1,3 @@
-
 P_MMSGOUT
 *********
 
diff --git a/doc/props/P_MSGIN b/doc/props/P_MSGIN
index 6e80220..999b5d4 100644
--- a/doc/props/P_MSGIN
+++ b/doc/props/P_MSGIN
@@ -1,4 +1,3 @@
-
 P_MSGIN
 *******
 
diff --git a/doc/props/P_MSGOUT b/doc/props/P_MSGOUT
index 8ed30e0..2a5a77f 100644
--- a/doc/props/P_MSGOUT
+++ b/doc/props/P_MSGOUT
@@ -1,4 +1,3 @@
-
 P_MSGOUT
 ********
 
diff --git a/doc/props/P_MSG_PROB b/doc/props/P_MSG_PROB
index 5c679a7..f9e709c 100644
--- a/doc/props/P_MSG_PROB
+++ b/doc/props/P_MSG_PROB
@@ -1,4 +1,3 @@
-
 P_MSG_PROB
 **********
 
diff --git a/doc/props/P_MUD_NEWBIE b/doc/props/P_MUD_NEWBIE
index 71801eb..4f18701 100644
--- a/doc/props/P_MUD_NEWBIE
+++ b/doc/props/P_MUD_NEWBIE
@@ -1,4 +1,3 @@
-
 P_MUD_NEWBIE
 ************
 
diff --git a/doc/props/P_MURDER_MSG b/doc/props/P_MURDER_MSG
index c565cfa..bff6753 100644
--- a/doc/props/P_MURDER_MSG
+++ b/doc/props/P_MURDER_MSG
@@ -1,4 +1,3 @@
-
 P_MURDER_MSG
 ************
 
diff --git a/doc/props/P_M_ATTR_MOD b/doc/props/P_M_ATTR_MOD
index d279484..da7cad4 100644
--- a/doc/props/P_M_ATTR_MOD
+++ b/doc/props/P_M_ATTR_MOD
@@ -1,4 +1,3 @@
-
 P_M_ATTR_MOD
 ************
 
diff --git a/doc/props/P_M_HEALTH_MOD b/doc/props/P_M_HEALTH_MOD
index cdc3fd4..458ce83 100644
--- a/doc/props/P_M_HEALTH_MOD
+++ b/doc/props/P_M_HEALTH_MOD
@@ -1,4 +1,3 @@
-
 P_M_HEALTH_MOD
 **************
 
diff --git a/doc/props/P_NAME b/doc/props/P_NAME
index 1fdc261..92154f4 100644
--- a/doc/props/P_NAME
+++ b/doc/props/P_NAME
@@ -1,4 +1,3 @@
-
 P_NAME
 ******
 
diff --git a/doc/props/P_NAME_ADJ b/doc/props/P_NAME_ADJ
index c4cc4a4..127045b 100644
--- a/doc/props/P_NAME_ADJ
+++ b/doc/props/P_NAME_ADJ
@@ -1,4 +1,3 @@
-
 P_NAME_ADJ
 **********
 
diff --git a/doc/props/P_NEEDED_QP b/doc/props/P_NEEDED_QP
index 2df4c78..b3a5b01 100644
--- a/doc/props/P_NEEDED_QP
+++ b/doc/props/P_NEEDED_QP
@@ -1,4 +1,3 @@
-
 P_NEEDED_QP
 ***********
 
diff --git a/doc/props/P_NETDEAD_ENV b/doc/props/P_NETDEAD_ENV
index 2e46f5d..2e590a8 100644
--- a/doc/props/P_NETDEAD_ENV
+++ b/doc/props/P_NETDEAD_ENV
@@ -1,4 +1,3 @@
-
 P_NETDEAD_ENV
 *************
 
diff --git a/doc/props/P_NETDEAD_INFO b/doc/props/P_NETDEAD_INFO
index fe96ac6..10ed5e8 100644
--- a/doc/props/P_NETDEAD_INFO
+++ b/doc/props/P_NETDEAD_INFO
@@ -1,4 +1,3 @@
-
 P_NETDEAD_INFO
 **************
 
diff --git a/doc/props/P_NEVERDROP b/doc/props/P_NEVERDROP
index 468bcc6..d46cb3a 100644
--- a/doc/props/P_NEVERDROP
+++ b/doc/props/P_NEVERDROP
@@ -1,4 +1,3 @@
-
 P_NEVERDROP
 ***********
 
diff --git a/doc/props/P_NEVER_CLEAN b/doc/props/P_NEVER_CLEAN
index fc568ff..f55aac4 100644
--- a/doc/props/P_NEVER_CLEAN
+++ b/doc/props/P_NEVER_CLEAN
@@ -1,4 +1,3 @@
-
 P_NEVER_CLEAN
 *************
 
diff --git a/doc/props/P_NEWBIE_GUIDE b/doc/props/P_NEWBIE_GUIDE
index c4491cd..a5e69b9 100644
--- a/doc/props/P_NEWBIE_GUIDE
+++ b/doc/props/P_NEWBIE_GUIDE
@@ -1,4 +1,3 @@
-
 P_NEWBIE_GUIDE
 **************
 
diff --git a/doc/props/P_NEWSKILLS b/doc/props/P_NEWSKILLS
index 7cb61c7..dc30cee 100644
--- a/doc/props/P_NEWSKILLS
+++ b/doc/props/P_NEWSKILLS
@@ -1,4 +1,3 @@
-
 P_NEWSKILLS
 ***********
 
diff --git a/doc/props/P_NEXT_DEATH_SEQUENCE b/doc/props/P_NEXT_DEATH_SEQUENCE
index 6992a32..5e195aa 100644
--- a/doc/props/P_NEXT_DEATH_SEQUENCE
+++ b/doc/props/P_NEXT_DEATH_SEQUENCE
@@ -1,4 +1,3 @@
-
 P_NEXT_DEATH_SEQUENCE
 *********************
 
diff --git a/doc/props/P_NEXT_DISABLE_ATTACK b/doc/props/P_NEXT_DISABLE_ATTACK
index 6a9eea3..410e56c 100644
--- a/doc/props/P_NEXT_DISABLE_ATTACK
+++ b/doc/props/P_NEXT_DISABLE_ATTACK
@@ -1,4 +1,3 @@
-
 P_NEXT_DISABLE_ATTACK
 *********************
 
diff --git a/doc/props/P_NOBUY b/doc/props/P_NOBUY
index 27f6c70..d53a050 100644
--- a/doc/props/P_NOBUY
+++ b/doc/props/P_NOBUY
@@ -1,4 +1,3 @@
-
 P_NOBUY
 *******
 
diff --git a/doc/props/P_NOCORPSE b/doc/props/P_NOCORPSE
index 15d5de2..a7caa9e 100644
--- a/doc/props/P_NOCORPSE
+++ b/doc/props/P_NOCORPSE
@@ -1,4 +1,3 @@
-
 P_NOCORPSE
 **********
 
diff --git a/doc/props/P_NODRINK_MSG b/doc/props/P_NODRINK_MSG
index a3407c7..f3f0f81 100644
--- a/doc/props/P_NODRINK_MSG
+++ b/doc/props/P_NODRINK_MSG
@@ -1,4 +1,3 @@
-
 P_NODRINK_MSG
 *************
 
diff --git a/doc/props/P_NODROP b/doc/props/P_NODROP
index 786cdea..6eef0aa 100644
--- a/doc/props/P_NODROP
+++ b/doc/props/P_NODROP
@@ -1,4 +1,3 @@
-
 P_NODROP
 ********
 
diff --git a/doc/props/P_NOFOOD_MSG b/doc/props/P_NOFOOD_MSG
index d195c5e..ebacaa1 100644
--- a/doc/props/P_NOFOOD_MSG
+++ b/doc/props/P_NOFOOD_MSG
@@ -1,4 +1,3 @@
-
 P_NOFOOD_MSG
 ************
 
diff --git a/doc/props/P_NOGET b/doc/props/P_NOGET
index a6e88a6..f73b69a 100644
--- a/doc/props/P_NOGET
+++ b/doc/props/P_NOGET
@@ -1,4 +1,3 @@
-
 P_NOGET
 *******
 
diff --git a/doc/props/P_NOINSERT_MSG b/doc/props/P_NOINSERT_MSG
index de7d8e8..83410e8 100644
--- a/doc/props/P_NOINSERT_MSG
+++ b/doc/props/P_NOINSERT_MSG
@@ -1,4 +1,3 @@
-
 P_NOINSERT_MSG
 **************
 
diff --git a/doc/props/P_NOLEAVE_MSG b/doc/props/P_NOLEAVE_MSG
index d2cd164..2f80b17 100644
--- a/doc/props/P_NOLEAVE_MSG
+++ b/doc/props/P_NOLEAVE_MSG
@@ -1,4 +1,3 @@
-
 P_NOLEAVE_MSG
 *************
 
diff --git a/doc/props/P_NOMAGIC b/doc/props/P_NOMAGIC
index 94f8a1d..8d36759 100644
--- a/doc/props/P_NOMAGIC
+++ b/doc/props/P_NOMAGIC
@@ -1,4 +1,3 @@
-
 P_NOMAGIC
 *********
 
diff --git a/doc/props/P_NOSELL b/doc/props/P_NOSELL
index 6141be3..c63756d 100644
--- a/doc/props/P_NOSELL
+++ b/doc/props/P_NOSELL
@@ -1,4 +1,3 @@
-
 P_NOSELL
 ********
 
diff --git a/doc/props/P_NO_ASCII_ART b/doc/props/P_NO_ASCII_ART
index 420aca0..b3d109c 100644
--- a/doc/props/P_NO_ASCII_ART
+++ b/doc/props/P_NO_ASCII_ART
@@ -1,4 +1,3 @@
-
 P_NO_ASCII_ART
 **************
 
diff --git a/doc/props/P_NO_ATTACK b/doc/props/P_NO_ATTACK
index 9ca4c95..6a4b647 100644
--- a/doc/props/P_NO_ATTACK
+++ b/doc/props/P_NO_ATTACK
@@ -1,4 +1,3 @@
-
 P_NO_ATTACK
 ***********
 
diff --git a/doc/props/P_NO_BAD b/doc/props/P_NO_BAD
index ae2adf2..49d85c7 100644
--- a/doc/props/P_NO_BAD
+++ b/doc/props/P_NO_BAD
@@ -1,4 +1,3 @@
-
 P_NO_BAD
 ********
 
diff --git a/doc/props/P_NO_GLOBAL_ATTACK b/doc/props/P_NO_GLOBAL_ATTACK
index 962186c..162a1fb 100644
--- a/doc/props/P_NO_GLOBAL_ATTACK
+++ b/doc/props/P_NO_GLOBAL_ATTACK
@@ -1,4 +1,3 @@
-
 P_NO_GLOBAL_ATTACK
 ******************
 
diff --git a/doc/props/P_NO_PARA_TRANS b/doc/props/P_NO_PARA_TRANS
index 4eed785..08fc7e1 100644
--- a/doc/props/P_NO_PARA_TRANS
+++ b/doc/props/P_NO_PARA_TRANS
@@ -1,4 +1,3 @@
-
 P_NO_PARA_TRANS
 ***************
 
diff --git a/doc/props/P_NO_PLAYERS b/doc/props/P_NO_PLAYERS
index 3cc88c1..ee7f1ef 100644
--- a/doc/props/P_NO_PLAYERS
+++ b/doc/props/P_NO_PLAYERS
@@ -1,4 +1,3 @@
-
 P_NO_PLAYERS
 ************
 
diff --git a/doc/props/P_NO_REGENERATION b/doc/props/P_NO_REGENERATION
index cc672e3..7b9813f 100644
--- a/doc/props/P_NO_REGENERATION
+++ b/doc/props/P_NO_REGENERATION
@@ -1,4 +1,3 @@
-
 P_NO_REGENERATION
 *****************
 
diff --git a/doc/props/P_NO_SCORE b/doc/props/P_NO_SCORE
index 49cfee5..7ad7dbb 100644
--- a/doc/props/P_NO_SCORE
+++ b/doc/props/P_NO_SCORE
@@ -1,4 +1,3 @@
-
 P_NO_SCORE
 **********
 
diff --git a/doc/props/P_NO_STD_DRINK b/doc/props/P_NO_STD_DRINK
index f8c2f33..5796811 100644
--- a/doc/props/P_NO_STD_DRINK
+++ b/doc/props/P_NO_STD_DRINK
@@ -1,4 +1,3 @@
-
 P_NO_STD_DRINK
 **************
 
diff --git a/doc/props/P_NO_TPORT b/doc/props/P_NO_TPORT
index 1c6de77..5cdb279 100644
--- a/doc/props/P_NO_TPORT
+++ b/doc/props/P_NO_TPORT
@@ -1,4 +1,3 @@
-
 P_NO_TPORT
 **********
 
diff --git a/doc/props/P_NO_TRAVELING b/doc/props/P_NO_TRAVELING
index cd1073a..0acfa9b 100644
--- a/doc/props/P_NO_TRAVELING
+++ b/doc/props/P_NO_TRAVELING
@@ -1,4 +1,3 @@
-
 P_NO_TRAVELING
 **************
 
diff --git a/doc/props/P_NO_XP b/doc/props/P_NO_XP
index b16c4ab..751a110 100644
--- a/doc/props/P_NO_XP
+++ b/doc/props/P_NO_XP
@@ -1,4 +1,3 @@
-
 P_NO_XP
 *******
 
diff --git a/doc/props/P_NPC b/doc/props/P_NPC
index 60651d8..ce41af6 100644
--- a/doc/props/P_NPC
+++ b/doc/props/P_NPC
@@ -1,4 +1,3 @@
-
 P_NPC
 *****
 
diff --git a/doc/props/P_NPC_FASTHEAL b/doc/props/P_NPC_FASTHEAL
index 3c358ef..0000142 100644
--- a/doc/props/P_NPC_FASTHEAL
+++ b/doc/props/P_NPC_FASTHEAL
@@ -1,4 +1,3 @@
-
 P_NPC_FASTHEAL
 **************
 
diff --git a/doc/props/P_NR_HANDS b/doc/props/P_NR_HANDS
index 51625da..4580372 100644
--- a/doc/props/P_NR_HANDS
+++ b/doc/props/P_NR_HANDS
@@ -1,4 +1,3 @@
-
 P_NR_HANDS
 **********
 
diff --git a/doc/props/P_ORAKEL b/doc/props/P_ORAKEL
index 773a80d..8ac30c0 100644
--- a/doc/props/P_ORAKEL
+++ b/doc/props/P_ORAKEL
@@ -1,4 +1,3 @@
-
 P_ORAKEL
 ********
 
diff --git a/doc/props/P_ORIG_FILE_NAME b/doc/props/P_ORIG_FILE_NAME
index 53243c2..33bfcfc 100644
--- a/doc/props/P_ORIG_FILE_NAME
+++ b/doc/props/P_ORIG_FILE_NAME
@@ -1,4 +1,3 @@
-
 P_ORIG_FILE_NAME
 ****************
 
diff --git a/doc/props/P_ORIG_NAME b/doc/props/P_ORIG_NAME
index e44a06d..d9024eb 100644
--- a/doc/props/P_ORIG_NAME
+++ b/doc/props/P_ORIG_NAME
@@ -1,4 +1,3 @@
-
 P_ORIG_NAME
 ***********
 
diff --git a/doc/props/P_PARA b/doc/props/P_PARA
index 0a7f416..c706c99 100644
--- a/doc/props/P_PARA
+++ b/doc/props/P_PARA
@@ -1,4 +1,3 @@
-
 P_PARA
 ******
 
diff --git a/doc/props/P_PARRY b/doc/props/P_PARRY
index 40ddecd..e753bd6 100644
--- a/doc/props/P_PARRY
+++ b/doc/props/P_PARRY
@@ -1,4 +1,3 @@
-
 P_PARRY
 *******
 
diff --git a/doc/props/P_PARRY_WEAPON b/doc/props/P_PARRY_WEAPON
index 9ee60aa..55a8c5a 100644
--- a/doc/props/P_PARRY_WEAPON
+++ b/doc/props/P_PARRY_WEAPON
@@ -1,4 +1,3 @@
-
 P_PARRY_WEAPON
 **************
 
diff --git a/doc/props/P_PEACE_HISTORY b/doc/props/P_PEACE_HISTORY
index 40cb88f..2625e03 100644
--- a/doc/props/P_PEACE_HISTORY
+++ b/doc/props/P_PEACE_HISTORY
@@ -1,4 +1,3 @@
-
 P_PEACE_HISTORY
 ***************
 
diff --git a/doc/props/P_PERM_STRING b/doc/props/P_PERM_STRING
index 373c516..50ae361 100644
--- a/doc/props/P_PERM_STRING
+++ b/doc/props/P_PERM_STRING
@@ -1,4 +1,3 @@
-
 P_PERM_STRING
 *************
 
diff --git a/doc/props/P_PICK_MSG b/doc/props/P_PICK_MSG
index 76b2760..6adc0ee 100644
--- a/doc/props/P_PICK_MSG
+++ b/doc/props/P_PICK_MSG
@@ -1,4 +1,3 @@
-
 P_PICK_MSG
 **********
 
diff --git a/doc/props/P_PILE_NAME b/doc/props/P_PILE_NAME
index edb0123..2e22a82 100644
--- a/doc/props/P_PILE_NAME
+++ b/doc/props/P_PILE_NAME
@@ -1,4 +1,3 @@
-
 P_PILE_NAME
 ***********
 
diff --git a/doc/props/P_PLAYER_LIGHT b/doc/props/P_PLAYER_LIGHT
index ce0c22d..488fa27 100644
--- a/doc/props/P_PLAYER_LIGHT
+++ b/doc/props/P_PLAYER_LIGHT
@@ -1,4 +1,3 @@
-
 P_PLAYER_LIGHT
 **************
 
diff --git a/doc/props/P_PLURAL b/doc/props/P_PLURAL
index eed829f..9ca678a 100644
--- a/doc/props/P_PLURAL
+++ b/doc/props/P_PLURAL
@@ -1,4 +1,3 @@
-
 P_PLURAL
 ********
 
diff --git a/doc/props/P_POISON b/doc/props/P_POISON
index fb791e3..9054346 100644
--- a/doc/props/P_POISON
+++ b/doc/props/P_POISON
@@ -1,4 +1,3 @@
-
 P_POISON
 ********
 
diff --git a/doc/props/P_POISON_DELAY b/doc/props/P_POISON_DELAY
index eab7c2a..2ddb1fc 100644
--- a/doc/props/P_POISON_DELAY
+++ b/doc/props/P_POISON_DELAY
@@ -1,4 +1,3 @@
-
 P_POISON_DELAY
 **************
 
diff --git a/doc/props/P_PORTIONS b/doc/props/P_PORTIONS
index a6bdf16..ed2e96c 100644
--- a/doc/props/P_PORTIONS
+++ b/doc/props/P_PORTIONS
@@ -1,4 +1,3 @@
-
 P_PORTIONS
 **********
 
diff --git a/doc/props/P_POST b/doc/props/P_POST
index 975a884..1361dda 100644
--- a/doc/props/P_POST
+++ b/doc/props/P_POST
@@ -1,4 +1,3 @@
-
 P_POST
 ******
 
diff --git a/doc/props/P_POTIONROOMS b/doc/props/P_POTIONROOMS
index 0df158f..d1eaa0f 100644
--- a/doc/props/P_POTIONROOMS
+++ b/doc/props/P_POTIONROOMS
@@ -1,4 +1,3 @@
-
 P_POTIONROOMS
 *************
 
diff --git a/doc/props/P_PRAY_ROOM b/doc/props/P_PRAY_ROOM
index ad0a469..e583589 100644
--- a/doc/props/P_PRAY_ROOM
+++ b/doc/props/P_PRAY_ROOM
@@ -1,4 +1,3 @@
-
 P_PRAY_ROOM
 ***********
 
diff --git a/doc/props/P_PREFERED_ENEMY b/doc/props/P_PREFERED_ENEMY
index 6b629aa..2e83b12 100644
--- a/doc/props/P_PREFERED_ENEMY
+++ b/doc/props/P_PREFERED_ENEMY
@@ -1,4 +1,3 @@
-
 P_PREFERED_ENEMY
 ****************
 
diff --git a/doc/props/P_PREPARED_SPELL b/doc/props/P_PREPARED_SPELL
index 6340909..157a7eb 100644
--- a/doc/props/P_PREPARED_SPELL
+++ b/doc/props/P_PREPARED_SPELL
@@ -1,4 +1,3 @@
-
 P_PREPARED_SPELL
 ****************
 
diff --git a/doc/props/P_PRESAY b/doc/props/P_PRESAY
index 1580b5e..7a41b69 100644
--- a/doc/props/P_PRESAY
+++ b/doc/props/P_PRESAY
@@ -1,4 +1,3 @@
-
 P_PRESAY
 ********
 
diff --git a/doc/props/P_PREVENT_PILE b/doc/props/P_PREVENT_PILE
index 1ad6807..db1f622 100644
--- a/doc/props/P_PREVENT_PILE
+++ b/doc/props/P_PREVENT_PILE
@@ -1,4 +1,3 @@
-
 P_PREVENT_PILE
 **************
 
diff --git a/doc/props/P_PRE_INFO b/doc/props/P_PRE_INFO
index 12bec6a..acfd463 100644
--- a/doc/props/P_PRE_INFO
+++ b/doc/props/P_PRE_INFO
@@ -1,4 +1,3 @@
-
 P_PRE_INFO
 **********
 
diff --git a/doc/props/P_PROMPT b/doc/props/P_PROMPT
index 267437e..addf760 100644
--- a/doc/props/P_PROMPT
+++ b/doc/props/P_PROMPT
@@ -1,4 +1,3 @@
-
 P_PROMPT
 ********
 
diff --git a/doc/props/P_PUB_NOT_ON_MENU b/doc/props/P_PUB_NOT_ON_MENU
index 8618009..3616340 100644
--- a/doc/props/P_PUB_NOT_ON_MENU
+++ b/doc/props/P_PUB_NOT_ON_MENU
@@ -1,4 +1,3 @@
-
 P_PUB_NOT_ON_MENU
 *****************
 
diff --git a/doc/props/P_PUB_NO_KEEPER b/doc/props/P_PUB_NO_KEEPER
index 55c4230..2c19cf6 100644
--- a/doc/props/P_PUB_NO_KEEPER
+++ b/doc/props/P_PUB_NO_KEEPER
@@ -1,4 +1,3 @@
-
 P_PUB_NO_KEEPER
 ***************
 
diff --git a/doc/props/P_PUB_NO_MONEY b/doc/props/P_PUB_NO_MONEY
index 9510b07..5a02eba 100644
--- a/doc/props/P_PUB_NO_MONEY
+++ b/doc/props/P_PUB_NO_MONEY
@@ -1,4 +1,3 @@
-
 P_PUB_NO_MONEY
 **************
 
diff --git a/doc/props/P_PUB_UNAVAILABLE b/doc/props/P_PUB_UNAVAILABLE
index 7eaede7..5d59a19 100644
--- a/doc/props/P_PUB_UNAVAILABLE
+++ b/doc/props/P_PUB_UNAVAILABLE
@@ -1,4 +1,3 @@
-
 P_PUB_UNAVAILABLE
 *****************
 
diff --git a/doc/props/P_PURSUERS b/doc/props/P_PURSUERS
index 1b0a72a..6e3f58e 100644
--- a/doc/props/P_PURSUERS
+++ b/doc/props/P_PURSUERS
@@ -1,4 +1,3 @@
-
 _PURSUERS
 *********
 
diff --git a/doc/props/P_PUT_MSG b/doc/props/P_PUT_MSG
index 65624ce..8415fda 100644
--- a/doc/props/P_PUT_MSG
+++ b/doc/props/P_PUT_MSG
@@ -1,4 +1,3 @@
-
 P_PUT_MSG
 *********
 
diff --git a/doc/props/P_QP b/doc/props/P_QP
index 9840586..2a96a32 100644
--- a/doc/props/P_QP
+++ b/doc/props/P_QP
@@ -1,4 +1,3 @@
-
 P_QP
 ****
 
diff --git a/doc/props/P_QUALITY b/doc/props/P_QUALITY
index a103eaf..7550264 100644
--- a/doc/props/P_QUALITY
+++ b/doc/props/P_QUALITY
@@ -1,4 +1,3 @@
-
 P_QUALITY
 *********
 
diff --git a/doc/props/P_QUESTS b/doc/props/P_QUESTS
index 84fe435..6e47534 100644
--- a/doc/props/P_QUESTS
+++ b/doc/props/P_QUESTS
@@ -1,4 +1,3 @@
-
 P_QUESTS
 ********
 
diff --git a/doc/props/P_QUEST_ITEM b/doc/props/P_QUEST_ITEM
index 135954b..af36670 100644
--- a/doc/props/P_QUEST_ITEM
+++ b/doc/props/P_QUEST_ITEM
@@ -1,4 +1,3 @@
-
 P_QUEST_ITEM
 ************
 
diff --git a/doc/props/P_RACE b/doc/props/P_RACE
index 1c61e7a..dbb1ed7 100644
--- a/doc/props/P_RACE
+++ b/doc/props/P_RACE
@@ -1,4 +1,3 @@
-
 P_RACE
 ******
 
diff --git a/doc/props/P_RACESTRING b/doc/props/P_RACESTRING
index 2a13577..4214f9a 100644
--- a/doc/props/P_RACESTRING
+++ b/doc/props/P_RACESTRING
@@ -1,4 +1,3 @@
-
 P_RACESTRING
 ************
 
diff --git a/doc/props/P_RACE_DESCRIPTION b/doc/props/P_RACE_DESCRIPTION
index ca1f576..5a8a28e 100644
--- a/doc/props/P_RACE_DESCRIPTION
+++ b/doc/props/P_RACE_DESCRIPTION
@@ -1,4 +1,3 @@
-
 P_RACE_DESCRIPTION
 ******************
 
diff --git a/doc/props/P_RANGE b/doc/props/P_RANGE
index 2fabc63..b97d2dc 100644
--- a/doc/props/P_RANGE
+++ b/doc/props/P_RANGE
@@ -1,4 +1,3 @@
-
 P_RANGE
 *******
 
diff --git a/doc/props/P_READ_DETAILS b/doc/props/P_READ_DETAILS
index 06a7598..e89da82 100644
--- a/doc/props/P_READ_DETAILS
+++ b/doc/props/P_READ_DETAILS
@@ -1,4 +1,3 @@
-
 P_READ_DETAILS
 **************
 
diff --git a/doc/props/P_READ_NEWS b/doc/props/P_READ_NEWS
index 8c69c89..d5cca1b 100644
--- a/doc/props/P_READ_NEWS
+++ b/doc/props/P_READ_NEWS
@@ -1,4 +1,3 @@
-
 P_READ_NEWS
 ***********
 
diff --git a/doc/props/P_REAL_RACE b/doc/props/P_REAL_RACE
index 713ceb3..b4f1f38 100644
--- a/doc/props/P_REAL_RACE
+++ b/doc/props/P_REAL_RACE
@@ -1,4 +1,3 @@
-
 P_REAL_RACE
 ***********
 
diff --git a/doc/props/P_REFERENCE_OBJECT b/doc/props/P_REFERENCE_OBJECT
index 9187a49..7ebf41a 100644
--- a/doc/props/P_REFERENCE_OBJECT
+++ b/doc/props/P_REFERENCE_OBJECT
@@ -1,4 +1,3 @@
-
 P_REFERENCE_OBJECT
 ******************
 
diff --git a/doc/props/P_REJECT b/doc/props/P_REJECT
index 072bdab..e9f924d 100644
--- a/doc/props/P_REJECT
+++ b/doc/props/P_REJECT
@@ -1,4 +1,3 @@
-
 P_REJECT
 ********
 
diff --git a/doc/props/P_REMOVE_FUNC b/doc/props/P_REMOVE_FUNC
index f5c2232..63cdf94 100644
--- a/doc/props/P_REMOVE_FUNC
+++ b/doc/props/P_REMOVE_FUNC
@@ -1,4 +1,3 @@
-
 P_REMOVE_FUNC
 *************
 
diff --git a/doc/props/P_REMOVE_MSG b/doc/props/P_REMOVE_MSG
index 78a1357..e642953 100644
--- a/doc/props/P_REMOVE_MSG
+++ b/doc/props/P_REMOVE_MSG
@@ -1,4 +1,3 @@
-
 P_REMOVE_MSG
 ************
 
diff --git a/doc/props/P_RESET_LIFETIME b/doc/props/P_RESET_LIFETIME
index bbd4bbe..9b4401c 100644
--- a/doc/props/P_RESET_LIFETIME
+++ b/doc/props/P_RESET_LIFETIME
@@ -1,4 +1,3 @@
-
 P_RESET_LIFETIME
 ****************
 
diff --git a/doc/props/P_RESISTANCE b/doc/props/P_RESISTANCE
index 48e476f..c0b6f94 100644
--- a/doc/props/P_RESISTANCE
+++ b/doc/props/P_RESISTANCE
@@ -1,4 +1,3 @@
-
 P_RESISTANCE
 ************
 
diff --git a/doc/props/P_RESISTANCE_MODIFIER b/doc/props/P_RESISTANCE_MODIFIER
index 2a3322e..ca9d4e9 100644
--- a/doc/props/P_RESISTANCE_MODIFIER
+++ b/doc/props/P_RESISTANCE_MODIFIER
@@ -1,4 +1,3 @@
-
 P_RESISTANCE_MODIFIER
 *********************
 
diff --git a/doc/props/P_RESISTANCE_STRENGTHS b/doc/props/P_RESISTANCE_STRENGTHS
index 4a93f08..686b706 100644
--- a/doc/props/P_RESISTANCE_STRENGTHS
+++ b/doc/props/P_RESISTANCE_STRENGTHS
@@ -1,4 +1,3 @@
-
 P_RESISTANCE_STRENGTHS
 **********************
 
diff --git a/doc/props/P_RESTRICTIONS b/doc/props/P_RESTRICTIONS
index 012ff0a..195a74e 100644
--- a/doc/props/P_RESTRICTIONS
+++ b/doc/props/P_RESTRICTIONS
@@ -1,4 +1,3 @@
-
 P_RESTRICTIONS
 **************
 
diff --git a/doc/props/P_ROOM_MSG b/doc/props/P_ROOM_MSG
index 44ea622..bba3303 100644
--- a/doc/props/P_ROOM_MSG
+++ b/doc/props/P_ROOM_MSG
@@ -1,4 +1,3 @@
-
 P_ROOM_MSG
 **********
 
diff --git a/doc/props/P_ROOM_TYPE b/doc/props/P_ROOM_TYPE
index 22e894e..71c734d 100644
--- a/doc/props/P_ROOM_TYPE
+++ b/doc/props/P_ROOM_TYPE
@@ -1,4 +1,3 @@
-
 P_ROOM_TYPE
 ***********
 
diff --git a/doc/props/P_SB_SPELLS b/doc/props/P_SB_SPELLS
index 1ffac9d..4c9fc9b 100644
--- a/doc/props/P_SB_SPELLS
+++ b/doc/props/P_SB_SPELLS
@@ -1,4 +1,3 @@
-
 P_SB_SPELLS
 ***********
 
diff --git a/doc/props/P_SCREENSIZE b/doc/props/P_SCREENSIZE
index e54ee8b..ac0204d 100644
--- a/doc/props/P_SCREENSIZE
+++ b/doc/props/P_SCREENSIZE
@@ -1,4 +1,3 @@
-
 P_SCREENSIZE
 ************
 
diff --git a/doc/props/P_SECOND b/doc/props/P_SECOND
index dc0a6f7..0a3d623 100644
--- a/doc/props/P_SECOND
+++ b/doc/props/P_SECOND
@@ -1,4 +1,3 @@
-
 P_SECOND
 ********
 
diff --git a/doc/props/P_SECOND_MARK b/doc/props/P_SECOND_MARK
index dd2c68a..170d3c8 100644
--- a/doc/props/P_SECOND_MARK
+++ b/doc/props/P_SECOND_MARK
@@ -1,4 +1,3 @@
-
 P_SECOND_MARK
 *************
 
diff --git a/doc/props/P_SEERDOORS b/doc/props/P_SEERDOORS
index 8ec02e7..5a07363 100644
--- a/doc/props/P_SEERDOORS
+++ b/doc/props/P_SEERDOORS
@@ -1,4 +1,3 @@
-
 P_SEERDOORS
 ***********
 
diff --git a/doc/props/P_SEERDOOR_ALLOWED b/doc/props/P_SEERDOOR_ALLOWED
index 12f062b..16a52c0 100644
--- a/doc/props/P_SEERDOOR_ALLOWED
+++ b/doc/props/P_SEERDOOR_ALLOWED
@@ -1,4 +1,3 @@
-
 P_SEERDOOR_ALLOWED
 ******************
 
diff --git a/doc/props/P_SENSITIVE b/doc/props/P_SENSITIVE
index c1e8051..10b74be 100644
--- a/doc/props/P_SENSITIVE
+++ b/doc/props/P_SENSITIVE
@@ -1,4 +1,3 @@
-
 P_SENSITIVE
 ***********
 
diff --git a/doc/props/P_SENSITIVE_ATTACK b/doc/props/P_SENSITIVE_ATTACK
index 168c15b..bbd2d83 100644
--- a/doc/props/P_SENSITIVE_ATTACK
+++ b/doc/props/P_SENSITIVE_ATTACK
@@ -1,4 +1,3 @@
-
 P_SENSITIVE_ATTACK
 ******************
 
diff --git a/doc/props/P_SENSITIVE_INVENTORY b/doc/props/P_SENSITIVE_INVENTORY
index 418f9a1..244226f 100644
--- a/doc/props/P_SENSITIVE_INVENTORY
+++ b/doc/props/P_SENSITIVE_INVENTORY
@@ -1,4 +1,3 @@
-
 P_SENSITIVE_INVENTORY
 *********************
 
diff --git a/doc/props/P_SENSITIVE_INVENTORY_TRIGGER b/doc/props/P_SENSITIVE_INVENTORY_TRIGGER
index 627a582..580dd8e 100644
--- a/doc/props/P_SENSITIVE_INVENTORY_TRIGGER
+++ b/doc/props/P_SENSITIVE_INVENTORY_TRIGGER
@@ -1,4 +1,3 @@
-
 P_SENSITIVE_INVENTORY_TRIGGER
 *****************************
 
diff --git a/doc/props/P_SHOOTING_AREA b/doc/props/P_SHOOTING_AREA
index 9339847..7e42ea7 100644
--- a/doc/props/P_SHOOTING_AREA
+++ b/doc/props/P_SHOOTING_AREA
@@ -1,4 +1,3 @@
-
 P_SHOOTING_AREA
 ***************
 
diff --git a/doc/props/P_SHOOTING_WC b/doc/props/P_SHOOTING_WC
index 6345d76..029e23d 100644
--- a/doc/props/P_SHOOTING_WC
+++ b/doc/props/P_SHOOTING_WC
@@ -1,4 +1,3 @@
-
 P_SHOOTING_WC
 *************
 
diff --git a/doc/props/P_SHORT b/doc/props/P_SHORT
index 7b65025..8de51df 100644
--- a/doc/props/P_SHORT
+++ b/doc/props/P_SHORT
@@ -1,4 +1,3 @@
-
 P_SHORT
 *******
 
@@ -46,9 +45,9 @@
      Querymethode) eingetragen, welche einen String zurueckgibt. Dies
      ist *deprecated* und sollte nicht mehr formuliert werden.
 
-   * Die Funktion, die die Kurzbeschreibung ausgibt (short()),
-     filtert P_SHORT durch process_string(). Dieses Feature ist
-     *deprecated* und von der Nutzung wird in neuem Code abgeraten.
+   * Die Funktion, die die Kurzbeschreibung ausgibt (short()), filtert
+     P_SHORT durch process_string(). Dieses Feature ist *deprecated*
+     und von der Nutzung wird in neuem Code abgeraten.
 
    * Soll eine dyn. Kurzbeschreibung geschaffen werden, bitte eine
      F_QUERY_METHOD einsetzen oder short() passend ueberschreiben.
diff --git a/doc/props/P_SHORT_CWD b/doc/props/P_SHORT_CWD
index 46f0236..07615ca 100644
--- a/doc/props/P_SHORT_CWD
+++ b/doc/props/P_SHORT_CWD
@@ -1,4 +1,3 @@
-
 P_SHORT_CWD
 ***********
 
diff --git a/doc/props/P_SHOWEMAIL b/doc/props/P_SHOWEMAIL
index b6cf580..3ca23ad 100644
--- a/doc/props/P_SHOWEMAIL
+++ b/doc/props/P_SHOWEMAIL
@@ -1,4 +1,3 @@
-
 P_SHOWEMAIL
 ***********
 
diff --git a/doc/props/P_SHOW_ALIAS_PROCESSING b/doc/props/P_SHOW_ALIAS_PROCESSING
index 94552dd..14cd1d2 100644
--- a/doc/props/P_SHOW_ALIAS_PROCESSING
+++ b/doc/props/P_SHOW_ALIAS_PROCESSING
@@ -1,4 +1,3 @@
-
 P_SHOW_ALIAS_PROCESSING
 ***********************
 
diff --git a/doc/props/P_SHOW_EXITS b/doc/props/P_SHOW_EXITS
index 0e00886..2dbb2cb 100644
--- a/doc/props/P_SHOW_EXITS
+++ b/doc/props/P_SHOW_EXITS
@@ -1,4 +1,3 @@
-
 P_SHOW_EXITS
 ************
 
diff --git a/doc/props/P_SHOW_INV b/doc/props/P_SHOW_INV
index e982154..f71eb4d 100644
--- a/doc/props/P_SHOW_INV
+++ b/doc/props/P_SHOW_INV
@@ -1,4 +1,3 @@
-
 P_SHOW_INV
 **********
 
diff --git a/doc/props/P_SHOW_MSG b/doc/props/P_SHOW_MSG
index c19c49f..d7af6be 100644
--- a/doc/props/P_SHOW_MSG
+++ b/doc/props/P_SHOW_MSG
@@ -1,4 +1,3 @@
-
 P_SHOW_MSG
 **********
 
diff --git a/doc/props/P_SIBLINGS b/doc/props/P_SIBLINGS
index 6e18f0c..c8cf1c1 100644
--- a/doc/props/P_SIBLINGS
+++ b/doc/props/P_SIBLINGS
@@ -1,4 +1,3 @@
-
 P_SIBLINGS
 **********
 
diff --git a/doc/props/P_SIZE b/doc/props/P_SIZE
index aa311f3..8282df7 100644
--- a/doc/props/P_SIZE
+++ b/doc/props/P_SIZE
@@ -1,4 +1,3 @@
-
 P_SIZE
 ******
 
diff --git a/doc/props/P_SKILLS b/doc/props/P_SKILLS
index 492cbbe..45b09c0 100644
--- a/doc/props/P_SKILLS
+++ b/doc/props/P_SKILLS
@@ -1,4 +1,3 @@
-
 P_SKILLS
 ********
 
diff --git a/doc/props/P_SKILL_ATTRIBUTES b/doc/props/P_SKILL_ATTRIBUTES
index 066bd78..79bba14 100644
--- a/doc/props/P_SKILL_ATTRIBUTES
+++ b/doc/props/P_SKILL_ATTRIBUTES
@@ -1,4 +1,3 @@
-
 P_SKILL_ATTRIBUTES
 ******************
 
diff --git a/doc/props/P_SKILL_ATTRIBUTE_OFFSETS b/doc/props/P_SKILL_ATTRIBUTE_OFFSETS
index a976072..a0091d0 100644
--- a/doc/props/P_SKILL_ATTRIBUTE_OFFSETS
+++ b/doc/props/P_SKILL_ATTRIBUTE_OFFSETS
@@ -1,4 +1,3 @@
-
 P_SKILL_ATTRIBUTE_OFFSETS
 *************************
 
diff --git a/doc/props/P_SMELLS b/doc/props/P_SMELLS
index 0098bd8..87c8f47 100644
--- a/doc/props/P_SMELLS
+++ b/doc/props/P_SMELLS
@@ -1,4 +1,3 @@
-
 P_SMELLS
 ********
 
diff --git a/doc/props/P_SNOOPFLAGS b/doc/props/P_SNOOPFLAGS
index 340dde2..c4f5297 100644
--- a/doc/props/P_SNOOPFLAGS
+++ b/doc/props/P_SNOOPFLAGS
@@ -1,4 +1,3 @@
-
 P_SNOOPFLAGS
 ************
 
diff --git a/doc/props/P_SOUNDS b/doc/props/P_SOUNDS
index 520265b..f74f27d 100644
--- a/doc/props/P_SOUNDS
+++ b/doc/props/P_SOUNDS
@@ -1,4 +1,3 @@
-
 P_SOUNDS
 ********
 
diff --git a/doc/props/P_SP b/doc/props/P_SP
index fa30cb1..25bcbad 100644
--- a/doc/props/P_SP
+++ b/doc/props/P_SP
@@ -1,4 +1,3 @@
-
 P_SP
 ****
 
diff --git a/doc/props/P_SPECIAL_DETAILS b/doc/props/P_SPECIAL_DETAILS
index 9b3f63c..b48448b 100644
--- a/doc/props/P_SPECIAL_DETAILS
+++ b/doc/props/P_SPECIAL_DETAILS
@@ -1,4 +1,3 @@
-
 P_SPECIAL_DETAILS
 *****************
 
diff --git a/doc/props/P_SPECIAL_EXITS b/doc/props/P_SPECIAL_EXITS
index 3f2a7a5..6e43155 100644
--- a/doc/props/P_SPECIAL_EXITS
+++ b/doc/props/P_SPECIAL_EXITS
@@ -1,4 +1,3 @@
-
 P_SPECIAL_EXITS
 ***************
 
diff --git a/doc/props/P_SPELLRATE b/doc/props/P_SPELLRATE
index cef776f..682312f 100644
--- a/doc/props/P_SPELLRATE
+++ b/doc/props/P_SPELLRATE
@@ -1,4 +1,3 @@
-
 P_SPELLRATE
 ***********
 
diff --git a/doc/props/P_SPELLS b/doc/props/P_SPELLS
index a2e8414..0ba4c67 100644
--- a/doc/props/P_SPELLS
+++ b/doc/props/P_SPELLS
@@ -1,4 +1,3 @@
-
 P_SPELLS
 ********
 
diff --git a/doc/props/P_SP_DELAY b/doc/props/P_SP_DELAY
index aa74360..a5a0523 100644
--- a/doc/props/P_SP_DELAY
+++ b/doc/props/P_SP_DELAY
@@ -1,4 +1,3 @@
-
 P_SP_DELAY
 **********
 
diff --git a/doc/props/P_START_HOME b/doc/props/P_START_HOME
index 33f47f4..5a4b018 100644
--- a/doc/props/P_START_HOME
+++ b/doc/props/P_START_HOME
@@ -1,4 +1,3 @@
-
 P_START_HOME
 ************
 
diff --git a/doc/props/P_STD_OBJECT b/doc/props/P_STD_OBJECT
index 7c66296..4fa159f 100644
--- a/doc/props/P_STD_OBJECT
+++ b/doc/props/P_STD_OBJECT
@@ -1,4 +1,3 @@
-
 P_STD_OBJECT
 ************
 
diff --git a/doc/props/P_STORE_CONSUME b/doc/props/P_STORE_CONSUME
index 8a9afd9..2dfe72d 100644
--- a/doc/props/P_STORE_CONSUME
+++ b/doc/props/P_STORE_CONSUME
@@ -1,4 +1,3 @@
-
 P_STORE_CONSUME
 ***************
 
diff --git a/doc/props/P_STRETCH_TIME b/doc/props/P_STRETCH_TIME
index 1b38b7e..1449d93 100644
--- a/doc/props/P_STRETCH_TIME
+++ b/doc/props/P_STRETCH_TIME
@@ -1,4 +1,3 @@
-
 P_STRETCH_TIME
 **************
 
diff --git a/doc/props/P_SUBGUILD_TITLE b/doc/props/P_SUBGUILD_TITLE
index 83515d7..9daaa08 100644
--- a/doc/props/P_SUBGUILD_TITLE
+++ b/doc/props/P_SUBGUILD_TITLE
@@ -1,4 +1,3 @@
-
 P_SUBGUILD_TITLE
 ****************
 
diff --git a/doc/props/P_SYNTAX_HELP b/doc/props/P_SYNTAX_HELP
index 50575cc..04756ce 100644
--- a/doc/props/P_SYNTAX_HELP
+++ b/doc/props/P_SYNTAX_HELP
@@ -1,4 +1,3 @@
-
 P_SYNTAX_HELP
 *************
 
diff --git a/doc/props/P_TARGET_AREA b/doc/props/P_TARGET_AREA
index 614320f..535bbf7 100644
--- a/doc/props/P_TARGET_AREA
+++ b/doc/props/P_TARGET_AREA
@@ -1,4 +1,3 @@
-
 P_TARGET_AREA
 *************
 
diff --git a/doc/props/P_TEAM b/doc/props/P_TEAM
index 4f853e8..0321939 100644
--- a/doc/props/P_TEAM
+++ b/doc/props/P_TEAM
@@ -1,4 +1,3 @@
-
 P_TEAM
 ******
 
diff --git a/doc/props/P_TEAM_ASSOC_MEMBERS b/doc/props/P_TEAM_ASSOC_MEMBERS
index b57a276..87ce4b9 100644
--- a/doc/props/P_TEAM_ASSOC_MEMBERS
+++ b/doc/props/P_TEAM_ASSOC_MEMBERS
@@ -1,4 +1,3 @@
-
 P_TEAM_ASSOC_MEMBERS
 ********************
 
diff --git a/doc/props/P_TEAM_ATTACK_CMD b/doc/props/P_TEAM_ATTACK_CMD
index b7993e7..9cd5878 100644
--- a/doc/props/P_TEAM_ATTACK_CMD
+++ b/doc/props/P_TEAM_ATTACK_CMD
@@ -1,4 +1,3 @@
-
 P_TEAM_ATTACK_CMD
 *****************
 
diff --git a/doc/props/P_TEAM_AUTOFOLLOW b/doc/props/P_TEAM_AUTOFOLLOW
index 0e8c45f..fd85b63 100644
--- a/doc/props/P_TEAM_AUTOFOLLOW
+++ b/doc/props/P_TEAM_AUTOFOLLOW
@@ -1,4 +1,3 @@
-
 P_TEAM_AUTOFOLLOW
 *****************
 
diff --git a/doc/props/P_TEAM_COLORS b/doc/props/P_TEAM_COLORS
index a855035..efcc551 100644
--- a/doc/props/P_TEAM_COLORS
+++ b/doc/props/P_TEAM_COLORS
@@ -1,4 +1,3 @@
-
 P_TEAM_COLORS
 *************
 
diff --git a/doc/props/P_TEAM_LEADER b/doc/props/P_TEAM_LEADER
index b4927f3..807ec70 100644
--- a/doc/props/P_TEAM_LEADER
+++ b/doc/props/P_TEAM_LEADER
@@ -1,4 +1,3 @@
-
 P_TEAM_LEADER
 *************
 
diff --git a/doc/props/P_TEAM_NEWMEMBER b/doc/props/P_TEAM_NEWMEMBER
index da89b70..c99227b 100644
--- a/doc/props/P_TEAM_NEWMEMBER
+++ b/doc/props/P_TEAM_NEWMEMBER
@@ -1,4 +1,3 @@
-
 P_TEAM_NEWMEMBER
 ****************
 
diff --git a/doc/props/P_TEAM_WANTED_ROW b/doc/props/P_TEAM_WANTED_ROW
index ba94af4..7182f77 100644
--- a/doc/props/P_TEAM_WANTED_ROW
+++ b/doc/props/P_TEAM_WANTED_ROW
@@ -1,4 +1,3 @@
-
 P_TEAM_WANTED_ROW
 *****************
 
diff --git a/doc/props/P_TEAM_WIMPY_ROW b/doc/props/P_TEAM_WIMPY_ROW
index 90bfacb..845c7ae 100644
--- a/doc/props/P_TEAM_WIMPY_ROW
+++ b/doc/props/P_TEAM_WIMPY_ROW
@@ -1,4 +1,3 @@
-
 P_TEAM_WIMPY_ROW
 ****************
 
diff --git a/doc/props/P_TELNET_CHARSET b/doc/props/P_TELNET_CHARSET
index 880b454..cbcde8b 100644
--- a/doc/props/P_TELNET_CHARSET
+++ b/doc/props/P_TELNET_CHARSET
@@ -1,4 +1,3 @@
-
 P_TELNET_CHARSET
 ****************
 
diff --git a/doc/props/P_TELNET_KEEPALIVE_DELAY b/doc/props/P_TELNET_KEEPALIVE_DELAY
index 6c91627..795af1b 100644
--- a/doc/props/P_TELNET_KEEPALIVE_DELAY
+++ b/doc/props/P_TELNET_KEEPALIVE_DELAY
@@ -1,4 +1,3 @@
-
 P_TELNET_KEEPALIVE_DELAY
 ************************
 
diff --git a/doc/props/P_TELNET_RTTIME b/doc/props/P_TELNET_RTTIME
index b781bea..29a01fd 100644
--- a/doc/props/P_TELNET_RTTIME
+++ b/doc/props/P_TELNET_RTTIME
@@ -1,4 +1,3 @@
-
 P_TELNET_RTTIME
 ***************
 
diff --git a/doc/props/P_TESTPLAYER b/doc/props/P_TESTPLAYER
index bf0c765..3a8ff0c 100644
--- a/doc/props/P_TESTPLAYER
+++ b/doc/props/P_TESTPLAYER
@@ -1,4 +1,3 @@
-
 P_TESTPLAYER
 ************
 
diff --git a/doc/props/P_TIMED_ATTR_MOD b/doc/props/P_TIMED_ATTR_MOD
index fa7db3f..0b4ed10 100644
--- a/doc/props/P_TIMED_ATTR_MOD
+++ b/doc/props/P_TIMED_ATTR_MOD
@@ -1,4 +1,3 @@
-
 P_TIMED_ATTR_MOD
 ****************
 
diff --git a/doc/props/P_TIMEZONE b/doc/props/P_TIMEZONE
index 7e4ce7d..1ee1634 100644
--- a/doc/props/P_TIMEZONE
+++ b/doc/props/P_TIMEZONE
@@ -1,4 +1,3 @@
-
 P_TIMEZONE
 **********
 
diff --git a/doc/props/P_TITLE b/doc/props/P_TITLE
index 555e26a..28823e6 100644
--- a/doc/props/P_TITLE
+++ b/doc/props/P_TITLE
@@ -1,4 +1,3 @@
-
 P_TITLE
 *******
 
diff --git a/doc/props/P_TOO_HEAVY_MSG b/doc/props/P_TOO_HEAVY_MSG
index c2a40ea..741ba85 100644
--- a/doc/props/P_TOO_HEAVY_MSG
+++ b/doc/props/P_TOO_HEAVY_MSG
@@ -1,4 +1,3 @@
-
 P_TOO_HEAVY_MSG
 ***************
 
diff --git a/doc/props/P_TOO_MANY_MSG b/doc/props/P_TOO_MANY_MSG
index fd1ffe9..b7f5134 100644
--- a/doc/props/P_TOO_MANY_MSG
+++ b/doc/props/P_TOO_MANY_MSG
@@ -1,4 +1,3 @@
-
 P_TOO_MANY_MSG
 **************
 
diff --git a/doc/props/P_TOTAL_AC b/doc/props/P_TOTAL_AC
index baa9cf9..aad07c1 100644
--- a/doc/props/P_TOTAL_AC
+++ b/doc/props/P_TOTAL_AC
@@ -1,4 +1,3 @@
-
 P_TOTAL_AC
 **********
 
diff --git a/doc/props/P_TOTAL_LIGHT b/doc/props/P_TOTAL_LIGHT
index f4f0083..fba4d69 100644
--- a/doc/props/P_TOTAL_LIGHT
+++ b/doc/props/P_TOTAL_LIGHT
@@ -1,4 +1,3 @@
-
 P_TOTAL_LIGHT
 *************
 
diff --git a/doc/props/P_TOTAL_OBJECTS b/doc/props/P_TOTAL_OBJECTS
index 4e2d009..d4da68b 100644
--- a/doc/props/P_TOTAL_OBJECTS
+++ b/doc/props/P_TOTAL_OBJECTS
@@ -1,4 +1,3 @@
-
 P_TOTAL_OBJECTS
 ***************
 
diff --git a/doc/props/P_TOTAL_WC b/doc/props/P_TOTAL_WC
index 19349f0..3e7e358 100644
--- a/doc/props/P_TOTAL_WC
+++ b/doc/props/P_TOTAL_WC
@@ -1,4 +1,3 @@
-
 P_TOTAL_WC
 **********
 
diff --git a/doc/props/P_TOTAL_WEIGHT b/doc/props/P_TOTAL_WEIGHT
index bdb72f6..a9bfd02 100644
--- a/doc/props/P_TOTAL_WEIGHT
+++ b/doc/props/P_TOTAL_WEIGHT
@@ -1,4 +1,3 @@
-
 P_TOTAL_WEIGHT
 **************
 
diff --git a/doc/props/P_TOUCH_DETAILS b/doc/props/P_TOUCH_DETAILS
index f4345db..cc472fc 100644
--- a/doc/props/P_TOUCH_DETAILS
+++ b/doc/props/P_TOUCH_DETAILS
@@ -1,4 +1,3 @@
-
 P_TOUCH_DETAILS
 ***************
 
diff --git a/doc/props/P_TPORT_COST_IN b/doc/props/P_TPORT_COST_IN
index f2e51a9..431e24f 100644
--- a/doc/props/P_TPORT_COST_IN
+++ b/doc/props/P_TPORT_COST_IN
@@ -1,4 +1,3 @@
-
 P_TPORT_COST_IN
 ***************
 
diff --git a/doc/props/P_TPORT_COST_OUT b/doc/props/P_TPORT_COST_OUT
index c97c752..812c3ca 100644
--- a/doc/props/P_TPORT_COST_OUT
+++ b/doc/props/P_TPORT_COST_OUT
@@ -1,4 +1,3 @@
-
 P_TPORT_COST_OUT
 ****************
 
diff --git a/doc/props/P_TRANK_FINDEN b/doc/props/P_TRANK_FINDEN
index a3e270d..b209b8a 100644
--- a/doc/props/P_TRANK_FINDEN
+++ b/doc/props/P_TRANK_FINDEN
@@ -1,4 +1,3 @@
-
 P_TRANK_FINDEN
 **************
 
diff --git a/doc/props/P_TRANSPARENT b/doc/props/P_TRANSPARENT
index 56c0558..576f18f 100644
--- a/doc/props/P_TRANSPARENT
+++ b/doc/props/P_TRANSPARENT
@@ -1,4 +1,3 @@
-
 P_TRANSPARENT
 *************
 
diff --git a/doc/props/P_TRAVEL_CMDS b/doc/props/P_TRAVEL_CMDS
index 3f9b0d5..9e0ff93 100644
--- a/doc/props/P_TRAVEL_CMDS
+++ b/doc/props/P_TRAVEL_CMDS
@@ -1,4 +1,3 @@
-
 P_TRAVEL_CMDS
 *************
 
diff --git a/doc/props/P_TRAVEL_INFO b/doc/props/P_TRAVEL_INFO
index 720e9ec..1317333 100644
--- a/doc/props/P_TRAVEL_INFO
+++ b/doc/props/P_TRAVEL_INFO
@@ -1,4 +1,3 @@
-
 P_TRAVEL_INFO
 *************
 
diff --git a/doc/props/P_TRAY b/doc/props/P_TRAY
index dc38379..87f1f52 100644
--- a/doc/props/P_TRAY
+++ b/doc/props/P_TRAY
@@ -1,4 +1,3 @@
-
 P_TRAY
 ******
 
diff --git a/doc/props/P_TTY b/doc/props/P_TTY
index 87841fd..24221b3 100644
--- a/doc/props/P_TTY
+++ b/doc/props/P_TTY
@@ -1,4 +1,3 @@
-
 P_TTY
 *****
 
diff --git a/doc/props/P_TTY_COLS b/doc/props/P_TTY_COLS
index 651c379..d07597a 100644
--- a/doc/props/P_TTY_COLS
+++ b/doc/props/P_TTY_COLS
@@ -1,4 +1,3 @@
-
 P_TTY_COLS
 **********
 
diff --git a/doc/props/P_TTY_ROWS b/doc/props/P_TTY_ROWS
index 7289109..6889eee 100644
--- a/doc/props/P_TTY_ROWS
+++ b/doc/props/P_TTY_ROWS
@@ -1,4 +1,3 @@
-
 P_TTY_ROWS
 **********
 
diff --git a/doc/props/P_TTY_SHOW b/doc/props/P_TTY_SHOW
index a43076f..686ef16 100644
--- a/doc/props/P_TTY_SHOW
+++ b/doc/props/P_TTY_SHOW
@@ -1,4 +1,3 @@
-
 P_TTY_SHOW
 **********
 
diff --git a/doc/props/P_TTY_TYPE b/doc/props/P_TTY_TYPE
index 5842cb2..ffe9417 100644
--- a/doc/props/P_TTY_TYPE
+++ b/doc/props/P_TTY_TYPE
@@ -1,4 +1,3 @@
-
 P_TTY_TYPE
 **********
 
diff --git a/doc/props/P_UNIT_DECAY_FLAGS b/doc/props/P_UNIT_DECAY_FLAGS
index 25a5ed1..8feca2d 100644
--- a/doc/props/P_UNIT_DECAY_FLAGS
+++ b/doc/props/P_UNIT_DECAY_FLAGS
@@ -1,4 +1,3 @@
-
 P_UNIT_DECAY_FLAGS
 ******************
 
diff --git a/doc/props/P_UNIT_DECAY_INTERVAL b/doc/props/P_UNIT_DECAY_INTERVAL
index e0118c3..b9f5c43 100644
--- a/doc/props/P_UNIT_DECAY_INTERVAL
+++ b/doc/props/P_UNIT_DECAY_INTERVAL
@@ -1,4 +1,3 @@
-
 P_UNIT_DECAY_INTERVAL
 *********************
 
diff --git a/doc/props/P_UNIT_DECAY_MIN b/doc/props/P_UNIT_DECAY_MIN
index b78a735..0ce5a82 100644
--- a/doc/props/P_UNIT_DECAY_MIN
+++ b/doc/props/P_UNIT_DECAY_MIN
@@ -1,4 +1,3 @@
-
 P_UNIT_DECAY_MIN
 ****************
 
diff --git a/doc/props/P_UNIT_DECAY_QUOTA b/doc/props/P_UNIT_DECAY_QUOTA
index 0b4c9a6..8f0b2f9 100644
--- a/doc/props/P_UNIT_DECAY_QUOTA
+++ b/doc/props/P_UNIT_DECAY_QUOTA
@@ -1,4 +1,3 @@
-
 P_UNIT_DECAY_QUOTA
 ******************
 
diff --git a/doc/props/P_UNWEAR_MSG b/doc/props/P_UNWEAR_MSG
index 0b2e89a..70fabc8 100644
--- a/doc/props/P_UNWEAR_MSG
+++ b/doc/props/P_UNWEAR_MSG
@@ -1,4 +1,3 @@
-
 P_UNWEAR_MSG
 ************
 
diff --git a/doc/props/P_UNWIELD_FUNC b/doc/props/P_UNWIELD_FUNC
index 4466ec0..10c2cdb 100644
--- a/doc/props/P_UNWIELD_FUNC
+++ b/doc/props/P_UNWIELD_FUNC
@@ -1,4 +1,3 @@
-
 P_UNWIELD_FUNC
 **************
 
diff --git a/doc/props/P_UNWIELD_MSG b/doc/props/P_UNWIELD_MSG
index d1d1668..cb32c71 100644
--- a/doc/props/P_UNWIELD_MSG
+++ b/doc/props/P_UNWIELD_MSG
@@ -1,4 +1,3 @@
-
 P_UNWIELD_MSG
 *************
 
diff --git a/doc/props/P_UNWIELD_TIME b/doc/props/P_UNWIELD_TIME
index e93a24b..2e85e05 100644
--- a/doc/props/P_UNWIELD_TIME
+++ b/doc/props/P_UNWIELD_TIME
@@ -1,4 +1,3 @@
-
 P_UNWIELD_TIME
 **************
 
diff --git a/doc/props/P_USED_HANDS b/doc/props/P_USED_HANDS
index b90bd61..b3a11bb 100644
--- a/doc/props/P_USED_HANDS
+++ b/doc/props/P_USED_HANDS
@@ -1,4 +1,3 @@
-
 P_USED_HANDS
 ************
 
diff --git a/doc/props/P_VALID_GUILDS b/doc/props/P_VALID_GUILDS
index 48edcc6..7966628 100644
--- a/doc/props/P_VALID_GUILDS
+++ b/doc/props/P_VALID_GUILDS
@@ -1,4 +1,3 @@
-
 P_VALID_GUILDS
 **************
 
diff --git a/doc/props/P_VALUE b/doc/props/P_VALUE
index cb48202..ce2d53a 100644
--- a/doc/props/P_VALUE
+++ b/doc/props/P_VALUE
@@ -1,4 +1,3 @@
-
 P_VALUE
 *******
 
diff --git a/doc/props/P_VALUE_PER_UNIT b/doc/props/P_VALUE_PER_UNIT
index 3ff1b3c..529b8da 100644
--- a/doc/props/P_VALUE_PER_UNIT
+++ b/doc/props/P_VALUE_PER_UNIT
@@ -1,4 +1,3 @@
-
 P_VALUE_PER_UNIT
 ****************
 
diff --git a/doc/props/P_VARIABLES b/doc/props/P_VARIABLES
index 52a979c..e061b43 100644
--- a/doc/props/P_VARIABLES
+++ b/doc/props/P_VARIABLES
@@ -1,4 +1,3 @@
-
 P_VARIABLES
 ***********
 
diff --git a/doc/props/P_VISIBLE_GUILD b/doc/props/P_VISIBLE_GUILD
index 92de8b7..586979c 100644
--- a/doc/props/P_VISIBLE_GUILD
+++ b/doc/props/P_VISIBLE_GUILD
@@ -1,4 +1,3 @@
-
 P_VISIBLE_GUILD
 ***************
 
diff --git a/doc/props/P_VISIBLE_SUBGUILD_TITLE b/doc/props/P_VISIBLE_SUBGUILD_TITLE
index e0e5c83..a5d8b81 100644
--- a/doc/props/P_VISIBLE_SUBGUILD_TITLE
+++ b/doc/props/P_VISIBLE_SUBGUILD_TITLE
@@ -1,4 +1,3 @@
-
 P_VISIBLE_SUBGUILD_TITLE
 ************************
 
diff --git a/doc/props/P_VULNERABILITY b/doc/props/P_VULNERABILITY
index f0e3abb..1217e55 100644
--- a/doc/props/P_VULNERABILITY
+++ b/doc/props/P_VULNERABILITY
@@ -1,4 +1,3 @@
-
 P_VULNERABILITY
 ***************
 
diff --git a/doc/props/P_WAITFOR b/doc/props/P_WAITFOR
index 301838e..8cac548 100644
--- a/doc/props/P_WAITFOR
+++ b/doc/props/P_WAITFOR
@@ -1,4 +1,3 @@
-
 P_WAITFOR
 *********
 
diff --git a/doc/props/P_WAITFOR_FLAGS b/doc/props/P_WAITFOR_FLAGS
index 5e616b7..81bc2dc 100644
--- a/doc/props/P_WAITFOR_FLAGS
+++ b/doc/props/P_WAITFOR_FLAGS
@@ -1,4 +1,3 @@
-
 P_WAITFOR_FLAGS
 ***************
 
diff --git a/doc/props/P_WAITFOR_REASON b/doc/props/P_WAITFOR_REASON
index 1d997d8..dd2bdce 100644
--- a/doc/props/P_WAITFOR_REASON
+++ b/doc/props/P_WAITFOR_REASON
@@ -1,4 +1,3 @@
-
 P_WAITFOR_REASON
 ****************
 
diff --git a/doc/props/P_WANTS_TO_LEARN b/doc/props/P_WANTS_TO_LEARN
index 639ab61..4b7a406 100644
--- a/doc/props/P_WANTS_TO_LEARN
+++ b/doc/props/P_WANTS_TO_LEARN
@@ -1,4 +1,3 @@
-
 P_WANTS_TO_LEARN
 ****************
 
diff --git a/doc/props/P_WATER b/doc/props/P_WATER
index 06e4025..b611364 100644
--- a/doc/props/P_WATER
+++ b/doc/props/P_WATER
@@ -1,4 +1,3 @@
-
 P_WATER
 *******
 
diff --git a/doc/props/P_WC b/doc/props/P_WC
index cfa18e4..1714539 100644
--- a/doc/props/P_WC
+++ b/doc/props/P_WC
@@ -1,4 +1,3 @@
-
 P_WC
 ****
 
diff --git a/doc/props/P_WEAPON b/doc/props/P_WEAPON
index a7f68b2..e91a2d1 100644
--- a/doc/props/P_WEAPON
+++ b/doc/props/P_WEAPON
@@ -1,4 +1,3 @@
-
 P_WEAPON
 ********
 
diff --git a/doc/props/P_WEAPON_TEACHER b/doc/props/P_WEAPON_TEACHER
index ebeb788..33a371f 100644
--- a/doc/props/P_WEAPON_TEACHER
+++ b/doc/props/P_WEAPON_TEACHER
@@ -1,4 +1,3 @@
-
 P_WEAPON_TEACHER
 ****************
 
diff --git a/doc/props/P_WEAPON_TYPE b/doc/props/P_WEAPON_TYPE
index c900707..c49cb64 100644
--- a/doc/props/P_WEAPON_TYPE
+++ b/doc/props/P_WEAPON_TYPE
@@ -1,4 +1,3 @@
-
 P_WEAPON_TYPE
 *************
 
diff --git a/doc/props/P_WEAR_FUNC b/doc/props/P_WEAR_FUNC
index d288187..5485ddb 100644
--- a/doc/props/P_WEAR_FUNC
+++ b/doc/props/P_WEAR_FUNC
@@ -1,4 +1,3 @@
-
 P_WEAR_FUNC
 ***********
 
diff --git a/doc/props/P_WEAR_MSG b/doc/props/P_WEAR_MSG
index 69fbf44..ead960f 100644
--- a/doc/props/P_WEAR_MSG
+++ b/doc/props/P_WEAR_MSG
@@ -1,4 +1,3 @@
-
 P_WEAR_MSG
 **********
 
diff --git a/doc/props/P_WEIGHT b/doc/props/P_WEIGHT
index 1e426c8..4ce5b1e 100644
--- a/doc/props/P_WEIGHT
+++ b/doc/props/P_WEIGHT
@@ -1,4 +1,3 @@
-
 P_WEIGHT
 ********
 
diff --git a/doc/props/P_WEIGHT_PERCENT b/doc/props/P_WEIGHT_PERCENT
index a4d0506..7776347 100644
--- a/doc/props/P_WEIGHT_PERCENT
+++ b/doc/props/P_WEIGHT_PERCENT
@@ -1,4 +1,3 @@
-
 P_WEIGHT_PERCENT
 ****************
 
diff --git a/doc/props/P_WEIGHT_PER_UNIT b/doc/props/P_WEIGHT_PER_UNIT
index c777b65..99dc43f 100644
--- a/doc/props/P_WEIGHT_PER_UNIT
+++ b/doc/props/P_WEIGHT_PER_UNIT
@@ -1,4 +1,3 @@
-
 P_WEIGHT_PER_UNIT
 *****************
 
diff --git a/doc/props/P_WIELDED b/doc/props/P_WIELDED
index 26bcff7..582fc41 100644
--- a/doc/props/P_WIELDED
+++ b/doc/props/P_WIELDED
@@ -1,4 +1,3 @@
-
 P_WIELDED
 *********
 
diff --git a/doc/props/P_WIELD_FUNC b/doc/props/P_WIELD_FUNC
index fbe49a7..4a95be4 100644
--- a/doc/props/P_WIELD_FUNC
+++ b/doc/props/P_WIELD_FUNC
@@ -1,4 +1,3 @@
-
 P_WIELD_FUNC
 ************
 
diff --git a/doc/props/P_WIELD_MSG b/doc/props/P_WIELD_MSG
index fa9dafc..a2e2d45 100644
--- a/doc/props/P_WIELD_MSG
+++ b/doc/props/P_WIELD_MSG
@@ -1,4 +1,3 @@
-
 P_WIELD_MSG
 ***********
 
diff --git a/doc/props/P_WIMPY b/doc/props/P_WIMPY
index d0ba078..639e101 100644
--- a/doc/props/P_WIMPY
+++ b/doc/props/P_WIMPY
@@ -1,4 +1,3 @@
-
 P_WIMPY
 *******
 
diff --git a/doc/props/P_WIMPY_DIRECTION b/doc/props/P_WIMPY_DIRECTION
index 11bedeb..77ebec9 100644
--- a/doc/props/P_WIMPY_DIRECTION
+++ b/doc/props/P_WIMPY_DIRECTION
@@ -1,4 +1,3 @@
-
 P_WIMPY_DIRECTION
 *****************
 
diff --git a/doc/props/P_WIZ_DEBUG b/doc/props/P_WIZ_DEBUG
index 0bea2ad..39e632d 100644
--- a/doc/props/P_WIZ_DEBUG
+++ b/doc/props/P_WIZ_DEBUG
@@ -1,4 +1,3 @@
-
 P_WIZ_DEBUG
 ***********
 
diff --git a/doc/props/P_WORN b/doc/props/P_WORN
index 999ab76..e4068a5 100644
--- a/doc/props/P_WORN
+++ b/doc/props/P_WORN
@@ -1,4 +1,3 @@
-
 P_WORN
 ******
 
diff --git a/doc/props/P_XP b/doc/props/P_XP
index 649f4e0..9a86334 100644
--- a/doc/props/P_XP
+++ b/doc/props/P_XP
@@ -1,4 +1,3 @@
-
 P_XP
 ****
 
diff --git a/doc/props/P_X_ATTR_MOD b/doc/props/P_X_ATTR_MOD
index 14ab9a4..2efbc44 100644
--- a/doc/props/P_X_ATTR_MOD
+++ b/doc/props/P_X_ATTR_MOD
@@ -1,4 +1,3 @@
-
 P_X_ATTR_MOD
 ************
 
diff --git a/doc/props/P_X_HEALTH_MOD b/doc/props/P_X_HEALTH_MOD
index 69aafab..ff11362 100644
--- a/doc/props/P_X_HEALTH_MOD
+++ b/doc/props/P_X_HEALTH_MOD
@@ -1,4 +1,3 @@
-
 P_X_HEALTH_MOD
 **************
 
diff --git a/doc/props/P_ZAP_MSG b/doc/props/P_ZAP_MSG
index 6f9c7ce..f73aff4 100644
--- a/doc/props/P_ZAP_MSG
+++ b/doc/props/P_ZAP_MSG
@@ -1,4 +1,3 @@
-
 P_ZAP_MSG
 *********
 
diff --git a/doc/props/U_REQ b/doc/props/U_REQ
index 1594c4f..334e727 100644
--- a/doc/props/U_REQ
+++ b/doc/props/U_REQ
@@ -1,4 +1,3 @@
-
 U_REQ
 *****
 
diff --git a/doc/props/gildenprops/P_GLOVE_FINGERLESS b/doc/props/gildenprops/P_GLOVE_FINGERLESS
index 0485c9a..e486a86 100644
--- a/doc/props/gildenprops/P_GLOVE_FINGERLESS
+++ b/doc/props/gildenprops/P_GLOVE_FINGERLESS
@@ -1,4 +1,3 @@
-
 P_GLOVE_FINGERLESS
 ******************
 
diff --git a/doc/props/gildenprops/P_Z_AUTOSHIELD b/doc/props/gildenprops/P_Z_AUTOSHIELD
index 994abad..71f4660 100644
--- a/doc/props/gildenprops/P_Z_AUTOSHIELD
+++ b/doc/props/gildenprops/P_Z_AUTOSHIELD
@@ -1,4 +1,3 @@
-
 P_Z_AUTOSHIELD
 **************
 
diff --git a/doc/props/gildenprops/P_Z_INFO b/doc/props/gildenprops/P_Z_INFO
index 654c768..712d239 100644
--- a/doc/props/gildenprops/P_Z_INFO
+++ b/doc/props/gildenprops/P_Z_INFO
@@ -1,4 +1,3 @@
-
 P_Z_INFO
 ********
 
diff --git a/doc/props/gildenprops/P_Z_NO_MATERIAL b/doc/props/gildenprops/P_Z_NO_MATERIAL
index cda514a..c8b7861 100644
--- a/doc/props/gildenprops/P_Z_NO_MATERIAL
+++ b/doc/props/gildenprops/P_Z_NO_MATERIAL
@@ -1,4 +1,3 @@
-
 P_Z_NO_MATERIAL
 ***************
 
diff --git a/doc/props/gildenprops/P_Z_NO_NOCONN b/doc/props/gildenprops/P_Z_NO_NOCONN
index 6cd0024..10b5d67 100644
--- a/doc/props/gildenprops/P_Z_NO_NOCONN
+++ b/doc/props/gildenprops/P_Z_NO_NOCONN
@@ -1,4 +1,3 @@
-
 P_Z_NO_NOCONN
 *************
 
diff --git a/doc/props/gildenprops/P_Z_NO_SPELL_SUPPORT b/doc/props/gildenprops/P_Z_NO_SPELL_SUPPORT
index 74860f6..3f320b0 100644
--- a/doc/props/gildenprops/P_Z_NO_SPELL_SUPPORT
+++ b/doc/props/gildenprops/P_Z_NO_SPELL_SUPPORT
@@ -1,4 +1,3 @@
-
 P_Z_NO_SPELL_SUPPORT
 ********************
 
diff --git a/doc/props/gildenprops/kaempferboni b/doc/props/gildenprops/kaempferboni
index 0d34e98..aa121c4 100644
--- a/doc/props/gildenprops/kaempferboni
+++ b/doc/props/gildenprops/kaempferboni
@@ -1,4 +1,3 @@
-
 kaempferboni
 ************
 
diff --git a/doc/props/obsolete/P_BALANCED_WEAPON b/doc/props/obsolete/P_BALANCED_WEAPON
index 83a2fc4..c52fe65 100644
--- a/doc/props/obsolete/P_BALANCED_WEAPON
+++ b/doc/props/obsolete/P_BALANCED_WEAPON
@@ -1,4 +1,3 @@
-
 P_BALANCED_WEAPON
 *****************
 
diff --git a/doc/props/obsolete/P_DEFAULT_INFO b/doc/props/obsolete/P_DEFAULT_INFO
index 9a16169..86b214d 100644
--- a/doc/props/obsolete/P_DEFAULT_INFO
+++ b/doc/props/obsolete/P_DEFAULT_INFO
@@ -1,4 +1,3 @@
-
 P_DEFAULT_INFO
 **************
 
diff --git a/doc/props/obsolete/P_LAST_KILLER b/doc/props/obsolete/P_LAST_KILLER
index 199a878..f8da105 100644
--- a/doc/props/obsolete/P_LAST_KILLER
+++ b/doc/props/obsolete/P_LAST_KILLER
@@ -1,4 +1,3 @@
-
 P_LAST_KILLER
 *************
 
diff --git a/doc/props/obsolete/P_LAST_PEACE_TIME b/doc/props/obsolete/P_LAST_PEACE_TIME
index f8aea49..994f731 100644
--- a/doc/props/obsolete/P_LAST_PEACE_TIME
+++ b/doc/props/obsolete/P_LAST_PEACE_TIME
@@ -1,4 +1,3 @@
-
 P_LAST_PEACE_TIME
 *****************
 
diff --git a/doc/props/obsolete/P_LOG_FILE b/doc/props/obsolete/P_LOG_FILE
index ed57133..6e10b9a 100644
--- a/doc/props/obsolete/P_LOG_FILE
+++ b/doc/props/obsolete/P_LOG_FILE
@@ -1,4 +1,3 @@
-
 P_LOG_FILE
 **********
 
diff --git a/doc/props/obsolete/P_NEXT_SPELL_TIME b/doc/props/obsolete/P_NEXT_SPELL_TIME
index 300a766..01bcb15 100644
--- a/doc/props/obsolete/P_NEXT_SPELL_TIME
+++ b/doc/props/obsolete/P_NEXT_SPELL_TIME
@@ -1,4 +1,3 @@
-
 P_NEXT_SPELL_TIME
 *****************
 
diff --git a/doc/props/obsolete/P_READ_MSG b/doc/props/obsolete/P_READ_MSG
index 2331508..dccd183 100644
--- a/doc/props/obsolete/P_READ_MSG
+++ b/doc/props/obsolete/P_READ_MSG
@@ -1,4 +1,3 @@
-
 P_READ_MSG
 **********
 
diff --git a/doc/props/obsolete/P_TECHNIQUE b/doc/props/obsolete/P_TECHNIQUE
index a556ce6..3880762 100644
--- a/doc/props/obsolete/P_TECHNIQUE
+++ b/doc/props/obsolete/P_TECHNIQUE
@@ -1,4 +1,3 @@
-
 P_TECHNIQUE
 ***********
 
diff --git a/doc/props/obsolete/P_TMP_ATTACK_HOOK b/doc/props/obsolete/P_TMP_ATTACK_HOOK
index 6bd5130..4b08ddc 100644
--- a/doc/props/obsolete/P_TMP_ATTACK_HOOK
+++ b/doc/props/obsolete/P_TMP_ATTACK_HOOK
@@ -1,4 +1,3 @@
-
 P_TMP_ATTACK_HOOK
 *****************
 
diff --git a/doc/props/obsolete/P_TMP_ATTACK_MOD b/doc/props/obsolete/P_TMP_ATTACK_MOD
index df10409..f67218b 100644
--- a/doc/props/obsolete/P_TMP_ATTACK_MOD
+++ b/doc/props/obsolete/P_TMP_ATTACK_MOD
@@ -1,4 +1,3 @@
-
 P_TMP_ATTACK_MOD
 ****************
 
diff --git a/doc/props/obsolete/P_TMP_DEFEND_HOOK b/doc/props/obsolete/P_TMP_DEFEND_HOOK
index 144f7a4..0044027 100644
--- a/doc/props/obsolete/P_TMP_DEFEND_HOOK
+++ b/doc/props/obsolete/P_TMP_DEFEND_HOOK
@@ -1,4 +1,3 @@
-
 P_TMP_DEFEND_HOOK
 *****************
 
diff --git a/doc/props/obsolete/P_TMP_DIE_HOOK b/doc/props/obsolete/P_TMP_DIE_HOOK
index f4008cb..0f33eac 100644
--- a/doc/props/obsolete/P_TMP_DIE_HOOK
+++ b/doc/props/obsolete/P_TMP_DIE_HOOK
@@ -1,4 +1,3 @@
-
 P_TMP_DIE_HOOK
 **************
 
diff --git a/doc/props/obsolete/P_TMP_MOVE_HOOK b/doc/props/obsolete/P_TMP_MOVE_HOOK
index 8f1aa77..dbab5f7 100644
--- a/doc/props/obsolete/P_TMP_MOVE_HOOK
+++ b/doc/props/obsolete/P_TMP_MOVE_HOOK
@@ -1,4 +1,3 @@
-
 P_TMP_MOVE_HOOK
 ***************
 
diff --git a/doc/props/obsolete/P_VISUALBELL b/doc/props/obsolete/P_VISUALBELL
new file mode 100644
index 0000000..3de78b2
--- /dev/null
+++ b/doc/props/obsolete/P_VISUALBELL
@@ -0,0 +1,62 @@
+P_VISUALBELL
+************
+
+********************* VERALTETE PROPERTY *********************** *
+Diese Property ist veraltet und wurde durch P_ALERT ersetzt. * * Bitte
+nicht mehr in neuem Code nutzen.                       *
+****************************************************************
+
+
+NAME
+====
+
+   P_VISUALBELL                    "visualbell"
+
+
+DEFINIERT IN
+============
+
+   /sys/properties.h
+
+
+BESCHREIBUNG
+============
+
+   Die Property stellt ein Flag innerhalb von Spielern dar, welches
+   standardmaessig nicht gesetzt ist. In diesem Fall werden Toene,
+   welche innerhalb einiger Funktionen erzeugt werden, auch wirklich an
+   den Spieler geschickt.
+   Setzt man die Property, so erhaelt der Spieler keine Toene mehr.
+
+
+BEISPIEL
+========
+
+   Pieptoene werden durch den ASCII-Code 0x7 praesentiert. Ausgeben
+   kann man diesen folgendermassen:
+     if(!IS_WIZARD(caster)&&!victim->QueryProp(P_VISUALBELL))
+       tell_object(victim,sprintf("%c",7));
+   Das waere beispielsweise ein Codestueck aus einem Piepspell. :)
+   Das Opfer bekommt den Piepton hierbei nur ab, wenn der Caster ein
+   Magier ist oder das Spieleropfer die Property P_VISUALBELL gesetzt
+   hat (kann mit Kommando 'ton' vom Spieler beeinflusst werden).
+
+
+BEMERKUNGEN
+===========
+
+   Achtung: P_VISUALBELL steht auf 1, wenn der Spieler _keine_ Piepstoene
+         hoeren will!
+         Die Funktionalitaet dieser Property wirkt nur soweit, wie sie auch
+         von tonerzeugenden Befehlen selbst unterstuetzt wird. Es ist darauf
+         zu achten, dass P_VISUALBELL zu diesem Zweck grundsaetzlich
+         ausgewertet wird! Eine Ausnahme sei hierbei zugelassen: Magier
+         koennen Spielern grundsaetzlich Toene zusenden.
+
+
+SIEHE AUCH
+==========
+
+   ton, wecke, erwarte, P_WAITFOR, /std/player/base.c
+
+Last modified: 07.02.2007 by Zesstra
diff --git a/doc/props/skill_info_liste b/doc/props/skill_info_liste
index a8ad089..fe85218 100644
--- a/doc/props/skill_info_liste
+++ b/doc/props/skill_info_liste
@@ -1,4 +1,3 @@
-
 skill_info_liste
 ****************
 
diff --git a/doc/sefun-obsolet b/doc/sefun-obsolet
index d0a468f..11f3735 100644
--- a/doc/sefun-obsolet
+++ b/doc/sefun-obsolet
@@ -1,4 +1,3 @@
-
 Verzeichnis der obsoleten und entfernten simulated efuns
 ********************************************************
 
diff --git a/doc/sefun.index b/doc/sefun.index
index 74410aa..ee15e60 100644
--- a/doc/sefun.index
+++ b/doc/sefun.index
@@ -1,4 +1,3 @@
-
 sefuns (simulated efuns)
 ************************
 
diff --git a/doc/sefun/CountUp b/doc/sefun/CountUp
index 9e55d69..28b8282 100644
--- a/doc/sefun/CountUp
+++ b/doc/sefun/CountUp
@@ -1,4 +1,3 @@
-
 CountUp()
 *********
 
diff --git a/doc/sefun/_notify_fail b/doc/sefun/_notify_fail
index a9801ef..07d6fba 100644
--- a/doc/sefun/_notify_fail
+++ b/doc/sefun/_notify_fail
@@ -1,4 +1,3 @@
-
 _notify_fail()
 **************
 
diff --git a/doc/sefun/break_string b/doc/sefun/break_string
index 8e3017d..8b2d321 100644
--- a/doc/sefun/break_string
+++ b/doc/sefun/break_string
@@ -1,4 +1,3 @@
-
 break_string()
 **************
 
diff --git a/doc/sefun/broken_count_bits b/doc/sefun/broken_count_bits
index de01e96..f72399b 100644
--- a/doc/sefun/broken_count_bits
+++ b/doc/sefun/broken_count_bits
@@ -1,4 +1,3 @@
-
 broken_count_bits()
 *******************
 
diff --git a/doc/sefun/cindent b/doc/sefun/cindent
index e0e16af..b1ecf37 100644
--- a/doc/sefun/cindent
+++ b/doc/sefun/cindent
@@ -1,4 +1,3 @@
-
 cindent()
 *********
 
diff --git a/doc/sefun/debug_info b/doc/sefun/debug_info
index 02e02b8..223e982 100644
--- a/doc/sefun/debug_info
+++ b/doc/sefun/debug_info
@@ -1,4 +1,3 @@
-
 debug_info()
 ************
 
diff --git a/doc/sefun/deep_present b/doc/sefun/deep_present
index c3f673a..5c622d9 100644
--- a/doc/sefun/deep_present
+++ b/doc/sefun/deep_present
@@ -1,4 +1,3 @@
-
 deep_present()
 **************
 
diff --git a/doc/sefun/dtime b/doc/sefun/dtime
index dac7dd0..f0dd3ff 100644
--- a/doc/sefun/dtime
+++ b/doc/sefun/dtime
@@ -1,4 +1,3 @@
-
 dtime()
 *******
 
diff --git a/doc/sefun/dump_netdead b/doc/sefun/dump_netdead
index b5b480a..c2fb439 100644
--- a/doc/sefun/dump_netdead
+++ b/doc/sefun/dump_netdead
@@ -1,4 +1,3 @@
-
 dump_netdead()
 **************
 
diff --git a/doc/sefun/enable_commands b/doc/sefun/enable_commands
index 593fb31..a00f310 100644
--- a/doc/sefun/enable_commands
+++ b/doc/sefun/enable_commands
@@ -1,4 +1,3 @@
-
 enable_commands()
 *****************
 
diff --git a/doc/sefun/file_time b/doc/sefun/file_time
index ddaefce..7993843 100644
--- a/doc/sefun/file_time
+++ b/doc/sefun/file_time
@@ -1,4 +1,3 @@
-
 file_time()
 ***********
 
diff --git a/doc/sefun/find_living b/doc/sefun/find_living
index 5930695..5c45738 100644
--- a/doc/sefun/find_living
+++ b/doc/sefun/find_living
@@ -1,4 +1,3 @@
-
 find_living()
 *************
 
diff --git a/doc/sefun/find_livings b/doc/sefun/find_livings
index 7f8f9b1..8b39cf4 100644
--- a/doc/sefun/find_livings
+++ b/doc/sefun/find_livings
@@ -1,4 +1,3 @@
-
 find_livings()
 **************
 
diff --git a/doc/sefun/find_netdead b/doc/sefun/find_netdead
index 8686436..8858ca6 100644
--- a/doc/sefun/find_netdead
+++ b/doc/sefun/find_netdead
@@ -1,4 +1,3 @@
-
 find_netdead()
 **************
 
diff --git a/doc/sefun/find_player b/doc/sefun/find_player
index 048b105..824c7a6 100644
--- a/doc/sefun/find_player
+++ b/doc/sefun/find_player
@@ -1,4 +1,3 @@
-
 find_player()
 *************
 
diff --git a/doc/sefun/getuuid b/doc/sefun/getuuid
index 840044c..8b55947 100644
--- a/doc/sefun/getuuid
+++ b/doc/sefun/getuuid
@@ -1,4 +1,3 @@
-
 getuuid()
 *********
 
diff --git a/doc/sefun/log_file b/doc/sefun/log_file
index b8bfb41..136c575 100644
--- a/doc/sefun/log_file
+++ b/doc/sefun/log_file
@@ -1,4 +1,3 @@
-
 log_file()
 **********
 
diff --git a/doc/sefun/lowerchar b/doc/sefun/lowerchar
index 8e6cfdd..58f95a0 100644
--- a/doc/sefun/lowerchar
+++ b/doc/sefun/lowerchar
@@ -1,4 +1,3 @@
-
 lowerchar()
 ***********
 
diff --git a/doc/sefun/lowerstring b/doc/sefun/lowerstring
index a483224..7f2ba95 100644
--- a/doc/sefun/lowerstring
+++ b/doc/sefun/lowerstring
@@ -1,4 +1,3 @@
-
 lowerstring()
 *************
 
diff --git a/doc/sefun/m_copy_delete b/doc/sefun/m_copy_delete
index 9aa90f2..6fe6d1a 100644
--- a/doc/sefun/m_copy_delete
+++ b/doc/sefun/m_copy_delete
@@ -1,4 +1,3 @@
-
 m_copy_delete()
 ***************
 
diff --git a/doc/sefun/match_living b/doc/sefun/match_living
index 5cb347b..2652a4e 100644
--- a/doc/sefun/match_living
+++ b/doc/sefun/match_living
@@ -1,4 +1,3 @@
-
 match_living()
 **************
 
diff --git a/doc/sefun/md5 b/doc/sefun/md5
index f48dcc8..c76693c 100644
--- a/doc/sefun/md5
+++ b/doc/sefun/md5
@@ -1,4 +1,3 @@
-
 md5()
 *****
 
diff --git a/doc/sefun/mkdirp b/doc/sefun/mkdirp
index 2bb9d06..ebd62a4 100644
--- a/doc/sefun/mkdirp
+++ b/doc/sefun/mkdirp
@@ -1,4 +1,3 @@
-
 mkdirp()
 ********
 
diff --git a/doc/sefun/notify_fail b/doc/sefun/notify_fail
index 85b700a..8982b98 100644
--- a/doc/sefun/notify_fail
+++ b/doc/sefun/notify_fail
@@ -1,4 +1,3 @@
-
 notify_fail()
 *************
 
diff --git a/doc/sefun/object_info b/doc/sefun/object_info
index bee892e..e9896ac 100644
--- a/doc/sefun/object_info
+++ b/doc/sefun/object_info
@@ -1,4 +1,3 @@
-
 object_info()
 *************
 
diff --git a/doc/sefun/obsolete/exclude_alist b/doc/sefun/obsolete/exclude_alist
index 5d1aace..d549a2f 100644
--- a/doc/sefun/obsolete/exclude_alist
+++ b/doc/sefun/obsolete/exclude_alist
@@ -1,4 +1,3 @@
-
 exclude_alist()
 ***************
 
diff --git a/doc/sefun/obsolete/remove_alist b/doc/sefun/obsolete/remove_alist
index fceac4f..8ce5fc1 100644
--- a/doc/sefun/obsolete/remove_alist
+++ b/doc/sefun/obsolete/remove_alist
@@ -1,4 +1,3 @@
-
 remove_alist()
 **************
 
diff --git a/doc/sefun/old_explode b/doc/sefun/old_explode
index 357e838..34c7b7d 100644
--- a/doc/sefun/old_explode
+++ b/doc/sefun/old_explode
@@ -1,4 +1,3 @@
-
 old_explode()
 *************
 
diff --git a/doc/sefun/process_call b/doc/sefun/process_call
index cd43faf..8e8581e 100644
--- a/doc/sefun/process_call
+++ b/doc/sefun/process_call
@@ -1,4 +1,3 @@
-
 process_call()
 **************
 
diff --git a/doc/sefun/process_string b/doc/sefun/process_string
index 4d72259..4a2fbe8 100644
--- a/doc/sefun/process_string
+++ b/doc/sefun/process_string
@@ -1,4 +1,3 @@
-
 process_string()
 ****************
 
diff --git a/doc/sefun/query_editing b/doc/sefun/query_editing
index 32358ed..ea1d840 100644
--- a/doc/sefun/query_editing
+++ b/doc/sefun/query_editing
@@ -1,4 +1,3 @@
-
 query_editing()
 ***************
 
diff --git a/doc/sefun/query_idle b/doc/sefun/query_idle
index 7deccee..385cb3c 100644
--- a/doc/sefun/query_idle
+++ b/doc/sefun/query_idle
@@ -1,4 +1,3 @@
-
 query_idle()
 ************
 
diff --git a/doc/sefun/query_input_pending b/doc/sefun/query_input_pending
index c40c355..da50965 100644
--- a/doc/sefun/query_input_pending
+++ b/doc/sefun/query_input_pending
@@ -1,4 +1,3 @@
-
 query_input_pending()
 *********************
 
diff --git a/doc/sefun/query_ip_name b/doc/sefun/query_ip_name
index 76de80f..4d076e2 100644
--- a/doc/sefun/query_ip_name
+++ b/doc/sefun/query_ip_name
@@ -1,4 +1,3 @@
-
 query_ip_name()
 ***************
 
diff --git a/doc/sefun/query_ip_number b/doc/sefun/query_ip_number
index d09bc88..d0449fa 100644
--- a/doc/sefun/query_ip_number
+++ b/doc/sefun/query_ip_number
@@ -1,4 +1,3 @@
-
 query_ip_number()
 *****************
 
diff --git a/doc/sefun/query_limits b/doc/sefun/query_limits
index 8af988f..a202f05 100644
--- a/doc/sefun/query_limits
+++ b/doc/sefun/query_limits
@@ -1,4 +1,3 @@
-
 query_limits()
 **************
 
diff --git a/doc/sefun/query_mud_port b/doc/sefun/query_mud_port
index de4c1e2..6cc9460 100644
--- a/doc/sefun/query_mud_port
+++ b/doc/sefun/query_mud_port
@@ -1,4 +1,3 @@
-
 query_mud_port()
 ****************
 
diff --git a/doc/sefun/query_next_reset b/doc/sefun/query_next_reset
index 528ae56..f26bc96 100644
--- a/doc/sefun/query_next_reset
+++ b/doc/sefun/query_next_reset
@@ -1,4 +1,3 @@
-
 query_next_reset()
 ******************
 
diff --git a/doc/sefun/query_once_interactive b/doc/sefun/query_once_interactive
index bfb8b55..fe4d247 100644
--- a/doc/sefun/query_once_interactive
+++ b/doc/sefun/query_once_interactive
@@ -1,4 +1,3 @@
-
 query_once_interactive()
 ************************
 
diff --git a/doc/sefun/query_shadowing b/doc/sefun/query_shadowing
index aadf109..55f93ec 100644
--- a/doc/sefun/query_shadowing
+++ b/doc/sefun/query_shadowing
@@ -1,4 +1,3 @@
-
 query_shadowing()
 *****************
 
diff --git a/doc/sefun/query_snoop b/doc/sefun/query_snoop
index 94e598a..bab361b 100644
--- a/doc/sefun/query_snoop
+++ b/doc/sefun/query_snoop
@@ -1,4 +1,3 @@
-
 query_snoop()
 *************
 
diff --git a/doc/sefun/query_wiz_grp b/doc/sefun/query_wiz_grp
index fe01fbd..a0f2948 100644
--- a/doc/sefun/query_wiz_grp
+++ b/doc/sefun/query_wiz_grp
@@ -1,4 +1,3 @@
-
 query_wiz_grp()
 ***************
 
diff --git a/doc/sefun/query_wiz_level b/doc/sefun/query_wiz_level
index 3645035..ca4cafa 100644
--- a/doc/sefun/query_wiz_level
+++ b/doc/sefun/query_wiz_level
@@ -1,4 +1,3 @@
-
 query_wiz_level()
 *****************
 
diff --git a/doc/sefun/read_data b/doc/sefun/read_data
index 1756890..d9ff4d4 100644
--- a/doc/sefun/read_data
+++ b/doc/sefun/read_data
@@ -1,4 +1,3 @@
-
 read_data()
 ***********
 
diff --git a/doc/sefun/replace_personal b/doc/sefun/replace_personal
index a8946e5..7177b85 100644
--- a/doc/sefun/replace_personal
+++ b/doc/sefun/replace_personal
@@ -1,4 +1,3 @@
-
 replace_personal()
 ******************
 
diff --git a/doc/sefun/restore_object b/doc/sefun/restore_object
index 631252d..df51ae3 100644
--- a/doc/sefun/restore_object
+++ b/doc/sefun/restore_object
@@ -1,4 +1,3 @@
-
 restore_object()
 ****************
 
diff --git a/doc/sefun/save_object b/doc/sefun/save_object
index fc8175f..f3a7e54 100644
--- a/doc/sefun/save_object
+++ b/doc/sefun/save_object
@@ -1,4 +1,3 @@
-
 save_object()
 *************
 
diff --git a/doc/sefun/send_debug b/doc/sefun/send_debug
index f47b748..2d49965 100644
--- a/doc/sefun/send_debug
+++ b/doc/sefun/send_debug
@@ -1,4 +1,3 @@
-
 send_debug()
 ************
 
diff --git a/doc/sefun/send_room b/doc/sefun/send_room
index 2906b5a..032e933 100644
--- a/doc/sefun/send_room
+++ b/doc/sefun/send_room
@@ -1,4 +1,3 @@
-
 send_room()
 ***********
 
diff --git a/doc/sefun/set_heart_beat b/doc/sefun/set_heart_beat
index a304181..8af5e03 100644
--- a/doc/sefun/set_heart_beat
+++ b/doc/sefun/set_heart_beat
@@ -1,4 +1,3 @@
-
 set_heart_beat()
 ****************
 
diff --git a/doc/sefun/set_living_name b/doc/sefun/set_living_name
index e588e6e..05bfb51 100644
--- a/doc/sefun/set_living_name
+++ b/doc/sefun/set_living_name
@@ -1,4 +1,3 @@
-
 set_living_name()
 *****************
 
diff --git a/doc/sefun/set_object_heart_beat b/doc/sefun/set_object_heart_beat
index caecca2..f741f3d 100644
--- a/doc/sefun/set_object_heart_beat
+++ b/doc/sefun/set_object_heart_beat
@@ -1,4 +1,3 @@
-
 set_object_heart_beat()
 ***********************
 
diff --git a/doc/sefun/sha1 b/doc/sefun/sha1
index ef3b10e..ea0e462 100644
--- a/doc/sefun/sha1
+++ b/doc/sefun/sha1
@@ -1,4 +1,3 @@
-
 sha1()
 ******
 
diff --git a/doc/sefun/shadow b/doc/sefun/shadow
index 2b7032c..2d1ab3c 100644
--- a/doc/sefun/shadow
+++ b/doc/sefun/shadow
@@ -1,4 +1,3 @@
-
 shadow()
 ********
 
diff --git a/doc/sefun/shout b/doc/sefun/shout
index 0d38abb..37ae7c7 100644
--- a/doc/sefun/shout
+++ b/doc/sefun/shout
@@ -1,4 +1,3 @@
-
 shout()
 *******
 
diff --git a/doc/sefun/time2string b/doc/sefun/time2string
index 4acd1a2..68c9afa 100644
--- a/doc/sefun/time2string
+++ b/doc/sefun/time2string
@@ -1,4 +1,3 @@
-
 time2string()
 *************
 
diff --git a/doc/sefun/update_actions b/doc/sefun/update_actions
index b25c07c..93f2b6d 100644
--- a/doc/sefun/update_actions
+++ b/doc/sefun/update_actions
@@ -1,4 +1,3 @@
-
 update_actions()
 ****************
 
diff --git a/doc/sefun/upperstring b/doc/sefun/upperstring
index 416c90d..48a9360 100644
--- a/doc/sefun/upperstring
+++ b/doc/sefun/upperstring
@@ -1,4 +1,3 @@
-
 upperstring()
 *************
 
diff --git a/doc/sefun/uptime b/doc/sefun/uptime
index 4c007a3..ac3dc91 100644
--- a/doc/sefun/uptime
+++ b/doc/sefun/uptime
@@ -1,4 +1,3 @@
-
 uptime()
 ********
 
diff --git a/doc/sefun/wizlist b/doc/sefun/wizlist
index f81b9b8..4716aae 100644
--- a/doc/sefun/wizlist
+++ b/doc/sefun/wizlist
@@ -1,4 +1,3 @@
-
 wizlist()
 *********
 
diff --git a/doc/sefun/wizlist_info b/doc/sefun/wizlist_info
index 0c86434..b7bc38b 100644
--- a/doc/sefun/wizlist_info
+++ b/doc/sefun/wizlist_info
@@ -1,4 +1,3 @@
-
 wizlist_info()
 **************
 
diff --git a/doc/sefun/write_data b/doc/sefun/write_data
index b8f0d4f..911912f 100644
--- a/doc/sefun/write_data
+++ b/doc/sefun/write_data
@@ -1,4 +1,3 @@
-
 write_data()
 ************
 
diff --git a/doc/sphinx/lfun/AddDefender.rst b/doc/sphinx/lfun/AddDefender.rst
index dc55267..43ccd37 100644
--- a/doc/sphinx/lfun/AddDefender.rst
+++ b/doc/sphinx/lfun/AddDefender.rst
@@ -35,6 +35,6 @@
   :doc:`RemoveDefender`, :doc:`QueryDefenders`, 
   :doc:`QueryPresentDefenders`, :doc:`QueryNearDefenders`, 
   :doc:`InformDefend`, :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/sphinx/lfun/InformDefend.rst b/doc/sphinx/lfun/InformDefend.rst
index df3fa9c..fe2b8a2 100644
--- a/doc/sphinx/lfun/InformDefend.rst
+++ b/doc/sphinx/lfun/InformDefend.rst
@@ -85,6 +85,6 @@
   :doc:`AddDefender`, :doc:`RemoveDefender`, :doc:`QueryDefenders`, 
   :doc:`QueryPresentDefenders`, :doc:`QueryNearDefenders`, 
   :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/sphinx/lfun/QueryDefenders.rst b/doc/sphinx/lfun/QueryDefenders.rst
index 1269acc..cb9677f 100644
--- a/doc/sphinx/lfun/QueryDefenders.rst
+++ b/doc/sphinx/lfun/QueryDefenders.rst
@@ -27,6 +27,6 @@
   :doc:`AddDefender`, :doc:`RemoveDefender`,
   :doc:`QueryPresentDefenders`, :doc:`QueryNearDefenders`, 
   :doc:`InformDefend`, :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
 Letzte Aenderung: 29.10.2022, Bugfix
diff --git a/doc/sphinx/lfun/QueryNearDefenders.rst b/doc/sphinx/lfun/QueryNearDefenders.rst
index 7b26903..d8885ac 100644
--- a/doc/sphinx/lfun/QueryNearDefenders.rst
+++ b/doc/sphinx/lfun/QueryNearDefenders.rst
@@ -37,6 +37,6 @@
   :doc:`AddDefender`, :doc:`RemoveDefender`, :doc:`QueryDefenders`, 
   :doc:`QueryPresentDefenders`,
   :doc:`InformDefend`, :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
-Letzte Aenderung: 28.10.2022, Bugfix
\ No newline at end of file
+Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/sphinx/lfun/QueryPresentDefenders.rst b/doc/sphinx/lfun/QueryPresentDefenders.rst
index 2eabd69..11977aa 100644
--- a/doc/sphinx/lfun/QueryPresentDefenders.rst
+++ b/doc/sphinx/lfun/QueryPresentDefenders.rst
@@ -37,6 +37,6 @@
   :doc:`AddDefender`, :doc:`RemoveDefender`, :doc:`QueryDefenders`, 
   :doc:`QueryNearDefenders`, 
   :doc:`InformDefend`, :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
-Letzte Aenderung: 28.10.2022, Bugfix
\ No newline at end of file
+Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/sphinx/lfun/RemoveDefender.rst b/doc/sphinx/lfun/RemoveDefender.rst
index 3e62b58..7d9e12f 100644
--- a/doc/sphinx/lfun/RemoveDefender.rst
+++ b/doc/sphinx/lfun/RemoveDefender.rst
@@ -37,6 +37,6 @@
   :doc:`AddDefender`, :doc:`QueryDefenders`, 
   :doc:`QueryPresentDefenders`, :doc:`QueryNearDefenders`, 
   :doc:`InformDefend`, :doc:`DefendOther`,
-  :doc:`../props/P_DEFENDER`, /std/living/combat.c
+  :doc:`../props/P_DEFENDERS`, /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/sphinx/props/P_DEFENDERS.rst b/doc/sphinx/props/P_DEFENDERS.rst
index 862b372..47dcf23 100644
--- a/doc/sphinx/props/P_DEFENDERS.rst
+++ b/doc/sphinx/props/P_DEFENDERS.rst
@@ -35,9 +35,9 @@
 SIEHE AUCH
 ----------
 
-  :doc:`AddDefender`, :doc:`RemoveDefender`, :doc:`QueryDefenders`, 
-  :doc:`QueryPresentDefenders`, :doc:`QueryNearDefenders`, 
-  :doc:`InformDefend`, :doc:`DefendOther`,
-  /std/living/combat.c
+  :doc:`../lfun/AddDefender`, :doc:`../lfun/RemoveDefender`, 
+  :doc:`../lfun/QueryDefenders`, :doc:`../lfun/QueryPresentDefenders`, 
+  :doc:`../lfun/QueryNearDefenders`, :doc:`../lfun/InformDefend`, 
+  :doc:`../lfun/DefendOther`,  /std/living/combat.c
 
 Letzte Aenderung: 28.10.2022, Bugfix
diff --git a/doc/wiz.index b/doc/wiz.index
index a8bd7ba..826632d 100644
--- a/doc/wiz.index
+++ b/doc/wiz.index
@@ -1,4 +1,3 @@
-
 Allgemeine Informationen fuer Magier
 ************************************
 
@@ -11,6 +10,8 @@
 
 * FAMILIEN
 
+* Farben im Mud
+
 * Erstellung neuer Repositories in Gerrit
 
 * Upload via Gerrit
diff --git a/doc/wiz/familien b/doc/wiz/familien
index 6f1d305..bb6b9a0 100644
--- a/doc/wiz/familien
+++ b/doc/wiz/familien
@@ -1,4 +1,3 @@
-
 FAMILIEN
 ********
 
diff --git a/doc/wiz/farben b/doc/wiz/farben
new file mode 100644
index 0000000..1e14631
--- /dev/null
+++ b/doc/wiz/farben
@@ -0,0 +1,80 @@
+Farben im Mud
+*************
+
+   Farben in der Ausgabe werden im MorgenGrauen bislang eher selten
+   verwendet und die Einfaerbung meistens den Triggern des Clients
+   ueberlassen. Moechte man allerdings direkt etwas (farblich)
+   markieren, stehen hierfuer einige Hervorhebungs-Tags zur
+   Verfuegung, welche in ReceiveMsg() durch die passenden Steuercodes
+   fuer den Terminaltypen des Clients ersetzt werden.
+
+   Hierfuer muss die Ausgabe lediglich durch ReceiveMsg() und deren
+   Wrapper erfolgen, weitere Massnahmen sind weder noetig noch
+   empfohlen.
+
+   Benutzt werden diese Tags, indem die in den auszugebenden Text
+   zwischen zwei "%^" gesetzt werden: "`%^tag%^markierter
+   Text%^endetag%^`". Hierbei sollte dann ReceiveMsg() allerdings auch
+   der Zeilenumbruch ueberlassen werden.
+
+   Zu beachten ist, dass je nach Client bzw. seinem Terminaltyp nicht
+   alle Tags benutzbar sind. Falls z.B. der Client kein ANSI
+   untertuetzt und die Spielerin dieses abgeschaltet hat, werden diese
+   Tags nicht gesendet oder als Tag "normal" behandelt.
+
+   Technisch erfolgt die Ersetzung mittels terminal_colour(), welches
+   man nutzen koennte, um Farben in eine Ausgabe zu bringen, ohne
+   ReceiveMsg & Co zu nutzen. Allerdings ist aktuell die Farbtabelle
+   des Spielerobjekts nicht abfragbar.
+
+
+Tag-Liste
+=========
+
+
+Logische Hervorhebungen
+-----------------------
+
+   Zusaetzlich zu den direkt physischen Hervorhebungen (s.u.) gibt es
+   noch logische Hervorhebungen, welche zu einer vom Spieler
+   konfigurierbaren (TODO) Darstellung fuehren:
+
+   mention
+      Erwaehnungen eines Charnamens mit @Charname
+
+   normal
+      Normale Darstellung des Clients
+
+
+Physische Hervorhebungen
+------------------------
+
+   Diese Hervorhebungen stellen direkt eine bestimmte Farbe oder
+   Darstellung ein.
+
+   Vordergrundfarben (ANSI)
+      black, red, green, yellow, blue, purple, cyan, white
+
+   Hintergrundfarben (ANSI)
+      bg_black, bg_red, bg_green, bg_yellow, bg_blue, bg_purple,
+      bg_cyan, bg_white
+
+   Sonstiges (VT100, ANSI)
+      bold (fettgedruckt), underlined (unterstrichen), blink
+      (blinkend), invers (Vorder- und Hintergrundfarbe invertiert)
+
+
+Beispiel
+========
+
+   this_player().ReceiveMsg(
+      "Zesstra wirft Dir einen %^red%^roten Eimer%^normal%^ an den
+      Kopf.", MT_LOOK, MA_EMOTE);
+
+
+SIEHE AUCH
+==========
+
+   ReceiveMsg(), *../efun/terminal_colour*, P_TTY, P_TTY_TYPE
+
+Letzte Aenderung: 10.22.2022
diff --git a/doc/wiz/gerrit-projekte b/doc/wiz/gerrit-projekte
index b613c9f..0f32021 100644
--- a/doc/wiz/gerrit-projekte
+++ b/doc/wiz/gerrit-projekte
@@ -1,4 +1,3 @@
-
 Erstellung neuer Repositories in Gerrit
 ***************************************
 
@@ -35,13 +34,12 @@
 
   * "Creatw New" in der Repositoryliste
 
-  * Name in der Form  d/region/magier/bla (kein / am Anfang, keiner
-    am Ende und auch kein .git am Ende)
+  * Name in der Form  d/region/magier/bla (kein / am Anfang, keiner am
+    Ende und auch kein .git am Ende)
 
-  * Rechtetemplat: meist d/region - aber bei secure/-Verzeichnissen
-    in dem Verzeichnis *muss* es All-Projects sein, Eigentuemer
-    Erzmagier (damit Du die Rechte nach dem Erstellen noch anpassen
-    darfst...)
+  * Rechtetemplat: meist d/region - aber bei secure/-Verzeichnissen in
+    dem Verzeichnis *muss* es All-Projects sein, Eigentuemer Erzmagier
+    (damit Du die Rechte nach dem Erstellen noch anpassen darfst...)
 
   * und ganz wichtig: 'create initial commit' auf True, nur dann
     importiert er beim Anlegen aus dem Mud. Im anderen Fall ist das
diff --git a/doc/wiz/gerrit-upload b/doc/wiz/gerrit-upload
index c564777..1d7f815 100644
--- a/doc/wiz/gerrit-upload
+++ b/doc/wiz/gerrit-upload
@@ -1,4 +1,3 @@
-
 Upload via Gerrit
 *****************
 
@@ -18,20 +17,20 @@
 Folgt dem Git workflow bis Schritt 4 (einschliesslich). Ab dort gehts
 wie folgt weiter:
 
-   5. Pusht eure Aenderungen zum Review nach Gerrit: "git push
-      origin lokalerbranch:refs/for/master" Damit werden eure
-      Aenderungen des Zweigs lokalerbranch in den Review fuer den
-      master-Zweig im MG uebertragen. Fuer jeden Commit wird ein
-      Change in Gerrit erzeugt. Ihr bekommt in der Ausgabe auch die
-      URL zum Change, den ihr erzeugt habt. Anschliessend tragt ihr
-      entweder dort auf der Weboberflaeche einen oder mehrere Reviewer
-      ein oder redet mit denjenigen im Mud.
+   5. Pusht eure Aenderungen zum Review nach Gerrit: "git push origin
+      lokalerbranch:refs/for/master" Damit werden eure Aenderungen des
+      Zweigs lokalerbranch in den Review fuer den master-Zweig im MG
+      uebertragen. Fuer jeden Commit wird ein Change in Gerrit
+      erzeugt. Ihr bekommt in der Ausgabe auch die URL zum Change, den
+      ihr erzeugt habt. Anschliessend tragt ihr entweder dort auf der
+      Weboberflaeche einen oder mehrere Reviewer ein oder redet mit
+      denjenigen im Mud.
 
    6. Die Reviewerin hat oft Wuensche, d.h. ihr muesste den Change
       nochmal ueberarbeiten. Dazu gibt es zwei Moeglichkeiten:
 
-      1. Ihr aendert auf der Weboberflaeche selber ("Edit" und
-         spaeter dann "Publish Edit"
+      1. Ihr aendert auf der Weboberflaeche selber ("Edit" und spaeter
+         dann "Publish Edit"
 
       2. Wollt ihr bei euch lokal auf dem Rechner nur einen (den
          letzten Commit in eurem lokalen Zweig) aendern geht das am
diff --git a/doc/wiz/git-workflow b/doc/wiz/git-workflow
index 5018910..8f64806 100644
--- a/doc/wiz/git-workflow
+++ b/doc/wiz/git-workflow
@@ -1,4 +1,3 @@
-
 Git workflow
 ************
 
@@ -41,12 +40,12 @@
    Hier mach ich jetzt alle moeglichen Arbeiten und Basteleien, die
    ich fuer die neue Kampftaktik brauche. Tipps dazu:
 
-      * Viele und haeufige Commits machen! Je kleiner einzelne
-        Commits sind, desto besser kann man Aenderungen spaeter
-        verfolgen (was z.B. super ist, wenn jemand was abnehmen muss!)
-        und desto besser kann man einzelne Aenderungen spaeter bei
-        Bedarf auch rueckgaengig machen, wenn man merkt, dass man
-        stellenweise Unsinn gebaut hat. ;-)
+      * Viele und haeufige Commits machen! Je kleiner einzelne Commits
+        sind, desto besser kann man Aenderungen spaeter verfolgen (was
+        z.B. super ist, wenn jemand was abnehmen muss!) und desto
+        besser kann man einzelne Aenderungen spaeter bei Bedarf auch
+        rueckgaengig machen, wenn man merkt, dass man stellenweise
+        Unsinn gebaut hat. ;-)
 
       * Thematisch unterschiedliche Dinge in verschiedene Commits
         packen. Also z.B. erst Syntaxfehler editieren und commiten,
@@ -113,8 +112,8 @@
 
       git merge neue_kampftaktik
 
-6. Aenderungen in das MUD-Repository uebertragen Jetzt bin ich
-   bereit, die Aenderungen ins Mud zu uebertragen:
+6. Aenderungen in das MUD-Repository uebertragen Jetzt bin ich bereit,
+   die Aenderungen ins Mud zu uebertragen:
 
       git push origin <lokaler_zweigname>:<zweigname_im_mg>
 
diff --git a/doc/wiz/homemud b/doc/wiz/homemud
index 81bc5c4..759ed6a 100644
--- a/doc/wiz/homemud
+++ b/doc/wiz/homemud
@@ -1,4 +1,3 @@
-
 Homemud
 *******
 
@@ -29,27 +28,26 @@
    mudlib und einen Driver der Version LDMUD-3.6.4 oder
    https://github.com/zesstra/ldmud/releases/tag/mgreboot-20210507
 
-   1. Lade den aktuellen Driver unter
-      https://github.com/ldmud/ldmud herunter. Du kannst auch das Repo
-      via git clonen.
+   1. Lade den aktuellen Driver unter https://github.com/ldmud/ldmud
+      herunter. Du kannst auch das Repo via git clonen.
 
-   2. Lade die aktuelle Mudlib von
-      https://mg.mud.de/gerrit/gitweb?p =mudlib-public.git herunter,
-      entweder durch einen Klick auf "snapshot" oder mittels git
-      clonen. Dabei kann sich git an unserem selbsterstellten SSL-
-      Zertifikat stoeren, wenn Du Dich darum nicht kuemmern willst,
-      nutze die Option "-c http.sslVerify=false".
+   2. Lade die aktuelle Mudlib von https://mg.mud.de/gerrit/gitweb?p
+      =mudlib-public.git herunter, entweder durch einen Klick auf
+      "snapshot" oder mittels git clonen. Dabei kann sich git an
+      unserem selbsterstellten SSL-Zertifikat stoeren, wenn Du Dich
+      darum nicht kuemmern willst, nutze die Option "-c
+      http.sslVerify=false".
 
    3. Gehe in das *src/*-Verzeichnis des drivers
 
-   4. Im *src/*-Verzeichnis, fuehre "./autogen.sh" aus (Hierfuer
-      ist das Paket autoconf empfehlenswert.)
+   4. Im *src/*-Verzeichnis, fuehre "./autogen.sh" aus (Hierfuer ist
+      das Paket autoconf empfehlenswert.)
 
    5. Im src/-Verzeichnis, passe die Pfade in settings/morgengrauen
       an, und fuehre settings/morgengrauen aus
 
-   6. im src/-Verzeichnis, kompiliere und installiere den Treiber
-      mit "make all" und "make install-all". (Hierfuer wird das Paket
+   6. im src/-Verzeichnis, kompiliere und installiere den Treiber mit
+      "make all" und "make install-all". (Hierfuer wird das Paket
       bison benoetigt.)
 
    7. Falls noch nicht geschehen, schiebe die Mudlib in den Ordner,