diff --git a/secure/kobold.c b/secure/kobold.c
index b1be5aa..f6f0584 100644
--- a/secure/kobold.c
+++ b/secure/kobold.c
@@ -8,11 +8,33 @@
 
 #include "/sys/player/comm.h"
 
-mapping vaults = ([]);
+/** vaults ist ein mapping, welches alle vaults enthaelt.
+ *
+ * Struktur: UID als Schluessel (string) und Vault (lwobject) als
+ * Wert.
+*/
+private nosave mapping vaults = ([]);
+
+#define MEMORY "/secure/memory"
+#ifndef DEBUG
+#define DEBUG(x)  if (find_player("zesstra"))\
+            tell_object(find_player("zesstra"),\
+                                      "kobold: "+x+"\n")
+#endif
 
 protected void create()
 {
-  // TODO: Speichern in MEMORY
+  seteuid(getuid());
+  mixed tmp = ({mapping})MEMORY->Load("Kobold");
+  if (mappingp(tmp)) {
+    vaults = tmp;
+    DEBUG("Daten aus MEMORY geladen.\n");
+  }
+  else {
+    DEBUG("Keine Daten in MEMORY vorhanden - reinitialisiere.\n");
+    if (({int})MEMORY->Save("Kobold", vaults) != 1)
+      raise_error("Konnte Daten nicht im Memory ablegen.\n");
+  }
 }
 
 // Einlagern von Vaults durch Spieler
@@ -42,7 +64,7 @@
 }
 
 // Pointer auf nen Vault vergessen.
-// Im Erfolgsfall wird das Vault zurueckgeben.
+// Im Erfolgsfall wird das Vault zurueckgeben, was wir nicht mehr speichern
 // Aufruf *nur* durch den Spieler mit der richtigen UUID selber.
 public lwobject "/std/player/comm_vault" ForgetVault()
 {
@@ -51,7 +73,8 @@
         lwobject "/std/player/comm_vault" vault = vaults[getuid(previous_object())];
         // Und noch pruefen, ob auch die UUID uebereinstimmt - es soll kein
         // neu angelegter Spieler das Vault von einem aelteren bekommen.
-        if (({string})vault.uuid() == getuuid(previous_object()))
+        if (vault &&
+            ({string})vault.uuid() == getuuid(previous_object()))
         {
             m_delete(vaults, getuid(previous_object()));
             return vault;
