Update doc/ to include notes about the filesystem and loading multiple game-dirs in sequence

This commit is contained in:
Marco Cawthorne 2021-08-27 12:18:50 +02:00
parent e28de86415
commit d08bc865d8
1 changed files with 36 additions and 0 deletions

36
doc/filesystem Normal file
View File

@ -0,0 +1,36 @@
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.