diff --git a/src/main/java/com/comandante/creeper/npc/NpcMover.java b/src/main/java/com/comandante/creeper/npc/NpcMover.java
index 546502a0b0fc28a72d1872e6775ff6d295f033ed..8619ecbd68a0894f8cd7fef73e1bfe2c42ad8ee6 100644
--- a/src/main/java/com/comandante/creeper/npc/NpcMover.java
+++ b/src/main/java/com/comandante/creeper/npc/NpcMover.java
@@ -71,10 +71,12 @@ public class NpcMover {
         for (Area ar : roamAreas) {
             if (ar.equals(area)) {
                 Optional<SpawnRule> spawnRuleByArea = npc.getSpawnRuleByArea(area);
-                int maxPerRoom = spawnRuleByArea.get().getMaxPerRoom();
-                int numberOfNpcInRoom = numberOfNpcInRoom(npc, room);
-                if (numberOfNpcInRoom < maxPerRoom) {
-                    return true;
+                if (spawnRuleByArea.isPresent()) {
+                    int maxPerRoom = spawnRuleByArea.get().getMaxPerRoom();
+                    int numberOfNpcInRoom = numberOfNpcInRoom(npc, room);
+                    if (numberOfNpcInRoom < maxPerRoom) {
+                        return true;
+                    }
                 }
             }
         }