diff --git a/src/mapgen_valleys.cpp b/src/mapgen_valleys.cpp
index f9625746be4307f9a97972541e3fe03c86ebbb17..d6fcde5f78b90c9cb8c24636c53120eaba98cc36 100644
--- a/src/mapgen_valleys.cpp
+++ b/src/mapgen_valleys.cpp
@@ -536,7 +536,7 @@ int MapgenValleys::getSpawnLevelAtPoint(v2s16 p)
 
 	s16 level_at_point = terrainLevelAtPoint(p.X, p.Y);
 	if (level_at_point <= water_level ||
-			level_at_point > water_level + 16)
+			level_at_point > water_level + 32)
 		return MAX_MAP_GENERATION_LIMIT;  // Unsuitable spawn point
 	else
 		return level_at_point;