NUCLIDE FILESYSTEM DOCUMENTATION The 'nuclide' shell script is the launcher. It sets PATH to include the directory 'bin' which contains the engine that you've built with build_engine.sh. When nuclide is run and executes the engine, it'll first read default.fmf which is a manifest file the engine reads. It is updated occasionally. It defines which folders to mount in the virtual filesystem of the engine and has a document entirely dedicated to itself. For that please read: src/engine/specs/fte_manifests.txt On its own, Nuclide launches the game 'base', unless you tell it otherwise: ./nuclide -game mygame You can also load multiple additional folders in a specific order by specifying multiple '-game' arguments. Will load 'mygame' instead of base. It will still load the other 'BASEGAME' entries listed in the default.fmf. You can even load your own manifest file over default.fmf, by passing ./nuclide -manifest mymanifest.fmf Once the game has loaded, it'll load the persistent menu.dat into our QuakeC progs VM. It' always running, you can make your own by forking src/menu-fn, src/menu-vgui or write something from scratch. When a game is mounted, we're either looking for loose files (loaded last), or pak archives the engine supports. Plain .pak, or zip archives with the pk3 or pk4 extensions are supported. Folders with the .pk3dir extensions are treated as if they were .pk3 files. The editor also supports .pk3dir folders. Nuclide contains many custom definition files that are not engine specific. .efx, .font, .sndshd and .way to name a few. The engine doesn't really read them, the game-logic mostly handles them.