diff --git a/npc/zwerg1.c b/npc/zwerg1.c
new file mode 100644
index 0000000..1372c1e
--- /dev/null
+++ b/npc/zwerg1.c
@@ -0,0 +1,62 @@
+inherit "/std/npc";
+
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+  if (!clonep()) {
+    set_next_reset(-1);
+    return;
+  }
+  ::create();
+
+  /* Diese Func der Mudlib sollte man benutzen, um die meisten Werte passend
+     voreinzustellen: */
+  create_default_npc(20, 300);
+
+  SetProp(P_SHORT, "Ein langweiliger Zwerg");
+  SetProp(P_LONG, BSLF(
+    "Dieser Zwerg ist ziemlich langweilig, denn er kann nur rumstehen. Das "
+    "dafuer aber ganz exzellent. Er hat ja nichtmal Details."));
+  SetProp(P_NAME, "Kawumm");
+  SetProp(P_ARTICLE, 0);
+  SetProp(P_GENDER, MALE);
+
+  AddId(({"zwerg", "kawumm"}));
+  SetProp(P_ALIGN, 100);
+  SetProp(P_RACE, "Zwerg");
+  SetProp(P_SIZE, 102);
+
+  // Diese drei Props behandeln das Ableben:
+  SetProp(P_MURDER_MSG,
+    "He! Ich gehoere doch zu Notstroms Magiertutorial, %s.");
+  SetProp(P_FORCE_MURDER_MSG, 1);
+  SetProp(P_DIE_MSG, " kippt um wie eine leere Bierflasche.\n");
+
+  SetProp(P_MSGIN,
+    "schleicht sich heimlich rein");
+
+
+  // Details funktionieren genau wie die von Raeumen:
+  AddDetail("details", BSLF(
+    "Ok ok, ich hab gelogen. Verklag mich doch!"));
+
+
+  // Natuerlich kann man NPCs auch befragen:
+  AddInfo(DEFAULT_INFO,
+    "kann nur dusslig rumstehen, echt.\n");
+
+  AddInfo("details",
+    "Die kann man untersuchen, nicht erfragen.",
+    "nickt: ");
+
+  /* Und auch Commands funktionieren wie in Raeumen. Spannend ist @ID, damit
+     kann man einen NPC mit allen seinen IDs (s.a. AddId()) ansprechen. */
+  AddCmd("verklag|verklage&@ID&\n\bimpossible", 0,
+    "Wen willst Du verklagen?|"
+    "Nein, das klappt nicht. Aber dafuer kannst Du ihn verkloppen, das macht "
+    "doch auch Spass?^"
+    "@WER1 versucht den Rechtsweg, scheitert aber an Notstroms "
+    "Magierwillkuer (woran sonst).^"
+}
+
