diff --git a/src/cats/actions/action_overlay_update.c b/src/cats/actions/action_overlay_update.c
index 652c6095753270e771ac69e8f7e1337b4139df24..a6ad6e2aaeca67cafc8df38dee230299f124cf19 100644
--- a/src/cats/actions/action_overlay_update.c
+++ b/src/cats/actions/action_overlay_update.c
@@ -75,6 +75,9 @@ bool overlay_update_needed(struct cats_configuration *conf, int32_t time, enum o
                 case OL_HABITAT_TYPE_CC:
                         if (conf->time.phase != PHASE_SIMULATION && conf->overlays.habitat_cc == NULL) return true;
                         break;
+                case OL_RESOURCE:
+                        if (conf->time.phase != PHASE_SIMULATION && conf->overlays.resources == NULL) return true;
+                        break;
                 case OL_MAX:
                 case OL_NONE:
                         return false;
diff --git a/src/cats/overlays/overlays.c b/src/cats/overlays/overlays.c
index cb5ef96f13088f8a46131e921e17553613793603..b42377489952efa73a6f0db8f73b9da87c63aa15 100644
--- a/src/cats/overlays/overlays.c
+++ b/src/cats/overlays/overlays.c
@@ -92,6 +92,7 @@ enum overlay_type get_overlay_type_from_name(const char *name, const struct stri
 
         if (!strcmp(name, "exclusion")) return OL_EXCLUSION;
         if (!strcmp(name, "habitat carrying capacity")) return OL_HABITAT_TYPE_CC;
+        if (!strcmp(name, "resources")) return OL_RESOURCE;
 
         if (registered_names != NULL) {
                 for (int32_t i = 0; i < registered_names->count; i++) {