diff --git a/source/funkin/ui/freeplay/FreeplayState.hx b/source/funkin/ui/freeplay/FreeplayState.hx
index ec07c9d15..14c5829af 100644
--- a/source/funkin/ui/freeplay/FreeplayState.hx
+++ b/source/funkin/ui/freeplay/FreeplayState.hx
@@ -349,6 +349,7 @@ class FreeplayState extends MusicBeatSubState
         var displayedVariations = song.getVariationsByCharacter(currentCharacter);
         trace('Displayed Variations (${songId}): $displayedVariations');
         var availableDifficultiesForSong:Array<String> = song.listSuffixedDifficulties(displayedVariations, false, false);
+        var unsuffixedDifficulties = song.listDifficulties(displayedVariations, false, false);
         trace('Available Difficulties: $availableDifficultiesForSong');
         if (availableDifficultiesForSong.length == 0) continue;
 
@@ -357,6 +358,10 @@ class FreeplayState extends MusicBeatSubState
         {
           diffIdsTotal.pushUnique(difficulty);
         }
+        for (difficulty in unsuffixedDifficulties)
+        {
+          diffIdsTotal.pushUnique(difficulty);
+        }
       }
     }
 
@@ -2414,10 +2419,13 @@ class DifficultySprite extends FlxSprite
       // Remove the last suffix of the difficulty id until we find an asset or there are no more suffixes.
       var assetDiffIdParts:Array<String> = assetDiffId.split('-');
       assetDiffIdParts.pop();
-      if (assetDiffIdParts.length == 0) break;
+      if (assetDiffIdParts.length == 0)
+      {
+        trace('Could not find difficulty asset: freeplay/freeplay${diffId} (from ${diffId})');
+        return;
+      };
       assetDiffId = assetDiffIdParts.join('-');
     }
-    trace('Found difficulty asset: freeplay/freeplay${assetDiffId}');
 
     // Check for an XML to use an animation instead of an image.
     if (Assets.exists(Paths.file('images/freeplay/freeplay${assetDiffId}.xml')))
@@ -2429,6 +2437,7 @@ class DifficultySprite extends FlxSprite
     else
     {
       this.loadGraphic(Paths.image('freeplay/freeplay' + assetDiffId));
+      trace('Loaded difficulty asset: freeplay/freeplay${assetDiffId} (from ${diffId})');
     }
   }
 }