diff --git a/npc/zwerg2.c b/npc/zwerg2.c
new file mode 100644
index 0000000..a29afa0
--- /dev/null
+++ b/npc/zwerg2.c
@@ -0,0 +1,40 @@
+inherit "/std/npc";
+
+#include __PATH__(1)"defs.h"
+
+
+protected void create() {
+  if (!clonep()) {
+    set_next_reset(-1);
+    return;
+  }
+  ::create();
+
+  create_default_npc(20, 300);
+
+  SetProp(P_SHORT, "Ein ausgeruesteter Zwerg");
+  SetProp(P_LONG, BSLF(
+    "So, dieser Zwerg hat richtig Krempel dabei. Wenn er jetzt noch Details "
+    "und Infos haette, dann waere er schon ein richtig ordentlicher NPC."));
+  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);
+
+  SetProp(P_MURDER_MSG,
+    "He! Ich gehoere doch zu Notstroms Magiertutorial, %s.");
+  SetProp(P_DIE_MSG, " kippt um wie eine leere Bierflasche.\n");
+
+
+  /* Die Axt wird beim Clonen gleich gezueckt. Wenn der Zwerg sie
+     verbummelt ist sie weg und wird im Reset nicht ersetzt: */
+  AddItem(__PATH__(1)"obj/axt", REFRESH_NONE|CLONE_WIELD);
+  // Beim Clonen gleich anziehen:
+  AddItem(__PATH__(1)"obj/schild", REFRESH_NONE|CLONE_WEAR);
+  AddItem(__PATH__(1)"obj/krempel", REFRESH_NONE);
+}
+
