And now, some schemes about NC2 boot procedures and the whole "why its almost 100% accurate that LVL files stores all 3D geometry/texture data" part
(acting similar to Quake1 PAK/PK3 and BSP).
This is the untouched
disc root directory struct, with all the important files red-marked (files needed for a level to be loaded) and leaving the rest unmarked (screen overlays, audio/video, dummy file, etc.) The 3MIN.DMY (dummy) is a zero-padded file with a RIFF-WAVE header.

If you want to learn a little more about WINCE\ folder present in DC release, take a look at my thread here
https://assemblergames.com/threads/dev-tools-in-nightmare-creatures-2-gdrom.66005/Each LEVEL\ directory looks like the next picture, with exceptions for MENU\ and LEVEL0\.

LEVEL0\ lacks *.SLF, which exists in all the others LEVEL folder. I don't know what's this file's purpose, but we can assume it's only necesary from 2nd level onwards/going?. Why? What could be needed in a game to be loaded in all levels except for the first one?
MENU\ lacks the mentioned *.SLF plus *.SZX/*.EXP, because there's no external resources to call [i.e. *.CPT enemy scripts] and the rest like screen overlays has been already called by the SLUS).
Note: *.CPT files are enemy scripts.
For the next, I used the PSX main executable as reference. Searching for the key-strings "level" & "lvl" plus a bit of mouse-scrolling brought many results and I think recognized and correctly set-up the boot-scheme, for Dreamcast I just guessed swapin' formats:
main loadingPSX: *.CFG autorun file>SLUS main executable>INTRO\(logos,misc.videos,menu.txt)>BOARD\(fonts,MC icon,gui)>MENU\
DC: *.REG>0WINCEOS>INTRO\>BOARD\>MENU\
Note: MENU its actually the first level and it links to the rest of the game world. Again, kind of Quake1 hub "start.bsp" but with less movement freedom.
level loadingPSX: *.SZX (resource fetcher)>*.LGC (level logics?)>*.STR (introductory video)>*.TIM(loading screen)>*.LST(enemy list)>*.VAG/*.XA/*.VH/*.VB/*.DSC(level audio)>*.SLF(no idea)>*.TXT(static entities script)>*.LVL (menu,hopital,circle,circle2,castel,paris,museum,lachaise,catacombes,eiffel; 10+1 levels with "Therapy/training" mode one)
DC: *.EXP>*.LGC>*.SFD>*.PVR>*.LST>*.XM/*.WAV/*.DSC>*.SLF>*.TXT>*.LVL
Now, take a look at the *.LVLs size... almost matching the introductory videos size.
That's too big for just a game map; considering that,by the release date (year 2000!), a single 3D map used to be about 500kb-1mb and same with models, made of an average 800-1000 polygons/quads.
Of course, I'm talking about PSX specs here and the Dreamcast port is a direct conversion (with a bilinear filter option as main addition).
With the rest of resources already located outside the file, this must be the game's bulk.
There's no sense for the devs hiding data outside the disc visible tables (ala Xenogears) while leaving scripts in plain text there for your sight.
Scanning *.LVL with PSXPrev will bring broken textures and it seems like almost gets 3d meshes, but fails at last with messages like "unknown primitive error".