diff --git a/doc/pcmd/ende b/doc/pcmd/ende
index 03dcc99..a2f3519 100644
--- a/doc/pcmd/ende
+++ b/doc/pcmd/ende
@@ -21,8 +21,11 @@
     verschaffen, funktioniert der `ende'-Befehl erst zwei Minuten nach der
     letzten Kampfhandlung.
 
+    Um Verwechslungen mit schlafe ein zu vermeiden, wird bei Spielern unter
+    Level 10 zuerst nachgefragt, ob sie wirklich ende benutzen wollten.
+
  SIEHE AUCH:
     speichern, schlafe (ein)
 
  LETZTE AeNDERUNG:
-    Tue, 02.09.1997, 15:05:00 von Wargon
+    19.01.2022, Bugfix
diff --git a/std/player/base.c b/std/player/base.c
index f156a14..7d88119 100644
--- a/std/player/base.c
+++ b/std/player/base.c
@@ -1533,8 +1533,10 @@
 }
 
 /** Wrapper im quit() herum, verhindert 'ende', falls Spieler kaempft.
-  * \return 0 oder Rueckgabewert von quit()
-  * @see quit()
+  * Wenn der Spieler unter Level 10 ist, wird gefragt, ob er sich wirklich
+  * mit Ende ausloggen will, um Verwechslungen mit schlafe ein zu vermeiden.
+  * \return 0 bei Abbruch wegen Kampf, 1 bei Nachfrage per ask_quit(), sonst Rueckgabewert von quit()
+  * @see quit(), ask_quit()
   */
 static int new_quit() {
   notify_fail("Du bist in Gedanken noch bei Deinem letzten Kampf.\n"+
@@ -1542,6 +1544,27 @@
               "damit Du so nicht in RL weitermachst...\n");
   if (time()-Query(P_LAST_COMBAT_TIME)<120 && !IS_LEARNING(ME))
     return 0;
+  // Absicherung fuer kleine Spielern gegen Verwechslung mit schlafe ein
+  if(QueryProp(P_LEVEL) < 10)
+  {
+    write(break_string(
+      "Moechtest Du wirklich \"ende\" benutzen?\n"
+      "Du verlierst Deine Ausruestung und beginnst wieder an Deinem"
+      "Rassenstartpunkt. \n"
+      "Wenn du Dich einfach nur ausloggen und spaeter weiter spielen "
+      "willst, dann benutze besser \"schlafe ein\".\n\n", 78, 0,
+      BS_LEAVE_MY_LFS));
+    input_to(
+      function void (string str) {
+          if(str != "ja" && str != "Ja")
+              write("Ok, \"ende\" wird nicht ausgefuehrt.\n");
+          else
+              quit();
+      },
+      INPUT_PROMPT,
+      "Mittels \"ende\" ausloggen? (ja/nein):");
+    return 1;
+  }
   return quit();
 }
 
