diff --git a/doc/sphinx/sefun/find_player.rst b/doc/sphinx/sefun/find_player.rst
new file mode 100644
index 0000000..333c6c5
--- /dev/null
+++ b/doc/sphinx/sefun/find_player.rst
@@ -0,0 +1,63 @@
+find_player()
+=============
+
+FUNKTION
+--------
+::
+
+        object find_player(string uid)
+
+BESCHREIBUNG
+------------
+::
+
+        Findet den Spieler mit dem Namen bzw. der User-ID <uid>.
+
+        
+
+        Akzeptiert auch die UUID statt einer UID. In diesem Fall erfolgt aber
+        nur eine Pruefung, ob die UID des gefundenen Spielers zur angegebenen
+        UUID passt (d.h. "jof_-1" wuerde dann ggf. auch das Spielerobjekt Jof
+        zurueckliefern, wenn das die UUID "Jof_1234" hat).
+
+        Rueckgabewert ist das Spielerobjekt (wenn Spieler anwesend),
+        ansonsten 0.
+
+BEISPIEL
+--------
+::
+
+        object ob;
+        ob = find_player("deepthought");
+
+        if(ob)
+          tell_object(ob,"Tach Du!\n");
+
+        oder auch 
+
+        if(ob = find_player("deepthought"))
+          tell_object(ob,"Tach Du!\n");
+
+ANMERKUNGEN
+-----------
+::
+
+        Via find_player() werden auch unsichtbare Magier gefunden. In 
+        Objekten, die fuer Spieler gedacht sind, muss dies dann extra
+        per Abfrage auf if(ob->QueryProp(P_INVIS)) getestet werden.
+
+        Netztote Spieler und Monster werden nicht gefunden da find_player
+        den Namen aus set_living_name() verwendet, der in player.c ge-
+        setzt wird.
+
+        
+
+SIEHE AUCH
+----------
+::
+
+        find_living(E), set_living_name(E), find_object(E), find_netdead(E)
+
+
+Letzte Aenderung: 06.01.2009, Zesstra 
+
